:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.auth-card{background:gray;padding:2rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:100vh}.auth-title{text-align:center;margin-bottom:1.5rem;color:#333;font-size:1.5rem;font-weight:600}.form-group{margin-bottom:1rem}.token-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.token-input:focus{outline:none;border-color:#5c5c5c}.token-input:disabled{background-color:#f8f9fa;color:#6c757d}.login-button{width:100%;padding:.75rem;background-color:#646464;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.login-button:hover:not(:disabled){background-color:#353535}.login-button:disabled{background-color:#acacac;cursor:not-allowed}.error-message{color:#dc3545;font-size:.875rem;margin-bottom:1rem;text-align:center;padding:.5rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.auth-nav{margin-bottom:1rem}.back-link{color:#007bff;text-decoration:none;font-size:.875rem;transition:color .2s}.back-link:hover{color:#0056b3;text-decoration:underline}.history-container{min-height:100vh;padding:2rem;display:flex;flex-direction:column;align-items:center}.history-card{background:#fff;padding:2rem 2.5rem;border-radius:12px;box-shadow:0 4px 20px #0000001f;max-width:600px;width:100%;border:1px solid #e9ecef}.history-title{font-size:2.2rem;font-weight:700;color:#333;margin-bottom:2rem;text-align:center;position:relative}.history-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:80px;height:3px;background:linear-gradient(90deg,#646464,#666);border-radius:2px}.history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.history-item{padding:1.25rem 1.5rem;border:1px solid #e9ecef;border-radius:8px;display:flex;justify-content:space-between;align-items:center;font-size:1rem;flex-wrap:wrap;background:#fafafa;transition:all .2s ease;position:relative;overflow:hidden}.history-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#646464,#666)}.history-item:hover{background:#f0f0f0;border-color:#ccc;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.history-item:last-child{border-bottom:1px solid #e9ecef}.history-score{font-weight:700;color:#fff;background:linear-gradient(135deg,#646464,#666);padding:.5rem 1rem;border-radius:20px;font-size:.95rem;box-shadow:0 2px 8px #6464644d;min-width:80px;text-align:center}.history-date{color:#555;font-size:.9rem;font-weight:500}.no-history{text-align:center;color:#666;font-style:italic;padding:2rem;background:#f9f9f9;border:2px dashed #ddd;border-radius:8px;font-size:1.1rem}.no-history:before{content:"📊";display:block;font-size:3rem;margin-bottom:1rem}@media (max-width: 600px){.history-card{padding:1.5rem 1rem;max-width:95vw;margin:0 1rem}.history-title{font-size:1.8rem;margin-bottom:1.5rem}.history-item{flex-direction:column;align-items:flex-start;font-size:.95rem;padding:1rem;gap:.5rem}.history-score{align-self:flex-start;margin-top:.5rem}.history-date{font-size:.85rem}.no-history{padding:1.5rem;font-size:1rem}.no-history:before{font-size:2.5rem}}.home-container{min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.home-content{display:flex;flex-direction:row;align-items:flex-start;justify-content:center;min-height:100vh;gap:4rem;max-width:1400px;margin:0 auto;padding-top:2rem}.history-wrapper{flex:1;max-width:600px}.content-card{background:#fff;padding:3.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;flex:1;max-width:600px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.content-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#646464,#666)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;position:relative}.header-actions{display:flex;gap:.75rem;align-items:center}.content-card h2{color:#333;font-size:3rem;font-weight:800;margin:0;text-align:left;background:linear-gradient(135deg,#646464,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.content-card p{color:#555;font-size:1.1rem;line-height:1.8;text-align:left;margin:0;font-weight:400}.logout-button{color:#fff;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;text-decoration:none;font-size:.9rem;font-weight:600;transition:all .3s ease;padding:.6rem 1.2rem;border-radius:8px;cursor:pointer;white-space:nowrap;box-shadow:0 4px 15px #e74c3c4d}.logout-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e74c3c66}.card-actions{margin-top:3rem;text-align:center;display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.assignment-button{background:linear-gradient(135deg,#646464,#666);color:#fff;border:none;padding:1rem 2.5rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;box-shadow:0 6px 20px #6464644d;position:relative;overflow:hidden}.assignment-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.assignment-button:hover:before{left:100%}.assignment-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #64646466}.questions-button{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;border:none;padding:1rem 2.5rem;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;box-shadow:0 6px 20px #17a2b84d;position:relative;overflow:hidden}.questions-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.questions-button:hover:before{left:100%}.questions-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #17a2b866}.admin-button{background-color:#007bff;color:#fff;border:1px solid #007bff;padding:.75rem 2rem;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.admin-button:hover{background-color:#0056b3;border-color:#0056b3;transform:translateY(-1px)}.admin-nav-button{color:#fff;background-color:#007bff;border:1px solid #007bff;text-decoration:none;font-size:.85rem;transition:background-color .2s;padding:.4rem .8rem;border-radius:4px;cursor:pointer;white-space:nowrap}.admin-nav-button:hover{background-color:#0056b3;border-color:#0056b3}.history-wrapper .history-container{background:transparent;padding:0;min-height:auto}.history-wrapper .history-card{background:#fff;box-shadow:0 8px 32px #00000026;border-radius:16px;padding:2.5rem;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.history-wrapper .history-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#646464,#666)}.history-wrapper .history-title{color:#333;font-size:2.2rem;font-weight:700;margin-bottom:2rem;text-align:center;background:linear-gradient(135deg,#646464,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.module-selector{margin:2.5rem 0;text-align:center}.selector-label{display:block;font-size:1.2rem;font-weight:700;color:#333;margin-bottom:1.5rem;background:linear-gradient(135deg,#646464,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dropdown-wrapper{position:relative;display:inline-block;width:100%;max-width:450px}.module-dropdown{width:100%;padding:1.2rem 3rem 1.2rem 1.5rem;font-size:1.1rem;font-weight:500;border:2px solid transparent;border-radius:12px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#646464,#666) border-box;color:#333;cursor:pointer;transition:all .3s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.module-dropdown:focus{outline:none;transform:translateY(-2px);box-shadow:0 8px 30px #6464644d;background:linear-gradient(#f8f9fa,#f8f9fa) padding-box,linear-gradient(135deg,#646464,#333) border-box}.module-dropdown:hover{transform:translateY(-1px);box-shadow:0 6px 25px #64646433}.module-dropdown option{padding:1rem;font-size:1rem;background:#fff;color:#333;border-radius:8px}.module-dropdown option:hover{background:#f8f9fa}.dropdown-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);pointer-events:none;color:#646464;transition:all .3s ease}.dropdown-wrapper:hover .dropdown-icon{color:#333;transform:translateY(-50%) rotate(180deg)}.module-dropdown:focus+.dropdown-icon{color:#333;transform:translateY(-50%) rotate(180deg)}.announcement-banner{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;margin-bottom:2rem;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.announcement-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.announcement-banner.info:before{background:linear-gradient(90deg,#17a2b8,#007bff)}.announcement-banner.warning:before{background:linear-gradient(90deg,#ffc107,#fd7e14)}.announcement-banner.success:before{background:linear-gradient(90deg,#28a745,#20c997)}.announcement-content{display:flex;align-items:center;padding:1.5rem;position:relative}.announcement-nav{background:none;border:none;font-size:1.5rem;color:#666;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem}.announcement-nav:hover{background-color:#f8f9fa;color:#333}.announcement-nav.prev{margin-right:1rem}.announcement-nav.next{margin-left:1rem}.announcement-main{flex:1;text-align:center}.announcement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.announcement-title{color:#333;font-size:1.25rem;font-weight:600;margin:0}.announcement-date{color:#666;font-size:.875rem}.announcement-message{color:#555;line-height:1.5;margin:0}.announcement-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.dot{width:8px;height:8px;border-radius:50%;background-color:#ddd;cursor:pointer;transition:all .2s ease}.dot.active{background-color:#646464;transform:scale(1.2)}.announcement-close{background:none;border:none;font-size:1.25rem;color:#666;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;position:absolute;top:1rem;right:1rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.announcement-close:hover{background-color:#f8f9fa;color:#333}@media (max-width: 768px){.announcement-content{padding:1rem;flex-direction:column;gap:1rem}.announcement-nav{display:none}.announcement-header{flex-direction:column;gap:.25rem;text-align:center}.announcement-title{font-size:1.1rem}.announcement-close{top:.5rem;right:.5rem}}@media (max-width: 768px){.home-container{padding:1rem}.home-content{flex-direction:column;align-items:center;gap:1.5rem;min-height:auto;padding:1rem 0;max-width:100%}.history-wrapper{max-width:100%;width:100%}.content-card{padding:2rem 1.5rem;border-radius:12px;margin:0 .5rem;max-width:100%;width:100%}.content-card h2{font-size:2rem;text-align:center}.content-card p{font-size:1rem;text-align:center}.card-header{flex-direction:column;align-items:center;gap:1rem;margin-bottom:1.5rem}.header-actions{justify-content:center;flex-wrap:wrap}.card-actions{flex-direction:column;align-items:center;gap:1rem;margin-top:2rem}.assignment-button,.questions-button{width:100%;max-width:280px;padding:1rem 2rem}.logout-button{padding:.5rem 1rem;font-size:.85rem}.history-wrapper{width:100%;margin:0 .5rem}.history-wrapper .history-card{padding:2rem 1.5rem;margin:0}.history-wrapper .history-title{font-size:1.8rem}.module-selector{margin:2rem 0}.selector-label{font-size:1.1rem;margin-bottom:1.2rem}.dropdown-wrapper{max-width:100%}.module-dropdown{padding:1rem 2.5rem 1rem 1.2rem;font-size:1rem}.dropdown-icon{right:.8rem}}@media (max-width: 1024px) and (min-width: 769px){.home-content{max-width:100%;gap:3rem}.history-wrapper,.content-card{max-width:45%}.content-card{padding:3rem 2.5rem}.history-wrapper .history-card{padding:2rem 1.8rem}}@media (max-width: 480px){.home-content{gap:1rem;padding:.5rem 0}.content-card{padding:1.5rem 1rem;margin:0 .25rem}.content-card h2{font-size:1.6rem}.content-card p{font-size:.9rem}.assignment-button,.questions-button{font-size:.95rem;padding:.875rem 1.5rem;max-width:100%}.history-wrapper{margin:0 .25rem}.history-wrapper .history-card{padding:1.5rem 1rem}.history-wrapper .history-title{font-size:1.5rem}.module-selector{margin:1.5rem 0}.selector-label{font-size:1rem;margin-bottom:1rem}.module-dropdown{padding:.9rem 2.2rem .9rem 1rem;font-size:.95rem}.dropdown-icon{right:.7rem;width:18px;height:18px}}.assignment-container{min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.assignment-content{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;max-width:900px;margin:0 auto}.question-card,.results-card{background:#fff;padding:3.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;width:100%;max-width:900px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.question-card:before,.results-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#646464,#666)}.assignment-nav{position:absolute;top:2rem;left:2rem}.back-link{display:flex;align-items:center;padding:1rem;margin-bottom:.75rem;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;background-color:#fff;position:relative;color:#333;text-decoration:none;font-weight:600}.back-link:hover{border-color:#5c5c5c;background-color:#f8f9fa;color:#333;text-decoration:none}.question-header{margin-bottom:2rem}.question-counter{color:#666;font-size:1rem;margin-bottom:1rem;text-align:center}.progress-bar{width:100%;height:4px;background-color:#e9ecef;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background-color:#646464;transition:width .3s ease}.question-text{color:#333;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;line-height:1.7;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.code-block{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:1rem;margin:1.5rem 0;overflow-x:auto}.code-block pre{margin:0;font-family:Courier New,Courier,monospace;font-size:.875rem;line-height:1.4;color:#333;text-align:left}.code-block code{background:none;padding:0;border:none;text-align:left;display:block}.question-image{margin:1.5rem 0;text-align:center;border:1px solid #e9ecef;border-radius:8px;padding:15px;background:#f8f9fa}.answers-container{margin:2rem 0}.answer-option{display:flex;align-items:flex-start;padding:1rem;margin-bottom:.75rem;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .2s;background-color:#fff;position:relative}.answer-option:hover{border-color:#5c5c5c;background-color:#f8f9fa}.answer-option.selected{border-color:#646464;background-color:#f8f9fa}.answer-option.correct-answer{border-color:#28a745;background-color:#d4edda}.answer-option.incorrect-answer{border-color:#dc3545;background-color:#f8d7da}.answer-option input[type=radio],.answer-option input[type=checkbox]{margin-right:.75rem;margin-top:.125rem;flex-shrink:0}.answer-option input[type=radio]:disabled,.answer-option input[type=checkbox]:disabled{cursor:not-allowed}.answer-option input[type=checkbox]{width:1rem;height:1rem}.answer-label{font-weight:600;margin-right:.5rem;color:#333;flex-shrink:0}.answer-text{color:#333;line-height:1.6;flex:1;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.correct-indicator,.incorrect-indicator{margin-left:auto;font-weight:700;font-size:1.25rem}.correct-indicator{color:#28a745}.incorrect-indicator{color:#dc3545}.feedback-section{margin-top:2rem;padding:1.5rem;border-radius:8px;background-color:#f8f9fa;border:1px solid #e9ecef}.feedback-result{margin-bottom:1.5rem}.feedback-message{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;padding:1rem;border-radius:4px}.feedback-message.correct{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.feedback-message.incorrect{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.feedback-icon{font-size:1.5rem;font-weight:700}.explanation{margin-top:1rem}.explanation h4{color:#333;font-size:1rem;font-weight:600;margin-bottom:.5rem}.explanation p{color:#666;line-height:1.6;margin:0}.question-actions{display:flex;justify-content:space-between;margin-top:2rem;gap:1rem}.nav-button{padding:.75rem 1.5rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;cursor:pointer;transition:all .2s;background-color:#fff;color:#333}.nav-button:hover:not(:disabled){border-color:#646464;background-color:#f8f9fa}.nav-button:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed;border-color:#e9ecef}.next-button{background-color:#646464;color:#fff;border-color:#646464}.next-button:hover:not(:disabled){background-color:#353535;border-color:#353535}.next-button:disabled{background-color:#acacac;border-color:#acacac}.results-card h2{color:#333;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.score-display{text-align:center;margin-bottom:2rem}.score-number{font-size:4rem;font-weight:800;color:#646464;line-height:1}.score-text{font-size:1.25rem;color:#666;margin-top:.5rem}.score-percentage{font-size:2rem;font-weight:600;color:#333;text-align:center;margin-bottom:2rem}.results-summary{margin:2rem 0}.result-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:4px;margin-bottom:.5rem}.result-item.correct{background-color:#d4edda;border:1px solid #c3e6cb}.result-item.incorrect{background-color:#f8d7da;border:1px solid #f5c6cb}.result-question{font-weight:600;color:#333}.result-status{font-weight:500}.result-item.correct .result-status{color:#155724}.result-item.incorrect .result-status{color:#721c24}.results-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.restart-button,.home-button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.restart-button{background-color:#646464;color:#fff}.restart-button:hover{background-color:#353535}.home-button{background-color:#6c757d;color:#fff}.home-button:hover{background-color:#545b62}.timer-container{position:fixed;top:2rem;right:2rem;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.timer-display{background:#fff;color:#333;padding:1rem 1.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;display:flex;align-items:center;gap:.75rem;font-weight:600;font-size:1.1rem;transition:all .3s ease;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.timer-display:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#646464,#666)}.timer-display.timer-warning{background:#fff3cd;border-color:#ffeaa7;color:#856404;animation:pulse-warning 2s infinite}.timer-display.timer-warning:before{background:linear-gradient(90deg,#f39c12,#e67e22)}.timer-display.timer-critical{background:#f8d7da;border-color:#f5c6cb;color:#721c24;animation:pulse-critical 1s infinite}.timer-display.timer-critical:before{background:linear-gradient(90deg,#e74c3c,#c0392b)}.timer-icon{font-size:1.3rem;animation:tick 2s infinite}.timer-text{font-family:Courier New,monospace;letter-spacing:.5px;font-weight:700}.timer-expired-message{background:#fff;color:#721c24;padding:.75rem 1rem;border-radius:12px;font-size:.9rem;font-weight:600;box-shadow:0 4px 20px #00000026;border:2px solid #f5c6cb;animation:shake .5s ease-in-out}.timer-expired-warning{background:#fff;border:2px solid #f5c6cb;border-radius:16px;padding:1rem;margin:1rem 0;text-align:center;color:#721c24;font-weight:600;box-shadow:0 8px 32px #00000026;position:relative;overflow:hidden}.timer-expired-warning:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#e74c3c,#c0392b)}.timer-expired-warning p{margin:0;font-size:1rem}.timer-expired-notice{background:#fff;border:2px solid #ffeaa7;border-radius:16px;padding:1rem;margin-bottom:1.5rem;text-align:center;color:#856404;font-weight:600;box-shadow:0 8px 32px #00000026;position:relative;overflow:hidden}.timer-expired-notice:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#f39c12,#e67e22)}.timer-expired-notice p{margin:0;font-size:1rem}.answer-option.disabled{opacity:.6;cursor:not-allowed;background-color:#f8f9fa}.answer-option.disabled:hover{background-color:#f8f9fa;transform:none;box-shadow:none}.answer-option.disabled input{cursor:not-allowed}.answer-option.selected .answer-text code{background:#6464641a}.answer-option.correct-answer .answer-text{color:#155724}.answer-option.correct-answer .answer-text code{background:#28a7451a;color:#155724}.answer-option.incorrect-answer .answer-text{color:#721c24}.answer-option.incorrect-answer .answer-text code{background:#dc35451a;color:#721c24}.answer-option.disabled .answer-text{opacity:.6}.answer-option.disabled .answer-text code{background:#0000000d}@media (max-width: 1200px){.timer-container{top:1.5rem;right:1.5rem}.timer-display{padding:.875rem 1.25rem;font-size:1rem}.timer-icon{font-size:1.2rem}}@media (max-width: 992px){.timer-container{top:1rem;right:1rem}.timer-display{padding:.75rem 1rem;font-size:.95rem;gap:.5rem}.timer-text{font-size:.9rem}}@media (max-width: 768px){.timer-container{position:relative;top:0;right:0;margin-bottom:1.5rem;align-items:center;order:-1;width:100%}.assignment-content{flex-direction:column}.timer-display{font-size:.9rem;padding:.75rem 1rem;width:100%;max-width:320px;justify-content:center}.timer-expired-message{font-size:.85rem;padding:.6rem .8rem;width:100%;max-width:320px;text-align:center}.timer-expired-warning{padding:.75rem;margin:.75rem 0}.timer-expired-warning p{font-size:.9rem}}@media (max-width: 576px){.timer-container{margin-bottom:1rem}.timer-display{font-size:.85rem;padding:.6rem .8rem;gap:.4rem;max-width:280px}.timer-icon{font-size:1rem}.timer-text{font-size:.8rem}.timer-expired-message{font-size:.8rem;padding:.5rem .6rem;max-width:280px}}@media (max-width: 400px){.timer-display{font-size:.8rem;padding:.5rem .7rem;border-radius:12px;max-width:250px}.timer-text{font-size:.75rem;letter-spacing:.2px}.timer-expired-message{font-size:.75rem;border-radius:8px;max-width:250px}}@keyframes pulse-warning{0%,to{transform:scale(1);box-shadow:0 8px 32px #00000026}50%{transform:scale(1.03);box-shadow:0 12px 40px #f39c124d}}@keyframes pulse-critical{0%,to{transform:scale(1);box-shadow:0 8px 32px #00000026}50%{transform:scale(1.05);box-shadow:0 15px 50px #e74c3c66}}@keyframes tick{0%,90%{transform:rotate(0)}95%{transform:rotate(15deg)}to{transform:rotate(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}75%{transform:translate(8px)}}@media (prefers-reduced-motion: no-preference){.timer-display.timer-critical{animation:pulse-critical 1s infinite}.timer-display.timer-warning{animation:pulse-warning 2s infinite}}@media (max-width: 768px){.assignment-container{padding:1rem}.assignment-nav{top:1rem;left:1rem}.question-card,.results-card{padding:1.5rem}.question-actions{flex-direction:column}.nav-button{width:100%}.results-actions{flex-direction:column}.restart-button,.home-button{width:100%}.score-number{font-size:3rem}.answer-option{padding:.75rem}.timer-container{position:static;margin-bottom:1rem;align-items:center}.timer-display{font-size:1rem;padding:.75rem 1rem}.timer-expired-message{font-size:.8rem;padding:.5rem .75rem}}@media (max-width: 480px){.question-text{font-size:1.125rem;line-height:1.6}.question-text code{font-size:.8em;padding:2px 4px}.code-block{font-size:.75rem}.answer-text{font-size:.9rem;line-height:1.5}.answer-text code{font-size:.8em;padding:1px 4px}.timer-expired-warning{padding:.75rem;margin:.75rem 0}.timer-expired-warning p{font-size:.9rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex!important;align-items:center;justify-content:center;z-index:9999!important;padding:1rem}.modal-content{background:#fff!important;border-radius:16px;box-shadow:0 8px 32px #0000004d;max-width:90vw;max-height:90vh;overflow-y:auto;position:relative;z-index:10000!important;display:block!important}.modal-content[style*="position: fixed"]{position:fixed!important;max-width:min(900px,calc(100vw - 100px));max-height:calc(100vh - 100px)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem 0;border-bottom:1px solid #e9ecef;margin-bottom:1.5rem}.modal-header h3{margin:0;color:#333;font-size:1.5rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.5rem;border-radius:50%;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close:hover{background-color:#f8f9fa;color:#333}.modal-body{padding:0 2rem 2rem}.question-nav-modal{width:800px!important;background:#fff!important;display:block!important;visibility:visible!important;opacity:1!important}.questions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem;margin-bottom:2rem}.question-nav-item{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;font-weight:600}.question-nav-item:hover{border-color:#646464;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.question-nav-item.current{border-color:#646464;background-color:#f8f9fa;box-shadow:0 0 0 2px #64646433}.question-nav-item.answered-correct{border-color:#28a745;background-color:#d4edda}.question-nav-item.answered-incorrect{border-color:#dc3545;background-color:#f8d7da}.question-nav-item.unanswered{border-color:#ffc107;background-color:#fff3cd}.question-number{font-size:1.1rem;color:#333}.question-status{font-size:1.2rem}.nav-legend{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding-top:1rem;border-top:1px solid #e9ecef}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666}.legend-indicator{width:20px;height:20px;border-radius:4px;border:2px solid}.legend-indicator.current{border-color:#646464;background-color:#f8f9fa}.legend-indicator.answered-correct{border-color:#28a745;background-color:#d4edda}.legend-indicator.answered-incorrect{border-color:#dc3545;background-color:#f8d7da}.legend-indicator.unanswered{border-color:#ffc107;background-color:#fff3cd}.question-review-modal{width:900px}.review-question-content{max-height:70vh;overflow-y:auto}.review-question-content .question-text{color:#333;font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;line-height:1.7;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word}.review-answers-container{margin:2rem 0}.review-answers-container h4{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.explanation-section{margin-top:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid rgb(100,100,100)}.explanation-section h4{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.explanation-text{color:#555;line-height:1.6;margin:0;white-space:pre-wrap}.assignment-navigation-container{display:flex;justify-content:center;margin-bottom:1.5rem}.navigation-button{background:linear-gradient(135deg,#646464,#666);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #6464644d;display:flex;align-items:center;gap:.5rem}.navigation-button:hover:not(:disabled){background:linear-gradient(135deg,#666,#646464);transform:translateY(-2px);box-shadow:0 6px 20px #64646466}.navigation-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.result-item.clickable{cursor:pointer;transition:all .2s ease;position:relative}.result-item.clickable:hover{transform:translate(5px);box-shadow:0 2px 8px #0000001a}.result-arrow{font-size:1.2rem;color:#666;opacity:.7;transition:all .2s ease}.result-item.clickable:hover .result-arrow{opacity:1;transform:translate(3px)}.question-review-grid{background:#fff;padding:3.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;width:100%;max-width:900px;border:1px solid rgba(255,255,255,.2);margin-top:2rem}.review-grid-title{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:.5rem;text-align:center}.review-grid-subtitle{color:#666;font-size:1rem;text-align:center;margin-bottom:2rem}.shuffle-modal{width:500px;text-align:center}.shuffle-icon{font-size:3rem;margin-bottom:1rem}.shuffle-message{font-size:1.25rem;font-weight:600;color:#333;margin-bottom:1rem}.shuffle-description{color:#666;margin-bottom:2rem;line-height:1.5}.modal-actions{display:flex;gap:1rem;justify-content:center}.deny-button,.confirm-button{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.deny-button{background-color:#6c757d;color:#fff}.deny-button:hover{background-color:#545b62;transform:translateY(-2px)}.confirm-button{background:linear-gradient(135deg,#646464,#666);color:#fff}.confirm-button:hover{background:linear-gradient(135deg,#666,#646464);transform:translateY(-2px)}@media (max-width: 768px){.modal-content{margin:1rem;max-width:calc(100vw - 2rem)}.modal-content[style*="position: fixed"]{position:fixed!important;left:1rem!important;right:1rem!important;top:50%!important;transform:translateY(-50%)!important;max-width:calc(100vw - 2rem)!important;width:calc(100vw - 2rem)!important}.question-nav-modal,.question-review-modal{width:100%}.questions-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.75rem}.question-nav-item{padding:.75rem .5rem}.nav-legend{flex-direction:column;gap:1rem}.modal-header{padding:1rem 1.5rem 0}.modal-body{padding:0 1.5rem 1.5rem}.modal-header h3{font-size:1.25rem}}@media (max-width: 480px){.questions-grid{grid-template-columns:repeat(5,1fr);gap:.5rem}.question-nav-item{padding:.5rem .25rem;font-size:.9rem}.question-number{font-size:1rem}.question-status{font-size:1.1rem}}.admin-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.admin-nav{position:absolute;top:2rem;left:2rem}.back-button{background-color:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.back-button:hover{background-color:#545b62}.admin-card{background:#fff;padding:3rem;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:100%;max-width:600px}.admin-title{text-align:center;margin-bottom:2rem;color:#333;font-size:2rem;font-weight:600}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;color:#333;font-weight:500;font-size:.9rem}.admin-id-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.admin-id-input:focus{outline:none;border-color:#5c5c5c}.admin-id-input:disabled{background-color:#f8f9fa;color:#6c757d}.input-help-text{margin-top:.25rem;font-size:.8rem;color:#6c757d;display:block}.token-type-select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.token-type-select:focus{outline:none;border-color:#5c5c5c}.token-type-select:disabled{background-color:#f8f9fa;color:#6c757d}.generate-button{width:100%;padding:.75rem 1rem;background-color:#333;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .2s}.generate-button:hover:not(:disabled){background-color:#555}.generate-button:disabled{background-color:#ccc;cursor:not-allowed}.error-message{background-color:#fee;color:#c33;padding:.75rem;border-radius:4px;border:1px solid #fcc;margin:1rem 0;font-size:.9rem}.success-message{background-color:#efe;color:#363;padding:.75rem;border-radius:4px;border:1px solid #cfc;margin:1rem 0;font-size:.9rem}.token-result{margin-top:2rem;padding:1.5rem;background-color:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.token-display{display:flex;gap:.5rem;margin-bottom:1rem}.token-output{flex:1;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:Courier New,monospace;background-color:#fff;color:#333}.token-output:focus{outline:none;border-color:#5c5c5c}.copy-button{padding:.75rem 1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s;min-width:50px}.copy-button:hover{background-color:#0056b3}.token-info{font-size:.85rem;color:#666;line-height:1.4}.token-info p{margin:.25rem 0}.token-actions{margin-top:1rem;text-align:center}.reset-button{padding:.5rem 1.5rem;background-color:#28a745;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.reset-button:hover{background-color:#218838}@media (max-width: 768px){.admin-container{padding:1rem}.admin-card{padding:2rem}.admin-title{font-size:1.5rem}.token-display{flex-direction:column}.copy-button{width:100%}}.questions-page{max-width:1200px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh}.questions-header{margin-bottom:2rem;text-align:center;background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.questions-header h1{color:#333;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#646464,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.search-container{margin-bottom:1.5rem}.search-input{width:100%;max-width:500px;padding:1rem 1.5rem;font-size:1rem;border:2px solid #e9ecef;border-radius:12px;background:#f8f9fa;color:#495057;transition:all .3s ease}.search-input:focus{outline:none;border-color:#646464;background:#fff;box-shadow:0 0 0 3px #6464641a}.questions-container{display:flex;flex-direction:column;gap:2rem}.question-item{background:#fff;border:1px solid #e1e8ed;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000001a;transition:box-shadow .3s ease}.question-item:hover{box-shadow:0 4px 16px #00000026}.question-number{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;padding:8px 16px;border-radius:20px;font-weight:700;font-size:14px;display:inline-block;margin-bottom:15px}.question-content h3{color:#2c3e50;margin-bottom:15px;font-size:1.3rem;line-height:1.5}.code-block{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:15px 0;overflow-x:auto}.code-block pre{margin:0;padding:20px;font-family:Courier New,monospace;font-size:14px;line-height:1.4;color:#495057;white-space:pre-wrap;word-wrap:break-word}.question-image{margin:15px 0;text-align:center;border:1px solid #e9ecef;border-radius:8px;padding:15px;background:#f8f9fa}.question-image img{max-width:100%;height:auto;border-radius:4px;box-shadow:0 2px 8px #0000001a}.answers-section{margin:20px 0}.answers-section h4{color:#34495e;margin-bottom:12px;font-size:1.1rem}.answers-list{display:flex;flex-direction:column;gap:8px}.answer-option{display:flex;align-items:center;gap:10px;padding:12px 15px;border-radius:8px;border:1px solid #ddd;transition:all .3s ease}.answer-option.correct{background-color:#d4edda;border-color:#c3e6cb;color:#155724}.answer-option.incorrect{background-color:#f8f9fa;border-color:#e9ecef;color:#495057}.answer-label{font-weight:700;min-width:30px;color:#2c3e50}.answer-text{flex:1;line-height:1.4}.correct-indicator{color:#28a745;font-weight:700;font-size:18px}.correct-answers-summary{margin:20px 0;padding:15px;background:#e8f5e8;color:#5f5f5f;border-left:4px solid #28a745;border-radius:4px}.correct-answer-tag{background:#28a745;color:#fff;padding:4px 8px;border-radius:4px;font-weight:700;margin-left:5px}.solution-section{margin-top:20px;padding:20px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px}.solution-section h4{color:#856404;margin-bottom:10px;font-size:1.1rem}.solution-text{color:#856404;line-height:1.6;margin:0}.no-results{text-align:center;padding:40px;color:#6c757d;font-size:18px}@media (max-width: 768px){.questions-page{padding:15px}.questions-header h1{font-size:2rem}.question-item{padding:20px}.code-block pre{padding:15px;font-size:12px}.answer-option{padding:10px 12px}}@media (max-width: 480px){.questions-header h1{font-size:1.5rem}.search-input{font-size:14px;padding:10px 15px}.question-item{padding:15px}.code-block pre{font-size:11px}}.module-questions-container{min-height:100vh;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.loading-spinner{display:flex;justify-content:center;align-items:center;min-height:60vh;font-size:1.2rem;color:#666}.error-message{background:#fff;padding:3rem;border-radius:16px;box-shadow:0 8px 32px #00000026;text-align:center;max-width:500px;margin:0 auto;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.error-message h2{color:#dc3545;margin-bottom:1rem}.error-message p{color:#666;margin-bottom:2rem}.questions-header{background:#fff;padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px #00000026;margin-bottom:2rem;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;text-align:center}.questions-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#646464,#666)}.questions-title{color:#333;font-size:2.5rem;font-weight:700;margin:1rem 0;background:linear-gradient(135deg,#646464,#333);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.questions-count{color:#666;font-size:1.1rem;margin:0}.back-button{background:linear-gradient(135deg,#6c757d,#545b62);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #6c757d4d;margin-bottom:1rem}.back-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c757d66}.questions-list{display:flex;flex-direction:column;gap:1.5rem}.question-item{background:#fff;border-radius:16px;box-shadow:0 8px 32px #00000026;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden;transition:transform .2s ease}.question-item:hover{transform:translateY(-2px)}.question-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.question-number{color:#333;font-size:1.3rem;font-weight:700;margin:0}.show-answers-btn,.check-answer-btn{background:linear-gradient(135deg,#646464,#666);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 3px 10px #6464644d}.check-answer-btn:disabled{background:#ccc;cursor:not-allowed;box-shadow:none}.show-answers-btn:hover,.check-answer-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px 15px #64646466}.question-status{font-weight:700;font-size:1.1rem;padding:.5rem 1rem;color:#545b62;border-radius:20px;background:#f8f9fa;border:2px solid #e9ecef}.question-content{padding:2rem}.question-text{font-size:1.1rem;line-height:1.6;color:#333;margin-bottom:1.5rem}.code-block{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;margin:1.5rem 0;overflow-x:auto;border-left:4px solid rgb(100,100,100)}.code-block pre{margin:0;font-family:Courier New,Courier,monospace;font-size:.9rem;line-height:1.4;color:#333}.code-block code{background:none;padding:0;border:none;display:block}.answers-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e9ecef}.answers-section h4{color:#333;font-size:1.2rem;font-weight:600;margin-bottom:1.5rem}.answers-grid{display:flex;flex-direction:column;gap:1rem}.answer-option{display:flex;align-items:center;padding:1rem 1.5rem;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;transition:all .3s ease;background:#fff;position:relative}.answer-option:hover{border-color:#646464;background:#f8f9fa;transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.answer-option.selected{border-color:#646464;background:#6464641a}.answer-option.correct-selected{border-color:#28a745;background:#d4edda}.answer-option.incorrect-selected{border-color:#dc3545;background:#f8d7da}.answer-option.correct-unselected{border-color:#28a745;background:#d4edda}.answer-radio{margin-right:1rem;width:20px;height:20px;cursor:pointer}.answer-radio[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid #ccc;border-radius:4px;margin-right:1rem;cursor:pointer;transition:all .3s ease;position:relative;background:#fff}.answer-radio[type=checkbox]:checked{background:linear-gradient(135deg,#646464,#666);border-color:#646464}.answer-radio[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:700;font-size:12px}.answer-radio[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid #ccc;border-radius:50%;margin-right:1rem;cursor:pointer;transition:all .3s ease;position:relative;background:#fff}.answer-radio[type=radio]:checked{border-color:#646464}.answer-radio[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#646464,#666)}.answer-radio:hover{border-color:#646464;box-shadow:0 0 5px #6464644d}.answer-label-display{font-weight:700;margin-right:1rem;color:#333;flex-shrink:0;font-size:1.1rem}.answer-text{flex:1;color:#333;line-height:1.5;font-size:1rem}.correct-indicator{color:#28a745;font-weight:600;font-size:.9rem;margin-left:auto;flex-shrink:0}.solution-section{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border-left:4px solid rgb(100,100,100);box-shadow:0 4px 12px #0000000d}.solution-section h4{color:#333;font-size:1.2rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.solution-text{color:#555;line-height:1.6;font-size:1rem;margin:0;background:#fff;padding:1rem;border-radius:8px;border:1px solid #e9ecef}.question-image{margin:1.5rem 0;text-align:center;background:#f8f9fa;padding:1rem;border-radius:12px;border:1px solid #e9ecef}.question-img{max-width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px #0000001a;transition:transform .3s ease}.question-img:hover{transform:scale(1.02)}.check-button-container{display:flex;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e9ecef}@media (max-width: 768px){.module-questions-container{padding:1rem}.questions-header{padding:2rem 1.5rem}.questions-title{font-size:2rem}.question-header{flex-direction:column;gap:1rem;text-align:center;padding:1.5rem}.question-status{font-size:1rem;padding:.4rem .8rem}.question-content{padding:1.5rem}.question-image{margin:1rem 0;padding:.8rem}.check-button-container{justify-content:center;margin-top:1rem}.check-answer-btn{width:100%;max-width:280px}.answer-option{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1rem}.answer-radio{margin-right:0;margin-bottom:.5rem}.answer-label-display{margin-right:0;margin-bottom:.3rem}.correct-indicator{margin-left:0;align-self:flex-start;margin-top:.5rem}.solution-section{padding:1rem}.solution-text{padding:.8rem;font-size:.95rem}}@media (max-width: 480px){.questions-header{padding:1.5rem 1rem}.questions-title{font-size:1.6rem}.question-content{padding:1rem}.question-image{margin:.8rem 0;padding:.5rem}.check-button-container{justify-content:center;margin-top:1rem}.check-answer-btn{width:100%;font-size:.9rem;padding:.8rem 1rem}.code-block{padding:1rem;font-size:.8rem}}
