/*! tailwindcss v4.2.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-300:oklch(80.8% .114 19.571);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-500:oklch(70.5% .213 47.604);--color-amber-50:oklch(98.7% .022 95.277);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-600:oklch(66.6% .179 58.318);--color-amber-700:oklch(55.5% .163 48.998);--color-amber-800:oklch(47.3% .137 46.201);--color-yellow-50:oklch(98.7% .026 102.212);--color-yellow-200:oklch(94.5% .129 101.54);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-yellow-600:oklch(68.1% .162 75.834);--color-yellow-700:oklch(55.4% .135 66.442);--color-yellow-800:oklch(47.6% .114 61.907);--color-yellow-900:oklch(42.1% .095 57.708);--color-green-50:oklch(98.2% .018 155.826);--color-green-100:oklch(96.2% .044 156.743);--color-green-200:oklch(92.5% .084 155.995);--color-green-300:oklch(87.1% .15 154.449);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-green-800:oklch(44.8% .119 151.328);--color-green-900:oklch(39.3% .095 152.535);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-blue-50:oklch(97% .014 254.604);--color-blue-100:oklch(93.2% .032 255.585);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-300:oklch(80.9% .105 251.813);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-800:oklch(42.4% .199 265.638);--color-blue-900:oklch(37.9% .146 265.522);--color-indigo-50:oklch(96.2% .018 272.314);--color-indigo-100:oklch(93% .034 272.788);--color-indigo-200:oklch(87% .065 274.039);--color-indigo-500:oklch(58.5% .233 277.117);--color-indigo-600:oklch(51.1% .262 276.966);--color-indigo-700:oklch(45.7% .24 277.023);--color-indigo-800:oklch(39.8% .195 277.366);--color-purple-100:oklch(94.6% .033 307.174);--color-purple-200:oklch(90.2% .063 306.703);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-purple-700:oklch(49.6% .265 301.924);--color-purple-800:oklch(43.8% .218 303.724);--color-pink-400:oklch(71.8% .202 349.761);--color-pink-500:oklch(65.6% .241 354.308);--color-slate-50:oklch(98.4% .003 247.858);--color-slate-100:oklch(96.8% .007 247.896);--color-slate-200:oklch(92.9% .013 255.508);--color-slate-300:oklch(86.9% .022 252.894);--color-slate-400:oklch(70.4% .04 256.788);--color-slate-500:oklch(55.4% .046 257.417);--color-slate-600:oklch(44.6% .043 257.281);--color-slate-700:oklch(37.2% .044 257.287);--color-slate-800:oklch(27.9% .041 260.031);--color-slate-900:oklch(20.8% .042 265.755);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-7xl:80rem;--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:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--drop-shadow-md:0 3px 3px #0000001f;--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--animate-bounce:bounce 1s infinite;--blur-3xl:64px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-900:#1e3a8a;--color-accent-50:#fff7ed;--color-accent-400:#fb923c;--color-accent-500:#f97316;--color-accent-600:#ea580c;--color-accent-700:#c2410c}}@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;-webkit-text-decoration:inherit;-webkit-text-decoration: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}}@layer components{.btn-primary{background-color:var(--color-accent-500);color:#fff;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;transition:background-color .2s}.btn-primary:hover{background-color:var(--color-accent-600)}.btn-secondary{background-color:var(--color-primary-500);color:#fff;border-radius:.5rem;padding:.5rem 1rem;font-weight:600;transition:background-color .2s}.btn-secondary:hover{background-color:var(--color-primary-600)}.card{background-color:var(--global-bg-card);border:1px solid var(--global-border-color);border-radius:.75rem;padding:1.5rem;transition:background-color .3s,border-color .3s;box-shadow:0 1px 2px #0000000d}.bg-main{background-color:var(--global-bg-main)!important}.bg-sidebar{background-color:var(--sidebar-bg)!important}.bg-topbar{background-color:var(--topbar-bg)!important}.topbar-pattern{position:relative}.topbar-pattern:before{content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='60' viewBox='0 0 220 60'%3E%3Cg fill='none' stroke='%23c8d1e4' stroke-width='0.8' stroke-linecap='round' stroke-linejoin='round' opacity='0.35'%3E%3C!-- libro abierto --%3E%3Cpath d='M18 38 L18 22 Q28 19 38 22 L38 38 Q28 35 18 38Z'/%3E%3Cpath d='M38 38 L38 22 Q48 19 58 22 L58 38 Q48 35 38 38Z'/%3E%3Cline x1='38' y1='22' x2='38' y2='38'/%3E%3C!-- lapiz --%3E%3Cpath d='M80 38 L76 38 L76 18 L80 18 Z'/%3E%3Cpath d='M76 18 L78 13 L80 18'/%3E%3Cline x1='78' y1='13' x2='78' y2='15'/%3E%3C!-- regla --%3E%3Crect x='100' y='20' width='6' height='20' rx='1'/%3E%3Cline x1='100' y1='24' x2='103' y2='24'/%3E%3Cline x1='100' y1='28' x2='102' y2='28'/%3E%3Cline x1='100' y1='32' x2='103' y2='32'/%3E%3Cline x1='100' y1='36' x2='102' y2='36'/%3E%3C!-- estrella --%3E%3Cpolygon points='135,20 137,26 143,26 138,30 140,36 135,32 130,36 132,30 127,26 133,26'/%3E%3C!-- manzana --%3E%3Cpath d='M165 36 Q160 36 158 30 Q157 24 162 22 Q165 20 168 22 Q173 24 172 30 Q170 36 165 36Z'/%3E%3Cpath d='M165 22 L165 18'/%3E%3Cpath d='M165 18 Q168 17 169 19'/%3E%3C!-- A+ --%3E%3Cpath d='M195 36 L200 22 L205 36'/%3E%3Cline x1='197' y1='31' x2='203' y2='31'/%3E%3Cline x1='208' y1='25' x2='214' y2='25'/%3E%3Cline x1='211' y1='22' x2='211' y2='28'/%3E%3C/g%3E%3C/svg%3E");background-position:50%;background-repeat:repeat-x;background-size:auto 100%;position:absolute;inset:0}:root[data-theme=dark] .topbar-pattern:before,.dark .topbar-pattern:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='60' viewBox='0 0 220 60'%3E%3Cg fill='none' stroke='%23374151' stroke-width='0.8' stroke-linecap='round' stroke-linejoin='round' opacity='0.5'%3E%3C!-- libro abierto --%3E%3Cpath d='M18 38 L18 22 Q28 19 38 22 L38 38 Q28 35 18 38Z'/%3E%3Cpath d='M38 38 L38 22 Q48 19 58 22 L58 38 Q48 35 38 38Z'/%3E%3Cline x1='38' y1='22' x2='38' y2='38'/%3E%3C!-- lapiz --%3E%3Cpath d='M80 38 L76 38 L76 18 L80 18 Z'/%3E%3Cpath d='M76 18 L78 13 L80 18'/%3E%3Cline x1='78' y1='13' x2='78' y2='15'/%3E%3C!-- regla --%3E%3Crect x='100' y='20' width='6' height='20' rx='1'/%3E%3Cline x1='100' y1='24' x2='103' y2='24'/%3E%3Cline x1='100' y1='28' x2='102' y2='28'/%3E%3Cline x1='100' y1='32' x2='103' y2='32'/%3E%3Cline x1='100' y1='36' x2='102' y2='36'/%3E%3C!-- estrella --%3E%3Cpolygon points='135,20 137,26 143,26 138,30 140,36 135,32 130,36 132,30 127,26 133,26'/%3E%3C!-- manzana --%3E%3Cpath d='M165 36 Q160 36 158 30 Q157 24 162 22 Q165 20 168 22 Q173 24 172 30 Q170 36 165 36Z'/%3E%3Cpath d='M165 22 L165 18'/%3E%3Cpath d='M165 18 Q168 17 169 19'/%3E%3C!-- A+ --%3E%3Cpath d='M195 36 L200 22 L205 36'/%3E%3Cline x1='197' y1='31' x2='203' y2='31'/%3E%3Cline x1='208' y1='25' x2='214' y2='25'/%3E%3Cline x1='211' y1='22' x2='211' y2='28'/%3E%3C/g%3E%3C/svg%3E")}.text-main{color:var(--global-text-primary)!important}.text-secondary{color:var(--global-text-secondary)!important}.text-tertiary{color:var(--global-text-tertiary)!important}.border-main{border-color:var(--global-border-color)!important}.border-light{border-color:var(--global-border-light)!important}.border-dark{border-color:var(--global-border-dark)!important}.hover-bg:hover{background-color:var(--global-hover-bg)!important}.state-success{background-color:var(--state-success-bg);border-color:var(--state-success-border);color:var(--state-success-text)}.state-warning{background-color:var(--state-warning-bg);border-color:var(--state-warning-border);color:var(--state-warning-text)}.state-error{background-color:var(--state-error-bg);border-color:var(--state-error-border);color:var(--state-error-text)}.state-info{background-color:var(--state-info-bg);border-color:var(--state-info-border);color:var(--state-info-text)}.selected-topics-container{background-color:var(--content-selector-selected-bg)}.selected-topic-card{background-color:var(--content-selector-card-bg);border-color:var(--content-selector-card-border);color:var(--content-selector-card-text)}.selected-topic-close{color:var(--content-selector-close-icon)}.selected-topic-close:hover{color:var(--content-selector-close-icon-hover)}.chat-user-message{background-color:var(--chat-user-message-bg);color:var(--chat-user-message-text)}.chat-ai-message{background-color:var(--chat-ai-message-bg);border-color:var(--chat-ai-message-border);color:var(--chat-ai-message-text)}.chat-input{background-color:var(--chat-input-bg);border-color:var(--chat-input-border)}.quiz-correct{background-color:var(--quiz-correct-bg);border-color:var(--quiz-correct-border);color:var(--quiz-correct-text)}.quiz-incorrect{background-color:var(--quiz-incorrect-bg);border-color:var(--quiz-incorrect-border);color:var(--quiz-incorrect-text)}.quiz-neutral{background-color:var(--quiz-neutral-bg);border-color:var(--quiz-neutral-border)}.sidebar-active{background-color:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.sidebar-hover:hover{background-color:var(--sidebar-hover-bg)}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-7{top:calc(var(--spacing) * -7)}.-top-8{top:calc(var(--spacing) * -8)}.-top-10{top:calc(var(--spacing) * -10)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-4{top:calc(var(--spacing) * 4)}.top-20{top:calc(var(--spacing) * 20)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-2{right:calc(var(--spacing) * 2)}.right-4{right:calc(var(--spacing) * 4)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-full{grid-column:1/-1}.row-0{grid-row:0}.row-1{grid-row:1}.row-2{grid-row:2}.row-3{grid-row:3}.row-4{grid-row:4}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-2{margin-block:calc(var(--spacing) * 2)}.-mt-8{margin-top:calc(var(--spacing) * -8)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-6{margin-left:calc(var(--spacing) * 6)}.ml-7{margin-left:calc(var(--spacing) * 7)}.ml-10{margin-left:calc(var(--spacing) * 10)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.aspect-video{aspect-ratio:var(--aspect-video)}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-32{height:calc(var(--spacing) * 32)}.h-64{height:calc(var(--spacing) * 64)}.h-\[600px\]{height:600px}.h-\[calc\(100vh-120px\)\]{height:calc(100vh - 120px)}.h-\[calc\(100vh-260px\)\]{height:calc(100vh - 260px)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-48{max-height:calc(var(--spacing) * 48)}.max-h-52{max-height:calc(var(--spacing) * 52)}.max-h-60{max-height:calc(var(--spacing) * 60)}.max-h-64{max-height:calc(var(--spacing) * 64)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-96{max-height:calc(var(--spacing) * 96)}.max-h-\[32rem\]{max-height:32rem}.max-h-\[95vh\]{max-height:95vh}.max-h-\[600px\]{max-height:600px}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-\[40px\]{min-height:40px}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-12{width:calc(var(--spacing) * 12)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-28{width:calc(var(--spacing) * 28)}.w-32{width:calc(var(--spacing) * 32)}.w-56{width:calc(var(--spacing) * 56)}.w-64{width:calc(var(--spacing) * 64)}.w-auto{width:auto}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[85\%\]{max-width:85%}.max-w-\[90\%\]{max-width:90%}.max-w-\[95vw\]{max-width:95vw}.max-w-\[1920px\]{max-width:1920px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.min-w-0{min-width:calc(var(--spacing) * 0)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-6{-moz-column-gap:calc(var(--spacing) * 6);column-gap:calc(var(--spacing) * 6)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-slate-100>:not(:last-child)){border-color:var(--color-slate-100)}.self-end{align-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[\#4a8fc4\]{border-color:#4a8fc4}.border-blue-100{border-color:var(--color-blue-100)}.border-blue-200{border-color:var(--color-blue-200)}.border-blue-600{border-color:var(--color-blue-600)}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-300{border-color:var(--color-gray-300)}.border-green-200{border-color:var(--color-green-200)}.border-green-500{border-color:var(--color-green-500)}.border-indigo-200{border-color:var(--color-indigo-200)}.border-indigo-600{border-color:var(--color-indigo-600)}.border-primary-200{border-color:var(--color-primary-200)}.border-primary-500{border-color:var(--color-primary-500)}.border-primary-600{border-color:var(--color-primary-600)}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab, red, red)){.border-red-500\/30{border-color:color-mix(in oklab, var(--color-red-500) 30%, transparent)}}.border-slate-100{border-color:var(--color-slate-100)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-transparent{border-color:#0000}.border-white{border-color:var(--color-white)}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.border-white\/10{border-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.border-yellow-200{border-color:var(--color-yellow-200)}.border-yellow-500{border-color:var(--color-yellow-500)}.border-t-primary-600{border-top-color:var(--color-primary-600)}.border-t-transparent{border-top-color:#0000}.bg-\[\#2C6794\]{background-color:#2c6794}.bg-\[\#3d7fb3\]{background-color:#3d7fb3}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-100{background-color:var(--color-amber-100)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-black{background-color:var(--color-black)}.bg-black\/5{background-color:#0000000d}@supports (color:color-mix(in lab, red, red)){.bg-black\/5{background-color:color-mix(in oklab, var(--color-black) 5%, transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab, red, red)){.bg-black\/50{background-color:color-mix(in oklab, var(--color-black) 50%, transparent)}}.bg-blue-50{background-color:var(--color-blue-50)}.bg-blue-100{background-color:var(--color-blue-100)}.bg-blue-400{background-color:var(--color-blue-400)}.bg-blue-600{background-color:var(--color-blue-600)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-100{background-color:var(--color-emerald-100)}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-gray-600{background-color:var(--color-gray-600)}.bg-green-50{background-color:var(--color-green-50)}.bg-green-100{background-color:var(--color-green-100)}.bg-green-400{background-color:var(--color-green-400)}.bg-green-600{background-color:var(--color-green-600)}.bg-indigo-50{background-color:var(--color-indigo-50)}.bg-indigo-50\/30{background-color:#eef2ff4d}@supports (color:color-mix(in lab, red, red)){.bg-indigo-50\/30{background-color:color-mix(in oklab, var(--color-indigo-50) 30%, transparent)}}.bg-indigo-100{background-color:var(--color-indigo-100)}.bg-pink-400{background-color:var(--color-pink-400)}.bg-primary-50{background-color:var(--color-primary-50)}.bg-primary-100{background-color:var(--color-primary-100)}.bg-primary-500{background-color:var(--color-primary-500)}.bg-primary-600{background-color:var(--color-primary-600)}.bg-purple-100{background-color:var(--color-purple-100)}.bg-purple-400{background-color:var(--color-purple-400)}.bg-purple-600{background-color:var(--color-purple-600)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-400{background-color:var(--color-red-400)}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab, red, red)){.bg-red-500\/20{background-color:color-mix(in oklab, var(--color-red-500) 20%, transparent)}}.bg-red-600{background-color:var(--color-red-600)}.bg-red-700{background-color:var(--color-red-700)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-200{background-color:var(--color-slate-200)}.bg-slate-400{background-color:var(--color-slate-400)}.bg-slate-500{background-color:var(--color-slate-500)}.bg-transparent{background-color:#0000}.bg-white\/10{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.bg-white\/10{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.bg-yellow-50{background-color:var(--color-yellow-50)}.bg-yellow-400{background-color:var(--color-yellow-400)}.bg-yellow-600{background-color:var(--color-yellow-600)}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-black{--tw-gradient-from:var(--color-black);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary-50{--tw-gradient-from:var(--color-primary-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary-500{--tw-gradient-from:var(--color-primary-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-yellow-400{--tw-gradient-from:var(--color-yellow-400);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-black\/95{--tw-gradient-via:#000000f2}@supports (color:color-mix(in lab, red, red)){.via-black\/95{--tw-gradient-via:color-mix(in oklab, var(--color-black) 95%, transparent)}}.via-black\/95{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-orange-500{--tw-gradient-via:var(--color-orange-500);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-accent-50{--tw-gradient-to:var(--color-accent-50);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-pink-500{--tw-gradient-to:var(--color-pink-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-primary-600{--tw-gradient-to:var(--color-primary-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-yellow-600{--tw-gradient-to:var(--color-yellow-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-12{padding:calc(var(--spacing) * 12)}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-px{padding-bottom:1px}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-12{padding-left:calc(var(--spacing) * 12)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[8px\]{font-size:8px}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent-600{color:var(--color-accent-600)}.text-amber-500{color:var(--color-amber-500)}.text-amber-600{color:var(--color-amber-600)}.text-amber-700{color:var(--color-amber-700)}.text-amber-800{color:var(--color-amber-800)}.text-blue-200{color:var(--color-blue-200)}.text-blue-300{color:var(--color-blue-300)}.text-blue-400{color:var(--color-blue-400)}.text-blue-500{color:var(--color-blue-500)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-blue-800{color:var(--color-blue-800)}.text-blue-900{color:var(--color-blue-900)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-gray-200{color:var(--color-gray-200)}.text-gray-300{color:var(--color-gray-300)}.text-gray-500{color:var(--color-gray-500)}.text-gray-700{color:var(--color-gray-700)}.text-gray-800{color:var(--color-gray-800)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-green-700{color:var(--color-green-700)}.text-green-800{color:var(--color-green-800)}.text-indigo-600{color:var(--color-indigo-600)}.text-indigo-700{color:var(--color-indigo-700)}.text-indigo-800{color:var(--color-indigo-800)}.text-primary-100{color:var(--color-primary-100)}.text-primary-200{color:var(--color-primary-200)}.text-primary-500{color:var(--color-primary-500)}.text-primary-600{color:var(--color-primary-600)}.text-primary-700{color:var(--color-primary-700)}.text-purple-600{color:var(--color-purple-600)}.text-purple-800{color:var(--color-purple-800)}.text-red-300{color:var(--color-red-300)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-600{color:var(--color-yellow-600)}.text-yellow-700{color:var(--color-yellow-700)}.text-yellow-800{color:var(--color-yellow-800)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.accent-blue-600{accent-color:var(--color-blue-600)}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px 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-yellow-500\/50{--tw-shadow-color:#edb20080}@supports (color:color-mix(in lab, red, red)){.shadow-yellow-500\/50{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-yellow-500) 50%, transparent) var(--tw-shadow-alpha), transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow-md{--tw-drop-shadow-size:drop-shadow(0 3px 3px var(--tw-drop-shadow-color,#0000001f));--tw-drop-shadow:drop-shadow(var(--drop-shadow-md));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.duration-700{--tw-duration:.7s;transition-duration:.7s}.duration-1000{--tw-duration:1s;transition-duration:1s}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:bg-black:is(:where(.group):hover *){background-color:var(--color-black)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-2:hover{border-style:var(--tw-border-style);border-width:2px}.hover\:border-green-300:hover{border-color:var(--color-green-300)}.hover\:border-red-600:hover{border-color:var(--color-red-600)}.hover\:border-slate-300:hover{border-color:var(--color-slate-300)}.hover\:bg-amber-100:hover{background-color:var(--color-amber-100)}.hover\:bg-amber-600:hover{background-color:var(--color-amber-600)}.hover\:bg-black\/70:hover{background-color:#000000b3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-black\/70:hover{background-color:color-mix(in oklab, var(--color-black) 70%, transparent)}}.hover\:bg-blue-50\/50:hover{background-color:#eff6ff80}@supports (color:color-mix(in lab, red, red)){.hover\:bg-blue-50\/50:hover{background-color:color-mix(in oklab, var(--color-blue-50) 50%, transparent)}}.hover\:bg-blue-100:hover{background-color:var(--color-blue-100)}.hover\:bg-blue-200:hover{background-color:var(--color-blue-200)}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-emerald-700:hover{background-color:var(--color-emerald-700)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-gray-300:hover{background-color:var(--color-gray-300)}.hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.hover\:bg-green-50:hover{background-color:var(--color-green-50)}.hover\:bg-green-700:hover{background-color:var(--color-green-700)}.hover\:bg-indigo-50:hover{background-color:var(--color-indigo-50)}.hover\:bg-primary-700:hover{background-color:var(--color-primary-700)}.hover\:bg-purple-100:hover{background-color:var(--color-purple-100)}.hover\:bg-purple-700:hover{background-color:var(--color-purple-700)}.hover\:bg-red-100:hover{background-color:var(--color-red-100)}.hover\:bg-red-600:hover{background-color:var(--color-red-600)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-red-800:hover{background-color:var(--color-red-800)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-200:hover{background-color:var(--color-slate-200)}.hover\:bg-slate-500:hover{background-color:var(--color-slate-500)}.hover\:bg-slate-600:hover{background-color:var(--color-slate-600)}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:bg-white\/20:hover{background-color:#fff3}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/20:hover{background-color:color-mix(in oklab, var(--color-white) 20%, transparent)}}.hover\:bg-yellow-700:hover{background-color:var(--color-yellow-700)}.hover\:text-blue-700:hover{color:var(--color-blue-700)}.hover\:text-blue-800:hover{color:var(--color-blue-800)}.hover\:text-primary-700:hover{color:var(--color-primary-700)}.hover\:text-slate-700:hover{color:var(--color-slate-700)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}.focus\:border-blue-500:focus{border-color:var(--color-blue-500)}.focus\:border-indigo-500:focus{border-color:var(--color-indigo-500)}.focus\:border-purple-500:focus{border-color:var(--color-purple-500)}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-indigo-500:focus{--tw-ring-color:var(--color-indigo-500)}.focus\:ring-primary-500:focus{--tw-ring-color:var(--color-primary-500)}.focus\:ring-purple-200:focus{--tw-ring-color:var(--color-purple-200)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}@media (width>=40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:block{display:block}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:w-48{width:calc(var(--spacing) * 48)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media (width>=48rem){.md\:static{position:static}.md\:mb-2{margin-bottom:calc(var(--spacing) * 2)}.md\:mb-8{margin-bottom:calc(var(--spacing) * 8)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-5{height:calc(var(--spacing) * 5)}.md\:h-10{height:calc(var(--spacing) * 10)}.md\:h-16{height:calc(var(--spacing) * 16)}.md\:w-5{width:calc(var(--spacing) * 5)}.md\:w-10{width:calc(var(--spacing) * 10)}.md\:w-16{width:calc(var(--spacing) * 16)}.md\:max-w-\[75\%\]{max-width:75%}.md\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:gap-2{gap:calc(var(--spacing) * 2)}.md\:gap-4{gap:calc(var(--spacing) * 4)}.md\:gap-6{gap:calc(var(--spacing) * 6)}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:p-4{padding:calc(var(--spacing) * 4)}.md\:p-6{padding:calc(var(--spacing) * 6)}.md\:px-2{padding-inline:calc(var(--spacing) * 2)}.md\:px-3{padding-inline:calc(var(--spacing) * 3)}.md\:px-4{padding-inline:calc(var(--spacing) * 4)}.md\:px-6{padding-inline:calc(var(--spacing) * 6)}.md\:py-2{padding-block:calc(var(--spacing) * 2)}.md\:py-3{padding-block:calc(var(--spacing) * 3)}.md\:py-4{padding-block:calc(var(--spacing) * 4)}.md\:text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.md\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (width>=64rem){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}@media (width>=80rem){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-color-scheme:dark){.dark\:border-blue-800{border-color:var(--color-blue-800)}.dark\:border-gray-600{border-color:var(--color-gray-600)}.dark\:border-gray-700{border-color:var(--color-gray-700)}.dark\:border-green-600{border-color:var(--color-green-600)}.dark\:border-red-600{border-color:var(--color-red-600)}.dark\:border-red-800{border-color:var(--color-red-800)}.dark\:bg-\[\#2C6794\]{background-color:#2c6794}.dark\:bg-\[\#3d7fb3\]{background-color:#3d7fb3}.dark\:bg-blue-900\/20{background-color:#1c398e33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-blue-900\/20{background-color:color-mix(in oklab, var(--color-blue-900) 20%, transparent)}}.dark\:bg-gray-700{background-color:var(--color-gray-700)}.dark\:bg-gray-800{background-color:var(--color-gray-800)}.dark\:bg-gray-900{background-color:var(--color-gray-900)}.dark\:bg-green-900\/20{background-color:#0d542b33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-green-900\/20{background-color:color-mix(in oklab, var(--color-green-900) 20%, transparent)}}.dark\:bg-primary-900{background-color:var(--color-primary-900)}.dark\:bg-red-900\/20{background-color:#82181a33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-red-900\/20{background-color:color-mix(in oklab, var(--color-red-900) 20%, transparent)}}.dark\:bg-yellow-900\/20{background-color:#733e0a33}@supports (color:color-mix(in lab, red, red)){.dark\:bg-yellow-900\/20{background-color:color-mix(in oklab, var(--color-yellow-900) 20%, transparent)}}.dark\:from-gray-900{--tw-gradient-from:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:to-gray-800{--tw-gradient-to:var(--color-gray-800);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.dark\:text-blue-200{color:var(--color-blue-200)}.dark\:text-blue-300{color:var(--color-blue-300)}.dark\:text-blue-400{color:var(--color-blue-400)}.dark\:text-gray-100{color:var(--color-gray-100)}.dark\:text-gray-200{color:var(--color-gray-200)}.dark\:text-gray-300{color:var(--color-gray-300)}.dark\:text-gray-400{color:var(--color-gray-400)}.dark\:text-green-400{color:var(--color-green-400)}.dark\:text-primary-400{color:var(--color-primary-400)}.dark\:text-red-200{color:var(--color-red-200)}.dark\:text-red-400{color:var(--color-red-400)}.dark\:text-white{color:var(--color-white)}.dark\:text-yellow-400{color:var(--color-yellow-400)}@media (hover:hover){.dark\:hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.dark\:hover\:bg-gray-700:hover{background-color:var(--color-gray-700)}.dark\:hover\:text-primary-300:hover{color:var(--color-primary-300)}}}.bg-white,.dark .bg-white{background-color:var(--global-bg-card)!important}.bg-gray-50,.dark .bg-gray-50{background-color:var(--global-bg-main)!important}.bg-gray-800{background-color:var(--global-bg-card)!important}.bg-gray-900{background-color:var(--global-bg-main)!important}.text-gray-900,.text-gray-800{color:var(--global-text-primary)!important}.text-gray-600,.text-gray-500{color:var(--global-text-secondary)!important}.text-gray-400,.text-gray-300,.text-gray-200{color:var(--global-text-tertiary)!important}.text-gray-100{color:var(--global-text-primary)!important}.border-gray-200,.border-gray-300,.border-gray-600,.border-gray-700{border-color:var(--global-border-color)!important}}html,body,#root{height:100%;margin:0;padding:0;overflow:hidden}:root{--global-bg-main:#f9fafb;--global-bg-card:#fff;--global-text-primary:#041f53;--global-text-secondary:#8f8f91;--global-text-tertiary:#9ca3af;--global-text-disabled:#d1d5db;--global-border-color:#102b63;--global-border-light:#f3f4f6;--global-border-dark:#d1d5db;--global-hover-bg:#f9fafb;--card-bg:var(--global-bg-card);--bg-main:var(--global-bg-main);--text-primary:var(--global-text-primary);--text-secondary:var(--global-text-secondary);--border-color:var(--global-border-color);--input-bg:var(--global-bg-card);--primary-color:#6366f1;--tab-active-text:#041f53;--tab-active-border:#2563eb;--tab-inactive-text:#9ca3af;--tab-hover-text:#6b7280;--subject-matematica-start:#3b82f6;--subject-matematica-end:#2563eb;--subject-matematica-glow:#3b82f699;--subject-lenguaje-start:#ef4444;--subject-lenguaje-end:#dc2626;--subject-lenguaje-glow:#ef444499;--subject-historia-start:#10b981;--subject-historia-end:#059669;--subject-historia-glow:#10b98199;--subject-ingles-start:#a855f7;--subject-ingles-end:#9333ea;--subject-ingles-glow:#a855f799;--subject-biologia-start:#22c55e;--subject-biologia-end:#16a34a;--subject-biologia-glow:#22c55e99;--subject-fisica-start:#374151;--subject-fisica-end:#1f2937;--subject-fisica-glow:#37415199;--subject-quimica-start:#f59e0b;--subject-quimica-end:#d97706;--subject-quimica-glow:#f59e0b99;--subject-ciencias-start:#10b981;--subject-ciencias-end:#059669;--subject-ciencias-glow:#10b98199;--subject-aprende-ia-start:#6366f1;--subject-aprende-ia-end:#4f46e5;--subject-aprende-ia-glow:#6366f199;--sidebar-bg:#130057;--sidebar-text:#faf7f7;--sidebar-text-hover:#fafafa;--sidebar-border:#e5e7eb;--sidebar-hover-bg:#0065ca;--sidebar-active-bg:#eff6ff;--sidebar-active-text:#333131;--sidebar-active-border:#2563eb;--sidebar-icon:#f5f5f5;--sidebar-icon-active:#2563eb;--topbar-bg:#fcfcfc;--topbar-text:#050655;--topbar-text-secondary:#071c44;--topbar-border:#c8d1e4;--topbar-button-bg:#e4e2fd;--topbar-button-text:#e4e5e7;--topbar-button-hover-bg:#e5e7eb;--topbar-icon:#011438;--content-selector-bg:#f5f4f800;--content-selector-text-title:#191047;--content-selector-text-description:#3b3b3d;--content-selector-border:#888;--content-selector-hover-bg:#f9fafb;--content-selector-selected-bg:#eee;--content-selector-selected-text:#f1f1f1;--content-selector-selected-text-count:#191047;--content-selector-card-bg:#fff;--content-selector-card-text:#191047;--content-selector-card-border:#191047;--content-selector-close-icon:#707070;--content-selector-close-icon-hover:#b8030c;--content-selector-tree-bg:#fff;--content-selector-tree-border:#e5e7eb;--content-selector-unidad-text:#282929;--content-selector-leccion-text:#374151;--content-selector-tema-text:#4b5563;--content-selector-icon:#6b7280;--content-selector-checkbox-border:#d1d5db;--content-selector-checkbox-checked:#0e5212;--chat-header-bg-start:#130057;--chat-header-bg-end:#2563eb;--chat-header-text:#fff;--chat-header-status-dot:#4ade80;--chat-header-status-text:#dbeafe;--chat-user-message-bg:#f7f7f7;--chat-user-message-text:#110644;--chat-user-message-border:#2563eb;--chat-user-message-border-width:2px;--chat-user-message-shadow:0 4px 12px #2563eb4d;--chat-user-icon:#fff;--chat-ai-message-bg:#f7f7f7;--chat-ai-message-text:#110644;--chat-ai-message-border:#006105;--chat-ai-message-border-width:2px;--chat-ai-message-shadow:0 4px 12px #00610540;--chat-ai-icon:#2563eb;--chat-ai-source-text:#6b7280;--chat-ai-source-icon:#2563eb;--chat-ai-button-text:#2563eb;--chat-ai-button-hover:#1d4ed8;--chat-input-bg:#fff;--chat-input-text:#111827;--chat-input-placeholder:#9ca3af;--chat-input-border:#031b3f;--chat-input-border-focus:#2563eb;--chat-input-disabled-bg:#f3f4f6;--chat-typing-bg:#fff;--chat-typing-border:#e5e7eb;--chat-typing-dot:#110644;--chat-typing-text:#6b7280;--chat-alert-error-bg:#fef2f2;--chat-alert-error-border:#ef4444;--chat-alert-error-text:#b91c1c;--chat-alert-warning-bg:#fef9c3;--chat-alert-warning-border:#eab308;--chat-alert-warning-text:#a16207;--chat-alert-info-bg:#dbeafe;--chat-alert-info-border:#3b82f6;--chat-alert-info-text:#1e40af;--chat-send-button-bg:#110644;--chat-send-button-text:#fff;--chat-send-button-hover-bg:#110644;--chat-send-button-icon:#fff;--practice-bg:#492d2d;--practice-text-title:#111827;--practice-text-description:#6b7280;--practice-border:#e5e7eb;--practice-card-bg:#fff;--practice-card-border:#e5e7eb;--practice-card-hover-border:#2563eb;--practice-card-hover-shadow:#2563eb1a;--practice-card-icon-bg:#eff6ff;--practice-card-icon-color:#2563eb;--practice-card-title:#111827;--practice-card-description:#6b7280;--practice-card-button-bg:#2563eb;--practice-card-button-text:#fff;--practice-card-button-hover:#1d4ed8;--practice-history-bg:#f9fafb;--practice-history-title:#111827;--practice-history-item-bg:#fff;--practice-history-item-border:#e5e7eb;--practice-history-date:#6b7280;--practice-history-score:#111827;--practice-history-topics:#6b7280;--quiz-bg:#fff;--quiz-text-title:#111827;--quiz-text-question:#111827;--quiz-text-number:#6b7280;--quiz-border:#e5e7eb;--quiz-option-bg:#fff;--quiz-option-text:#374151;--quiz-option-border:#d1d5db;--quiz-option-hover-bg:#f9fafb;--quiz-option-hover-border:#2563eb;--quiz-correct-bg:#dcfce7;--quiz-correct-text:#15803d;--quiz-correct-border:#22c55e;--quiz-correct-icon:#22c55e;--quiz-incorrect-bg:#fee2e2;--quiz-incorrect-text:#b91c1c;--quiz-incorrect-border:#ef4444;--quiz-incorrect-icon:#ef4444;--quiz-neutral-bg:#f3f4f6;--quiz-neutral-text:#6b7280;--quiz-neutral-border:#d1d5db;--quiz-explanation-bg:#eff6ff;--quiz-explanation-text:#1e40af;--quiz-explanation-border:#bfdbfe;--quiz-explanation-icon:#3b82f6;--quiz-button-primary-bg:#2563eb;--quiz-button-primary-text:#fff;--quiz-button-primary-hover:#1d4ed8;--quiz-button-secondary-bg:#f3f4f6;--quiz-button-secondary-text:#374151;--quiz-button-secondary-hover:#e5e7eb;--quiz-result-bg:#fff;--quiz-result-border:#e5e7eb;--quiz-result-title:#111827;--quiz-result-score:#2563eb;--quiz-result-message:#6b7280;--quiz-result-trophy:#eab308;--state-success-bg:#dcfce7;--state-success-text:#15803d;--state-success-border:#22c55e;--state-success-icon:#22c55e;--state-warning-bg:#fef9c3;--state-warning-text:#a16207;--state-warning-border:#eab308;--state-warning-icon:#eab308;--state-error-bg:#fee2e2;--state-error-text:#b91c1c;--state-error-border:#ef4444;--state-error-icon:#ef4444;--state-info-bg:#dbeafe;--state-info-text:#1e40af;--state-info-border:#3b82f6;--state-info-icon:#3b82f6}:root.dark{--global-bg-main:#111827;--global-bg-card:#1f2937;--global-text-primary:#f9fafb;--global-text-secondary:#d1d5db;--global-text-tertiary:#9ca3af;--global-text-disabled:#6b7280;--global-border-color:#374151;--global-border-light:#4b5563;--global-border-dark:#1f2937;--global-hover-bg:#374151;--card-bg:var(--global-bg-card);--bg-main:var(--global-bg-main);--text-primary:var(--global-text-primary);--text-secondary:var(--global-text-secondary);--border-color:var(--global-border-color);--input-bg:var(--global-bg-card);--primary-color:#818cf8;--state-success-bg:#22c55e33;--state-success-border:#16a34a;--state-success-text:#4ade80;--state-error-bg:#ef444433;--state-error-border:#dc2626;--tab-active-text:#60a5fa;--tab-active-border:#60a5fa;--tab-inactive-text:#9ca3af;--tab-hover-text:#d1d5db;--subject-matematica-start:#60a5fa;--subject-matematica-end:#3b82f6;--subject-matematica-glow:#60a5fa99;--subject-lenguaje-start:#f87171;--subject-lenguaje-end:#ef4444;--subject-lenguaje-glow:#f8717199;--subject-historia-start:#34d399;--subject-historia-end:#10b981;--subject-historia-glow:#34d39999;--subject-ingles-start:#c084fc;--subject-ingles-end:#a855f7;--subject-ingles-glow:#c084fc99;--subject-biologia-start:#4ade80;--subject-biologia-end:#22c55e;--subject-biologia-glow:#4ade8099;--subject-fisica-start:#6b7280;--subject-fisica-end:#4b5563;--subject-fisica-glow:#6b728099;--subject-quimica-start:#fbbf24;--subject-quimica-end:#f59e0b;--subject-quimica-glow:#fbbf2499;--subject-ciencias-start:#34d399;--subject-ciencias-end:#10b981;--subject-ciencias-glow:#34d39999;--subject-aprende-ia-start:#818cf8;--subject-aprende-ia-end:#6366f1;--subject-aprende-ia-glow:#818cf899;--sidebar-bg:#1f2937;--sidebar-text:#d1d5db;--sidebar-text-hover:#f9fafb;--sidebar-border:#374151;--sidebar-hover-bg:#374151;--sidebar-active-bg:#1e3a8a;--sidebar-active-text:#60a5fa;--sidebar-active-border:#60a5fa;--sidebar-icon:#9ca3af;--sidebar-icon-active:#60a5fa;--topbar-bg:#1f2937;--topbar-text:#f9fafb;--topbar-text-secondary:#d1d5db;--topbar-border:#374151;--topbar-button-bg:#374151;--topbar-button-text:#f9fafb;--topbar-button-hover-bg:#4b5563;--topbar-icon:#d1d5db;--content-selector-bg:#1f2937;--content-selector-text-title:#f9fafb;--content-selector-text-description:#d1d5db;--content-selector-border:#374151;--content-selector-hover-bg:#374151;--content-selector-selected-bg:#2c6794;--content-selector-selected-text:#fff;--content-selector-selected-text-count:#fff;--content-selector-card-bg:#3d7fb3;--content-selector-card-text:#fff;--content-selector-card-border:#4a8fc4;--content-selector-close-icon:#bfdbfe;--content-selector-close-icon-hover:#fff;--content-selector-tree-bg:#1f2937;--content-selector-tree-border:#374151;--content-selector-unidad-text:#f9fafb;--content-selector-leccion-text:#e5e7eb;--content-selector-tema-text:#d1d5db;--content-selector-icon:#9ca3af;--content-selector-checkbox-border:#4b5563;--content-selector-checkbox-checked:#60a5fa;--chat-header-bg-start:#3b82f6;--chat-header-bg-end:#2563eb;--chat-header-text:#fff;--chat-header-status-dot:#4ade80;--chat-header-status-text:#dbeafe;--chat-user-message-bg:#3b82f6;--chat-user-message-text:#fff;--chat-user-message-border:#2563eb;--chat-user-message-border-width:1px;--chat-user-message-shadow:0 4px 12px #2563eb66;--chat-user-icon:#fff;--chat-ai-message-bg:#1f2937;--chat-ai-message-text:#e5e7eb;--chat-ai-message-border:#374151;--chat-ai-message-border-width:1px;--chat-ai-message-shadow:0 4px 12px #37415166;--chat-ai-icon:#60a5fa;--chat-ai-source-text:#9ca3af;--chat-ai-source-icon:#60a5fa;--chat-ai-button-text:#60a5fa;--chat-ai-button-hover:#93c5fd;--chat-input-bg:#374151;--chat-input-text:#f9fafb;--chat-input-placeholder:#9ca3af;--chat-input-border:#4b5563;--chat-input-border-focus:#60a5fa;--chat-input-disabled-bg:#1f2937;--chat-typing-bg:#1f2937;--chat-typing-border:#374151;--chat-typing-dot:#60a5fa;--chat-typing-text:#9ca3af;--chat-alert-error-bg:#ef444433;--chat-alert-error-border:#dc2626;--chat-alert-error-text:#f87171;--chat-alert-warning-bg:#eab30833;--chat-alert-warning-border:#ca8a04;--chat-alert-warning-text:#facc15;--chat-alert-info-bg:#3b82f633;--chat-alert-info-border:#2563eb;--chat-alert-info-text:#60a5fa;--chat-send-button-bg:#f97316;--chat-send-button-text:#fff;--chat-send-button-hover-bg:#ea580c;--chat-send-button-icon:#fff;--practice-bg:#1f2937;--practice-text-title:#f9fafb;--practice-text-description:#d1d5db;--practice-border:#374151;--practice-card-bg:#1f2937;--practice-card-border:#374151;--practice-card-hover-border:#60a5fa;--practice-card-hover-shadow:#60a5fa1a;--practice-card-icon-bg:#1e3a8a;--practice-card-icon-color:#60a5fa;--practice-card-title:#f9fafb;--practice-card-description:#d1d5db;--practice-card-button-bg:#2563eb;--practice-card-button-text:#fff;--practice-card-button-hover:#3b82f6;--practice-history-bg:#111827;--practice-history-title:#f9fafb;--practice-history-item-bg:#1f2937;--practice-history-item-border:#374151;--practice-history-date:#9ca3af;--practice-history-score:#f9fafb;--practice-history-topics:#d1d5db;--quiz-bg:#1f2937;--quiz-text-title:#f9fafb;--quiz-text-question:#f9fafb;--quiz-text-number:#d1d5db;--quiz-border:#374151;--quiz-option-bg:#1f2937;--quiz-option-text:#e5e7eb;--quiz-option-border:#4b5563;--quiz-option-hover-bg:#374151;--quiz-option-hover-border:#60a5fa;--quiz-correct-bg:#22c55e33;--quiz-correct-text:#4ade80;--quiz-correct-border:#16a34a;--quiz-correct-icon:#4ade80;--quiz-incorrect-bg:#ef444433;--quiz-incorrect-text:#f87171;--quiz-incorrect-border:#dc2626;--quiz-incorrect-icon:#f87171;--quiz-neutral-bg:#374151;--quiz-neutral-text:#9ca3af;--quiz-neutral-border:#4b5563;--quiz-explanation-bg:#3b82f633;--quiz-explanation-text:#93c5fd;--quiz-explanation-border:#2563eb;--quiz-explanation-icon:#60a5fa;--quiz-button-primary-bg:#2563eb;--quiz-button-primary-text:#fff;--quiz-button-primary-hover:#3b82f6;--quiz-button-secondary-bg:#374151;--quiz-button-secondary-text:#e5e7eb;--quiz-button-secondary-hover:#4b5563;--quiz-result-bg:#1f2937;--quiz-result-border:#374151;--quiz-result-title:#f9fafb;--quiz-result-score:#60a5fa;--quiz-result-message:#d1d5db;--quiz-result-trophy:#facc15;--state-success-icon:#4ade80;--state-warning-bg:#eab30833;--state-warning-text:#facc15;--state-warning-border:#ca8a04;--state-warning-icon:#facc15;--state-error-text:#f87171;--state-error-icon:#f87171;--state-info-bg:#3b82f633;--state-info-text:#60a5fa;--state-info-border:#2563eb;--state-info-icon:#60a5fa}@keyframes confetti{0%{opacity:1;transform:translateY(-10px)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}@keyframes gradient{0%,to{background-position:0%}50%{background-position:100%}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes glow{0%{box-shadow:0 0 20px var(--subject-glow-color,#3b82f666), 0 0 40px var(--subject-glow-color,#3b82f633), 0 4px 20px #00000026}to{box-shadow:0 0 30px var(--subject-glow-color,#3b82f699), 0 0 60px var(--subject-glow-color,#3b82f64d), 0 4px 20px #00000026}}.animate-confetti{animation:linear forwards confetti}.animate-bounce-slow{animation:2s ease-in-out infinite bounce-slow}.animate-wiggle{animation:1s ease-in-out infinite wiggle}.animate-gradient{background-size:200% 200%;animation:3s infinite gradient}.ai-message-content{font-size:1rem;line-height:1.7}.ai-message-content strong{color:var(--global-text-primary);font-weight:600}.ai-message-content em{font-style:italic}.ai-message-content h3{color:var(--global-text-primary);border-bottom:2px solid var(--subject-matematica-start);padding-bottom:.25rem}.step-container{border-left:3px solid var(--subject-matematica-start);background:linear-gradient(135deg,#3b82f61a,#3b82f60d);border-radius:8px;align-items:flex-start;gap:.75rem;margin:1rem 0 .5rem;padding:.5rem;display:flex}.step-number{background:var(--subject-matematica-start);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:28px;height:28px;font-size:.9rem;font-weight:700;display:flex}.step-title{color:var(--global-text-primary);padding-top:2px;font-size:1.05rem;font-weight:600}:root.dark .step-container{background:linear-gradient(135deg,#60a5fa26,#60a5fa0d)}.ai-message-content ul{margin-left:1rem}.ai-message-content .list-item{margin-bottom:.25rem;padding-left:.5rem;position:relative}.ai-message-content .list-item:before{content:"•";color:var(--subject-matematica-start);font-weight:700;position:absolute;left:-1rem}mjx-container{color:var(--global-text-primary)!important;font-size:1.3em!important}mjx-container[display=true]{border-left:4px solid var(--subject-matematica-start,#3b82f6)!important;background-color:#3b82f614!important;border-radius:8px!important;max-width:100%!important;margin:1em 0!important;padding:.75em!important;font-size:1.5em!important;display:block!important;overflow-x:auto!important}:root.dark mjx-container[display=true]{background-color:#60a5fa1a!important}mjx-container:not([display=true]){vertical-align:middle!important;font-size:1.2em!important;display:inline!important}mjx-container *,mjx-math,mjx-mrow,mjx-mi,mjx-mo,mjx-mn,mjx-mfrac,mjx-msup,mjx-msub,mjx-msqrt{color:var(--global-text-primary)!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.3s ease-in-out fadeIn}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}.error-boundary-container{background-color:#f3f4f6;justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.error-boundary-card{text-align:center;background-color:#fff;border-radius:.5rem;width:100%;max-width:32rem;padding:2rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.error-boundary-icon-container{justify-content:center;margin-bottom:1rem;display:flex}.error-boundary-icon{color:#ef4444;width:4rem;height:4rem}.error-boundary-title{color:#1f2937;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.error-boundary-message{color:#6b7280;margin-bottom:1.5rem;line-height:1.5}.error-boundary-details{text-align:left;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;margin-bottom:1.5rem;padding:1rem}.error-boundary-summary{cursor:pointer;color:#374151;margin-bottom:.5rem;font-weight:500}.error-boundary-error-text{color:#ef4444;max-height:12rem;margin-top:.5rem;font-family:monospace;font-size:.75rem;overflow:auto}.error-boundary-button-container{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.error-boundary-primary-button{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.error-boundary-primary-button:hover{background-color:#2563eb}.error-boundary-secondary-button{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.error-boundary-secondary-button:hover{background-color:#f9fafb}.login-form-container{justify-content:center;align-items:center;display:flex;position:relative}.login-form-robot{z-index:10;pointer-events:none;position:absolute;top:-5%;left:50%;transform:translate(-50%,-50%)}.login-form-robot-img{filter:drop-shadow(0 10px 20px #0003);width:auto;height:140px}.login-form{z-index:1;background:#fff;border-radius:16px;width:100%;max-width:480px;padding:4rem 2.5rem 3rem;position:relative;box-shadow:0 20px 60px #00000026}.login-form-logo{justify-content:center;margin-bottom:2rem;display:flex}.login-form-logo-img{width:auto;max-width:100%;height:60px}.login-form-title{color:#1a202c;text-align:center;margin-bottom:.5rem;font-size:1rem;font-weight:700}.login-form-subtitle{color:#718096;text-align:center;margin-bottom:2rem;font-size:1rem}.login-form-error{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:8px;margin-bottom:1.5rem;padding:.875rem 1rem;font-size:.875rem;line-height:1.5}.login-form-field{margin-bottom:1.5rem}.login-form-label{color:#4a5568;margin-bottom:.5rem;font-size:.9375rem;font-weight:600;display:block}.login-form-input{box-sizing:border-box;border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.login-form-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.login-form-input:disabled{cursor:not-allowed;opacity:.6;background-color:#f7fafc}.login-form-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;margin-top:.5rem;padding:1rem 1.5rem;font-size:1.0625rem;font-weight:600;transition:all .2s}.login-form-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.login-form-button:active:not(:disabled){transform:translateY(0)}.login-form-button:disabled{opacity:.7;cursor:not-allowed}.login-form-button-loading{justify-content:center;align-items:center;gap:.5rem;display:flex}.login-form-footer{text-align:center;margin-top:1.75rem}.login-form-link{color:#667eea;font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .2s}.login-form-link:hover{color:#764ba2;text-decoration:underline}@media (width<=640px){.login-form{max-width:100%;padding:3rem 1.5rem 2rem}.login-form-robot{top:-2%}.login-form-robot-img{height:120px}.login-form-logo-img{height:50px}.login-form-title{font-size:1.5rem}.login-form-subtitle{font-size:.875rem}}@media (width>=768px){.login-form{max-width:500px;padding:4.5rem 3rem 3.5rem}.login-form-robot-img{height:200px}.login-form-logo-img{height:70px}.login-form-title{font-size:2.25rem}}@media (prefers-color-scheme:dark){.login-form{background:#2d3748}.login-form-title{color:#f7fafc}.login-form-subtitle{color:#cbd5e0}.login-form-label{color:#e2e8f0}.login-form-input{color:#f7fafc;background-color:#1a202c;border-color:#4a5568}.login-form-input:focus{background-color:#2d3748;border-color:#667eea}.login-form-input:disabled{background-color:#1a202c}}.login-page-wrapper{width:100vw;min-height:100vh;position:relative;overflow:hidden}.login-page-background{z-index:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);width:100%;height:100%;position:fixed;top:0;left:0}.login-page-content{z-index:1;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative}@media (width<=640px){.login-page-content{padding:1rem}}.password-recovery-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.password-recovery-form{background:#fff;border-radius:12px;width:100%;max-width:450px;padding:2.5rem;box-shadow:0 10px 40px #0000001a}.password-recovery-title{color:#1a202c;text-align:center;margin-bottom:1rem;font-size:1.75rem;font-weight:700}.password-recovery-description{color:#718096;text-align:center;margin-bottom:1.5rem;font-size:.9375rem;line-height:1.6}.password-recovery-error{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:6px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5}.password-recovery-field{margin-bottom:1.25rem}.password-recovery-label{color:#4a5568;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.password-recovery-input{box-sizing:border-box;border:1px solid #cbd5e0;border-radius:6px;width:100%;padding:.75rem 1rem;font-size:1rem;transition:all .2s}.password-recovery-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.password-recovery-input:disabled{cursor:not-allowed;opacity:.6;background-color:#f7fafc}.password-recovery-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;width:100%;margin-top:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.password-recovery-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.password-recovery-button:active:not(:disabled){transform:translateY(0)}.password-recovery-button:disabled{opacity:.7;cursor:not-allowed}.password-recovery-button-loading{justify-content:center;align-items:center;gap:.5rem;display:flex}.password-recovery-footer{text-align:center;margin-top:1.5rem}.password-recovery-link{color:#667eea;font-size:.875rem;text-decoration:none;transition:color .2s;display:inline-block}.password-recovery-link:hover{color:#764ba2;text-decoration:underline}.password-recovery-success{text-align:center}.password-recovery-success-icon{color:#fff;background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;font-size:2rem;font-weight:700;display:flex}.password-recovery-success-message{color:#2d3748;margin-bottom:1rem;font-size:1rem;line-height:1.6}.password-recovery-success-message strong{color:#667eea;font-weight:600}.password-recovery-success-note{color:#718096;margin-bottom:2rem;font-size:.875rem;line-height:1.5}.password-recovery-actions{flex-direction:column;align-items:center;gap:1rem;display:flex}.password-recovery-button-secondary{color:#667eea;cursor:pointer;background:#fff;border:2px solid #667eea;border-radius:6px;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.password-recovery-button-secondary:hover{color:#fff;background:#667eea;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.password-recovery-button-secondary:active{transform:translateY(0)}@media (width<=480px){.password-recovery-form{padding:2rem 1.5rem}.password-recovery-title{font-size:1.5rem}.password-recovery-description{font-size:.875rem}}@media (prefers-color-scheme:dark){.password-recovery-form{background:#2d3748}.password-recovery-title{color:#f7fafc}.password-recovery-description{color:#cbd5e0}.password-recovery-label{color:#e2e8f0}.password-recovery-input{color:#f7fafc;background-color:#1a202c;border-color:#4a5568}.password-recovery-input:focus{background-color:#2d3748;border-color:#667eea}.password-recovery-input:disabled{background-color:#1a202c}.password-recovery-success-message{color:#e2e8f0}.password-recovery-button-secondary{color:#667eea;background:#2d3748}.password-recovery-button-secondary:hover{color:#fff;background:#667eea}}.password-change-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.password-change-form{background:#fff;border-radius:12px;width:100%;max-width:480px;padding:2.5rem;box-shadow:0 10px 40px #0000001a}.password-change-title{color:#1a202c;text-align:center;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.password-change-description{color:#4a5568;text-align:center;margin:0 0 1.5rem;font-size:.95rem;line-height:1.5}.password-requirements{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.password-requirements-list{margin:0;padding:0;list-style:none}.password-requirements-list li{color:#718096;padding:.25rem 0 .25rem 1.5rem;font-size:.875rem;position:relative}.password-requirements-list li:before{content:"○";color:#cbd5e0;font-weight:700;position:absolute;left:0}.password-requirements-list li.requirement-met{color:#38a169}.password-requirements-list li.requirement-met:before{content:"✓";color:#38a169}.password-change-error{color:#c53030;background:#fff5f5;border:1px solid #fc8181;border-radius:8px;margin-bottom:1.5rem;padding:.875rem;font-size:.875rem;line-height:1.5}.password-change-validation-errors{color:#c53030;background:#fff5f5;border:1px solid #fc8181;border-radius:8px;margin-bottom:1.5rem;padding:.875rem;font-size:.875rem}.password-change-validation-errors ul{margin:0;padding-left:1.25rem}.password-change-validation-errors li{margin:.25rem 0}.password-change-field{margin-bottom:1.5rem}.password-change-label{color:#2d3748;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-change-input{background:#fff;border:1px solid #cbd5e0;border-radius:8px;width:100%;padding:.75rem 2.5rem .75rem .875rem;font-size:1rem;transition:all .2s}.password-change-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.password-change-input:disabled{cursor:not-allowed;opacity:.6;background:#f7fafc}.password-toggle-button{cursor:pointer;color:#718096;background:0 0;border:none;padding:.5rem;font-size:1.25rem;transition:color .2s;position:absolute;right:.5rem}.password-toggle-button:hover{color:#4a5568}.password-toggle-button:focus{color:#667eea;outline:none}.password-change-button{color:#fff;cursor:pointer;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;margin-bottom:1rem;padding:.875rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.password-change-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.password-change-button:active:not(:disabled){transform:translateY(0)}.password-change-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.password-change-button-loading{justify-content:center;align-items:center;gap:.5rem;display:flex}.password-change-footer{text-align:center;margin-top:1rem}.password-change-link{color:#667eea;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}.password-change-link:hover{color:#764ba2;text-decoration:underline}.password-change-success{text-align:center;padding:1rem 0}.password-change-success-icon{color:#fff;background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;font-size:2rem;display:flex}.password-change-success-message{color:#2d3748;margin:0 0 1rem;font-size:1rem;line-height:1.6}.password-change-success-note{color:#718096;margin:0 0 2rem;font-size:.875rem;line-height:1.5}.password-change-actions{flex-direction:column;gap:.75rem;display:flex}@media (width<=640px){.password-change-container{padding:.5rem}.password-change-form{padding:2rem 1.5rem}.password-change-title{font-size:1.5rem}.password-change-description{font-size:.875rem}}.user-profile-display{max-width:640px;margin:0 auto}.user-profile-avatar{flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.25rem;display:flex}.user-profile-avatar-circle{background:var(--primary-color,#667eea);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:1.5rem;font-weight:700;display:flex}.user-profile-avatar-name{color:var(--text-primary,#1a202c);font-size:1.125rem;font-weight:600}.user-profile-avatar-role{background:var(--primary-light,#667eea26);color:var(--primary-color,#667eea);border-radius:9999px;padding:.2rem .75rem;font-size:.75rem;font-weight:500}.user-profile-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.user-profile-field{background:var(--bg-hover,#00000008);border-radius:8px;flex-direction:column;gap:.25rem;padding:.625rem .75rem;display:flex}.user-profile-label{color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem;font-weight:600}.user-profile-value{color:var(--text-primary,#1a202c);word-break:break-word;font-size:.875rem;font-weight:500}.user-profile-select{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-card,white);width:100%;color:var(--text-primary,#1a202c);cursor:pointer;border-radius:6px;padding:.375rem .5rem;font-size:.875rem}.user-profile-select:focus{border-color:var(--primary-color,#667eea);outline:none;box-shadow:0 0 0 2px #667eea26}.user-profile-select:disabled{opacity:.5;cursor:not-allowed}@media (width<=480px){.user-profile-grid{grid-template-columns:1fr}}.student-page-wrapper{width:100%;height:100vh;position:relative}.student-page-admin-fab{color:#fff;cursor:pointer;z-index:1000;background:#10b981;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 12px #10b98166}.student-page-admin-fab:hover{background:#059669;transform:scale(1.1);box-shadow:0 6px 20px #10b98199}.student-page-profile-wrapper{background:var(--bg-main,#f5f5f5);width:100%;min-height:100vh}.student-page-profile-header{align-items:center;gap:1rem;max-width:640px;margin:0 auto;padding:1.25rem 1.5rem 0;display:flex}.student-page-profile-header h2{color:var(--text-primary,#1a202c);margin:0;font-size:1.125rem;font-weight:600}.student-page-back-button{background:var(--bg-card,white);border:1px solid var(--border-color,#e0e0e0);cursor:pointer;color:var(--text-secondary,#6b7280);border-radius:6px;padding:.4rem .75rem;font-size:.8125rem;transition:all .2s}.student-page-back-button:hover{background:var(--bg-hover,#f5f5f5);color:var(--primary-color,#667eea);border-color:var(--primary-color,#667eea)}.student-page-profile-content{max-width:640px;margin:0 auto}.student-page-loading,.student-page-error{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;display:flex}.student-page-button{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;transition:background .2s}.student-page-button:hover{background:#764ba2}.student-page-admin-button{color:#fff;cursor:pointer;background-color:#10b981;border:none;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:background-color .2s;display:flex}.student-page-admin-button:hover{background-color:#059669}.student-page-admin-icon{width:1rem;height:1rem}.student-page-container{flex:1;display:flex;overflow:hidden}.student-page-sidebar{background-color:var(--bg-card,#fff);border-right:1px solid var(--border-color,#e0e0e0);flex-direction:column;width:250px;display:flex;overflow-y:auto}.student-page-nav{flex-direction:column;gap:.5rem;padding:1rem;display:flex}.student-page-nav-item{color:var(--text-secondary,#6b7280);cursor:pointer;text-align:left;background-color:#0000;border:none;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.student-page-nav-item:hover{background-color:var(--bg-hover,#f9fafb);color:var(--text-primary,#1f2937)}.student-page-nav-item-active{background-color:var(--primary-light,#dbeafe);color:var(--primary-color,#3b82f6)}.student-page-nav-icon{width:1.25rem;height:1.25rem}.student-page-course-info{background-color:var(--bg-hover,#f9fafb);border-top:1px solid var(--border-color,#e0e0e0);margin-top:auto;padding:1.5rem}.student-page-course-info-title{color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;font-size:.875rem;font-weight:600}.student-page-course-info-badge{background-color:var(--primary-light,#dbeafe);border-radius:.5rem;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.75rem;display:flex}.student-page-course-info-icon{width:1.25rem;height:1.25rem;color:var(--primary-color,#3b82f6)}.student-page-course-info-text{color:var(--primary-color,#3b82f6);font-size:.875rem;font-weight:600}.student-page-course-info-note{color:var(--text-secondary,#6b7280);margin:0;font-size:.75rem;line-height:1.4}.student-page-main{background-color:var(--bg-main,#f5f5f5);flex:1;overflow-y:auto}.student-page-profile-section{max-width:1200px;margin:0 auto;padding:2rem}.student-page-profile-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.student-page-profile-title{color:var(--text-primary,#1f2937);margin:0;font-size:1.875rem;font-weight:700}.student-page-course-badge{background-color:var(--primary-light,#dbeafe);border-radius:.5rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;display:flex}.student-page-course-icon{width:1.25rem;height:1.25rem;color:var(--primary-color,#3b82f6)}.student-page-course-text{color:var(--text-secondary,#6b7280);font-size:.875rem}.student-page-course-text strong{color:var(--primary-color,#3b82f6);font-weight:600}.student-page-loading,.student-page-error{background-color:var(--bg-main,#f5f5f5);flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:100vh;display:flex}.student-page-spinner{border:4px solid var(--border-color,#e0e0e0);border-top-color:var(--primary-color,#3b82f6);border-radius:50%;width:3rem;height:3rem;animation:1s linear infinite student-page-spin}@keyframes student-page-spin{to{transform:rotate(360deg)}}.student-page-loading p,.student-page-error p{color:var(--text-secondary,#6b7280);margin:0;font-size:1rem}.student-page-button{background-color:var(--primary-color,#3b82f6);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.student-page-button:hover{background-color:var(--primary-hover,#2563eb)}@media (width<=768px){.student-page-header-content{flex-direction:column;gap:1rem;padding:1rem}.student-page-header-right{justify-content:space-between;width:100%}.student-page-sidebar{width:200px}.student-page-profile-header{flex-direction:column;align-items:flex-start;gap:1rem}.student-page-profile-section{padding:1rem}}@media (width<=640px){.student-page-container{flex-direction:column}.student-page-sidebar{border-right:none;border-bottom:1px solid var(--border-color,#e0e0e0);width:100%}.student-page-nav{flex-direction:row;overflow-x:auto}.student-page-course-info{display:none}}.audit-log-viewer{width:100%;max-width:1400px;margin:0 auto;padding:20px}.audit-log-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.audit-log-title{color:#1f2937;margin:0;font-size:28px;font-weight:700}.audit-button{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.audit-button:disabled{opacity:.5;cursor:not-allowed}.audit-button-export{color:#fff;background-color:#10b981}.audit-button-export:hover:not(:disabled){background-color:#059669}.audit-button-primary{color:#fff;background-color:#3b82f6}.audit-button-primary:hover:not(:disabled){background-color:#2563eb}.audit-button-secondary{color:#fff;background-color:#6b7280}.audit-button-secondary:hover:not(:disabled){background-color:#4b5563}.audit-button-pagination{color:#374151;background-color:#f3f4f6;border:1px solid #d1d5db}.audit-button-pagination:hover:not(:disabled){background-color:#e5e7eb}.audit-filters{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:20px}.audit-filters-title{color:#374151;margin:0 0 16px;font-size:18px;font-weight:600}.audit-filters-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px;display:grid}.audit-filter-field{flex-direction:column;gap:6px;display:flex}.audit-filter-field label{color:#374151;font-size:14px;font-weight:500}.audit-input,.audit-select{color:#1f2937;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px 12px;font-size:14px;transition:border-color .2s}.audit-input:focus,.audit-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.audit-filters-actions{justify-content:flex-start;gap:12px;display:flex}.audit-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.audit-loading p{color:#6b7280;margin:0;font-size:16px}.audit-error{color:#991b1b;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:24px;padding:16px}.audit-error strong{font-weight:600}.audit-results-info{background-color:#f9fafb;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.audit-results-count{color:#6b7280;margin:0;font-size:14px}.audit-items-per-page{align-items:center;gap:8px;display:flex}.audit-items-per-page label{color:#374151;font-size:14px;font-weight:500}.audit-items-per-page .audit-select{padding:6px 10px;font-size:14px}.audit-empty{text-align:center;background-color:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:60px 20px}.audit-empty p{color:#6b7280;margin:0;font-size:16px}.audit-table-container{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;overflow-x:auto}.audit-table{border-collapse:collapse;background-color:#fff;width:100%}.audit-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.audit-table th{text-align:left;color:#374151;white-space:nowrap;padding:12px 16px;font-size:14px;font-weight:600}.audit-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s}.audit-table tbody tr:hover{background-color:#f9fafb}.audit-table tbody tr:last-child{border-bottom:none}.audit-table td{color:#1f2937;padding:12px 16px;font-size:14px}.audit-table-timestamp{white-space:nowrap;color:#6b7280;font-family:Courier New,monospace;font-size:13px}.audit-table-admin{color:#4b5563;font-family:Courier New,monospace;font-size:13px}.audit-table-action{white-space:nowrap}.audit-action-badge{white-space:nowrap;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.audit-action-csv_upload{color:#1e40af;background-color:#dbeafe}.audit-action-user_create{color:#065f46;background-color:#d1fae5}.audit-action-user_update{color:#92400e;background-color:#fef3c7}.audit-action-user_delete{color:#991b1b;background-color:#fee2e2}.audit-table-details{text-overflow:ellipsis;color:#6b7280;max-width:400px;font-size:13px;overflow:hidden}.audit-pagination{justify-content:center;align-items:center;gap:16px;padding:20px 0;display:flex}.audit-pagination-info{color:#374151;font-size:14px;font-weight:500}@media (width<=768px){.audit-log-viewer{padding:12px}.audit-log-header{flex-direction:column;align-items:flex-start;gap:12px}.audit-filters-grid{grid-template-columns:1fr}.audit-filters-actions{flex-direction:column}.audit-filters-actions .audit-button{justify-content:center;width:100%}.audit-results-info{flex-direction:column;align-items:flex-start;gap:12px}.audit-table-container{font-size:12px}.audit-table th,.audit-table td{padding:8px 12px}.audit-pagination{flex-direction:column;gap:12px}.audit-button-pagination{justify-content:center;width:100%}}@media (prefers-color-scheme:dark){.audit-log-viewer{color:#f3f4f6}.audit-log-title{color:#f9fafb}.audit-filters{background-color:#1f2937;border-color:#374151}.audit-filters-title{color:#f3f4f6}.audit-filter-field label{color:#d1d5db}.audit-input,.audit-select{color:#f3f4f6;background-color:#374151;border-color:#4b5563}.audit-table{background-color:#1f2937}.audit-table thead{background-color:#374151;border-bottom-color:#4b5563}.audit-table th{color:#f3f4f6}.audit-table tbody tr{border-bottom-color:#374151}.audit-table tbody tr:hover{background-color:#374151}.audit-table td{color:#e5e7eb}.audit-results-info{background-color:#1f2937}.audit-empty{background-color:#1f2937;border-color:#4b5563}}.csv-upload-container{max-width:900px;margin:0 auto;padding:2rem}.csv-upload-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 4px 20px #00000014}.csv-upload-title{color:#1a202c;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.csv-upload-description{color:#718096;margin-bottom:2rem;font-size:1rem}.csv-format-info{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.csv-format-title{color:#2d3748;margin-bottom:.75rem;font-size:1rem;font-weight:600}.csv-format-example{color:#e2e8f0;white-space:pre;background:#2d3748;border-radius:6px;margin-bottom:1rem;padding:1rem;font-family:Courier New,monospace;font-size:.875rem;overflow-x:auto}.csv-format-note{color:#4a5568;margin:0;font-size:.875rem}.csv-file-selector{margin-bottom:1.5rem}.csv-file-input{display:none}.csv-file-label{text-align:center;cursor:pointer;background:#f7fafc;border:2px dashed #cbd5e0;border-radius:8px;padding:1.5rem;transition:all .2s;display:block}.csv-file-label:hover{background:#edf2f7;border-color:#667eea}.csv-file-placeholder{color:#718096;font-size:1rem}.csv-file-selected{color:#667eea;font-size:1rem;font-weight:600}.csv-file-info{background:#edf2f7;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.csv-file-details{margin-bottom:1rem}.csv-file-details p{color:#2d3748;margin:.5rem 0;font-size:.875rem}.csv-file-actions{gap:1rem;display:flex}.csv-button{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .2s}.csv-button:disabled{opacity:.6;cursor:not-allowed}.csv-button-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.csv-button-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.csv-button-secondary{color:#4a5568;background:#fff;border:1px solid #cbd5e0}.csv-button-secondary:hover:not(:disabled){background:#f7fafc;border-color:#a0aec0}.csv-button-text{color:#667eea;background:0 0;padding:.5rem 1rem}.csv-button-text:hover:not(:disabled){background:#edf2f7}.csv-error{color:#c33;background:#fee;border:1px solid #fcc;border-radius:6px;margin-bottom:1.5rem;padding:1rem;font-size:.875rem}.csv-progress-container{background:#edf2f7;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.csv-progress-header{color:#2d3748;align-items:center;gap:.75rem;margin-bottom:1rem;font-weight:600;display:flex}.csv-progress-bar{background:#cbd5e0;border-radius:4px;width:100%;height:8px;margin-bottom:.5rem;overflow:hidden}.csv-progress-fill{background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);height:100%;transition:width .3s}.csv-progress-text{text-align:center;color:#4a5568;margin:0;font-size:.875rem}.csv-results{background:#f0fff4;border:1px solid #9ae6b4;border-radius:8px;padding:1.5rem}.csv-results-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.csv-results-title{color:#22543d;margin:0;font-size:1.25rem;font-weight:700}.csv-results-summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.csv-result-item{background:#fff;border-left:4px solid;border-radius:6px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.csv-result-total{border-left-color:#4299e1}.csv-result-created{border-left-color:#48bb78}.csv-result-skipped{border-left-color:#ed8936}.csv-result-label{color:#4a5568;font-size:.875rem;font-weight:600}.csv-result-value{color:#1a202c;font-size:1.5rem;font-weight:700}.csv-errors-table{background:#fff;border-radius:6px;margin-top:1.5rem;padding:1rem}.csv-errors-title{color:#c53030;margin-bottom:1rem;font-size:1rem;font-weight:600}.csv-errors-list{max-height:400px;overflow-y:auto}.csv-table{border-collapse:collapse;width:100%;font-size:.875rem}.csv-table thead{background:#f7fafc;position:sticky;top:0}.csv-table th{text-align:left;color:#2d3748;border-bottom:2px solid #e2e8f0;padding:.75rem;font-weight:600}.csv-table td{vertical-align:top;border-bottom:1px solid #e2e8f0;padding:.75rem}.csv-table tbody tr:hover{background:#f7fafc}.csv-table-row-number{color:#4a5568;width:80px;font-weight:600}.csv-table-errors{color:#2d3748}.csv-error-list{margin:0;padding-left:1.25rem;list-style-type:disc}.csv-error-list li{color:#c53030;margin:.25rem 0}@media (width<=768px){.csv-upload-container{padding:1rem}.csv-upload-card{padding:1.5rem}.csv-upload-title{font-size:1.5rem}.csv-file-actions{flex-direction:column}.csv-button{width:100%}.csv-results-summary{grid-template-columns:1fr}.csv-format-example{font-size:.75rem}}@media (prefers-color-scheme:dark){.csv-upload-card{background:#2d3748}.csv-upload-title{color:#f7fafc}.csv-upload-description{color:#cbd5e0}.csv-format-info{background:#1a202c;border-color:#4a5568}.csv-format-title{color:#e2e8f0}.csv-format-note{color:#cbd5e0}.csv-file-label{background:#1a202c;border-color:#4a5568}.csv-file-label:hover{background:#2d3748;border-color:#667eea}.csv-file-info{background:#1a202c}.csv-file-details p{color:#e2e8f0}.csv-button-secondary{color:#e2e8f0;background:#1a202c;border-color:#4a5568}.csv-button-secondary:hover:not(:disabled){background:#2d3748}.csv-progress-container{background:#1a202c}.csv-progress-header{color:#e2e8f0}.csv-progress-bar{background:#4a5568}.csv-results{background:#1a202c;border-color:#48bb78}.csv-results-title{color:#9ae6b4}.csv-result-item{background:#2d3748}.csv-result-label{color:#cbd5e0}.csv-result-value{color:#f7fafc}.csv-errors-table{background:#2d3748}.csv-table thead{background:#1a202c}.csv-table th{color:#e2e8f0;border-bottom-color:#4a5568}.csv-table td{border-bottom-color:#4a5568}.csv-table tbody tr:hover{background:#1a202c}.csv-table-row-number{color:#cbd5e0}.csv-table-errors{color:#e2e8f0}}.admin-panel{background-color:#f1f5f9;flex-direction:column;min-height:100vh;display:flex}.admin-panel-header{background:linear-gradient(135deg,#1e293b 0%,#334155 100%);border-bottom:3px solid #3b82f6;box-shadow:0 4px 12px #00000026}.admin-panel-header-content{justify-content:space-between;align-items:center;max-width:1920px;margin:0 auto;padding:1rem 2rem;display:flex}.admin-panel-header-left{align-items:center;gap:1rem;display:flex}.admin-panel-header-icon{color:#60a5fa;width:2.5rem;height:2.5rem}.admin-panel-header-title{color:#f8fafc;margin:0;font-size:1.5rem;font-weight:700}.admin-panel-header-subtitle{color:#94a3b8;letter-spacing:.025em;margin:.125rem 0 0;font-size:.8rem}.admin-panel-header-right{align-items:center;gap:1.25rem;display:flex}.admin-panel-user-info{background-color:#ffffff14;border:1px solid #ffffff1a;border-radius:.5rem;align-items:center;gap:.75rem;padding:.5rem 1rem;display:flex}.admin-panel-user-icon{color:#94a3b8;width:1.25rem;height:1.25rem}.admin-panel-user-name{color:#f1f5f9;margin:0;font-size:.875rem;font-weight:600}.admin-panel-user-role{color:#60a5fa;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.7rem;font-weight:600}.admin-panel-logout-button{color:#fca5a5;cursor:pointer;background-color:#ef444426;border:1px solid #ef44444d;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s;display:flex}.admin-panel-logout-button:hover{color:#fff;background-color:#ef4444;border-color:#ef4444}.admin-panel-logout-icon{width:1rem;height:1rem}.admin-panel-container{flex:1;width:100%;max-width:1920px;margin:0 auto;display:flex}.admin-panel-sidebar{background:linear-gradient(#1e293b 0%,#0f172a 100%);flex-shrink:0;width:260px;padding:1.5rem 0;box-shadow:2px 0 12px #0000001a}.admin-panel-nav{flex-direction:column;gap:.25rem;padding:0 .75rem;display:flex}.admin-panel-nav-item{color:#94a3b8;cursor:pointer;text-align:left;background-color:#0000;border:none;border-radius:.5rem;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;position:relative}.admin-panel-nav-item:hover{color:#e2e8f0;background-color:#ffffff0f}.admin-panel-nav-item-active{color:#60a5fa;background:linear-gradient(135deg,#3b82f633,#3b82f614);border-left:3px solid #3b82f6;padding-left:calc(1rem - 3px)}.admin-panel-nav-item-active:hover{color:#93bbfd;background:linear-gradient(135deg,#3b82f640,#3b82f61f)}.admin-panel-nav-icon{flex-shrink:0;width:1.125rem;height:1.125rem}.admin-panel-main{background-color:#f1f5f9;flex:1;max-height:calc(100vh - 5rem);padding:2rem;overflow-y:auto}.admin-panel-section{background-color:#fff;border:1px solid #e2e8f0;border-radius:1rem;padding:2rem;animation:.25s ease-out adminFadeIn;box-shadow:0 1px 3px #0000000f,0 4px 16px #0000000a}@keyframes adminFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.admin-panel-section-header{align-items:center;gap:.75rem;margin-bottom:.375rem;display:flex}.admin-panel-section-icon{border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}.admin-panel-section-icon svg{color:#fff;width:1.25rem;height:1.25rem}.admin-panel-section-title{color:#0f172a;margin:0;font-size:1.375rem;font-weight:700}.admin-panel-section-description{color:#64748b;border-bottom:1px solid #f1f5f9;margin:0 0 1.75rem;padding-bottom:1.25rem;font-size:.875rem}.admin-panel-placeholder{text-align:center;color:#64748b;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:.75rem;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.admin-panel-placeholder-icon{color:#cbd5e1;width:3.5rem;height:3.5rem;margin-bottom:1rem}.admin-panel-placeholder p{margin:.375rem 0;font-size:.9375rem}.admin-panel-placeholder-note{color:#94a3b8;max-width:500px;font-size:.8125rem}.admin-panel-loading{background:linear-gradient(135deg,#1e293b,#334155);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-panel-spinner{border:4px solid #ffffff1a;border-top-color:#60a5fa;border-radius:50%;width:3rem;height:3rem;animation:.8s linear infinite admin-panel-spin}@keyframes admin-panel-spin{to{transform:rotate(360deg)}}.admin-panel-loading p{color:#94a3b8;margin-top:1rem;font-size:.9375rem}.admin-panel-error{background-color:#f1f5f9;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.admin-panel-error p{color:#ef4444;text-align:center;margin-bottom:1.5rem;font-size:1rem}.admin-panel-button{color:#fff;cursor:pointer;background-color:#3b82f6;border:none;border-radius:.5rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;transition:background-color .2s}.admin-panel-button:hover{background-color:#2563eb}@media (width<=1024px){.admin-panel-sidebar{width:220px}.admin-panel-main{padding:1.5rem}}@media (width<=768px){.admin-panel-header-content{flex-direction:column;align-items:flex-start;gap:1rem}.admin-panel-header-right{justify-content:space-between;width:100%}.admin-panel-container{flex-direction:column}.admin-panel-sidebar{background:#1e293b;border-bottom:1px solid #ffffff1a;border-right:none;width:100%;padding:.75rem 0}.admin-panel-nav{flex-direction:row;gap:.375rem;padding:0 .75rem;overflow-x:auto}.admin-panel-nav-item{flex-shrink:0;min-width:auto;padding:.625rem .875rem;font-size:.8125rem;border-left:none!important;padding-left:.875rem!important}.admin-panel-nav-item-active{border-bottom:2px solid #3b82f6;border-left:none;border-radius:.5rem .5rem 0 0}.admin-panel-main{max-height:none;padding:1rem}.admin-panel-section{padding:1.25rem}}@media (width<=480px){.admin-panel-header-content{padding:.75rem 1rem}.admin-panel-header-title{font-size:1.125rem}.admin-panel-user-info{padding:.375rem .625rem}.admin-panel-logout-button{padding:.375rem .75rem;font-size:.75rem}.admin-panel-section-title{font-size:1.125rem}.admin-panel-section{border-radius:.75rem;padding:1rem}}.profile-page{background:var(--bg-main,#f5f5f5);min-height:100vh}.profile-header{background:var(--topbar-bg,white);border-bottom:1px solid var(--border-color,#e2e8f0);padding:0 1.5rem}.profile-header-inner{justify-content:space-between;align-items:center;max-width:720px;height:56px;margin:0 auto;display:flex}.profile-header-logo{width:auto;height:32px}.profile-header-actions{align-items:center;gap:.5rem;display:flex}.profile-header-btn{width:36px;height:36px;color:var(--topbar-icon,#6b7280);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s;display:flex}.profile-header-btn:hover{background:var(--topbar-button-bg,#0000000d)}.profile-header-btn-logout{color:var(--state-error-text,#dc2626)}.profile-page-inner{max-width:720px;margin:0 auto;padding:1.5rem}.profile-back-btn{background:var(--card-bg,var(--global-bg-card,white));border:1px solid var(--border-color,#e2e8f0);color:var(--text-secondary,#6b7280);cursor:pointer;border-radius:6px;align-items:center;gap:.375rem;margin-bottom:1rem;padding:.375rem .75rem;font-size:.8125rem;transition:all .15s;display:inline-flex}.profile-back-btn:hover{color:var(--primary-color,#667eea);border-color:var(--primary-color,#667eea)}.profile-msg{border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.625rem .875rem;font-size:.8125rem;display:flex}.profile-msg-error{background:var(--state-error-bg,#fee2e2);color:var(--state-error-text,#dc2626);border:1px solid var(--state-error-border,#fca5a5)}.profile-msg-success{background:var(--state-success-bg,#dcfce7);color:var(--state-success-text,#16a34a);border:1px solid var(--state-success-border,#86efac)}.profile-msg-close{color:inherit;cursor:pointer;background:0 0;border:none;padding:2px}.profile-card{background:var(--card-bg,var(--global-bg-card,white));border:1px solid var(--border-color,#e2e8f0);color:var(--text-primary,#1a202c);border-radius:12px;overflow:hidden}.profile-card-main{gap:0;display:flex}.profile-photo-col{border-right:1px solid var(--border-color,#e2e8f0);flex-direction:column;align-items:center;gap:.5rem;min-width:140px;padding:1.5rem;display:flex}.profile-photo-wrapper{border:3px solid var(--border-color,#e2e8f0);border-radius:50%;width:96px;height:96px;position:relative;overflow:hidden}.profile-photo-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.profile-photo-placeholder{background:var(--primary-color,#667eea);color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:2rem;font-weight:700;display:flex}.profile-photo-btn{background:var(--primary-color,#667eea);color:#fff;cursor:pointer;border:2px solid var(--card-bg,var(--global-bg-card,white));border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;display:flex;position:absolute;bottom:0;right:0}.profile-photo-hint{color:var(--text-secondary,#9ca3af);font-size:.6875rem}.profile-info-col{flex:1;min-width:0;padding:1.5rem}.profile-name{color:var(--text-primary,#1a202c);margin:0 0 .375rem;font-size:1.25rem;font-weight:700}.profile-role-badge{background:var(--primary-light,#667eea1f);color:var(--primary-color,#667eea);border-radius:9999px;margin-bottom:1rem;padding:.15rem .625rem;font-size:.6875rem;font-weight:600;display:inline-block}.profile-section-label{color:var(--text-secondary,#9ca3af);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border-color,#f0f0f0);margin-top:.5rem;margin-bottom:.5rem;padding-bottom:.25rem;font-size:.6875rem;font-weight:700}.profile-fields{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem;display:grid}.profile-field{flex-direction:column;gap:.125rem;display:flex}.profile-field-full{grid-column:1/-1}.profile-field-label{color:var(--text-secondary,#9ca3af);font-size:.6875rem;font-weight:600}.profile-field-value{color:var(--text-primary,#1a202c);word-break:break-word;font-size:.875rem;font-weight:500}.profile-license-banner{background:#f973160f;border:1.5px solid #f97316;border-radius:8px;margin-bottom:.75rem;padding:.75rem 1rem}.profile-license-date{color:var(--text-primary,#1a202c);margin:0 0 .375rem;font-size:.8125rem}.profile-license-msg{color:var(--text-secondary,#6b7280);margin:0;font-size:.75rem;line-height:1.5}.profile-license-msg a{color:#f97316;font-weight:600;text-decoration:none}.profile-license-msg a:hover{text-decoration:underline}.profile-btn-primary{background:var(--primary-color,#667eea);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:opacity .15s;display:inline-flex}.profile-btn-primary:hover{opacity:.9}.profile-btn-outline{color:var(--text-primary,#1a202c);border:1px solid var(--border-color,#e2e8f0);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:inline-flex}.profile-btn-outline:hover{border-color:var(--primary-color,#667eea);color:var(--primary-color,#667eea)}.profile-pwd-form{flex-direction:column;gap:.5rem;display:flex}.profile-input{border:1px solid var(--border-color,#e2e8f0);background:var(--bg-main,#f9fafb);color:var(--text-primary,#1a202c);border-radius:6px;padding:.5rem .75rem;font-size:.8125rem}.profile-input:focus{border-color:var(--primary-color,#667eea);outline:none;box-shadow:0 0 0 2px #667eea1f}.profile-pwd-actions{gap:.5rem;margin-top:.25rem;display:flex}.profile-page-loading{min-height:100vh;color:var(--text-secondary,#6b7280);flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.profile-page-spinner{border:3px solid var(--border-color,#e2e8f0);border-top-color:var(--primary-color,#667eea);border-radius:50%;width:2.5rem;height:2.5rem;animation:.8s linear infinite profile-spin}@keyframes profile-spin{to{transform:rotate(360deg)}}@media (width<=560px){.profile-card-main{flex-direction:column}.profile-photo-col{border-right:none;border-bottom:1px solid var(--border-color,#e2e8f0);padding:1rem}.profile-fields{grid-template-columns:1fr}}
