body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;padding:0}.App{min-height:100vh}:root{--mobile:480px;--tablet:768px;--desktop:1024px}@media (max-width:768px){.study-header .header-content{padding:1rem}.study-title{font-size:1.1rem}.study-stats{justify-content:space-between;width:100%}.stat-item,.study-stats{font-size:.85rem}.study-main{gap:1rem;grid-template-columns:1fr;padding:1rem}.question-card{padding:1.5rem 1rem}.question-text{font-size:1rem;line-height:1.5}.options-container{gap:.75rem}.option{font-size:.95rem;padding:1rem}.option-letter{font-size:.9rem;height:32px;min-width:32px}.chat-assistant{border-radius:16px 16px 0 0;bottom:0;box-shadow:0 -4px 20px #00000026;left:0;max-height:50vh;position:fixed;right:0}.chat-header{padding:.75rem 1rem}.chat-header h3{font-size:1rem}.chat-messages{max-height:30vh;padding:.75rem}.chat-input-container{padding:.75rem}.chat-input-wrapper textarea{font-size:.95rem;padding:.75rem}.btn-next,.btn-submit{font-size:1rem;padding:1rem;width:100%}.feedback-section{padding:1rem}.feedback-result h3{font-size:1.25rem}.feedback-ai,.feedback-explanation{padding:1rem}.dashboard-header .header-content{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.dashboard-logo{font-size:1.5rem}.user-info{gap:.5rem;justify-content:space-between;width:100%}.user-name{display:none}.btn-history,.btn-logout{font-size:.875rem;padding:.5rem .75rem}.dashboard-main{padding:1rem}.section-header h2{font-size:1.5rem}.section-header p{font-size:.95rem}.certifications-grid{gap:1rem;grid-template-columns:1fr}.cert-card{padding:1.5rem}.cert-name{font-size:1.25rem}.cert-description{font-size:.95rem}.cert-progress-summary{padding:.75rem}.progress-stats{align-items:flex-start;flex-direction:column;gap:.5rem}.cert-domains-progress{padding:.75rem}.domains-list{gap:.5rem}.domain-progress-item{padding:.75rem}.domain-progress-name{font-size:.8rem}.history-header .header-content{padding:1rem}.history-title{font-size:1.5rem}.history-subtitle{font-size:.9rem}.history-main{padding:1rem}.stats-overview{gap:.75rem;grid-template-columns:repeat(2,1fr)}.stat-card{padding:1rem}.stat-icon{font-size:1.75rem}.stat-info h3{font-size:1.5rem}.stat-info p{font-size:.85rem}.cert-integrated-section{margin-bottom:1.5rem;padding:1rem}.cert-integrated-title{font-size:1.25rem}.cert-integrated-stats{align-items:flex-start;flex-direction:column;gap:.5rem}.cert-stat{font-size:.85rem}.cert-domains-progress-section{padding:1rem}.subsection-title{font-size:1.1rem}.domains-progress-grid{gap:.75rem;grid-template-columns:1fr}.domain-progress-card{padding:1rem}.session-card{margin-bottom:.75rem}.session-header{align-items:flex-start;flex-direction:column;gap:.75rem;padding:1rem}.session-info h5{font-size:.95rem}.session-stats{font-size:.85rem}.session-summary{justify-content:space-between;width:100%}.domain-stats-section,.session-details{padding:1rem}.domain-stats-grid{gap:.75rem;grid-template-columns:1fr}.questions-list{gap:.75rem}.question-item{padding:1rem}.question-header-row{align-items:flex-start;flex-direction:column;gap:.5rem}.question-text{font-size:.95rem}.answer-info{align-items:flex-start;flex-direction:column;gap:.5rem}.explanation{font-size:.9rem}.login-container{padding:1rem}.login-card{margin:1rem;padding:2rem 1.5rem}.login-logo{font-size:2.5rem}.login-title{font-size:1.5rem}.login-subtitle{font-size:.95rem}.btn-login,.input-group input{font-size:1rem;padding:.875rem}body{-webkit-text-size-adjust:100%;font-size:16px}.btn,button{min-height:44px}input,select,textarea{font-size:16px!important}*{-webkit-overflow-scrolling:touch}[role=button],a,button{touch-action:manipulation}.btn-back{font-size:.875rem;padding:.5rem .875rem}}@media (max-width:480px){body{font-size:15px}.btn-back{font-size:.8rem;padding:.375rem .75rem}}@media (max-width:768px) and (orientation:landscape){.study-main{grid-template-columns:1fr 1fr}.chat-assistant{max-height:none;position:relative}.stats-overview{grid-template-columns:repeat(4,1fr)}}@media (min-width:769px) and (max-width:1024px){.study-main{grid-template-columns:1fr 350px;padding:2rem 1.5rem}.certifications-grid,.domains-progress-grid{grid-template-columns:repeat(2,1fr)}.stats-overview{grid-template-columns:repeat(4,1fr)}}:focus-visible{outline:2px solid #667eea;outline-offset:2px}@media (max-width:768px){.domain-stat-details,.session-stats,.stat-item{color:#4b5563}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:768px){.admin-header{flex-direction:column;gap:1rem;padding:1rem;text-align:center}.admin-header h1{font-size:1.25rem}.admin-tabs{-webkit-overflow-scrolling:touch;gap:.25rem;overflow-x:auto;padding:.5rem}.tab-btn{flex:none;padding:.75rem 1rem;white-space:nowrap}.admin-table,.tab-btn{font-size:.85rem}.admin-table td,.admin-table th{padding:.6rem .5rem}.cell-email{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width:480px){.admin-main{padding:.75rem}.summary-card{min-width:auto;padding:1rem}.summary-number{font-size:1.75rem}.summary-label{font-size:.8rem}.bar-label{font-size:.7rem;width:70px}}@media (max-width:768px){.exam-detail-content,.topic-detail-content{gap:1rem}.questions-list{max-height:50vh}.question-item-full{padding:.75rem}.question-text{font-size:.95rem;padding:.6rem .75rem}.option-row{font-size:.85rem;padding:.4rem .5rem}.exam-code{font-size:1.25rem;letter-spacing:.15em}.results-summary{gap:.5rem}.summary-stat{padding:.75rem 1rem}.stat-value{font-size:1.5rem}}@media (max-width:480px){.professor-nav{padding:.5rem}.nav-tab{font-size:.75rem;padding:.5rem .75rem}.exam-card,.topic-card{padding:1rem}.card-header h3{font-size:1rem}.card-description{font-size:.85rem}.card-stats{font-size:.75rem}.payment-modal,.wompi-checkout-modal{margin:.5rem;max-height:95vh;overflow-y:auto}.payment-header,.wompi-checkout-header{padding:1rem}.payment-header h2{font-size:1.1rem}.payment-content,.topic-preview,.wompi-checkout-body{padding:1rem}.topic-icon{font-size:2rem}.price-amount,.wompi-price{font-size:1.5rem}.payment-benefits li{font-size:.85rem}.free-limit-info{padding:.75rem}.limit-badge{font-size:.85rem}.features-header{padding:.75rem 1rem}.header-logo{font-size:1.25rem}.start-btn{font-size:.85rem;padding:.5rem 1rem}.features-hero{padding:2rem 1rem 1.5rem}.features-hero h1{font-size:1.5rem}.features-hero p{font-size:.9rem}.feature-info h2{font-size:1.25rem}.feature-subtitle{font-size:.95rem}.feature-desc{font-size:.9rem}.highlight-item{font-size:.85rem;padding:.5rem}.try-btn{font-size:1rem;padding:.75rem 1.5rem;width:100%}.mockup-screen{border-radius:12px}.comparison-section h2{font-size:1.25rem}.features-cta h2{font-size:1.5rem}.features-cta p{font-size:.95rem}.cta-btn{font-size:1rem;padding:.875rem 2rem;width:100%}}@media (max-width:768px){.exam-header{flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.exam-header-left h1{font-size:1rem}.timer-display{font-size:.95rem;padding:.5rem 1rem}.exam-main{padding:1rem}.exam-question-text{font-size:1rem;padding:1rem}.exam-option{font-size:.9rem;padding:1rem}.option-letter{font-size:.9rem;height:32px;width:32px}.exam-navigation{flex-direction:column;gap:1rem}.question-dots{justify-content:center;order:-1;width:100%}.dot{font-size:.75rem;height:30px;width:30px}.btn-nav{padding:.875rem;width:100%}}@media (max-width:480px){.exam-header{padding:.5rem .75rem}.exam-header-left h1{font-size:.9rem}.exam-topic-header{font-size:.75rem}.timer-display{font-size:.85rem;padding:.4rem .75rem}.progress-text{font-size:.8rem}.btn-exit{font-size:.75rem;padding:.4rem .75rem}.exam-warning{font-size:.8rem;padding:.5rem 1rem}.question-number-badge{font-size:.75rem;padding:.4rem .75rem}.exam-question-text{font-size:.95rem;padding:.75rem}.exam-option{gap:.75rem;padding:.75rem}.dot{font-size:.7rem;height:26px;width:26px}.student-exam-modal .modal-header h2{font-size:1rem}.exam-topic{font-size:.8rem}.question-counter{font-size:.8rem;padding:.4rem .75rem}.test-question{font-size:.95rem;padding:.75rem}.test-option{font-size:.85rem;padding:.6rem}.test-option .option-key{font-size:.85rem;height:28px;width:28px}.exam-submitted h2{font-size:1.25rem}.submitted-icon{font-size:3rem}.landing-container .header{padding:.75rem 1rem}.landing-container .logo-text{font-size:1.25rem}.landing-container .hero{padding:1.5rem 1rem}.landing-container .hero-title{font-size:1.5rem;line-height:1.3}.landing-container .hero-subtitle{font-size:.9rem;line-height:1.5}.landing-container .hero-stat{min-width:85px;padding:.6rem .75rem}.landing-container .stat-number{font-size:1.25rem}.landing-container .stat-label{font-size:.7rem}.landing-container .mockup-card{border-radius:12px}.landing-container .mockup-content{padding:1rem}.landing-container .mockup-timer{font-size:1rem;padding:.4rem}.landing-container .chat-bubble{font-size:.85rem;padding:.75rem}.landing-container .option{font-size:.8rem;padding:.6rem}.landing-container .section-title{font-size:1.35rem;margin-bottom:1.5rem}.landing-container .section-subtitle{font-size:.85rem;margin-bottom:1.5rem}.stenllia-meaning{padding:1.5rem 1rem}.stenllia-title{font-size:1.75rem}.stenllia-tagline{font-size:1rem}.stenllia-desc{font-size:.9rem}.landing-container .categories{padding:2rem 1rem}.landing-container .category-card{padding:1rem}.landing-container .category-icon{font-size:1.75rem}.landing-container .category-card h3{font-size:.9rem}.landing-container .category-card p{font-size:.75rem}.landing-container .features{padding:2rem 1rem}.landing-container .feature-card{padding:1rem}.landing-container .feature-icon{font-size:1.75rem}.landing-container .feature-card h3{font-size:1rem;margin-bottom:.5rem}.landing-container .feature-card p{font-size:.85rem}.landing-container .roles-section{padding:2rem 1rem}.landing-container .role-card{padding:1.25rem}.landing-container .role-icon-large{font-size:2.5rem}.landing-container .role-card h3{font-size:1.25rem}.landing-container .role-description{font-size:.85rem}.landing-container .mode-mini{padding:.75rem}.landing-container .mode-mini strong{font-size:.85rem}.landing-container .mode-mini li{font-size:.8rem}.landing-container .custom-content-section{padding:2rem 1rem}.landing-container .custom-content-text h2{font-size:1.35rem}.landing-container .custom-content-description{font-size:.9rem}.landing-container .custom-content-list li{font-size:.85rem}.landing-container .mini-step{font-size:.8rem;padding:.6rem .75rem}.landing-container .upload-mockup{padding:1.25rem}.landing-container .upload-icon{font-size:2.5rem}.landing-container .upload-text{font-size:.95rem}.landing-container .gen-q{font-size:.75rem;padding:.4rem .6rem}.landing-container .how-it-works{padding:2rem 1rem}.landing-container .step{padding:1rem}.landing-container .step-number{font-size:1rem;height:40px;width:40px}.landing-container .step h3{font-size:1rem}.landing-container .step p{font-size:.85rem}.landing-container .step-arrow{font-size:1.25rem}.landing-container .cta{padding:2rem 1rem}.landing-container .cta h2{font-size:1.35rem}.landing-container .cta p{font-size:.9rem}.landing-container .footer{padding:1.5rem 1rem 1rem}.landing-container .footer-section h4{font-size:1rem}.landing-container .footer-section a,.landing-container .footer-section p{font-size:.85rem}.landing-container .footer-bottom{font-size:.8rem}.features-page .features-header{padding:.6rem 1rem}.features-page .header-logo{font-size:1.1rem}.features-page .back-btn{font-size:.85rem}.features-page .start-btn{font-size:.8rem;padding:.5rem .75rem}.features-page .features-hero{padding:1.5rem 1rem 1rem}.features-page .features-hero h1{font-size:1.35rem}.features-page .features-hero p{font-size:.85rem}.features-page .role-selector{gap:.5rem;padding:.75rem}.features-page .role-btn{font-size:.9rem;gap:.5rem;padding:.75rem 1rem}.features-page .role-icon{font-size:1.25rem}.features-page .features-explorer{padding:1.5rem 1rem}.features-page .features-nav{gap:.35rem;margin-bottom:1.5rem}.features-page .feature-nav-btn{min-width:65px;padding:.5rem}.features-page .nav-icon{font-size:1rem}.features-page .nav-title{font-size:.65rem}.features-page .feature-badge{font-size:2rem}.features-page .feature-info h2{font-size:1.2rem}.features-page .feature-desc,.features-page .feature-subtitle{font-size:.85rem}.features-page .highlight-item{font-size:.8rem;padding:.5rem}.features-page .hl-icon{font-size:.9rem}.features-page .try-btn{font-size:.95rem;padding:.75rem 1.25rem}.features-page .mockup-screen{border-radius:10px}.features-page .mockup-header-bar{font-size:.8rem;padding:.5rem .75rem}.features-page .timer-badge{font-size:.75rem;padding:.2rem .5rem}.features-page .exam-progress{font-size:.75rem;padding:.75rem}.features-page .dot{height:8px;width:8px}.features-page .mockup-question{padding:1rem}.features-page .q-text{font-size:.85rem}.features-page .q-option{font-size:.8rem;padding:.6rem .75rem}.features-page .mockup-feedback{padding:.75rem 1rem}.features-page .feedback-correct{font-size:.85rem}.features-page .mockup-feedback p{font-size:.75rem}.features-page .comparison-section{padding:2rem 1rem}.features-page .comparison-section h2{font-size:1.2rem}.features-page .comp-cell{font-size:.8rem;padding:.6rem .5rem}.features-page .features-cta{padding:2rem 1rem}.features-page .features-cta h2{font-size:1.35rem}.features-page .features-cta p{font-size:.9rem}.features-page .cta-btn{font-size:.95rem;padding:.75rem 1.5rem}.features-page .features-footer{font-size:.8rem;padding:1rem}}@media (max-width:768px){.features-page a,.features-page button,.landing-container a,.landing-container button{align-items:center;display:inline-flex;justify-content:center;min-height:44px}.admin-tabs,.category-filters,.features-nav{-ms-overflow-style:none;scrollbar-width:none}.admin-tabs::-webkit-scrollbar,.category-filters::-webkit-scrollbar,.features-nav::-webkit-scrollbar{display:none}}@media (max-width:768px){.dashboard-container .help-container{position:static}.dashboard-container .btn-help{font-size:.85rem;padding:.5rem .75rem}.dashboard-container .help-tooltip{bottom:1rem;left:1rem;max-width:none;position:fixed;right:1rem;top:auto;width:auto}.professor-dashboard .help-container{position:static}.professor-dashboard .btn-help{font-size:.8rem;padding:.4rem .75rem}.professor-dashboard .help-tooltip{bottom:1rem;left:1rem;max-width:none;position:fixed;right:1rem;top:auto;width:auto}}@media (max-width:480px){.dashboard-container .btn-help,.professor-dashboard .btn-help{font-size:.75rem;padding:.4rem .6rem}.dashboard-container .user-info,.professor-dashboard .user-info{flex-wrap:wrap;justify-content:flex-end}.dashboard-container .btn-custom-topics,.dashboard-container .btn-history,.dashboard-container .btn-profile{font-size:.75rem;padding:.4rem .6rem}}@media (max-width:600px){.dashboard-container .header-content{padding:.75rem 1rem}.dashboard-container .dashboard-logo{font-size:1.25rem}.dashboard-container .user-info{gap:.35rem}.dashboard-container .user-name{display:none}.dashboard-container .btn-custom-topics,.dashboard-container .btn-help,.dashboard-container .btn-history,.dashboard-container .btn-logout,.dashboard-container .btn-profile{border-radius:6px;font-size:.7rem;padding:.4rem .5rem}.dashboard-container .btn-custom-topics{font-size:0}.dashboard-container .btn-custom-topics:before{content:"📚";font-size:1rem}.dashboard-container .btn-profile{font-size:0}.dashboard-container .btn-profile:before{content:"👤";font-size:1rem}.dashboard-container .btn-history{font-size:0}.dashboard-container .btn-history:before{content:"📊";font-size:1rem}.dashboard-container .btn-help{font-size:0}.dashboard-container .btn-help:before{content:"❓";font-size:1rem}.dashboard-container .btn-logout{font-size:0}.dashboard-container .btn-logout:before{content:"🚪";font-size:1rem}.professor-header{padding:.75rem 1rem}.professor-header .header-content{flex-direction:column;gap:.75rem}.logo-section{justify-content:space-between;width:100%}.dashboard-logo{font-size:1.25rem}.professor-badge{font-size:.75rem;padding:.2rem .5rem}.professor-dashboard .user-info{gap:.5rem;justify-content:flex-end;width:100%}.professor-dashboard .user-name{display:none}.professor-dashboard .btn-help,.professor-dashboard .btn-logout{font-size:.75rem;padding:.4rem .6rem}}@media (max-width:768px){.top-cards-grid{gap:1rem;grid-template-columns:1fr}.top-card{padding:1rem}.top-card-icon{font-size:2rem}.top-card-content h3{font-size:1rem}.top-card-content p{font-size:.85rem}.access-code-form{flex-direction:column;gap:.5rem}.access-code-input,.btn-access-code,.btn-custom-content{width:100%}}@media (max-width:480px){.section-divider{margin:1.5rem 0}.section-divider span{font-size:.8rem;padding:0 .75rem}}@media (max-width:768px){.filters-section{flex-direction:column;gap:1rem}.search-box{width:100%}.category-filters{-webkit-overflow-scrolling:touch;overflow-x:auto;padding-bottom:.5rem;width:100%}.filter-btn{flex-shrink:0;font-size:.8rem;padding:.5rem .75rem;white-space:nowrap}}@media (max-width:480px){.cert-card{padding:1rem}.cert-header{margin-bottom:.75rem}.cert-icon{font-size:1.5rem}.cert-difficulty{font-size:.7rem;padding:.2rem .5rem}.cert-name{font-size:1.1rem;margin-bottom:.5rem}.cert-description{font-size:.85rem;margin-bottom:.75rem}.cert-progress-compact{margin-bottom:.75rem;padding:.5rem}.progress-inline{align-items:flex-start;flex-direction:column;gap:.25rem}.progress-item{font-size:.8rem}.cert-topics{gap:.35rem;margin-bottom:.75rem}.topic-tag{font-size:.7rem;padding:.2rem .4rem}.cert-access-active,.cert-access-free{margin-bottom:.75rem;padding:.5rem}.access-badge,.free-badge{font-size:.75rem}.access-days,.access-price{font-size:.7rem}.btn-start{font-size:.9rem;padding:.75rem}.payment-result-container{padding:1rem}.payment-result-card{border-radius:16px;padding:1.5rem 1rem}.payment-icon{font-size:1.75rem;height:60px;width:60px}.payment-result-card h1{font-size:1.25rem}.payment-result-card p{font-size:.9rem}.payment-details{padding:.75rem}.payment-detail-row{font-size:.85rem}.payment-actions{flex-direction:column;gap:.75rem}.payment-actions button{padding:.875rem;width:100%}}@media (max-width:768px){.custom-topics-header .header-content{flex-direction:column;gap:1rem;padding:1rem}.custom-topics-header .header-left{width:100%}.custom-topics-header .header-right{justify-content:space-between;width:100%}.topics-grid{grid-template-columns:1fr}.topic-card{padding:1rem}}@media (max-width:480px){.create-topic-form{padding:1rem}.form-group label{font-size:.9rem}.form-group input,.form-group textarea{font-size:1rem;padding:.75rem}.upload-area{padding:1.5rem 1rem}.upload-icon{font-size:2rem}.upload-text{font-size:.9rem}}@media (max-width:768px){.custom-practice-header,.custom-practice-main{padding:1rem}.practice-question-card{padding:1.25rem 1rem}.practice-question-text{font-size:1rem}.practice-options{gap:.75rem}.practice-option{font-size:.9rem;padding:.875rem}}*{box-sizing:border-box;margin:0;padding:0}.landing-container{color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;overflow-x:hidden}.header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;padding:1.5rem 5%;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.logo-text{color:#1a1a1a;font-size:1.8rem;font-weight:700}.footer-logo{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.logo,.nav{align-items:center;display:flex}.nav{gap:2rem}.nav a{color:#4b5563;font-weight:500;text-decoration:none;transition:color .3s}.nav a:hover{color:#4f46e5}.nav .btn-secondary{background:#1e1b4b;border:2px solid #1e1b4b;color:#fff;padding:.6rem 1.25rem}.nav .btn-secondary:hover{background:#4f46e5;border-color:#4f46e5}.btn-outline,.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s}.btn-primary{background:linear-gradient(135deg,#1e1b4b,#4f46e5)}.btn-primary:hover{box-shadow:0 10px 25px #1e1b4b66}.btn-primary.large{font-size:1.1rem;padding:1rem 2.5rem}.btn-secondary{background:#0000;border:2px solid #1e1b4b;color:#1e1b4b}.btn-secondary:hover{background:#1e1b4b;color:#fff}.btn-outline{background:#fff;border:2px solid #1e1b4b;color:#1e1b4b}.btn-outline:hover{background:#eef2ff}.menu-toggle{background:#0000}@media (max-width:768px){.menu-toggle{display:block;z-index:1001}.nav{background:#fff;box-shadow:-5px 0 20px #0000001a;flex-direction:column;gap:1.5rem;height:100vh;max-width:300px;padding:5rem 2rem 2rem;position:fixed;right:-100%;top:0;transition:right .3s ease;width:80%}.nav.nav-open{right:0}.nav a{font-size:1.1rem;padding:.5rem 0}.nav .btn-secondary{margin-top:1rem;text-align:center;width:100%}}.hero{grid-gap:4rem;align-items:center;background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);display:grid;gap:4rem;grid-template-columns:1fr 1fr;padding:6rem 5%}.hero-title{color:#fff;font-size:3.5rem;line-height:1.2;margin-bottom:1.5rem}.highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#10b981,#34d399);-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:#c7d2fe;font-size:1.25rem;line-height:1.6;margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem;margin-bottom:2rem}.hero-stats{display:flex;flex-wrap:wrap;gap:1.5rem}.hero-stat{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #ffffff4d;border-radius:12px;display:flex;flex-direction:column;min-width:120px;padding:1rem 1.5rem}.stat-number{color:#fff;font-size:2rem;font-weight:700;text-shadow:0 2px 10px #ffffff4d}.stat-label{color:#ffffffe6;margin-top:.25rem;text-align:center}.hero-image{align-items:center;display:flex;justify-content:center}.mockup-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-width:500px;overflow:hidden;width:100%}.mockup-header{background:#f3f4f6;border-bottom:1px solid #e5e7eb;padding:1rem}.mockup-dots{display:flex;gap:.5rem}.mockup-dots span{background:#d1d5db;border-radius:50%;height:12px;width:12px}.mockup-content{padding:2rem}.chat-bubble{background:#f3f4f6;border-radius:12px;margin-bottom:1.5rem;padding:1rem 1.5rem}.chat-bubble.ai{background:linear-gradient(135deg,#1e1b4b,#4f46e5);color:#fff}.mockup-title{color:#6b7280;font-size:.8rem;font-weight:600}.mockup-timer{background:#eef2ff;border-radius:8px;color:#1e1b4b;font-size:1.25rem;font-weight:700;margin-bottom:1rem;padding:.5rem;text-align:center}.chat-options{display:flex;flex-direction:column;gap:.5rem}.option{border:2px solid #e5e7eb;border-radius:8px;font-size:.9rem;padding:.75rem}.option.selected,.option:hover{border-color:#4f46e5}.stenllia-meaning{background-color:#1e1b4b;background-position:50%;background-repeat:no-repeat;background-size:cover;padding:3rem 5%;position:relative;text-align:center}.stenllia-meaning:before{background:linear-gradient(135deg,#1e1b4bd9,#312e81d9);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.stenllia-content{margin:0 auto;max-width:800px;position:relative;z-index:2}.stenllia-title{font-size:3rem;font-weight:700;margin:0 0 1.5rem}.stenllia-word{color:#fff}.stenllia-ia{color:#34d399}.stenllia-explanation{align-items:center;display:flex;flex-direction:column;gap:.5rem}.stenllia-tagline{color:#c7d2fe;font-size:1.25rem;margin:0}.stenllia-desc{color:#34d399;font-size:1.1rem;font-weight:500;margin:0}@media (max-width:768px){.stenllia-meaning{padding:2rem 4%}.stenllia-title{font-size:2.25rem}.stenllia-explanation{flex-direction:column;gap:1rem}.stenllia-part{flex-wrap:wrap;justify-content:center}.stenllia-acronym{font-size:1.25rem}.stenllia-meanings span{font-size:.85rem}.stenllia-divider{display:none}}.roles-section{background:linear-gradient(135deg,#f0fdf4,#ecfdf5 50%,#d1fae5);padding:6rem 5%}.roles-section .section-title{color:#065f46}.roles-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr);margin:0 auto;max-width:1100px}.role-card{background:#fff;border:3px solid #0000;border-radius:20px;box-shadow:0 10px 40px #00000014;padding:2.5rem;transition:all .3s}.role-card.student{background:linear-gradient(135deg,#fff,#f0fdf4);border-color:#10b981}.role-card.professor{background:linear-gradient(135deg,#fff,#eef2ff);border-color:#6366f1}.role-card:hover{box-shadow:0 15px 50px #00000026;transform:translateY(-5px)}.role-icon-large{font-size:4rem;margin-bottom:1rem;text-align:center}.role-card h3{color:#1a1a1a;font-size:1.75rem;margin:0 0 .5rem;text-align:center}.role-description{color:#6b7280;font-size:1rem;margin:0 0 2rem;text-align:center}.role-features h4{color:#374151;font-size:1.1rem;margin:0 0 1rem;text-align:center}.role-features ul{list-style:none;margin:0;padding:0}.role-features li{color:#4b5563;font-size:.95rem;padding:.5rem 0}.mode-mini{background:#f9fafb;border-radius:12px;margin-bottom:1rem;padding:1rem}.mode-mini:last-child{margin-bottom:0}.mode-mini strong{color:#1f2937;display:block;font-size:1rem;margin-bottom:.5rem}.mode-mini ul{margin-top:.5rem}.mode-mini li{font-size:.875rem;padding:.25rem 0}.features{background:#fff;padding:6rem 5%}.section-title{color:#1a1a1a;font-size:2.5rem;margin-bottom:3rem;text-align:center}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:#f9fafb;border-radius:12px;padding:2rem;transition:all .3s}.feature-card:hover{box-shadow:0 10px 30px #0000001a;transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{color:#1a1a1a;font-size:1.5rem;margin-bottom:.75rem}.feature-card p{color:#6b7280;line-height:1.6}.feature-card.highlight-card{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;position:relative}.feature-card .new-badge{background:#10b981;border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;padding:.25rem .5rem;position:absolute;right:1rem;text-transform:uppercase;top:1rem}.how-it-works{background:linear-gradient(135deg,#f8fafc,#eef2ff);padding:6rem 5%}.steps{align-items:center;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:0 auto;max-width:1200px}.step{flex:1 1;min-width:250px;padding:2rem;text-align:center}.step-number{background:linear-gradient(135deg,#1e1b4b,#4f46e5);font-size:1.5rem;height:60px;margin:0 auto 1rem;width:60px}.step h3{color:#1a1a1a;font-size:1.5rem;margin-bottom:.75rem}.step p{color:#6b7280;line-height:1.6}.step-arrow{color:#4f46e5;font-size:2rem}.categories{background:linear-gradient(135deg,#eff6ff,#dbeafe 50%,#bfdbfe);padding:6rem 5%}.categories .section-title{color:#1e40af}.section-subtitle{color:#3b82f6;font-size:1.1rem;margin-bottom:3rem;margin-top:-1.5rem;text-align:center}.categories-grid{gap:1.5rem;justify-content:center;margin:0 auto 2rem;max-width:1000px}.category-card{background:#fff;border:2px solid #93c5fd;border-radius:16px;box-shadow:0 4px 15px #3b82f61a;max-width:300px;min-width:280px;padding:1.5rem;text-align:center;transition:all .3s;width:calc(33.333% - 1rem)}.category-card:hover{border-color:#3b82f6;box-shadow:0 10px 30px #3b82f633;transform:translateY(-5px)}.category-icon{font-size:2.5rem;line-height:1;margin-bottom:.5rem}.category-card h3{color:#1a1a1a;font-size:1.1rem;margin:0 0 .5rem}.category-card p{color:#6b7280;font-size:.9rem;line-height:1.4;margin:0}.categories-note{color:#1e40af;font-size:1rem;font-style:italic;margin-top:1rem;text-align:center}.cta{background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);color:#fff;padding:6rem 5%;text-align:center}.cta h2{font-size:2.5rem;margin-bottom:1rem}.cta p{font-size:1.25rem;margin-bottom:2rem;opacity:.9}.footer{background:#1a1a1a;color:#fff;padding:4rem 5% 2rem}.footer-content{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto 3rem;max-width:1200px}.footer-section h4{font-size:1.2rem;margin-bottom:1rem}.footer-section p{color:#9ca3af;line-height:1.6}.footer-section a{color:#9ca3af;display:block;margin-bottom:.5rem;text-decoration:none;transition:color .3s}.footer-section a:hover{color:#10b981}.footer-bottom{border-top:1px solid #374151;color:#9ca3af;padding-top:2rem;text-align:center}.footer-developer{color:#6b7280;font-size:.85rem;margin-top:.5rem}.footer-developer strong{color:#10b981}.contact-email,.contact-link{align-items:center;color:#9ca3af;display:flex;gap:.5rem;margin-bottom:.75rem;text-decoration:none;transition:color .3s}.contact-email:hover,.contact-link:hover{color:#10b981}.stelliontech-link{color:#10b981;font-weight:600;text-decoration:none;transition:color .3s}.stelliontech-link:hover{color:#34d399;text-decoration:underline}.menu-toggle{background:none;border:none;color:#1a1a1a;cursor:pointer;display:none;font-size:1.5rem;padding:.5rem}@media (max-width:1024px){.category-card{width:calc(50% - 1rem)}}@media (max-width:768px){.header{padding:1rem 4%}.logo-text{font-size:1.5rem}.menu-toggle{display:block}.nav{align-items:center;background:#1a1a2e!important;display:none!important;flex-direction:column;gap:1rem;height:100vh;justify-content:flex-start;left:0;overflow-y:auto;padding-top:100px;position:fixed;top:0;width:100vw;z-index:1001}.nav.nav-open{display:flex!important}.nav.nav-open a{background:#ffffff26;border-radius:10px;text-decoration:none}.nav.nav-open .btn-secondary,.nav.nav-open a{color:#fff!important;font-size:1rem;max-width:300px;padding:.875rem 1.5rem;text-align:center;width:85%}.nav.nav-open .btn-secondary{background:#10b981!important;border:none!important;border-radius:10px;margin-top:.5rem}.menu-toggle{color:#1a1a1a;position:relative;z-index:1002}.menu-toggle.menu-open{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#1a1a1a;padding:.5rem .75rem;position:fixed;right:4%;top:1rem;z-index:1002}.hero{gap:2rem;grid-template-columns:1fr;padding:2.5rem 4%}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem;margin-bottom:1.5rem}.hero-buttons{flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.hero-stats{gap:1rem;justify-content:center}.hero-stat{min-width:100px;padding:.75rem 1rem}.stat-number{font-size:1.5rem}.stat-label{font-size:.75rem}.btn-primary.large{font-size:1rem;padding:.875rem 2rem}.btn-outline,.btn-primary.large,.btn-secondary{text-align:center;width:100%}.mockup-card{max-width:100%}.mockup-content{padding:1.25rem}.chat-bubble{font-size:.9rem;padding:.875rem 1rem}.features{padding:3rem 4%}.features-grid{gap:1.5rem}.feature-card{padding:1.5rem}.feature-icon{font-size:2.5rem}.feature-card h3{font-size:1.25rem}.roles-section{padding:3rem 4%}.roles-grid{gap:1.5rem;grid-template-columns:1fr}.role-card{padding:2rem}.role-icon-large{font-size:3rem}.role-card h3{font-size:1.5rem}.role-description{font-size:.95rem;margin-bottom:1.5rem}.role-features h4{font-size:1rem}.mode-mini{padding:.875rem}.mode-mini strong{font-size:.95rem}.mode-mini li{font-size:.85rem}.how-it-works{padding:3rem 4%}.steps{flex-direction:column;gap:1rem}.step{min-width:auto;padding:1.5rem}.step-number{height:50px;width:50px}.step h3,.step-number{font-size:1.25rem}.step-arrow{font-size:1.5rem;transform:rotate(90deg)}.categories{padding:3rem 4%}.section-subtitle{font-size:.95rem;margin-bottom:2rem}.categories-grid{gap:1rem}.category-card{min-width:140px;padding:1.25rem;width:calc(50% - .5rem)}.category-icon{font-size:2rem}.category-card h3{font-size:1rem}.category-card p{font-size:.85rem}.categories-note{font-size:.9rem}.section-title{font-size:1.75rem;margin-bottom:2rem}.cta{padding:3rem 4%}.cta h2{font-size:1.75rem}.cta p{font-size:1rem}.footer{padding:2.5rem 4% 1.5rem}.footer-content{gap:2rem}}@media (max-width:480px){.header{padding:.75rem 3%}.logo-text{font-size:1.25rem}.hero{padding:2rem 3%}.hero-title{font-size:1.75rem}.hero-subtitle{font-size:.95rem}.certifications,.cta,.features,.how-it-works{padding:2.5rem 3%}.section-title{font-size:1.5rem}.feature-card{padding:1.25rem}.feature-icon{font-size:2rem}.feature-card h3{font-size:1.1rem}.feature-card p{font-size:.9rem}.step{padding:1rem}.step h3{font-size:1.1rem}.step p{font-size:.9rem}.category-card{max-width:100%;min-width:auto;width:100%}.category-card,.cert-card{padding:1.25rem}.cert-logo{font-size:1.5rem}.cert-card h4{font-size:1rem}.cta h2{font-size:1.5rem}.footer{padding:2rem 3% 1rem}}.footer-link{background:none;border:none;color:#9ca3af;cursor:pointer;display:block;font-size:inherit;margin-bottom:.5rem;padding:0;text-align:left;text-decoration:none;transition:color .3s}.footer-link:hover{color:#10b981}.custom-content-section{background:linear-gradient(135deg,#fef3c7,#fde68a 50%,#fcd34d);padding:5rem 5%}.custom-content-wrapper{grid-gap:4rem;align-items:center;display:grid;gap:4rem;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1200px}.feature-tag{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:700;margin-bottom:1rem;padding:.5rem 1rem}.custom-content-text h2{color:#78350f;font-size:2.5rem;margin:0 0 1rem}.custom-content-description{color:#92400e;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.custom-content-list{list-style:none;margin:0 0 2rem;padding:0}.custom-content-list li{color:#78350f;font-size:1.05rem;font-weight:500;padding:.5rem 0}.custom-content-steps{display:flex;flex-wrap:wrap;gap:1rem}.mini-step{background:#ffffffb3;border-radius:10px;color:#78350f;font-size:.9rem;font-weight:500;gap:.5rem;padding:.75rem 1rem}.mini-step,.mini-step-num{align-items:center;display:flex}.mini-step-num{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:50%;color:#fff;font-size:.8rem;font-weight:700;height:24px;justify-content:center;width:24px}.custom-content-visual{display:flex;justify-content:center}.upload-mockup{background:#fff;border:3px dashed #f59e0b;border-radius:20px;box-shadow:0 20px 50px #78350f33;max-width:320px;padding:2rem;text-align:center}.upload-icon{font-size:4rem;margin-bottom:1rem}.upload-text{color:#78350f;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.upload-formats{color:#92400e;font-size:.85rem;margin-bottom:1rem}.upload-arrow{animation:bounce 1.5s infinite;color:#f59e0b;font-size:2rem;margin:1rem 0}.generated-questions{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;border-radius:12px;padding:1rem}.gen-q{background:#fff;border-radius:6px;color:#065f46;font-size:.85rem;margin-bottom:.5rem;padding:.5rem .75rem;text-align:left}.gen-q-more{color:#10b981;font-size:.8rem;font-weight:600}.mode-mini.mode-new{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;position:relative}.mode-badge{background:#f59e0b;border-radius:8px;color:#fff;font-size:.65rem;font-weight:700;padding:.2rem .5rem;position:absolute;right:10px;top:-8px}@media (max-width:768px){.custom-content-section{padding:3rem 4%}.custom-content-wrapper{gap:2rem;grid-template-columns:1fr}.custom-content-text h2{font-size:1.75rem}.custom-content-description{font-size:1rem}.custom-content-list li{font-size:.95rem}.custom-content-steps{flex-direction:column}.mini-step{justify-content:flex-start}.upload-mockup{max-width:100%}}@media (max-width:480px){.custom-content-section{padding:2.5rem 3%}.feature-tag{font-size:.75rem}.custom-content-text h2{font-size:1.5rem}.upload-icon{font-size:3rem}}.login-container{background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);display:flex;flex-direction:column;min-height:100vh}.login-content{align-items:center;display:flex;flex:1 1;justify-content:center;padding:2rem}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:3rem;width:100%}.login-header{margin-bottom:2rem;text-align:center}.login-logo{color:#1a1a1a;font-size:3rem;font-weight:700;margin-bottom:.5rem}.login-subtitle{color:#6b7280;font-size:1rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-weight:600}.form-group input{-webkit-text-fill-color:#111827!important;background-color:#fff!important;border:2px solid #6b7280!important;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;color:#111827!important;font-size:1rem;opacity:1;padding:.875rem;transition:all .3s}.form-group input::placeholder{color:#9ca3af}.form-group input:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526,inset 0 1px 3px #0000000d;outline:none}.btn-login{background:linear-gradient(135deg,#1e1b4b,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:.5rem;padding:1rem;transition:all .3s}.btn-login:hover{box-shadow:0 10px 25px #1e1b4b66;transform:translateY(-2px)}.login-note{color:#9ca3af;font-size:.875rem;line-height:1.5;margin-top:1.5rem;text-align:center}.role-selector{grid-template-columns:repeat(2,1fr)}.role-option{background:#fff;gap:1rem;transition:all .3s}.role-option.selected{background:linear-gradient(135deg,#4f46e51a,#1e1b4b1a);box-shadow:0 0 0 3px #4f46e51a}.role-icon{flex-shrink:0}.role-info{flex:1 1}.role-info h4{margin:0 0 .25rem}.role-info p{margin:0}@media (max-width:768px){.login-content{padding:1rem}.login-card{border-radius:12px;padding:2rem 1.5rem}.login-logo{font-size:2.5rem}.login-subtitle{font-size:.9rem}.form-group label{font-size:.85rem}.form-group input{font-size:16px;padding:.75rem}.btn-login{font-size:1rem;padding:.875rem}.login-note{font-size:.8rem}}@media (max-width:480px){.login-content{padding:.75rem}.login-card{padding:1.5rem 1.25rem}.login-logo{font-size:2rem}.login-header{margin-bottom:1.5rem}.login-form{gap:1.25rem}.role-selector{grid-template-columns:1fr}.role-option{padding:.875rem}.role-icon{font-size:1.75rem}.role-info h4{font-size:.95rem}.role-info p{font-size:.75rem}}.register-link{color:#6b7280;margin-top:1rem;text-align:center}.register-link button{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:inherit;font-weight:600;text-decoration:underline}.btn-login:disabled{cursor:not-allowed;opacity:.7;transform:none}.app-footer{background:#1a1a1a;color:#fff;margin-top:auto;padding:2rem}.footer-content-app{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.footer-content-app p{color:#9ca3af;margin:0}.footer-links-app{display:flex;gap:2rem}.footer-link-btn,.footer-links-app a{background:none;border:none;color:#9ca3af;cursor:pointer;font-family:inherit;font-size:inherit;padding:0;text-decoration:none;transition:color .3s}.footer-link-btn:hover,.footer-links-app a:hover{color:#4338ca}@media (max-width:768px){.footer-content-app{flex-direction:column;gap:1rem;text-align:center}.footer-links-app{gap:1rem}}.register-container{align-items:center;background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);display:flex;justify-content:center;min-height:100vh;padding:2rem 1rem}.register-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:500px;overflow-y:auto;padding:2.5rem;width:100%}.verification-card{max-width:400px;text-align:center}.register-header{margin-bottom:2rem;text-align:center}.register-logo{font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.logo-highlight{color:#4f46e5}.register-header p{color:#6b7280;margin:0}.register-form{gap:1rem}.form-group,.register-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{color:#374151;font-weight:500}.form-group input,.form-group select{-webkit-text-fill-color:#111827!important;background-color:#fff!important;border:2px solid #6b7280!important;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;color:#111827!important;font-size:1rem;opacity:1;padding:.75rem;transition:all .3s}.form-group input::placeholder{color:#6b7280}.form-group input:focus,.form-group select:focus{background:#fff;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526,inset 0 1px 3px #0000000d;outline:none}.country-select{-webkit-text-fill-color:#111827!important;background-color:#fff!important;border:2px solid #6b7280!important;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;color:#111827!important;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.country-select:focus{border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e526,inset 0 1px 3px #0000000d}.phone-input-group{align-items:center;background-color:#fff!important;border:2px solid #6b7280!important;border-radius:8px;box-shadow:inset 0 1px 3px #0000001a;display:flex;overflow:hidden}.phone-input-group input{-webkit-text-fill-color:#111827!important;background-color:#fff!important;color:#111827!important}.phone-input-group:focus-within{border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e526,inset 0 1px 3px #0000000d}.phone-prefix{background:#f3f4f6;border-right:1px solid #e5e7eb;color:#374151;font-weight:500;min-width:60px;padding:.75rem;text-align:center}.phone-input-group input{border:none!important;flex:1 1;padding:.75rem}.phone-input-group input:focus{outline:none}.phone-input-group input:disabled{background:#f9fafb;cursor:not-allowed}.field-hint{margin-top:.25rem}.field-hint,.password-hint{color:#9ca3af;font-size:.8rem}.password-hint{margin:-.5rem 0 .5rem}.interests-grid{display:flex;flex-wrap:wrap;gap:.5rem}.interest-chip{align-items:center;background:#f3f4f6;border:2px solid #e5e7eb;border-radius:20px;cursor:pointer;display:flex;font-size:.85rem;gap:.5rem;padding:.6rem 1rem;transition:all .2s}.interest-chip:hover{background:#eef2ff;border-color:#4f46e5}.interest-chip.selected{background:#1e1b4b;border-color:#1e1b4b;color:#fff}.btn-register,.interest-icon{font-size:1rem}.btn-register{background:linear-gradient(135deg,#1e1b4b,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:.5rem;padding:1rem;transition:transform .2s,box-shadow .2s;width:100%}.btn-register:hover:not(:disabled){box-shadow:0 10px 25px #1e1b4b66;transform:translateY(-2px)}.btn-register:disabled{cursor:not-allowed;opacity:.7}.login-link{color:#6b7280;margin-top:1.5rem;text-align:center}.login-link button{background:none;border:none;color:#4f46e5;cursor:pointer;font-weight:600;text-decoration:underline}.verification-input{background:#fff!important;border:2px solid #9ca3af!important;box-shadow:inset 0 1px 3px #0000001a!important;font-size:1.5rem!important;font-weight:600;letter-spacing:.5rem;text-align:center}.verification-input:focus{border-color:#4f46e5!important}.btn-resend{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:.9rem;margin-top:1rem}.btn-resend:hover{text-decoration:underline}@media (max-width:600px){.register-card{margin:1rem;padding:1.5rem}.form-row{grid-template-columns:1fr}.register-logo{font-size:2rem}}.role-selector{grid-gap:1rem;display:grid;grid-template-columns:1fr 1fr}.role-option{align-items:center;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;padding:1rem;transition:all .2s}.role-option:hover{background:#eef2ff;border-color:#4f46e5}.role-option.selected{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-color:#4f46e5}.role-icon{font-size:2rem}.role-info h4{color:#1a1a1a;font-size:1rem;margin:0}.role-info p{color:#6b7280;font-size:.8rem;margin:.25rem 0 0}@media (max-width:500px){.role-selector{grid-template-columns:1fr}}.success-card{max-width:400px;text-align:center}.success-card h1{color:#10b981;font-size:1.8rem;margin:0 0 .5rem}.success-card p{color:#6b7280;margin:.5rem 0}.success-name{font-size:1.1rem;margin-top:1rem!important}.success-name strong{color:#1a1a1a}.redirect-message{background:linear-gradient(135deg,#f8f9ff,#eef2ff);border-radius:12px;margin-top:2rem;padding:1.5rem}.redirect-message p{margin:.5rem 0}.countdown{color:#4f46e5;font-size:2rem;font-weight:700;margin-top:.5rem!important}.spinner{height:40px;width:40px}.terms-checkbox{margin:1rem 0}.checkbox-container{align-items:flex-start;color:#374151;cursor:pointer;display:flex;font-size:.9rem;gap:.75rem}.checkbox-container input{display:none}.checkmark{align-items:center;border:2px solid #e5e7eb;border-radius:4px;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:2px;transition:all .2s;width:20px}.checkbox-container input:checked+.checkmark{background:#4f46e5;border-color:#4f46e5}.checkbox-container input:checked+.checkmark:after{color:#fff;content:"✓";font-size:.75rem;font-weight:700}.checkbox-text{line-height:1.4}.terms-link{background:none;border:none;color:#4f46e5;cursor:pointer;font-size:inherit;font-weight:600;padding:0;text-decoration:underline}.terms-link:hover{color:#4338ca}.terms-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.terms-modal{background:#fff;border-radius:16px;display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:100%}.terms-modal-header{align-items:center;background:linear-gradient(135deg,#1e1b4b,#4f46e5);border-bottom:1px solid #e5e7eb;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.terms-modal-header h2{font-size:1.25rem;margin:0}.close-modal{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:32px;justify-content:center;transition:background .2s;width:32px}.close-modal:hover{background:#ffffff4d}.terms-modal-content{flex:1 1;overflow-y:auto;padding:1.5rem}.terms-modal-content h3{color:#1e1b4b;font-size:1rem;margin:1.5rem 0 .5rem}.terms-modal-content h3:first-child{margin-top:0}.terms-modal-content p{color:#4b5563;font-size:.9rem;line-height:1.6;margin:0 0 .75rem}.terms-modal-content ul{color:#4b5563;font-size:.9rem;line-height:1.6;margin:.5rem 0;padding-left:1.25rem}.terms-modal-content li{margin-bottom:.5rem}.important-title{color:#92400e!important}.important-box{background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;margin:.5rem 0 1rem;padding:1rem}.important-box li,.important-box p,.important-box ul{color:#78350f}.terms-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:1rem 1.5rem}.btn-accept-terms{background:linear-gradient(135deg,#1e1b4b,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem;transition:all .2s;width:100%}.btn-accept-terms:hover{box-shadow:0 5px 15px #1e1b4b4d;transform:translateY(-2px)}@media (max-width:600px){.terms-modal{border-radius:12px;max-height:90vh}.terms-modal-header{padding:1rem}.terms-modal-header h2{font-size:1.1rem}.terms-modal-content{padding:1rem}.terms-modal-content h3{font-size:.95rem}.terms-modal-content p,.terms-modal-content ul{font-size:.85rem}}.dashboard-container{background:#f9fafb;min-height:calc(100vh - 120px)}.dashboard-container .dashboard-header{background:#fff;box-shadow:0 1px 3px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:100}.dashboard-container .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.dashboard-container .dashboard-logo{color:#1a1a1a;font-size:2rem;font-weight:700;margin:0}.dashboard-container .logo-highlight{color:#4338ca}.dashboard-container .user-info{align-items:center;display:flex;gap:1.5rem}.dashboard-container .user-name{color:#374151;font-weight:600}.dashboard-container .btn-profile{background:#0000;border:2px solid #4338ca;border-radius:8px;color:#4338ca;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.dashboard-container .btn-profile:hover{background:#4338ca;color:#fff}.dashboard-container .btn-history{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.dashboard-container .btn-history:hover{box-shadow:0 5px 15px #1e1b4b66;transform:translateY(-2px)}.dashboard-container .btn-custom-topics{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.dashboard-container .btn-custom-topics:hover{box-shadow:0 5px 15px #34d39966;transform:translateY(-2px)}.dashboard-container .help-container{position:relative}.dashboard-container .btn-help{align-items:center;background:#0000;border:2px solid #f59e0b;border-radius:8px;color:#f59e0b;cursor:pointer;display:inline-flex;font-weight:600;gap:.25rem;padding:.5rem 1.25rem;text-decoration:none;transition:all .3s}.dashboard-container .btn-help:hover{background:#f59e0b;color:#fff}.dashboard-container .help-tooltip{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;margin-top:.5rem;opacity:0;padding:1rem;position:absolute;right:0;text-align:left;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden;width:280px;z-index:1000}.dashboard-container .help-container:hover .help-tooltip{opacity:1;transform:translateY(0);visibility:visible}.dashboard-container .help-tooltip p{color:#374151;font-size:.875rem;margin:0 0 .5rem}.dashboard-container .help-tooltip p:last-child{margin-bottom:0}.dashboard-container .help-tooltip a{color:#4338ca;font-weight:600;text-decoration:none}.dashboard-container .help-tooltip a:hover{text-decoration:underline}.dashboard-container .help-tooltip .help-response{color:#10b981;font-size:.8rem;margin-top:.75rem}.dashboard-container .btn-logout{background:#0000;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.dashboard-container .btn-logout:hover{border-color:#4f46e5;color:#4f46e5}.dashboard-main{margin:0 auto;max-width:1400px;padding:3rem 2rem}.top-cards-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.top-card{align-items:flex-start;border-radius:12px;display:flex;gap:1rem;padding:1.25rem}.top-card-icon{flex-shrink:0;font-size:2rem}.top-card-content{flex:1 1}.top-card-content h3{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.top-card-content p{color:#fffc;font-size:.85rem;line-height:1.4;margin:0 0 .75rem}.access-code-card{background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);box-shadow:0 4px 15px #1e1b4b4d}.custom-content-card{background:linear-gradient(135deg,#065f46,#059669 50%,#10b981);box-shadow:0 4px 15px #0596694d}.btn-custom-content{align-items:center;background:#fff;border:none;border-radius:8px;color:#065f46;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .3s}.btn-custom-content:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.coming-soon-badge{background:#f59e0b;border-radius:8px;color:#fff;font-size:.65rem;font-weight:600;padding:.15rem .4rem}@media (max-width:768px){.top-cards-grid{grid-template-columns:1fr}}.access-code-form{align-items:center;display:flex;gap:.5rem}.access-code-input{background:#fffffff2;border:2px solid #ffffff4d;border-radius:6px;color:#1a1a1a;font-size:.9rem;font-weight:700;letter-spacing:.05em;padding:.5rem .75rem;text-align:center;transition:all .3s;width:100px}.access-code-input:focus{background:#fff;border-color:#fff;box-shadow:0 0 0 4px #fff3;outline:none}.access-code-input::placeholder{color:#9ca3af;font-weight:500;letter-spacing:normal}.btn-access-code{background:#fff;border:none;border-radius:6px;color:#1e1b4b;cursor:pointer;font-size:.85rem;font-weight:700;padding:.5rem 1rem;transition:all .3s;white-space:nowrap}.btn-access-code:hover:not(:disabled){box-shadow:0 8px 20px #0003;transform:translateY(-2px)}.btn-access-code:disabled{cursor:not-allowed;opacity:.7}.code-error{background:#ef44444d;border-radius:6px;color:#fecaca;font-size:.8rem;font-weight:500;margin-top:.5rem;padding:.4rem .75rem}.section-divider{margin:3rem 0;position:relative;text-align:center}.section-divider:after,.section-divider:before{background:#e5e7eb;content:"";height:1px;position:absolute;top:50%;width:40%}.section-divider:before{left:0}.section-divider:after{right:0}.section-divider span{background:#f9fafb;color:#6b7280;font-size:.95rem;font-weight:600;padding:0 1.5rem}.dashboard-container .section-header{margin-bottom:1.5rem}.dashboard-container .section-header h2{color:#1a1a1a;font-size:2rem;font-weight:700;margin-bottom:.5rem}.dashboard-container .section-header p{color:#374151;font-size:1.1rem}.filters-section{margin-bottom:2rem}.search-box{margin-bottom:1rem;position:relative}.search-icon{font-size:1.1rem;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.search-input{border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;font-size:1rem;padding:1rem 3rem;transition:all .3s;width:100%}.search-input:focus{border-color:#4338ca;box-shadow:0 0 0 3px #4338ca1a;outline:none}.search-input::placeholder{color:#94a3b8}.clear-search{align-items:center;background:#e2e8f0;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;font-size:.8rem;height:24px;justify-content:center;position:absolute;right:1rem;top:50%;transform:translateY(-50%);transition:all .2s;width:24px}.clear-search:hover{background:#cbd5e1;color:#334155}.category-filters{display:flex;flex-wrap:wrap;gap:.5rem}.filter-btn{background:#fff;border:2px solid #e2e8f0;border-radius:20px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.filter-btn:hover:not(:disabled){border-color:#4338ca;color:#4338ca}.filter-btn.active{background:linear-gradient(135deg,#312e81,#4338ca);border-color:#0000;color:#fff}.filter-btn:disabled{cursor:not-allowed;opacity:.5}.results-info{color:#64748b;font-size:.95rem;justify-content:space-between;margin-bottom:1.5rem}.results-info,.results-left{align-items:center;display:flex}.results-left{flex-wrap:wrap;gap:.75rem}.results-count{font-weight:500}.interests-display{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.interests-label{color:#94a3b8;font-size:.9rem}.interest-tag{border-radius:12px;font-size:.8rem;padding:.25rem .625rem;text-transform:capitalize}.btn-show-all{background:#0000;border:2px solid #4338ca;border-radius:8px;color:#4338ca;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-show-all:hover{background:#4338ca;color:#fff}.error-state,.loading-state{padding:4rem 2rem;text-align:center}.spinner{border-top-color:#4f46e5}.error-state p,.loading-state p{color:#6b7280;font-size:1.1rem}.btn-retry{background:#4f46e5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s}.btn-retry:hover{background:#4338ca}.certifications-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.cert-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;padding:2rem;transition:all .3s}.cert-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.cert-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.cert-icon{font-size:2.5rem}.cert-difficulty{border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:.375rem .75rem;text-transform:uppercase}.cert-name{color:#1a1a1a;font-size:1.5rem;margin-bottom:.75rem}.cert-description{color:#6b7280;font-size:.9rem;line-height:1.6;margin-bottom:1rem}.cert-topics{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.topic-tag{background:#f3f4f6;border-radius:6px;color:#374151;font-size:.875rem;font-weight:500;padding:.375rem .75rem}.topic-tag.more{background:#4f46e5;color:#fff}.cert-footer{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;margin-top:auto;padding-top:1rem}.btn-start{background:linear-gradient(135deg,#1e1b4b,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s;width:100%}.btn-start:hover{box-shadow:0 5px 15px #1e1b4b66;transform:translateY(-2px)}@media (max-width:768px){.header-content{flex-wrap:wrap;gap:.75rem;padding:1rem}.dashboard-logo{font-size:1.5rem}.user-info{gap:.5rem}.dashboard-container .user-name{display:none}.dashboard-container .btn-history,.dashboard-container .btn-logout{font-size:.875rem;padding:.5rem .75rem}.dashboard-main{padding:1.5rem 1rem}.access-code-section{margin-bottom:2rem}.access-code-card{padding:1.5rem}.access-code-header{flex-direction:column;gap:1rem;margin-bottom:1.25rem;text-align:center}.access-code-icon{font-size:2.5rem}.access-code-info h3{font-size:1.25rem}.access-code-info p{font-size:.9rem}.access-code-form{flex-direction:column;gap:.75rem}.access-code-input{font-size:1.1rem;padding:.875rem 1rem}.btn-access-code{font-size:1rem;padding:.875rem 1.5rem;width:100%}.section-divider{margin:2rem 0}.section-divider:after,.section-divider:before{width:35%}.section-divider span{font-size:.875rem;padding:0 1rem}.dashboard-container .section-header{margin-bottom:1rem}.dashboard-container .section-header h2{font-size:1.5rem}.dashboard-container .section-header p{font-size:.9rem}.filters-section{margin-bottom:1.5rem}.search-input{font-size:16px;padding:.875rem 2.75rem}.search-icon{font-size:1rem;left:.875rem}.clear-search{right:.875rem}.category-filters{-webkit-overflow-scrolling:touch;gap:.375rem;overflow-x:auto;padding-bottom:.5rem}.filter-btn{font-size:.85rem;padding:.375rem .75rem}.results-info{align-items:flex-start;flex-direction:column;gap:.75rem;margin-bottom:1rem}.btn-show-all{text-align:center;width:100%}.certifications-grid{gap:1.5rem;grid-template-columns:1fr}.cert-card{padding:1.25rem}.cert-icon{font-size:2rem}.cert-difficulty{font-size:.7rem;padding:.25rem .5rem}.cert-name{font-size:1.25rem}.cert-description{font-size:.875rem}.cert-footer{padding-top:.75rem}.btn-start{font-size:.9rem;padding:.625rem 1rem}}.cert-progress-compact{background:#f9fafb;border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem}.progress-inline{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.progress-item{color:#6b7280;font-size:.875rem;font-weight:500}.progress-item.accuracy{font-weight:700}.cert-domains-compact{background:#f9fafb;border-radius:6px;margin-bottom:1rem;max-height:200px;overflow-y:auto;padding:.5rem .75rem}.domains-compact-title{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.domains-compact-list{display:flex;flex-direction:column;gap:.375rem}.domain-compact-item{align-items:center;display:flex;gap:.5rem;padding:.25rem 0}.domain-compact-icon{flex-shrink:0;font-size:.875rem}.domain-compact-name{color:#374151;flex:1 1;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.domain-compact-accuracy{flex-shrink:0;font-size:.8rem;font-weight:700}.cert-domains-compact::-webkit-scrollbar{width:4px}.cert-domains-compact::-webkit-scrollbar-track{background:#0000}.cert-domains-compact::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.cert-domains-compact::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (max-width:768px){.cert-progress-compact{margin-bottom:.5rem;padding:.5rem}.progress-inline{align-items:flex-start;flex-direction:column;gap:.25rem}.progress-item{font-size:.8rem}.cert-domains-compact{margin-bottom:.75rem;max-height:150px;padding:.5rem}.domains-compact-title{font-size:.7rem;margin-bottom:.375rem}.domains-compact-list{gap:.25rem}.domain-compact-item{gap:.375rem;padding:.125rem 0}.domain-compact-accuracy,.domain-compact-icon,.domain-compact-name{font-size:.75rem}.cert-topics{gap:.375rem;margin-bottom:1rem}.topic-tag{font-size:.8rem;padding:.25rem .5rem}}@media (max-width:480px){.dashboard-container .header-content{padding:.75rem}.dashboard-container .dashboard-logo{font-size:1.25rem}.dashboard-container .user-info{flex-wrap:wrap;gap:.375rem;justify-content:flex-end;width:100%}.dashboard-container .btn-custom-topics,.dashboard-container .btn-history,.dashboard-container .btn-logout,.dashboard-container .btn-profile{font-size:.75rem;padding:.375rem .625rem}.dashboard-main{padding:1rem .75rem}.dashboard-container .section-header{margin-bottom:1rem}.dashboard-container .section-header h2{font-size:1.25rem}.dashboard-container .section-header p{font-size:.85rem}.certifications-grid{gap:1rem}.cert-card{border-radius:8px;padding:1rem}.cert-header{margin-bottom:.75rem}.cert-icon{font-size:1.75rem}.cert-difficulty{font-size:.65rem;padding:.25rem .5rem}.cert-name{font-size:1.1rem;margin-bottom:.5rem}.cert-description{font-size:.8rem;margin-bottom:.75rem}.cert-progress-compact{margin-bottom:.5rem;padding:.375rem .5rem}.progress-item{font-size:.75rem}.cert-domains-compact{margin-bottom:.5rem;max-height:120px;padding:.375rem .5rem}.domains-compact-title{font-size:.65rem}.domain-compact-item{gap:.25rem}.domain-compact-accuracy,.domain-compact-icon,.domain-compact-name{font-size:.7rem}.cert-topics{gap:.25rem;margin-bottom:.75rem}.topic-tag{font-size:.75rem;padding:.25rem .5rem}.cert-footer{padding-top:.5rem}.btn-start{font-size:.85rem;padding:.5rem .75rem}}.cert-access-active{align-items:center;background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.cert-access-active .access-badge{color:#065f46;font-size:.8rem;font-weight:600}.cert-access-active .access-days{color:#047857;font-size:.75rem;font-weight:500}.cert-access-free{align-items:center;background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.cert-access-free .free-badge{color:#1e40af;font-size:.8rem;font-weight:600}.cert-access-free .free-badge.exhausted{color:#dc2626}.cert-access-free .access-price{color:#3b82f6;font-size:.75rem;font-weight:500}@media (max-width:480px){.cert-access-active,.cert-access-free{flex-direction:column;gap:.25rem;text-align:center}}.btn-start.btn-unlock{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-start.btn-unlock:hover{box-shadow:0 5px 15px #f59e0b66}.student-exam-modal{background:linear-gradient(135deg,#1e1b4b,#312e81)}.student-exam-modal .modal-header{align-items:flex-start;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}.student-exam-modal .modal-header h2{color:#fff;font-size:1.25rem;margin:0 0 .25rem}.exam-topic{color:#a5b4fc;font-size:.85rem}.question-counter{background:#6366f133;border-radius:20px;font-weight:600;padding:.5rem 1rem}.test-question{background:#6366f11a;border-left:4px solid #6366f1;border-radius:8px;padding:1rem}.test-option{font-size:1rem}.test-option:hover{border-color:#fff3}.test-option .option-key{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;flex-shrink:0;font-weight:700;height:36px;justify-content:center;width:36px}.btn-submit{background:linear-gradient(135deg,#10b981,#059669)!important}.btn-close-exam{background:#0000;border:1px solid #ef44444d;border-radius:8px;color:#f87171;cursor:pointer;display:block;font-size:.9rem;margin-top:1rem;padding:.75rem;transition:all .2s;width:100%}.btn-close-exam:hover{background:#ef44441a}.exam-submitted{padding:2rem;text-align:center}.submitted-icon{font-size:4rem;margin-bottom:1rem}.exam-submitted h2{color:#34d399;margin:0 0 .5rem}.exam-submitted p{color:#c7d2fe;margin:.5rem 0}.submitted-note{margin-top:1rem!important}.exam-submitted .btn-primary{margin-top:1.5rem}@media (max-width:768px){.student-exam-modal .modal-header{flex-direction:column;gap:.75rem}.test-question{font-size:1rem;padding:.75rem}.test-option{font-size:.9rem;padding:.75rem}.test-option .option-key{height:32px;width:32px}.test-nav{flex-direction:column}.test-nav button{width:100%}}.exam-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.exam-header-left h1{color:#e2e8f0;font-size:1.25rem;margin:0 0 .25rem;text-shadow:0 1px 2px #0000004d}.exam-header-center{align-items:center;display:flex}.timer-icon{font-size:1.2rem}.btn-exit{transition:all .2s}.btn-exit:hover{background:#ef44444d}.exam-question-text{background:#1e293bcc;border-left:4px solid #6366f1;border-radius:12px;color:#f1f5f9;font-size:1.25rem;line-height:1.6;margin-bottom:2rem;padding:1.5rem;text-shadow:0 1px 2px #0003}.exam-option{align-items:center;background:#1e293b99;border:2px solid #ffffff26;border-radius:12px;color:#e2e8f0;cursor:pointer;display:flex;font-size:1rem;gap:1rem;padding:1.25rem;text-align:left;transition:all .2s}.exam-option:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.exam-option.selected{background:#6366f133;box-shadow:0 0 20px #6366f14d}.option-letter{font-size:1.1rem}.option-text{line-height:1.5}.btn-next:hover,.btn-prev:hover{background:#6366f14d;transform:translateY(-1px)}.btn-finish:hover{box-shadow:0 4px 20px #10b98166;transform:translateY(-2px)}.dot{transition:all .2s}.dot:hover{border-color:#fff6}.dot.answered.current{background:#34d399;color:#064e3b}.confirm-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.confirm-dialog h3{font-size:1.25rem}.confirm-dialog p{line-height:1.5}.confirm-note{color:#6b7280!important;font-size:.9rem}.confirm-buttons button{transition:all .2s}.btn-danger:hover{box-shadow:0 4px 15px #ef444466;transform:translateY(-1px)}.submitted-stats{margin-top:1.5rem!important}.submitted-note{color:#6b7280!important;font-size:.9rem}.btn-primary:hover{box-shadow:0 4px 20px #6366f166;transform:translateY(-2px)}@media (max-width:768px){.exam-header{flex-wrap:wrap;gap:.75rem;padding:1rem}.exam-header-left h1{font-size:1.1rem}.timer-display{font-size:1rem;padding:.5rem 1rem}.exam-main{padding:1rem}.exam-question-text{font-size:1.1rem;padding:1rem}.exam-option{font-size:.95rem;padding:1rem}.option-letter{height:36px;width:36px}.exam-navigation{flex-direction:column;gap:1rem}.btn-nav{width:100%}.question-dots{max-width:100%}.dot{font-size:.8rem;height:32px;width:32px}.confirm-dialog{padding:1.5rem}.confirm-buttons{flex-direction:column}.confirm-buttons button{width:100%}}@media (max-width:480px){.exam-header{padding:.75rem}.exam-warning{font-size:.8rem;padding:.5rem 1rem}.exam-main{padding:.75rem}.exam-question-text{font-size:1rem}.exam-option{padding:.75rem}}.exam-fullscreen{background:linear-gradient(135deg,#0f172a,#1e293b);display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;width:100vw;z-index:10000}.exam-header{align-items:center;background:#0000004d;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between}.exam-fullscreen .exam-header-left h1{color:#fff!important;font-size:1.25rem;margin:0 0 .25rem;text-shadow:0 1px 3px #0000004d}.exam-topic-header{color:#a5b4fc;font-size:.85rem}.timer-display{align-items:center;background:#0006;border-radius:25px;display:flex;font-size:1.1rem;font-weight:700;gap:.5rem;padding:.75rem 1.5rem}.exam-header-right{align-items:center;display:flex;gap:1rem}.progress-text{color:#a5b4fc;font-size:.9rem}.btn-exit{background:#ef444433;border:1px solid #ef444466;border-radius:6px;color:#f87171;font-size:.85rem;padding:.5rem 1rem}.exam-warning{background:#f59e0b26;border:1px solid #f59e0b4d;color:#fbbf24;font-size:.9rem;font-weight:500;padding:.75rem 2rem;text-align:center}.exam-main{display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.exam-question-container{flex:1 1;margin:0 auto;max-width:800px;width:100%}.question-number-badge{background:#6366f133;border-radius:20px;color:#a5b4fc;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:1rem;padding:.5rem 1rem}.exam-fullscreen .exam-question-text{background:#1e3a8a66;border-left:4px solid #6366f1;border-radius:12px;color:#fff!important;font-size:1.25rem;line-height:1.6;margin-bottom:2rem;padding:1.5rem;text-shadow:0 1px 2px #0003}.exam-options{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.exam-fullscreen .exam-option{align-items:center;background:#1e293bcc;border:2px solid #fff3;border-radius:12px;color:#fff!important;cursor:pointer;display:flex;font-size:1rem;gap:1rem;padding:1.25rem;text-align:left;transition:all .2s}.exam-option:hover{background:#47556999;border-color:#ffffff40}.exam-option.selected{background:#6366f140;border-color:#6366f1}.option-letter{background:#ffffff1a;border-radius:10px;color:#e2e8f0}.exam-option.selected .option-letter{background:#6366f1;color:#fff}.exam-fullscreen .option-text{color:#fff!important;flex:1 1;line-height:1.5}.exam-navigation{align-items:center;border-top:1px solid #ffffff1a;display:flex;gap:2rem;justify-content:space-between;margin-top:auto;padding:1.5rem 0}.btn-nav{font-size:1rem;padding:.75rem 2rem}.btn-next,.btn-prev{background:#6366f133;border:1px solid #6366f14d;color:#a5b4fc}.btn-finish{background:linear-gradient(135deg,#10b981,#059669);border:none;color:#fff}.question-dots{flex-wrap:wrap;gap:.5rem}.dot,.question-dots{display:flex;justify-content:center}.dot{align-items:center;background:#0000;border:2px solid #fff3;color:#a5b4fc;cursor:pointer;font-size:.85rem;font-weight:600;height:36px;width:36px}.dot.current{background:#6366f133;border-color:#6366f1;color:#fff}.dot.answered{background:#34d39933;border-color:#34d399;color:#34d399}.confirm-overlay{background:#000c;height:100%;width:100%;z-index:10001}.confirm-dialog{background:linear-gradient(135deg,#1e293b,#334155);border:1px solid #ffffff1a;border-radius:16px;max-width:450px;padding:2rem;text-align:center;width:90%}.confirm-dialog h3{color:#fff;margin:0 0 1rem}.confirm-dialog p{color:#c7d2fe;margin:.5rem 0}.confirm-warning{color:#fbbf24!important;font-weight:600}.confirm-buttons{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.confirm-buttons button{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:.75rem 1.5rem}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5)}.exam-submitted-fullscreen{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:2rem;text-align:center}.exam-submitted-fullscreen .submitted-icon{font-size:5rem;margin-bottom:1.5rem}.exam-submitted-fullscreen h2{color:#34d399;font-size:2rem;margin:0 0 1rem}.exam-submitted-fullscreen p{color:#c7d2fe;font-size:1.1rem;margin:.75rem 0}.submitted-stats{color:#a5b4fc!important;font-weight:600}.submitted-warning{background:#f59e0b1a;border:1px solid #f59e0b4d;border-radius:8px;padding:.75rem 1rem}.btn-large{margin-top:2rem;padding:1rem 2rem}@media (max-width:768px){.exam-header{flex-wrap:wrap;gap:.75rem;padding:1rem}.exam-main{padding:1rem}.exam-question-text{font-size:1.1rem;padding:1rem}.exam-option{padding:1rem}.exam-navigation{flex-direction:column;gap:1rem}.btn-nav{width:100%}.dot{font-size:.8rem;height:32px;width:32px}.exam-fullscreen .exam-header{flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.exam-fullscreen .exam-header-left{flex:1 1;min-width:60%;order:1}.exam-fullscreen .exam-header-left h1{font-size:1rem}.exam-fullscreen .exam-topic-header{font-size:.75rem}.exam-fullscreen .exam-header-center{justify-content:center;order:3;width:100%}.exam-fullscreen .timer-display{font-size:1rem;padding:.5rem 1rem}.exam-fullscreen .exam-header-right{gap:.5rem;order:2}.exam-fullscreen .progress-text{font-size:.8rem}.exam-fullscreen .btn-exit{font-size:.8rem;padding:.4rem .75rem}.exam-fullscreen .exam-warning{font-size:.8rem;padding:.5rem 1rem}.exam-fullscreen .exam-main{padding:1rem}.exam-fullscreen .question-number-badge{font-size:.8rem;padding:.4rem .75rem}.exam-fullscreen .exam-question-text{font-size:1rem;margin-bottom:1.5rem;padding:1rem}.exam-fullscreen .exam-options{gap:.75rem}.exam-fullscreen .exam-option{font-size:.95rem;padding:1rem}.exam-fullscreen .option-letter{font-size:.9rem;height:35px;width:35px}.exam-fullscreen .exam-navigation{flex-direction:column;gap:1rem;padding:1rem 0}.exam-fullscreen .btn-nav{padding:.75rem 1rem;width:100%}.exam-fullscreen .question-dots{border-bottom:1px solid #ffffff1a;justify-content:center;order:-1;padding-bottom:1rem;width:100%}.exam-fullscreen .dot{font-size:.75rem;height:32px;width:32px}.exam-fullscreen .confirm-dialog{margin:1rem;padding:1.5rem}.exam-fullscreen .confirm-icon{font-size:2.5rem}.exam-fullscreen .confirm-dialog h3{font-size:1.1rem}.exam-fullscreen .confirm-dialog p{font-size:.9rem}.exam-fullscreen .confirm-buttons{flex-direction:column;gap:.75rem}.exam-fullscreen .confirm-buttons button{width:100%}.exam-fullscreen .exam-submitted-fullscreen h2{font-size:1.5rem}.exam-fullscreen .exam-submitted-fullscreen p{font-size:1rem}.exam-fullscreen .submitted-icon{font-size:4rem}.exam-fullscreen .btn-large{font-size:1rem;padding:.75rem 1.5rem}}@media (max-width:480px){.exam-fullscreen .exam-header{padding:.5rem .75rem}.exam-fullscreen .exam-header-left h1{font-size:.9rem}.exam-fullscreen .timer-display{font-size:.9rem;padding:.4rem .75rem}.exam-fullscreen .exam-main{padding:.75rem}.exam-fullscreen .exam-question-text{font-size:.95rem;padding:.75rem}.exam-fullscreen .exam-option{font-size:.9rem;gap:.75rem;padding:.75rem}.exam-fullscreen .option-letter{font-size:.85rem;height:30px;width:30px}.exam-fullscreen .dot{font-size:.7rem;height:28px;width:28px}.exam-fullscreen .confirm-dialog,.exam-fullscreen .exam-submitted-fullscreen{padding:1rem}.exam-fullscreen .submitted-icon{font-size:3rem}.exam-fullscreen .exam-submitted-fullscreen h2{font-size:1.25rem}}@media (max-height:500px) and (orientation:landscape){.exam-fullscreen .exam-header{padding:.5rem 1rem}.exam-fullscreen .exam-warning{font-size:.75rem;padding:.25rem 1rem}.exam-fullscreen .exam-main{padding:.5rem 1rem}.exam-fullscreen .exam-question-text{margin-bottom:1rem;padding:.75rem}.exam-fullscreen .exam-options{gap:.5rem}.exam-fullscreen .exam-option{padding:.5rem .75rem}.exam-fullscreen .exam-navigation{padding:.5rem 0}}.payment-modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.payment-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:20px;max-height:90vh;max-width:450px;overflow-y:auto;width:100%}.payment-header{align-items:center;background:linear-gradient(135deg,#1e1b4b,#4338ca);color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.payment-header h2{font-size:1.5rem;margin:0}.btn-close-modal{background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.25rem;height:36px;transition:all .2s;width:36px}.btn-close-modal:hover{background:#ffffff4d}.payment-content{padding:1.5rem}.topic-preview{background:linear-gradient(135deg,#f8fafc,#eef2ff);border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;text-align:center}.topic-icon{display:block;font-size:3rem;margin-bottom:.5rem}.topic-preview h3{color:#1f2937;font-size:1.25rem;margin:0}.payment-benefits{margin-bottom:1.5rem}.payment-benefits h4{color:#374151;font-size:1rem;margin:0 0 1rem}.payment-benefits ul{list-style:none;margin:0;padding:0}.payment-benefits li{color:#4b5563;font-size:.95rem;padding:.5rem 0}.payment-price{align-items:baseline;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-radius:12px;display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:1.25rem}.price-label{color:#065f46;font-weight:500}.price-amount{color:#059669;font-size:2rem;font-weight:700}.price-period{color:#065f46;font-size:.9rem}.payment-note{background:#fef3c7;border-radius:8px;padding:.75rem;text-align:center}.payment-note p{color:#92400e;font-size:.85rem;margin:0}.payment-actions{border-top:1px solid #e5e7eb;gap:1rem;padding:1.5rem}.btn-cancel-payment{background:#f3f4f6;border:none;border-radius:10px;color:#4b5563;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .2s}.btn-cancel-payment:hover{background:#e5e7eb}.btn-confirm-payment{background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:10px;color:#fff;cursor:pointer;flex:2 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .2s}.btn-confirm-payment:hover:not(:disabled){box-shadow:0 4px 15px #10b98166;transform:translateY(-2px)}.btn-confirm-payment:disabled{cursor:not-allowed;opacity:.7}.payment-processing{padding:4rem 2rem;text-align:center}.processing-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#4338ca;height:60px;margin:0 auto 1.5rem;width:60px}.payment-processing h3{color:#1f2937;margin:0 0 .5rem}.payment-processing p{color:#6b7280;margin:0}.payment-success{padding:4rem 2rem;text-align:center}.success-icon{font-size:4rem;margin-bottom:1rem}.payment-success h3{color:#059669;font-size:1.5rem;margin:0 0 1rem}.payment-success p{color:#4b5563;margin:0 0 .5rem}.success-redirect{color:#9ca3af;font-size:.9rem;margin-top:1rem!important}@media (max-width:768px){.payment-modal-overlay{align-items:flex-start;padding:2rem .5rem .5rem}.payment-modal{display:flex;flex-direction:column;max-height:calc(100vh - 4rem)}.payment-header{flex-shrink:0}.payment-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-y:auto}.payment-actions{background:#fff;border-radius:0 0 20px 20px;bottom:0;flex-shrink:0;position:-webkit-sticky;position:sticky}}@media (max-width:480px){.payment-modal-overlay{align-items:flex-end;padding:0}.payment-modal{border-radius:20px 20px 0 0;margin:0;max-height:90vh;max-width:100%;width:100%}.payment-header{border-radius:20px 20px 0 0;padding:1rem 1.25rem}.payment-header h2{font-size:1.15rem}.payment-content{max-height:calc(90vh - 180px);overflow-y:auto;padding:1rem}.topic-preview{margin-bottom:1rem;padding:1rem}.topic-icon{font-size:2rem}.topic-preview h3{font-size:1rem}.payment-benefits{margin-bottom:1rem}.payment-benefits h4{font-size:.9rem;margin-bottom:.5rem}.payment-benefits li{font-size:.85rem;padding:.35rem 0}.payment-price{margin-bottom:.75rem;padding:.875rem}.price-amount{font-size:1.5rem}.wompi-badge{font-size:.8rem;margin-top:.5rem}.payment-actions{background:#fff;border-top:1px solid #e5e7eb;flex-direction:column;gap:.75rem;padding:1rem}.btn-cancel-payment,.btn-confirm-payment{flex:none;padding:.875rem;width:100%}.btn-confirm-payment{order:-1}}.new-topic-badge{background:linear-gradient(135deg,#34d399,#10b981);border-radius:20px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.5rem;padding:.25rem .75rem}.payment-pending{padding:4rem 2rem;text-align:center}.pending-icon{font-size:4rem;margin-bottom:1rem}.payment-pending h3{color:#d97706;font-size:1.5rem;margin:0 0 1rem}.payment-pending p{color:#4b5563;margin:0 0 1.5rem}.payment-error{padding:3rem 2rem;text-align:center}.error-icon{font-size:4rem}.payment-error h3{color:#dc2626;font-size:1.5rem;margin:0 0 1rem}.payment-error p{color:#4b5563;margin:0 0 1.5rem}.payment-error .payment-actions{border-top:none;padding-top:0}.wompi-badge{align-items:center;color:#6b7280;display:flex;font-size:.85rem;gap:.5rem;justify-content:center;margin-top:1rem}.wompi-badge img{height:20px}.coupon-section{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;margin:1rem 0;padding:1rem}.coupon-header{color:#64748b;font-size:.9rem;margin-bottom:.75rem}.coupon-input-row{display:flex;gap:.5rem}.coupon-input{border:1px solid #e2e8f0;border-radius:8px;flex:1 1;font-size:1rem;font-weight:600;letter-spacing:.05em;padding:.75rem;text-transform:uppercase}.coupon-input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.btn-apply-coupon{background:#e2e8f0;border:none;border-radius:8px;color:#475569;cursor:pointer;font-weight:600;padding:.75rem 1.25rem;transition:all .2s}.btn-apply-coupon:hover:not(:disabled){background:#cbd5e1}.btn-apply-coupon:disabled{cursor:not-allowed;opacity:.5}.coupon-error{color:#dc2626;font-size:.85rem;margin-top:.5rem}.coupon-valid{background:#d1fae5;border-radius:6px;color:#059669;font-size:.9rem;font-weight:600;margin-top:.5rem;padding:.5rem .75rem}.btn-confirm-payment.btn-coupon{background:linear-gradient(135deg,#10b981,#059669)}.btn-confirm-payment.btn-coupon:hover{box-shadow:0 4px 15px #10b98166}@media (max-width:480px){.coupon-input-row{flex-direction:column}.btn-apply-coupon{width:100%}}.help-tooltip-container{align-items:center;cursor:help;display:inline-flex;margin-left:.35rem;position:relative}.help-icon{font-size:.85rem;opacity:.7;transition:opacity .2s}.help-tooltip-container:hover .help-icon{opacity:1}.help-tooltip-content{animation:tooltipFadeIn .2s ease-out;background:#1e293b;border-radius:8px;box-shadow:0 4px 15px #0003;color:#fff;font-size:.85rem;line-height:1.4;max-width:280px;padding:.75rem 1rem;position:absolute;width:-webkit-max-content;width:max-content;z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.help-tooltip-content.top{bottom:calc(100% + 8px);left:50%;transform:translateX(-50%)}.help-tooltip-content.bottom{left:50%;top:calc(100% + 8px);transform:translateX(-50%)}.help-tooltip-content.left{right:calc(100% + 8px);top:50%;transform:translateY(-50%)}.help-tooltip-content.right{left:calc(100% + 8px);top:50%;transform:translateY(-50%)}.help-tooltip-content.top:after{border:6px solid #0000;border-top-color:#1e293b;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.help-tooltip-content.bottom:after{border:6px solid;border-color:#0000 #0000 #1e293b;bottom:100%;content:"";left:50%;position:absolute;transform:translateX(-50%)}@media (max-width:768px){.help-tooltip-content{font-size:.8rem;max-width:220px;padding:.6rem .8rem}}.professor-dashboard{background:linear-gradient(135deg,#0f0c29,#1a1a2e 50%,#16213e);min-height:100vh}.professor-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border-bottom:1px solid #ffffff1a;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.professor-header .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.logo-section{align-items:center;display:flex;gap:1rem}.dashboard-logo{color:#fff;font-size:1.75rem;font-weight:700;margin:0}.logo-highlight{color:#34d399}.professor-badge{background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.user-info{align-items:center;display:flex;gap:1rem}.user-name{color:#c7d2fe;font-weight:500}.btn-logout{background:#ef444433;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.btn-logout:hover{background:#ef44444d}.help-container{position:relative}.btn-help{align-items:center;background:#f59e0b33;border:1px solid #f59e0b66;border-radius:8px;color:#fbbf24;cursor:pointer;display:inline-flex;font-weight:500;gap:.25rem;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.btn-help:hover{background:#f59e0b4d}.help-tooltip{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;margin-top:.5rem;opacity:0;padding:1rem;position:absolute;right:0;text-align:left;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden;width:280px;z-index:1000}.help-container:hover .help-tooltip{opacity:1;transform:translateY(0);visibility:visible}.help-tooltip p{color:#374151;font-size:.875rem;margin:0 0 .5rem}.help-tooltip p:last-child{margin-bottom:0}.help-tooltip a{color:#4338ca;font-weight:600;text-decoration:none}.help-tooltip a:hover{text-decoration:underline}.help-tooltip .help-response{color:#10b981;font-size:.8rem;margin-top:.75rem}.professor-nav{background:#0003;display:flex;gap:1rem;justify-content:center;padding:1rem}.nav-tab{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;color:#a5b4fc;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 2rem;transition:all .2s}.nav-tab:hover{background:#ffffff1a}.nav-tab.active{background:linear-gradient(135deg,#4f46e5,#6366f1);border-color:#0000;color:#fff}.professor-main{margin:0 auto;max-width:1400px;padding:2rem}.loading-state{color:#a5b4fc;padding:4rem}.spinner{font-size:3rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.section-header h2{font-size:1.5rem}.cards-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.exam-card,.topic-card{background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;padding:1.5rem;transition:all .3s}.exam-card:hover,.topic-card:hover{border-color:#6366f14d;box-shadow:0 8px 30px #0000004d;transform:translateY(-4px)}.card-header{align-items:flex-start;margin-bottom:.75rem}.card-header h3{color:#fff;font-size:1.1rem;margin:0}.btn-delete{background:#0000;border:none;cursor:pointer;font-size:1rem;opacity:.5}.btn-delete:hover{opacity:1}.card-description{color:#a5b4fc;font-size:.9rem;line-height:1.4;margin-bottom:1rem}.card-stats{color:#6b7280;display:flex;font-size:.85rem;gap:1rem;margin-bottom:1rem}.card-actions{display:flex;gap:.75rem}.btn-primary{background:linear-gradient(135deg,#4f46e5,#6366f1)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 15px #6366f166}.modal-content.modal-large{max-width:800px}.modal-header h2{font-size:1.25rem}.form-group input:focus,.form-group textarea:focus{border-color:#6366f1}.modal-actions button{flex:1 1}.topic-detail-content{display:flex;flex-direction:column;gap:1.5rem}.detail-section h3{color:#fff;font-size:1rem;margin:0 0 1rem}.documents-list{display:flex;flex-direction:column;gap:.5rem}.document-item{color:#c7d2fe}.upload-btn{background:#34d39933;border:1px dashed #34d39980;border-radius:8px;color:#34d399;cursor:pointer;display:inline-block;padding:.75rem 1.5rem;transition:all .2s}.upload-btn:hover{background:#34d3994d}.section-header-inline{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.btn-generate{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem}.btn-generate:disabled{cursor:not-allowed;opacity:.5}.questions-list{gap:.5rem;max-height:300px;overflow-y:auto}.question-item{align-items:flex-start;background:#ffffff0d;border:1px solid #0000;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s}.question-item:hover{background:#ffffff1a}.question-item.selected{background:#34d3991a;border-color:#34d399}.question-item input[type=checkbox]{accent-color:#34d399;margin-top:.25rem}.question-content{flex:1 1}.question-content p{color:#e2e8f0;font-size:.9rem;line-height:1.4;margin:0 0 .5rem}.difficulty{border-radius:4px;font-size:.75rem;padding:.2rem .5rem;text-transform:capitalize}.difficulty.easy{background:#34d39933;color:#34d399}.difficulty.medium{background:#f59e0b33;color:#f59e0b}.difficulty.hard{background:#ef444433;color:#ef4444}.create-exam-bar{align-items:center;background:#34d3991a;border:1px solid #34d3994d;border-radius:12px;display:flex;justify-content:space-between;padding:1rem}.create-exam-bar span{color:#34d399;font-weight:600}.exam-detail-content{display:flex;flex-direction:column;gap:1.5rem}.exam-info{background:#ffffff0d;border-radius:8px;padding:1rem}.exam-info p{color:#c7d2fe;margin:.25rem 0}.exam-questions-list{display:flex;flex-direction:column;gap:1rem;max-height:400px;overflow-y:auto}.exam-question-item{background:#ffffff0d;border-radius:8px;padding:1rem}.exam-question-item p{color:#fff;margin:0 0 .75rem}.options-preview{display:flex;flex-direction:column;gap:.25rem}.options-preview span{color:#a5b4fc;font-size:.85rem}.options-preview span.correct{color:#34d399;font-weight:600}.test-content{padding:1rem 0}.test-question{color:#fff;font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem}.test-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.test-option{align-items:center;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:10px;color:#fff;cursor:pointer;display:flex;gap:1rem;padding:1rem;text-align:left;transition:all .2s}.test-option:hover{background:#ffffff1a}.test-option.selected{background:#6366f133;border-color:#6366f1}.option-key{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;flex-shrink:0;height:32px;justify-content:center;width:32px}.test-nav{display:flex;gap:1rem;justify-content:space-between}.question-counter{font-size:.9rem}.test-results{text-align:center}.score-display{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem}.score{color:#34d399;font-size:3rem}.percentage{color:#a5b4fc;font-size:1.5rem}.results-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;text-align:left}.result-item{border-radius:8px;display:flex;font-size:.9rem;justify-content:space-between;padding:.5rem 1rem}.result-item.correct{background:#34d39933;color:#34d399}.result-item.incorrect{background:#ef444433;color:#ef4444}@media (max-width:1024px){.professor-main{padding:1.5rem}.cards-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.modal-content.modal-large{max-width:95%}}@media (max-width:768px){.professor-header{padding:.75rem 1rem}.professor-header .header-content{flex-direction:column;gap:.75rem;text-align:center}.logo-section{flex-direction:column;gap:.5rem}.dashboard-logo{font-size:1.5rem}.user-info{justify-content:center;width:100%}.user-name{font-size:.9rem}.professor-nav{flex-direction:row;gap:.5rem;overflow-x:auto;padding:.75rem}.nav-tab{flex:1 1;font-size:.85rem;padding:.6rem 1rem;text-align:center;white-space:nowrap}.professor-main{padding:1rem}.section-header{align-items:stretch;flex-direction:column;gap:.75rem}.section-header h2{font-size:1.25rem}.cards-grid{gap:1rem;grid-template-columns:1fr}.exam-card,.topic-card{padding:1rem}.card-stats{flex-wrap:wrap;gap:.5rem}.card-actions{flex-direction:column}.card-actions button{width:100%}.modal-overlay{padding:.5rem}.modal-content{border-radius:12px;max-height:95vh;padding:1.25rem}.modal-content.modal-large{max-width:100%}.modal-header h2{font-size:1.1rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-actions button{width:100%}.section-header-inline{align-items:stretch;flex-direction:column;gap:.75rem}.btn-generate{padding:.75rem;width:100%}.questions-list{max-height:none}.question-item-full{padding:.75rem}.question-header-row{flex-wrap:wrap;gap:.5rem}.btn-delete-question{margin-left:0;order:-1}.option-row{flex-wrap:wrap;padding:.5rem}.option-value{flex-basis:100%}.correct-badge,.option-value{margin-top:.25rem}.create-exam-bar{flex-direction:column;gap:.75rem;text-align:center}.create-exam-bar button{width:100%}.test-option{gap:.75rem;padding:.75rem}.test-nav{flex-direction:column;gap:.75rem}.test-nav button{width:100%}.score{font-size:2.5rem}.percentage{font-size:1.25rem}.result-item{flex-direction:column;gap:.25rem;text-align:left}.notification{left:10px;padding:.75rem 1rem;right:10px;top:10px}.empty-state{padding:2rem 1rem}.empty-icon{font-size:3rem}.generating-overlay{padding:1.5rem 1rem}.generating-spinner{height:40px;width:40px}.generating-message{font-size:1rem}}@media (max-width:480px){.professor-header{padding:.5rem .75rem}.dashboard-logo{font-size:1.25rem}.professor-badge{font-size:.75rem;padding:.2rem .5rem}.nav-tab{font-size:.8rem;padding:.5rem .75rem}.professor-main{padding:.75rem}.btn-primary,.btn-secondary{font-size:.9rem;padding:.6rem 1rem}.form-group input,.form-group textarea{font-size:.9rem;padding:.6rem}.questions-caption{font-size:.8rem;padding:.4rem .6rem}.difficulty{font-size:.65rem}}.upload-section{display:flex;flex-direction:column;gap:.5rem}.progress-bar-container{background:#ffffff1a;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(90deg,#34d399,#10b981);transition:width .3s ease}.notification{align-items:center;animation:slideIn .3s ease;border-radius:12px;box-shadow:0 4px 20px #0000004d;display:flex;gap:1rem;padding:1rem 1.5rem;position:fixed;right:20px;top:20px;z-index:2000}.notification.success{background:linear-gradient(135deg,#065f46,#047857);border:1px solid #34d399;color:#ecfdf5}.notification.error{background:linear-gradient(135deg,#7f1d1d,#991b1b);border:1px solid #f87171;color:#fef2f2}.notification button{background:#0000;border:none;color:inherit;cursor:pointer;font-size:1.25rem;opacity:.7}.notification button:hover{opacity:1}.generating-overlay{animation:pulse-border 2s ease-in-out infinite;background:linear-gradient(135deg,#4f46e526,#6366f11a);border:1px solid #6366f14d;border-radius:12px;margin-bottom:1rem;padding:2rem;text-align:center}@keyframes pulse-border{0%,to{border-color:#6366f14d}50%{border-color:#6366f199}}.generating-spinner{animation:spin 1s linear infinite;border:4px solid #6366f133;border-radius:50%;border-top-color:#6366f1;height:50px;margin:0 auto 1rem;width:50px}.generating-message{animation:fade-text .5s ease;color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}@keyframes fade-text{0%{opacity:.5}to{opacity:1}}.generating-hint{color:#a5b4fc;font-size:.85rem;margin:0}.question-item-full{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:1rem;padding:1rem;transition:all .2s}.question-item-full:hover{background:#ffffff14}.question-item-full.selected{background:#34d3991a;border-color:#34d399}.question-header-row{gap:.75rem;margin-bottom:.75rem}.question-header-row input[type=checkbox]{accent-color:#34d399;cursor:pointer;height:18px;width:18px}.question-number{color:#a5b4fc;font-size:.85rem;font-weight:600}.question-text{background:#6366f11a;border-left:4px solid #818cf8;border-radius:8px;color:#fff!important;font-size:1.05rem;font-weight:500;margin:0 0 1rem;padding:.75rem 1rem}.question-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.option-row{align-items:center;background:#ffffff08;border-left:3px solid #0000;border-radius:6px;display:flex;gap:.5rem;padding:.5rem .75rem}.option-row.correct{background:#34d39926;border-left-color:#34d399}.option-key{color:#a5b4fc;font-weight:600;min-width:24px}.option-value{color:#f1f5f9;flex:1 1;font-size:.95rem}.correct-badge{background:#34d399;border-radius:4px;color:#064e3b;font-size:.7rem;font-weight:700;padding:.2rem .5rem;text-transform:uppercase}.question-explanation{border-top:1px solid #ffffff1a;color:#94a3b8;font-size:.85rem;font-style:italic;margin:0;padding-top:.5rem}.btn-delete-question{background:#ef444426;border:1px solid #ef44444d;border-radius:6px;color:#f87171;cursor:pointer;font-size:.85rem;margin-left:auto;padding:.35rem .5rem;transition:all .2s}.btn-delete-question:hover{background:#ef44444d;border-color:#ef4444;transform:scale(1.05)}.questions-caption{background:#6366f11a;border:1px dashed #6366f14d;border-radius:8px;color:#a5b4fc;font-size:.9rem;margin:0 0 1rem;padding:.5rem .75rem}.welcome-banner{background:linear-gradient(135deg,#6366f126,#8b5cf61a);border-bottom:1px solid #6366f133;padding:2rem}.welcome-content{margin:0 auto;max-width:900px;text-align:center}.welcome-content h2{color:#fff;font-size:1.5rem;margin:0 0 .5rem}.welcome-content>p{color:#c7d2fe;font-size:1rem;margin:0 0 1.5rem}.steps-container{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem}.step{align-items:flex-start;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:.75rem;max-width:220px;padding:1rem;text-align:left}.step-number{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;height:32px;justify-content:center;width:32px}.step-info h4{color:#fff;font-size:.95rem;margin:0 0 .25rem}.step-info p{color:#a5b4fc;font-size:.8rem;line-height:1.4;margin:0}.step-arrow{color:#6366f1;font-size:1.5rem;font-weight:700}.btn-start{font-size:1rem;padding:.875rem 2rem}@media (max-width:768px){.welcome-banner{padding:1.5rem 1rem}.welcome-content h2{font-size:1.25rem}.steps-container{flex-direction:column;gap:.75rem}.step{max-width:100%;width:100%}.step-arrow{font-size:1.25rem;transform:rotate(90deg)}.btn-start{padding:.75rem 1.5rem;width:100%}}@media (max-width:480px){.welcome-banner{padding:1rem .75rem}.welcome-content h2{font-size:1.1rem}.welcome-content>p{font-size:.9rem}.step{padding:.75rem}.step-number{font-size:.9rem;height:28px;width:28px}.step-info h4{font-size:.85rem}.step-info p{font-size:.75rem}}.confirm-icon{font-size:3rem;margin-bottom:1rem}.confirm-message{color:#e2e8f0;font-size:1rem;line-height:1.5;margin:0 0 1.5rem}.confirm-actions{justify-content:center}.confirm-actions button{min-width:100px}.btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-danger:hover{box-shadow:0 4px 15px #dc262666;transform:translateY(-2px)}@media (max-width:480px){.confirm-modal{padding:1.5rem}.confirm-icon{font-size:2.5rem}.confirm-message{font-size:.9rem}.confirm-actions{flex-direction:column}.confirm-actions button{width:100%}}.exam-code-section{align-items:center;background:linear-gradient(135deg,#34d39926,#10b9811a);border:1px solid #34d3994d;border-radius:12px;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:1rem;padding:1rem}.code-label{color:#a5b4fc;font-size:.9rem}.code-display{align-items:center;display:flex;gap:.75rem}.exam-code{background:#0003;border-radius:8px;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;letter-spacing:.2em}.btn-copy,.exam-code{color:#34d399;padding:.5rem 1rem}.btn-copy{background:#34d39933;border:1px solid #34d39966;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.btn-copy:hover{background:#34d3994d}.exam-tabs{border-bottom:1px solid #ffffff1a;display:flex;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem}.exam-tab{background:#0000;border:none;border-radius:6px;color:#a5b4fc;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.exam-tab:hover{background:#ffffff0d}.exam-tab.active{background:#6366f133;color:#fff}.empty-results{color:#a5b4fc;padding:2rem;text-align:center}.empty-results p{margin:.5rem 0}.empty-results .hint{color:#6b7280;font-size:.85rem}.results-summary{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem}.summary-stat{background:#ffffff0d;border-radius:12px;padding:1rem 2rem;text-align:center}.stat-value{color:#34d399;display:block;font-size:2rem}.stat-label{color:#a5b4fc;font-size:.85rem}.students-results-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.student-result-item{background:#ffffff0d;justify-content:space-between;padding:.75rem 1rem}.student-info{flex-direction:column;gap:.25rem}.student-name{color:#fff;font-weight:500}.submit-date{color:#6b7280;font-size:.8rem}.student-score{align-items:center;display:flex;gap:.75rem}.score-badge{border-radius:20px;font-size:.9rem;font-weight:700;padding:.35rem .75rem}.score-badge.pass{background:#34d39933;color:#34d399}.score-badge.fail{background:#ef444433;color:#f87171}.score-detail{color:#6b7280;font-size:.8rem}@media (max-width:768px){.exam-code-section{flex-direction:column;text-align:center}.exam-code{font-size:1.25rem}.exam-tabs{overflow-x:auto}.results-summary{flex-direction:column;gap:.75rem}.summary-stat{padding:.75rem 1rem}.stat-value{font-size:1.5rem}.student-result-item{align-items:flex-start;flex-direction:column;gap:.5rem}.student-score{justify-content:space-between;width:100%}}.exam-code-mini{background:#34d3991a;border:1px solid #34d39933;border-radius:6px;color:#a5b4fc;font-size:.8rem;margin-bottom:.75rem;padding:.4rem .6rem}.exam-code-mini strong{color:#34d399;font-family:Courier New,monospace;letter-spacing:.1em}.student-result-item{align-items:center;background:#ffffff08;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;padding:1rem}.student-info{align-items:center;display:flex;flex:1 1;flex-wrap:wrap;gap:.5rem}.interrupted-badge{background:#f59e0b33;color:#fbbf24}.interrupted-badge,.retry-badge{border-radius:10px;font-size:.75rem;font-weight:600;padding:.2rem .5rem}.retry-badge{background:#6366f133;color:#a5b4fc}.continue-badge{background:#34d39933;border-radius:10px;color:#34d399;font-size:.75rem;font-weight:600;padding:.2rem .5rem}.student-actions{display:flex;gap:.5rem}.btn-continue-action,.btn-retry-action{border:none;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:600;padding:.4rem .75rem;transition:all .2s}.btn-retry-action{background:#6366f133;border:1px solid #6366f14d;color:#a5b4fc}.btn-retry-action:hover{background:#6366f14d}.btn-continue-action{background:#34d39933;border:1px solid #34d3994d;color:#34d399}.btn-continue-action:hover{background:#34d3994d}.submitted-warning{color:#fbbf24!important;font-weight:600}@media (max-width:768px){.student-result-item{align-items:flex-start;flex-direction:column}.student-actions{justify-content:flex-end;width:100%}}.results-header-row{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.btn-refresh-results{background:#6366f133;border:1px solid #6366f14d;border-radius:6px;color:#a5b4fc;cursor:pointer;font-size:.85rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-refresh-results:hover{background:#6366f14d}.submit-datetime{color:#9ca3af;font-size:.8rem}@media (max-width:768px){.results-header-row{align-items:stretch;flex-direction:column}.btn-refresh-results{text-align:center;width:100%}}@media (max-width:1024px){.professor-header{padding:1rem}.cards-grid{grid-template-columns:repeat(2,1fr)}.modal-content.modal-large{margin:1rem;max-width:95%}}@media (max-width:768px){.professor-header .header-content{flex-direction:column;gap:1rem;text-align:center}.logo-section{flex-direction:column;gap:.5rem}.dashboard-logo{font-size:1.5rem}.user-info{justify-content:center;width:100%}.professor-nav{flex-wrap:wrap;gap:.5rem;padding:.75rem}.nav-tab{flex:1 1;font-size:.9rem;min-width:120px;padding:.6rem 1.25rem;text-align:center}.professor-main{padding:1rem}.section-header{flex-direction:column;gap:1rem;text-align:center}.section-header h2{font-size:1.25rem}.cards-grid{gap:1rem;grid-template-columns:1fr}.exam-card,.topic-card{padding:1rem}.card-header h3{font-size:1rem}.card-stats{flex-wrap:wrap;gap:.5rem}.card-actions{flex-direction:column}.card-actions button{width:100%}.modal-content{margin:.5rem;max-height:95vh;padding:1rem}.modal-header{flex-direction:column;gap:.5rem;text-align:center}.modal-header h2{font-size:1.1rem}.btn-close{position:absolute;right:.5rem;top:.5rem}.modal-actions{flex-direction:column;gap:.5rem}.modal-actions button{width:100%}.exam-code-section{text-align:center}.code-display,.exam-code-section{flex-direction:column;gap:.5rem}.exam-code{font-size:1.5rem}.exam-tabs{flex-direction:column;gap:.5rem}.exam-tab{text-align:center;width:100%}.results-header-row{flex-direction:column;gap:.75rem}.results-summary{justify-content:center}.student-result-item{gap:.75rem}.student-info,.student-result-item{align-items:flex-start;flex-direction:column}.student-info{gap:.25rem}.student-score{justify-content:space-between;width:100%}.student-actions{justify-content:flex-start;width:100%}.questions-list{gap:.75rem}.question-item{padding:.75rem}.question-text{font-size:.9rem}.upload-section{padding:1rem}.documents-list{gap:.5rem}.document-item{align-items:flex-start;flex-direction:column;gap:.5rem}.empty-state{padding:2rem 1rem}.empty-icon{font-size:3rem}}@media (max-width:480px){.professor-header{padding:.75rem}.dashboard-logo{font-size:1.25rem}.professor-badge{font-size:.75rem;padding:.2rem .5rem}.user-name{font-size:.9rem}.btn-logout{font-size:.85rem;padding:.4rem .75rem}.nav-tab{font-size:.85rem;min-width:100px;padding:.5rem 1rem}.section-header h2{font-size:1.1rem}.btn-primary,.btn-secondary{font-size:.9rem;padding:.6rem 1rem}.modal-content{padding:.75rem}.form-group label{font-size:.85rem}.form-group input,.form-group textarea{font-size:.9rem;padding:.6rem}.exam-code,.summary-stat .stat-value{font-size:1.25rem}.btn-continue-action,.btn-retry-action{font-size:.7rem;padding:.35rem .6rem}}.free-tier-banner{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.25rem}.free-tier-info{align-items:center;display:flex;gap:.75rem}.free-tier-icon{font-size:1.5rem}.free-tier-info strong{color:#92400e;display:block}.free-tier-info p{color:#b45309;font-size:.9rem;margin:0}.btn-unlock{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.25rem;transition:transform .2s,box-shadow .2s}.btn-unlock:hover{box-shadow:0 4px 12px #f59e0b66;transform:translateY(-2px)}.paid-tier-banner{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981;border-radius:12px;color:#065f46;font-weight:600;margin-bottom:1rem;padding:.75rem 1.25rem;text-align:center}.professor-payment .free-limit-info{background:#fef3c7;border:2px solid #f59e0b;border-radius:12px;margin-bottom:1.5rem;padding:1rem;text-align:center}.limit-badge{background:#f59e0b;border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;margin-bottom:.5rem;padding:.25rem .75rem}.free-limit-info p{color:#92400e;margin:0}@media (max-width:768px){.professor-header{padding:.75rem 1rem}.professor-header .header-content{flex-direction:column;gap:.75rem}.logo-section{justify-content:space-between;width:100%}.dashboard-logo{font-size:1.35rem}.professor-badge{font-size:.75rem;padding:.2rem .5rem}.user-info{justify-content:flex-end;width:100%}.user-name{display:none}.professor-nav{gap:.5rem;padding:.5rem}.nav-tab{font-size:.85rem;padding:.6rem 1rem}.welcome-banner{margin:1rem;padding:1.5rem 1rem}.welcome-content h2{font-size:1.25rem}.welcome-content p{font-size:.9rem}.steps-container{flex-direction:column;gap:1rem}.step{flex-direction:row;gap:1rem;text-align:left}.step-arrow{display:none}.step-number{flex-shrink:0;height:40px;width:40px}.step-info h4,.step-number{font-size:1rem}.step-info p{font-size:.85rem}.professor-main{padding:1rem}.exams-grid,.topics-grid{gap:1rem;grid-template-columns:1fr}.exam-card,.topic-card{padding:1rem}.card-header h3{font-size:1.1rem}.card-description{font-size:.85rem}.card-stats{flex-wrap:wrap;gap:.5rem}.stat-badge{font-size:.75rem;padding:.25rem .5rem}.card-actions{flex-direction:column;gap:.5rem}.card-actions button{width:100%}.modal-overlay{padding:.5rem}.modal-content{border-radius:16px;margin:0;max-height:95vh}.modal-header{padding:1rem}.modal-header h2{font-size:1.1rem}.modal-body{padding:1rem}.modal-footer{flex-direction:column;gap:.5rem;padding:1rem}.modal-footer button{width:100%}.form-group{margin-bottom:1rem}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{font-size:1rem;padding:.75rem}.questions-list{max-height:40vh}.question-item-full{padding:.75rem}.question-text{font-size:.9rem}.option-row{font-size:.8rem;padding:.35rem .5rem}.exam-code-display{padding:1rem}.exam-code{font-size:1.5rem;letter-spacing:.1em}.results-summary{flex-direction:column;gap:.5rem}.summary-stat{padding:.75rem}.stat-value{font-size:1.25rem}.stat-label{font-size:.75rem}.students-table{font-size:.8rem}.students-table td,.students-table th{padding:.5rem .35rem}}@media (max-width:480px){.professor-header{padding:.5rem .75rem}.dashboard-logo{font-size:1.2rem}.professor-badge{font-size:.65rem;padding:.15rem .4rem}.btn-help,.btn-logout{font-size:.7rem;padding:.35rem .5rem}.nav-tab{font-size:.75rem;padding:.5rem .75rem}.welcome-banner{padding:1rem}.welcome-content h2{font-size:1.1rem}.btn-start{font-size:.9rem;padding:.75rem 1.5rem}.exam-card,.topic-card{padding:.875rem}.card-header h3,.modal-header h2{font-size:1rem}.close-btn{font-size:1.25rem;height:32px;width:32px}.upload-area{padding:1.5rem 1rem}.upload-icon{font-size:2rem}.upload-text{font-size:.85rem}.generate-section{padding:1rem}.generate-btn{font-size:.9rem;padding:.75rem 1.25rem}.question-checkbox,.question-selector{padding:.5rem}.question-checkbox label{font-size:.85rem}.test-question{font-size:.9rem;padding:.75rem}.test-option{font-size:.8rem;padding:.5rem}.test-option .option-key{font-size:.8rem;height:26px;width:26px}}.study-container{background:#f0f4f8;min-height:100vh}.study-header{background:#fff;box-shadow:0 2px 8px #1e293b14;position:-webkit-sticky;position:sticky;top:0;z-index:100}.study-header .header-content{margin:0 auto;max-width:1200px;padding:1rem 2rem 1.5rem}.header-top{display:flex;justify-content:flex-end;margin-bottom:1rem}.btn-exit{background:#fee2e2;border:2px solid #fecaca;border-radius:8px;color:#dc2626;cursor:pointer;font-size:.9rem;font-weight:600;padding:.625rem 1.25rem;transition:all .3s}.btn-exit:hover{background:#dc2626;border-color:#dc2626;color:#fff}.study-info{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.study-title{color:#1e293b;font-size:1.5rem;margin:0}.study-stats{display:flex;gap:1.5rem}.stat-item{color:#475569;font-weight:500}.study-main{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 400px;margin:0 auto;max-width:1400px;padding:3rem 2rem}.question-card{background:#fff;box-shadow:0 4px 20px #1e293b14;padding:2.5rem}.question-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:2rem}.question-badge{background:linear-gradient(135deg,#312e81,#4338ca)}.domain-badge,.question-badge{border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;padding:.5rem 1rem}.domain-badge{background:linear-gradient(135deg,#059669,#10b981);cursor:help}.btn-doubt{background:#0000;border:2px solid #4338ca;border-radius:8px;color:#4338ca;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .3s}.btn-doubt:hover:not(:disabled){background:#4338ca;color:#fff}.btn-doubt:disabled{cursor:not-allowed;opacity:.5}.question-text{font-size:1.5rem;line-height:1.6;margin-bottom:2rem}.question-text,.study-container .question-card h2,.study-container .question-card h2.question-text,.study-container .question-text{color:#1e293b!important}.study-container .option-text{color:#475569!important}.options-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.option{align-items:center;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;display:flex;gap:1rem;padding:1.25rem;transition:all .3s}.option.selected,.option:hover{background:#eef2ff;border-color:#4338ca}.option.correct{background:#ecfdf5;border-color:#059669}.option.wrong{background:#fef2f2;border-color:#dc2626}.option-letter{align-items:center;background:#f1f5f9;border-radius:50%;color:#1e293b!important;display:flex;flex-shrink:0;font-weight:700;height:40px;justify-content:center;width:40px}.option.selected .option-letter{background:#4338ca;color:#fff!important}.option.correct .option-letter{background:#059669;color:#fff!important}.option.wrong .option-letter{background:#dc2626;color:#fff!important}.option-text{color:#1e293b!important;flex:1 1;font-size:1rem}.option-icon{flex-shrink:0;font-size:1.5rem}.btn-next,.btn-submit{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .3s;width:100%}.btn-next:hover,.btn-submit:hover:not(:disabled){box-shadow:0 10px 25px #4338ca4d;transform:translateY(-2px)}.btn-submit:disabled{animation:pulse-button 1.5s ease-in-out infinite;opacity:.8}@keyframes pulse-button{0%,to{opacity:.8}50%{opacity:.6}}.feedback-section{border-top:2px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.feedback-result{align-items:center;border-radius:12px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.feedback-result.correct{background:#ecfdf5;border:2px solid #059669}.feedback-result.incorrect{background:#fef2f2;border:2px solid #dc2626}.result-icon{font-size:2rem}.feedback-result h3{color:#1e293b;font-size:1.5rem;margin:0}.feedback-ai,.feedback-explanation{margin-bottom:1.5rem}.feedback-ai h4,.feedback-explanation h4{color:#334155;font-size:1.1rem;margin-bottom:.75rem}.feedback-ai p,.feedback-explanation p{color:#64748b;line-height:1.6}.feedback-ai{background:#eef2ff;border-left:4px solid #4338ca;border-radius:12px;padding:1.5rem}.option-explanations{border-top:1px solid #e2e8f0;margin-top:1.25rem}.option-explanations h5{color:#334155;font-size:.95rem;margin-bottom:.75rem}.option-explanation{border-radius:8px;color:#475569;font-size:.9rem;padding:.75rem 1rem}.option-explanation.correct-option{border-left-color:#059669}.option-explanation strong{color:#1e293b;margin-right:.25rem}.key-concept-tip{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;margin-top:1.25rem;padding:1rem}.key-concept-tip strong{color:#047857}.chat-assistant{background:#fff;box-shadow:0 4px 20px #1e293b14;max-height:calc(100vh - 250px);top:100px}.chat-header{background:linear-gradient(135deg,#312e81,#4338ca);border-bottom:2px solid #e2e8f0;padding:1.5rem}.chat-header h3{font-size:1.25rem}.chat-messages{max-height:400px;padding:1.5rem}.chat-message{margin-bottom:1rem}.message-bubble{padding:1rem 1.25rem}.chat-message.user .message-bubble{background:linear-gradient(135deg,#312e81,#4338ca)}.chat-message.assistant .message-bubble{border:1px solid #cbd5e1;box-shadow:0 1px 3px #0000001a}.message-time{color:#94a3b8;font-size:.75rem;margin-top:.25rem}.chat-empty{color:#94a3b8}.chat-empty-icon{font-size:3rem}.chat-input-container{border-top:2px solid #e2e8f0;padding:1.5rem}.chat-input-wrapper{gap:.75rem}.chat-textarea{background:#fff!important;border:2px solid #475569!important;border-radius:12px;color:#1e293b!important;font-size:.95rem;padding:.875rem}.chat-textarea::placeholder{color:#64748b}.chat-textarea:focus{background:#fff!important;border-color:#4338ca!important;box-shadow:0 0 0 3px #4338ca33}.btn-send{background:linear-gradient(135deg,#312e81,#4338ca);border-radius:12px;padding:.875rem 1.5rem;white-space:nowrap}.btn-send:hover:not(:disabled){box-shadow:0 5px 15px #4338ca4d}.chat-hint{color:#94a3b8;font-size:.875rem;margin-top:.5rem}.spinner{border:4px solid #e2e8f0;border-top-color:#4338ca}.loading-state p{animation:pulse 2s ease-in-out infinite;color:#64748b}@media (max-width:768px){.study-header .header-content{padding:.75rem 1rem 1rem}.header-top{margin-bottom:.75rem}.btn-exit{font-size:.85rem;padding:.5rem 1rem}.study-title{font-size:1.1rem}.study-info{align-items:flex-start;flex-direction:column;gap:.75rem}.study-stats{flex-wrap:wrap;gap:.75rem;width:100%}.stat-item{font-size:.85rem}.study-main{gap:1.5rem;grid-template-columns:1fr;padding:1rem}.question-card{border-radius:12px;padding:1.25rem}.question-header{align-items:flex-start;flex-direction:column;gap:.75rem;margin-bottom:1.25rem}.domain-badge,.question-badge{font-size:.8rem;padding:.375rem .75rem}.btn-doubt{font-size:.85rem;padding:.375rem .75rem}.question-text{font-size:1.1rem;margin-bottom:1.5rem}.options-container{gap:.75rem;margin-bottom:1.5rem}.option{gap:.75rem;padding:1rem}.option-letter{font-size:.9rem;height:32px;width:32px}.option-text{font-size:.95rem}.btn-next,.btn-submit{font-size:1rem;padding:.875rem}.feedback-section{margin-top:1.5rem;padding-top:1.5rem}.feedback-result{gap:.75rem;padding:1rem}.result-icon{font-size:1.5rem}.feedback-result h3{font-size:1.25rem}.feedback-ai,.feedback-explanation{padding:1rem}.feedback-ai h4,.feedback-explanation h4{font-size:1rem}.chat-assistant{border-radius:12px;max-height:none;position:relative;top:0}.chat-header{border-radius:12px 12px 0 0;padding:1rem}.chat-header h3{font-size:1rem}.chat-messages{max-height:300px;min-height:150px;padding:1rem}.chat-input-container{padding:1rem}.chat-textarea{font-size:16px;padding:.75rem}.btn-send{font-size:.9rem;padding:.75rem 1rem}}@media (max-width:480px){.study-header .header-content{padding:.75rem}.study-title{font-size:1rem}.study-stats{gap:.5rem}.stat-item{font-size:.8rem}.study-main{gap:1rem;padding:.75rem}.question-card{padding:1rem}.domain-badge,.question-badge{font-size:.75rem;padding:.25rem .5rem}.question-text{font-size:1rem;margin-bottom:1.25rem}.option{gap:.5rem;padding:.875rem}.option-letter{font-size:.85rem;height:28px;width:28px}.option-text{font-size:.9rem}.chat-messages{max-height:250px}}.loading-state-fullscreen{background:linear-gradient(135deg,#312e81,#4338ca)}@media (max-width:768px){.loading-content h2{font-size:1.5rem}.loading-content p{font-size:.95rem}.spinner-large{border-width:5px;height:60px;width:60px}}.stat-item.access-badge{background:linear-gradient(135deg,#10b981,#059669)}.stat-item.access-badge,.stat-item.free-badge{border-radius:20px;color:#fff;font-size:.8rem;padding:.25rem .75rem}.stat-item.free-badge{background:linear-gradient(135deg,#3b82f6,#2563eb)}.option-explanations{background:#f8fafc;border-radius:8px;padding:1rem}.option-explanations h5{color:#475569;font-size:.9rem;margin:0 0 .75rem}.option-explanation{background:#fff;border-left:3px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:.875rem;margin-bottom:.5rem;padding:.5rem .75rem}.option-explanation.correct-option{background:#ecfdf5;border-left-color:#10b981;color:#065f46}.option-explanation:last-child{margin-bottom:0}.key-concept-tip{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left:4px solid #f59e0b;color:#92400e}.documentation-link,.key-concept-tip{border-radius:8px;font-size:.9rem;margin-top:1rem;padding:.75rem 1rem}.documentation-link{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #3b82f6;color:#1e40af}.documentation-link a{color:#2563eb;font-weight:600;text-decoration:none;transition:color .2s}.documentation-link a:hover{color:#1d4ed8;text-decoration:underline}.exam-container{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.exam-header{background:#fffffff2;box-shadow:0 2px 10px #0000001a;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.exam-header .header-content{align-items:center;display:flex;gap:2rem;justify-content:space-between;margin:0 auto;max-width:1200px}.exam-info h1{color:#1f2937;font-size:1.25rem;margin:0}.exam-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem}.exam-progress{flex:1 1;max-width:300px}.exam-progress span{color:#6b7280;display:block;font-size:.875rem;margin-bottom:.5rem}.progress-bar{border-radius:4px;height:8px}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.exam-timer{align-items:center;background:#f3f4f6;border-radius:12px;display:flex;font-family:Monaco,monospace;font-size:1.5rem;font-weight:700;gap:.5rem;padding:.75rem 1.5rem}.exam-timer.warning{background:#fef3c7;color:#d97706}.exam-timer.critical{animation:pulse 1s infinite;background:#fee2e2;color:#dc2626}.exam-main{margin:0 auto;max-width:900px;padding:2rem}.exam-main .question-card{background:#fff;border-radius:20px;box-shadow:0 10px 40px #0003;padding:2rem}.exam-main .question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.exam-main .question-number{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-weight:600;padding:.5rem 1rem}.exam-main .domain-badge{background:#f3f4f6;border-radius:20px;color:#4b5563;font-size:.875rem;padding:.5rem 1rem}.exam-main .question-text{color:#1f2937;font-size:1.25rem;line-height:1.6;margin-bottom:2rem}.exam-main .options-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.exam-main .option{align-items:flex-start;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.5rem;transition:all .2s}.exam-main .option:hover{background:#f8f9ff;border-color:#667eea}.exam-main .option.selected{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-color:#667eea}.exam-main .option-letter{align-items:center;background:#f3f4f6;border-radius:50%;display:flex;flex-shrink:0;font-weight:600;height:32px;justify-content:center;width:32px}.exam-main .option.selected .option-letter{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.exam-main .option-text{flex:1 1;line-height:1.5}.question-actions{display:flex;justify-content:flex-end}.exam-main .btn-next{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s}.exam-main .btn-next:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.exam-main .btn-next:disabled{cursor:not-allowed;opacity:.5}.exam-notice{margin-top:1.5rem;text-align:center}.exam-notice p{color:#ffffffe6;font-size:.9rem}.exam-results{margin:0 auto;max-width:600px;padding:2rem}.results-header{border-radius:20px;margin-bottom:2rem;padding:3rem 2rem;text-align:center}.results-header.passed{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.results-header.failed{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.results-icon{font-size:4rem;margin-bottom:1rem}.results-header h1{font-size:2rem;margin:0 0 .5rem}.results-header p{margin:0;opacity:.9}.results-score{display:flex;justify-content:center;margin-bottom:2rem}.score-circle{box-shadow:0 10px 40px #0003;height:200px;width:200px}.score-circle,.score-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.score-inner{background:#fff;flex-direction:column;height:160px;width:160px}.score-number{color:#1f2937;font-size:3rem;font-weight:700}.score-label{color:#6b7280;font-size:.875rem}.results-stats{grid-gap:1rem;background:#fff;border-radius:16px;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem;padding:1.5rem}.results-stats .stat-item{text-align:center}.results-stats .stat-value{color:#1f2937;display:block;font-size:1.5rem;font-weight:700}.results-stats .stat-label{color:#6b7280;font-size:.75rem}.time-expired-notice{background:#fef3c7;border-radius:12px;color:#92400e;margin-bottom:1.5rem;padding:1rem;text-align:center}.results-actions{display:flex;flex-direction:column;gap:1rem}.btn-view-details{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff}.btn-back-dashboard,.btn-view-details{cursor:pointer;font-size:1rem;font-weight:600;padding:1rem}.btn-back-dashboard{background:#fff;border:2px solid #667eea;border-radius:12px;color:#667eea}.confirm-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.confirm-modal{background:#fff;border-radius:20px;max-width:400px;padding:2rem;text-align:center}.confirm-modal h3{color:#1f2937;margin:0 0 1rem}.confirm-modal p{color:#6b7280;margin-bottom:1.5rem}.confirm-actions{display:flex;gap:1rem}.btn-cancel{background:#f3f4f6}.btn-cancel,.btn-confirm{border:none;flex:1 1;padding:.75rem}.btn-confirm{border-radius:8px;color:#fff;cursor:pointer;font-weight:600}.btn-confirm,.loading-state-fullscreen{background:linear-gradient(135deg,#667eea,#764ba2)}.loading-state-fullscreen{align-items:center;animation:fadeIn .3s ease-in;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-content{color:#fff;max-width:400px;padding:2rem;text-align:center}.loading-content h2{font-size:1.75rem;font-weight:700;margin:0 0 .75rem}.loading-content p{font-size:1rem;margin:0 0 1.5rem;opacity:.9}.spinner-large{animation:spin 1s linear infinite;border:6px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:80px;margin:0 auto 2rem;width:80px}.loading-dots{display:flex;gap:.5rem;justify-content:center}.loading-dots span{animation:bounce 1.4s ease-in-out infinite both;background:#fff;border-radius:50%;height:12px;width:12px}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@media (max-width:768px){.exam-header{padding:.75rem 1rem}.exam-header .header-content{flex-direction:column;gap:.75rem}.exam-info h1{font-size:1rem}.exam-progress{max-width:100%;width:100%}.exam-timer{font-size:1.1rem;padding:.5rem 1rem}.exam-main{padding:1rem}.exam-main .question-card{border-radius:12px;padding:1.25rem}.exam-main .question-header{align-items:flex-start;flex-direction:column;gap:.5rem;margin-bottom:1rem}.exam-main .question-text{font-size:1rem;margin-bottom:1.25rem}.exam-main .options-container{gap:.75rem;margin-bottom:1.25rem}.exam-main .option{padding:.875rem 1rem}.exam-main .option-letter{font-size:.85rem;height:28px;width:28px}.exam-main .option-text{font-size:.9rem}.results-stats{gap:.75rem;grid-template-columns:repeat(2,1fr);padding:1rem}.results-stats .stat-value{font-size:1.25rem}.results-stats .stat-label{font-size:.7rem}.results-header{padding:2rem 1.5rem}.results-header h1{font-size:1.5rem}.results-icon{font-size:3rem}.score-circle{height:150px;width:150px}.score-inner{height:120px;width:120px}.score-number{font-size:2.25rem}.exam-results{padding:1rem}.btn-finish-exam{font-size:.8rem;padding:.375rem .75rem}}@media (max-width:480px){.exam-header{padding:.5rem .75rem}.exam-info h1{font-size:.9rem}.exam-badge{font-size:.65rem;padding:.2rem .5rem}.exam-timer{font-size:1rem;padding:.375rem .75rem}.exam-main{padding:.75rem}.exam-main .question-card{padding:1rem}.exam-main .domain-badge,.exam-main .question-number{font-size:.75rem;padding:.375rem .75rem}.exam-main .question-text{font-size:.95rem}.exam-main .option{gap:.75rem;padding:.75rem}.exam-main .option-letter{font-size:.8rem;height:24px;width:24px}.exam-main .option-text{font-size:.85rem}.results-stats{gap:.5rem;grid-template-columns:repeat(2,1fr);padding:.75rem}.results-stats .stat-value{font-size:1.1rem}.score-circle{height:130px;width:130px}.score-inner{height:100px;width:100px}.score-number{font-size:2rem}.results-header h1{font-size:1.25rem}}.btn-mark-review{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.btn-mark-review:hover{background:#fffbeb;border-color:#f59e0b}.btn-mark-review.marked{background:#fef3c7;border-color:#f59e0b;color:#92400e}.question-nav{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:space-between;margin-top:1.5rem;padding-top:1.5rem}.btn-nav{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-prev{background:#f3f4f6;color:#4b5563}.btn-prev:hover:not(:disabled){background:#e5e7eb}.btn-prev:disabled{cursor:not-allowed;opacity:.5}.btn-review-panel{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.btn-review-panel:hover{background:#e0f2fe}.btn-next{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-next:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.review-panel-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.review-panel{background:#fff;border-radius:20px;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;width:100%}.review-panel h2{color:#1f2937;margin:0 0 1.5rem;text-align:center}.review-summary{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-bottom:1.5rem}.summary-item{border-radius:8px;font-size:.9rem;font-weight:600;padding:.5rem 1rem}.summary-item.answered{background:#d1fae5;color:#065f46}.summary-item.unanswered{background:#f3f4f6;color:#4b5563}.summary-item.marked{background:#fef3c7;color:#92400e}.review-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(10,1fr);margin-bottom:1.5rem}.review-item{aspect-ratio:1;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;position:relative;transition:all .2s}.review-item:hover:not(:disabled){transform:scale(1.1);z-index:1}.review-item.answered{background:#d1fae5;border-color:#10b981;color:#065f46}.review-item.unanswered{background:#f9fafb;border-color:#d1d5db;color:#6b7280}.review-item.marked{background:#fef3c7;border-color:#f59e0b;color:#92400e}.review-item.not-loaded{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}.mark-indicator{font-size:.7rem;position:absolute;right:-4px;top:-4px}.review-legend{color:#6b7280;display:flex;font-size:.8rem;gap:1.5rem;justify-content:center;margin-bottom:1.5rem}.legend-item{align-items:center;display:flex;gap:.5rem}.legend-item .dot{border-radius:4px;height:12px;width:12px}.dot.unanswered{background:#d1d5db}.dot.marked{background:#f59e0b}.review-actions{display:flex;gap:1rem}.btn-continue{background:#f3f4f6;border:none;border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .2s}.btn-continue:hover{background:#e5e7eb}.btn-submit-exam{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .2s}.btn-submit-exam:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-submit-exam:disabled{cursor:not-allowed;opacity:.7}@media (max-width:640px){.review-grid{gap:.375rem;grid-template-columns:repeat(5,1fr)}.review-item{font-size:.75rem}.question-nav{flex-direction:column;gap:.75rem}.btn-nav{text-align:center;width:100%}.review-summary{align-items:center;flex-direction:column;gap:.5rem}.review-panel{border-radius:16px;padding:1.25rem}.review-panel h2{font-size:1.25rem;margin-bottom:1rem}.review-actions{flex-direction:column}.btn-continue,.btn-submit-exam{width:100%}.review-legend{flex-wrap:wrap;font-size:.75rem;gap:.75rem}.confirm-modal{margin:1rem;padding:1.5rem}.confirm-modal h3{font-size:1.1rem}.confirm-actions{flex-direction:column}}.btn-finish-exam{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-finish-exam:hover{background:#fecaca}.domain-results{background:#f9fafb;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}.domain-results h3{color:#1f2937;font-size:1.1rem;margin:0 0 1rem}.domain-results-list{display:flex;flex-direction:column;gap:1rem}.domain-result-item{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1rem}.domain-result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.domain-result-name{color:#374151;font-size:.95rem;font-weight:600}.domain-result-score{font-size:1.1rem;font-weight:700}.domain-result-bar{background:#e5e7eb;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden}.domain-result-fill{border-radius:4px;height:100%;transition:width .5s ease}.domain-result-detail{color:#6b7280;font-size:.8rem}.study-feedback{background:linear-gradient(135deg,#eff6ff,#f0f9ff);border:1px solid #bfdbfe;border-radius:16px;margin-bottom:1.5rem;padding:1.5rem}.study-feedback h3{color:#1e40af;font-size:1.1rem;margin:0 0 .75rem}.study-feedback p{color:#1e3a8a;line-height:1.6;margin:0}@media (max-width:900px){.exam-header .header-content{flex-wrap:wrap;gap:.75rem}.exam-info{flex:1 1 100%}.exam-progress{flex:1 1}.btn-finish-exam{order:-1}}.history-container{background:#f9fafb;min-height:100vh}.history-main{margin:0 auto;max-width:1200px;padding:3rem 2rem}.stats-overview{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:1.5rem;padding:2rem;transition:all .3s}.stat-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-3px)}.stat-icon{flex-shrink:0;font-size:3rem}.stat-info h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#1a1a1a;font-size:2.5rem;margin:0 0 .25rem}.stat-info p{color:#6b7280;font-size:.95rem;margin:0}.certifications-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000d;padding:2.5rem}.history-container .section-title{color:#1f2937;font-size:1.75rem;font-weight:700;margin:0 0 2rem}.certifications-list{display:flex;flex-direction:column;gap:1.5rem}.cert-progress-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:2rem;transition:all .3s}.cert-progress-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.cert-progress-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1.5rem}.cert-info h3{color:#1a1a1a;font-size:1.5rem;margin:0 0 .5rem}.last-studied{color:#6b7280;font-size:.875rem;margin:0}.accuracy-badge{border-radius:20px;color:#fff;font-size:1.25rem;font-weight:700;padding:.75rem 1.25rem}.cert-progress-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.progress-stat{display:flex;flex-direction:column;gap:.5rem}.stat-label{color:#6b7280;font-size:.875rem;font-weight:500}.stat-value{color:#1a1a1a;font-size:1.75rem;font-weight:700}.progress-bar-container{margin-bottom:1.5rem}.progress-bar-label{color:#6b7280;display:flex;font-size:.875rem;font-weight:500;justify-content:space-between;margin-bottom:.5rem}.progress-bar{background:#e5e7eb;border-radius:6px;height:12px;overflow:hidden}.progress-bar-fill{border-radius:6px;height:100%;transition:width .5s ease}.cert-section{margin-bottom:3rem}.cert-section-title{border-bottom:3px solid #667eea;color:#1a1a1a;font-size:1.75rem;margin:0 0 1.5rem;padding-bottom:.75rem}.sessions-list{display:flex;flex-direction:column;gap:1rem}.session-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .3s}.session-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.session-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:1.5rem;transition:background .3s}.session-header:hover{background:#f9fafb}.session-info h4{color:#1a1a1a;font-size:1.25rem;margin:0 0 .5rem}.session-stats{color:#6b7280;font-size:.875rem;margin:0}.session-summary{align-items:center;display:flex;gap:1rem}.session-accuracy{border-radius:20px;color:#fff;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.expand-icon{color:#6b7280;font-size:1.25rem;transition:transform .3s}.session-details{animation:slideDown .3s ease-out;border-top:2px solid #e5e7eb;padding:0 1.5rem 1.5rem}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:2000px;opacity:1}}.session-details h5{color:#374151;font-size:1.1rem;margin:1.5rem 0 1rem}.questions-list{display:flex;flex-direction:column;gap:1rem}.question-item{border-left:4px solid;border-radius:8px;padding:1.5rem}.question-item.correct{background:#ecfdf5;border-left-color:#10b981}.history-container .question-item.incorrect{background:#fef2f2;border-left-color:#ef4444}.history-container .question-number{align-items:center;display:flex;font-size:.875rem;font-weight:700;gap:.5rem;margin-bottom:.75rem}.history-container .question-item.correct .question-number{color:#10b981}.history-container .question-item.incorrect .question-number{color:#ef4444}.history-container .question-content{display:flex;flex-direction:column;gap:.75rem}.history-container .question-text{font-size:1rem;font-weight:500;line-height:1.6;margin:0}.history-container .question-item .question-text,.history-container .question-text{-webkit-text-fill-color:#1f2937!important;color:#1f2937!important}.history-container .answer-info{display:flex;flex-wrap:wrap;font-size:.875rem;gap:1.5rem}.history-container .user-answer{color:#4b5563}.history-container .correct-answer{color:#10b981}.history-container .explanation{border-top:1px solid #e5e7eb;color:#4b5563;font-size:.875rem;line-height:1.6;margin:0;padding-top:.75rem}.history-container .empty-state{background:#fff;border-radius:12px;padding:4rem 2rem;text-align:center}.history-container .empty-icon{font-size:5rem;margin-bottom:1rem}.history-container .empty-state h3{color:#1f2937;font-size:1.75rem;margin:0 0 .5rem}.history-container .empty-state p{color:#4b5563;font-size:1.1rem;margin:0 0 2rem}.history-container .btn-start-studying{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:all .3s}.history-container .btn-start-studying:hover{box-shadow:0 10px 25px #667eea4d;transform:translateY(-2px)}.history-container .error-state,.history-container .loading-state{background:#fff;border-radius:12px;padding:4rem 2rem;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 1rem;width:50px}.history-container .error-state p,.history-container .loading-state p{color:#4b5563;font-size:1.1rem}.history-container .btn-retry{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s}.history-container .btn-retry:hover{background:#5568d3}@media (max-width:768px){.history-main{padding:1rem}.stats-overview{gap:.75rem;grid-template-columns:repeat(2,1fr);margin-bottom:1.5rem}.stat-card{flex-direction:column;gap:.75rem;padding:1rem;text-align:center}.stat-icon{font-size:2rem}.stat-info h3{font-size:1.5rem}.stat-info p{font-size:.8rem}.cert-progress-stats{grid-template-columns:1fr}.cert-progress-header{flex-direction:column;gap:1rem}.accuracy-badge{align-self:flex-start}.certifications-section{border-radius:12px;padding:1rem}.section-title{font-size:1.25rem;margin-bottom:1.5rem}}@media (max-width:480px){.history-main{padding:.75rem}.stats-overview{gap:.5rem;margin-bottom:1rem}.stat-card{padding:.75rem}.stat-icon{font-size:1.5rem}.stat-info h3{font-size:1.25rem}.stat-info p{font-size:.75rem}.certifications-section{padding:.75rem}.section-title{font-size:1.1rem}}.cert-integrated-section{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:2rem;padding:2rem}.cert-integrated-header{border-bottom:2px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1.5rem}.cert-integrated-title{color:#1f2937;font-size:1.75rem;margin:0 0 1rem}.cert-integrated-stats{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.cert-stat{color:#6b7280;font-size:.95rem;font-weight:500}.cert-accuracy-badge{border-radius:20px;color:#fff;font-size:.95rem;font-weight:700;padding:.5rem 1rem}.subsection-title{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 1.5rem}.cert-domains-progress-section{background:#f9fafb;border-radius:12px;margin-bottom:2.5rem;padding:1.5rem}.cert-sessions-section{margin-top:2rem}.domain-stats-section{background:#f9fafb;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.domain-stats-section h6{color:#374151;font-size:.95rem;font-weight:600;margin:0 0 1rem}.domain-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.domain-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.domain-stat-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.domain-name{color:#1f2937}.domain-accuracy,.domain-name{font-size:.875rem;font-weight:600}.domain-accuracy{border-radius:12px;color:#fff;padding:.25rem .75rem}.domain-stat-details{color:#6b7280;font-size:.875rem}.question-header-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.question-domain-badge{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:16px;color:#fff;font-size:.8rem;font-weight:600;padding:.375rem .875rem;white-space:nowrap}.domains-consolidated-section{margin-bottom:3rem}.section-subtitle{color:#6b7280;font-size:1rem;margin-bottom:2rem;margin-top:.5rem}.certifications-domains-list{display:flex;flex-direction:column;gap:2rem}.cert-domains-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem}.cert-domains-title{align-items:center;color:#1f2937;display:flex;flex-wrap:wrap;font-size:1.5rem;gap:1rem;justify-content:space-between;margin:0 0 1.5rem}.cert-overall-accuracy{font-size:1.25rem;font-weight:700}.domains-progress-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.domain-progress-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s}.domain-progress-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.domain-progress-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:1rem}.domain-progress-name{color:#1f2937;flex:1 1;font-size:.95rem;font-weight:600}.domain-progress-badge{border-radius:16px;color:#fff;font-size:.875rem;font-weight:700;padding:.375rem .75rem;white-space:nowrap}.domain-progress-bar-container{margin-bottom:1rem}.domain-progress-bar{background:#e5e7eb;border-radius:4px;height:8px;overflow:hidden}.domain-progress-bar-fill{border-radius:4px;height:100%;transition:width .5s ease}.domain-progress-stats{display:flex;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.domain-correct,.domain-questions{color:#6b7280;font-size:.875rem;font-weight:500}.domain-recommendation{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;color:#92400e;font-size:.875rem;font-weight:500;margin-top:.75rem;padding:.75rem}@media (max-width:768px){.domains-progress-grid{grid-template-columns:1fr}.cert-domains-title{font-size:1.25rem}.cert-overall-accuracy{font-size:1rem}}.session-details h6{color:#374151;font-size:1rem;font-weight:600;margin:1.5rem 0 1rem}.session-info h5{color:#1a1a1a;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.history-container .history-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;gap:.5rem;margin-bottom:2rem;padding:.5rem}.history-container .tab-btn{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;padding:1rem 1.5rem;transition:all .3s}.history-container .tab-btn:hover{background:#e5e7eb;color:#1f2937}.history-container .tab-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d;color:#fff}.history-container .tab-badge{background:#ffffff4d;border-radius:10px;color:#fff;font-size:.75rem;padding:.125rem .5rem}.history-container .tab-btn:not(.active) .tab-badge{background:#667eea;color:#fff}.exams-section{background:#fff;border-radius:16px;padding:2rem}.exam-stats-overview{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.exam-stat-card{background:linear-gradient(135deg,#f8f9ff,#f3f4f6);border-radius:12px;padding:1.5rem;text-align:center}.exam-stat-value{color:#667eea;display:block;font-size:2rem;font-weight:700}.exam-stat-label{color:#6b7280;font-size:.875rem}.exams-list{display:flex;flex-direction:column;gap:2rem}.cert-exams-section{border-top:1px solid #e5e7eb;padding-top:1.5rem}.cert-exams-title{color:#1f2937;font-size:1.25rem;margin:0 0 1rem}.exam-card{border:2px solid #e5e7eb;border-radius:12px;margin-bottom:1rem;overflow:hidden;transition:all .3s}.exam-card:hover{box-shadow:0 4px 12px #0000001a}.exam-card.passed{border-left:4px solid #10b981}.exam-card.failed{border-left:4px solid #ef4444}.exam-card-info{flex:1 1}.exam-date{color:#1f2937;font-weight:600;margin-bottom:.25rem}.exam-summary{align-items:center;color:#6b7280;display:flex;font-size:.875rem;gap:.5rem}.time-expired-badge{background:#fef3c7;border-radius:4px;color:#92400e;font-size:.75rem;padding:.125rem .5rem}.exam-card-result{text-align:right}.exam-score{font-size:1.5rem;font-weight:700}.exam-score.passed{color:#10b981}.exam-score.failed{color:#ef4444}.exam-status{font-size:.875rem;font-weight:600}.exam-status.passed{color:#10b981}.exam-status.failed{color:#ef4444}@media (max-width:768px){.history-container .history-tabs{flex-direction:column}.history-container .tab-btn{font-size:.9rem;padding:.75rem 1rem}.exam-stats-overview{gap:.75rem;grid-template-columns:repeat(2,1fr)}.exam-stat-card{padding:1rem}.exam-stat-value{font-size:1.5rem}.exam-stat-label{font-size:.8rem}.exam-card-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.exam-card-result{align-items:center;display:flex;gap:1rem;text-align:left}.code-exams-section,.exams-section{border-radius:12px;padding:1rem}.cert-exams-title{font-size:1.1rem}.exam-score{font-size:1.25rem}.session-header{align-items:flex-start;flex-direction:column;gap:.75rem;padding:1rem}.session-summary{justify-content:space-between;width:100%}.session-info h4{font-size:1.1rem}.session-details{padding:0 1rem 1rem}.question-item{padding:1rem}.cert-integrated-section{border-radius:12px;padding:1rem}.cert-integrated-title{font-size:1.25rem}.cert-integrated-stats{gap:.75rem}.cert-stat{font-size:.85rem}.cert-domains-progress-section,.domain-stats-section{padding:1rem}.domain-stats-grid{grid-template-columns:1fr}}@media (max-width:480px){.history-container .history-tabs{gap:.375rem;padding:.375rem}.history-container .tab-btn{font-size:.85rem;padding:.625rem .75rem}.exam-stats-overview{gap:.5rem}.exam-stat-card{padding:.75rem}.exam-stat-value{font-size:1.25rem}.exam-stat-label{font-size:.75rem}.exam-card-header{padding:.75rem}.exam-date{font-size:.9rem}.exam-summary{font-size:.8rem}.exam-score{font-size:1.1rem}.exam-status{font-size:.8rem}.code-exams-section,.exams-section,.session-header{padding:.75rem}.session-info h4{font-size:1rem}.session-stats{font-size:.8rem}.session-accuracy{font-size:.95rem;padding:.375rem .75rem}.question-item{padding:.75rem}.history-container .question-text{font-size:.9rem}.history-container .answer-info{font-size:.8rem;gap:1rem}.cert-integrated-section{padding:.75rem}.cert-integrated-title{font-size:1.1rem}.cert-accuracy-badge{font-size:.85rem;padding:.375rem .75rem}.subsection-title{font-size:1rem}}.exam-details{animation:slideDown .3s ease-out;background:#f9fafb;border-top:2px solid #e5e7eb;padding:1.5rem}.exam-domain-results h5{color:#374151;font-size:1.1rem;font-weight:600;margin:0 0 1.25rem}.exam-domains-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.exam-domain-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem;transition:all .3s}.exam-domain-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.exam-domain-header{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.exam-domain-name{color:#1f2937;flex:1 1;font-size:.9rem;font-weight:600}.exam-domain-badge{border-radius:12px;color:#fff;font-size:.85rem;font-weight:700;padding:.25rem .75rem;white-space:nowrap}.exam-domain-bar-container{margin-bottom:.75rem}.exam-domain-bar{background:#e5e7eb;border-radius:4px;height:8px;overflow:hidden}.exam-domain-bar-fill{border-radius:4px;height:100%;transition:width .5s ease}.exam-domain-stats{color:#6b7280;font-size:.85rem;font-weight:500}.exam-domain-warning{background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;color:#92400e;font-size:.8rem;font-weight:500;margin-top:.5rem;padding:.5rem .75rem}.exam-time-info{border-top:1px solid #e5e7eb;color:#6b7280;display:flex;flex-wrap:wrap;font-size:.9rem;gap:2rem;margin-top:1.5rem;padding-top:1rem}.exam-card-header{align-items:center;cursor:pointer;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.exam-card-header .expand-icon{color:#6b7280;font-size:1.25rem;transition:transform .3s}@media (max-width:768px){.exam-domains-grid{grid-template-columns:1fr}.exam-time-info{flex-direction:column;gap:.5rem}}.exam-study-feedback{background:linear-gradient(135deg,#e0e7ff,#f0f4ff);border-left:4px solid #667eea;border-radius:8px;color:#3730a3;font-size:.95rem;font-weight:500;line-height:1.5;margin-top:1.25rem;padding:1rem 1.25rem}.code-exams-section{background:#fff;border-radius:16px;padding:2rem}.course-code-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;margin-left:1rem;padding:.375rem .875rem}.professor-feedback{background:linear-gradient(135deg,#e0f2fe,#f0f9ff);border-left:4px solid #0284c7;border-radius:8px;margin-top:1.25rem;padding:1.25rem}.professor-feedback h5{color:#0c4a6e;font-size:1rem;font-weight:600;margin:0 0 .75rem}.professor-feedback p{color:#075985;line-height:1.6;margin:0}@media (max-width:768px){.course-code-badge{display:block;font-size:.75rem;margin-left:0;margin-top:.5rem;width:-webkit-fit-content;width:fit-content}.professor-feedback{padding:1rem}.professor-feedback h5{font-size:.95rem}.professor-feedback p{font-size:.9rem}}.history-container .custom-topics-section{background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000d;padding:2rem}.history-container .custom-topics-list{display:flex;flex-direction:column;gap:1rem}.history-container .custom-topic-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s}.history-container .custom-topic-card:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126}.history-container .custom-topic-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.history-container .custom-topic-info h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .25rem}.history-container .custom-topic-info p{color:#4b5563;font-size:.9rem;margin:0}.history-container .custom-topic-stats{display:flex;flex-wrap:wrap;gap:.75rem}.history-container .stat-badge{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:20px;color:#4338ca;font-size:.85rem;font-weight:600;padding:.375rem .75rem;white-space:nowrap}.history-container .custom-topic-footer{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding-top:1rem}.history-container .last-practiced{color:#4b5563;font-size:.85rem}.history-container .btn-continue{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;transition:all .3s}.history-container .btn-continue:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}@media (max-width:768px){.history-container .custom-topic-header{flex-direction:column}.history-container .custom-topic-stats{width:100%}.history-container .custom-topic-footer{align-items:stretch;flex-direction:column;gap:.75rem}.history-container .last-practiced{text-align:center}.history-container .btn-continue{text-align:center;width:100%}}.history-container .custom-topic-note{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.85rem;margin-top:.75rem;padding:.5rem .75rem}.history-container .custom-topic-sessions{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.history-container .no-sessions{color:#6b7280;font-style:italic;padding:1rem;text-align:center}.history-container .loading-inline{align-items:center;color:#6b7280;display:flex;gap:.75rem;justify-content:center;padding:1rem}.history-container .spinner-small{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:20px;width:20px}.profile-container .dashboard-header{background:#fff;box-shadow:0 1px 3px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:100}.profile-container .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.profile-container .dashboard-logo{color:#1a1a1a;font-size:2rem;font-weight:700;margin:0}.profile-container .logo-highlight{color:#4338ca}.profile-container .user-info{align-items:center;display:flex;gap:1.5rem}.profile-container .user-name{color:#374151;font-weight:600}.profile-container .btn-dashboard{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.profile-container .btn-dashboard:hover{box-shadow:0 5px 15px #1e1b4b66;transform:translateY(-2px)}.profile-container .btn-history{background:#0000;border:2px solid #4338ca;border-radius:8px;color:#4338ca;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.profile-container .btn-history:hover{background:#4338ca;color:#fff}.profile-container .btn-custom-topics{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.profile-container .btn-custom-topics:hover{box-shadow:0 5px 15px #34d39966;transform:translateY(-2px)}.profile-container .btn-logout{background:#0000;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.profile-container .btn-logout:hover{border-color:#4f46e5;color:#4f46e5}.history-container .dashboard-header{background:#fff;box-shadow:0 1px 3px #0000001a;position:-webkit-sticky;position:sticky;top:0;z-index:100}.history-container .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.history-container .dashboard-logo{color:#1a1a1a;font-size:2rem;font-weight:700;margin:0}.history-container .logo-highlight{color:#4338ca}.history-container .user-info{align-items:center;display:flex;gap:1.5rem}.history-container .user-name{color:#374151;font-weight:600}.history-container .btn-dashboard{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.history-container .btn-dashboard:hover{box-shadow:0 5px 15px #1e1b4b66;transform:translateY(-2px)}.history-container .btn-profile{background:#0000;border:2px solid #4338ca;border-radius:8px;color:#4338ca;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.history-container .btn-profile:hover{background:#4338ca;color:#fff}.history-container .btn-custom-topics{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.history-container .btn-custom-topics:hover{box-shadow:0 5px 15px #34d39966;transform:translateY(-2px)}.history-container .btn-logout{background:#0000;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:600;padding:.5rem 1.25rem;transition:all .3s}.history-container .btn-logout:hover{border-color:#4f46e5;color:#4f46e5}.page-title-section{margin-bottom:2rem}.history-container .page-title-section h1,.profile-container .page-title-section h1{color:#1f2937;font-size:2rem;font-weight:700;margin-bottom:.5rem}.history-container .page-title-section p,.profile-container .page-title-section p{color:#4b5563;font-size:1.1rem}@media (max-width:768px){.history-container .header-content,.profile-container .header-content{flex-wrap:wrap;gap:.75rem;padding:1rem}.history-container .dashboard-logo,.profile-container .dashboard-logo{font-size:1.5rem}.history-container .user-info,.profile-container .user-info{gap:.5rem}.history-container .user-name,.profile-container .user-name{display:none}.history-container .btn-custom-topics,.history-container .btn-dashboard,.history-container .btn-logout,.history-container .btn-profile,.profile-container .btn-custom-topics,.profile-container .btn-dashboard,.profile-container .btn-history,.profile-container .btn-logout{font-size:.875rem;padding:.5rem .75rem}.page-title-section h1{font-size:1.5rem}.page-title-section p{font-size:.9rem}}@media (max-width:480px){.history-container .header-content,.profile-container .header-content{padding:.75rem}.history-container .dashboard-logo,.profile-container .dashboard-logo{font-size:1.25rem}.history-container .user-info,.profile-container .user-info{flex-wrap:wrap;gap:.375rem;justify-content:flex-end;width:100%}.history-container .btn-custom-topics,.history-container .btn-dashboard,.history-container .btn-logout,.history-container .btn-profile,.profile-container .btn-custom-topics,.profile-container .btn-dashboard,.profile-container .btn-history,.profile-container .btn-logout{font-size:.75rem;padding:.35rem .5rem}.page-title-section h1{font-size:1.25rem}.page-title-section p{font-size:.85rem}}@media (max-width:360px){.history-container .header-content,.profile-container .header-content{padding:.5rem}.history-container .dashboard-logo,.profile-container .dashboard-logo{font-size:1.1rem}.history-container .btn-custom-topics,.history-container .btn-dashboard,.history-container .btn-logout,.history-container .btn-profile,.profile-container .btn-custom-topics,.profile-container .btn-dashboard,.profile-container .btn-history,.profile-container .btn-logout{font-size:.7rem;padding:.3rem .4rem}}.profile-container{background:#f9fafb;min-height:100vh}.profile-main{max-width:1200px}.profile-title{color:#fff;font-size:2rem;margin:0 0 .5rem}.profile-subtitle{color:#64748b;font-size:1.1rem;margin:0}.profile-main{margin:0 auto;max-width:800px;padding:2rem}.profile-content{display:flex;flex-direction:column;gap:1.5rem}.profile-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #1e293b14;overflow:hidden}.card-header{align-items:center;background:linear-gradient(135deg,#312e81,#4338ca);color:#fff;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.card-header h2{font-size:1.25rem;font-weight:600;margin:0}.btn-edit{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-edit:hover{background:#ffffff4d}.card-body{padding:1.5rem}.info-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:.375rem}.info-label{color:#64748b;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{color:#1e293b;font-size:1.1rem;font-weight:500}.info-value.role-badge{align-items:center;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-radius:20px;color:#4338ca;display:inline-flex;font-weight:600;gap:.375rem;padding:.375rem .75rem;width:-webkit-fit-content;width:fit-content}.interests-display{min-height:60px}.interests-tags{display:flex;flex-wrap:wrap;gap:.75rem}.interest-tag{align-items:center;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:1px solid #c7d2fe;border-radius:25px;color:#4338ca;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.625rem 1rem}.no-interests{color:#64748b;margin:0}.no-interests button{background:none;border:none;color:#4338ca;cursor:pointer;font-weight:600;margin-left:.25rem;padding:0;text-decoration:underline}.interests-editor{display:flex;flex-direction:column;gap:1.25rem}.editor-hint{color:#64748b;font-size:.95rem;margin:0}.categories-grid{display:flex;flex-wrap:wrap;gap:.75rem}.category-option{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:inline-flex;flex-shrink:0;gap:.5rem;min-width:-webkit-fit-content;min-width:fit-content;padding:.75rem 1.25rem;position:relative;transition:all .2s}.category-option:hover{background:#eef2ff;border-color:#4338ca}.category-option.selected{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-color:#4338ca}.category-icon{font-size:1.25rem}.category-name{color:#334155;font-weight:500;white-space:nowrap}.check-icon{color:#4338ca;font-weight:700}.editor-actions{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;padding-top:.5rem}.btn-cancel{background:#0000;border:2px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-cancel:hover:not(:disabled){border-color:#94a3b8;color:#475569}.btn-save{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-save:hover:not(:disabled){box-shadow:0 4px 12px #4338ca4d;transform:translateY(-2px)}.btn-cancel:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.6}.message{border-radius:8px;font-weight:500;padding:.875rem 1rem}.message.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.message.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.loading-inline{align-items:center;color:#64748b;display:flex;gap:.75rem}.spinner-small{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#4338ca;height:20px;width:20px}@media (max-width:768px){.profile-main{padding:1rem}.card-header{flex-direction:column;gap:.75rem;padding:1rem;text-align:center}.card-header h2{font-size:1.1rem}.btn-edit{width:100%}.card-body{padding:1rem}.info-grid{gap:1rem;grid-template-columns:1fr}.info-label{font-size:.75rem}.info-value{font-size:1rem}.interests-tags{gap:.5rem}.interest-tag{font-size:.85rem;padding:.5rem .75rem}.categories-grid{justify-content:center}.category-option{font-size:.9rem;padding:.625rem 1rem}.category-icon{font-size:1.1rem}.editor-actions{flex-direction:column}.btn-cancel,.btn-save{width:100%}}@media (max-width:480px){.profile-main{padding:.75rem}.profile-content{gap:1rem}.profile-card{border-radius:12px}.card-header{padding:.875rem}.card-header h2{font-size:1rem}.card-body{padding:.875rem}.info-item{gap:.25rem}.info-label{font-size:.7rem}.info-value{font-size:.95rem}.interests-tags{gap:.375rem}.interest-tag{font-size:.8rem;padding:.375rem .625rem}.categories-grid{gap:.5rem}.category-option{font-size:.85rem;padding:.5rem .75rem}.category-icon{font-size:1rem}.category-name,.editor-hint{font-size:.85rem}.btn-cancel,.btn-save{font-size:.9rem;padding:.625rem 1rem}.message{font-size:.9rem;padding:.75rem}}.total-spent{background:#d1fae5;border-radius:20px;color:#10b981;font-size:.9rem;font-weight:600;padding:.375rem .75rem}.no-payments{color:#64748b;padding:2rem;text-align:center}.payments-list{display:flex;flex-direction:column;gap:.75rem}.payment-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;padding:1rem}.payment-info{display:flex;flex-direction:column;gap:.25rem}.payment-topic{color:#1e293b;font-weight:600}.payment-type{color:#64748b;font-size:.8rem}.payment-details{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.payment-amount{color:#10b981;font-weight:700}.payment-date{color:#94a3b8;font-size:.8rem}@media (max-width:480px){.payment-item{align-items:flex-start;flex-direction:column;gap:.75rem}.payment-details{align-items:flex-start;flex-direction:row;justify-content:space-between;width:100%}}.mode-selector-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.mode-selector-modal{animation:modalSlideIn .3s ease;background:#fff;border-radius:20px;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s;width:40px}.modal-close:hover{background:#f3f4f6;color:#1f2937}.modal-header{border-bottom:1px solid #e5e7eb;padding:2rem 2rem 1rem;text-align:center}.modal-header h2{color:#1f2937;font-size:1.5rem;margin:0 0 .5rem}.modal-header p{color:#6b7280;margin:0}.mode-options{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);padding:2rem}.mode-card{border:2px solid #e5e7eb;border-radius:16px;cursor:pointer;display:flex;flex-direction:column;padding:1.5rem;transition:all .3s}.mode-card:hover{box-shadow:0 12px 24px #0000001a;transform:translateY(-4px)}.mode-card.practice:hover{border-color:#10b981}.mode-card.exam:hover{border-color:#667eea}.mode-icon{font-size:3rem;margin-bottom:1rem;text-align:center}.mode-card h3{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem;text-align:center}.mode-description{color:#6b7280;font-size:.9rem;margin:0 0 1rem;text-align:center}.mode-features{flex-grow:1;list-style:none;margin:0 0 1.5rem;padding:0}.mode-features li{border-bottom:1px solid #f3f4f6;color:#4b5563;font-size:.9rem;padding:.5rem 0}.mode-features li:last-child{border-bottom:none}.btn-select-mode{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s;width:100%}.btn-select-mode.practice{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-select-mode.practice:hover{background:linear-gradient(135deg,#059669,#047857)}.btn-select-mode.exam{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-select-mode.exam:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)}.mode-note{color:#6b7280;font-size:.875rem;margin:0;padding:0 2rem 2rem;text-align:center}@media (max-width:640px){.mode-selector-overlay{align-items:flex-end;padding:.5rem}.mode-selector-modal{border-radius:16px 16px 0 0;max-height:95vh}.modal-close{font-size:1.5rem;height:36px;right:.75rem;top:.75rem;width:36px}.mode-options{gap:1rem;grid-template-columns:1fr;padding:1rem}.modal-header{padding:1.25rem 1rem 1rem}.modal-header h2{font-size:1.25rem;padding-right:2rem}.modal-header p{font-size:.9rem}.mode-card{border-radius:12px;padding:1.25rem}.mode-icon{font-size:2.5rem;margin-bottom:.75rem}.mode-card h3{font-size:1.1rem}.mode-description{font-size:.85rem;margin-bottom:.75rem}.mode-features{margin-bottom:1rem}.mode-features li{font-size:.85rem;padding:.375rem 0}.btn-select-mode{font-size:.95rem;padding:.875rem}.mode-note{font-size:.8rem;padding:0 1rem 1.25rem}}@media (max-width:480px){.mode-selector-modal{max-height:90vh}.mode-options{gap:.75rem;padding:.75rem}.mode-card{padding:1rem}.mode-icon{font-size:2rem}.mode-card h3{font-size:1rem}}.mode-card.exam.locked{opacity:.9;position:relative}.exam-locked-badge{border-radius:20px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;margin-bottom:.5rem;padding:.35rem .75rem}.btn-select-mode.exam.btn-unlock,.exam-locked-badge{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-select-mode.exam.btn-unlock:hover{background:linear-gradient(135deg,#d97706,#b45309)}.access-active-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;margin-bottom:.5rem;padding:.35rem .75rem}.admin-login-container{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);display:flex;justify-content:center;min-height:100vh;padding:1rem}.admin-login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:2.5rem;width:100%}.admin-login-header{margin-bottom:2rem;text-align:center}.admin-login-header h1{color:#1a1a1a;font-size:1.5rem;margin:0 0 .5rem}.admin-login-header p{font-size:1.25rem;font-weight:700;margin:0}.admin-login-header .logo-highlight{color:#6366f1}.admin-login-card .form-group{margin-bottom:1.25rem}.admin-login-card label{color:#374151;display:block;font-weight:500;margin-bottom:.5rem}.admin-login-card input{border:2px solid #e5e7eb;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:.875rem;transition:border-color .3s;width:100%}.admin-login-card input:focus{border-color:#6366f1;outline:none}.error-message{background:#fef2f2;border-radius:8px;color:#dc2626;font-size:.9rem;margin-bottom:1rem;padding:.75rem;text-align:center}.btn-admin-login{background:linear-gradient(135deg,#312e81,#4338ca);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:transform .2s,box-shadow .2s;width:100%}.btn-admin-login:hover:not(:disabled){box-shadow:0 10px 25px #4338ca4d;transform:translateY(-2px)}.btn-admin-login:disabled{cursor:not-allowed;opacity:.7}.admin-note{color:#64748b;font-size:.85rem;margin-bottom:0;margin-top:1.5rem;text-align:center}.admin-login-card input:disabled{background:#f1f5f9;cursor:not-allowed}.admin-container{background:#f5f7fa;min-height:100vh}.admin-header{align-items:center;background:linear-gradient(135deg,#1e1b4b,#312e81);color:#fff;display:flex;justify-content:space-between;padding:1.5rem 2rem}.admin-header h1{font-size:1.5rem;margin:0}.btn-logout-admin{background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;padding:.6rem 1.2rem;transition:all .2s}.btn-logout-admin:hover{background:#ffffff40}.admin-main{margin:0 auto;max-width:1400px;padding:2rem}.admin-filters{align-items:flex-end;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.4rem}.filter-group label{color:#64748b;font-size:.85rem;font-weight:500}.filter-group input{border:1px solid #e2e8f0;border-radius:8px;font-size:.95rem;padding:.6rem 1rem;transition:all .2s}.filter-group input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.search-input{min-width:250px}.role-select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.95rem;min-width:150px;padding:.6rem 1rem}.role-select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.btn-clear-filter{background:#fee2e2;border:none;border-radius:8px;color:#dc2626;cursor:pointer;font-size:.9rem;padding:.6rem 1rem;transition:all .2s}.btn-clear-filter:hover{background:#fecaca}.btn-refresh{background:#6366f1;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;margin-left:auto;padding:.6rem 1.2rem;transition:all .2s}.btn-refresh:hover:not(:disabled){background:#4f46e5}.btn-refresh:disabled{cursor:not-allowed;opacity:.6}.admin-summary{display:flex;gap:1rem;margin-bottom:1.5rem}.summary-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;min-width:150px;padding:1.5rem 2rem}.summary-number{color:#1e1b4b;font-size:2.5rem;font-weight:700}.summary-label{color:#64748b;font-size:.9rem;margin-top:.25rem}.admin-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.admin-section h2{border-bottom:1px solid #e2e8f0;color:#1e1b4b;font-size:1.2rem;margin:0;padding:1.25rem 1.5rem}.table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem 1.25rem;text-align:left;text-transform:uppercase}.admin-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.95rem;padding:1rem 1.25rem}.admin-table tbody tr:hover{background:#f8fafc}.cell-name .user-info{display:flex;flex-direction:column}.cell-name .user-name{color:#1e1b4b;font-weight:600}.cell-name .user-id{color:#94a3b8;font-size:.8rem}.cell-email{color:#6366f1}.cell-date{color:#64748b;font-size:.9rem}.badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:500;padding:.35rem .75rem}.badge-student{background:#dbeafe;color:#1d4ed8}.badge-professor{background:#fef3c7;color:#b45309}.loading-admin{color:#64748b;padding:3rem;text-align:center}.empty-state{color:#94a3b8;font-size:1rem;padding:3rem}@media (max-width:768px){.admin-main{padding:1rem}.admin-filters{align-items:stretch;flex-direction:column}.filter-group input{width:100%}.search-input{min-width:auto}.btn-refresh{margin-left:0;width:100%}.admin-summary{flex-direction:column}.admin-table td,.admin-table th{font-size:.85rem;padding:.75rem}}.admin-tabs{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.5rem}.tab-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem 1.5rem;transition:all .2s}.tab-btn:hover{background:#f1f5f9}.tab-btn.active{background:#6366f1;color:#fff}.stats-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.charts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr);margin-top:1.5rem}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:1.5rem}.chart-card h3{color:#1e1b4b;font-size:1.1rem;margin:0 0 1.25rem}.bar-chart{display:flex;flex-direction:column;gap:.75rem}.bar-row{align-items:center;display:flex;gap:1rem}.bar-label{color:#475569;flex-shrink:0;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:120px}.bar-container{background:#f1f5f9;border-radius:6px;flex:1 1;height:28px;overflow:hidden}.bar{align-items:center;border-radius:6px;display:flex;height:100%;justify-content:flex-end;min-width:40px;padding-right:8px;transition:width .5s ease}.bar-value{color:#fff;font-size:.8rem;font-weight:600}.no-data{color:#94a3b8;font-style:italic;padding:2rem;text-align:center}@media (max-width:1024px){.stats-summary{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media (max-width:640px){.admin-tabs{flex-direction:column}.stats-summary{grid-template-columns:1fr}.bar-label{font-size:.75rem;width:80px}}.payments-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.summary-card.highlight{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.summary-card.highlight .summary-label,.summary-card.highlight .summary-number{color:#fff}.summary-card.revenue{background:linear-gradient(135deg,#10b981,#059669)}.summary-card.revenue .summary-label,.summary-card.revenue .summary-number{color:#fff}.summary-card.revenue .summary-number{font-size:1.8rem}.badge-cert{background:#dbeafe;color:#1d4ed8}.badge-custom{color:#b45309}.badge-success{background:#d1fae5;color:#059669}.badge-pending{background:#fef3c7;color:#d97706}.cell-amount{color:#059669;font-weight:600}@media (max-width:1024px){.payments-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.payments-summary{grid-template-columns:1fr}.summary-card.revenue .summary-number{font-size:1.4rem}}.admin-actions{margin-bottom:1.5rem}.btn-create{background:linear-gradient(135deg,#10b981,#059669)}.btn-create:hover{box-shadow:0 4px 12px #10b9814d}.cell-code code{background:#f3f4f6;border-radius:4px;font-family:monospace;font-size:.9rem;font-weight:600;letter-spacing:.05em;padding:.25rem .5rem}.cell-desc{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-uses{font-weight:600}.uses-full{color:#ef4444}.badge-certification{background:#dbeafe;color:#1d4ed8}.badge-custom{background:#fef3c7;color:#d97706}.badge-active{background:#d1fae5;color:#059669}.badge-inactive{background:#f3f4f6;color:#6b7280}.badge-used{background:#fee2e2;color:#dc2626}.badge-expired{background:#fef3c7;color:#d97706}.row-inactive{background:#f9fafb;opacity:.6}.btn-small{border:none;border-radius:4px;cursor:pointer;font-size:.8rem;padding:.35rem .75rem;transition:all .2s}.btn-danger{background:#fee2e2;color:#dc2626}.btn-danger:hover{background:#fecaca}.coupons-usage-section{background:#f9fafb;border-radius:12px;margin-top:2rem;padding:1.5rem}.coupons-usage-section h3{color:#374151;font-size:1.1rem;margin:0 0 1rem}.coupon-usage-item{align-items:center;background:#fff;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.5rem;padding:.75rem}.coupon-usage-item strong{background:#e5e7eb;border-radius:4px;font-family:monospace;padding:.25rem .5rem}.usage-list{color:#6b7280;font-size:.9rem}.usage-date{color:#9ca3af;font-size:.8rem;margin-left:auto}.coupon-modal{max-width:500px}.coupon-modal h2{font-size:1.25rem;margin:0 0 1.5rem}.coupon-modal .form-group{margin-bottom:1rem}.coupon-modal label{color:#374151;display:block;font-weight:500;margin-bottom:.5rem}.coupon-modal input,.coupon-modal select{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem;width:100%}.coupon-modal input:focus,.coupon-modal select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.modal-actions{justify-content:flex-end}.modal-actions .btn-secondary{background:#f3f4f6;color:#374151}.modal-actions .btn-primary,.modal-actions .btn-secondary{border:none;border-radius:8px;cursor:pointer;padding:.75rem 1.5rem}.modal-actions .btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-weight:600}.modal-actions .btn-primary:hover{box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px)}@media (max-width:600px){.form-row{grid-template-columns:1fr}.coupon-usage-item{align-items:flex-start;flex-direction:column}.usage-date{margin-left:0}}.terms-container{background:#f9fafb;min-height:100vh}.terms-header{background:linear-gradient(135deg,#0f0a1e,#1e1b4b 50%,#312e81);color:#fff;padding:2rem 5%;text-align:center}.terms-header h1{font-size:2.5rem;margin:1rem 0 .5rem}.last-updated{color:#a5b4fc;font-size:.9rem}.btn-back{background:#ffffff1a;border:1px solid #ffffff4d;font-size:.9rem;left:5%;padding:.5rem 1rem;position:absolute;top:2rem;transition:all .3s}.btn-back:hover{background:#fff3}.terms-content{margin:0 auto;max-width:900px;padding:3rem 2rem}.terms-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem;padding:2rem}.terms-section h2{border-bottom:2px solid #e5e7eb;color:#1e1b4b;font-size:1.5rem;margin:0 0 1rem;padding-bottom:.75rem}.terms-section h3{color:#374151;font-size:1.1rem;margin:1.5rem 0 .75rem}.terms-section p,.terms-section ul{color:#4b5563;line-height:1.7;margin-bottom:1rem}.terms-section ul{padding-left:1.5rem}.terms-section li{margin-bottom:.75rem}.terms-section li strong{color:#1e1b4b}.important-section{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #f59e0b}.important-section h2{border-bottom-color:#f59e0b;color:#92400e}.highlight-text{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.highlight-text strong{color:#92400e}.disclaimer-box{background:linear-gradient(135deg,#eef2ff,#e0e7ff);border:2px solid #4f46e5}.disclaimer-box h2{border-bottom-color:#4f46e5;color:#1e1b4b}.disclaimer-box p{color:#1e1b4b}.terms-footer{background:#fff;border-top:1px solid #e5e7eb;padding:2rem;text-align:center}.btn-back-bottom{background:linear-gradient(135deg,#1e1b4b,#4f46e5);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s}.btn-back-bottom:hover{box-shadow:0 10px 25px #1e1b4b4d;transform:translateY(-2px)}@media (max-width:768px){.terms-header{padding:1.5rem 1rem;position:relative}.terms-header h1{font-size:1.75rem;margin-top:2.5rem}.btn-back{left:auto;margin-bottom:1rem;position:relative;top:auto}.terms-content{padding:1.5rem 1rem}.terms-section{margin-bottom:1rem;padding:1.5rem}.terms-section h2{font-size:1.25rem}.terms-section h3{font-size:1rem}.terms-section p,.terms-section ul{font-size:.95rem}}.custom-topics-page{background:linear-gradient(135deg,#0f0c29,#1a1a2e 50%,#16213e);min-height:100vh}.custom-topics-page .dashboard-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border-bottom:1px solid #ffffff1a;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.custom-topics-page .header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px}.custom-topics-page .dashboard-logo{color:#fff;font-size:1.75rem;font-weight:700;margin:0}.custom-topics-page .logo-highlight{color:#34d399}.custom-topics-page .user-info{align-items:center;display:flex;gap:.75rem}.custom-topics-page .user-name{color:#c7d2fe;font-weight:500;margin-right:.5rem}.custom-topics-page .btn-dashboard,.custom-topics-page .btn-history,.custom-topics-page .btn-profile{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.custom-topics-page .btn-dashboard:hover,.custom-topics-page .btn-history:hover,.custom-topics-page .btn-profile:hover{background:#fff3}.custom-topics-page .btn-dashboard{background:linear-gradient(135deg,#4f46e5,#6366f1);border:none}.custom-topics-page .btn-logout{background:#ef444433;border:1px solid #ef44444d;border-radius:8px;color:#fca5a5;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.custom-topics-page .btn-logout:hover{background:#ef44444d}.custom-topics-main{margin:0 auto;max-width:1400px;padding:2rem}.custom-topics-content{width:100%}.section-header{margin-bottom:2rem}.section-title-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.section-header h2{color:#fff;font-size:1.75rem;margin:0}.section-header p{color:#a5b4fc;margin:0}.btn-create{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-create:hover{box-shadow:0 4px 15px #34d39966;transform:translateY(-2px)}.loading-state .spinner{animation:spin 1s linear infinite;border:4px solid #ffffff1a;border-radius:50%;border-top-color:#34d399;height:50px;margin:0 auto 1rem;width:50px}.loading-state p{color:#a5b4fc;font-size:1.1rem}.empty-state{background:#ffffff0d;border-radius:16px;margin:2rem auto;max-width:500px;padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#fff;margin-bottom:.5rem}.empty-state p{color:#a5b4fc;margin-bottom:1.5rem}.topics-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.topic-card{background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;padding:1.5rem;transition:all .3s}.topic-card:hover{border-color:#34d3994d;box-shadow:0 8px 30px #0000004d;transform:translateY(-4px)}.topic-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem}.topic-card-header h3{color:#fff;font-size:1.25rem;margin:0}.btn-delete-small{background:#0000;border:none;cursor:pointer;font-size:1rem;opacity:.5;transition:opacity .2s}.btn-delete-small:hover{opacity:1}.topic-description{color:#a5b4fc;font-size:.9rem;line-height:1.4;margin-bottom:1rem}.topic-meta{color:#6b7280;display:flex;font-size:.85rem;gap:1rem;margin-bottom:.5rem}.topic-last-practice{color:#34d399;font-size:.8rem;margin-bottom:1rem}.topic-actions{display:flex;gap:.75rem;margin-top:1rem}.topic-actions .btn-secondary{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;padding:.6rem;transition:all .2s}.topic-actions .btn-secondary:hover{background:#fff3}.topic-actions .btn-primary{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-weight:600;padding:.6rem;transition:all .2s}.topic-actions .btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-primary{transition:all .2s}.btn-primary:hover:not(:disabled){box-shadow:0 4px 15px #34d39966;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{transition:all .2s}.btn-secondary:hover{background:#fff3}.modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:linear-gradient(135deg,#1e1b4b,#312e81);border-radius:16px;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:100%}.modal-content.modal-large{max-width:700px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.modal-header h2{color:#fff;margin:0}.btn-close{background:#0000;border:none;color:#fff;cursor:pointer;font-size:1.5rem;opacity:.7}.btn-close:hover{opacity:1}.modal-content h2{color:#fff;margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{color:#c7d2fe;display:block;font-size:.9rem;margin-bottom:.5rem}.form-group input,.form-group textarea{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;box-sizing:border-box;color:#fff;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#34d399;outline:none}.form-group textarea{min-height:80px;resize:vertical}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions .btn-primary,.modal-actions .btn-secondary{border-radius:8px;cursor:pointer;flex:1 1;font-weight:600;padding:.75rem;transition:all .2s}.btn-large{font-size:1.1rem;padding:1rem!important}.documents-section{margin:1.5rem 0}.documents-section h3{color:#fff;font-size:1rem;margin-bottom:1rem}.documents-list{margin-bottom:1rem}.document-item{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.75rem}.document-item.uploading{opacity:.7}.doc-icon{font-size:1.25rem}.doc-name{color:#fff;flex:1 1;font-size:.9rem}.doc-date{color:#6b7280;font-size:.8rem}.upload-progress{background:#ffffff1a;border-radius:2px;height:4px;overflow:hidden;width:100px}.progress-bar{background:#34d399;height:100%;transition:width .3s}.upload-area{border:2px dashed #fff3;border-radius:12px;cursor:pointer;display:block;padding:2rem;text-align:center;transition:all .2s}.upload-area:hover{background:#34d3990d;border-color:#34d399}.upload-content{align-items:center;display:flex;flex-direction:column;gap:.5rem}.upload-icon{font-size:2rem}.upload-content span{color:#a5b4fc}.upload-hint{color:#6b7280!important;font-size:.8rem}.topic-detail-description{color:#a5b4fc;line-height:1.5;margin-bottom:1.5rem}@media (max-width:768px){.custom-topics-page .dashboard-header{padding:.75rem 1rem}.custom-topics-page .header-content{flex-direction:column;gap:1rem}.custom-topics-page .dashboard-logo{font-size:1.5rem}.custom-topics-page .user-info{flex-wrap:wrap;gap:.5rem;justify-content:center}.custom-topics-page .user-name{margin-bottom:.25rem;text-align:center;width:100%}.custom-topics-page .btn-dashboard,.custom-topics-page .btn-history,.custom-topics-page .btn-logout,.custom-topics-page .btn-profile{font-size:.85rem;padding:.4rem .75rem}.custom-topics-main{padding:1rem}.section-title-row{align-items:stretch;flex-direction:column;gap:1rem}.section-header h2{font-size:1.5rem;text-align:center}.section-header p{font-size:.9rem;text-align:center}.btn-create{width:100%}.topics-grid{gap:1rem;grid-template-columns:1fr}.topic-card{padding:1.25rem}.topic-card-header h3{font-size:1.1rem}.topic-description{font-size:.85rem}.topic-meta{font-size:.8rem}.modal-content{margin:.5rem;padding:1.5rem}.modal-header h2{font-size:1.25rem}.form-group label{font-size:.85rem}.form-group input,.form-group textarea{font-size:16px;padding:.625rem}.modal-actions{flex-direction:column}.modal-actions .btn-primary,.modal-actions .btn-secondary{width:100%}}@media (max-width:480px){.custom-topics-page .dashboard-header{padding:.5rem .75rem}.custom-topics-page .dashboard-logo{font-size:1.25rem}.custom-topics-page .btn-dashboard,.custom-topics-page .btn-history,.custom-topics-page .btn-logout,.custom-topics-page .btn-profile{font-size:.75rem;padding:.35rem .5rem}.custom-topics-main{padding:.75rem}.section-header h2{font-size:1.25rem}.topic-card{padding:1rem}.topic-card-header h3{font-size:1rem}.topic-actions{flex-direction:column;gap:.5rem}.topic-actions .btn-primary,.topic-actions .btn-secondary{padding:.75rem;width:100%}.modal-content{border-radius:12px;padding:1rem}.upload-area{padding:1.5rem}.upload-icon{font-size:1.5rem}}.topic-access-active{align-items:center;background:linear-gradient(135deg,#10b98133,#34d39933);border:1px solid #34d3994d;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.topic-access-active .access-badge{color:#34d399;font-size:.8rem;font-weight:600}.topic-access-active .access-days{color:#6ee7b7;font-size:.75rem;font-weight:500}.topic-access-locked{align-items:center;background:linear-gradient(135deg,#f59e0b26,#d9770626);border:1px solid #f59e0b4d;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.topic-access-locked .lock-badge{color:#fbbf24;font-size:.8rem;font-weight:600}.topic-access-locked .access-price{color:#fcd34d;font-size:.75rem;font-weight:600}.topic-access-free{align-items:center;background:linear-gradient(135deg,#3b82f626,#2563eb26);border:1px solid #3b82f64d;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.5rem .75rem}.topic-access-free .free-badge{color:#60a5fa;font-size:.8rem;font-weight:600}.topic-access-free .free-badge.exhausted{color:#f87171}.topic-access-free .access-price{color:#93c5fd;font-size:.75rem;font-weight:500}.topic-access-active.modal-access,.topic-access-locked.modal-access{margin:1rem 0}.btn-primary.btn-unlock{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-primary.btn-unlock:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 5px 15px #f59e0b66}@media (max-width:480px){.topic-access-active,.topic-access-locked{flex-direction:column;gap:.25rem;text-align:center}}.custom-practice-container{background:linear-gradient(135deg,#0f0c29,#1a1a2e 50%,#16213e);min-height:100vh}.practice-header{align-items:center;background:#0003;border-bottom:1px solid #ffffff1a;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.practice-info{flex:1 1;min-width:0;text-align:center}.practice-info h2{color:#fff;font-size:1.1rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.question-counter{color:#a5b4fc;display:block;font-size:.85rem;margin-top:.25rem}.practice-stats{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;flex-shrink:0;font-size:1.1rem;font-weight:600;gap:.25rem;padding:.5rem 1rem}.stat-correct{color:#34d399}.stat-total{color:#6b7280}.loading-state{padding:4rem 2rem;text-align:center}.loading-spinner-large{animation:pulse 1.5s ease-in-out infinite;font-size:4rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.loading-state p{color:#fff;font-size:1.25rem;margin-top:1rem}.loading-hint{color:#a5b4fc!important;font-size:.9rem!important}.error-state{margin:0 auto;max-width:400px;padding:4rem 2rem;text-align:center}.error-icon{font-size:3rem;margin-bottom:1rem}.error-state h2{color:#fff;margin-bottom:.5rem}.error-state p{color:#a5b4fc;margin-bottom:1.5rem}.error-actions{display:flex;gap:1rem;justify-content:center}.practice-content{flex:1 1}.question-card{background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;padding:2rem}.custom-practice-container .question-text{color:#fff!important;font-size:1.2rem;line-height:1.6;margin-bottom:2rem}.options-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.option-btn{align-items:flex-start;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;text-align:left;transition:all .2s}.option-btn:hover:not(:disabled){background:#ffffff1a;border-color:#fff3}.option-btn.selected{background:#6366f133;border-color:#6366f1}.option-btn.correct{background:#34d39933;border-color:#34d399}.option-btn.incorrect{background:#ef444433;border-color:#ef4444}.option-btn:disabled{cursor:default}.custom-practice-container .option-letter{align-items:center;background:#ffffff1a;border-radius:8px;color:#fff!important;display:flex;flex-shrink:0;font-weight:600;height:32px;justify-content:center;width:32px}.custom-practice-container .option-btn.selected .option-letter{background:#6366f1;color:#fff!important}.custom-practice-container .option-btn.correct .option-letter{background:#34d399;color:#fff!important}.custom-practice-container .option-btn.incorrect .option-letter{background:#ef4444;color:#fff!important}.custom-practice-container .option-text{color:#fff!important;line-height:1.5;padding-top:4px}.btn-back{background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.6rem 1.25rem;transition:all .2s}.btn-back:hover{box-shadow:0 4px 15px #6366f166;transform:translateY(-2px)}.btn-submit{background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .2s;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 4px 15px #6366f166;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.5}.btn-next{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:1.5rem;padding:1rem;transition:all .2s;width:100%}.btn-next:hover{box-shadow:0 4px 15px #34d39966;transform:translateY(-2px)}.btn-secondary{background:#ffffff1a;border:1px solid #fff3;border-radius:8px}.btn-primary,.btn-secondary{color:#fff;cursor:pointer;padding:.75rem 1.5rem}.btn-primary{background:linear-gradient(135deg,#34d399,#10b981);border:none;border-radius:8px;font-weight:600}.result-section{margin-top:1.5rem}.result-banner{border-radius:12px;font-size:1.1rem;font-weight:600;margin-bottom:1.5rem;padding:1rem;text-align:center}.result-banner.correct{background:#34d39933;border:1px solid #34d3994d;color:#34d399}.result-banner.incorrect{background:#ef444433;border:1px solid #ef44444d;color:#ef4444}.explanation-section{background:#ffffff0d;border-radius:12px;padding:1.5rem}.explanation-section h4{color:#fff;font-size:1rem;margin:0 0 .75rem}.explanation-section>p{color:#c7d2fe;line-height:1.6;margin-bottom:1rem}.option-explanations{border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem}.option-exp{background:#1e293be6;border:1px solid #64748b80;border-radius:6px;color:#fff;font-size:.9rem;padding:.75rem}.option-exp.correct{background:#064e3be6;border-color:#34d39980;color:#86efac}.option-exp strong{color:#fcd34d;font-weight:700;margin-right:.25rem}@media (max-width:768px){.practice-header{flex-wrap:nowrap;padding:.75rem 1rem}.practice-header .btn-back{font-size:.85rem;padding:.5rem .75rem}.practice-info h2{font-size:.95rem}.question-counter{font-size:.8rem}.practice-stats{font-size:.95rem;padding:.4rem .75rem}.practice-content{padding:1rem}.question-card{padding:1.25rem}.question-text{font-size:1rem}.option-btn{padding:.875rem 1rem}}@media (max-width:480px){.practice-header{gap:.5rem;padding:.5rem .75rem}.practice-header .btn-back{font-size:.8rem;padding:.4rem .6rem}.practice-info h2{font-size:.85rem}.question-counter{font-size:.75rem}.practice-stats{font-size:.85rem;padding:.35rem .5rem}.practice-content{padding:.75rem}.question-card{border-radius:12px;padding:1rem}.question-text{font-size:.95rem;margin-bottom:1.5rem}.options-list{gap:.5rem;margin-bottom:1rem}.option-btn{gap:.75rem;padding:.75rem}.option-letter{font-size:.85rem;height:28px;width:28px}.option-text{font-size:.9rem}.btn-next,.btn-submit,.result-banner{font-size:1rem;padding:.875rem}.explanation-section{padding:1rem}.explanation-section h4{font-size:.95rem}.explanation-section>p{font-size:.9rem}.option-exp{font-size:.85rem;padding:.375rem}.error-state{padding:2rem 1rem}.error-icon{font-size:2.5rem}.error-state h2{font-size:1.25rem}.error-state p{font-size:.9rem}.error-actions{flex-direction:column;gap:.75rem}.error-actions .btn-primary,.error-actions .btn-secondary{width:100%}}.practice-main{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:1fr 350px;margin:0 auto;max-width:1400px;padding:1.5rem}.chat-assistant{background:#ffffff14;border:1px solid #ffffff1a;border-radius:16px;display:flex;flex-direction:column;height:-webkit-fit-content;height:fit-content;max-height:calc(100vh - 150px);position:-webkit-sticky;position:sticky;top:80px}.chat-header{background:linear-gradient(135deg,#4f46e5,#6366f1);border-bottom:1px solid #ffffff1a;border-radius:16px 16px 0 0;padding:1rem 1.25rem}.chat-header h3{align-items:center;color:#fff;display:flex;font-size:1rem;gap:.5rem;margin:0}.chat-messages{flex:1 1;max-height:350px;min-height:200px;overflow-y:auto;padding:1rem}.chat-message{animation:slideIn .3s ease-out;margin-bottom:.75rem}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{text-align:right}.message-bubble{word-wrap:break-word;border-radius:12px;display:inline-block;font-size:.9rem;line-height:1.5;max-width:85%;padding:.75rem 1rem}.chat-message.user .message-bubble{background:linear-gradient(135deg,#4f46e5,#6366f1);border-bottom-right-radius:4px;color:#fff}.chat-message.assistant .message-bubble{background:#fff;border:1px solid #fff3;border-bottom-left-radius:4px;color:#1e293b}.chat-empty{color:#a5b4fc;padding:2rem 1rem;text-align:center}.chat-empty-icon{font-size:2.5rem;margin-bottom:.5rem}.chat-empty p{font-size:.95rem;margin:0}.chat-hint-text{font-size:.8rem!important;margin-top:.5rem!important;opacity:.7}.chat-input-container{border-top:1px solid #ffffff1a;padding:1rem}.chat-input-wrapper{display:flex;gap:.5rem}.chat-textarea{background:#ffffff1a;border:1px solid #fff3;border-radius:10px;color:#fff;flex:1 1;font-family:inherit;font-size:.9rem;padding:.75rem;resize:none;transition:all .3s}.chat-textarea::placeholder{color:#a5b4fc}.chat-textarea:focus{background:#ffffff26;border-color:#6366f1;outline:none}.btn-send{background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:.75rem 1rem;transition:all .3s}.btn-send:hover:not(:disabled){box-shadow:0 4px 12px #6366f166;transform:translateY(-2px)}.btn-send:disabled{cursor:not-allowed;opacity:.5}.chat-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@media (max-width:1024px){.practice-main{grid-template-columns:1fr}.chat-assistant{max-height:none;position:relative;top:0}.chat-messages{max-height:250px}}@media (max-width:768px){.practice-main{gap:1rem;padding:1rem}.chat-assistant{border-radius:12px}.chat-header{border-radius:12px 12px 0 0;padding:.875rem 1rem}.chat-header h3{font-size:.95rem}.chat-messages{max-height:200px;min-height:150px;padding:.875rem}.chat-empty-icon{font-size:2rem}.chat-empty p{font-size:.85rem}.chat-input-container{padding:.875rem}.chat-textarea{font-size:16px;padding:.625rem}.btn-send{padding:.625rem .875rem}}@media (max-width:480px){.practice-main{padding:.75rem}.chat-messages{max-height:180px;min-height:120px}.message-bubble{font-size:.85rem;padding:.625rem .875rem}}.practice-stats .access-badge{background:linear-gradient(135deg,#10b981,#059669)}.practice-stats .access-badge,.practice-stats .free-badge{border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;margin-left:.5rem;padding:.25rem .6rem}.practice-stats .free-badge{background:linear-gradient(135deg,#3b82f6,#2563eb)}.payment-result-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.payment-result-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-width:480px;padding:48px;text-align:center;width:100%}.payment-icon{align-items:center;border-radius:50%;display:flex;font-size:36px;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.payment-icon.loading{background:#f0f0f0}.payment-icon.pending{background:#fff3e0}.payment-icon.success{background:#e8f5e9;color:#2e7d32}.payment-icon.success span{font-size:40px;font-weight:700}.payment-icon.failed{background:#ffebee;color:#c62828}.payment-result-card h1{color:#1a1a2e;font-size:28px;margin:0 0 12px}.payment-result-card p{color:#666;font-size:16px;line-height:1.5;margin:0 0 24px}.payment-spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}.payment-spinner.small{border-width:3px;height:30px;margin:0 auto;width:30px}@keyframes spin{to{transform:rotate(1turn)}}.payment-details{background:#f8f9fa;border-radius:12px;margin-bottom:24px;padding:20px}.payment-detail-row{border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:8px 0}.payment-detail-row:last-child{border-bottom:none}.payment-detail-row span{color:#666}.payment-detail-row strong{color:#1a1a2e}.payment-actions{display:flex;flex-direction:column;gap:12px}.payment-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:all .3s}.payment-actions .btn-primary:hover{box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.payment-actions .btn-secondary{background:#0000;border:2px solid #667eea;border-radius:10px;color:#667eea;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s}.payment-actions .btn-secondary:hover{background:#667eea;color:#fff}@media (max-width:480px){.payment-result-card{padding:32px 24px}.payment-result-card h1{font-size:24px}}.features-page{background:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.features-header{align-items:center;background:#fff;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;padding:1rem 5%;position:-webkit-sticky;position:sticky;top:0;z-index:100}.back-btn{background:none;border:none;color:#6366f1;cursor:pointer;font-size:1rem;font-weight:500}.back-btn:hover{color:#4f46e5}.header-logo{color:#1a1a1a;font-size:1.5rem;font-weight:700}.logo-hl{color:#6366f1}.start-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.5rem;transition:transform .2s}.start-btn:hover{transform:translateY(-2px)}.features-hero{background:linear-gradient(135deg,#1e1b4b,#312e81);color:#fff;padding:4rem 5% 2rem;text-align:center}.features-hero h1{font-size:2.5rem;margin:0 0 1rem}.features-hero p{font-size:1.2rem;margin:0;opacity:.9}.role-selector{border-bottom:1px solid #e2e8f0;gap:1rem;justify-content:center;padding:2rem}.role-btn,.role-selector{background:#fff;display:flex}.role-btn{align-items:center;border:2px solid #e2e8f0;border-radius:12px;color:#64748b;cursor:pointer;font-size:1.1rem;font-weight:600;gap:.75rem;padding:1rem 2rem;transition:all .3s}.role-btn:hover{border-color:#6366f1;color:#6366f1}.role-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#0000;color:#fff}.role-icon{font-size:1.5rem}.features-explorer{margin:0 auto;max-width:1200px;padding:3rem 5%}.features-nav{display:flex;gap:.5rem;margin-bottom:2rem;overflow-x:auto;padding-bottom:.5rem}.feature-nav-btn{align-items:center;background:#fff;border:none;border-radius:10px;box-shadow:0 2px 8px #0000000d;cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1.25rem;transition:all .3s;white-space:nowrap}.feature-nav-btn:hover{background:#f1f5f9}.feature-nav-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.nav-icon{font-size:1.25rem}.nav-title{font-weight:600}.feature-detail{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:1fr 1fr}.feature-info{padding:1rem 0}.feature-badge{font-size:3rem;margin-bottom:1rem}.feature-info h2{color:#1e1b4b;font-size:2rem;margin:0 0 .5rem}.feature-subtitle{color:#6366f1;font-size:1.1rem;font-weight:600;margin:0 0 1rem}.feature-desc{color:#475569;font-size:1.05rem;line-height:1.6;margin:0 0 1.5rem}.feature-highlights{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.highlight-item{align-items:center;background:#f1f5f9;border-radius:8px;color:#334155;display:flex;font-size:.95rem;gap:.5rem;padding:.75rem}.hl-icon,.try-btn{font-size:1.1rem}.try-btn{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:1rem 2rem;transition:transform .2s,box-shadow .2s}.try-btn:hover{box-shadow:0 10px 25px #10b9814d;transform:translateY(-2px)}.feature-preview{display:flex;justify-content:center}.mockup-screen{animation:fadeIn .3s ease;background:#fff;border-radius:16px;box-shadow:0 20px 50px #00000026;max-width:400px;overflow:hidden;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mockup-header-bar{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;font-size:.9rem;font-weight:600;justify-content:space-between;padding:.75rem 1rem}.exam-header{background:linear-gradient(135deg,#ef4444,#dc2626)}.prof-header{background:linear-gradient(135deg,#f59e0b,#d97706)}.timer-badge{background:#fff3;border-radius:20px;font-size:.85rem;padding:.25rem .75rem}.exam-progress{align-items:center;background:#f8fafc;color:#64748b;display:flex;font-size:.85rem;justify-content:space-between;padding:1rem}.progress-dots{display:flex;gap:4px}.dot{background:#e2e8f0;border-radius:50%;height:10px;width:10px}.dot.answered{background:#10b981}.dot.current{background:#6366f1;box-shadow:0 0 0 3px #6366f14d}.mockup-question{padding:1.25rem}.q-text{color:#1e1b4b;font-size:.95rem;line-height:1.5;margin:0 0 1rem}.q-options{display:flex;flex-direction:column;gap:.5rem}.q-option{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.9rem;padding:.75rem 1rem;transition:all .2s}.q-option.hover,.q-option:hover{background:#eef2ff;border-color:#6366f1}.q-option.selected{background:#ecfdf5;border-color:#10b981;color:#065f46}.mockup-feedback{background:#ecfdf5;border-top:2px solid #10b981;padding:1rem 1.25rem}.feedback-correct{color:#059669;font-weight:700;margin-bottom:.5rem}.mockup-feedback p{color:#065f46;font-size:.85rem;line-height:1.4;margin:0}.upload-area{background:#f8fafc;padding:1rem}.file-uploaded{align-items:center;background:#fff;border-radius:8px;display:flex;font-size:.9rem;gap:.5rem;padding:.75rem}.file-icon{font-size:1.25rem}.file-status{color:#10b981;margin-left:auto}.generated-list{padding:1rem}.gen-item{background:#f1f5f9;border-radius:6px;color:#475569;font-size:.85rem;margin-bottom:.5rem;padding:.6rem .75rem}.gen-item.more{background:#dbeafe;color:#1d4ed8;font-weight:600;text-align:center}.chat-conversation{max-height:280px;padding:1rem}.chat-msg{border-radius:12px;font-size:.9rem;line-height:1.4;margin-bottom:.75rem;padding:.75rem 1rem}.chat-msg.user{background:#6366f1;border-bottom-right-radius:4px;color:#fff;margin-left:20%}.chat-msg.ai{background:#f1f5f9;border-bottom-left-radius:4px;color:#334155;margin-right:10%}.chat-msg.ai p{margin:0 0 .5rem}.chat-msg.ai p:last-child{margin:0}.chat-typing{background:#f1f5f9;border-radius:12px;display:flex;gap:4px;padding:.75rem 1rem;width:-webkit-fit-content;width:fit-content}.chat-typing span{animation:typing 1.4s infinite;background:#94a3b8;border-radius:50%;height:8px;width:8px}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.prof-upload{padding:1.5rem}.upload-box{background:#fffbeb;border:2px dashed #f59e0b;border-radius:12px;padding:2rem;text-align:center}.upload-icon-large{font-size:2.5rem}.upload-box p{color:#92400e;font-weight:600;margin:.5rem 0}.formats{color:#b45309;font-size:.8rem}.ai-generating{background:#f0fdf4;padding:1rem 1.5rem}.gen-progress{background:#d1fae5;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden}.gen-bar{animation:progress 2s ease infinite;background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;height:100%}@keyframes progress{0%{width:60%}50%{width:85%}to{width:60%}}.ai-generating p{color:#065f46;font-size:.9rem;margin:0}.exam-config{padding:1.5rem}.config-row{border-bottom:1px solid #f1f5f9;display:flex;font-size:.95rem;justify-content:space-between;padding:.75rem 0}.config-value{color:#1e1b4b;font-weight:700}.config-value.code{background:#fef3c7;border-radius:6px;color:#92400e;font-family:monospace;padding:.25rem .75rem}.mock-btn{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-weight:600;margin:1rem 1.5rem 1.5rem;padding:.75rem;width:calc(100% - 3rem)}.results-list{padding:1rem 1.5rem}.result-row{border-bottom:1px solid #f1f5f9;display:flex;font-size:.9rem;justify-content:space-between;padding:.6rem 0}.score{border-radius:4px;font-weight:700;padding:.2rem .5rem}.score.high{background:#d1fae5;color:#059669}.score.medium{background:#fef3c7;color:#d97706}.score.low{background:#fee2e2;color:#dc2626}.results-actions{padding:.5rem 1.5rem 1.5rem}.mock-btn-sm{background:#6366f1;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;padding:.5rem 1rem}.comparison-section{margin:0 auto;max-width:900px;padding:4rem 5%}.comparison-section h2{color:#1e1b4b;font-size:1.75rem;margin:0 0 2rem;text-align:center}.comparison-table{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.comp-header{background:linear-gradient(135deg,#1e1b4b,#312e81);color:#fff}.comp-header,.comp-row{display:grid;grid-template-columns:1.5fr repeat(3,1fr)}.comp-row{border-bottom:1px solid #f1f5f9}.comp-row:last-child{border-bottom:none}.comp-cell{font-size:.95rem;padding:1rem;text-align:center}.comp-cell.label{background:#f8fafc;color:#334155;font-weight:600;text-align:left}.comp-header .comp-cell{font-size:.9rem;font-weight:600}.features-cta{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:4rem 5%;text-align:center}.features-cta h2{font-size:2rem;margin:0 0 .5rem}.features-cta p{font-size:1.1rem;margin:0 0 1.5rem;opacity:.9}.cta-btn{background:#fff;border:none;border-radius:10px;color:#059669;cursor:pointer;font-size:1.1rem;font-weight:700;padding:1rem 2.5rem;transition:transform .2s}.cta-btn:hover{transform:translateY(-2px)}.features-footer{background:#1a1a1a;color:#9ca3af;font-size:.9rem;padding:1.5rem;text-align:center}.features-footer a{color:#10b981;text-decoration:none}@media (max-width:900px){.feature-detail{gap:2rem;grid-template-columns:1fr}.feature-preview{order:-1}.comp-header,.comp-row,.feature-highlights{grid-template-columns:1fr}.comp-header .comp-cell:first-child{display:none}.comp-cell.label{background:#eef2ff;text-align:center}}@media (max-width:600px){.features-hero h1{font-size:1.75rem}.features-hero p{font-size:1rem}.role-selector{flex-direction:column;padding:1rem}.role-btn{justify-content:center;width:100%}.features-nav{flex-wrap:nowrap;justify-content:flex-start}.feature-nav-btn{flex-direction:column;min-width:80px;padding:.75rem}.nav-title{font-size:.75rem}.feature-info h2{font-size:1.5rem}.mockup-screen{max-width:100%}}
/*# sourceMappingURL=main.9c37cd84.css.map*/