*{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#2c3e50;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100%;overflow:hidden}#root{height:100vh;overflow:hidden;width:100vw}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.allow-scroll,.exam-content,.pdf-content,.profile-content,.question-content,.scrollable,.stats-content,.video-content{overflow:auto!important}.scrollable::-webkit-scrollbar{height:8px;width:8px}.scrollable::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.scrollable::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px;-webkit-transition:background .3s ease;transition:background .3s ease}.scrollable::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.scrollable{scrollbar-color:#c1c1c1 #f1f1f1;scrollbar-width:thin}button{border:none;cursor:pointer;outline:none;transition:all .3s ease}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;outline:none;padding:.5rem;transition:border-color .3s ease}input:focus,select:focus,textarea:focus{border-color:#3498db;box-shadow:0 0 0 2px #3498db33}a{color:#3498db;text-decoration:none;transition:color .3s ease}a:hover{color:#2980b9;text-decoration:underline}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-in}.slide-in{animation:slideIn .3s ease-out}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-flex{display:flex}.d-block{display:block}.d-none{display:none}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.align-center{align-items:center}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}.m-0{margin:0}.p-0{padding:0}.mt-1{margin-top:.5rem}.mb-1{margin-bottom:.5rem}.pt-1{padding-top:.5rem}.pb-1{padding-bottom:.5rem}@media (max-width:768px){body{font-size:14px}.container{padding:.5rem}}@media (max-width:480px){body{font-size:12px}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}