@import url(https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/static/pretendard.css);.hero-section{align-items:center;background:linear-gradient(180deg,#5933ab,#462e79);display:flex;justify-content:center;left:50%;margin-left:-50vw;margin-right:-50vw;margin-top:-16px;min-height:100vh;overflow:hidden;position:relative;right:50%;width:100vw}.hero-start-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;border-radius:12px;box-shadow:0 6px 20px #ff6b6b66;color:#fff;font-weight:600;padding:.875rem 2.125rem;transition:all .3s ease}.hero-start-btn:hover{background:linear-gradient(135deg,#ff5252,#e53e3e);box-shadow:0 8px 25px #ff6b6b80;transform:translateY(-2px)}.hero-form-card{background:#fffffff2;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);margin-left:auto;margin-right:auto;margin-top:1.5rem;max-width:400px;padding:1.5rem}.hero-form-card .card-title{color:#333;font-size:1.25rem;font-weight:500;margin-bottom:1rem}.hero-form-card .form-group{margin-bottom:1rem}.hero-form-card .form-label{color:#666;display:block;margin-bottom:.5rem}.hero-form-card .form-buttons{grid-gap:.5rem;display:grid;gap:.5rem;margin-top:1rem}@keyframes float1{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(5deg)}}@keyframes float2{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-25px) rotate(-2deg)}}@keyframes float3{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(1deg)}}.hero-icon-1{animation:float1 6s ease-in-out infinite;opacity:.9;right:-8%;top:-5%;width:clamp(200px,40vw,600px)}.hero-icon-1,.hero-icon-2{height:auto;position:absolute;z-index:1}.hero-icon-2{animation:float2 4s ease-in-out .5s infinite;opacity:.8;right:31%;top:-50%;width:clamp(100px,18vw,300px)}.hero-icon-3{animation:float3 5s ease-in-out 1s infinite;height:auto;left:29%;opacity:.6;position:absolute;top:73%;width:clamp(60px,12vw,200px);z-index:1}.videoSection{background:linear-gradient(180deg,#462e79,#5933ab);left:50%;margin:0 -50vw;min-height:400vh;overflow:hidden;padding:0;position:relative;right:50%;width:100vw}.video-section-header{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;margin:0;min-height:160vh;padding:0;position:relative;text-align:center;width:100%;z-index:3}.video-section-title{font-size:3rem;font-weight:500;letter-spacing:-.04em}.video-section-subtitle{font-size:5rem;font-weight:400;letter-spacing:-.04em;margin-bottom:3.125rem}.video-blocks-container{margin:0;padding:0;position:relative;width:100%;z-index:3}.video-block{min-height:160vh;z-index:4}.video-block,.video-card{align-items:center;display:flex;justify-content:center;position:relative}.video-card{flex-direction:column}.video-element{background:#000;border-radius:20px;display:block;height:700px;margin-bottom:2rem;object-fit:cover;overflow:hidden;width:1520px}.video-description{color:#fff;font-size:2rem;font-weight:300;letter-spacing:-.04em;margin-top:20px;text-align:center}.video-category{font-size:1.8rem;font-weight:500}.video-highlight{font-weight:600}.feature-section{color:#333;left:50%;margin-left:-50vw;margin-right:-50vw;padding:clamp(4rem,8vw,8rem) clamp(2rem,10vw,10rem);position:relative;right:50%;width:100vw}.feature-section-purple{background:#e6daf5}.feature-section-blue{background:#f0f7ff}.feature-section-white{background:#fff}.feature-row{align-items:center;display:flex;justify-content:center;margin-bottom:0;max-width:100%;min-height:400px;width:100%}.feature-image-col{flex:1 1 auto;min-width:clamp(15rem,30vw,35rem);position:relative}.feature-content-col,.feature-image-col{align-items:flex-start;display:flex;justify-content:center}.feature-content-col{flex:1 1 auto;flex-direction:column;margin:0 auto;max-width:clamp(30rem,50vw,55rem);min-width:clamp(20rem,35vw,40rem);padding:2rem;text-align:left}.feature-image{border-radius:20px;height:25rem;object-fit:cover;width:clamp(20rem,40vw,43.75rem)}.feature-content{align-items:flex-start;display:flex;margin-bottom:1.5rem}.feature-subtitle{color:#000;font-size:clamp(1.5rem,4vw,2rem);font-weight:400;margin-bottom:1rem}.feature-subtitle,.feature-title{letter-spacing:-.04em;text-align:left}.feature-title{align-items:flex-start;display:flex;flex-direction:column;font-size:clamp(2rem,2.5vw,3.125rem);margin:0 0 1rem;max-width:100%;overflow-wrap:break-word;word-break:keep-all}.feature-list{margin-top:1.8125rem}.feature-item{display:flex;font-weight:500;letter-spacing:-.04em;margin-bottom:.3rem}.feature-text{color:#3b3b3b;font-size:clamp(1rem,1.3vw,1.25rem)}.final-section{background:#fff;left:50%;margin-left:-50vw;margin-right:-50vw;min-height:80vh;padding:0;position:relative;right:50%;width:100vw}.final-content{align-items:center;display:flex;flex-direction:column;padding-bottom:6.875rem;padding-top:6.875rem;text-align:center}.final-video-container{display:flex;justify-content:center;margin-top:3.75rem;width:100%}.final-video{aspect-ratio:1420/600;border-radius:20px;height:auto;max-width:1420px;width:clamp(300px,90vw,1420px)}.home-footer{align-items:center;background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;height:100px;justify-content:space-between;padding-left:6.25rem;padding-right:6.25rem;width:100%}.footer-logo-section{align-items:center;display:flex;height:100%}.footer-logo{height:auto;max-height:60px}.footer-links{align-items:center;color:#6c757d;display:flex;font-size:.9rem;height:100%}.footer-link{cursor:pointer;transition:color .2s ease}.footer-link:hover{color:var(--primary-color)}.footer-separator{margin:0 .5rem}@media (max-width:767px){.hero-section{margin-top:-80px!important;padding-top:80px!important}.hero-icon-1{right:-30%!important;width:70vw!important}.video-section-title{font-size:2rem}.video-section-subtitle{font-size:3rem}.video-element{height:auto;max-height:400px;width:90vw}.video-description{font-size:1.5rem}.video-category{font-size:1.3rem}.feature-section{padding:2rem 1rem}.feature-content-col{padding:1rem}.feature-image{height:auto;max-height:300px;width:100%}.home-footer{flex-direction:column;gap:1rem;height:auto;padding:1rem}}@media (max-width:576px){.video-section-title{font-size:1.5rem}.video-section-subtitle{font-size:2rem}.video-description{font-size:1.2rem}.feature-section{padding:1.5rem .5rem}.row{flex-direction:column}.feature-content-col,.feature-image-col{order:0}}.main-navigation-bar{background-color:#fff;border-bottom:1px solid var(--border-color);flex-shrink:0;height:60px;justify-content:space-between;padding:0;position:relative;width:100%;z-index:10}.main-navigation-bar,.nav-left{align-items:center;display:flex}.nav-left{height:100%}.nav-hamburger{align-items:center;background-color:var(--primary-color);cursor:pointer;display:flex;height:60px;justify-content:center;transition:background-color .2s ease;width:60px}.nav-hamburger:hover{background-color:var(--primary-dark)}.hamburger-icon{color:#fff;font-size:18px}.nav-title-section{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;padding-left:1rem}.nav-title{color:var(--text-color);font-size:1.1rem;font-weight:700}.nav-subtitle{color:var(--text-muted);font-size:.9rem;font-weight:500}.nav-right{padding-right:1rem}.nav-exit-btn{align-items:center;background:#0000;border:none;border-radius:var(--border-radius);color:var(--text-color);cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem .75rem;transition:var(--transition)}.nav-exit-btn:hover{background-color:var(--light-color);color:var(--primary-color)}.exit-icon{height:16px;width:16px}@media (max-width:768px){.nav-title-section{padding-left:.75rem}.nav-title{font-size:1rem}.nav-exit-btn,.nav-subtitle{font-size:.8rem}.nav-exit-btn{padding:.4rem .6rem}}@media (max-width:576px){.nav-title-section{align-items:flex-start;flex-direction:column;gap:.2rem}.nav-subtitle{font-size:.75rem}.nav-exit-btn span{display:none}}.learning-bottom-bar{background-color:var(--light-color);border-top:1px solid var(--border-color);flex-shrink:0;width:100%;z-index:999}.bottom-bar-section,.learning-bottom-bar{align-items:center;display:flex;height:60px;justify-content:center;position:relative}.bottom-bar-section{cursor:pointer;min-width:200px;transition:var(--transition)}.bottom-bar-section.disabled{cursor:not-allowed;opacity:.5}.bottom-bar-section.disabled:hover{background-color:initial}.previous-section{left:calc(50% - 300px);position:absolute;width:300px}.previous-section:not(.disabled):hover{background-color:#007bff1a}.next-section{border-left:1px solid var(--border-color);position:absolute;right:calc(50% - 300px);width:300px}.next-section:not(.disabled):hover{background-color:#007bff1a}.next-section.highlighted{background-color:#fff8e1;border-color:#ffc107;box-shadow:0 0 15px #ffc10766;color:#f57f17;font-weight:700}.complete-section{background-color:#ddd;color:#999;height:60px;position:absolute;right:0;top:0;width:200px}.complete-section.ready{background-color:var(--primary-color);color:#fff;cursor:pointer}.complete-section.ready:hover{background-color:var(--primary-dark)}.complete-section.completed{background-color:var(--success-color);box-shadow:0 2px 8px #28a7454d;color:#fff}.complete-section.completed:hover{background-color:#218838}.bottom-bar-content{align-items:center;display:flex;gap:.5rem}.bottom-bar-text{font-size:1rem;font-weight:600}.bottom-bar-icon{height:24px;width:24px}.spinner-border{border:.2em solid;border-right:.2em solid #0000;height:1.5rem;width:1.5rem}.spinner-sm{border-width:.125em;height:1rem;width:1rem}@media (max-width:768px){.bottom-bar-section{min-width:150px}.previous-section{left:calc(50% - 200px);width:200px}.next-section{right:calc(50% - 200px);width:200px}.complete-section{width:150px}.bottom-bar-text{font-size:.9rem}.bottom-bar-icon{height:20px;width:20px}}@media (max-width:576px){.learning-bottom-bar{flex-direction:row;justify-content:space-between;padding:0 1rem}.bottom-bar-section{flex:1 1;margin:0 .25rem;min-width:auto;position:static}.next-section,.previous-section{max-width:100px}.complete-section{max-width:120px}.next-section{border-left:none}.bottom-bar-text{font-size:.8rem}.bottom-bar-icon{height:18px;width:18px}.bottom-bar-text{display:none}}.immersive-learning-container{background-color:#fff;display:flex;flex-direction:column;height:100%;overflow:hidden;width:100%}.main-content-area{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;position:relative}.video-learning-content{align-items:center;display:flex;justify-content:center}.video-learning-content,.video-player-container{background-color:#000;height:100%;position:relative;width:100%}.video-player-container{border-radius:20px;margin:2rem;max-height:700px;max-width:1520px;overflow:hidden}.video-player{height:100%;object-fit:cover;width:100%}.video-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center;width:100%}.video-placeholder h2{font-size:3rem;margin-bottom:1rem}.video-placeholder p{font-size:1.2rem;line-height:1.6;margin-bottom:2rem;max-width:600px}.split-layout{width:100%}.split-left,.split-right{flex:1 1;min-width:0;overflow:auto}.split-left{border-right:1px solid var(--border-color)}.resize-handle{background-color:var(--border-color);cursor:col-resize;flex-shrink:0;position:relative;transition:background-color .2s ease;width:4px}.resize-handle:hover{background-color:var(--primary-color)}.resize-handle:after{background-color:var(--muted-color);border-radius:2px;content:"";height:40px;left:50%;opacity:.3;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .2s ease;width:8px}.resize-handle:hover:after{opacity:1}@media (max-width:992px){.split-layout{flex-direction:column}.split-left{border-bottom:1px solid var(--border-color);border-right:none}.resize-handle{display:none}.video-player-container{margin:1rem;max-height:400px}}@media (max-width:768px){.video-placeholder h2{font-size:2rem}.video-placeholder p{font-size:1rem}.video-player-container{border-radius:12px;margin:.5rem}}@media (max-width:576px){.video-placeholder{padding:1rem}.video-placeholder h2{font-size:1.5rem}.video-placeholder p{font-size:.9rem}}.ct-intro-video-container{background:linear-gradient(135deg,#5933ab,#462e79);height:100%;overflow:hidden;position:relative;width:100%}.ct-intro-video-container,.video-loading-overlay{align-items:center;display:flex;justify-content:center}.video-loading-overlay{background:#000c;bottom:0;color:#fff;flex-direction:column;left:0;position:absolute;right:0;top:0;z-index:10}.loading-spinner{border:4px solid #ffffff4d;border-top-color:#fff;margin-bottom:1rem}.video-loading-overlay p{font-size:1.1rem;margin:0}.ct-video-player{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;box-shadow:0 20px 60px #0006;overflow:hidden}.ct-video-player video{height:100%!important;object-fit:contain;width:100%!important}.video-status-overlay{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:5}.video-welcome-message{color:#fff;left:2rem;pointer-events:auto;position:absolute;text-shadow:0 2px 4px #000c;top:2rem}.video-welcome-message h1{font-size:2rem;font-weight:600;letter-spacing:-.02em;margin:0 0 .5rem}.video-welcome-message p{font-size:1.1rem;margin:0;opacity:.9}.completion-overlay{align-items:center;animation:slideIn .5s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;pointer-events:auto;position:absolute;right:0;top:0}.completion-message{background:linear-gradient(135deg,#28a745,#20c997);border-radius:16px;box-shadow:0 20px 60px #0000004d;color:#fff;margin:0 2rem;max-width:500px;padding:3rem;text-align:center}.completion-message h2{font-size:2rem;font-weight:600;margin:0 0 1rem}.completion-message p{font-size:1.1rem;line-height:1.6;margin:0;opacity:.95}@media (max-width:768px){.ct-intro-video-container{padding:1rem}.ct-video-player{min-height:300px}.video-welcome-message{left:1rem;right:1rem;top:1rem}.video-welcome-message h1{font-size:1.5rem}.video-welcome-message p{font-size:1rem}.completion-message{margin:0 1rem;padding:2rem}.completion-message h2{font-size:1.5rem}.completion-message p{font-size:1rem}}@media (max-width:576px){.ct-video-player{min-height:250px}.video-welcome-message{left:.5rem;right:.5rem;top:.5rem}.video-welcome-message h1{font-size:1.3rem}.video-welcome-message p{font-size:.9rem}.completion-message{padding:1.5rem}.completion-message h2{font-size:1.3rem}.loading-spinner{height:36px;width:36px}.video-loading-overlay p{font-size:1rem}.ct-video-player [data-testid=react-player]{min-height:40px}}.ct-intro-video-container:before{background:linear-gradient(45deg,#5933ab1a,#462e791a);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.ct-video-player:hover{box-shadow:0 25px 80px #00000080;transform:translateY(-2px);transition:all .3s ease}.video-loading-overlay{animation:pulse 2s ease-in-out infinite alternate}.ai-tutoring-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;overflow:hidden}.tutoring-chat-messages{background:linear-gradient(180deg,#fafafa 0,#f5f7fa);flex:1 1;min-height:0;overflow-y:auto;padding:24px}.tutoring-chat-message{animation:messageSlideIn .3s ease-out;display:flex;flex-direction:column;margin-bottom:20px}.tutoring-chat-message.user{align-items:flex-end}.tutoring-chat-message.bot{align-items:flex-start}.tutoring-chat-bubble{border-radius:20px;box-shadow:0 2px 8px #0000001a;font-size:1rem;letter-spacing:-.02em;line-height:1.6;max-width:85%;padding:18px 22px;position:relative;white-space:pre-wrap;word-break:break-word}.tutoring-chat-bubble.user{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom-right-radius:8px;box-shadow:0 4px 16px #6366f14d;color:#fff}.tutoring-chat-bubble.bot{background:#fff;border:1px solid #e5e7eb;border-bottom-left-radius:8px;box-shadow:0 2px 8px #00000014;color:#1f2937}.tutoring-chat-bubble.welcome-message{background:linear-gradient(135deg,#ddd6fe,#e0e7ff);border:2px solid #6366f1;color:#1e1b4b;font-weight:500}.tutoring-message-timestamp{color:#6b7280;font-size:.75rem;font-weight:400;margin-left:12px;margin-right:12px;margin-top:6px}.tutoring-typing-container{align-items:flex-start;display:flex;margin-bottom:20px}.tutoring-typing-bubble{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:20px;border-bottom-left-radius:8px;box-shadow:0 2px 8px #00000014;display:flex;gap:12px;padding:18px 22px}.tutoring-typing-text{color:#6b7280;font-size:.95rem;font-weight:500}.tutoring-typing-dots{display:flex;gap:4px}.tutoring-typing-dot{animation:tutorialTypingBounce 1.4s ease-in-out infinite;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;height:8px;width:8px}.tutoring-typing-dot:first-child{animation-delay:-.32s}.tutoring-typing-dot:nth-child(2){animation-delay:-.16s}.tutoring-typing-dot:nth-child(3){animation-delay:0s}.tutoring-session-controls{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;padding:24px}.session-controls-grid{display:flex;flex-wrap:wrap;gap:12px}.tutoring-quick-questions{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;border-top:1px solid #e2e8f0;padding:24px}.tutoring-quick-questions-label{color:#475569;display:block;font-size:.9rem;font-weight:600;letter-spacing:-.02em;margin-bottom:16px}.tutoring-quick-questions-grid{display:flex;flex-wrap:wrap;gap:12px}.tutoring-quick-question-btn{background:#fff;border:2px solid #6366f1;border-radius:24px;box-shadow:0 2px 4px #0000000d;color:#6366f1;cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:-.02em;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease}.tutoring-quick-question-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.tutoring-quick-question-btn:hover{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 8px 20px #6366f166;color:#fff;transform:translateY(-2px)}.tutoring-quick-question-btn:hover:before{left:100%}.tutoring-quick-question-btn:active{transform:translateY(-1px)}.tutoring-new-session-btn{background:#fff;border:2px solid #ef4444;border-radius:24px;box-shadow:0 2px 4px #0000000d;color:#ef4444;cursor:pointer;font-size:.9rem;font-weight:600;letter-spacing:-.02em;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease}.tutoring-new-session-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.tutoring-new-session-btn:hover{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#dc2626;box-shadow:0 8px 20px #ef444466;color:#fff;transform:translateY(-2px)}.tutoring-new-session-btn:hover:before{left:100%}.tutoring-new-session-btn:active{transform:translateY(-1px)}.tutoring-chat-input-container{background:#fff;border-top:1px solid #e2e8f0;padding:24px}.tutoring-chat-input-form{align-items:flex-end;display:flex;gap:16px}.tutoring-chat-input-field{background:#f8fafc;border:2px solid #e2e8f0;border-radius:28px;flex:1 1;font-family:inherit;font-size:1rem;letter-spacing:-.02em;line-height:1.5;max-height:120px;min-height:56px;padding:16px 20px;resize:none;transition:all .3s ease}.tutoring-chat-input-field:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a;outline:none}.tutoring-chat-input-field::placeholder{color:#9ca3af;font-weight:400}.tutoring-chat-input-field:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.tutoring-chat-send-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:50%;box-shadow:0 4px 12px #6366f14d;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:56px;justify-content:center;transition:all .3s ease;width:56px}.tutoring-chat-send-btn:hover:not(:disabled){box-shadow:0 8px 20px #6366f166;transform:translateY(-2px) scale(1.05)}.tutoring-chat-send-btn:active{transform:translateY(-1px) scale(1.02)}.tutoring-chat-send-btn:disabled{background:#e5e7eb;box-shadow:0 2px 4px #0000001a;color:#9ca3af;cursor:not-allowed;transform:none}.tutoring-chat-messages::-webkit-scrollbar{width:8px}.tutoring-chat-messages::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.tutoring-chat-messages::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:4px}.tutoring-chat-messages::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#94a3b8,#64748b)}@keyframes tutorialTypingBounce{0%,80%,to{opacity:.4;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}@media (max-width:768px){.tutoring-chat-messages{min-height:0;padding:20px}.tutoring-chat-bubble{font-size:.95rem;max-width:90%;padding:16px 18px}.tutoring-quick-questions,.tutoring-session-controls{padding:20px}.tutoring-new-session-btn,.tutoring-quick-question-btn{font-size:.85rem;padding:10px 16px}.tutoring-chat-input-container{padding:20px}.tutoring-chat-input-field{font-size:.95rem;min-height:50px;padding:14px 18px}.tutoring-chat-send-btn{font-size:1.1rem;height:50px;width:50px}}@media (max-width:576px){.tutoring-chat-messages{min-height:0;padding:16px}.tutoring-chat-bubble{font-size:.9rem;max-width:95%;padding:14px 16px}.tutoring-quick-questions,.tutoring-session-controls{padding:16px}.session-controls-grid,.tutoring-quick-questions-grid{gap:8px}.tutoring-new-session-btn,.tutoring-quick-question-btn{font-size:.8rem;padding:8px 14px}.tutoring-chat-input-container{padding:16px}.tutoring-chat-input-form{gap:12px}.tutoring-chat-input-field{font-size:.9rem;min-height:46px;padding:12px 16px}.tutoring-chat-send-btn{font-size:1rem;height:46px;width:46px}}.tutoring-chat-send-btn:focus,.tutoring-quick-question-btn:focus{outline:3px solid #6366f1;outline-offset:2px}.multiple-choice-container{animation:mcFadeIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:1320px;overflow:hidden;width:100%}.mc-submitted-section{align-items:center;display:flex;flex-direction:column;gap:8px}.mc-submit-button.submitted{background:#10b981;border-color:#10b981;color:#fff}.mc-submit-button.submitted:hover{background:#059669;border-color:#059669}.mc-resubmit-hint{color:#6b7280;font-size:.75rem;margin:0;text-align:center}@keyframes mcFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mc-card-header{background:linear-gradient(135deg,#8363c8,#7b5bc0);color:#fff;padding:24px;position:relative}.mc-header-content{align-items:center;display:flex;justify-content:space-between}.mc-header-left{text-align:left}.mc-header-left h3{font-size:1.5rem;font-weight:700;letter-spacing:-.04em;margin:0}.mc-progress{font-size:.9rem;margin-top:8px;opacity:.9}.mc-header-right{display:flex;gap:8px}.mc-nav-btn{align-items:center;background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:40px;justify-content:center;transition:all .2s ease;width:40px}.mc-nav-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}.mc-nav-btn:disabled{cursor:not-allowed;opacity:.3;transform:none}.mc-card-body{background:#fff;padding:32px}.mc-question-section{margin-bottom:32px}.mc-question-label{color:#8363c8;display:block;font-size:1rem;font-weight:600;margin-bottom:16px}.mc-question-text{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;font-size:1.1rem;letter-spacing:-.02em;line-height:1.6;padding:24px}.mc-meta-info{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.mc-difficulty-badge{border-radius:16px;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.mc-difficulty-easy{background:#d4edda;color:#155724}.mc-difficulty-medium{background:#fff3cd;color:#856404}.mc-difficulty-hard{background:#f8d7da;color:#721c24}.mc-label-badge{background:#e9ecef;border-radius:12px;color:#495057;font-size:.75rem;font-weight:500;padding:4px 10px}.mc-type-badge{background:#6f42c1;border-radius:16px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.mc-input-section,.mc-options-section{margin-bottom:32px}.mc-input-label{color:#8363c8;display:block;font-size:1rem;font-weight:600;margin-bottom:16px}.mc-input-container{position:relative}.mc-answer-input{background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#2c3e50;font-family:inherit;font-size:1rem;letter-spacing:-.02em;line-height:1.5;min-height:80px;padding:16px;resize:vertical;transition:all .2s ease;width:100%}.mc-answer-input:focus{border-color:#8363c8;box-shadow:0 0 0 3px #8363c81a;outline:none}.mc-answer-input::placeholder{color:#6c757d;opacity:.8}.mc-answer-input:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.mc-options-label{color:#8363c8;display:block;font-size:1rem;font-weight:600;margin-bottom:16px}.mc-options-grid{display:flex;flex-direction:column;gap:12px}.mc-option-button{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:8px;color:#2c3e50;cursor:pointer;display:flex;font-size:1rem;font-weight:500;height:70px;letter-spacing:-.02em;padding:0 24px;text-align:left;transition:all .2s ease;width:100%}.mc-option-button.selected{background:#8363c8;border-color:#8363c8;color:#fff}.mc-option-button.correct{background:#2cad3d;border-color:#2cad3d;color:#fff}.mc-option-button.incorrect{background:#dc3545;border-color:#dc3545;color:#fff}.mc-option-button:disabled{cursor:not-allowed;opacity:.7}.mc-option-content{align-items:center;display:flex;width:100%}.mc-option-letter{font-size:1.1rem;font-weight:700;margin-right:16px;min-width:24px}.mc-option-text{flex:1 1;white-space:pre-wrap;word-break:break-word}.mc-option-icon{font-size:1.2rem;margin-left:auto}.mc-submit-section{margin-bottom:24px}.mc-submit-button{background:linear-gradient(135deg,#8363c8,#7b5bc0);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;height:56px;letter-spacing:-.02em;transition:all .2s ease;width:100%}.mc-submit-button:hover:not(:disabled){box-shadow:0 4px 12px #8363c84d;transform:translateY(-1px)}.mc-submit-button:disabled{background:#e9ecef;box-shadow:none;color:#6c757d;cursor:not-allowed;transform:none}.mc-result-section{margin-bottom:24px}.mc-result-alert{border-radius:8px;margin-bottom:16px;padding:20px}.mc-result-correct{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.mc-result-incorrect{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.mc-result-title{align-items:center;display:flex;font-size:1.2rem;font-weight:700;gap:8px;margin:0 0 8px}.mc-result-answer{font-weight:600;margin:0}.mc-explanation{background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;color:#004085;padding:20px}.mc-explanation-title{align-items:center;display:flex;font-size:1.1rem;font-weight:700;gap:8px;margin:0 0 12px}.mc-explanation-steps{margin:0;padding-left:20px}.mc-explanation-step{line-height:1.5;margin-bottom:8px}.mc-progress-info{background:#f8f9fa;border-radius:8px;color:#6c757d;font-size:.9rem;line-height:1.4;padding:16px;text-align:center}.mc-loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.mc-loading-spinner{animation:mcSpin 1s linear infinite;border:3px solid #e9ecef;border-radius:50%;border-top-color:#8363c8;height:40px;margin-bottom:16px;width:40px}.mc-loading-text{color:#6c757d;font-size:1rem;font-weight:500;margin:0}@keyframes mcSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.mc-card-header{padding:20px}.mc-header-left h3{font-size:1.3rem}.mc-nav-btn{font-size:.9rem;height:36px;width:36px}.mc-card-body{padding:24px}.mc-question-text{font-size:1rem;padding:20px}.mc-option-button{font-size:.95rem;height:60px;padding:0 20px}.mc-option-letter{font-size:1rem;margin-right:12px}.mc-submit-button{font-size:1rem;height:52px}}@media (max-width:576px){.mc-card-body{padding:20px}.mc-question-text{font-size:.95rem;padding:16px}.mc-option-button{font-size:.9rem;height:56px;padding:0 16px}.mc-meta-info{gap:6px}.mc-difficulty-badge,.mc-label-badge{font-size:.7rem;padding:3px 8px}}.chatbot-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;overflow:hidden}.chat-header{background:linear-gradient(135deg,#5933ab,#8363c8);color:#fff;padding:24px;position:relative;text-align:center}.chat-header h3{font-size:1.3rem;font-weight:700;letter-spacing:-.04em;margin:0}.chat-header .subtitle{font-size:.9rem;font-weight:400;margin-top:6px;opacity:.9}.chat-messages{background:#fafafa;flex:1 1;max-height:60vh;min-height:300px;overflow-y:auto;padding:20px}.chat-message{animation:messageSlideIn .3s ease-out;display:flex;flex-direction:column;margin-bottom:16px}.chat-message.user{align-items:flex-end}.chat-message.bot{align-items:flex-start}.chat-bubble{border-radius:18px;font-size:.95rem;letter-spacing:-.02em;line-height:1.5;max-width:85%;padding:16px 20px;position:relative;white-space:pre-wrap;word-break:break-word}.chat-bubble.user{background:linear-gradient(135deg,#8363c8,#7b5bc0);border-bottom-right-radius:6px;box-shadow:0 2px 12px #8363c84d}.chat-bubble.bot{background:#fff;border:1px solid #e9ecef;border-bottom-left-radius:6px;box-shadow:0 1px 4px #0000000d;color:#2c3e50}.message-timestamp{color:#6c757d;font-size:.75rem;margin-left:8px;margin-right:8px;margin-top:4px}.typing-container{align-items:flex-start;display:flex;margin-bottom:16px}.typing-bubble{align-items:center;background:#fff;border:1px solid #e9ecef;border-radius:18px;border-bottom-left-radius:6px;box-shadow:0 1px 4px #0000000d;display:flex;gap:8px;padding:16px 20px}.typing-text{color:#6c757d;font-size:.9rem}.typing-dots{display:flex;gap:3px}.typing-dot{animation:typingBounce 1.4s ease-in-out infinite;background:#8363c8;border-radius:50%;height:6px;width:6px}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0s}.quick-questions{background:#f8f9fa;border-top:1px solid #e9ecef;padding:20px}.quick-questions-label{color:#6c757d;display:block;font-size:.85rem;font-weight:600;margin-bottom:12px}.quick-questions-grid{display:flex;flex-wrap:wrap;gap:8px}.quick-question-btn{background:#fff;border:1px solid #8363c8;border-radius:20px;color:#8363c8;cursor:pointer;font-size:.85rem;font-weight:500;letter-spacing:-.02em;padding:8px 16px;transition:all .2s ease}.quick-question-btn:hover{background:#8363c8;box-shadow:0 2px 8px #8363c84d;color:#fff;transform:translateY(-1px)}.quick-question-btn:active{transform:translateY(0)}.chat-input-container{background:#fff;border-top:1px solid #e9ecef;padding:20px}.chat-input-form{align-items:flex-end;display:flex;gap:12px}.chat-input-field{background:#f8f9fa;border:1px solid #e9ecef;border-radius:24px;flex:1 1;font-family:inherit;font-size:.95rem;line-height:1.4;max-height:120px;min-height:48px;padding:12px 16px;resize:none;transition:all .2s ease}.chat-input-field:focus{background:#fff;border-color:#8363c8;box-shadow:0 0 0 3px #8363c81a;outline:none}.chat-input-field::placeholder{color:#6c757d}.chat-input-field:disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed}.chat-send-btn{align-items:center;background:linear-gradient(135deg,#8363c8,#7b5bc0);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:48px;justify-content:center;transition:all .2s ease;width:48px}.chat-send-btn:hover:not(:disabled){box-shadow:0 4px 12px #8363c866;transform:translateY(-1px)}.chat-send-btn:active{transform:translateY(0)}.chat-send-btn:disabled{background:#e9ecef;box-shadow:none;color:#6c757d;cursor:not-allowed;transform:none}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes typingBounce{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media (max-width:768px){.chat-header{padding:20px}.chat-header h3{font-size:1.2rem}.chat-messages{max-height:50vh;padding:16px}.chat-bubble{font-size:.9rem;max-width:90%;padding:14px 16px}.quick-questions{padding:16px}.quick-question-btn{font-size:.8rem;padding:6px 12px}.chat-input-container{padding:16px}.chat-input-field{font-size:.9rem}}@media (max-width:576px){.chat-header{padding:16px}.chat-header h3{font-size:1.1rem}.chat-messages{max-height:45vh;padding:12px}.chat-bubble{max-width:95%;padding:12px 14px}.quick-questions-grid{gap:6px}.quick-question-btn{font-size:.75rem;padding:5px 10px}.chat-input-container{padding:12px}.chat-input-form{gap:8px}.chat-send-btn{font-size:1rem;height:44px;width:44px}}.chat-send-btn:focus,.quick-question-btn:focus{outline:2px solid #8363c8;outline-offset:2px}.welcome-message{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:1px solid #8363c8;color:#2c3e50}.context-message{background:#fff3e0;border:1px solid #ff9800;color:#e65100}.quiz-result-overlay{align-items:center;animation:quizFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes quizFadeIn{0%{opacity:0}to{opacity:1}}.quiz-result-modal{animation:quizSlideIn .4s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0006;display:flex;flex-direction:column;max-height:90vh;max-width:1000px;position:relative;width:90%}@keyframes quizSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.quiz-result-header{background:linear-gradient(135deg,#8363c8,#7b5bc0);border-radius:20px 20px 0 0;color:#fff;padding:2rem 2.5rem 1.5rem;position:relative;text-align:center}.quiz-result-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:40px}.quiz-result-close:hover{background:#ffffff4d;transform:scale(1.1)}.quiz-result-title{font-size:2.2rem;font-weight:700;letter-spacing:-.02em;margin:0 0 1.5rem}.quiz-result-summary{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:12px;display:flex;gap:1rem;justify-content:center;padding:1.5rem}.quiz-stat{align-items:center;display:flex;flex-direction:column;text-align:center}.quiz-stat-number{font-size:2.5rem;font-weight:800;line-height:1;margin-bottom:.25rem}.quiz-stat-label{font-size:.9rem;font-weight:500;opacity:.9}.quiz-stat-divider{font-size:2rem;font-weight:300;margin:0 .5rem;opacity:.7}.quiz-accuracy{align-items:center;border-left:2px solid #ffffff4d;display:flex;flex-direction:column;margin-left:1rem;padding-left:1rem}.quiz-accuracy-score{font-size:2.8rem;font-weight:900;line-height:1;margin-bottom:.25rem}.quiz-accuracy-score.excellent{color:#2cad3d;text-shadow:0 2px 4px #2cad3d4d}.quiz-accuracy-score.good{color:#ffc107;text-shadow:0 2px 4px #ffc1074d}.quiz-accuracy-score.needs-improvement{color:#dc3545;text-shadow:0 2px 4px #dc35454d}.quiz-accuracy-label{font-size:.9rem;font-weight:500;opacity:.9}.quiz-result-content{flex:1 1;max-height:60vh;overflow-y:auto;padding:1.5rem 2.5rem}.quiz-problem-card{animation:quizCardSlideIn .5s ease-out;animation-fill-mode:both;background:#fff;border:2px solid #e9ecef;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem;transition:all .3s ease}.quiz-problem-card:first-child{animation-delay:.1s}.quiz-problem-card:nth-child(2){animation-delay:.2s}.quiz-problem-card:nth-child(3){animation-delay:.3s}.quiz-problem-card:nth-child(4){animation-delay:.4s}.quiz-problem-card:nth-child(5){animation-delay:.5s}@keyframes quizCardSlideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.quiz-problem-card.correct{background:linear-gradient(135deg,#f8fff9,#f0fff2);border-color:#2cad3d}.quiz-problem-card.incorrect{background:linear-gradient(135deg,#fff8f8,#fff0f0);border-color:#dc3545}.quiz-problem-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.quiz-problem-number{color:#8363c8;font-size:1.1rem;font-weight:700}.quiz-problem-status{border-radius:20px;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.quiz-problem-status.correct{background:#2cad3d;color:#fff}.quiz-problem-status.incorrect{background:#dc3545;color:#fff}.quiz-problem-text{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;color:#2c3e50;font-size:1rem;line-height:1.6;margin-bottom:1rem;padding:1rem}.quiz-problem-meta{display:flex;gap:.5rem;margin-bottom:1rem}.quiz-problem-type{background:#6f42c1;color:#fff}.quiz-problem-difficulty,.quiz-problem-type{border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.quiz-problem-difficulty.easy{background:#d4edda;color:#155724}.quiz-problem-difficulty.medium{background:#fff3cd;color:#856404}.quiz-problem-difficulty.hard{background:#f8d7da;color:#721c24}.quiz-answers-section{margin-bottom:1rem}.quiz-mcq-answers{display:flex;flex-direction:column;gap:1rem}.quiz-answer-group{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1rem}.quiz-answer-title{color:#495057;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.quiz-answer-option{align-items:center;border-radius:8px;display:flex;gap:.75rem;padding:.75rem}.quiz-answer-option.user-answer.correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #2cad3d;color:#155724}.quiz-answer-option.user-answer.incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #dc3545;color:#721c24}.quiz-correct-option{align-items:center;background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #2cad3d;border-radius:8px;color:#155724;display:flex;gap:.75rem;padding:.75rem}.quiz-option-letter{font-size:1rem;font-weight:700;min-width:24px}.quiz-option-text{flex:1 1;font-weight:500}.quiz-option-icon{font-size:1.1rem}.quiz-subjective-answers{display:flex;flex-direction:column;gap:1rem}.quiz-text-answer{border-radius:8px;font-family:monospace;font-size:.95rem;font-weight:500;min-height:2.5rem;padding:.75rem}.quiz-text-answer.correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #2cad3d;color:#155724}.quiz-text-answer.incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:1px solid #dc3545;color:#721c24}.quiz-explanation{background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;margin-top:1rem;padding:1rem}.quiz-explanation-title{align-items:center;color:#004085;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.quiz-explanation-steps{color:#004085;margin:0;padding-left:1.25rem}.quiz-explanation-step{font-size:.9rem;line-height:1.5;margin-bottom:.5rem}.quiz-result-footer{background:#f8f9fa;border-radius:0 0 20px 20px;border-top:1px solid #e9ecef;display:flex;gap:1rem;justify-content:center;padding:1.5rem 2.5rem}.quiz-result-button{border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-width:140px;padding:.75rem 2rem;transition:all .2s ease}.quiz-result-button.primary{background:linear-gradient(135deg,#8363c8,#7b5bc0);border:none;color:#fff}.quiz-result-button.primary:hover{box-shadow:0 4px 12px #8363c84d;transform:translateY(-2px)}.quiz-result-button.secondary{background:#fff;border:2px solid #8363c8;color:#8363c8}.quiz-result-button.secondary:hover{background:#8363c8;box-shadow:0 4px 12px #8363c833;color:#fff;transform:translateY(-2px)}@media (max-width:768px){.quiz-result-modal{max-height:95vh;width:95%}.quiz-result-header{padding:1.5rem 1.5rem 1rem}.quiz-result-title{font-size:1.8rem}.quiz-result-summary{flex-direction:column;gap:.75rem;padding:1rem}.quiz-stat-number{font-size:2rem}.quiz-accuracy{border-left:none;border-top:2px solid #ffffff4d;margin-left:0;padding-left:0;padding-top:.75rem}.quiz-result-content{padding:1rem 1.5rem}.quiz-problem-card{padding:1rem}.quiz-result-footer{flex-direction:column;padding:1rem 1.5rem}.quiz-result-button{width:100%}}@media (max-width:480px){.quiz-result-header{padding:1rem}.quiz-result-title,.quiz-stat-number{font-size:1.5rem}.quiz-accuracy-score{font-size:2rem}.quiz-result-content{padding:.75rem 1rem}.quiz-problem-card{margin-bottom:1rem;padding:.75rem}.quiz-problem-header{align-items:flex-start;flex-direction:column;gap:.5rem}}.problem-solving-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.problem-solving-footer{align-items:center;display:flex;flex-direction:column;gap:16px;padding:16px}.final-submit-fixed{bottom:30px;gap:8px;position:fixed;right:30px;z-index:1000}.final-submit-fixed,.progress-summary{align-items:flex-end;display:flex;flex-direction:column}.progress-summary{gap:4px;margin-bottom:8px}.progress-text{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#6b7280;font-size:.875rem;padding:4px 12px}.completion-message{animation:pulse 2s infinite;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:20px;color:#059669;font-size:.75rem;font-weight:500;padding:4px 12px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.final-submit-button-fixed{align-items:center;background:linear-gradient(135deg,#8363c8,#7b5bc0);border:none;border-radius:50px;box-shadow:0 6px 20px #8363c866;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:16px 24px;transition:all .3s ease}.final-submit-button-fixed.enabled:hover{background:linear-gradient(135deg,#9073d8,#8b6bd0);box-shadow:0 8px 25px #8363c880;transform:translateY(-3px)}.final-submit-button-fixed.disabled{background:#9ca3af;box-shadow:0 4px 12px #9ca3af4d;color:#d1d5db;cursor:not-allowed}.final-submit-button-fixed.disabled:hover{box-shadow:0 4px 12px #9ca3af4d;transform:none}.button-icon{font-size:1.1rem}.split-layout{display:flex;height:100%;overflow:hidden}.left-panel,.right-panel{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.left-panel{background:#f8f9fa;border-right:2px solid #e9ecef}.panel-header,.right-panel{background:#fff}.panel-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 2rem}.panel-header h3{color:#333;font-size:1.5rem;font-weight:600;margin:0}.chatbot-header{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.chatbot-header h3{color:#fff}.chatbot-header p{font-size:.9rem;margin:0;opacity:.9}.problem-nav{display:flex;gap:.5rem}.problem-nav .btn{border-radius:6px;font-size:.9rem;padding:.5rem 1rem}.panel-content{background:#fff;flex:1 1;overflow-y:auto}.left-panel .panel-content{background:#f8f9fa}.problem-progress{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-radius:25px;gap:.5rem;padding:.5rem 1rem}.problem-progress,.progress-dot{align-items:center;display:flex;justify-content:center}.progress-dot{background:#fff;border:2px solid #e9ecef;border-radius:50%;color:#666;cursor:pointer;font-size:.9rem;font-weight:600;height:32px;transition:all .3s ease;width:32px}.progress-dot.active,.progress-dot:hover{border-color:#5933ab;border-color:var(--primary-color,#5933ab);transform:scale(1.1)}.progress-dot.active{background:#5933ab;background:var(--primary-color,#5933ab);color:#fff}.progress-dot.completed{background:#28a745;border-color:#28a745;color:#fff}.progress-dot.submitted{background:#10b981;border-color:#10b981;color:#fff}.progress-dot.pending{background:#fff;border-color:#e9ecef;color:#999}.loading-container{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.loading-spinner{border-top-color:#5933ab;border-top:4px solid var(--primary-color,#5933ab);height:48px;margin-bottom:1.5rem;width:48px}.loading-container h3{font-size:1.5rem;font-weight:500;margin:0}.error-container{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem}.error-container h3{color:#dc3545;font-size:1.5rem;margin-bottom:1rem}.error-container p{font-size:1.1rem;margin-bottom:2rem;max-width:400px}.no-problems-container{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.no-problems-container h3{color:#ffc107;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.no-problems-container p{font-size:1.1rem;max-width:400px}.results-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.results-modal{animation:slideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;padding:3rem;text-align:center;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.results-modal h2{color:#28a745;font-size:2rem;font-weight:600;margin-bottom:1rem}.results-modal p{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.results-actions{display:flex;gap:1rem;justify-content:center}.results-actions .btn{border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .3s ease}.results-actions .btn:hover{transform:translateY(-2px)}@media (max-width:1024px){.split-layout{flex-direction:column}.left-panel{border-bottom:2px solid #e9ecef;border-right:none;height:60%}.right-panel{height:40%}.panel-header{padding:1rem 1.5rem}.panel-header h3{font-size:1.3rem}.problem-nav{gap:.25rem}.problem-nav .btn{font-size:.8rem;padding:.4rem .8rem}}@media (max-width:768px){.problem-solving-content{padding:0}.panel-header{align-items:flex-start;flex-direction:column;gap:.5rem;padding:.75rem 1rem}.panel-header h3{font-size:1.2rem}.chatbot-header p{font-size:.8rem}.problem-progress{gap:.25rem;padding:.5rem}.progress-dot{font-size:.8rem;height:28px;width:28px}.results-modal{margin:1rem;padding:2rem}.results-modal h2{font-size:1.5rem}.results-actions{flex-direction:column}.final-submit-fixed{bottom:20px;right:20px}.final-submit-button-fixed{font-size:.9rem;min-width:120px;padding:14px 20px}.progress-text{font-size:.8rem}.completion-message{font-size:.7rem}}@media (max-width:576px){.left-panel{height:70%}.right-panel{height:30%}.panel-header{padding:.5rem .75rem}.panel-header h3{font-size:1.1rem}.progress-dot{font-size:.7rem;height:24px;width:24px}.results-modal{padding:1.5rem}.results-modal h2{font-size:1.3rem}.results-modal p{font-size:1rem}}.learning-journey-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:20px}.journey-section{margin-bottom:32px}.journey-section h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:16px}.progress-timeline{justify-content:space-between;padding:20px 0}.progress-timeline,.timeline-item{align-items:center;display:flex;position:relative}.timeline-item{flex:1 1;flex-direction:column;max-width:150px}.timeline-icon{align-items:center;background:#f8f9fa;border:3px solid #e9ecef;border-radius:50%;display:flex;font-size:1.5rem;height:50px;justify-content:center;margin-bottom:12px;transition:all .3s ease;width:50px}.timeline-item.completed .timeline-icon{background:#d4edda;border-color:#28a745;color:#28a745}.timeline-content{text-align:center}.timeline-content h4{color:#495057;font-size:.9rem;font-weight:600;margin-bottom:4px}.timeline-content p{font-size:.8rem;margin:0}.timeline-connector{background:#e9ecef;height:3px;left:60%;position:absolute;right:-60%;top:25px;z-index:-1}.timeline-connector.active{background:linear-gradient(90deg,#28a745,#20c997)}.activity-heatmap{padding:16px 0}.heatmap-grid{grid-gap:2px;display:grid;gap:2px;grid-template-columns:repeat(7,1fr);margin:0 auto;max-width:400px}.weekday-label{color:#6c757d;font-size:.8rem;font-weight:500;padding:4px;text-align:center}.activity-cell{border-radius:2px;cursor:pointer;height:12px;transition:transform .2s ease;width:12px}.activity-cell:hover{transform:scale(1.2)}.activity-cell.empty{background:#0000!important}.heatmap-legend{align-items:center;color:#6c757d;display:flex;font-size:.8rem;gap:8px;justify-content:center;margin-top:16px}.legend-scale{display:flex;gap:1px}.legend-cell{border-radius:1px;height:10px;width:10px}.patterns-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.pattern-card{align-items:center;background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;display:flex;padding:16px;transition:transform .2s ease,box-shadow .2s ease}.pattern-card:hover{box-shadow:0 4px 12px #007bff26;transform:translateY(-2px)}.pattern-icon{font-size:1.8rem;margin-right:12px}.pattern-content h4{color:#495057;font-size:.9rem;font-weight:600;margin-bottom:4px}.pattern-value{color:#007bff;font-size:1.1rem;font-weight:700;margin-bottom:2px}.pattern-desc{color:#6c757d;font-size:.8rem}.motivation-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:20px;text-align:center}.motivation-card h4{font-size:1.1rem;font-weight:600;margin-bottom:16px}.insights-list p{align-items:center;display:flex;font-size:.95rem;gap:8px;justify-content:center;margin-bottom:8px;opacity:.95}.insights-list p:last-child{margin-bottom:0}@media (max-width:768px){.progress-timeline{flex-direction:column;gap:16px}.timeline-connector{display:none}.patterns-grid{grid-template-columns:1fr}.heatmap-grid{max-width:300px}}.text-success{color:#28a745!important}.text-muted{color:#6c757d!important}.ai-analytics-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:20px}.analytics-section{margin-bottom:32px}.analytics-section h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:20px}.usage-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.usage-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;display:flex;overflow:hidden;padding:20px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.usage-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.usage-card.tutoring{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.usage-card.helper{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.usage-card.dependency{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.usage-card.effectiveness{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.usage-icon{font-size:2.5rem;margin-right:16px;opacity:.9}.usage-content h4{font-size:1rem;font-weight:600;margin-bottom:8px;opacity:.95}.usage-stats{align-items:baseline;display:flex;gap:6px;margin-bottom:4px}.big-number{font-size:1.8rem;font-weight:700;line-height:1}.unit,.usage-detail{font-size:.85rem;opacity:.8}.usage-detail{margin:0}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:12px}.legend-item{align-items:center;color:#495057;display:flex;font-size:.85rem;gap:6px}.legend-color{border-radius:2px;height:12px;width:12px}.effectiveness-summary{border-top:1px solid #dee2e6;margin-top:16px;padding-top:16px;text-align:center}.effectiveness-summary p{color:#495057;font-size:.9rem;margin:4px 0}.message-analysis{grid-gap:24px;align-items:center;display:grid;gap:24px;grid-template-columns:1fr 1fr}.message-chart{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px}.message-chart h4{color:#495057;font-size:1rem;font-weight:600;margin-bottom:16px;text-align:center}.message-stats{grid-gap:12px;display:grid;gap:12px}.stat-item{align-items:center;background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px}.stat-label{font-size:.9rem;font-weight:500}.stat-value{color:#007bff;font-size:1.1rem}.insights-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:24px}.insights-card h4{font-size:1.1rem;font-weight:600;margin-bottom:20px;text-align:center}.insights-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.insight-item{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;display:flex;gap:12px;padding:16px}.insight-icon{opacity:.9}.insight-content{flex:1 1}.insight-title{font-size:.95rem;font-weight:600;margin-bottom:4px;opacity:.95}.insight-desc{font-size:.85rem;line-height:1.4;margin:0;opacity:.85}@media (max-width:768px){.charts-grid,.insights-grid,.message-analysis,.usage-cards{grid-template-columns:1fr}.usage-card{padding:16px}.usage-icon{font-size:2rem;margin-right:12px}.chart-container{padding:16px}}@media (max-width:480px){.ai-analytics-container{padding:16px}.chart-legend{gap:12px;justify-content:flex-start}.legend-item{font-size:.8rem}}.performance-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:20px}.performance-section{margin-bottom:32px}.performance-section h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:20px}.overview-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.overview-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left:4px solid #007bff;border-radius:12px;display:flex;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.overview-card:hover{box-shadow:0 4px 16px #007bff26;transform:translateY(-2px)}.card-icon{font-size:2rem;margin-right:16px;opacity:.8}.card-content h4{color:#495057;font-size:.9rem;font-weight:600;margin-bottom:4px}.big-metric{color:#007bff;font-size:1.4rem;font-weight:700;margin:0}.radar-container{grid-gap:32px;align-items:center;display:grid;gap:32px;grid-template-columns:1fr 1fr}.radar-chart{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px}.radar-insights{padding:20px}.radar-insights h4{color:#495057;font-size:1.1rem;font-weight:600;margin-bottom:12px}.insight-text{color:#6c757d;font-size:.95rem;line-height:1.5;margin-bottom:20px}.subject-list{display:flex;flex-direction:column;gap:8px}.subject-item{align-items:center;background:#f8f9fa;border-left:3px solid #007bff;border-radius:6px;display:flex;justify-content:space-between;padding:8px 12px}.subject-name{color:#495057;font-size:.9rem;font-weight:500}.subject-stats{align-items:center;display:flex;gap:8px}.accuracy-badge{border-radius:4px;color:#fff;font-size:.8rem;font-weight:600;padding:2px 8px}.attempts-count{color:#6c757d;font-size:.8rem;font-weight:500}.difficulty-analysis{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.difficulty-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.difficulty-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.difficulty-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.difficulty-icon{font-size:1.5rem}.difficulty-header h4{color:#495057;font-size:1rem;font-weight:600;margin:0;text-transform:capitalize}.difficulty-stats{margin-bottom:16px}.stat-row{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;padding:4px 0}.stat-row span:first-child{color:#6c757d}.stat-value{color:#495057;font-weight:600}.difficulty-progress{background:#e9ecef;border-radius:3px;height:6px;overflow:hidden}.progress-bar{height:100%;transition:width .3s ease}.charts-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.chart-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:20px}.chart-container h4{color:#495057;font-size:1rem;font-weight:600;margin-bottom:16px;text-align:center}.custom-tooltip{background:#000c;border-radius:6px;color:#fff;font-size:.85rem;padding:8px 12px}.tooltip-label{font-weight:600;margin-bottom:4px}.tooltip-value{font-size:.8rem;margin:2px 0}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:24px}.summary-card h4{font-size:1.1rem;font-weight:600;margin-bottom:20px;text-align:center}.summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.summary-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;padding:16px;text-align:center}.summary-label{display:block;font-size:.85rem;margin-bottom:8px;opacity:.8}.summary-value{display:block;font-size:1.2rem;font-weight:700;opacity:.95}@media (max-width:768px){.overview-cards,.radar-container{grid-template-columns:1fr}.radar-container{gap:24px}.charts-grid,.difficulty-analysis{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.overview-card,.performance-container{padding:16px}.card-icon{font-size:1.5rem;margin-right:12px}.big-metric{font-size:1.2rem}.chart-container,.difficulty-card{padding:16px}.summary-grid{grid-template-columns:1fr}}.insights-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:20px}.insights-section{margin-bottom:32px}.insights-section h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:20px}.score-card{grid-gap:32px;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;display:grid;gap:32px;grid-template-columns:auto 1fr;padding:24px}.score-circle{height:120px;position:relative;width:120px}.score-progress{height:100%;position:relative;width:100%}.score-inner,.score-progress{align-items:center;border-radius:50%;display:flex;justify-content:center}.score-inner{background:#fff;color:#495057;flex-direction:column;height:90px;width:90px}.score-number{font-size:2rem;font-weight:700;line-height:1}.score-max{font-size:.8rem;opacity:.7}.score-info h4{align-items:center;display:flex;font-size:1.3rem;gap:8px;margin-bottom:8px}.score-info p{line-height:1.4;margin-bottom:16px;opacity:.9}.score-breakdown{display:flex;flex-direction:column;gap:8px}.breakdown-item{align-items:center;display:flex;gap:12px}.breakdown-label{font-size:.85rem;min-width:80px;opacity:.8}.breakdown-bar{background:#fff3;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.breakdown-fill{border-radius:3px;height:100%;transition:width .3s ease}.insights-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{align-items:flex-start;background:#f8f9fa;border-left:4px solid #007bff;border-radius:12px;display:flex;gap:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.insight-card:hover{box-shadow:0 4px 16px #007bff26;transform:translateY(-2px)}.insight-card.empty{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left-color:#6c757d}.insight-icon{flex-shrink:0;font-size:1.5rem;opacity:.8}.insight-content p{color:#495057;font-size:.95rem;line-height:1.5;margin:0}.recommendations-list{display:flex;flex-direction:column;gap:12px}.recommendation-item{align-items:center;background:#f8f9fa;border-left:4px solid #28a745;border-radius:12px;display:flex;gap:16px;padding:16px 20px;transition:transform .2s ease,box-shadow .2s ease}.recommendation-item:hover{box-shadow:0 2px 12px #28a74526;transform:translateX(4px)}.recommendation-item.empty{border-left-color:#17a2b8}.recommendation-icon{flex-shrink:0;font-size:1.3rem;opacity:.8}.recommendation-content{flex:1 1}.recommendation-content p{color:#495057;font-size:.95rem;line-height:1.4;margin:0}.recommendation-action{flex-shrink:0}.action-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 12px;transition:background .2s ease}.action-btn:hover{background:#218838}.goals-container{display:flex;flex-direction:column;gap:12px}.goal-card{align-items:center;background:#f8f9fa;border-left:4px solid #ffc107;border-radius:12px;display:flex;gap:16px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.goal-card:hover{box-shadow:0 4px 16px #ffc10726;transform:translateY(-2px)}.goal-card.completed{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left-color:#28a745}.goal-number{align-items:center;background:#ffc107;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:700;height:40px;justify-content:center;width:40px}.goal-card.completed .goal-number{background:#28a745}.goal-content{flex:1 1}.goal-content h4{color:#495057;font-size:1rem;font-weight:600;margin-bottom:4px}.goal-content p{color:#6c757d;font-size:.9rem;line-height:1.4;margin:0}.goal-status{flex-shrink:0}.status-badge{border-radius:4px;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.completed{background:#d4edda;color:#155724}.motivation-quote{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;overflow:hidden;padding:24px;position:relative;text-align:center}.motivation-quote:before{animation:shimmer 3s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes shimmer{0%,to{transform:translateX(-100%) translateY(-100%) rotate(0deg)}50%{transform:translateX(0) translateY(0) rotate(180deg)}}.quote-icon{font-size:2rem;margin-bottom:16px;opacity:.9}.quote-content h4{font-size:1.2rem;font-weight:600;margin-bottom:12px}.quote-text{font-size:1.1rem;font-style:italic;line-height:1.5;margin-bottom:8px;opacity:.95}.quote-author{font-size:.9rem;margin:0;opacity:.7}@media (max-width:768px){.score-card{gap:20px;grid-template-columns:1fr;text-align:center}.score-circle{justify-self:center}.insights-grid{grid-template-columns:1fr}.recommendation-item{align-items:flex-start;flex-direction:column;gap:12px}.recommendation-action{align-self:stretch}.action-btn{padding:8px 16px;width:100%}}@media (max-width:480px){.insights-container{padding:16px}.score-card{padding:20px}.score-circle{height:100px;width:100px}.score-inner{height:75px;width:75px}.score-number{font-size:1.5rem}.goal-card,.insight-card,.recommendation-item{padding:16px}.motivation-quote{padding:20px}}.achievements-container{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:20px}.achievements-section{margin-bottom:32px}.achievements-section h3{align-items:center;color:#1a1a1a;display:flex;font-size:1.2rem;font-weight:600;gap:8px;margin-bottom:20px}.ranking-overview{grid-gap:24px;align-items:center;background:linear-gradient(135deg,gold,#ffed4a);border-radius:16px;color:#1a1a1a;display:grid;gap:24px;grid-template-columns:auto 1fr;padding:24px}.rank-card{align-items:center;display:flex;gap:16px}.rank-icon{font-size:3rem;opacity:.9}.rank-info h4{font-size:1.3rem;font-weight:700;margin-bottom:4px}.rank-info p{font-size:1rem;margin-bottom:4px;opacity:.8}.total-users{font-size:.85rem;opacity:.7}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}.stat-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0000001a;border-radius:12px;padding:16px 12px;text-align:center}.stat-number{display:block;font-size:1.8rem;margin-bottom:4px}.stat-label{opacity:.8}.badges-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.badge-card{align-items:center;border-radius:12px;display:flex;gap:16px;overflow:hidden;padding:20px;position:relative;transition:transform .2s ease,box-shadow .2s ease}.badge-card.earned{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745}.badge-card.upcoming{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #6c757d;opacity:.8}.badge-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.badge-card.earned:hover{box-shadow:0 8px 25px #28a7454d}.badge-icon{flex-shrink:0;font-size:2.5rem;position:relative}.badge-icon.earned{filter:drop-shadow(0 0 10px rgba(255,215,0,.5))}.badge-icon.upcoming{filter:grayscale(50%);opacity:.6}.badge-content{flex:1 1}.badge-content h4{color:#495057;font-size:1rem;font-weight:600;margin-bottom:4px}.badge-content p{color:#6c757d;font-size:.85rem;line-height:1.4;margin-bottom:8px}.earned-date{color:#28a745;font-size:.75rem;font-weight:500}.badge-status{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:700;height:30px;justify-content:center;width:30px}.badge-status.earned{background:#28a745;color:#fff}.badge-status.upcoming{background:#6c757d;color:#fff}.progress-container{align-items:center;display:flex;gap:8px}.progress-bar{background:#e9ecef;border-radius:3px;flex:1 1;height:6px}.progress-fill{background:linear-gradient(90deg,#007bff,#0056b3);border-radius:3px;height:100%;transition:width .3s ease}.progress-text{color:#007bff;font-size:.75rem;font-weight:600;min-width:30px}.empty-state{color:#6c757d;padding:40px 20px;text-align:center}.empty-icon{font-size:3rem;margin-bottom:16px;opacity:.6}.empty-state p{font-size:.95rem;margin:8px 0}.milestone-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;color:#fff;padding:24px;text-align:center}.milestone-header h3{color:#fff;margin-bottom:20px}.milestone-content{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:24px}.milestone-icon{font-size:3rem;opacity:.9}.milestone-info h4{font-size:1.2rem;font-weight:600;margin-bottom:8px}.milestone-info p{margin:0;opacity:.9}.milestone-actions{display:flex;gap:12px;justify-content:center}.milestone-btn{border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.milestone-btn.primary{background:#fff;color:#667eea}.milestone-btn.primary:hover{background:#f8f9fa;transform:translateY(-2px)}.milestone-btn.secondary{background:#fff3;border:1px solid #ffffff4d;color:#fff}.milestone-btn.secondary:hover{background:#ffffff4d;transform:translateY(-2px)}.categories-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.category-card{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;padding:20px;text-align:center;transition:transform .2s ease,border-color .2s ease}.category-card:hover{border-color:#007bff;transform:translateY(-2px)}.category-icon{font-size:2rem;margin-bottom:12px;opacity:.8}.category-info h4{color:#495057;font-size:1rem;font-weight:600;margin-bottom:4px}.category-info p{color:#6c757d;font-size:.85rem;margin-bottom:8px}.category-count{background:#007bff;border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;padding:4px 8px}.leaderboard-preview{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;padding:24px}.leaderboard-preview h4{color:#495057;font-size:1.1rem;font-weight:600;margin-bottom:20px;text-align:center}.rank-visualization{margin-bottom:16px}.rank-position{gap:16px;margin-bottom:16px}.position-number,.rank-position{align-items:center;display:flex;justify-content:center}.position-number{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:50%;color:#fff;font-size:1.5rem;font-weight:700;height:60px;width:60px}.position-info{text-align:center}.position-info p{color:#495057;font-size:1rem;font-weight:600;margin-bottom:4px}.position-info span{color:#6c757d;font-size:.85rem}.rank-progress{margin-bottom:12px}.progress-track{background:linear-gradient(90deg,#dc3545,#ffc107,#28a745);border-radius:4px;height:8px;margin-bottom:8px;position:relative}.progress-marker{background:#495057;border:2px solid #fff;border-radius:50%;height:12px;position:absolute;top:-2px;transform:translateX(-50%);width:12px}.rank-labels{color:#6c757d;display:flex;font-size:.75rem;justify-content:space-between}.rank-description{color:#495057;font-size:.9rem;margin:0;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto 16px;width:40px}@media (max-width:768px){.ranking-overview{gap:20px;text-align:center}.badges-grid,.categories-grid,.ranking-overview,.stats-grid{grid-template-columns:1fr}.milestone-content{gap:16px}.milestone-actions,.milestone-content{flex-direction:column}.milestone-btn{width:100%}}@media (max-width:480px){.achievements-container,.badge-card{padding:16px}.badge-icon{font-size:2rem}.rank-card{flex-direction:column;gap:12px;text-align:center}.rank-icon{font-size:2.5rem}.milestone-card{padding:20px}.position-number{font-size:1.2rem;height:50px;width:50px}}.advanced-dashboard{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:0}.dashboard-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;box-shadow:0 2px 20px #0000001a;padding:24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{grid-gap:32px;align-items:center;display:grid;gap:32px;grid-template-columns:1fr auto;margin:0 auto;max-width:1400px}.user-info h1{align-items:center;color:#1a1a1a;display:flex;font-size:2rem;font-weight:700;gap:12px;margin-bottom:8px}.user-welcome{color:#6c757d;font-size:1.1rem;line-height:1.4;margin:0}.user-welcome strong{color:#495057}.summary-stats{display:flex;gap:16px}.stat-card{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;display:flex;gap:12px;min-width:120px;padding:16px 20px}.stat-icon{font-size:1.8rem;opacity:.8}.stat-content{display:flex;flex-direction:column}.stat-number{color:#495057;font-size:1.4rem;font-weight:700;line-height:1}.stat-label{color:#6c757d;font-size:.8rem;margin-top:2px}.global-loading{align-items:center;color:#6c757d;display:flex;font-size:.9rem;gap:12px;margin-top:16px}.loading-bar{background:#e9ecef;border-radius:2px;height:4px;overflow:hidden;width:200px}.loading-progress{animation:loadingProgress 2s ease-in-out infinite;background:linear-gradient(90deg,#007bff,#0056b3);border-radius:2px;height:100%}@keyframes loadingProgress{0%{transform:translateX(-100%);width:0}50%{transform:translateX(0);width:100%}to{transform:translateX(100%);width:100%}}.dashboard-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-bottom:1px solid #0000001a;padding:0 24px;position:-webkit-sticky;position:sticky;top:98px;z-index:90}.nav-tabs{display:flex;gap:4px;margin:0 auto;max-width:1400px;padding:12px 0}.nav-tab{align-items:center;background:none;border:none;border-radius:8px;color:#6c757d;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:12px 20px;position:relative;transition:all .2s ease}.nav-tab:hover{background:#007bff1a;color:#007bff;transform:translateY(-2px)}.nav-tab.active{background:#007bff;box-shadow:0 2px 8px #007bff4d;color:#fff}.tab-icon{font-size:1.1rem}.tab-error{font-size:.7rem;position:absolute;right:-4px;top:-4px}.nav-actions{position:absolute;right:24px;top:50%;transform:translateY(-50%)}.refresh-btn{align-items:center;background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s ease}.refresh-btn:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.refresh-btn:disabled{cursor:not-allowed;opacity:.6}.refresh-icon{font-size:.9rem;transition:transform .2s ease}.refresh-icon.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.dashboard-content{min-height:calc(100vh - 200px);padding:32px 24px}.content-wrapper{margin:0 auto;max-width:1400px}.error-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:16px;box-shadow:0 4px 20px #0000001a;padding:60px 20px;text-align:center}.error-icon{font-size:3rem;margin-bottom:20px;opacity:.7}.error-container h3{color:#495057;font-size:1.3rem;font-weight:600;margin-bottom:12px}.error-container p{color:#6c757d;font-size:1rem;margin-bottom:24px}.retry-btn{background:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:12px 24px;transition:all .2s ease}.retry-btn:hover{background:#0056b3;transform:translateY(-2px)}.dashboard-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border-top:1px solid #0000001a;margin-top:32px;padding:24px}.footer-content{grid-gap:24px;align-items:center;display:grid;gap:24px;grid-template-columns:1fr auto;margin:0 auto;max-width:1400px}.footer-content p{color:#6c757d;font-size:.95rem;line-height:1.4;margin:0}.footer-content strong{color:#495057}.footer-actions{display:flex;gap:12px}.footer-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:10px 20px;transition:all .2s ease}.footer-btn.primary{background:#007bff;color:#fff}.footer-btn.primary:hover{background:#0056b3;transform:translateY(-2px)}.footer-btn.secondary{background:#6c757d;color:#fff}.footer-btn.secondary:hover{background:#545b62;transform:translateY(-2px)}@media (max-width:1200px){.header-content{gap:20px;grid-template-columns:1fr;text-align:center}.summary-stats{justify-content:center}.nav-actions{margin-top:12px;position:static;text-align:center;transform:none}.footer-content{gap:16px;grid-template-columns:1fr;text-align:center}.footer-actions{justify-content:center}}@media (max-width:768px){.dashboard-header{padding:20px 16px}.dashboard-nav{padding:0 16px}.nav-tabs{overflow-x:auto;padding-bottom:16px}.nav-tab{flex-shrink:0;padding:10px 16px}.dashboard-content{padding:24px 16px}.summary-stats{flex-direction:column;width:100%}.stat-card{justify-content:center}.footer-actions{flex-direction:column}}@media (max-width:480px){.user-info h1{font-size:1.5rem}.user-welcome{font-size:1rem}.nav-tab{font-size:.8rem;padding:8px 12px}.tab-label{display:none}.stat-card{min-width:100px;padding:12px 16px}.stat-number{font-size:1.2rem}.dashboard-content{padding:20px 12px}.dashboard-footer{padding:20px 16px}}@media (max-width:768px){.dashboard-nav{top:140px}}@media (max-width:480px){.dashboard-nav{top:160px}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{background-color:#fff;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;overflow-x:hidden}#root,body,html{height:100%}:root{--primary-color:#5933ab;--primary-dark:#462e79;--primary-light:#7b5dc7;--secondary-color:#f8f9fa;--secondary-dark:#e9ecef;--success-color:#28a745;--success-light:#d4edda;--warning-color:#ffc107;--warning-light:#fff3cd;--danger-color:#dc3545;--danger-light:#f8d7da;--info-color:#17a2b8;--info-light:#d1ecf1;--light-color:#f8f9fa;--dark-color:#343a40;--muted-color:#6c757d;--border-color:#dee2e6;--background-color:#fff;--background-light:#f8f9fa;--text-color:#333;--text-muted:#6c757d;--text-light:#fff;--shadow-sm:0 0.125rem 0.25rem rgba(0,0,0,.075);--shadow:0 0.5rem 1rem #00000026;--shadow-lg:0 1rem 3rem rgba(0,0,0,.175);--border-radius:0.25rem;--border-radius-lg:0.5rem;--border-radius-xl:1rem;--transition:all 0.3s ease;--transition-fast:all 0.15s ease}h1,h2,h3,h4,h5,h6{color:inherit;font-weight:500;line-height:1.2;margin-bottom:.5rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:1rem}a{color:#5933ab;color:var(--primary-color);text-decoration:none;transition:color .15s ease-in-out}a:hover{color:#462e79;color:var(--primary-dark);text-decoration:underline}ol,ul{padding-left:2rem}button{background:none;border:none;cursor:pointer}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}.flex{display:flex}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.align-stretch{align-items:stretch}.align-baseline{align-items:baseline}.flex-center{align-items:center;display:flex;justify-content:center}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-none{display:none}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.position-sticky{position:-webkit-sticky;position:sticky}.w-25{width:25%}.w-50{width:50%}.w-75{width:75%}.w-100{width:100%}.w-auto{width:auto}.h-25{height:25%}.h-50{height:50%}.h-75{height:75%}.h-100{height:100%}.h-auto{height:auto}.min-h-100{min-height:100%}.min-vh-100{min-height:100vh}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:1rem}.m-4{margin:1.5rem}.m-5{margin:3rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.5rem}.mt-5{margin-top:3rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.ml-0,.ms-0{margin-left:0}.ml-1,.ms-1{margin-left:.25rem}.ml-2,.ms-2{margin-left:.5rem}.ml-3,.ms-3{margin-left:1rem}.ml-4,.ms-4{margin-left:1.5rem}.ml-5,.ms-5{margin-left:3rem}.me-0,.mr-0{margin-right:0}.me-1,.mr-1{margin-right:.25rem}.me-2,.mr-2{margin-right:.5rem}.me-3,.mr-3{margin-right:1rem}.me-4,.mr-4{margin-right:1.5rem}.me-5,.mr-5{margin-right:3rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:1rem}.p-4{padding:1.5rem}.p-5{padding:3rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:1rem}.pt-4{padding-top:1.5rem}.pt-5{padding-top:3rem}.pb-0{padding-bottom:0}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:1rem}.pb-4{padding-bottom:1.5rem}.pb-5{padding-bottom:3rem}.pl-0,.ps-0{padding-left:0}.pl-1,.ps-1{padding-left:.25rem}.pl-2,.ps-2{padding-left:.5rem}.pl-3,.ps-3{padding-left:1rem}.pl-4,.ps-4{padding-left:1.5rem}.pl-5,.ps-5{padding-left:3rem}.pe-0,.pr-0{padding-right:0}.pe-1,.pr-1{padding-right:.25rem}.pe-2,.pr-2{padding-right:.5rem}.pe-3,.pr-3{padding-right:1rem}.pe-4,.pr-4{padding-right:1.5rem}.pe-5,.pr-5{padding-right:3rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-primary{color:#5933ab;color:var(--primary-color)}.text-secondary{color:#f8f9fa;color:var(--secondary-color)}.text-success{color:#28a745;color:var(--success-color)}.text-warning{color:#ffc107;color:var(--warning-color)}.text-danger{color:#dc3545;color:var(--danger-color)}.text-info{color:#17a2b8;color:var(--info-color)}.text-light{color:#f8f9fa;color:var(--light-color)}.text-dark{color:#343a40;color:var(--dark-color)}.text-muted{color:#6c757d;color:var(--text-muted)}.text-white{color:#fff}.font-weight-light{font-weight:300}.font-weight-normal{font-weight:400}.font-weight-bold{font-weight:700}.fw-light{font-weight:300}.fw-normal{font-weight:400}.fw-bold{font-weight:700}.bg-primary{background-color:#5933ab;background-color:var(--primary-color)}.bg-secondary{background-color:#f8f9fa;background-color:var(--secondary-color)}.bg-success{background-color:#28a745;background-color:var(--success-color)}.bg-warning{background-color:#ffc107;background-color:var(--warning-color)}.bg-danger{background-color:#dc3545;background-color:var(--danger-color)}.bg-info{background-color:#17a2b8;background-color:var(--info-color)}.bg-light{background-color:#f8f9fa;background-color:var(--light-color)}.bg-dark{background-color:#343a40;background-color:var(--dark-color)}.bg-white{background-color:#fff}.bg-transparent{background-color:initial}.border{border:1px solid #dee2e6;border:1px solid var(--border-color)}.border-top{border-top:1px solid #dee2e6;border-top:1px solid var(--border-color)}.border-bottom{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--border-color)}.border-left{border-left:1px solid #dee2e6;border-left:1px solid var(--border-color)}.border-right{border-right:1px solid #dee2e6;border-right:1px solid var(--border-color)}.border-0{border:0}.rounded{border-radius:.25rem;border-radius:var(--border-radius)}.rounded-lg{border-radius:.5rem;border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:1rem;border-radius:var(--border-radius-xl)}.rounded-circle{border-radius:50%}.rounded-0{border-radius:0}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075);box-shadow:var(--shadow-sm)}.shadow{box-shadow:0 .5rem 1rem #00000026;box-shadow:var(--shadow)}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175);box-shadow:var(--shadow-lg)}.shadow-none{box-shadow:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-visible{overflow:visible}.z-1{z-index:1}.z-2{z-index:2}.z-3{z-index:3}.z-10{z-index:10}.z-999{z-index:999}.z-1000{z-index:1000}.transition{transition:all .3s ease;transition:var(--transition)}.transition-fast{transition:all .15s ease;transition:var(--transition-fast)}.fade-in{animation:fadeIn .5s ease forwards;opacity:0}@keyframes fadeIn{to{opacity:1}}.slide-up{animation:slideUp .5s ease forwards;opacity:0;transform:translateY(20px)}@keyframes slideUp{to{opacity:1;transform:translateY(0)}}.focus-outline{outline:2px solid #5933ab;outline:2px solid var(--primary-color);outline-offset:2px}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media (max-width:575.98px){.d-sm-none{display:none!important}.d-sm-block{display:block!important}.d-sm-flex{display:flex!important}}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-block{display:block!important}.d-sm-flex{display:flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-block{display:block!important}.d-md-flex{display:flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-block{display:block!important}.d-lg-flex{display:flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-block{display:block!important}.d-xl-flex{display:flex!important}}.container{margin:0 auto;max-width:1200px}.container,.container-fluid{padding-left:15px;padding-right:15px;width:100%}.container-sm{max-width:540px}.container-md,.container-sm{margin:0 auto;padding:0 15px}.container-md{max-width:720px}.container-lg{max-width:960px}.container-lg,.container-xl{margin:0 auto;padding:0 15px}.container-xl{max-width:1140px}.container-xxl{margin:0 auto;max-width:1320px;padding:0 15px}.row{display:flex;flex-wrap:wrap;margin-left:-15px;margin-right:-15px}.row>*{padding-left:15px;padding-right:15px}.no-gutters{margin-left:0;margin-right:0}.no-gutters>*{padding-left:0;padding-right:0}.col{flex:1 0;min-width:0}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.333333%}.col-2{flex:0 0 auto;width:16.666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.333333%}.col-5{flex:0 0 auto;width:41.666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.333333%}.col-8{flex:0 0 auto;width:66.666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.333333%}.col-11{flex:0 0 auto;width:91.666667%}.col-12{flex:0 0 auto;width:100%}@media (min-width:576px){.container{max-width:540px}.col-sm{flex:1 0}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.333333%}.col-sm-2{flex:0 0 auto;width:16.666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.333333%}.col-sm-5{flex:0 0 auto;width:41.666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.333333%}.col-sm-8{flex:0 0 auto;width:66.666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.333333%}.col-sm-11{flex:0 0 auto;width:91.666667%}.col-sm-12{flex:0 0 auto;width:100%}}@media (min-width:768px){.container{max-width:720px}.col-md{flex:1 0}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.333333%}.col-md-2{flex:0 0 auto;width:16.666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.333333%}.col-md-5{flex:0 0 auto;width:41.666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.333333%}.col-md-8{flex:0 0 auto;width:66.666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.333333%}.col-md-11{flex:0 0 auto;width:91.666667%}.col-md-12{flex:0 0 auto;width:100%}}@media (min-width:992px){.container{max-width:960px}.col-lg{flex:1 0}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.333333%}.col-lg-2{flex:0 0 auto;width:16.666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.333333%}.col-lg-5{flex:0 0 auto;width:41.666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.333333%}.col-lg-8{flex:0 0 auto;width:66.666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.333333%}.col-lg-11{flex:0 0 auto;width:91.666667%}.col-lg-12{flex:0 0 auto;width:100%}}@media (min-width:1200px){.container{max-width:1140px}.col-xl{flex:1 0}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.333333%}.col-xl-2{flex:0 0 auto;width:16.666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.333333%}.col-xl-5{flex:0 0 auto;width:41.666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.333333%}.col-xl-8{flex:0 0 auto;width:66.666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.333333%}.col-xl-11{flex:0 0 auto;width:91.666667%}.col-xl-12{flex:0 0 auto;width:100%}}@media (min-width:1400px){.container{max-width:1320px}.col-xxl{flex:1 0}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.333333%}.col-xxl-2{flex:0 0 auto;width:16.666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.333333%}.col-xxl-5{flex:0 0 auto;width:41.666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.333333%}.col-xxl-8{flex:0 0 auto;width:66.666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.333333%}.col-xxl-11{flex:0 0 auto;width:91.666667%}.col-xxl-12{flex:0 0 auto;width:100%}}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}.order-first{order:-1}.order-0{order:0}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-last{order:6}.g-0{gap:0}.g-1{gap:.25rem}.g-2{gap:.5rem}.g-3{gap:1rem}.g-4{gap:1.5rem}.g-5{gap:3rem}.gx-0{column-gap:0}.gx-1{column-gap:.25rem}.gx-2{column-gap:.5rem}.gx-3{column-gap:1rem}.gx-4{column-gap:1.5rem}.gx-5{column-gap:3rem}.gy-0{row-gap:0}.gy-1{row-gap:.25rem}.gy-2{row-gap:.5rem}.gy-3{row-gap:1rem}.gy-4{row-gap:1.5rem}.gy-5{row-gap:3rem}@media (max-width:575.98px){.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}}@media (min-width:768px){.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-6>*{flex:0 0 auto;width:16.666667%}}@media (min-width:992px){.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-6>*{flex:0 0 auto;width:16.666667%}}.btn{background-color:initial;border:1px solid #0000;border-radius:var(--border-radius);color:var(--text-color);cursor:pointer;display:inline-block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;text-align:center;transition:var(--transition);-webkit-user-select:none;user-select:none;vertical-align:middle}.btn,.btn:hover{text-decoration:none}.btn:focus{box-shadow:0 0 0 .2rem #5933ab40;outline:0}.btn:disabled{opacity:.65;pointer-events:none}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.btn-primary:focus{box-shadow:0 0 0 .2rem #5933ab80}.btn-secondary{background-color:var(--secondary-color);border-color:var(--border-color);color:var(--text-color)}.btn-secondary:hover{background-color:var(--secondary-dark);border-color:var(--border-color)}.btn-success{background-color:var(--success-color);border-color:var(--success-color);color:#fff}.btn-success:hover{background-color:#218838;border-color:#1e7e34}.btn-warning{background-color:var(--warning-color);border-color:var(--warning-color);color:#212529}.btn-warning:hover{background-color:#e0a800;border-color:#d39e00}.btn-danger{background-color:var(--danger-color);border-color:var(--danger-color);color:#fff}.btn-danger:hover{background-color:#c82333;border-color:#bd2130}.btn-info{background-color:var(--info-color);border-color:var(--info-color);color:#fff}.btn-info:hover{background-color:#138496;border-color:#117a8b}.btn-light{background-color:var(--light-color);border-color:var(--border-color);color:#212529}.btn-light:hover{background-color:#e2e6ea;border-color:#dae0e5}.btn-dark{background-color:var(--dark-color);border-color:var(--dark-color);color:#fff}.btn-dark:hover{background-color:#23272b;border-color:#1d2124}.btn-outline-primary{border-color:var(--primary-color);color:var(--primary-color)}.btn-outline-primary:hover{background-color:var(--primary-color);border-color:var(--primary-color);color:#fff}.btn-outline-secondary{border-color:var(--border-color);color:var(--muted-color)}.btn-outline-secondary:hover{background-color:var(--muted-color);border-color:var(--muted-color);color:#fff}.btn-lg{border-radius:var(--border-radius-lg);font-size:1.25rem;padding:.5rem 1rem}.btn-sm{border-radius:calc(var(--border-radius)*.5);font-size:.875rem;padding:.25rem .5rem}.btn-block{display:block;width:100%}.card{word-wrap:break-word;background-clip:initial;background-color:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-width:0;position:relative}.card-body{flex:1 1 auto;padding:1rem}.card-title{font-size:1.25rem;font-weight:500;margin-bottom:.5rem}.card-subtitle{color:var(--text-muted);margin-bottom:.5rem}.card-header,.card-text:last-child{margin-bottom:0}.card-header{background-color:var(--light-color);border-bottom:1px solid var(--border-color);border-top-left-radius:calc(var(--border-radius) - 1px);border-top-right-radius:calc(var(--border-radius) - 1px);padding:.5rem 1rem}.card-header:first-child{border-radius:calc(var(--border-radius) - 1px) calc(var(--border-radius) - 1px) 0 0}.card-footer{background-color:var(--light-color);border-bottom-left-radius:calc(var(--border-radius) - 1px);border-bottom-right-radius:calc(var(--border-radius) - 1px);border-top:1px solid var(--border-color);padding:.5rem 1rem}.form-label{font-weight:500;margin-bottom:.5rem}.form-control{background-image:none;border:1px solid var(--border-color);border-radius:var(--border-radius);display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}.form-control,.form-control:focus{background-color:#fff;color:var(--text-color)}.form-control:focus{border-color:#5933ab80;box-shadow:0 0 0 .2rem #5933ab40;outline:0}.form-control:disabled,.form-control[readonly]{background-color:var(--light-color);opacity:1}.form-control::placeholder{color:var(--text-muted);opacity:1}.form-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 6 7 7 7-7'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);display:block;font-size:1rem;font-weight:400;line-height:1.5;padding:.375rem 2.25rem .375rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}.form-select:focus{border-color:#5933ab80;box-shadow:0 0 0 .2rem #5933ab40;outline:0}.form-check{display:block;margin-bottom:.125rem;min-height:1.5rem;padding-left:1.5em}.form-check-input{-webkit-appearance:none;appearance:none;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:contain;border:1px solid var(--border-color);height:1em;margin-left:-1.5em;margin-top:.25em;-webkit-print-color-adjust:exact;print-color-adjust:exact;vertical-align:top;width:1em}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#5933ab80;box-shadow:0 0 0 .2rem #5933ab40;outline:0}.form-check-input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.form-check-label{color:var(--text-color);cursor:pointer}.alert{border:1px solid #0000;border-radius:var(--border-radius);margin-bottom:1rem;padding:.75rem 1.25rem;position:relative}.alert-heading{color:inherit}.alert-primary{background-color:#cfe2ff;border-color:#9ec5fe;color:#084298}.alert-secondary{background-color:#e2e3e5;border-color:#d3d6d8;color:#41464b}.alert-success{background-color:var(--success-light);border-color:#badbcc;color:#0f5132}.alert-warning{background-color:var(--warning-light);border-color:#ffecb5;color:#664d03}.alert-danger{background-color:var(--danger-light);border-color:#f5c2c7;color:#842029}.alert-info{background-color:var(--info-light);border-color:#b6effb;color:#055160}.alert-light{background-color:#fefefe;border-color:#fdfdfe;color:#636464}.alert-dark{background-color:#d3d3d4;border-color:#bcbebf;color:#141619}.badge{border-radius:var(--border-radius);color:#fff;display:inline-block;font-size:.75em;font-weight:700;line-height:1;padding:.35em .65em;text-align:center;vertical-align:initial;white-space:nowrap}.badge:empty{display:none}.badge-primary{background-color:var(--primary-color)}.badge-secondary{background-color:var(--muted-color)}.badge-success{background-color:var(--success-color)}.badge-warning{background-color:var(--warning-color);color:#212529}.badge-danger{background-color:var(--danger-color)}.badge-info{background-color:var(--info-color)}.badge-light{background-color:var(--light-color);color:#212529}.badge-dark{background-color:var(--dark-color)}.spinner-border{animation:spinner-border .75s linear infinite;border:.25em solid;border-radius:50%;border-right:.25em solid #0000;display:inline-block;height:2rem;vertical-align:text-bottom;width:2rem}.spinner-border-sm{border-width:.125em;height:1rem;width:1rem}@keyframes spinner-border{to{transform:rotate(1turn)}}.spinner-grow{animation:spinner-grow .75s linear infinite;background-color:currentColor;border-radius:50%;display:inline-block;height:2rem;opacity:0;vertical-align:text-bottom;width:2rem}.spinner-grow-sm{height:1rem;width:1rem}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.progress{background-color:var(--light-color);border-radius:var(--border-radius);font-size:.75rem;height:1rem}.progress,.progress-bar{display:flex;overflow:hidden}.progress-bar{background-color:var(--primary-color);color:#fff;flex-direction:column;justify-content:center;text-align:center;transition:width .6s ease;white-space:nowrap}.navbar{flex-wrap:nowrap;height:60px;padding:.5rem 1rem;position:relative}.navbar,.navbar .container{align-items:center;display:flex;justify-content:space-between}.navbar .container{width:100%}.navbar-nav-horizontal{display:flex;flex:1 1;justify-content:center}.navbar-right{align-items:center;display:flex;gap:.5rem}.navbar-text{margin:0;padding:.5rem 0}.navbar-brand{font-size:1.25rem;margin-right:1rem;padding-bottom:.3125rem;padding-top:.3125rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;flex-direction:row;gap:.5rem;list-style:none;margin-bottom:0;padding-left:0}.nav-link{color:var(--primary-color);display:block;padding:.5rem 1rem;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out}.nav-link:focus,.nav-link:hover{color:var(--primary-dark);text-decoration:none}.modal{display:none;height:100%;left:0;outline:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:0;width:100%;z-index:1055}.modal.show{display:block}.modal-dialog{margin:.5rem;pointer-events:none;position:relative;width:auto}.modal-content{background-clip:padding-box;background-color:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;outline:0;pointer-events:auto;position:relative;width:100%}.modal-backdrop{background-color:#000;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1050}.modal-backdrop.show{opacity:.5}.modal-header{align-items:flex-start;border-bottom:1px solid var(--border-color);border-top-left-radius:calc(var(--border-radius-lg) - 1px);border-top-right-radius:calc(var(--border-radius-lg) - 1px);display:flex;justify-content:space-between;padding:1rem}.modal-title{line-height:1.5;margin-bottom:0}.modal-body{flex:1 1 auto;padding:1rem;position:relative}.modal-footer{align-items:center;border-bottom-left-radius:calc(var(--border-radius-lg) - 1px);border-bottom-right-radius:calc(var(--border-radius-lg) - 1px);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:.75rem}@media (min-width:576px){.modal-dialog{margin:1.75rem auto;max-width:500px}}@media (min-width:992px){.modal-lg{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.hero-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0}.problem-card{transition:transform .2s ease-in-out}.problem-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-5px)}.chat-container{border:1px solid #dee2e6;border-radius:.375rem;height:400px;overflow-y:auto;padding:1rem}.chat-message{margin-bottom:1rem}.chat-message.user{text-align:right}.chat-message.bot{text-align:left}.chat-bubble{border-radius:1rem;display:inline-block;max-width:70%;padding:.5rem 1rem}.chat-bubble.user{background-color:#007bff;color:#fff}.chat-bubble.bot{background-color:#e9ecef;color:#333}.progress-circle{height:100px;width:100px}@media (max-width:768px){.hero-section{padding:2rem 0}.hero-section h1{font-size:2rem}.chat-bubble{max-width:85%}}
/*# sourceMappingURL=main.36b13a47.css.map*/