@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;background-color:var(--bg-main);color:#2b2d42;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;transition:background-color .3s ease,color .3s ease}:root{--primary:#4361ee;--primary-dark:#3a56d4;--primary-light:#5e7bfa;--secondary:#6c757d;--success:#38b000;--danger:#d90429;--warning:#ffbe0b;--info:#4cc9f0;--bg-main:#f8f9fa;--bg-white:#fbfbfc;--bg-dark:#212529;--text-primary:#2b2d42;--text-secondary:#6c757d;--text-light:#f8f9fa;--text-muted:#adb5bd;--border-color:#dee2e6;--box-shadow:0 0.5rem 1rem #00000014;--box-shadow-sm:0 0.125rem 0.25rem #0000000d;--box-shadow-lg:0 1rem 3rem #0000001a;--border-radius-sm:0.25rem;--border-radius:0.5rem;--border-radius-lg:1rem;--border-radius-xl:1.5rem;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-xxl:3rem}[data-theme=dark]{--bg-main:#1e1e2e;--bg-white:#2a2a3c;--bg-dark:#16161f;--text-primary:#e9ecef;--text-secondary:#adb5bd;--text-light:#f8f9fa;--text-muted:#6c757d;--border-color:#3a3a4c;--box-shadow:0 0.5rem 1rem #00000026;--box-shadow-sm:0 0.125rem 0.25rem #0000001a;--box-shadow-lg:0 1rem 3rem #0003}*{box-sizing:border-box}a{color:#4361ee;color:var(--primary);text-decoration:none;transition:color .3s ease}a:hover{color:#3a56d4;color:var(--primary-dark)}button{cursor:pointer}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{color:#2b2d42;color:var(--text-primary);font-weight:600;line-height:1.2;margin-top:0}.auth-container{align-items:center;background-color:var(--bg-light);display:flex;justify-content:center;min-height:100vh;padding:var(--space-md)}.auth-card{background-color:var(--bg-white);border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);max-width:450px;overflow:hidden;padding:var(--space-xl);transition:all .3s ease;width:100%}.auth-header{margin-bottom:var(--space-xl);text-align:center}.auth-logo{align-items:center;display:flex;justify-content:center;margin-bottom:var(--space-lg)}.logo-container{height:32px;margin-right:var(--space-sm);position:relative;width:32px}.logo-icon{color:var(--primary)}.activity-icon{left:0;position:absolute;top:0;z-index:1}.heart-icon{animation:heartbeat 1.5s ease-in-out infinite;color:var(--danger);left:4px;opacity:.7;position:absolute;top:4px}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}.auth-header h1{color:var(--primary);font-size:2rem;font-weight:700;margin:0}.auth-header h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--space-xs)}.auth-subtitle{color:var(--text-secondary);margin:0}.auth-form,.form-group{margin-bottom:var(--space-lg)}.form-label{color:var(--text-primary);display:block;margin-bottom:var(--space-xs)}.form-control{border-radius:var(--border-radius);padding:.75rem 1rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.password-label-group{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-xs)}.forgot-password{color:var(--primary);font-size:.875rem;text-decoration:none}.forgot-password:hover{text-decoration:underline}.btn-block{display:block;font-size:1rem;font-weight:600;padding:.875rem;width:100%}.auth-footer,.btn-block{margin-top:var(--space-xl);text-align:center}.auth-footer{border-top:1px solid var(--border-color);padding-top:var(--space-lg)}.auth-footer p{color:var(--text-secondary);margin:0}.auth-link{color:var(--primary);font-weight:600;text-decoration:none}.auth-link:hover{text-decoration:underline}.form-row{grid-gap:var(--space-lg);gap:var(--space-lg)}@media (max-width:768px){.auth-card{padding:var(--space-lg)}.logo-icon{font-size:2rem}.auth-header h1{font-size:1.75rem}.auth-header h2{font-size:1.25rem}.form-row{gap:var(--space-md);grid-template-columns:1fr}}@media (max-width:480px){.auth-container{padding:var(--space-sm)}.auth-card{border-radius:var(--border-radius);padding:var(--space-md)}.password-label-group{align-items:flex-start;flex-direction:column}.forgot-password{margin-top:var(--space-xs)}}.success-icon{display:flex;justify-content:center;margin:20px 0}.success-message{margin:20px 0;padding:0 15px;text-align:center}.success-message p{color:#555;margin-bottom:10px}.form-buttons{display:flex;margin-top:20px;width:100%}@media (max-width:768px){.form-buttons{flex-direction:column}.form-buttons button{margin-bottom:10px;margin-right:0!important;width:100%}}.home-container{margin:0 auto;max-width:1200px;padding:2rem}.header{border-bottom:1px solid #e0e0e0;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.header h1{color:#333;margin:0}.content{text-align:center}.action-cards{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:2rem}.card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 4px 8px #0003}.card h3{color:#333;margin:0 0 1rem}.card p{color:#666;line-height:1.5;margin:0}.home-hero{background:linear-gradient(135deg,var(--primary-light),var(--primary-dark));border-radius:var(--border-radius-lg);box-shadow:var(--box-shadow);color:var(--text-light);margin-bottom:var(--space-xl);overflow:hidden;padding:3rem 2rem;position:relative}.home-hero:before{background:#ffffff1a;border-radius:50%;content:"";height:100%;pointer-events:none;position:absolute;right:-50%;top:-50%;width:100%}.hero-content{position:relative;z-index:1}.hero-content h1{display:flex;flex-direction:column;font-size:2.5rem;font-weight:700;margin-bottom:var(--space-md)}.welcome-text{font-size:1.8rem;font-weight:300;margin-bottom:.5rem;opacity:.9}.username{font-weight:700}.hero-subtitle{color:inherit;font-size:1.1rem;margin:0;max-width:550px;opacity:.9}.section{margin-bottom:var(--space-xxl)}.section-title{color:var(--text-primary);font-size:1.75rem;margin-bottom:var(--space-xl);padding-bottom:var(--space-sm);position:relative}.section-title:after{background-color:var(--primary);border-radius:2px;bottom:0;content:"";height:4px;left:0;position:absolute;width:60px}.card-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.feature-card{align-items:flex-start;background-color:var(--bg-white);border-radius:var(--border-radius);box-shadow:var(--box-shadow);cursor:pointer;display:flex;flex-direction:column;padding:var(--space-xl);transition:all .3s ease}.feature-card:hover{box-shadow:var(--box-shadow-lg);transform:translateY(-5px)}.card-icon{font-size:2.5rem;margin-bottom:var(--space-md)}.feature-card h3{color:var(--text-primary);font-size:1.35rem;margin-bottom:var(--space-sm)}.feature-card p{color:var(--text-secondary);flex-grow:1;line-height:1.5;margin-bottom:var(--space-lg)}.feature-card .btn{align-self:flex-start}@media (max-width:768px){.home-hero{padding:2rem 1.5rem}.hero-content h1{font-size:2rem}.welcome-text{font-size:1.5rem}.hero-subtitle{font-size:1rem}.section-title{font-size:1.5rem}.card-grid{grid-template-columns:1fr}}@media (max-width:480px){.home-hero{margin-bottom:var(--space-lg);padding:1.5rem 1rem}.hero-content h1{font-size:1.75rem}.welcome-text{font-size:1.25rem}.section{margin-bottom:var(--space-xl)}.feature-card{padding:var(--space-md)}}.user-management{margin:0 auto;max-width:1200px;padding:20px}.user-management h1{color:var(--text-primary);margin-bottom:30px}.user-controls{background:var(--bg-secondary);border-radius:8px;box-shadow:var(--box-shadow);display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px;padding:20px}.search-box{flex:1 1;min-width:250px}.search-box input{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:1rem;padding:12px 15px;transition:all .3s ease;width:100%}.search-box input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #007bff1a;outline:none}.filter-controls{display:flex;gap:15px}.filter-controls select{-webkit-appearance:none;appearance:none;background-color:var(--bg-secondary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;font-size:1rem;min-width:180px;padding:12px 35px 12px 15px;transition:all .3s ease}.filter-controls select:hover{border-color:var(--primary)}.filter-controls select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #007bff1a;outline:none}.filter-controls select option,.form-group select option{background-color:var(--bg-white);color:var(--text-primary);padding:10px}.edit-user-section{background:var(--bg-secondary);border-radius:8px;box-shadow:var(--box-shadow);margin-bottom:30px;padding:30px}.edit-user-section h2{color:var(--text-primary);margin-bottom:25px}.users-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.user-card{background:var(--bg-secondary);border-radius:8px;box-shadow:var(--box-shadow);padding:20px;transition:transform .3s ease}.user-card:hover{transform:translateY(-5px)}.user-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.user-header h3{color:var(--text-primary);font-size:1.2rem;margin:0}.role-badge{border-radius:15px;font-size:.8rem;font-weight:500;padding:5px 10px}.role-badge.student{background-color:#e6f4ea;color:#1e7e34}.role-badge.teacher{background-color:#e3f2fd;color:#0d47a1}.user-info{margin-bottom:15px}.user-info p{color:var(--text-secondary);margin:8px 0}.user-info strong{color:var(--text-primary)}.user-actions{display:flex;gap:10px}.delete-button,.edit-button{border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .3s ease}.edit-button{background-color:var(--primary);color:#fff}.edit-button:hover{background-color:var(--primary-dark)}.delete-button{background-color:#dc3545;color:#fff}.delete-button:hover{background-color:#c82333}.form-group{margin-bottom:20px}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group label{color:var(--text-secondary);display:block;font-weight:500;margin-bottom:8px}.form-group input,.form-group select{border:1px solid var(--border-color);border-radius:4px;font-size:1rem;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input,.form-group select{background-color:var(--bg-secondary);color:var(--text-primary)}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding:12px 35px 12px 15px}.form-group input:focus,.form-group select:focus{border-color:var(--primary);box-shadow:0 0 0 2px #007bff1a;outline:none}.form-group input:hover,.form-group select:hover{border-color:var(--primary)}.form-group input:disabled{background-color:var(--bg-main);cursor:not-allowed;opacity:.7}.form-actions{display:flex;gap:15px;margin-top:20px}.cancel-button,.submit-button{border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.submit-button{background-color:var(--primary);color:#fff}.submit-button:hover{background-color:var(--primary-dark)}.cancel-button{background-color:var(--bg-main);color:var(--text-primary)}.cancel-button:hover{background-color:var(--border-color)}.error-message,.success-message{border-radius:4px;font-weight:500;margin-bottom:20px;padding:12px 20px}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.loading{color:var(--text-secondary);font-size:1.2rem}@media (max-width:1024px){.form-row,.user-management-container{grid-template-columns:1fr}.filters{flex-direction:column;gap:15px}.filter-controls,.search-box input{width:100%}}.quiz-container{background-color:var(--bg-white);border-radius:var(--border-radius);box-shadow:var(--box-shadow);margin:2rem auto;max-width:900px;padding:2rem;transition:background-color .3s ease,color .3s ease}.quiz-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:2rem}.quiz-card{background-color:var(--bg-main);border-radius:8px;cursor:pointer;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease,background-color .3s ease}.quiz-card:hover{box-shadow:var(--box-shadow);transform:translateY(-4px)}.quiz-card h3{color:var(--primary);margin:0 0 1rem}.quiz-card p{color:var(--text-secondary);font-size:.9rem;margin:0 0 1rem}.quiz-info{color:var(--text-muted);display:block;font-size:.8rem}.quiz-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.quiz-header h2{color:var(--text-primary);font-size:1.75rem;margin:0}.back-button{background-color:initial;border:1px solid var(--primary);border-radius:var(--border-radius);color:var(--primary);font-weight:500;transition:all .3s ease}.back-button:hover{background-color:var(--primary);color:#fff}.quiz-progress{color:var(--text-secondary);display:flex;justify-content:space-between;margin-bottom:1.5rem}.progress-bar{background-color:var(--border-color);border-radius:3px;height:6px;margin-bottom:1.5rem;overflow:hidden}.progress-fill{background-color:var(--primary);height:100%;transition:width .3s ease}.question-container{margin-bottom:2rem}.question-container h3{color:var(--text-primary);font-size:1.3rem;line-height:1.4;margin-bottom:1.5rem}.options-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.option-button{align-items:center;background-color:var(--bg-white);border:2px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;font-size:1rem;height:100%;padding:1rem;position:relative;text-align:left;transition:all .3s ease;word-break:break-word}.option-button:hover:not(:disabled){background-color:#4361ee0d;border-color:var(--primary-light)}.option-button.selected{background-color:#4361ee1a;border-color:var(--primary)}.option-button.correct{background-color:#38b0001a;border-color:var(--success)}.option-button.incorrect{background-color:#d904291a;border-color:var(--danger)}.option-button:disabled{cursor:default;opacity:.8}.option-label{align-items:flex-start;display:flex;gap:.75rem;width:100%}.option-marker{align-items:center;border:2px solid var(--border-color);border-radius:50%;display:flex;flex-shrink:0;font-size:.9rem;font-weight:600;height:28px;justify-content:center;margin-top:2px;transition:all .3s ease;width:28px}.option-button.selected .option-marker{background-color:var(--primary);border-color:var(--primary);color:#fff}.option-button.correct .option-marker{background-color:var(--success);border-color:var(--success);color:#fff}.option-button.incorrect .option-marker{background-color:var(--danger);border-color:var(--danger);color:#fff}.question-actions{display:flex;justify-content:center;margin-top:2rem}.check-button,.next-button{border:none;border-radius:var(--border-radius);cursor:pointer;font-size:1.1rem;font-weight:600;min-width:200px;padding:.875rem 2rem;transition:all .3s ease}.check-button{background-color:var(--primary);color:#fff}.check-button:hover:not(:disabled){background-color:var(--primary-dark)}.check-button:disabled{background-color:var(--secondary);cursor:not-allowed;opacity:.6}.next-button{background-color:var(--success);color:#fff}.next-button:hover{background-color:#2e9000}.navigation-buttons{display:flex;justify-content:space-between;margin-top:2rem}.nav-button,.submit-button{border:none;border-radius:5px;color:#fff;cursor:pointer;padding:.8rem 1.5rem;transition:background-color .3s ease}.nav-button{background-color:var(--primary)}.nav-button:hover{background-color:var(--primary-dark)}.submit-button{background-color:var(--success)}.submit-button:hover{background-color:#2e9000}.nav-button:disabled,.submit-button:disabled{background-color:var(--text-muted);cursor:not-allowed}.quiz-actions{display:flex;gap:1rem;justify-content:center}.primary-button,.secondary-button{border:none;border-radius:var(--border-radius);cursor:pointer;padding:.75rem 2rem;transition:all .3s ease}.primary-button{background-color:var(--primary);color:#fff;font-size:1.1rem;font-weight:600}.primary-button:hover{background-color:var(--primary-dark)}.secondary-button{background-color:initial;border:1px solid var(--primary);color:var(--primary);font-size:1.1rem;font-weight:600;margin-left:1rem}.secondary-button:hover{background-color:#4361ee1a}.error{background-color:#d904291a}@media (max-width:768px){.quiz-container{margin:1rem;padding:1.5rem}.quiz-list{grid-template-columns:1fr}.question-container h3{font-size:1.1rem}.option-button{padding:.875rem}.nav-button,.submit-button{padding:.6rem 1.2rem}.quiz-actions{flex-direction:column;gap:1rem}.primary-button,.secondary-button{margin-left:0;width:100%}.options-container{display:flex;flex-direction:column;gap:1rem}}.quiz-summary{padding:2rem 0;text-align:center}.quiz-summary h2{color:var(--text-primary);font-size:1.75rem;margin-bottom:2rem}.summary-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2.5rem}.stat-card{background-color:var(--bg-main);border-radius:var(--border-radius);box-shadow:var(--box-shadow-sm);padding:1.5rem;transition:background-color .3s ease}.stat-card h3{color:var(--text-secondary);font-size:1.1rem;font-weight:500;margin:0 0 1rem}.score-circle{align-items:center;background:conic-gradient(var(--primary) 0,var(--primary) var(--score-percentage),var(--border-color) var(--score-percentage),var(--border-color) 100%);border-radius:50%;display:flex;height:150px;justify-content:center;margin:0 auto;position:relative;width:150px}.score-circle:before{background-color:var(--bg-white);border-radius:50%;content:"";height:120px;position:absolute;transition:background-color .3s ease;width:120px}.score-value{color:var(--text-primary);font-size:2rem;font-weight:700;position:relative;z-index:2}.performance-stats{text-align:left}.performance-stats p{color:var(--text-secondary);display:flex;font-size:1rem;justify-content:space-between;margin:.5rem 0}.performance-stats p span{color:var(--text-primary);font-weight:600}.ecg-image-container{align-items:center;border:1px solid var(--border-color);border-radius:var(--border-radius);display:flex;justify-content:center;margin-bottom:2rem;min-height:250px;overflow:hidden}.ecg-image{max-height:300px;object-fit:contain;transition:transform .3s ease}.ecg-image:hover{cursor:zoom-in;transform:scale(1.05)}.quiz-start{padding:3rem 1rem;text-align:center}.quiz-start p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem;margin-left:auto;margin-right:auto;max-width:600px}.primary-button{font-size:1.2rem;min-width:200px;padding:1rem 2rem}.error-message{background-color:#d904291a;border-radius:var(--border-radius);color:var(--danger);margin-bottom:1.5rem;padding:1rem;text-align:center}.quiz-options{display:flex;flex-direction:column;gap:2rem;margin-top:2rem;max-width:800px;width:100%}.quiz-option{background-color:var(--bg-main);border-radius:10px;padding:2rem;text-align:center;transition:background-color .3s ease}.quiz-option h3{color:var(--primary);font-size:1.5rem;margin-bottom:1rem}.quiz-option p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:1.5rem}.quiz-option .quiz-list{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1.5rem}.quiz-option .quiz-card{background-color:var(--bg-white);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease,background-color .3s ease}.quiz-option .quiz-card:hover{box-shadow:var(--box-shadow);transform:translateY(-4px)}.quiz-option .quiz-card h3{color:var(--primary);font-size:1.2rem;margin:0 0 1rem}.quiz-option .quiz-card p{color:var(--text-secondary);font-size:.9rem;margin:0 0 1rem}.quiz-option .quiz-info{color:var(--text-muted);display:block;font-size:.8rem}.image-modal{background-color:#000000b3;height:100%;padding:2rem;width:100%}.modal-content{max-height:90%;max-width:90%;overflow:hidden}.close-modal{background-color:var(--bg-white);box-shadow:0 2px 8px #00000026;font-size:1.25rem;height:2rem;right:.5rem;top:.5rem;transition:background-color .3s ease,color .3s ease;width:2rem;z-index:2}.modal-image{display:block;max-height:80vh;max-width:100%}.quiz-review-container{color:var(--text-primary);margin:2rem auto;max-width:1200px;padding:0 1rem}.quiz-review-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.quiz-review-header h1{color:var(--text-primary);font-size:2rem;margin:0}.back-button{background-color:var(--bg-main);border:none;border-radius:4px;color:var(--text-primary);cursor:pointer;padding:.5rem 1rem;transition:all .2s}.back-button:hover{background-color:var(--bg-hover)}.quiz-review-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card{background-color:var(--bg-white);border-radius:8px;box-shadow:var(--box-shadow);padding:1rem;transition:background-color .3s ease}.summary-card h3{color:var(--text-secondary);font-size:.9rem;margin:0 0 .5rem;text-transform:uppercase}.summary-card p{color:var(--text-primary);font-size:1.1rem;font-weight:500;margin:0}.score{font-weight:700}.score.good{color:var(--success)}.score.average{color:var(--warning)}.score.poor{color:var(--danger)}.quiz-questions{margin-top:2rem}.question-card{background-color:var(--bg-white);border-radius:8px;box-shadow:var(--box-shadow);margin-bottom:2rem;padding:1.5rem;transition:background-color .3s ease}.question-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.question-header h3{color:var(--text-primary);font-size:1.1rem;margin:0}.answer-status{border-radius:20px;font-size:1.1rem;font-weight:500;padding:.25rem .75rem}.answer-status.correct{background-color:var(--success-bg);color:var(--success)}.answer-status.incorrect{background-color:var(--danger-bg);color:var(--danger)}.question-text{color:var(--text-primary);font-size:1.1rem;line-height:1.5;margin-bottom:1.5rem}.ecg-image-container{background-color:var(--bg-main);border-radius:8px;cursor:zoom-in;margin:1rem 0;padding:1rem;text-align:center;transition:background-color .3s ease}.ecg-image{border-radius:4px;height:auto;max-width:100%;transition:transform .2s}.ecg-image:hover{transform:scale(1.02)}.answer-summary{background-color:var(--bg-main);border-radius:8px;margin:1.5rem 0;padding:1rem;transition:background-color .3s ease}.correct-answer,.student-answer{margin-bottom:1rem}.correct-answer h4,.student-answer h4{color:var(--text-secondary);margin:0 0 .5rem}.correct-text{color:var(--success);font-weight:500}.incorrect-text{color:var(--danger);font-weight:500}.choices{grid-gap:1rem;display:grid;gap:1rem;margin-top:1rem}.choice{align-items:center;background-color:var(--bg-main);border-radius:6px;display:flex;justify-content:space-between;padding:1rem;position:relative;transition:background-color .3s ease}.choice.selected{background-color:var(--primary-light);border:1px solid var(--primary)}.choice.correct{background-color:var(--success-bg);border:1px solid var(--success)}.choice-text{color:var(--text-primary);flex:1 1}.choice-label{background-color:var(--bg-hover);border-radius:12px;color:var(--text-primary);font-size:.8rem;margin-left:1rem;padding:.25rem .5rem;white-space:nowrap}.image-modal{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background-color:var(--bg-white);border-radius:var(--border-radius);max-height:90vh;max-width:90vw;padding:1rem;position:relative;transition:background-color .3s ease}.modal-content img{max-height:90vh;max-width:100%;object-fit:contain}.close-modal{align-items:center;background:var(--bg-white);border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;position:absolute;right:-40px;top:-40px;transition:all .3s ease;width:30px}.close-modal:hover{background-color:var(--danger);color:#fff}.error{background-color:var(--danger-bg);border-radius:5px;color:var(--danger);margin:1rem 0;padding:1rem;text-align:center}@media (max-width:768px){.quiz-review-container{margin:1rem;padding:1rem}.quiz-review-header{flex-direction:column;gap:1rem;text-align:center}.choice,.summary-card{text-align:center}.choice{flex-direction:column}.choice-label{margin-left:0;margin-top:.5rem}.close-modal{right:10px;top:10px}}.navbar{background-color:var(--bg-white);box-shadow:var(--box-shadow);position:-webkit-sticky;position:sticky;top:0;transition:background-color .3s ease,color .3s ease;z-index:1000}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:.75rem 2rem;width:100%}.navbar-brand{align-items:center;color:var(--primary);display:flex;font-size:1.5rem;font-weight:700;text-decoration:none;transition:color .3s ease}.navbar-brand:hover{color:var(--primary-dark)}.navbar-icon{font-size:1.25rem;margin-right:.5rem}.navbar-nav{align-items:center;display:flex;list-style:none;margin:0;padding:0}.nav-item{margin:0 .5rem}.nav-link{border-radius:var(--border-radius);color:var(--text-secondary);display:block;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.nav-link:hover{background-color:#4361ee0d;color:var(--primary)}.nav-link.active{background-color:#4361ee1a;color:var(--primary)}.navbar-collapse{flex-grow:1;justify-content:space-between;margin-left:2rem}.navbar-collapse,.navbar-right,.theme-switch-wrapper{align-items:center;display:flex}.theme-switch-wrapper{margin-right:1rem}.theme-switch{display:inline-block;height:28px;position:relative;width:52px}.theme-switch input{height:0;opacity:0;width:0}.slider{background-color:#ffd43b;border:2px solid #0000;border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}[data-theme=dark] .slider{background-color:var(--primary)}.slider:before{background-color:#fff;border-radius:50%;bottom:2px;content:"";height:20px;left:4px;position:absolute;transition:.4s;width:20px;z-index:2}input:checked+.slider:before{transform:translateX(23px)}.slider-icon{align-items:center;color:#fff;display:flex;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.slider-icon.light{left:5px}.slider-icon.dark{right:5px}.slider-icon svg{fill:#fff;height:12px;width:12px}[data-theme=dark] .slider-icon.light,[data-theme=light] .slider-icon.dark{opacity:.3}.user-menu{margin-left:.5rem;position:relative}.user-toggle{align-items:center;background:#0000;border:none;border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;display:flex;padding:.5rem;transition:background-color .3s ease}.user-toggle:hover{background-color:#0000000d}[data-theme=dark] .user-toggle:hover{background-color:#ffffff1a}.avatar{align-items:center;background-color:var(--primary);border-radius:50%;color:#fff;display:flex;font-weight:600;height:2rem;justify-content:center;width:2rem}.avatar,.username{margin-right:.5rem}.username{font-weight:500}.dropdown-icon{color:var(--text-secondary);font-size:.75rem}.dropdown-menu{background-color:var(--bg-white);border-radius:var(--border-radius);box-shadow:var(--box-shadow);margin-top:.5rem;min-width:200px;overflow:hidden;position:absolute;right:0;top:100%;z-index:1000}.dropdown-item,.dropdown-menu{transition:background-color .3s ease}.dropdown-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:.95rem;padding:.75rem 1rem;text-align:left;text-decoration:none;width:100%}.dropdown-item .dropdown-icon{color:var(--text-secondary);font-size:1.1rem;margin-right:.75rem}.dropdown-item:hover{background-color:#00000008}[data-theme=dark] .dropdown-item:hover{background-color:#ffffff0d}.dropdown-divider{background-color:var(--border-color);height:1px;margin:.5rem 0}.mobile-toggle{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;height:24px;justify-content:space-between;padding:0;position:relative;width:30px;z-index:1100}.toggle-bar{background-color:var(--text-primary);border-radius:2px;display:block;height:2px;transform-origin:left center;transition:all .3s ease;width:100%}.mobile-toggle.open .toggle-bar:first-child{transform:rotate(45deg);width:32px}.mobile-toggle.open .toggle-bar:nth-child(2){opacity:0;transform:translateX(-10px)}.mobile-toggle.open .toggle-bar:last-child{transform:rotate(-45deg);width:32px}@media (max-width:768px){.navbar-container{padding:.75rem 1rem}.mobile-toggle{display:flex}.navbar-collapse{align-items:flex-start;background-color:var(--bg-white);box-shadow:0 4px 6px #0000001a;flex-direction:column;height:auto;left:0;margin-left:0;max-height:0;overflow:hidden;position:absolute;right:0;top:100%;transition:max-height .3s ease,background-color .3s ease;z-index:1000}.navbar-collapse.show{max-height:400px;overflow-y:auto}.navbar-nav{flex-direction:column;padding:.5rem;width:100%}.nav-item{margin:0;width:100%}.nav-link{border-radius:var(--border-radius);color:var(--text-primary);display:block;padding:.75rem 1rem;width:100%}.nav-link:hover{background-color:#4361ee0d;color:var(--primary)}.nav-link.active{background-color:#4361ee1a;color:var(--primary)}.navbar-right{border-top:1px solid var(--border-color);flex-direction:column;padding:.5rem;width:100%}.theme-switch-wrapper{justify-content:center}.theme-switch-wrapper,.user-menu{margin:.5rem;width:auto}.user-toggle{justify-content:flex-start;padding:.75rem;width:100%}.dropdown-menu{border:1px solid var(--border-color);box-shadow:none;margin-top:.5rem;position:static;width:100%}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.App{display:flex;flex-direction:column;min-height:100vh}.App,.page-container{transition:background-color .3s ease,color .3s ease}.page-container{flex:1 1;margin:0 auto;max-width:1200px;padding:var(--space-lg);width:100%}.section{margin-bottom:var(--space-xl)}.card{background-color:var(--bg-white);border-radius:var(--border-radius);box-shadow:var(--box-shadow);padding:var(--space-lg);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease,color .3s ease}.card:hover{box-shadow:var(--box-shadow-lg);transform:translateY(-5px)}.btn{align-items:center;border:none;border-radius:var(--border-radius);cursor:pointer;display:inline-flex;font-weight:500;justify-content:center;padding:.6rem 1.2rem;transition:all .3s ease}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary);color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-outline{background-color:initial;border:1px solid var(--primary);color:var(--primary)}.btn-outline:hover{background-color:var(--primary);color:#fff}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:#b60321}.text-center{text-align:center}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.d-flex{display:flex}.flex-column{flex-direction:column}.align-items-center{align-items:center}.justify-content-center{justify-content:center}.justify-content-between{justify-content:space-between}.gap-1{gap:var(--space-md)}.gap-2{gap:var(--space-lg)}.m-0{margin:0}.mb-1{margin-bottom:var(--space-sm)}.mb-2{margin-bottom:var(--space-md)}.mb-3{margin-bottom:var(--space-lg)}.mb-4{margin-bottom:var(--space-xl)}.mt-1{margin-top:var(--space-sm)}.mt-2{margin-top:var(--space-md)}.mt-3{margin-top:var(--space-lg)}.mt-4{margin-top:var(--space-xl)}.p-0{padding:0}.p-1{padding:var(--space-sm)}.p-2{padding:var(--space-md)}.p-3{padding:var(--space-lg)}.p-4{padding:var(--space-xl)}.form-control{background-clip:padding-box;background-color:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);color:var(--text-primary);display:block;font-size:1rem;line-height:1.5;padding:.5rem .75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,background-color .3s ease,color .3s ease;width:100%}.form-control:focus{border-color:var(--primary-light);box-shadow:0 0 0 .2rem #4361ee40;outline:0}.form-group{margin-bottom:1rem}.form-label{display:inline-block;font-weight:500;margin-bottom:.5rem}.loading{align-items:center;display:flex;justify-content:center;min-height:200px}.alert{border:1px solid #0000;border-radius:var(--border-radius-sm);margin-bottom:1rem;padding:.75rem 1.25rem;position:relative;transition:background-color .3s ease,color .3s ease}.alert-success{background-color:#d4edda;border-color:#c3e6cb;color:#155724}.alert-danger{background-color:#f8d7da;border-color:#f5c6cb;color:#721c24}.alert-warning{background-color:#fff3cd;border-color:#ffeeba;color:#856404}.alert-info{background-color:#d1ecf1;border-color:#bee5eb;color:#0c5460}
/*# sourceMappingURL=main.1f9c90d3.css.map*/