:root{--primary-500:#6366F1;--primary-600:#4F46E5;--accent-500:#A855F7;--success-500:#10B981;--danger-500:#F43F5E}.text-primary-500{color:var(--primary-500)!important}.text-success-500{color:var(--success-500)!important}.text-danger-500{color:var(--danger-500)!important}.bg-primary-500\/10{background-color:rgba(99,102,241,.1)!important}.bg-emerald-500\/10{background-color:rgba(16,185,129,.1)!important}.bg-rose-500\/10{background-color:rgba(244,63,94,.1)!important}.hover\:bg-primary-500\/20:hover{background-color:rgba(99,102,241,.2)!important}.hover\:bg-emerald-500\/20:hover{background-color:rgba(16,185,129,.2)!important}.hover\:bg-rose-500\/20:hover{background-color:rgba(244,63,94,.2)!important}.katex{font-size:1.1em!important;color:inherit!important}.katex-display{margin:.5em 0!important;text-align:left!important}.math-inline{display:inline-block;vertical-align:baseline;text-align:left}.math-inline .katex{font-size:1.05em!important;padding:0 2px}.card-html .katex,.card-html .katex-display,.card-html .math-inline,.dark .katex,.dark .katex-display,.dark .math-inline{color:inherit!important}@media (max-width:768px){.katex{font-size:.95em!important}.katex-display{font-size:1.1em!important}}.card-html p:has(.katex-display),.card-html p:has(.math-inline){text-align:center!important}.card-html .katex-display,.card-html .math-inline{margin-left:auto!important;margin-right:auto!important;text-align:center!important}.card-html{padding:.5rem!important;max-width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;min-height:auto!important;max-height:400px!important;contain:layout!important;scroll-behavior:smooth!important;scrollbar-width:none!important;-ms-overflow-style:none!important}.card-html,.card-html *{text-align:center!important}.flashcard-content{padding:.25rem!important;max-width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;min-height:auto!important;max-height:350px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;contain:layout!important;scroll-behavior:smooth!important;gap:.5rem!important;scrollbar-width:none!important;-ms-overflow-style:none!important}.card-html::-webkit-scrollbar,.flashcard-content::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}.flashcard-content ul{list-style:disc!important}.flashcard-content ol,.flashcard-content ul{padding-left:1.25rem!important;text-align:left!important;margin:.5rem auto!important;width:fit-content!important;max-width:90%!important}.flashcard-content ol{counter-reset:list-counter!important;list-style:none!important}.flashcard-content ol li{counter-increment:list-counter!important;margin:.25rem 0!important;text-align:left!important;display:list-item!important;position:relative!important}.flashcard-content ol li:before{content:counter(list-counter) ". "!important;position:absolute!important;left:-1.25rem!important;font-weight:400!important}.flashcard-content ol ol{counter-reset:list-counter!important;padding-left:1.5rem!important}.flashcard-content ol ol ol{counter-reset:list-counter!important;padding-left:1.75rem!important}.flashcard-content ol ol ol ol{counter-reset:list-counter!important;padding-left:2rem!important}@media (max-width:768px){.flashcard-content ol,.flashcard-content ul{padding-left:1rem!important}}.flashcard-content img{max-width:calc(100% - 5rem)!important;width:auto!important;height:auto!important;max-height:min(35vh,250px)!important;min-height:auto!important;object-fit:contain!important;object-position:center!important;border-radius:12px!important;display:block!important;margin:2.5rem auto!important;padding:.75rem!important;box-shadow:0 2px 12px rgba(0,0,0,.1)!important;transition:all .3s ease!important;background:rgba(255,255,255,.05)!important;cursor:pointer!important;overflow:visible!important;flex-shrink:0!important;contain:layout!important;box-sizing:border-box!important}@media (max-width:480px){.flashcard-content img{max-width:calc(100% - 3rem)!important;max-height:min(30vh,180px)!important;border-radius:8px!important;margin:1.5rem auto!important;padding:.5rem!important}}@media (min-width:481px) and (max-width:768px){.flashcard-content img{max-width:calc(100% - 3.5rem)!important;max-height:min(32vh,200px)!important;border-radius:10px!important;margin:1.75rem auto!important;padding:.625rem!important}}@media (min-width:769px) and (max-width:1023px){.flashcard-content img{max-width:calc(100% - 4rem)!important;max-height:min(35vh,250px)!important;border-radius:12px!important;margin:2rem auto!important;padding:.75rem!important}}@media (min-width:1024px){.flashcard-content img{max-width:calc(100% - 5rem)!important;max-height:min(38vh,280px)!important;border-radius:12px!important;margin:2.5rem auto!important;padding:1rem!important}}@media (min-width:1440px){.flashcard-content img{max-height:min(40vh,320px)!important;max-width:calc(100% - 6rem)!important;padding:1.25rem!important;margin:3rem auto!important}}@media (orientation:portrait) and (max-height:700px){.flashcard-content img{max-height:min(25vh,150px)!important}.flashcard-content{max-height:250px!important}.card-html{max-height:280px!important}}@media (orientation:portrait) and (max-height:900px){.flashcard-content img{max-height:min(28vh,180px)!important}.flashcard-content{max-height:300px!important}.card-html{max-height:330px!important}}@media (orientation:landscape) and (max-height:600px){.flashcard-content img{max-height:min(45vh,220px)!important}.flashcard-content{max-height:200px!important}.card-html{max-height:230px!important}}@media (max-width:768px){.card-html::-webkit-scrollbar,.flashcard-content::-webkit-scrollbar{display:none!important;width:0!important}.flashcard-content{max-height:280px!important}.card-html{max-height:320px!important}}@media (min-width:769px) and (max-width:1023px){.flashcard-content{max-height:320px!important}.card-html{max-height:360px!important}}.flashcard-content img:hover{transform:scale(1.02)!important;box-shadow:0 4px 16px rgba(0,0,0,.15)!important}.dark .flashcard-content img{box-shadow:0 2px 8px rgba(0,0,0,.3)!important;background:rgba(0,0,0,.1)!important}.dark .flashcard-content img:hover{box-shadow:0 4px 16px rgba(0,0,0,.4)!important;background:rgba(0,0,0,.15)!important}.flashcard-content img[src=""]{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%)!important;background-size:200% 100%!important;animation:loading 1.5s infinite!important}.dark .flashcard-content img[src=""]{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a 50%,#2a2a2a 75%)!important;background-size:200% 100%!important}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.flashcard-content img[alt*=error],.flashcard-content img[src*=error]{background:#f8f9fa!important;border:2px dashed #dee2e6!important;padding:1rem!important;text-align:center!important;color:#6c757d!important;font-size:.875rem!important}.dark .flashcard-content img[alt*=error],.dark .flashcard-content img[src*=error]{background:#2d3748!important;border-color:#4a5568!important;color:#a0aec0!important}.flashcard-content .image-container{display:flex!important;justify-content:center!important;align-items:center!important;margin:.5rem 0!important;width:100%!important}.flashcard-content p:has(img){text-align:center!important;margin:1rem 0!important}.flashcard-content p:has(img) img{margin:.25rem auto!important}.flashcard-content img+img{margin-top:.75rem!important}.flashcard-content img+em,.flashcard-content img+small{display:block!important;text-align:center!important;font-size:.75rem!important;color:#6b7280!important;margin-top:.25rem!important;font-style:italic!important}.dark .flashcard-content img+em,.dark .flashcard-content img+small{color:#9ca3af!important}.flashcard-content .math-inline{padding:0 .15rem!important;border-radius:.375rem!important}.flashcard-content .katex-display{margin:8px 0!important}.flashcard-content .fc-divider{border:0!important;border-top:1px solid rgba(0,0,0,.08)!important;margin:6px 0!important}.dark .flashcard-content .fc-divider{border-top:1px solid rgba(255,255,255,.1)!important}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}@keyframes graph-skeleton-dash{to{stroke-dashoffset:-12}}@keyframes graph-skeleton-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.graph-skeleton-shimmer{animation:graph-skeleton-shimmer 2s infinite;transform:translateX(-100%)}.graph-skeleton-path{animation:graph-skeleton-dash 2s linear infinite}.image-error{display:flex!important;align-items:center!important;justify-content:center!important;min-height:120px!important;background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;border:2px dashed #dee2e6!important;border-radius:12px!important;color:#6c757d!important;font-size:.875rem!important;text-align:center!important;padding:1.5rem!important;margin:.5rem auto!important;max-width:calc(100% - 1rem)!important}.dark .image-error{background:linear-gradient(135deg,#2d3748,#4a5568)!important;border-color:#4a5568!important;color:#a0aec0!important}.flashcard-content img{image-rendering:-webkit-optimize-contrast!important;image-rendering:crisp-edges!important;image-rendering:auto!important;backface-visibility:hidden!important;will-change:transform!important;color-space:srgb!important}@media (-webkit-min-device-pixel-ratio:1.5),(min-resolution:144dpi){.flashcard-content img{image-rendering:-webkit-optimize-contrast!important;image-rendering:high-quality!important}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.flashcard-content img{image-rendering:-webkit-optimize-contrast!important;image-rendering:high-quality!important;filter:none!important}}@media (-webkit-min-device-pixel-ratio:3),(min-resolution:288dpi){.flashcard-content img{image-rendering:-webkit-optimize-contrast!important;image-rendering:high-quality!important;image-rendering:pixelated!important}}.flashcard-content img[src$=".png"]{image-rendering:crisp-edges!important}.flashcard-content img[src$=".jpeg"],.flashcard-content img[src$=".jpg"]{image-rendering:-webkit-optimize-contrast!important}.flashcard-content img[src$=".webp"]{image-rendering:auto!important}.flashcard-content img[src$=".svg"]{image-rendering:geometricPrecision!important}