.btn-activate,.btn-cancel,.btn-coin,.btn-create,.btn-danger,.btn-delete,.btn-disable,.btn-download,.btn-edit,.btn-enable,.btn-export,.btn-financial,.btn-inactivate,.btn-invalidate,.btn-invite,.btn-money,.btn-preview,.btn-primary,.btn-remove,.btn-secondary,.btn-submit,.btn-success,.btn-update,.btn-validate,.btn-view,.btn-warning,button[class*=btn-]{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-weight:500;gap:.4rem;justify-content:center;overflow:hidden;position:relative;text-shadow:0 1px 2px #0003;transition:all .2s ease;white-space:nowrap}.btn-activate:not(:disabled),.btn-cancel:not(:disabled),.btn-coin:not(:disabled),.btn-create:not(:disabled),.btn-danger:not(:disabled),.btn-delete:not(:disabled),.btn-disable:not(:disabled),.btn-download:not(:disabled),.btn-edit:not(:disabled),.btn-enable:not(:disabled),.btn-export:not(:disabled),.btn-financial:not(:disabled),.btn-inactivate:not(:disabled),.btn-invalidate:not(:disabled),.btn-invite:not(:disabled),.btn-money:not(:disabled),.btn-preview:not(:disabled),.btn-primary:not(:disabled),.btn-remove:not(:disabled),.btn-secondary:not(:disabled),.btn-submit:not(:disabled),.btn-success:not(:disabled),.btn-update:not(:disabled),.btn-validate:not(:disabled),.btn-view:not(:disabled),.btn-warning:not(:disabled),button[class*=btn-]:not(:disabled){box-shadow:0 4px 8px #00000026,0 2px 4px #0000001a,inset 0 1px 0 #fff3,inset 0 -1px 0 #0000001a}.btn-activate:hover:not(:disabled),.btn-cancel:hover:not(:disabled),.btn-coin:hover:not(:disabled),.btn-create:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-delete:hover:not(:disabled),.btn-disable:hover:not(:disabled),.btn-download:hover:not(:disabled),.btn-edit:hover:not(:disabled),.btn-enable:hover:not(:disabled),.btn-export:hover:not(:disabled),.btn-financial:hover:not(:disabled),.btn-inactivate:hover:not(:disabled),.btn-invalidate:hover:not(:disabled),.btn-invite:hover:not(:disabled),.btn-money:hover:not(:disabled),.btn-preview:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-remove:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-success:hover:not(:disabled),.btn-update:hover:not(:disabled),.btn-validate:hover:not(:disabled),.btn-view:hover:not(:disabled),.btn-warning:hover:not(:disabled),button[class*=btn-]:hover:not(:disabled){box-shadow:0 6px 12px #0003,0 3px 6px #00000026,inset 0 1px 0 #ffffff40,inset 0 -1px 0 #00000026;transform:translateY(-1px)}.btn-activate:active:not(:disabled),.btn-cancel:active:not(:disabled),.btn-coin:active:not(:disabled),.btn-create:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-delete:active:not(:disabled),.btn-disable:active:not(:disabled),.btn-download:active:not(:disabled),.btn-edit:active:not(:disabled),.btn-enable:active:not(:disabled),.btn-export:active:not(:disabled),.btn-financial:active:not(:disabled),.btn-inactivate:active:not(:disabled),.btn-invalidate:active:not(:disabled),.btn-invite:active:not(:disabled),.btn-money:active:not(:disabled),.btn-preview:active:not(:disabled),.btn-primary:active:not(:disabled),.btn-remove:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-submit:active:not(:disabled),.btn-success:active:not(:disabled),.btn-update:active:not(:disabled),.btn-validate:active:not(:disabled),.btn-view:active:not(:disabled),.btn-warning:active:not(:disabled),button[class*=btn-]:active:not(:disabled){box-shadow:inset 0 3px 6px #0000004d,inset 0 1px 2px #0003,0 1px 2px #0000001a;transform:translateY(1px)}.btn-activate:disabled,.btn-cancel:disabled,.btn-coin:disabled,.btn-create:disabled,.btn-danger:disabled,.btn-delete:disabled,.btn-disable:disabled,.btn-download:disabled,.btn-edit:disabled,.btn-enable:disabled,.btn-export:disabled,.btn-financial:disabled,.btn-inactivate:disabled,.btn-invalidate:disabled,.btn-invite:disabled,.btn-money:disabled,.btn-preview:disabled,.btn-primary:disabled,.btn-remove:disabled,.btn-secondary:disabled,.btn-submit:disabled,.btn-success:disabled,.btn-update:disabled,.btn-validate:disabled,.btn-view:disabled,.btn-warning:disabled,button[class*=btn-]:disabled{background:#d3d3d3!important;box-shadow:none!important;color:#888!important;cursor:not-allowed;opacity:.6;transform:none!important}.btn-create,.btn-edit,.btn-primary,.btn-submit,.btn-update{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-create:hover:not(:disabled),.btn-edit:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn-submit:hover:not(:disabled),.btn-update:hover:not(:disabled){background:linear-gradient(135deg,#357abd,#2a5f8f)}.btn-create:active:not(:disabled),.btn-edit:active:not(:disabled),.btn-primary:active:not(:disabled),.btn-submit:active:not(:disabled),.btn-update:active:not(:disabled){background:linear-gradient(135deg,#2a5f8f,#1e4a6b)}.btn-primary.btn-lg{font-size:1rem;padding:.75rem 1.5rem}.btn-danger,.btn-delete,.btn-remove{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-danger:hover:not(:disabled),.btn-delete:hover:not(:disabled),.btn-remove:hover:not(:disabled){background:linear-gradient(135deg,#c0392b,#a93226)}.btn-danger:active:not(:disabled),.btn-delete:active:not(:disabled),.btn-remove:active:not(:disabled){background:linear-gradient(135deg,#a93226,#922b21)}.btn-coin,.btn-financial,.btn-money{background:linear-gradient(135deg,#f39c12,#d68910);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-coin:hover:not(:disabled),.btn-financial:hover:not(:disabled),.btn-money:hover:not(:disabled){background:linear-gradient(135deg,#d68910,#b9770e)}.btn-coin:active:not(:disabled),.btn-financial:active:not(:disabled),.btn-money:active:not(:disabled){background:linear-gradient(135deg,#b9770e,#9c640c)}.btn-activate,.btn-enable,.btn-success,.btn-validate{background:linear-gradient(135deg,#27ae60,#229954);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-activate:hover:not(:disabled),.btn-enable:hover:not(:disabled),.btn-success:hover:not(:disabled),.btn-validate:hover:not(:disabled){background:linear-gradient(135deg,#229954,#1e8449)}.btn-activate:active:not(:disabled),.btn-enable:active:not(:disabled),.btn-success:active:not(:disabled),.btn-validate:active:not(:disabled){background:linear-gradient(135deg,#1e8449,#196f3d)}.btn-invite,.btn-warning{background:linear-gradient(135deg,#e67e22,#d35400);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-invite:hover:not(:disabled),.btn-warning:hover:not(:disabled){background:linear-gradient(135deg,#d35400,#ba4a00)}.btn-invite:active:not(:disabled),.btn-warning:active:not(:disabled){background:linear-gradient(135deg,#ba4a00,#a04000)}.btn-cancel,.btn-secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-cancel:hover:not(:disabled),.btn-secondary:hover:not(:disabled){background:linear-gradient(135deg,#7f8c8d,#6c757d)}.btn-cancel:active:not(:disabled),.btn-secondary:active:not(:disabled){background:linear-gradient(135deg,#6c757d,#5a6268)}.btn-preview,.btn-view{background:linear-gradient(135deg,#9b59b6,#8e44ad);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-preview:hover:not(:disabled),.btn-view:hover:not(:disabled){background:linear-gradient(135deg,#8e44ad,#7d3c98)}.btn-preview:active:not(:disabled),.btn-view:active:not(:disabled){background:linear-gradient(135deg,#7d3c98,#6c3483)}.btn-disable,.btn-inactivate,.btn-invalidate{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-disable:hover:not(:disabled),.btn-inactivate:hover:not(:disabled),.btn-invalidate:hover:not(:disabled){background:linear-gradient(135deg,#c82333,#bd2130)}.btn-disable:active:not(:disabled),.btn-inactivate:active:not(:disabled),.btn-invalidate:active:not(:disabled){background:linear-gradient(135deg,#bd2130,#a71e2a)}.btn-download,.btn-export{background:linear-gradient(135deg,#17a2b8,#138496);color:#fff;font-size:.9rem;padding:.5rem 1rem}.btn-download:hover:not(:disabled),.btn-export:hover:not(:disabled){background:linear-gradient(135deg,#138496,#117a8b)}.btn-download:active:not(:disabled),.btn-export:active:not(:disabled){background:linear-gradient(135deg,#117a8b,#0f6674)}.btn-sm{font-size:.8rem;padding:.35rem .7rem}.btn-lg{font-size:1rem;padding:.75rem 1.5rem}.btn-xl{font-size:1.1rem;padding:1rem 2rem}.btn-base>span,.btn-base>svg{align-items:center;display:inline-flex;justify-content:center}.btn-base{filter:contrast(1.05)}*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}.razorpay-container[style*="display: none"],.razorpay-container[style*="display: none"] .razorpay-backdrop,.razorpay-container[style*="display: none"] iframe,.razorpay-container[style*="display:none"],.razorpay-container[style*="display:none"] .razorpay-backdrop,.razorpay-container[style*="display:none"] iframe{pointer-events:none!important;visibility:hidden!important}.option-row{align-items:center;display:flex!important;gap:10px;margin-bottom:10px;width:100%}.option-row .correct-checkbox{box-sizing:border-box!important;cursor:pointer;flex:0 0 20px!important;height:20px!important;margin:0!important;max-width:20px!important;min-width:20px!important;padding:0!important;width:20px!important}.option-row .option-input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;flex:1 1 auto!important;min-width:0!important;padding:8px;width:auto!important}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-box{background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;max-width:400px;padding:2.5rem;width:100%}.login-box h1{color:#2c3e50;font-size:1.8rem;margin-bottom:.5rem;text-align:center}.login-box h2{font-size:1.2rem;font-weight:400;margin-bottom:2rem}.login-box h2,.register-link{color:#7f8c8d;text-align:center}.register-link{margin-top:1.5rem}.register-link a{color:#667eea;text-decoration:none}.register-link a:hover{text-decoration:underline}.forgot-password-link{margin-bottom:.5rem;margin-top:1rem;text-align:center}.forgot-password-button{background:none;border:none;color:#667eea;cursor:pointer;font-family:inherit;font-size:.9rem;padding:0;text-decoration:none}.forgot-password-button:hover{text-decoration:underline}.modal-content{border-radius:10px;box-shadow:0 10px 40px #0000004d;max-width:450px}.modal-content h2{text-align:center}.method-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.method-select:focus{border-color:#667eea;outline:none}.form-actions{gap:1rem;margin-top:1.5rem}.btn-secondary:hover{background-color:#d0d0d0}.mobile-number-input{width:100%}.mobile-input-wrapper{align-items:stretch;display:flex;gap:.5rem}.country-code-wrapper{flex:0 0 auto;position:relative;width:100px}.country-code-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:12px;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.9rem;padding:.75rem 2rem .75rem .5rem;text-align:left;transition:border-color .3s;width:100%}.country-code-select:focus{border-color:#667eea;outline:none}.country-code-select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.mobile-number-field{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:1rem;min-width:0;padding:.75rem;transition:border-color .3s;width:100%}.mobile-number-field:focus{border-color:#667eea;outline:none}.mobile-number-field:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.mobile-input-error{color:#c33;font-size:.85rem;margin-top:.25rem;padding-left:.25rem}@media (max-width:768px){.mobile-input-wrapper{flex-direction:column}.country-code-select{min-width:100%}}.register-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:1rem}.register-box{background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;padding:2.5rem;width:100%}.register-box h1{color:#2c3e50;font-size:1.8rem;margin-bottom:.5rem;text-align:center}.register-box h2{color:#7f8c8d;font-size:1.2rem;font-weight:400;margin-bottom:2rem;text-align:center}.form-group label{align-items:center;display:flex;gap:.5rem}.form-group input,.form-group select{font-size:1rem;padding:.75rem;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:#667eea;outline:none}.form-group input.error,.form-group input.error:focus,.form-group select.error,.form-group select.error:focus{border-color:#c33}.form-group .error-text,.form-group small.error-text{color:#c33;display:block;font-size:.85rem;font-weight:500;margin-top:.25rem}.submit-btn{background-color:#667eea;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem;transition:background-color .3s;width:100%}.submit-btn:hover:not(:disabled){background-color:#5568d3}.submit-btn:disabled{cursor:not-allowed;opacity:.6}.login-link{color:#7f8c8d;margin-top:1.5rem;text-align:center}.login-link a{color:#667eea;text-decoration:none}.login-link a:hover{text-decoration:underline}.verification-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.verification-box{background:#fff;border-radius:10px;box-shadow:0 10px 40px #0000004d;max-width:600px;padding:2.5rem;width:100%}.verification-box h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem;text-align:center}.verification-box h2{color:#667eea;font-size:1.5rem;margin-bottom:.5rem;text-align:center}.verification-subtitle{color:#666;font-size:.95rem;margin-bottom:2rem;text-align:center}.verification-section{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.verification-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.verification-header h3{color:#2c3e50;font-size:1.1rem;margin:0}.verified-badge{background-color:#4caf50}.unverified-badge,.verified-badge{border-radius:12px;color:#fff;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.unverified-badge{background-color:#ff9800}.verification-info{color:#666;font-size:.9rem;margin-bottom:1rem}.otp-input-group{display:flex;flex-direction:column;gap:1rem}.otp-input{border:2px solid #ddd;border-radius:8px;font-size:1.2rem;padding:1rem;transition:border-color .3s;width:100%}.otp-input:focus{border-color:#667eea;outline:none}.otp-input:disabled{background-color:#f5f5f5;color:#999;cursor:not-allowed;opacity:.7}.otp-actions{display:flex;flex-wrap:wrap;gap:.5rem}.btn-compact{flex:0 1 auto;font-size:.875rem;min-width:120px;padding:.5rem 1rem;white-space:nowrap}.btn-primary{flex:1 1}.btn-primary.btn-compact{flex:0 1 auto;font-size:.875rem;min-width:120px;padding:.5rem 1rem}.btn-secondary{background-color:#e0e0e0;color:#2c3e50;flex:1 1}.btn-secondary.btn-compact{flex:0 1 auto;font-size:.875rem;min-width:120px;padding:.5rem 1rem}.btn-secondary:hover:not(:disabled){background-color:#d0d0d0}.error-message,.success-message{border-radius:6px}.success-message{background-color:#efe;border:1px solid #cfc;color:#3c3;margin-bottom:1rem;padding:.75rem}.verification-footer{display:flex;gap:.5rem;justify-content:center;margin-top:2rem;text-align:center}@media (max-width:768px){.verification-box{padding:1.5rem}.verification-section{padding:1rem}.otp-actions{flex-direction:row;flex-wrap:wrap}.btn-compact{flex:1 1 auto;min-width:100px}}.modal-content h2{margin-bottom:1rem}.modal-content p{margin-bottom:1.5rem}.invitation-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:1rem}.invitation-box{background:#fff;border-radius:10px;box-shadow:0 10px 40px #0003;max-width:500px;padding:2.5rem;width:100%}.invitation-box h1{color:#2c3e50;font-size:1.8rem;margin-bottom:1rem;text-align:center}.invitation-box p{color:#7f8c8d;margin-bottom:1.5rem;text-align:center}.info-text{color:#1976d2;padding:.75rem}.form-group input{transition:border-color .3s}.form-group input:focus{border-color:#667eea}.password-toggle{z-index:1}.form-group small{color:#7f8c8d;font-size:.85rem;margin-top:.25rem}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33}.btn-primary,.error-message{margin-bottom:1rem;padding:.75rem}.btn-primary{background-color:#667eea;font-size:1rem}.btn-primary:hover:not(:disabled){background-color:#5568d3}.btn-secondary{font-size:1rem;padding:.75rem;transition:background-color .3s}.sync-status-notification{animation:slideIn .3s ease-out;background:#fff;border-left:4px solid #3b82f6;border-radius:8px;bottom:20px;box-shadow:0 4px 12px #00000026;max-width:400px;min-width:320px;position:fixed;right:20px;z-index:1000}.sync-status-content{padding:16px}.sync-status-header{align-items:center;display:flex;gap:8px;margin-bottom:8px}.sync-status-icon{font-size:20px}.sync-status-title{color:#1f2937;flex:1 1;font-size:14px;font-weight:600}.sync-status-dismiss{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;transition:color .2s;width:24px}.sync-status-dismiss:hover{color:#1f2937}.sync-status-message{color:#4b5563;font-size:13px;line-height:1.5;margin-bottom:12px}.sync-status-progress{align-items:center;display:flex;gap:12px}.sync-status-progress-bar{background-color:#e5e7eb;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.sync-status-progress-fill{background-color:#3b82f6;border-radius:3px;height:100%;transition:width .3s ease}.sync-status-progress-text{color:#1f2937;font-size:12px;font-weight:600;min-width:40px;text-align:right}.sync-status-completed{background-color:#f0fdf4;color:#10b981}.sync-status-completed,.sync-status-error{border-radius:4px;font-size:12px;font-weight:500;padding:8px}.sync-status-error{background-color:#fef2f2;color:#ef4444}.layout{display:flex;flex-direction:column;min-height:100vh}.layout-header{background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;color:#fff;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:999}.header-content{align-items:center;display:flex;justify-content:space-between;max-width:100%}.header-content h1{font-size:1.5rem;margin:0}.header-right{align-items:center;display:flex;gap:1.5rem}.current-time,.session-timeout{background-color:#ffffff1a;border:1px solid #fff3;border-radius:4px;font-size:.9rem;font-weight:600;padding:.4rem .8rem;transition:all .3s}.session-timeout-warning{animation:pulse 2s infinite;background-color:#ff98004d;border-color:#ff980080}.coin-balance-header{background-color:#ffffff1a;border:1px solid #fff3;border-radius:4px;font-size:.9rem;font-weight:600;padding:.4rem .8rem}.header-logout-btn{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border:2.5px solid #fff6;border-radius:50%;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;display:flex;height:30px;justify-content:center;overflow:hidden;padding:0;position:relative;transition:all .3s ease;width:30px}.header-logout-btn:before{background:radial-gradient(circle,#ffffff4d 0,#0000 70%);content:"";height:200%;left:-50%;opacity:0;position:absolute;top:-50%;transition:opacity .3s ease;width:200%}.header-logout-btn:hover{background:linear-gradient(135deg,#c0392b,#a93226);border-color:#fff9;box-shadow:0 4px 12px #0000004d;transform:scale(1.05)}.header-logout-btn:hover:before{opacity:1}.header-logout-btn:active{transform:scale(.95)}.header-logout-btn svg{stroke:#fff;stroke-width:2.5;height:14px;position:relative;width:14px;z-index:1}@media (max-width:768px){.header-logout-btn{height:27px;width:27px}.header-logout-btn svg{height:12px;width:12px}.header-right{gap:1rem}}.user-info{align-items:center;display:flex;gap:1rem}.logout-btn{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background-color .3s}.logout-btn:hover{background-color:#c0392b}.layout-body{display:flex;flex:1 1;overflow-x:visible;overflow-y:hidden;pointer-events:auto;position:relative}.layout-sidebar{background-color:#34495e;box-shadow:2px 0 4px #0000001a;color:#fff;display:flex;flex-direction:column;overflow-y:auto;width:250px}@media (min-width:769px){.layout-sidebar{height:calc(100vh - 60px);left:0;overflow-x:hidden;overflow-y:auto;position:fixed;top:60px;z-index:998}.layout-body{margin-left:250px}.layout-main{margin-left:0}}.layout-body-no-sidebar{margin-left:0!important}.layout-body[data-hide-sidebar=true] .layout-sidebar{display:none!important}.layout-body[data-hide-sidebar=true] .layout-main{margin-left:0!important;width:100%!important}.organization-name-header{background-color:#ffffff1a;border-bottom:1px solid #fff3;padding:1rem}.organization-name-header h2{word-wrap:break-word;color:#fff;font-size:1.1rem;font-weight:600;margin:0;text-align:center}.layout-main{background-color:#f5f5f5;flex:1 1;max-width:100%;min-width:0;overflow-x:visible!important;overflow-y:auto;padding:2rem;pointer-events:auto;position:relative;width:100%;z-index:1}.layout-main-full{margin-left:0;width:100%}@media (max-width:768px){.layout-header{padding:.75rem 1rem}.layout-sidebar{width:200px}.header-content{align-items:flex-start;flex-direction:column;gap:.75rem}.header-content h1{font-size:1.2rem}.header-right{flex-direction:row;flex-wrap:wrap;gap:.5rem;justify-content:space-between;width:100%}.coin-balance-header,.current-time,.session-timeout{font-size:.8rem;padding:.3rem .6rem}.layout-main{max-width:100%;overflow-x:visible!important;padding:1rem;width:100%}}@media (max-width:480px){.layout-body{flex-direction:column}.layout-sidebar{max-height:200px;width:100%}}.sidebar{padding:1rem 0}@media (min-width:769px){.sidebar{height:100%;overflow-x:hidden;overflow-y:auto}.sidebar-list{height:auto;overflow:visible}}.sidebar-list{list-style:none;margin:0;padding:0}.sidebar-list li{margin:0}.sidebar-link{align-items:center;border-left:3px solid #0000;color:#ecf0f1;display:flex;padding:1rem 1.5rem;position:relative;text-decoration:none;transition:background-color .3s,color .3s}.sidebar-link:hover{background-color:#2c3e50;color:#fff}.sidebar-link.active{background-color:#3498db;border-left-color:#2980b9;color:#fff}.sidebar-icon{font-size:1.2rem;margin-right:.75rem}.sidebar-link-content{align-items:center;display:flex;position:relative;width:100%}.flash-icon{animation:flash 1.5s infinite;display:inline-block;font-size:1rem;margin-left:.5rem}@keyframes flash{0%,to{opacity:1}50%{opacity:.3}}.unread-badge{animation:pulse 2s infinite;background-color:#e74c3c;border-radius:12px;box-shadow:0 2px 4px #e74c3c66;color:#fff;font-size:11px;font-weight:700;line-height:1.4;margin-left:auto;min-width:20px;padding:2px 8px;text-align:center;white-space:nowrap}@media (max-width:768px){.sidebar{padding:0}.sidebar-list{display:none}.sidebar-mobile{padding:1rem}.sidebar-dropdown{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#2c3e50;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.sidebar-dropdown:focus{border-color:#3498db;outline:none}}@media (min-width:769px){.sidebar-dropdown{display:none}}@media (min-width:769px){.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#ffffff1a}.sidebar::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff80}}.sidebar-separator{background-color:#fff3;border:none;height:1px;margin:.5rem 1.5rem;padding:0}.sidebar-logout{background:none;border:none;cursor:pointer;text-align:left;width:100%}.sidebar-logout:hover{background-color:#e74c3c33;color:#e74c3c}.search-box-container{align-items:center;display:flex;gap:10px}.search-input-wrapper{flex:1 1;max-width:400px;position:relative}.search-input-wrapper .search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 35px 10px 15px;width:100%}.search-clear-btn{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:color .2s;width:24px}.search-clear-btn:hover{color:#333}.search-btn{background-color:#667eea;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background-color .2s}.search-btn:hover{background-color:#5568d3}.organizations{max-width:1400px;min-width:0;overflow-x:visible;width:100%}@media (max-width:768px){.organizations{max-width:100%;overflow-x:visible;width:100%}}.search-bar{margin-bottom:1.5rem}.search-bar input{font-size:1rem;padding:.75rem}table{min-width:700px!important}thead{background-color:#34495e}.modal-content h2{color:#2c3e50}.modal-danger .alert-danger{background-color:#fee;border:1px solid #fcc;color:#c33;margin-bottom:1rem;padding:1rem}.confirm-input{font-size:1rem;margin:1rem 0;padding:.75rem}.modal-actions{gap:1rem}.form-group label{color:#2c3e50}.form-group input,.form-group textarea{font-size:1rem;padding:.75rem}.form-group input:focus,.form-group textarea:focus{border-color:#3498db;outline:none}@media (max-width:768px){.page-header{align-items:stretch;flex-direction:column;gap:1rem}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:600px}}.searchable-select-container{position:relative;width:100%}.searchable-select-label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:5px}.searchable-select{position:relative;width:100%}.searchable-select.disabled{cursor:not-allowed;opacity:.6}.searchable-select-trigger{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;min-height:38px;padding:8px 12px;transition:border-color .2s}.searchable-select:not(.disabled) .searchable-select-trigger:hover{border-color:#1976d2}.searchable-select.open .searchable-select-trigger{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#1976d2}.searchable-select-trigger .selected-value{color:#333;flex:1 1;text-align:left}.searchable-select-trigger .placeholder{color:#999;flex:1 1;text-align:left}.searchable-select-actions{align-items:center;display:flex;gap:8px;margin-left:8px}.clear-icon{color:#999;cursor:pointer;font-size:20px;line-height:1;padding:0 4px;transition:color .2s}.clear-icon:hover{color:#333}.arrow-icon{color:#666;font-size:12px;transition:transform .2s}.searchable-select-dropdown{background:#fff;border:1px solid #1976d2;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;left:0;max-height:300px;position:absolute;right:0;top:100%;z-index:1000}.searchable-select-search{border-bottom:1px solid #eee;padding:8px}.searchable-select-search input{border:1px solid #ddd;border-radius:4px;font-size:14px;outline:none;padding:6px 10px;width:100%}.searchable-select-search input:focus{border-color:#1976d2}.searchable-select-options{max-height:250px;overflow-y:auto;padding:4px 0}.searchable-select-option{color:#333;cursor:pointer;font-size:14px;padding:8px 12px;transition:background-color .2s}.searchable-select-option:hover{background-color:#f0f0f0}.searchable-select-option.selected{background-color:#e3f2fd;color:#1976d2;font-weight:500}.searchable-select-no-results{color:#999;font-size:14px;padding:12px;text-align:center}.searchable-select-trigger.required:not(:has(.selected-value)){border-color:#d32f2f}.searchable-select-trigger.required:not(:has(.selected-value)):after{color:#d32f2f;content:" *"}.searchable-select-options::-webkit-scrollbar{width:6px}.searchable-select-options::-webkit-scrollbar-track{background:#f1f1f1}.searchable-select-options::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.searchable-select-options::-webkit-scrollbar-thumb:hover{background:#555}.users{max-width:1400px;min-width:0;overflow-x:visible;padding:2rem;width:100%}@media (max-width:768px){.users{max-width:100%;overflow-x:visible;padding:1rem;width:100%}}.page-header{padding-bottom:1.5rem}.btn-primary,.btn-secondary{box-shadow:0 2px 4px #0000001a;box-sizing:border-box;font-size:.875rem;font-weight:500;gap:.5rem;height:auto;line-height:1.5;padding:.625rem 1rem;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#5568d3,#653a8f);box-shadow:0 4px 8px #667eea4d;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{box-shadow:none}.btn-secondary{background:#fff;border:1.5px solid #dee2e6;color:#495057}.btn-secondary:hover:not(:disabled){background:#f8f9fa;border-color:#adb5bd;box-shadow:0 2px 4px #0000001a}.users h1{color:#2c3e50;margin-bottom:2rem}.filters{margin-bottom:1.5rem}.filter-select,.search-input{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.75rem}.table-container{border:1px solid #e9ecef;box-shadow:0 4px 12px #00000014}table{display:table;min-width:900px!important;table-layout:auto}thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}td,th{border-bottom:1px solid #eee;padding:1rem}tbody tr:hover{background-color:#f8f9fa}.role-admin{background-color:#e74c3c;color:#fff}.role-organization_admin{background-color:#3498db;color:#fff}.role-instructor{background-color:#9b59b6;color:#fff}.role-student{background-color:#27ae60;color:#fff}.status-badge{font-size:.85rem;padding:.25rem .75rem}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}@media (max-width:768px){.page-header{align-items:stretch;flex-direction:column;gap:1rem}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.filters{flex-direction:column}.filter-select,.search-input{max-width:none;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.btn-sm{transition:all .2s ease}.btn-danger,.btn-sm{border-radius:5px;font-size:.8125rem;padding:.5rem .875rem}.btn-danger{background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 2px 4px #f5576c33}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#e084f0,#e4465a);box-shadow:0 4px 8px #f5576c4d;transform:translateY(-1px)}.btn-danger:active:not(:disabled){transform:translateY(0)}.btn-danger:disabled{background:#ccc;box-shadow:none}.org-select-wrapper{position:relative}.org-search-input{margin-bottom:8px}.org-search-input,.org-select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.error-text{color:#d32f2f;font-size:12px;margin-top:4px}.warning-text{color:#d32f2f;margin:10px 0}.org-tag{background-color:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:.85rem;font-weight:500;margin-bottom:.25rem;margin-right:.5rem;padding:.25rem .75rem;white-space:nowrap}.org-column{word-wrap:break-word;background-color:inherit;max-width:200px;width:200px}tbody tr:hover .org-column{background-color:#f8f9fa}.modal-content .form-group{margin-bottom:1.5rem}.modal-content .form-group label{align-items:center;color:#2c3e50;display:flex;font-weight:500;gap:.5rem;margin-bottom:.5rem}.tooltip-wrapper{display:inline-block;margin-left:.25rem;position:relative}.tooltip-icon{align-items:center;background:linear-gradient(135deg,#2c2c2c,#000);border:1px solid #0000004d;border-radius:50%;box-shadow:0 2px 4px #0000004d,inset 0 1px 0 #fff3,inset 0 -1px 0 #00000080;color:#fff;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:700;height:1.2rem;justify-content:center;text-shadow:0 1px 2px #00000080;transition:all .3s ease;width:1.2rem}.tooltip-icon:hover{background:linear-gradient(135deg,#3c3c3c,#1a1a1a);box-shadow:0 3px 6px #0006,inset 0 1px 0 #ffffff4d,inset 0 -1px 0 #0009;transform:translateY(-1px)}.tooltip-text{word-wrap:break-word;background-color:#333;border-radius:6px;bottom:125%;box-shadow:0 4px 12px #0000004d;color:#fff;font-size:.85rem;font-weight:400;line-height:1.4;margin-left:0;max-width:400px;min-width:250px;opacity:0;padding:8px 12px;pointer-events:none;text-align:left;transition:opacity .3s,visibility .3s;visibility:hidden;white-space:normal;z-index:2000}.tooltip-text,.tooltip-text:after{left:50%;position:absolute;transform:translateX(-50%)}.tooltip-text:after{border:5px solid #0000;border-top-color:#333;content:"";top:100%}.tooltip-wrapper:hover .tooltip-text{opacity:1;visibility:visible}.modal-content .form-group input,.modal-content .form-group select{border:1px solid #ddd;border-radius:4px;font-size:1rem;padding:.75rem;transition:border-color .3s;width:100%}.modal-content .form-group input:focus,.modal-content .form-group select:focus{border-color:#667eea;outline:none}.modal-content .form-group input.error,.modal-content .form-group input.error:focus,.modal-content .form-group select.error,.modal-content .form-group select.error:focus{border-color:#c33}.validation-errors{margin-top:.25rem}.modal-content .form-group .error-text,.modal-content .form-group small.error-text{color:#c33;display:block;font-size:.85rem;font-weight:500;margin-top:.25rem}.status-terminated{background-color:#ffebee}@media (max-width:768px){.exams-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column;gap:1rem}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.filters{flex-direction:column}.filter-select,.search-input{width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.campaigns-section,.rates-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.org-selector{margin-bottom:20px}.org-selector label{color:#333;display:block;font-weight:500;margin-bottom:8px}.org-selector select{border:1px solid #ddd;border-radius:4px;font-size:14px;max-width:400px;padding:10px;width:100%}.add-coins-form,.coin-rate-form{background:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;gap:15px;margin-bottom:20px;max-width:500px;padding:20px}.collapsible-card{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;overflow:hidden}.card-header{align-items:center;background:#f9f9f9;border-bottom:1px solid #eee;cursor:pointer;display:flex;justify-content:space-between;padding:20px;transition:background-color .2s}.card-header:hover{background:#f0f0f0}.card-header h2{color:#333;font-size:18px;margin:0}.card-toggle-icon{color:#666;font-size:14px;transition:transform .2s}.card-content{padding:20px}.previous-values{background:#f0f7ff;border-left:4px solid #1976d2;border-radius:6px;margin-bottom:20px;padding:15px}.previous-values h4{color:#1976d2;font-size:14px;font-weight:600;margin:0 0 12px}.value-display{display:flex;flex-direction:column;gap:8px}.value-item{display:flex;font-size:14px;gap:10px}.value-item strong{color:#555;min-width:150px}.value-item span{color:#333;font-weight:500}.add-coins-section,.debit-coins-section{border-top:1px solid #eee;margin-top:30px;padding-top:30px}.add-coins-section h3,.debit-coins-section h3{color:#333;margin-bottom:15px}.debit-coins-form{background:#f9f9f9;border-radius:8px;display:flex;flex-direction:column;gap:15px;margin-bottom:20px;max-width:500px;padding:20px}.form-group select[multiple]{min-height:100px}.org-multi-select{min-height:120px;padding:8px}.table-container{margin-top:20px}code{background:#f5f5f5;border-radius:3px;font-family:monospace;font-size:13px;padding:2px 6px}.btn-info{background-color:#17a2b8;font-size:12px;padding:6px 12px}.btn-info:hover{background-color:#138496}.btn-warning:hover{background-color:#e0a800}.btn-success:hover{background-color:#218838}.btn-danger:hover{background-color:#c82333}.org-badge{background-color:#e3f2fd;border-radius:4px;font-size:12px;padding:4px 8px}.org-badge.all-orgs{background-color:#fff3e0;color:#f57c00}.org-badge.multiple-orgs{background-color:#f3e5f5;color:#7b1fa2}.campaign-details-view{display:flex;flex-direction:column;gap:15px;margin:20px 0}.detail-row{align-items:flex-start;display:flex;gap:10px}.detail-row.full-width{flex-direction:column;gap:10px}.detail-row strong{color:#333;min-width:150px}.detail-row span{color:#666}.org-list{margin-top:5px}.org-list,.selected-organizations{display:flex;flex-wrap:wrap;gap:8px}.selected-organizations{margin-top:10px}.selected-org-tag{align-items:center;background-color:#e3f2fd;border-radius:4px;color:#1976d2;display:inline-flex;font-size:13px;gap:5px;padding:6px 10px}.remove-org-btn{align-items:center;background:none;border:none;color:#1976d2;cursor:pointer;display:flex;font-size:18px;height:18px;justify-content:center;line-height:1;padding:0;width:18px}.remove-org-btn:hover{color:#1565c0;font-weight:700}@media (max-width:768px){.coins-page{padding:1rem}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.accounting-page{padding:20px}.accounting-page h1{word-wrap:break-word;color:#333;-webkit-hyphens:auto;hyphens:auto;margin-bottom:30px;overflow-wrap:break-word}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.summary-card{align-items:center;display:flex;gap:20px;padding:25px;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.summary-card.revenue{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.summary-card.coins{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.summary-card.orgs{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.summary-card.active-orgs{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.card-icon{font-size:48px;line-height:1}.card-content h3{font-size:14px;font-weight:500;margin:0 0 8px;opacity:.9}.card-value{font-size:28px;font-weight:700;margin:0}.filters-section{padding:25px}.filters-section h2{color:#333;margin-bottom:20px;margin-top:0}.filters{gap:20px}.filter-group input,.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}@media (max-width:768px){.accounting-page{padding:1rem}.accounting-page .page-header{align-items:stretch;flex-direction:column}.accounting-page .page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.summary-cards{grid-template-columns:1fr}.filters{flex-direction:column}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.page-header h1{font-size:clamp(1.2rem,2.5vw,1.8rem)}.date-input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;max-width:200px;padding:10px 15px;transition:border-color .2s,box-shadow .2s}.date-input:focus,.date-input:hover{border-color:#3498db}.date-input:focus{box-shadow:0 0 0 3px #3498db1a;outline:none}table{min-width:1000px}@media (max-width:768px){.analytics-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column;gap:1rem}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.filters-row{grid-template-columns:1fr}.date-range-row{align-items:stretch}.date-range-inputs,.date-range-row{flex-direction:column}}.manage-attempts-page{padding:20px}.actions-bar{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.selection-info{color:#666;font-size:14px;font-weight:500}.count-info{align-items:center;display:flex;gap:10px}.total-count{color:#333;font-weight:600}.selected-count{color:#1976d2;font-weight:500}.action-buttons{gap:12px}.action-button-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:100%}@media (min-width:768px){.action-button-row{grid-template-columns:repeat(3,1fr)}}@media (min-width:768px) and (max-width:1199px){.action-button-row{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.action-button-row{grid-template-columns:1fr}}.btn-primary:disabled{background-color:#ccc}.btn-success{transition:background-color .2s}.btn-success:disabled{background-color:#ccc}.btn-info{background-color:#0288d1;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s}.btn-info:hover:not(:disabled){background-color:#0277bd}.btn-info:disabled{background-color:#ccc;cursor:not-allowed}.btn-danger{transition:background-color .2s}.btn-danger:disabled{background-color:#ccc}.btn-warning{padding:10px 20px;transition:background-color .2s}.btn-warning:disabled{background-color:#ccc}.btn-secondary{background-color:#f5f5f5}.btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.btn-secondary:disabled{background-color:#f5f5f5;color:#999}.attempts-table-container{margin-bottom:20px;overflow-x:auto}.sortable-header{position:relative;-webkit-user-select:none;user-select:none}.sortable-header:hover{background-color:#e8e8e8}.sort-icon{font-weight:700;margin-left:5px}table thead th .sort-icon{color:#fff!important}table th:first-child{width:40px}.exam-info,.student-info{display:flex;flex-direction:column;gap:4px}.exam-info strong,.student-info strong{color:#333;font-size:14px}.student-email{color:#666;font-size:12px}.batch-names{gap:4px}.batch-tag{background-color:#e3f2fd;border-radius:10px;font-size:11px;padding:2px 8px}.status-badge.submitted{background-color:#e8f5e9;color:#388e3c}.status-badge.not-submitted{background-color:#ffebee;color:#c62828}.status-badge.status-pending{background-color:#fff3e0;color:#f57c00}.status-badge.status-completed{background-color:#e8f5e9;color:#388e3c}.status-badge.status-reset{background-color:#f3e5f5;color:#7b1fa2}.pagination{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:15px;justify-content:center;padding:20px}.page-info{color:#666;font-size:14px}.loading,.no-attempts{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#666;padding:60px 20px;text-align:center}.modal-overlay{overflow-y:auto;padding:20px}.modal-content.large-modal{max-height:95vh;max-width:90%}.modal-header{flex-shrink:0}.attempt-details-body{max-height:calc(95vh - 200px)}.modal-body p{color:#333;font-size:14px;margin:0 0 15px}.modal-body ul{margin:10px 0;padding-left:20px}.modal-body li{color:#333;font-size:14px;margin:5px 0}.warning-text{background-color:#ffebee;border-left:4px solid #d32f2f;color:#c62828!important}.info-text,.warning-text{font-size:13px!important;margin:15px 0!important}.info-text{background-color:#e3f2fd;border-left:4px solid #1976d2;border-radius:4px;color:#1565c0!important;padding:12px}.modal-footer{flex-shrink:0}.attempt-info-header{background:#f5f5f5;border-radius:8px;margin-bottom:20px;padding:15px}.info-row{font-size:14px;margin:8px 0}.info-row strong{color:#333;margin-right:8px}.info-row.warning{background-color:#fff3e0;border-left:3px solid #f57c00;border-radius:4px;padding:8px}.questions-container{margin-top:20px}.section-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:30px;padding:20px}.section-header{border-bottom:2px solid #e0e0e0}.section-header h3{color:#1976d2;font-size:18px;margin:0 0 10px}.section-header p{color:#666;font-size:14px;margin:0}.questions-list{gap:20px}.question-card{border:1px solid #e0e0e0;border-radius:8px;transition:all .2s}.question-card.question-attempted{background-color:#e3f2fd;border-left:4px solid #1976d2}.question-card.question-unattempted{background-color:#f5f5f5;border-left:4px solid #999;opacity:.7}.question-header{flex-wrap:wrap;gap:10px}.question-meta{flex-wrap:wrap}.question-type{background-color:#e0e0e0;color:#666;font-size:11px;padding:4px 8px}.question-score{color:#333;font-size:14px}.auto-graded{color:#388e3c;font-size:12px;font-weight:400}.question-text{font-size:15px}.answer-section{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:15px}.answer-section strong{color:#333;display:block;margin-bottom:10px}.answer-options{display:flex;flex-direction:column;gap:8px}.option{background:#fff;border:2px solid #e0e0e0;border-radius:4px;padding:10px;position:relative}.option.selected{background-color:#e3f2fd;border-color:#1976d2}.option.correct{border-color:#388e3c}.option.selected.correct{background-color:#c8e6c9}.option-marker{color:#1976d2;font-weight:700;position:absolute;right:10px}.descriptive-answer,.numeric-answer{background:#f5f5f5;border-radius:4px;margin-top:10px;padding:10px}.code-answer{margin-top:10px}.no-answer{color:#999}.correct-answer-section{background:#f1f8e9;border:1px solid #c8e6c9;border-radius:4px;margin-top:15px;padding:15px}.correct-answer-section strong{color:#2e7d32;display:block;margin-bottom:10px}.correct-answer{color:#1b5e20;font-family:monospace;font-size:13px}@media (max-width:768px){.filters-section{grid-template-columns:1fr}.actions-bar{align-items:stretch}.action-buttons,.actions-bar{flex-direction:column}.action-buttons button{width:100%}.attempts-table-container{overflow-x:scroll}.modal-content.large-modal{max-width:95%}.modal-overlay{align-items:flex-start;padding-bottom:20px;padding-top:80px}.modal-content{margin-top:0;max-height:calc(100vh - 100px);overflow-y:auto}}.compose-btn{max-width:200px;min-width:120px;width:auto}.filter-search-box{flex:0 1 auto;min-width:200px}.filter-search-box .search-box-container{margin:0}.read-status-info{color:#666;font-size:13px;margin-top:5px}.recipient-status-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;font-size:11px;font-weight:500;margin-left:8px;padding:2px 8px}.recipient-group-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.recipient-group-header h4{margin:0}.compose-message{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px}.compose-message h2{color:#333;margin-bottom:20px;margin-top:0}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;width:100%}.form-group select[multiple]{min-height:150px}.recipient-selector{display:flex;flex-direction:column;gap:10px}.select-all-buttons{display:flex;flex-wrap:wrap;gap:10px}.select-all-buttons .btn-sm{font-size:13px;padding:6px 12px}.recipients-select{width:100%}.recipient-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.recipient-filters .searchable-select{flex:0 1 auto;min-width:200px}.filter-row{display:flex;flex-wrap:wrap;gap:10px}.filter-select{flex:1 1;padding:8px}.recipients-checkbox-list{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;max-height:400px;overflow-y:auto;padding:15px}.recipient-group{margin-bottom:20px}.recipient-group:last-child{margin-bottom:0}.recipient-group h4{border-bottom:1px solid #ddd;color:#333;font-size:14px;font-weight:600;margin:0 0 10px;padding-bottom:5px;text-transform:uppercase}.checkbox-label{background:#fff;border-radius:4px;margin:4px 0;padding:8px;transition:background-color .2s}.checkbox-label:hover{background-color:#f0f0f0}.checkbox-label input[type=checkbox]{height:18px;margin-right:10px;width:18px}.checkbox-label span{flex:1 1;font-size:14px}.empty-state{color:#999;font-style:italic;padding:40px}.form-actions{margin-top:20px}.course-card{position:relative}.course-card.new-course{background:linear-gradient(135deg,#fff,#f8f9ff);border:2px solid #667eea;box-shadow:0 4px 12px #667eea26;overflow:hidden;position:relative}.course-card.new-course:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.course-card.new-course:hover{border-color:#764ba2;box-shadow:0 6px 16px #667eea40;transform:translateY(-3px)}.course-card.new-course .course-header h3{color:#667eea;font-weight:600}.course-card.new-course .new-course-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 2px 4px #667eea4d;color:#fff;font-size:10px;font-weight:600;letter-spacing:.5px;padding:4px 10px;position:absolute;right:12px;text-transform:uppercase;top:12px}.course-viewer{display:flex;height:calc(100vh - 60px)}.course-sidebar{background-color:#f8f9fa;border-right:1px solid #dee2e6;overflow-y:auto;padding:1rem;transition:transform .3s ease-in-out;width:300px}.course-content{background-color:#fff;box-sizing:border-box;flex:1 1;max-width:100%;overflow-x:hidden;overflow-y:auto;position:relative;width:100%}.course-content .topic-page{margin:0;max-width:100%;padding:0;width:100%}.course-breadcrumb-container{align-items:center;background-color:#fff!important;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;margin:0;padding:0;position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:100!important}.course-breadcrumb,.course-breadcrumb-container{box-sizing:border-box;display:flex!important;width:100%}.mobile-sidebar-toggle-floating{display:none}@media (max-width:768px){.mobile-sidebar-toggle-floating{display:flex!important;position:fixed!important;z-index:1003!important}.course-sidebar.mobile-visible+* .mobile-sidebar-toggle-floating,.course-sidebar.mobile-visible~.mobile-sidebar-toggle-floating{left:280px!important}}.course-breadcrumb{flex:1 1}.course-viewer .mobile-overlay{background-color:#00000080;bottom:0;display:none;left:0;pointer-events:none;position:fixed;right:0;transition:opacity .3s ease-in-out;z-index:1001}.course-viewer .mobile-overlay.mobile-visible{pointer-events:auto}@media (max-width:768px){.course-viewer{flex-direction:column;height:auto;min-height:calc(100vh - 60px)}.mobile-sidebar-toggle-floating{display:flex!important}.course-breadcrumb-container{align-items:stretch!important;background-color:#f8f9fa!important;border-bottom:1px solid #dee2e6!important;height:auto!important;left:0!important;margin:0!important;padding:0!important;position:fixed!important;right:0!important;width:100%!important;z-index:1001!important}.course-content{margin-top:0}.course-breadcrumb{align-items:center;display:flex;flex:1 1;position:relative}.course-sidebar{box-shadow:2px 0 8px #00000026;left:0;max-width:85vw;position:fixed;transform:translateX(-100%);width:280px;z-index:1002}.course-viewer .course-sidebar.mobile-visible{transform:translateX(0)}.course-viewer .mobile-overlay.mobile-visible{display:block}.course-content{box-sizing:border-box;max-width:100vw;min-height:calc(100vh - 60px);overflow-x:hidden;padding-top:0;width:100%}.course-breadcrumb-container{background-color:#fff!important;position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:100!important}.course-breadcrumb,.course-breadcrumb-container{display:flex!important;opacity:1!important;visibility:visible!important}.course-breadcrumb{width:100%!important}.course-content{margin-top:3.5rem!important;padding-top:0!important}.course-content>div:not(.course-breadcrumb-container){padding:1rem!important}.course-content>.course-breadcrumb-container~*{margin-top:0!important}}@media (min-width:769px){.course-viewer{flex-direction:row!important;height:calc(100vh - 60px)!important}.course-sidebar{box-shadow:none!important;height:auto!important;max-width:none!important;position:relative!important;transform:translateX(0)!important;width:300px!important}.mobile-sidebar-toggle-floating{display:none!important}.course-breadcrumb-container{background-color:initial!important;border-bottom:none!important;display:flex!important;left:auto!important;position:relative!important;right:auto!important;top:auto!important;width:auto!important;z-index:auto!important}.course-content,.course-content>.course-breadcrumb-container~*{margin-top:0!important}.course-viewer .mobile-overlay{display:none!important}.course-content{min-height:auto!important;width:auto!important}.course-content,.course-content>div{box-sizing:border-box!important;max-width:100%!important;overflow-x:hidden!important}.course-content>div{padding:2rem!important}}.course-topics-page{margin:0 auto;max-width:1200px;padding:2rem}.course-topics-page .page-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.course-topics-page .page-header h1{color:#1f2937;flex:1 1;font-size:1.75rem;margin:0}.topics-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.no-topics{color:#6b7280;padding:3rem;text-align:center}.topics-tree{display:flex;flex-direction:column;gap:.5rem}.drag-drop-hint{background-color:#f0f4ff;border-radius:6px;color:#667eea;font-size:.875rem}.drag-drop-hint,.topic-item{margin-bottom:1rem;padding:.75rem}.topic-item{background-color:#fff;border:2px solid #e5e7eb;border-left:4px solid #667eea;border-radius:6px;transition:all .2s}.topic-item:hover{border-color:#667eea;box-shadow:0 2px 4px #667eea1a}.topic-item.dragging{cursor:grabbing;opacity:.5}.topic-item.drag-over{background-color:#f0f4ff;border-color:#667eea;border-style:dashed}.topic-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.topic-main-content{align-items:center;display:flex;flex:1 1;gap:.75rem}.topic-expand-toggle{align-items:center;border-radius:4px;cursor:pointer;display:flex;justify-content:center;min-width:1.5rem;padding:.25rem;text-align:center;transition:background-color .2s;-webkit-user-select:none;user-select:none}.topic-expand-toggle:hover{background-color:#f0f4ff}.topic-expand-toggle span{display:inline-block;transition:transform .2s}.arrow-buttons{display:flex;gap:.25rem;margin-right:.5rem}.btn-arrow{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:2rem;justify-content:center;padding:0;transition:all .2s;-webkit-user-select:none;user-select:none;width:2rem}.btn-arrow:hover:not(:disabled){background-color:#f3f4f6;border-color:#667eea;color:#667eea;transform:scale(1.1)}.btn-arrow:active:not(:disabled){transform:scale(.95)}.btn-arrow:disabled{cursor:not-allowed;opacity:.5}.btn-right{color:#10b981}.btn-right:hover:not(:disabled){background-color:#f0fdf4;border-color:#10b981;color:#10b981}.btn-left{color:#f59e0b}.btn-left:hover:not(:disabled){background-color:#fffbeb;border-color:#f59e0b;color:#f59e0b}.btn-up{color:#3b82f6}.btn-up:hover:not(:disabled){background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.btn-down{color:#8b5cf6}.btn-down:hover:not(:disabled){background-color:#f5f3ff;border-color:#8b5cf6;color:#8b5cf6}.topic-index{background-color:#667eea;border-radius:4px;color:#fff;font-size:.75rem;font-weight:600;min-width:3rem;padding:.25rem .5rem;text-align:center}.topic-content{flex:1 1}.topic-title{color:#1f2937;font-size:1rem;font-weight:600}.topic-description{color:#6b7280;font-size:.875rem;margin-top:.25rem}.topic-meta{color:#9ca3af;font-size:.75rem;margin-top:.5rem}.topic-actions{display:flex;gap:.5rem}.subtopics-container{border-left:3px solid #667eea;margin-left:.5rem;margin-top:.75rem;padding-left:1.5rem;transition:all .3s ease}.subtopics-container.expanded{max-height:none;opacity:1}.subtopics-container.collapsed{opacity:.6}.subtopic-item{background-color:#f9fafb;border:1px solid #d1d5db;border-left:4px solid #10b981;border-radius:6px;cursor:move;margin-bottom:.5rem;padding:.75rem;position:relative;transition:all .2s}.subtopic-item:before{background-color:#667eea;content:"";height:2px;left:-1.5rem;position:absolute;top:50%;width:1rem}.subtopic-item:hover{background-color:#f0fdf4;border-color:#10b981;box-shadow:0 2px 4px #10b9811a}.subtopic-item .topic-index{background-color:#10b981}.btn-sm{padding:.375rem .75rem}.modal-content h2{color:#1f2937}.modal-content label{color:#374151;display:block;font-weight:500;margin-bottom:.25rem}.modal-content input,.modal-content select,.modal-content textarea{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:.5rem;width:100%}.modal-content input:focus,.modal-content select:focus,.modal-content textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.batch-assignments-page{padding:20px}.batch-assignments-page .page-header{margin-bottom:30px}.batch-assignments-page .page-header h1{word-wrap:break-word;color:#2c3e50;flex:1 1 auto;font-size:clamp(1.2rem,2.5vw,1.75rem);font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.4;margin:0 0 10px;max-width:100%;min-width:0;overflow-wrap:break-word}.assignments-table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto;overflow-y:visible}.assignments-table{min-width:800px;width:100%}.assignments-table tbody tr:hover{background-color:#f9fafb}.no-assignments{color:#6b7280;padding:3rem}.form-select{cursor:pointer;padding:8px 12px}.form-select:focus{border-color:#1976d2;outline:none}@media (max-width:768px){.batch-assignments-page{padding:1rem}.batch-assignments-page .page-header{align-items:stretch;flex-direction:column;gap:1rem}.batch-assignments-page .page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.filters-section{grid-template-columns:1fr}.assignments-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.assignments-table{min-width:800px}}.organization-course-assignments-page{padding:2rem}.filters{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.table-container{box-shadow:0 1px 3px #0000001a}thead{background-color:#f9fafb}th{border-bottom:2px solid #e5e7eb;color:#374151;text-align:left}td,th{font-size:.875rem;padding:.75rem}td{border-bottom:1px solid #e5e7eb}tbody tr:hover{background-color:#f9fafb}.action-buttons{gap:.5rem}.btn-sm{font-size:.875rem;padding:.25rem .75rem}.modal-content{padding:2rem}.modal-content h2{margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:#374151}.form-group input[type=date],.form-group input[type=number],.form-group input[type=text],.form-group select{border:1px solid #d1d5db;border-radius:4px;font-size:.875rem;padding:.5rem;width:100%}.form-group input[type=checkbox]{margin-right:.5rem}.modal-actions{gap:.5rem;margin-top:1.5rem}.btn-danger,.btn-primary,.btn-secondary,.btn-warning{border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.btn-primary{background-color:#3b82f6}.btn-primary:hover{background-color:#2563eb}.btn-primary:disabled{background-color:#9ca3af}.btn-secondary{background-color:#6b7280}.btn-secondary:hover{background-color:#4b5563}.btn-warning{background-color:#f59e0b}.btn-warning:hover{background-color:#d97706}.btn-danger{background-color:#ef4444}.btn-danger:hover{background-color:#dc2626}.loading{color:#6b7280}@media (max-width:768px){.organization-course-assignments-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column;gap:1rem}.page-header h1{font-size:clamp(1rem,4vw,1.25rem);line-height:1.4;width:100%}.filters{grid-template-columns:1fr}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.notification-settings{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.notification-settings-header{border-bottom:2px solid #e0e0e0;margin-bottom:2rem;padding-bottom:1rem}.notification-settings-header h2{color:#1a1a1a;font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.settings-description{font-size:.95rem;margin:0}.notification-category{margin-bottom:2.5rem}.notification-category:last-child{margin-bottom:0}.notification-category h3{border-bottom:1px solid #e0e0e0;color:#2c3e50;font-size:1.25rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.notification-table-container{overflow-x:auto}.notification-table{background:#fff;border-collapse:collapse;width:100%}.notification-table thead{background:#f8f9fa}.notification-table th{border-bottom:2px solid #dee2e6;color:#2c3e50;font-weight:600;padding:1rem;text-align:left}.notification-table th.text-center{text-align:center;width:120px}.notification-table td{border-bottom:1px solid #e9ecef;padding:1rem;vertical-align:middle}.notification-table tbody tr:hover{background:#f8f9fa}.notification-table tbody tr:last-child td{border-bottom:none}.notification-info{display:flex;flex-direction:column;gap:.25rem}.notification-info strong{color:#1a1a1a;font-size:.95rem}.notification-description{color:#666;font-size:.85rem;line-height:1.4}.text-center{text-align:center}.toggle-switch{cursor:pointer}.toggle-slider,.toggle-slider:before{transition:.3s}.toggle-switch input:checked+.toggle-slider{background-color:#667eea}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px #667eea}.toggle-switch input:disabled+.toggle-slider{opacity:.6}.error,.loading{padding:2rem}@media (max-width:768px){.notification-settings{padding:1rem}.notification-table{font-size:.9rem}.notification-table td,.notification-table th{padding:.75rem .5rem}.notification-info strong{font-size:.9rem}.notification-description{font-size:.8rem}}.page-header h1{font-size:2rem}.system-monitoring{margin:0 auto;max-width:1400px;padding:20px}.page-header{padding-bottom:15px}.page-header h1{color:#1976d2;font-size:28px}.header-controls{align-items:center;display:flex;gap:15px}.header-controls label{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px}.refresh-btn{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.refresh-btn:hover{background-color:#1565c0}.health-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.health-card h2{color:#333;font-size:20px;margin:0 0 15px}.health-status{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.status-badge{align-items:center;color:#fff;display:inline-flex;font-size:14px;gap:6px;padding:6px 12px}.status-badge.healthy{background-color:#4caf50}.status-badge.unhealthy{background-color:#ff9800}.status-badge.unreachable{background-color:#f44336}.health-info{color:#666;font-size:14px}.health-error{color:#f44336;font-size:14px}.runtimes-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.section-header{align-items:center;border-bottom:1px solid #e0e0e0;margin-bottom:20px}.section-header h2{color:#333;margin:0}.install-all-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.install-all-btn:hover:not(:disabled){background-color:#45a049}.install-all-btn:disabled{background-color:#ccc;cursor:not-allowed}.runtime-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.runtime-card{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s}.runtime-card:hover{box-shadow:0 4px 8px #0000001a}.runtime-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.runtime-header h3{color:#333;font-size:18px;margin:0 0 5px}.package-name{color:#666;font-family:monospace;font-size:12px}.runtime-details{background:#fff;border-radius:4px;font-size:14px;margin-bottom:15px;padding:10px}.detail-item{color:#555;margin-bottom:8px}.detail-item strong{color:#333;margin-right:8px}.runtime-actions{display:flex;gap:10px;margin-bottom:15px}.install-btn,.recheck-btn,.view-logs-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:14px;padding:8px 16px;transition:background-color .2s}.view-logs-btn{background-color:#2196f3;color:#fff}.view-logs-btn:hover{background-color:#1976d2}.recheck-btn{background-color:#ff9800;color:#fff}.recheck-btn:hover:not(:disabled){background-color:#f57c00}.recheck-btn:disabled{background-color:#ccc;cursor:not-allowed}.install-btn{background-color:#4caf50;color:#fff}.install-btn:hover:not(:disabled){background-color:#45a049}.install-btn:disabled{background-color:#ccc;cursor:not-allowed}.runtime-logs{background:#1e1e1e;border-radius:4px;margin-top:15px;max-height:400px;overflow-y:auto;padding:15px}.runtime-logs h4{color:#fff;font-size:14px;margin:0 0 10px}.runtime-logs pre{word-wrap:break-word;color:#d4d4d4;font-family:Courier New,monospace;font-size:12px;line-height:1.5;margin:0;white-space:pre-wrap}@media (max-width:768px){.runtime-cards{grid-template-columns:1fr}.page-header,.section-header{align-items:flex-start;flex-direction:column;gap:15px}}.mobile-verification-banner{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:20px;padding:12px 16px}.banner-content{align-items:center;display:flex;gap:12px;max-width:100%}.banner-icon{flex-shrink:0;font-size:20px}.banner-text{color:#0369a1;flex:1 1;font-size:14px;line-height:1.5}.banner-link{background:none;border:none;color:#0284c7;cursor:pointer;font-size:14px;font-weight:600;margin-left:4px;padding:0;text-decoration:underline;transition:color .2s}.banner-link:hover{color:#0369a1;text-decoration:none}.banner-close{align-items:center;background:none;border:none;border-radius:4px;color:#0369a1;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;transition:background-color .2s,color .2s;width:24px}.banner-close:hover{background-color:#0369a11a;color:#075985}@media (max-width:768px){.mobile-verification-banner{padding:10px 12px}.banner-content{gap:8px}.banner-icon{font-size:18px}.banner-link,.banner-text{font-size:13px}.banner-link{display:inline-block;margin-top:4px}}.dashboard-home{padding:20px}.dashboard-home h1{color:#333;margin-bottom:30px}.stat-card{gap:15px;padding:20px}.stat-card-coin{background:#fff;color:#333}.stat-card-coin .stat-content h3{color:#666}.stat-card-coin .stat-value{color:#333}.campaign-dismiss-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;line-height:1;margin-left:1rem;transition:background .2s;width:32px}.campaign-dismiss-btn:hover{background:#ffffff4d}.stat-icon{font-size:40px}.stat-content h3{margin:0 0 5px}.confirm-input{border:1px solid #ddd;border-radius:4px;font-size:14px;margin-top:10px;padding:10px;width:100%}.toggle-switch{display:inline-block;height:24px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.4s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#28a745}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 1px #28a745}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(26px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.checkbox-label{align-items:center;cursor:pointer;display:flex;gap:8px}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0;width:auto}.form-help{font-style:italic}.charges-info{color:#666;font-size:.85em;margin-top:2px}.batch-info{color:#555;margin:10px 0}.total-amount-info{background-color:#f0f8ff;border-left:3px solid #007bff;border-radius:4px;font-size:.9em;margin-top:8px;padding:8px}@media (max-width:768px){.batches-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.students-page{padding:20px}.btn-warning{box-sizing:border-box;flex-shrink:0;font-size:.875rem;font-weight:500;height:auto;line-height:1.5;padding:.625rem 1rem;white-space:nowrap}.modal-large{max-width:800px}.modal-close{height:32px;width:32px}.form-group input[type=email],.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-group input[type=email]:disabled,.form-group input[type=text]:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group input[type=checkbox]{margin-right:8px}.tabs button{font-size:14px;padding:10px 20px}.coin-balance-display{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.balance-card{background:#f5f5f5;padding:20px}.balance-card h3{color:#666;font-size:1rem;font-weight:500;margin:0 0 10px}.balance-amount{font-size:2rem}@media (max-width:768px){color:#1976d2;margin:10px 0;.students-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.balance-label{font-size:.85rem}.balance-note{color:#666;font-size:.8rem;font-style:italic;margin-top:10px}.coin-form{margin-top:20px}.form-group textarea{box-sizing:border-box}.form-group input[type=number]{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.coin-history{margin-top:20px}.coin-history .table-container{max-height:400px;overflow-y:auto}.type-student-recharge{background-color:#e3f2fd;color:#1976d2}.type-student-usage{background-color:#fff3e0;color:#e65100}.type-student-admin-credit{background-color:#e8f5e9;color:#2e7d32}.type-student-admin-debit{background-color:#ffebee;color:#c62828}.no-data{padding:20px}@media (max-width:768px){.students-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.invitations-page{padding:20px}.invitations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:20px}.invitation-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;padding:20px;transition:box-shadow .2s}.invitation-card:hover{box-shadow:0 4px 8px #00000026}.invitation-card-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.invitation-card-body{display:flex;flex:1 1;flex-direction:column;gap:12px;margin-bottom:16px}.invitation-info-item{display:flex;flex-direction:column;gap:4px}.invitation-info-item label{color:#666;font-size:12px;font-weight:600;text-transform:uppercase}.invitation-info-item span{color:#333;font-size:14px}.invitation-card-actions{border-top:1px solid #eee;display:flex;flex-direction:column;gap:8px;padding-top:12px}.invitation-card-actions button{width:100%}.type-instructor{background-color:#e3f2fd;color:#1976d2}.type-student_batch{background-color:#e8f5e9;color:#388e3c}.link-cell{align-items:center;display:flex;gap:8px}.link-text{background:#f5f5f5;border-radius:4px;flex:1 1;font-family:monospace;font-size:12px;padding:6px 10px;word-break:break-all}.btn-copy{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px;transition:background .2s}.btn-copy:hover{background:#f0f0f0}.btn-sm{white-space:nowrap}.modal-content{box-sizing:border-box;overflow-x:hidden}.modal-content form{box-sizing:border-box;width:100%}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px;width:100%}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper input{padding-right:2.5rem}.password-toggle{align-items:center;background:none;border:none;color:#7f8c8d;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:.25rem;position:absolute;right:.75rem;transition:color .3s}.password-toggle:hover{color:#667eea}.password-toggle:focus{outline:none}.form-group input.error{border-color:#dc3545}.form-group .error-text{color:#dc3545;font-weight:500}.form-group .error-text,.form-group small{display:block;font-size:12px;margin-top:4px}.form-group small{color:#666}.modal-actions{flex-wrap:wrap}.modal-actions .btn-primary,.modal-actions .btn-secondary{flex-shrink:0;min-width:-webkit-fit-content;min-width:fit-content;white-space:nowrap}.tab{border-bottom:3px solid #0000;font-size:16px;padding:12px 24px}.tab:hover{color:#333}.balance-section,.history-section,.offers-section,.recharge-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px}.campaign-notifications{margin-bottom:2rem}.campaign-banner{align-items:center;animation:slideIn .3s ease-out;background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 4px 12px #f5576c4d;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem 1.5rem}.campaign-content{flex:1 1;flex-direction:column;gap:.25rem}.campaign-details{font-size:.9rem;opacity:.95}.campaign-link{color:#fff;font-weight:600;margin-left:.5rem;text-decoration:underline;transition:opacity .2s}.campaign-link:hover{opacity:.8}.balance-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;padding:40px}.balance-card h2{font-size:24px;margin:0 0 20px;opacity:.9}.balance-amount{font-size:48px;margin:0}.balance-label{font-size:18px;margin:10px 0 0;opacity:.9}.recharge-card h2{color:#333;margin-bottom:20px}.form-group input{max-width:400px;padding:12px}.discount-info{background:#e8f5e9;border-left:4px solid #388e3c;padding:12px}.discount-info p{margin:4px 0}.final-amount{font-size:16px}.available-offers{border-top:1px solid #eee}.available-offers h3{color:#333}.offers-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-bottom:20px}.offer-card{background:#f9f9f9;border:1px solid #ddd;border-radius:8px}.offer-card h4{color:#333;margin:0 0 8px}.offer-card p{font-size:14px;margin:4px 0}.offer-card code{background:#e3f2fd;border-radius:3px;font-family:monospace;padding:2px 6px}.btn-large{padding:14px 32px}.type-badge{border-radius:12px;padding:4px 12px}.type-recharge{background-color:#e8f5e9;color:#388e3c}.type-usage{background-color:#fff3e0;color:#f57c00}.type-admin_credit{background-color:#e3f2fd;color:#1976d2}.type-refund{background-color:#f3e5f5;color:#7b1fa2}.positive{color:#388e3c}.offers-section h2{color:#333;margin-bottom:20px;margin-top:0}.offer-card-large{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border:2px solid #e0e0e0;border-radius:12px;padding:20px;transition:transform .2s,box-shadow .2s}.offer-card-large:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.offer-header{margin-bottom:15px}.offer-header h3{color:#333;font-size:1.3rem}.offer-badge{background:#4caf50;color:#fff;font-size:12px;font-weight:600}.offer-body{gap:15px}.offer-body,.offer-code-section{display:flex;flex-direction:column}.offer-code-section{gap:8px}.offer-code-section label{font-size:14px;font-weight:600}.offer-code{background:#fff;border:2px dashed #1976d2;border-radius:6px;font-family:monospace;font-size:18px;font-weight:700;padding:10px 15px}.offer-details{display:flex;flex-direction:column;gap:8px}.offer-details p{color:#555;font-size:14px;margin:0}.offer-details strong{color:#333}.no-offers{padding:60px 20px}.no-offers p{font-size:16px}.badge{background:#f44336;border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:600;margin-left:8px;padding:2px 8px}.success-notification{align-items:center;animation:slideIn .3s ease-out;background:linear-gradient(135deg,#4caf50,#45a049);border-radius:8px;box-shadow:0 4px 12px #4caf504d;color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.success-message{flex:1 1;font-size:16px;line-height:1.6}.success-message div{margin:4px 0}.close-notification{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;line-height:1;margin-left:16px;padding:0;transition:background .2s;width:32px}.close-notification:hover{background:#ffffff4d}@media (max-width:768px){.coins-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.instructors-page{padding:20px}.status-badge.active{background-color:#e8f5e9;color:#388e3c}.status-badge.inactive{background-color:#ffebee;color:#c62828}.btn-secondary,.btn-success{flex-shrink:0}.btn-success{box-sizing:border-box;font-size:.875rem;height:auto;line-height:1.5;padding:.625rem 1rem;white-space:nowrap}.btn-danger{flex-shrink:0}@media (max-width:768px){.instructors-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:1.5rem;line-height:1.3}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.modal-content{display:flex;flex-direction:column;max-width:800px}.modal-close:hover{background:#f5f5f5}.modal-body{flex:1 1;overflow-y:auto}.settings-content{width:100%}.settings-section h3{font-size:18px}.form-input,.form-select{border-radius:6px;box-sizing:border-box}.info-box{background:#f5f5f5;border-radius:6px}@media (max-width:768px){border-left:4px solid #1976d2;.modal-overlay{align-items:flex-start;padding-bottom:20px;padding-top:80px}.modal-content{margin-top:0;max-height:calc(100vh - 100px);overflow-y:auto}}.info-box p{color:#666}.btn-primary:disabled{background-color:#9e9e9e}.btn-secondary{border-radius:6px}.btn-secondary:disabled{background-color:#9e9e9e}.error-message{background:#fff;padding:30px}.error-message h3{color:#d32f2f;margin-bottom:10px}.error-message p{color:#666;margin-bottom:10px}.error{color:#d32f2f;font-size:16px}.exams-page h1{color:#333;margin-bottom:30px}.status-unpublished{background:#e0e0e0;color:#666}.status-published{background:#e3f2fd}.status-active{background:#e8f5e9;color:#2e7d32}.status-completed{background:#f3e5f5}.status-terminated{background:#ffebee;color:#c62828}.instructor-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:11px;font-weight:500;padding:4px 10px;white-space:nowrap}.exam-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.exam-actions{gap:8px}.modal-content{padding:24px}.form-group{margin-bottom:16px}.form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.modal-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.modal-actions .btn-secondary{background-color:#6c757d;color:#fff}.modal-actions .btn-secondary:hover{background-color:#5a6268}.modal-actions .btn-primary{background-color:#1976d2;color:#fff}.modal-actions .btn-primary:hover:not(:disabled){background-color:#1565c0}.modal-actions .btn-primary:disabled{cursor:not-allowed;opacity:.6}.evaluators-page{padding:20px}.status-badge.default{background-color:#4caf50;color:#fff}.status-badge.assigned{background-color:#2196f3;color:#fff}.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-group input[type=text]:disabled{background-color:#f5f5f5;color:#666;cursor:not-allowed}.warning-text{background-color:#fff3e0;border-left:4px solid #f57c00;border-radius:4px;display:block;font-size:13px;font-weight:400;padding:12px}@media (max-width:768px){.evaluators-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:1.5rem;line-height:1.3}.filters{flex-direction:column}.filters>*{max-width:none}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.analytics-page{padding:20px}.page-header{margin-bottom:25px}.filters-section{margin-bottom:30px}.filters-row{grid-gap:20px;align-items:end;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filter-group label{color:#555;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.filter-group .searchable-select-container .searchable-select{width:100%}.time-range-select{background:#fff;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;cursor:pointer;font-size:14px;padding:10px 15px;transition:border-color .2s,box-shadow .2s;width:100%}.time-range-select:hover{border-color:#3498db}.time-range-select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.date-range-row{align-items:center;border-top:1px solid #eee;display:flex;gap:15px;margin-top:20px;padding-top:20px}.date-range-row label{color:#555;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.date-range-inputs{align-items:center;display:flex;flex:1 1;gap:12px}.date-range-inputs .date-input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;max-width:200px;padding:10px 15px;transition:border-color .2s,box-shadow .2s}.date-range-inputs .date-input:hover{border-color:#3498db}.date-range-inputs .date-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.date-separator{color:#666;font-size:14px;font-weight:500;white-space:nowrap}.stats-grid{grid-gap:20px;gap:20px;margin-bottom:30px}.stat-card{gap:20px;padding:25px}.stat-icon{font-size:48px;line-height:1}.stat-content h3{color:#666;font-size:14px;font-weight:500;margin:0 0 8px}.stat-value{font-size:28px}.charts-section{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr}.chart-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:25px}.chart-card h2{color:#333;margin-bottom:20px;margin-top:0}.chart-card .table-container{background:#0000;border-radius:0;box-shadow:none;overflow-x:auto}.analytics-page .chart-card .table-container{overflow-x:auto;width:100%}.analytics-page .chart-card .table-container table{border-collapse:collapse;table-layout:fixed;width:100%}.analytics-page .chart-card .table-container table td:first-child,.analytics-page .chart-card .table-container table th:first-child{word-wrap:break-word;overflow-wrap:break-word;width:50%}.analytics-page .chart-card .table-container table td:nth-child(2),.analytics-page .chart-card .table-container table td:nth-child(3),.analytics-page .chart-card .table-container table th:nth-child(2),.analytics-page .chart-card .table-container table th:nth-child(3){text-align:center;width:15%}.analytics-page .chart-card .table-container table td:nth-child(4),.analytics-page .chart-card .table-container table th:nth-child(4){text-align:center;width:20%}.no-data{font-style:italic}@media (max-width:768px){.analytics-page{padding:15px}.page-header h1{font-size:24px}.filters-section{padding:15px}.filters-row{gap:15px;grid-template-columns:1fr}.date-range-row{align-items:flex-start;flex-direction:column;gap:10px}.date-range-inputs{align-items:stretch;flex-direction:column;width:100%}.date-range-inputs .date-input{max-width:100%}.date-separator{display:none}}@media (min-width:769px) and (max-width:1024px){.filters-row{grid-template-columns:repeat(2,1fr)}}.code-editor-container{display:flex;flex-direction:column;gap:1rem}.editor-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.editor-header h3{color:#333;font-size:1.5rem;margin:0}.btn,.editor-actions{display:flex;gap:.5rem}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:600;padding:.6rem 1.2rem;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-execute{background:#4ecdc4;color:#fff}.btn-execute:hover:not(:disabled){background:#45b8b0;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.monaco-editor-wrapper{border:2px solid #ddd;border-radius:8px;min-height:400px;overflow:hidden;position:relative}.monaco-editor-wrapper:focus-within{border-color:#667eea}.editor-hint-controls{align-items:center;display:flex;gap:.5rem;position:absolute;right:10px;top:10px;z-index:10}.hint-icon-btn,.hint-refresh-btn{align-items:center;background:#fffffff2;border:2px solid #ffe66d;border-radius:50%;box-shadow:0 2px 8px #00000026;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;transition:all .2s;width:40px;z-index:11}.hint-icon-btn:hover,.hint-refresh-btn:hover:not(:disabled){background:#ffe66d;box-shadow:0 4px 12px #ffe66d66;transform:scale(1.1)}.hint-refresh-btn:disabled{cursor:not-allowed;opacity:.5}.hint-popup{animation:slideIn .3s ease-out;background:#fff;border:2px solid #ffe66d;border-radius:12px;box-shadow:0 8px 24px #0003;display:flex;flex-direction:column;max-height:400px;max-width:calc(100% - 20px);position:absolute;right:10px;top:60px;width:350px;z-index:12}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.hint-popup-header{background:linear-gradient(135deg,#ffe66d,#ffd93d);border-radius:10px 10px 0 0;font-size:.95rem;font-weight:600;justify-content:space-between;padding:.8rem 1rem}.hint-popup-close,.hint-popup-header{align-items:center;color:#333;display:flex}.hint-popup-close{background:#0000001a;border:none;border-radius:50%;cursor:pointer;font-size:1.5rem;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:24px}.hint-popup-close:hover{background:#0003;transform:scale(1.1)}.hint-popup-content{color:#555;font-size:.9rem;line-height:1.8;max-height:320px;overflow-y:auto;padding:1rem}.hint-popup-content::-webkit-scrollbar{width:6px}.hint-popup-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.hint-popup-content::-webkit-scrollbar-thumb{background:#ffe66d;border-radius:3px}.hint-popup-content::-webkit-scrollbar-thumb:hover{background:#ffd93d}.hint-empty,.hint-loading{color:#999;font-style:italic;padding:1rem;text-align:center}.hint-bullet-point{margin-bottom:.5rem;padding-left:.5rem}.hint-bullet-point:last-child{margin-bottom:0}.output-container{background:#1e1e1e;border-radius:8px;color:#d4d4d4;padding:1rem}.output-success-container{background:#0000;padding:0}.output-header{color:#4ecdc4;font-size:.9rem;font-weight:600;letter-spacing:1px;margin-bottom:.5rem;text-transform:uppercase}.success-message-dismissible{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#4ecdc4,#44a08d);border-radius:8px;box-shadow:0 4px 12px #4ecdc44d;color:#fff;display:flex;gap:.75rem;padding:1rem 1.5rem}.success-icon{flex-shrink:0;font-size:1.5rem;font-weight:700}.success-text{flex:1 1;font-size:1rem;font-weight:600}.success-close{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:28px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:28px}.success-close:hover{background:#ffffff4d;transform:scale(1.1)}.output-error{color:#ff6b6b!important}.output-content{word-wrap:break-word;color:#d4d4d4;font-family:Courier New,monospace;font-size:.9rem;margin:0;white-space:pre-wrap}@media (max-width:768px){.editor-header{align-items:flex-start;flex-direction:column}.editor-actions{width:100%}.btn{flex:1 1;justify-content:center}.hint-popup{left:10px;max-width:none;right:10px;width:calc(100% - 20px)}.editor-hint-controls{right:8px;top:8px}.hint-icon-btn,.hint-refresh-btn{font-size:1rem;height:36px;width:36px}.hint-popup{top:50px}}.read-only-line{background-color:#f5f5f5!important;cursor:not-allowed!important;opacity:.7}.read-only-line:hover{background-color:#f0f0f0!important}.read-only-glyph{background-color:#fcc!important;width:4px!important}.media-player{background:#f5f5f5;border-radius:8px;margin:1rem 0;padding:1rem}.media-title{color:#333;font-weight:600;margin-bottom:.5rem}.video-element{background:#000;border-radius:4px;max-width:800px;width:100%}.media-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.control-btn{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.2rem;padding:.5rem 1rem;transition:background-color .3s}.control-btn:hover{background:#1565c0}.time-controls{align-items:center;display:flex;flex:1 1;gap:.5rem;min-width:200px}.time-display{color:#666;font-size:.9rem;min-width:45px}.seek-slider{-webkit-appearance:none;background:#ddd;border-radius:3px;flex:1 1;height:6px;outline:none}.seek-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1976d2;border-radius:50%;cursor:pointer;height:16px;width:16px}.seek-slider::-moz-range-thumb{background:#1976d2;border:none;border-radius:50%;cursor:pointer;height:16px;width:16px}.volume-controls{align-items:center;display:flex;gap:.5rem}.volume-slider{-webkit-appearance:none;background:#ddd;border-radius:2px;height:4px;outline:none;width:80px}.volume-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1976d2;border-radius:50%;cursor:pointer;height:12px;width:12px}.volume-slider::-moz-range-thumb{background:#1976d2;border:none;border-radius:50%;cursor:pointer;height:12px;width:12px}@media (max-width:768px){.media-controls{align-items:stretch;flex-direction:column}.time-controls{width:100%}}.pdf-viewer{background:#f5f5f5;border-radius:8px;margin:1rem 0;padding:1rem}.pdf-title{color:#333;font-weight:600;margin-bottom:.5rem}.pdf-container{background:#fff;border:1px solid #ddd;border-radius:4px;min-height:600px;overflow:hidden;position:relative;width:100%}.pdf-iframe{border:none;height:600px;width:100%}.pdf-loading{color:#666;font-size:1.1rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.pdf-error{color:#d32f2f;padding:2rem;text-align:center}.download-link{padding:.5rem 1rem}@media (max-width:768px){.pdf-iframe{height:400px}}.document-viewer{background:#f5f5f5;border-radius:8px;margin:1rem 0;padding:1rem}.document-title{color:#333;font-weight:600;margin-bottom:.5rem}.document-container{background:#fff;border:1px solid #ddd;border-radius:4px;min-height:600px;overflow:hidden;width:100%}.document-iframe{border:none;height:600px;width:100%}.document-download{color:#666;padding:2rem;text-align:center}.download-link{background:#1976d2;color:#fff;margin-top:1rem;padding:.75rem 1.5rem}.download-link:hover{background:#1565c0}@media (max-width:768px){.document-iframe{height:400px}}.attachment-preview{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;box-sizing:border-box;margin:1rem 0;max-width:100%;overflow:hidden;padding:1rem;width:100%}.attachment-label{color:#333;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.youtube-preview{text-align:center}.youtube-embed{height:0;margin-bottom:.5rem;max-width:100%;overflow:hidden;padding-bottom:56.25%;position:relative}.youtube-embed iframe{height:100%;left:0;position:absolute;top:0;width:100%}.youtube-link{color:#1976d2;display:inline-block;font-size:.9rem;margin-top:.5rem;text-decoration:none}.youtube-link:hover{text-decoration:underline}.image-preview{text-align:center}.attachment-image{border-radius:4px;box-shadow:0 2px 4px #0000001a;display:block;height:auto;margin:0 auto;max-height:500px;max-width:100%;width:auto}.audio-preview,.video-preview{text-align:center}.attachment-audio,.attachment-video{display:block;margin:.5rem auto;max-width:600px;width:100%}.audio-filename,.video-filename{color:#666;font-size:.9rem;margin-top:.5rem}.file-preview{text-align:center}.file-link{background-color:#1976d2;border-radius:4px;color:#fff;display:inline-block;margin:.5rem 0;padding:.5rem 1rem;text-decoration:none;transition:background-color .3s}.file-link:hover{background-color:#1565c0}.file-size{color:#666;font-size:.85rem;margin-top:.25rem}@media (max-width:768px){.attachment-preview{margin:.75rem 0;padding:.75rem}.attachment-image{max-height:300px}.attachment-audio,.attachment-video,.youtube-embed{max-width:100%}}.evaluation-page{margin:0 auto;max-width:1400px;padding:20px}.evaluation-header{align-items:stretch;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;margin-bottom:30px;overflow:hidden;padding:0}.header-info{border-right:1px solid #e0e0e0;display:flex;flex:1 1;flex-direction:column;padding:20px}.header-info h1{color:#333;font-size:24px;margin:0 0 15px}.submission-info{display:flex;flex:1 1;flex-direction:column;gap:10px}.submission-info p{word-wrap:break-word;color:#333;font-size:15px;line-height:1.6;margin:0}.submission-info p strong{color:#1976d2;display:inline-block;font-weight:600;min-width:100px}.tab-switching-warning{background:#fff3cd;border:1px solid #ffc107;margin-top:10px;padding:10px}.tab-switching-warning p{color:#856404;margin:5px 0}.tab-switching-stats{background:#fff;border:1px solid #ffc107;border-radius:4px;margin:10px 0;padding:8px}.tab-switching-stats p{color:#856404;font-size:14px;margin:5px 0}.header-actions{align-items:stretch;flex:1 1;flex-direction:column;gap:12px;justify-content:flex-start;padding:20px}.question-filter-section{margin-bottom:8px;width:100%}.button-row{align-items:stretch;display:flex;gap:12px;width:100%}.button-row-actions,.button-row-save,.button-row-save button{width:100%}.button-row-actions button{flex:1 1;min-width:0}.header-actions button{align-items:center;border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;height:42px;justify-content:center;padding:10px 24px;transition:all .2s ease;white-space:nowrap}.header-actions .btn-primary{background:#1976d2;border:1px solid #1976d2;color:#fff}.header-actions .btn-primary:hover:not(:disabled){background:#1565c0;border-color:#1565c0;box-shadow:0 2px 4px #1976d24d;transform:translateY(-1px)}.header-actions .btn-primary:disabled{background:#ccc;border-color:#ccc;box-shadow:none;color:#666;cursor:not-allowed;transform:none}.header-actions .btn-secondary{background:#f5f5f5;border:1px solid #ddd;color:#333}.header-actions .btn-secondary:hover:not(:disabled){background:#e0e0e0;border-color:#bbb;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.header-actions .btn-secondary:disabled{background:#f5f5f5;border-color:#ddd;box-shadow:none;color:#999;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.evaluation-header{flex-direction:column;gap:0}.header-info{border-bottom:1px solid #e0e0e0;border-right:none;padding:15px}.header-info h1{font-size:20px}.submission-info p{font-size:14px}.submission-info p strong{display:inline-block;min-width:80px}.header-actions{padding:15px;width:100%}.button-row{flex-direction:column;width:100%}.button-row-actions button,.button-row-save button{max-width:100%;min-width:auto;width:100%}.header-actions .score-summary,.header-actions button{font-size:13px;height:40px;padding:10px 16px}.score-summary{margin-bottom:10px;text-align:center;width:100%}}.score-summary{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:600;height:42px;justify-content:center;padding:10px 20px}.evaluation-questions,.score-summary{box-sizing:border-box;display:flex;width:100%}.evaluation-questions{align-items:stretch;flex-direction:column;gap:30px;max-width:100%}.evaluation-questions>*{flex-shrink:0;max-width:100%;width:100%}.evaluation-section{background:#f9f9f9;border:1px solid #e0e0e0;display:flex;margin-bottom:30px;padding:25px}.evaluation-section,.section-header{box-sizing:border-box;flex-direction:column;max-width:100%;width:100%}.section-header{border-bottom:2px solid #1976d2;margin-bottom:25px;padding-bottom:15px}.section-header>*{box-sizing:border-box;display:block;max-width:100%;width:100%}.section-header h2{color:#1976d2;font-size:22px;font-weight:600;margin:0 0 10px}.section-description{word-wrap:break-word;font-size:15px;line-height:1.7;margin:12px 0 20px}.section-attachment,.section-description{box-sizing:border-box;display:block;max-width:100%;width:100%}.section-attachment{flex-shrink:0;margin:20px 0}.section-attachment .attachment-preview{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin:0;max-width:100%;padding:15px;width:100%}.section-attachment .attachment-preview img,.section-attachment .attachment-preview video{border-radius:4px;height:auto;max-width:100%}.section-attachment .youtube-embed{max-width:100%}.section-questions{gap:20px}.evaluation-question-card,.section-questions{box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;width:100%}.evaluation-question-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:25px}.evaluation-question-card.question-attempted{background:#e3f2fd!important;border-left:4px solid #1976d2!important;box-shadow:0 2px 6px #1976d226!important;opacity:1!important}.evaluation-question-card.question-attempted .question-header h2,.evaluation-question-card.question-attempted .question-header h3,.evaluation-question-card.question-attempted .question-text{color:#333!important;opacity:1!important}.evaluation-question-card.question-attempted .answer-section,.evaluation-question-card.question-attempted .question-meta,.evaluation-question-card.question-attempted .scoring-section{opacity:1!important}.evaluation-question-card.question-unattempted{background:#f5f5f5!important;border-left:4px solid #ccc!important;opacity:.5!important}.evaluation-question-card.question-unattempted *{opacity:inherit}.evaluation-question-card.question-unattempted .answer-section,.evaluation-question-card.question-unattempted .correct-answer-section,.evaluation-question-card.question-unattempted .question-header h2,.evaluation-question-card.question-unattempted .question-header h3,.evaluation-question-card.question-unattempted .question-meta,.evaluation-question-card.question-unattempted .question-text{color:#888}.evaluation-question-card:last-child{margin-bottom:0}.question-header{border-bottom:2px solid #e0e0e0;margin-bottom:20px;padding-bottom:15px}.question-header h2,.question-header h3{color:#333;font-size:24px;margin:0}.question-header h3{font-size:20px}.question-meta{align-items:center;display:flex;gap:15px}.question-type{background:#e3f2fd;color:#1976d2;font-size:12px;text-transform:uppercase}.question-marks,.question-type{border-radius:4px;font-weight:600;padding:5px 12px}.question-marks{background:#f5f5f5;color:#666}.question-text{line-height:1.7;margin-bottom:20px;max-width:100%;white-space:pre-wrap}.question-attachments{margin-bottom:20px;max-width:100%;width:100%}.evaluation-question-card .attachment-preview{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 1px 3px #0000000d;margin:0 0 20px;max-width:100%;padding:15px;width:100%}.evaluation-question-card .attachment-preview img,.evaluation-question-card .attachment-preview video{border-radius:4px;display:block;height:auto;margin:0 auto;max-width:100%}.evaluation-question-card .attachment-preview .youtube-embed{max-width:100%}.evaluation-question-card .attachment-preview .attachment-audio{max-width:100%;width:100%}.question-options{margin-bottom:20px}.option-item{background:#f9f9f9;border-left:3px solid #ddd;margin-bottom:8px}.option-attachment{margin-top:8px;max-width:100%;width:100%}.option-attachment .attachment-preview{margin:.5rem 0;padding:10px}.answer-section{background:#f9f9f9;border-radius:8px;margin:25px 0;padding:20px}.answer-comparison{display:flex;flex-direction:column;gap:20px}.answer-section h4{color:#555;font-size:14px;font-weight:600;margin:0 0 10px;text-transform:uppercase}.options-display{gap:10px;margin-top:15px}.option-display,.options-display{display:flex;flex-direction:column}.option-display{border:2px solid #ddd;border-radius:4px;gap:8px;padding:12px}.option-display.correct-selected{background:#c8e6c9;border-color:#4caf50;border-width:2px}.option-display.incorrect-selected{background:#ffcdd2;border-color:#f44336;border-width:2px}.option-display.correct-not-selected{background:#e8f5e9;border:2px dashed #81c784}.option-display.not-selected{background:#f5f5f5;border-color:#ddd}.option-content{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.option-text{font-size:15px}.status-indicator{border-radius:4px;font-size:12px;font-weight:600;padding:4px 10px;white-space:nowrap}.option-display.correct-selected .status-indicator{background:#4caf50;color:#fff}.option-display.incorrect-selected .status-indicator{background:#f44336;color:#fff}.option-display.correct-not-selected .status-indicator{background:#81c784;color:#fff}.numeric-answer-display{background:#fff;border:2px solid #ddd;border-radius:4px;color:#333;font-size:18px;font-weight:600;padding:12px}.numeric-answer-display.correct{background:#e8f5e9;border-color:#4caf50;color:#2e7d32}.text-answer-display{background:#fff;border:2px solid #ddd;border-radius:4px;padding:15px}.text-answer-display pre{word-wrap:break-word;color:#333;font-family:inherit;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.code-file-link{margin-top:10px}.download-link{font-size:14px}.download-link:hover{text-decoration:underline}.scoring-section{border-top:2px solid #e0e0e0;margin-top:25px;padding-top:25px}.score-input-group{margin-bottom:20px}.score-input-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.score-input{border:2px solid #ddd;border-radius:4px;font-size:16px;font-weight:600;padding:10px;width:150px}.score-input:focus{border-color:#1976d2;outline:none}.score-info{color:#666;display:block;font-size:12px;font-style:italic;margin-left:10px;margin-top:5px}.score-input-group{display:flex;flex-direction:column;gap:5px}.score-input-group input{width:150px}.comment-input-group{margin-top:15px}.comment-input-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.comment-input{border:2px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.comment-input:focus{border-color:#1976d2;outline:none}.evaluation-summary{align-items:center;background:#f5f5f5;display:flex;justify-content:center;min-height:60vh;padding:40px 20px}.evaluation-summary:not(:only-child){background:#0000;min-height:auto;padding:20px}.summary-content{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;max-width:900px;padding:40px 35px;text-align:center;width:100%}.evaluation-summary:not(:only-child) .summary-content{max-width:100%;padding:20px 25px}.summary-content h1{color:#1976d2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:28px;font-weight:600;margin:0 0 30px}.summary-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}@media (max-width:1200px){.summary-stats{grid-template-columns:repeat(2,1fr)}}.stat-card{border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 2px 4px #0000000d;flex-direction:column;justify-content:flex-start;padding:24px 20px;transition:all .3s ease}.stat-card:hover{box-shadow:0 4px 8px #0000001a}.stat-card h3{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.score-value,.stat-card h3{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.score-value{color:#1976d2;font-size:28px;font-weight:700;line-height:1.3;margin:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-percentage{color:#666;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:14px;font-weight:500;margin:8px 0 0}.summary-actions{display:flex;justify-content:center;margin-top:30px}.summary-actions .btn-primary{font-size:15px;font-weight:600;height:44px;min-width:200px;padding:12px 28px}@media (max-width:768px){.evaluation-summary{min-height:auto;padding:20px 15px}.evaluation-summary:not(:only-child){padding:15px}.summary-content{padding:30px 20px}.evaluation-summary:not(:only-child) .summary-content{padding:15px 20px}.summary-content h1{font-size:24px;margin-bottom:25px}.evaluation-summary:not(:only-child) .summary-content h1{font-size:20px;margin-bottom:20px}.summary-stats{gap:16px;grid-template-columns:1fr!important;margin-bottom:25px}.stat-card{padding:20px 18px}.stat-card h3{font-size:11px;margin-bottom:10px}.score-value{font-size:24px}.score-percentage{font-size:13px;margin-top:6px}.summary-actions{margin-top:30px}.summary-actions .btn-primary{max-width:300px;width:100%}.evaluation-section{padding:15px}.evaluation-section,.section-header{display:flex;flex-direction:column;max-width:100%;width:100%}.section-header h2{display:block;font-size:18px;width:100%}.section-description{display:block;font-size:14px;margin:10px 0 15px;width:100%}.section-attachment{display:block;margin:15px 0;max-width:100%;width:100%}.section-attachment .attachment-preview{max-width:100%;padding:12px;width:100%}.evaluation-question-card{padding:15px}.evaluation-question-card .attachment-preview{margin-bottom:15px;padding:12px}.evaluation-question-card .attachment-preview img,.evaluation-question-card .attachment-preview video{max-height:300px}.question-text{font-size:15px}.section-questions{display:flex;flex-direction:column;gap:15px;max-width:100%;width:100%}}.error,.loading{font-size:18px}.error{color:#f44336}.btn-primary,.btn-secondary{align-items:center;border-radius:6px;display:inline-flex;font-size:14px;font-weight:600;justify-content:center;min-height:40px;padding:10px 20px;transition:all .2s;white-space:nowrap}.btn-secondary{border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.profile-page{padding:2rem}.profile-page h1{margin-bottom:2rem}.profile-card{padding:2rem}.profile-header{border-bottom:2px solid #eee;margin-bottom:2rem;padding-bottom:1rem}.profile-info{gap:1.5rem}.info-item{gap:.5rem}.info-item label{font-size:.9rem;font-weight:600}.info-item span{font-size:1rem}.role-badge{background:#1976d2;border-radius:4px;color:#fff;font-size:.85rem;padding:.25rem .75rem;width:-webkit-fit-content;width:fit-content}.form-group{margin-bottom:1.5rem}.form-group label{font-weight:600;margin-bottom:.5rem}.form-group input{font-size:1rem;padding:.75rem}.form-group input:focus{border-color:#1976d2;outline:none}.form-actions{border-top:2px solid #eee;gap:.75rem;margin-top:2rem;padding-top:1rem}.form-actions .btn-primary,.form-actions .btn-secondary{font-size:.875rem;padding:.5rem 1rem}.btn-primary,.btn-secondary{border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .3s}.btn-primary{background:#1976d2}.btn-primary:hover:not(:disabled){background:#1565c0}.btn-primary:disabled{background:#ccc}.btn-secondary{background:#f5f5f5;color:#333}.btn-secondary:hover{background:#e0e0e0}.exam-assignments-page{padding:20px}.page-header h1{flex:1 1 auto;min-width:0}.btn-export{padding:6px 12px}.status-badge.enabled{background-color:#e8f5e9;color:#388e3c}.status-badge.disabled{background-color:#ffebee;color:#c62828}.btn-warning{font-size:14px}@media (max-width:768px){.exam-assignments-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}.filters{flex-direction:column}.filters>*{max-width:none}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.instructor-batch-assignments-page{padding:20px}@media (max-width:768px){.instructor-batch-assignments-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:1.5rem;line-height:1.3}.filters{flex-direction:column}.filters>*{max-width:none}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.student-batch-assignments-page{padding:20px}.table-container{overflow-x:auto;overflow-y:visible}.text-muted{color:#666;font-size:.9em}.btn-primary{flex-shrink:0}.status-badge{padding:4px 8px}.status-approved{background-color:#d4edda;color:#155724}.status-pending{background-color:#fff3cd;color:#856404}.btn-success{background-color:#28a745;font-size:12px;padding:6px 12px}.btn-success:hover:not(:disabled){background-color:#218838}.btn-success:disabled{opacity:.5}.btn-warning{background-color:#ffc107;border:none;border-radius:4px;color:#212529;cursor:pointer;font-size:12px;padding:6px 12px}.btn-warning:hover:not(:disabled){background-color:#e0a800}.btn-warning:disabled{opacity:.5}.action-buttons button{box-sizing:border-box!important;font-size:12px!important;height:32px!important;line-height:1!important;margin:0!important;min-width:0!important;padding:6px 12px!important;white-space:nowrap;width:100%!important}@media (max-width:768px){.student-batch-assignments-page{padding:1rem}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:1.5rem;line-height:1.3}.filters{flex-direction:column}.filters>*{max-width:none}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:800px}}.courses-page{padding:20px}.courses-page h1{color:#333}.courses-page h1,.filters{margin-bottom:30px}.no-courses{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-courses p{color:#666;font-size:18px}.courses-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.course-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px;transition:transform .2s,box-shadow .2s}.course-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.course-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.status-published{background:#e8f5e9;color:#2e7d32}.status-unpublished{background:#fff3e0;color:#e65100}.price-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:500;padding:4px 10px;white-space:nowrap}.free-badge{background:#e8f5e9;color:#2e7d32}.paid-badge{background:#e3f2fd;color:#1976d2}.course-header{margin-bottom:15px}.course-header h3{color:#333;font-size:1.25rem;line-height:1.4;margin:0}.course-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#666;display:-webkit-box;line-height:1.5;margin-bottom:15px;overflow:hidden}.course-details{margin-bottom:20px}.course-actions{flex-direction:column;margin-top:15px}.actions-row,.course-actions{display:flex;gap:8px;width:100%}.btn-action{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px;transition:background-color .2s;width:100%}.btn-success{background-color:#2e7d32}.btn-success:hover:not(:disabled){background-color:#1b5e20}.btn-action:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.enrollments-container{-webkit-overflow-scrolling:touch;display:flex!important;flex-direction:row;gap:1rem;overflow-x:auto;overflow-y:visible;padding-bottom:.5rem;scrollbar-color:#667eea #f0f0f0;scrollbar-width:thin}.enrollments-container>div{flex-shrink:0;max-width:280px;min-width:280px}.enrollments-container::-webkit-scrollbar{height:8px}.enrollments-container::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.enrollments-container::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}.enrollments-container::-webkit-scrollbar-thumb:hover{background:#5568d3}}@media (min-width:769px){.enrollments-container{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}}.settings-page{padding:20px}.page-header{flex-wrap:wrap;gap:1rem}.page-header h1{flex-shrink:0;font-size:1.75rem;white-space:nowrap}.settings-card{max-width:800px;padding:30px}.settings-card h2{color:#2c3e50;margin-bottom:10px;margin-top:0}.settings-description{line-height:1.6;margin-bottom:30px}.form-group{margin-bottom:25px}.form-help-text{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin-top:12px;padding:15px}.form-help-text p{color:#555;font-size:14px;line-height:1.5;margin:8px 0}.form-help-text p:first-child{margin-top:0}.form-help-text p:last-child{margin-bottom:0}.form-help-text strong{color:#007bff}.form-actions{gap:10px}.btn-primary:hover:not(:disabled){background-color:#0056b3}.loading{color:#999}.exam-detail-page{padding:20px}.header-actions{display:flex;gap:10px}.exam-info-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:25px}.exam-info-card h1{color:#333;margin:0 0 15px}.exam-meta{align-items:center;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:15px}.exam-code{color:#1976d2;font-weight:600}.status-draft{background-color:#f3e5f5;color:#7b1fa2}.exam-description{line-height:1.6;margin:0}.tabs{-webkit-overflow-scrolling:touch;border-bottom:2px solid #eee;margin-bottom:20px;overflow-x:auto;scrollbar-width:thin}.tabs::-webkit-scrollbar{height:4px}.tabs::-webkit-scrollbar-track{background:#f1f1f1}.tabs::-webkit-scrollbar-thumb{background:#888;border-radius:2px}.tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;flex-shrink:0;font-size:14px;margin-bottom:-2px;padding:12px 20px;transition:all .3s;white-space:nowrap}.tab.active,.tab:hover{color:#1976d2}.tab.active{border-bottom-color:#1976d2;font-weight:600}.tab-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;overflow-x:hidden;padding:25px;width:100%}.info-section h3{color:#333;margin-bottom:20px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item span{font-size:14px}.sections-list{margin-top:20px}.section-card{background:#f9f9f9;border-left:3px solid #1976d2;border-radius:4px;padding:15px}.section-card h4{color:#333;margin:0 0 8px}.section-card p{color:#666;font-size:14px;margin:0 0 8px}.btn-export{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.btn-export:hover{background-color:#218838}.error{padding:40px;text-align:center}.settings-tab{padding:0}.settings-section{margin-bottom:30px}.settings-section h3{color:#333;margin-bottom:10px;margin-top:0}.settings-description{color:#666;font-size:14px;margin-bottom:20px}.current-setting{background-color:#f5f5f5;border-radius:4px;color:#333;font-size:14px;margin-bottom:20px;padding:15px}.current-setting strong{color:#1976d2}.modal-content{box-shadow:0 4px 6px #0000001a}.modal-header{border-bottom:1px solid #e0e0e0;padding:20px}.modal-header h2{color:#333;font-size:20px;margin:0}.modal-close{border-radius:4px;color:#666}.modal-close:hover{background-color:#f5f5f5}.modal-body{padding:20px}.modal-footer{border-top:1px solid #e0e0e0;box-sizing:border-box;flex-wrap:wrap;padding:20px}.modal-footer button{box-sizing:border-box;flex-shrink:0;min-width:80px}@media (max-width:768px){.modal-footer{align-items:stretch;flex-direction:column-reverse;gap:10px}.modal-footer button{margin:0;width:100%}}.form-input,.form-select{background-color:#fff;padding:10px 12px}.info-box{border-left:4px solid #1976d2}.info-box p{color:#1565c0;font-size:14px;line-height:1.5}.questions-tab{box-sizing:border-box;overflow-x:hidden;padding:0;width:100%}.questions-tab-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.questions-tab-header h3{color:#333;flex-shrink:0;margin:0}.questions-tab-header>div{display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;width:100%}.questions-tab-header>div button{box-sizing:border-box;flex:1 1 auto;min-width:0;white-space:nowrap}@media (max-width:768px){.questions-tab-header{align-items:stretch;flex-direction:column}.questions-tab-header h3{margin-bottom:10px;width:100%}.questions-tab-header>div{flex-direction:column;width:100%}.questions-tab-header>div button{flex:1 1 100%;width:100%}.tabs{gap:5px}.tab{font-size:13px;padding:10px 12px}.modal-content{margin:10px;max-width:95%;width:95%}.question-card-inline{flex-direction:column;gap:10px}.question-card-content{min-width:0;width:100%}.question-card-actions{flex:1 1 100%;justify-content:flex-start;max-width:100%;min-width:0;width:100%}.question-card-actions button{flex:1 1 auto;max-width:none;min-width:80px;width:auto}.question-text{max-width:100%;width:100%}}.questions-section{box-sizing:border-box;margin-bottom:30px;overflow:hidden;padding:0;width:100%}.questions-section h4{border-bottom:2px solid #e0e0e0;color:#1976d2;font-size:18px;margin:0 0 15px;padding-bottom:8px}.questions-list{box-sizing:border-box;width:100%}.question-card-inline{align-items:flex-start;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:15px;justify-content:space-between;max-width:100%;padding:15px;position:relative}.question-card-content,.question-card-inline{box-sizing:border-box;min-width:0;overflow:hidden;width:100%}.question-card-content{flex:1 1 auto}.question-text{word-wrap:break-word;box-sizing:border-box;overflow-wrap:break-word;width:100%}.question-card-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.type-numeric,.type-numeric_answer{background-color:#fff3e0;color:#f57c00}.type-code{background-color:#f3e5f5;color:#7b1fa2}.type-descriptive{background-color:#e8f5e9;color:#388e3c}.question-score{background:#fff3e0;border-radius:12px;color:#f57c00;font-size:12px;font-weight:500;padding:4px 12px}.required-badge{background:none!important;border-radius:0;line-height:1.4;padding:4px 0}.required-badge.required{background:none!important;color:#dc3545}.required-badge.optional{background:none!important;color:#6c757d}.question-card-actions{align-items:flex-start;display:flex;flex:0 0 140px;flex-shrink:0;gap:8px;max-width:140px;min-width:140px}.question-card-actions button{box-sizing:border-box;flex-shrink:0;font-size:12px!important;max-width:66px;min-width:66px;overflow:hidden;padding:6px 10px!important;text-overflow:ellipsis;white-space:nowrap;width:66px}.btn-danger{font-size:12px;padding:6px 12px}.no-questions{color:#666;padding:40px;text-align:center}.question-preview{background:#f5f5f5;border-radius:4px;margin-top:10px;padding:10px}.question-preview strong{color:#333;display:block;margin-bottom:5px}.question-preview p{color:#666;font-size:14px;margin:5px 0}.question-preview small{color:#999;font-size:12px}.batches-tab{padding:0}.batches-tab-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.batches-tab-header h3{color:#333;margin:0}.assignments-list{display:flex;flex-direction:column;gap:15px}.assignment-card{align-items:flex-start;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:15px;justify-content:space-between;padding:15px}.assignment-content{flex:1 1}.assignment-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.assignment-header h4{color:#333;margin:0}.assignment-details{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.assignment-actions{align-items:center;display:flex}.no-assignments{color:#666;padding:40px;text-align:center}.info-text{font-size:12px}.attachment-manager{margin:1rem 0}.attachment-manager-header{margin-bottom:.5rem}.attachment-manager-label{color:#333;display:block;font-weight:600;margin-bottom:.25rem}.attachment-manager-preview{margin-top:1rem}.attachment-manager-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.btn-small{font-size:.85rem;padding:.4rem .8rem}.attachment-manager-upload{margin-top:.5rem}.attachment-upload-options{display:flex;gap:.5rem;margin-bottom:1rem}.youtube-input-section{background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;margin-top:1rem;padding:1rem}.youtube-input-actions{display:flex;gap:.5rem;margin-top:.5rem}.upload-status{color:#1976d2;font-style:italic;margin-top:.5rem}.error-message{color:#e74c3c;font-size:.9rem;margin-top:.5rem}.sections-page{padding:20px}.btn-back{padding:10px 20px}.sections-page h1{color:#333;margin-bottom:20px}.no-sections{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-sections p{color:#666;font-size:18px}.sections-list{display:flex;flex-direction:column;gap:15px}.section-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.section-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.section-header h3{color:#333;margin:0 0 5px}.section-order{color:#999;font-size:12px}.section-actions{display:flex;gap:10px}.btn-edit{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.btn-edit:hover{background:#1565c0}.btn-delete{background:#c62828;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.btn-delete:hover{background:#b71c1c}.section-description{line-height:1.6;margin:10px 0}.section-meta{color:#666;display:flex;font-size:14px;gap:15px;margin-top:10px}.error-message{border:1px solid #ef5350;border-radius:8px;color:#c62828;margin:20px 0;padding:40px;text-align:center}.exams-page{padding:20px}.search-bar{margin-bottom:20px}.search-bar input{border:1px solid #ddd;border-radius:4px;font-size:14px;max-width:400px;padding:10px;width:100%}.exam-card{border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column}.exam-card:hover{border-color:#e0e0e0;box-shadow:0 4px 12px #0000001f}.exam-header{align-items:flex-start;display:flex;justify-content:space-between}.exam-header h3{background:linear-gradient(135deg,#1976d20d,#1976d205);border-left:4px solid #1976d2;border-radius:6px;color:#1976d2!important;flex:1 1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif!important;font-size:22px!important;font-weight:700!important;letter-spacing:-.3px;padding:8px 12px;text-shadow:0 1px 2px #1976d233;transition:all .2s ease}.exam-header h3:hover{background:linear-gradient(135deg,#1976d21a,#1976d20d);transform:translateX(2px)}.exam-details{flex:1 1;margin-bottom:0}.exam-preview{margin-bottom:0;padding-bottom:0}.btn-preview{align-items:center;display:flex;gap:6px;justify-content:center;width:100%}.action-separator{background-color:#f0f0f0;height:1px;margin:12px 0}.exam-actions{width:100%}.edit-delete-actions-row,.status-actions-row{display:flex;gap:8px;width:100%}.action-button-half{flex:1 1;min-width:0}.btn-full-width{width:100%}.status-draft{background-color:#e0e0e0;color:#666}.status-published{background-color:#e3f2fd;color:#1976d2}.status-active{background-color:#e8f5e9;color:#388e3c}.status-inactive{background-color:#fff3e0;color:#f57c00}.status-completed{background-color:#f3e5f5;color:#7b1fa2}.btn-danger,.btn-primary,.btn-secondary,.btn-success,.btn-warning{align-items:center;border:none;border-radius:6px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;height:38px;justify-content:center;padding:10px 16px;transition:all .2s}.btn-warning{background-color:#f57c00;color:#fff}.btn-warning:hover:not(:disabled){background-color:#e65100}.btn-warning:disabled{cursor:not-allowed;opacity:.6}.btn-sm{font-size:14px;height:38px;padding:10px 16px}.modal-danger .alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin-bottom:15px;padding:12px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;width:100%}.questions-page{padding:20px}.page-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.search-input{flex:1 1;max-width:400px}.filter-select,.search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px}.filter-select{min-width:150px}.questions-list{display:flex;flex-direction:column;gap:15px}.question-card{background:#fff;border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;transition:transform .2s,box-shadow .2s}.question-card:hover{border-color:#e0e0e0;box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.question-header{gap:15px}.question-header-left{align-items:center;display:flex;flex:1 1;gap:10px}.question-header-actions{flex-shrink:0;gap:6px}.question-header-actions .btn-action,.question-header-actions .btn-danger,.question-header-actions .btn-danger.btn-sm,.question-header-actions .btn-primary,.question-header-actions .btn-primary.btn-sm,.question-header-actions .btn-secondary,.question-header-actions .btn-secondary.btn-sm,.question-header-actions .btn-sm,.question-header-actions button{align-items:center!important;box-sizing:border-box!important;display:inline-flex!important;font-size:12px!important;height:28px!important;justify-content:center!important;line-height:1.2!important;margin:0!important;max-height:28px!important;min-height:28px!important;min-width:80px!important;padding:4px 12px!important;white-space:nowrap;width:80px!important}.question-type-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.type-mcq_multiple,.type-mcq_single{background-color:#e3f2fd;color:#1976d2}.type-numeric{background-color:#fff3e0;color:#f57c00}.type-code,.type-descriptive{background-color:#f3e5f5;color:#7b1fa2}.question-marks{font-size:12px;padding:4px 12px}.question-content{margin-top:15px}.attachment-notice{align-items:center;background-color:#e3f2fd;border-left:3px solid #1976d2;border-radius:4px;color:#1976d2;display:flex;font-size:13px;gap:8px;margin-bottom:12px;padding:8px 12px}.attachment-icon{font-size:16px}.question-text{font-size:16px;margin-bottom:15px}.question-options-list{background:#f8f9fa;border-left:3px solid #1976d2;border-radius:4px;margin:12px 0;padding:12px}.question-options-list .option-item{align-items:flex-start;color:#666;display:flex;gap:10px;padding:8px 0}.question-options-list .option-item.correct{color:#388e3c;font-weight:500}.question-options-list .option-label{color:#666;font-weight:600;min-width:25px}.question-options-list .option-text{color:#333;flex:1 1}.question-options-list .correct-badge{background:#e8f5e9;border-radius:4px;color:#388e3c;font-size:11px;font-weight:500;margin-left:auto;padding:2px 8px}.btn-danger,.btn-primary{box-sizing:border-box;font-size:.875rem;height:auto;line-height:1.5;padding:.625rem 1rem;white-space:nowrap}.btn-sm{font-size:12px;padding:4px 8px}.btn-secondary{box-sizing:border-box;font-size:.875rem;height:auto;line-height:1.5;padding:.625rem 1rem;white-space:nowrap}.modal-content{max-width:600px}.question-modal{max-height:90vh;max-width:800px;overflow-y:auto}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.btn-remove-option{background-color:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.btn-remove-option:hover{background-color:#c82333}.btn-add-option{background-color:#28a745;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:8px 16px}.btn-add-option:hover{background-color:#218838}.tags-input{display:flex;gap:10px;margin-bottom:10px}.tags-input input{border:1px solid #ddd;border-radius:4px;flex:1 1;padding:8px}.btn-add-tag{background-color:#17a2b8;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.btn-add-tag:hover{background-color:#138496}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{align-items:center;background-color:#e9ecef;border-radius:4px;color:#495057;display:inline-flex;font-size:12px;gap:5px;padding:4px 8px}.tag-remove{background:none;border:none;color:#dc3545;cursor:pointer;font-size:16px;line-height:1;padding:0}.tag-remove:hover{color:#c82333}.question-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.form-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;width:100%}.question-details-modal{max-width:800px}.modal-header{border-bottom:1px solid #eee;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.modal-close,.modal-header{align-items:center;display:flex}.modal-close{background:none;border:none;color:#999;cursor:pointer;font-size:28px;height:30px;justify-content:center;line-height:1;padding:0;width:30px}.modal-close:hover{color:#333}.modal-body{gap:20px}.detail-section,.modal-body{display:flex;flex-direction:column}.detail-section{gap:8px}.detail-section label{color:#555;font-size:14px;font-weight:600}.detail-value{font-size:15px;line-height:1.6}.question-text-display{background:#f8f9fa;border-left:3px solid #1976d2;border-radius:4px;padding:15px}.solution-text{background:#f0f7ff;border-left:3px solid #4caf50}.code-block,.solution-text{border-radius:4px;padding:15px}.code-block{background:#f5f5f5;border:1px solid #ddd;font-family:Courier New,monospace;font-size:13px;margin:0;overflow-x:auto}.code-block code{word-wrap:break-word;white-space:pre-wrap}.options-list{background:#f8f9fa;border-radius:4px;padding:10px}.option-item{align-items:flex-start;border:1px solid #e0e0e0;gap:10px;padding:10px}.option-item.correct{background:#f1f8f4;border-color:#4caf50}.option-label{color:#666;font-weight:600;min-width:25px}.option-text{color:#333}.modal-footer{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.evaluations-page{padding:20px}.pending-count{background:#f57c00;border-radius:20px;color:#fff;font-weight:600;padding:8px 16px}.pending-count.completed-count{background:#4caf50}.pending-count.all-count{background:#1976d2}.status-filter-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;width:100%}.status-filter-select:focus{border-color:#1976d2;outline:none}.no-evaluations{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-evaluations p{color:#666;font-size:18px}.submissions-list{display:flex;flex-direction:column;gap:15px}.submission-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;padding:20px;transition:transform .2s,box-shadow .2s}.submission-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.submission-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.submission-header h3{color:#333;margin:0 0 5px}.student-name{color:#666;font-size:14px;margin:0}.status-pending{background-color:#fff3e0;color:#f57c00}.status-in_progress{background-color:#e3f2fd;color:#1976d2}.submission-details{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{flex-direction:column;gap:3px}.detail-label{font-size:12px;font-weight:500}.evaluation-modal{background:#fff;border-radius:8px;max-height:90vh;max-width:900px;overflow-y:auto;padding:30px;width:90%}.evaluation-modal h2{color:#333;margin-bottom:20px;margin-top:0}.evaluation-info{grid-gap:20px;border-bottom:1px solid #eee;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:20px;padding-bottom:20px}.info-section h3{color:#1976d2;font-size:16px;margin-bottom:10px;margin-top:0}.info-section p{color:#666;font-size:14px;margin:5px 0}.tab-switching-info{background-color:#fff3e0;border-left:4px solid #f57c00;border-radius:4px;margin-top:15px;padding:15px}.warning-label{color:#e65100;margin-bottom:10px}.tab-switching-reason{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-size:14px;line-height:1.5;margin-top:10px;padding:10px;white-space:pre-wrap}.question-selector{margin-bottom:15px}.question-selector label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:5px}.question-selector select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.question-selector select:focus{border-color:#1976d2;outline:none}.question-text{border-left:3px solid #1976d2;border-radius:4px;margin-top:10px;padding:10px}.question-text div{color:#333;line-height:1.6;margin-top:5px}.answer-section{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:20px}.answer-section h3{color:#1976d2;font-size:16px;margin-bottom:10px;margin-top:0}.answer-display{background:#f9f9f9;border-left:3px solid #388e3c;border-radius:4px;margin-top:10px;padding:15px}.answer-display.numeric-answer{color:#1976d2;font-size:24px;font-weight:600;text-align:center}.answer-display.text-answer pre{word-wrap:break-word;font-family:Courier New,monospace;font-size:14px;line-height:1.6;margin:0;white-space:pre-wrap}.evaluation-section h3{color:#1976d2;font-size:16px;margin-bottom:15px;margin-top:0}.marks-input{border:2px solid #ddd;border-radius:4px;font-size:18px;font-weight:600;max-width:200px;padding:10px;width:100%}.marks-input:focus{border-color:#1976d2;outline:none}.form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;padding:10px;resize:vertical;width:100%}.modal-actions{border-top:1px solid #eee;padding-top:20px}.btn-success{background-color:#388e3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px}.btn-success:hover:not(:disabled){background-color:#2e7d32}.btn-success:disabled{cursor:not-allowed;opacity:.6}.filters-grid{grid-gap:15px;align-items:end;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-group{gap:5px}.filter-group input[type=date],.filter-group select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.filter-group input[type=date]:focus,.filter-group select:focus{border-color:#1976d2;outline:none}.filter-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.filter-group button{padding:8px 16px;white-space:nowrap}.filter-group .searchable-select-container{width:100%}.submissions-table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:100%;overflow-x:auto!important;overflow-y:visible!important;width:100%}.submissions-table{border-collapse:collapse;min-width:900px;width:100%}.submissions-table thead{background-color:#f5f5f5}.submissions-table th{border-bottom:2px solid #ddd;color:#333;font-size:14px;font-weight:600;padding:12px 16px;text-align:left}.submissions-table td{border-bottom:1px solid #eee;color:#666;font-size:14px;padding:12px 16px}.submissions-table tbody tr{cursor:pointer;transition:background-color .2s}.submissions-table tbody tr:hover{background-color:#f9f9f9}.submissions-table tbody tr:last-child td{border-bottom:none}.exam-code{color:#999;font-size:12px;margin-top:2px}.status-badge{border-radius:4px;font-weight:600;text-transform:uppercase}.success-text{color:#388e3c}.exam-attempts-page{padding:20px}.page-header h1{margin:0 0 10px}.page-description{margin:0}.filters-section{grid-gap:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:#333;font-size:14px;font-weight:500}.count-info{background:#f8f9fa;border-radius:4px;font-size:14px;margin-bottom:20px;padding:10px 15px}.total-count{color:#495057;font-weight:500}.attempts-table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:100%;overflow-x:auto!important;overflow-y:visible!important;width:100%}.attempts-table-container table{border-collapse:collapse;min-width:1000px;width:100%}.attempts-table-container thead{background:#6c5ce7;color:#fff}.attempts-table-container th{font-size:14px;font-weight:600;padding:12px 15px;text-align:left;white-space:nowrap}.attempts-table-container th.sortable-header{padding-right:30px;position:relative;-webkit-user-select:none;user-select:none}.attempts-table-container th.sortable-header:hover{background:#5f4fd8}.sort-icon{color:#fff;font-size:12px;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.attempts-table-container tbody tr{border-bottom:1px solid #e9ecef;transition:background-color .2s}.attempts-table-container tbody tr.clickable-row:hover{background-color:#f8f9fa;cursor:pointer}.attempts-table-container tbody tr:last-child{border-bottom:none}.attempts-table-container td{color:#495057;font-size:14px;padding:12px 15px}.student-info{display:flex;flex-direction:column;gap:4px}.student-info strong{color:#2c3e50;font-weight:600}.exam-info strong{color:#6c5ce7;font-size:13px;font-weight:600}.batch-names{display:flex;flex-wrap:wrap;gap:6px}.batch-tag{background:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.no-batch{color:#999;font-style:italic}.status-badge.status-pending{background:#fff3cd;color:#856404}.status-badge.status-completed{background:#d4edda;color:#155724}.warning-text{color:#dc3545}.success-text{color:#28a745;font-weight:500}.text-muted{color:#6c757d}.no-attempts{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-attempts p{margin:0}.loading,.no-attempts p{color:#6c757d;font-size:16px}.loading{padding:60px 20px}.btn-secondary{background:#6c757d;padding:8px 16px}.btn-secondary:hover{background:#5a6268}@media (max-width:768px){.exam-attempts-page{padding:10px}.filters-section{grid-template-columns:1fr;padding:15px}.attempts-table-container{overflow-x:auto}.attempts-table-container table{min-width:800px}.page-header{align-items:stretch;flex-direction:column}.page-header h1{font-size:clamp(1rem,4vw,1.5rem);line-height:1.4;width:100%}}.attempt-details-page{padding:20px}.page-header{gap:15px}.btn-back{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.btn-back:hover{background:#5a6268}.summary-card{grid-gap:15px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px;padding:20px}.summary-item{display:flex;flex-direction:column;gap:5px}.summary-label{color:#666;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.summary-value{color:#2c3e50;font-size:16px;font-weight:600}.summary-value.warning{color:#dc3545}.summary-value.status-pending{color:#856404}.summary-value.status-completed{color:#155724}.evaluation-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.evaluation-section h2{color:#2c3e50;font-size:1.5rem;margin:0 0 10px}.section-description{margin-bottom:20px}.question-answer-card{background:#fff;border:2px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:20px;transition:all .2s}.question-answer-card.unattempted{background:#f8f9fa;opacity:.5}.question-answer-card.correct{background:#f0fff4;border-color:#28a745}.question-answer-card.incorrect{background:#fff5f5;border-color:#dc3545}.question-header{align-items:flex-start}.question-header h3{color:#2c3e50;flex:1 1;font-size:1.1rem;margin:0}.score-badge{background:#6c5ce7;border-radius:4px;color:#fff;font-size:14px;font-weight:600;padding:6px 12px;white-space:nowrap}.auto-badge{font-size:11px;margin-left:5px;opacity:.9}.answer-section{margin-top:15px}.answer-section h4{color:#495057;font-size:1rem;margin:15px 0 10px}.options-list{gap:10px}.option-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.option-item.correct-selected{background:#d4edda;border-color:#28a745;color:#155724}.option-item.incorrect-selected{background:#f8d7da;border-color:#dc3545;color:#721c24}.option-item.correct-not-selected{background:#fff3cd;border-color:#ffc107;color:#856404}.option-text{flex:1 1;font-weight:500}.option-status{font-size:12px;font-weight:600;margin-left:10px}.answer-text,.answer-value{background:#f8f9fa;border-radius:4px;font-size:14px;padding:12px}.correct-answer{background:#d4edda;border-radius:4px;color:#155724;font-weight:600;margin-top:10px;padding:12px}.no-answer{color:#6c757d;font-style:italic}.error,.loading{font-size:16px;padding:60px 20px}.error{color:#dc3545}@media (max-width:768px){.attempt-details-page{padding:10px}.summary-card{grid-template-columns:1fr;padding:15px}.question-header{flex-direction:column;gap:10px}.page-header{align-items:flex-start;flex-direction:column}}.excel-import-page{padding:20px}.page-header{margin-bottom:30px}.btn-primary{background-color:#007bff}.btn-primary:hover{background-color:#0056b3}.excel-import-page h1{color:#333;margin:0}.import-section{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:30px}.instructions{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:25px}.instructions h2{color:#333;font-size:20px;margin-bottom:15px;margin-top:0}.instructions ol{margin-bottom:20px;padding-left:20px}.instructions li{color:#666;line-height:1.6;margin-bottom:8px}.format-info{background:#f9f9f9;border-left:3px solid #1976d2;border-radius:4px;padding:15px}.format-info h3{color:#333;font-size:16px;margin-bottom:10px;margin-top:0}.format-info ul{margin:0;padding-left:20px}.format-info li{font-size:14px;margin-bottom:5px}.upload-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:25px}.file-input-wrapper{display:flex;flex-direction:column;gap:10px}.file-label{color:#333;font-size:14px;font-weight:500}.file-input{border:2px dashed #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:12px;transition:border-color .3s;width:100%}.file-input:hover:not(:disabled){border-color:#1976d2}.file-input:disabled{cursor:not-allowed;opacity:.6}.file-hint{color:#666;font-size:12px;margin:0}.file-selected{background:#e8f5e9;border-radius:4px;color:#2e7d32;font-size:13px;margin-top:8px;padding:8px}.file-selected strong{font-weight:600}.import-button-wrapper{display:flex;flex-direction:column;gap:15px;margin-top:20px}.btn-import{font-size:16px;font-weight:600;padding:12px 24px;width:100%}.btn-import:disabled{cursor:not-allowed;opacity:.6}.import-status{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center}.import-status.loading{background:#e3f2fd;border-left:4px solid #1976d2}.import-status p{color:#1976d2;font-weight:500;margin:0}.import-result{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.import-result.dismissible{position:relative}.import-result.success{background:#f1f8f4;border-left:4px solid #388e3c}.import-result.error{background:#ffebee;border-left:4px solid #c62828}.result-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.result-header h4{font-size:16px;margin:0}.import-result.success .result-header h4{color:#388e3c}.import-result.error .result-header h4{color:#c62828}.dismiss-btn{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:24px}.dismiss-btn:hover{background:#0000001a;color:#333}.import-result h3{margin-bottom:15px;margin-top:0}.import-result.success h3{color:#388e3c}.import-result.error h3{color:#c62828}.result-details{display:flex;flex-direction:column;gap:10px}.result-details p{color:#333;font-size:14px;margin:5px 0}.result-details h5{color:#c62828;font-size:14px;margin:10px 0 5px}.error-list{background:#ffebee;border-radius:4px;margin-top:15px;padding:15px}.error-list h4{color:#c62828;margin-bottom:10px;margin-top:0}.error-list ul{margin:0;padding-left:20px}.error-list li{color:#c62828;font-size:14px;margin-bottom:5px}.error-message{background:#ffebee;border-radius:4px;padding:15px}.error-message p{color:#c62828;margin:0}.guidelines-section{background:#f9f9f9;border-left:3px solid #1976d2;border-radius:4px;margin-bottom:20px;padding:15px}.guidelines-section h3{color:#333;font-size:16px;margin-bottom:10px;margin-top:0}.guidelines-section h4{color:#555;font-size:14px;margin-bottom:8px;margin-top:15px}.guidelines-section ul{margin:8px 0;padding-left:20px}.guidelines-section li{font-size:14px;line-height:1.5;margin-bottom:6px}.guidelines-section code{background:#e8e8e8;border-radius:3px;font-family:Courier New,monospace;font-size:13px;padding:2px 6px}.section-guidelines{background:#fff3e0;border-radius:4px;margin-top:10px;padding:12px}.section-guidelines h4{color:#e65100;margin-bottom:6px;margin-top:10px}.section-guidelines h4:first-child{margin-top:0}.import-options{margin-bottom:25px}.form-input,.form-select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-input:focus,.form-select:focus{border-color:#1976d2;box-shadow:0 0 0 2px #1976d21a;outline:none}.exam-info-box{background:#e3f2fd;border-left:3px solid #1976d2;border-radius:4px;margin-top:10px;padding:12px}.exam-info-box p{color:#1565c0;font-size:14px;margin:5px 0}.warning-box{background:#fff3e0;border-left:3px solid #ff9800;border-radius:4px;color:#e65100;font-size:13px;margin-top:10px;padding:10px}.warning-box strong{display:block;margin-bottom:5px}.info-box{background:#e8f5e9;border-left:3px solid #4caf50;margin-top:10px;padding:12px}.info-box p{color:#2e7d32;font-size:13px}@media (max-width:768px){.import-section{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column;gap:15px}}.organizations-page{padding:20px}.organizations-page h1{color:#333;margin-bottom:10px}.no-organizations{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-organizations p{color:#666;font-size:18px}.organizations-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.organization-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.organization-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.organization-card h3{color:#333;margin:0 0 10px}.organization-card p{color:#666;font-size:14px;line-height:1.6;margin:0}.page-header h1{margin:0 0 5px}.page-subtitle{color:#666;font-size:14px;margin:0}.filters{align-items:center;flex-wrap:wrap;margin-bottom:25px}.batches-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:20px}.batch-card{border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:box-shadow .2s,transform .2s}.batch-card:hover{border-color:#e0e0e0;box-shadow:0 4px 12px #0000001f}.batch-header{gap:10px;margin-bottom:12px}.batch-name{color:#333;flex:1 1;font-size:18px;font-weight:600;margin:0}.organization-badge{white-space:nowrap}.batch-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;line-height:1.5;margin:0 0 15px;overflow:hidden}.batch-stats{border-top:1px solid #f0f0f0;display:flex;gap:20px;margin-bottom:15px;padding-top:15px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{color:#999;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#333;font-size:16px;font-weight:600}.stat-value.stat-value-date{display:flex;flex-direction:column;font-size:14px;gap:2px;line-height:1.3}.batch-footer{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;padding-top:15px}.batch-id{color:#999;font-size:12px}.empty-state{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state h3{color:#333;margin:0 0 10px}.empty-state p{color:#666;margin:0}.summary-info{background:#f9f9f9;border-radius:6px;color:#666;font-size:14px;padding:15px;text-align:center}.summary-info strong{color:#333}@media (max-width:768px){.batches-grid{grid-template-columns:1fr}.filters{align-items:stretch;flex-direction:column}.form-select{width:100%}}.batch-exams-page{padding:20px}.page-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.page-header h1{color:#333;font-size:clamp(1.2rem,2.5vw,1.75rem)}.info-box{background-color:#e3f2fd;border:1px solid #90caf9;border-radius:4px;color:#1565c0;margin-bottom:20px;padding:15px}.info-box p{margin:0}.filters{display:flex;gap:15px;margin-bottom:20px}.filters>*{flex:1 1;max-width:300px}.table-container{border:1px solid #f0f0f0;border-radius:12px;box-shadow:0 2px 8px #00000014}table{min-width:900px}.action-buttons{align-items:stretch;display:flex;flex-direction:column;gap:4px;width:100%}.action-buttons .btn-danger,.action-buttons .btn-danger.btn-sm,.action-buttons .btn-primary,.action-buttons .btn-primary.btn-sm,.action-buttons .btn-secondary,.action-buttons .btn-secondary.btn-sm,.action-buttons .btn-sm,.action-buttons button{box-sizing:border-box!important;font-size:12px!important;height:32px!important;line-height:1!important;margin:0!important;min-width:0!important;padding:6px 12px!important;white-space:nowrap;width:100%!important}.btn-sm{border-radius:6px;font-weight:500;padding:8px 14px;transition:all .2s}.btn-danger{background-color:#dc3545;border-radius:4px}.btn-danger:hover:not(:disabled){background-color:#c82333}.btn-danger:disabled{opacity:.5}.modal-overlay{background-color:#00000080;z-index:2000}.modal-content h2{margin-bottom:20px}.btn-primary{border-radius:6px;transition:all .2s}.btn-primary:disabled{opacity:.5}.no-options-message{background-color:#fff3e0;border:1px solid #ffb74d;border-radius:4px;color:#e65100;font-size:14px;padding:12px;text-align:center}.exam-taking{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.exam-header-bar{align-items:center;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:15px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.exam-header-right{align-items:center;display:flex;gap:12px}.btn-fullscreen{background-color:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.btn-fullscreen:hover{background-color:#1565c0}.btn-fullscreen:active{background-color:#0d47a1}.btn-fullscreen:disabled{background-color:#9e9e9e;cursor:not-allowed;opacity:.7}.btn-fullscreen:disabled:hover{background-color:#9e9e9e}.exam-title{color:#333;font-size:18px;font-weight:600}.timer{background:#e3f2fd;border-radius:8px;color:#1976d2;font-size:20px;font-weight:700;padding:8px 16px}.timer-warning{animation:pulse 1s infinite;background:#ffebee;color:#c62828}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.activity-monitor-compact{align-items:center;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;display:flex;flex-wrap:wrap;font-size:11px;gap:8px;max-width:600px;padding:4px 10px}.activity-compact-separator{color:#ccc;font-weight:700;margin:0 2px}.activity-compact-item{align-items:center;display:flex;gap:4px}.activity-compact-label{color:#666;font-weight:500}.activity-compact-value{font-family:Courier New,monospace;font-weight:700}.activity-compact-value.active-time{color:#27ae60}.activity-compact-value.inactive-time{color:#e74c3c}.activity-status-compact{align-items:center;border-radius:50%;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;width:20px}.activity-status-compact.active{background:#d4edda;color:#155724}.activity-status-compact.inactive{background:#f8d7da;color:#721c24}.activity-monitor{display:none}.activity-warning{background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;color:#856404;font-size:.9rem;margin-top:1rem;padding:.75rem}.exam-body{display:flex;flex:1 1;overflow:hidden}.question-navigation{background:#fff;border-right:1px solid #eee;overflow-y:auto;padding:20px;width:250px}.question-navigation h3{color:#333;font-size:16px;margin-bottom:15px;margin-top:0}.section-navigation{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.section-button{background:#fff;border:2px solid #ddd;border-radius:6px;cursor:pointer;padding:12px;text-align:left;transition:all .2s}.section-button:hover{background:#e3f2fd;border-color:#1976d2}.section-button.active{background:#1976d2;border-color:#1976d2;color:#fff}.section-button.completed{background:#e8f5e9;border-color:#388e3c}.section-button.active.completed{background:#1976d2;border-color:#1976d2;color:#fff}.section-button-title{font-size:14px;font-weight:600;margin-bottom:4px}.section-button-info{font-size:12px;opacity:.8}.current-section-header{border-bottom:2px solid #eee;margin-bottom:20px;padding-bottom:15px}.current-section-header h2{color:#1976d2;font-size:20px;margin:0 0 8px}.section-description{color:#666;font-size:14px;margin:0}.required-badge{background:#ff9800;border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:500;margin-bottom:10px;padding:4px 8px}.question-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(5,1fr);margin-bottom:20px}.question-number{background:#fff;border:2px solid #ddd;border-radius:4px;cursor:pointer;font-weight:500;height:40px;transition:all .2s;width:40px}.question-number:hover{background:#e3f2fd;border-color:#1976d2}.question-number.active{background:#1976d2;border-color:#1976d2;color:#fff}.question-number.answered{background:#e8f5e9;border-color:#388e3c}.question-number.active.answered{background:#1976d2;border-color:#1976d2}.question-number.marked-for-review{background:#fff3e0;border:2px solid #ff9800;position:relative}.question-number.marked-for-review:after{align-items:center;background:#ff9800;border:2px solid #fff;border-radius:50%;color:#fff;content:"✓";display:flex;font-size:11px;font-weight:700;height:18px;justify-content:center;position:absolute;right:-6px;top:-6px;width:18px}.question-number.active.marked-for-review{background:#1976d2;border-color:#1976d2}.question-number.active.marked-for-review:after{background:#ff9800}.navigation-legend{border-top:1px solid #eee;margin-bottom:15px;padding-top:15px}.legend-item{align-items:center;color:#666;display:flex;font-size:12px;gap:8px;margin-bottom:8px}.legend-box{border:2px solid #ddd;border-radius:4px;display:inline-block;height:20px;width:20px}.legend-box.active{background:#1976d2;border-color:#1976d2}.legend-box.answered{background:#e8f5e9;border-color:#388e3c}.legend-box.marked-for-review{background:#fff3e0;border-color:#ff9800;position:relative}.legend-box.marked-for-review:after{color:#ff9800;content:"✓";font-size:12px;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.progress-info{border-top:1px solid #eee;color:#666;font-size:14px;padding-top:15px}.question-area{background:#fff;flex:1 1;overflow-y:auto;padding:30px}.question-container{margin:0 auto;max-width:900px}.question-header{justify-content:space-between;margin-bottom:15px}.question-header,.question-header-actions{align-items:center;display:flex;gap:12px}.question-number-badge{background:#e3f2fd;color:#1976d2}.question-marks,.question-number-badge{border-radius:12px;font-size:14px;font-weight:500;padding:6px 12px}.question-marks{background:#fff3e0;color:#f57c00}.btn-mark-review{background-color:#ff9800;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .2s;white-space:nowrap}.btn-mark-review:hover{background-color:#f57c00}.btn-mark-review.marked{background-color:#ff6f00;font-weight:600}.btn-mark-review.marked:hover{background-color:#e65100}.question-section{color:#666;font-size:14px;margin-bottom:15px}.question-text{color:#333;font-size:18px;line-height:1.6;padding:20px}.question-attachments,.question-text{background:#f9f9f9;border-left:4px solid #1976d2;border-radius:8px;margin-bottom:25px}.question-attachments{padding:1rem}.question-image{margin-top:1rem}.question-image img{border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:100%}.option-attachments{background:#f5f5f5;border-radius:8px;margin-bottom:25px;padding:1rem}.option-attachment{background:#fff;border-radius:4px;margin-bottom:1rem;padding:.75rem}.option-attachment:last-child{margin-bottom:0}.attachment-download{margin-top:1rem}.download-link{background:#e3f2fd;border-radius:4px;color:#1976d2;display:inline-block;padding:8px 16px;text-decoration:none;transition:background-color .3s}.download-link:hover{background:#bbdefb}.answer-area{margin-bottom:30px}.options-list{display:flex;flex-direction:column;gap:12px}.option-radio-wrapper{align-items:center;display:flex;gap:8px}.option-checkbox,.option-radio{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex:1 1;gap:12px;padding:12px;transition:all .2s}.btn-clear-option{background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s;white-space:nowrap}.btn-clear-option:hover{background-color:#d32f2f}.btn-clear-option:active{background-color:#b71c1c}.option-checkbox:hover,.option-radio:hover{background:#f5f5f5;border-color:#1976d2}.option-checkbox input[type=checkbox]:checked+span,.option-checkbox input[type=checkbox]:checked~span,.option-radio input[type=radio]:checked+span,.option-radio input[type=radio]:checked~span{color:#1976d2;font-weight:600}.option-checkbox:has(input[type=checkbox]:checked),.option-radio:has(input[type=radio]:checked){background:#e3f2fd;border-color:#1976d2}.numeric-input{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;max-width:300px;padding:12px;width:100%}.numeric-input:focus{border-color:#1976d2;outline:none}.text-answer{border:2px solid #e0e0e0;border-radius:8px;font-family:Courier New,monospace;font-size:14px;padding:12px;resize:vertical;width:100%}.text-answer:focus{border-color:#1976d2;outline:none}.exam-footer{background:#fff;box-shadow:0 -2px 4px #0000001a;display:flex;justify-content:center;padding:15px 20px}.btn-submit{font-size:16px;font-weight:600;padding:12px 32px}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.modal-content{max-width:500px}.modal-content p{color:#666;margin-bottom:10px}.modal-actions{margin-top:20px}.tab-switching-warning{background-color:#fff3e0;border-left:4px solid #f57c00;border-radius:4px;margin:20px 0;padding:15px}.warning-text{color:#e65100;font-size:14px;font-weight:500;margin:0 0 15px}.form-group{margin-bottom:15px}.form-textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;min-height:100px;padding:10px 12px;resize:vertical;width:100%}.form-textarea:focus{border-color:#1976d2;outline:none}.form-help{color:#666;display:block;font-size:12px;margin-top:5px}.btn-danger{background-color:#d32f2f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.btn-danger:hover:not(:disabled){background-color:#c62828}.btn-danger:disabled{cursor:not-allowed;opacity:.6}.error,.loading{color:#666;padding:40px;text-align:center}.error{color:#c62828}.mobile-navigation-toggle{display:none}.mobile-toggle-button{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:12px 16px;transition:all .2s;width:100%}.mobile-toggle-button:hover{background:#e8e8e8}.toggle-icon{color:#666;display:inline-block;font-size:12px;transition:transform .2s}.toggle-icon.expanded{transform:rotate(90deg)}.navigation-content{display:block}@media (max-width:768px){.exam-body{flex-direction:column}.mobile-navigation-toggle{display:block;margin-bottom:10px}.question-navigation{border-bottom:1px solid #eee;border-right:none;padding:10px;width:100%}.navigation-content{display:none;max-height:0;overflow:hidden;transition:max-height .3s ease-out}.navigation-content.expanded{display:block;max-height:70vh;overflow-y:auto}.question-area{padding:20px;width:100%}.modal-overlay{align-items:flex-start;padding-bottom:20px;padding-top:80px}.modal-content{margin-top:0;max-height:calc(100vh - 100px);overflow-y:auto}}.exam-preview-mode{position:relative}.preview-header-bar{align-items:center;background:#fff3cd;border-bottom:2px solid #ffc107;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.btn-close-preview{align-items:center;background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.btn-close-preview:hover{background-color:#5a6268}.preview-badge{background-color:#ffc107;border-radius:4px;color:#856404;font-size:12px;font-weight:600;letter-spacing:.5px;padding:6px 12px;text-transform:uppercase}.exam-footer .btn-submit:disabled{background-color:#6c757d;cursor:not-allowed;opacity:.5}.section-description{white-space:pre-wrap}.required-indicator{color:#dc3545;font-size:14px;font-weight:600}.question-navigation-buttons{border-top:1px solid #eee;display:flex;gap:10px;justify-content:space-between;margin-top:30px;padding-top:20px}.question-navigation-buttons button{margin:0 5px}@media (max-width:768px){.exam-body{flex-direction:column}.question-navigation{border-bottom:1px solid #eee;border-right:none;max-height:50vh;overflow-y:auto;width:100%}.question-area{padding:20px;width:100%}}.info-item label{font-size:12px;text-transform:uppercase}.role-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.form-group label{margin-bottom:5px}.form-actions{border-top:1px solid #eee;margin-top:30px;padding-top:20px}.dashboard-home{max-width:1200px}.dashboard-home h1{color:#2c3e50;margin-bottom:2rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.stat-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover{background:#f8f9fa;box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.stat-card-active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card-active .stat-content h3{color:#ffffffe6}.stat-card-active .stat-value{color:#fff}.stat-icon{font-size:2.5rem}.stat-content{flex:1 1;text-align:center}.stat-content h3{color:#7f8c8d;font-size:.9rem;font-weight:400;margin:0 0 .5rem;text-align:center}.stat-value{color:#2c3e50;font-size:2rem;font-weight:700;margin:0;text-align:center}.stat-description{color:#95a5a6;font-size:.75rem;font-style:italic;margin:.25rem 0 0;text-align:center}.loading{color:#7f8c8d}@media (max-width:768px){.stats-grid{grid-template-columns:1fr}}.available-exams{padding:20px}.available-exams h1{color:#333;margin-bottom:30px}.no-exams{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-exams p{color:#666;font-size:18px}.exams-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.exam-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:24px;transition:transform .2s,box-shadow .2s}.exam-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.exam-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.exam-header{margin-bottom:15px}.exam-header h3{color:#333;font-size:1.25rem;line-height:1.4;margin:0}.org-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;font-weight:500}.org-badge,.status-badge{display:inline-block;font-size:11px;padding:4px 10px;white-space:nowrap}.ended-badge{background:#ffebee;color:#c62828}.in-progress-badge{background:#fff3e0;color:#e65100}.submitted-badge{background:#e8f5e9;color:#2e7d32}.exam-card.exam-ended{border:1px solid #ffcdd2;opacity:.85}.btn-secondary{font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s;width:100%}.btn-view-results{margin-top:10px}.exam-description{color:#666;line-height:1.5;margin-bottom:15px}.exam-details{margin-bottom:20px}.detail-item{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:8px 0}.detail-item:last-child{border-bottom:none}.detail-label{color:#666;font-size:14px}.detail-value{color:#333;font-size:14px;font-weight:500}.btn-primary{transition:background-color .2s;width:100%}.exam-actions{display:flex;flex-direction:column;gap:10px;margin-top:15px}.btn-pay{background-color:#ff9800;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s;width:100%}.btn-pay:hover:not(:disabled){background-color:#f57c00}.btn-pay:disabled{background-color:#ccc;cursor:not-allowed}.btn-start{margin-top:0}.results-page{padding:20px}.results-page h1{color:#333;margin-bottom:30px}.no-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-results p{color:#666;font-size:18px}table thead{background-color:#f5f5f5}table th{border-bottom:2px solid #ddd;color:#333;font-weight:600;padding:12px;text-align:left}table td{border-bottom:1px solid #eee;padding:12px}table tbody tr:hover{background-color:#f9f9f9}.marks{color:#333}.marks,.percentage{font-size:16px;font-weight:600}.percentage.pass{color:#388e3c}.percentage.fail{color:#c62828}.pending{color:#666;font-style:italic}.status-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.status-completed{background-color:#e8f5e9;color:#388e3c}.status-in_progress{background-color:#fff3e0;color:#f57c00}.status-submitted{background-color:#e3f2fd;color:#1976d2}.eval-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px;text-transform:capitalize}.eval-pending{background-color:#fff3e0;color:#f57c00}.eval-in_progress{background-color:#e3f2fd;color:#1976d2}.eval-completed{background-color:#e8f5e9;color:#388e3c}.exam-info{display:flex;flex-direction:column;gap:4px}.exam-info strong{color:#333;font-size:14px}.exam-info span{color:#666;font-size:12px}.hidden-score{color:#999;cursor:help;font-style:italic}.reveal-info{background-color:#fff3e0;border-left:4px solid #f57c00;border-radius:4px;margin-top:20px;padding:15px 20px}.reveal-info p{color:#e65100;font-size:14px;margin:0}.messages-page{padding:20px}.messages-page h1{color:#333;margin-bottom:30px}.message-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.message-filters .filter-select,.message-filters input[type=date]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px}.message-header-left{align-items:center;display:flex;gap:10px}.btn-link{background:none;border:none;color:#1976d2;cursor:pointer;font-size:12px;padding:0;text-decoration:underline}.btn-link:hover{color:#1565c0}.btn-sm{font-size:13px;padding:6px 12px}.read-toggle-btn{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:4px 12px;transition:all .2s}.read-toggle-btn.read{background:#f0fff4;border-color:#28a745;color:#28a745}.read-toggle-btn.read:hover{background:#e0ffe0;border-color:#218838}.read-toggle-btn.unread{background:#fffbf0;border-color:#ffc107;color:#ffc107}.read-toggle-btn.unread:hover{background:#fff8e0;border-color:#e0a800}.messages-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.no-messages{padding:60px 20px;text-align:center}.no-messages p{color:#666;font-size:18px}.message-item{border-bottom:1px solid #eee;cursor:pointer;padding:15px 20px;transition:background .2s}.message-item:hover{background:#f9f9f9}.message-item.unread{background:#e3f2fd;font-weight:500}.message-header{display:flex;justify-content:space-between;margin-bottom:5px}.message-date{color:#666;font-size:12px}.message-subject{color:#333;font-weight:600;margin-bottom:5px}.message-preview{color:#666;font-size:14px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:8px;max-height:90vh;max-width:700px;overflow-y:auto;padding:30px;width:90%}.modal-content h2{color:#333;margin-bottom:15px;margin-top:0}.message-meta{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:15px}.message-meta p{color:#666;font-size:14px;margin:5px 0}.message-body{color:#333;line-height:1.6;margin-bottom:20px;white-space:pre-wrap}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.profile-page{padding:20px}.profile-page h1{color:#333;margin-bottom:30px}.profile-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;max-width:600px;overflow-x:hidden;padding:30px;width:100%}.profile-card form{box-sizing:border-box;margin:0;padding:0;width:100%}.profile-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.profile-header .btn-primary{flex-shrink:0;white-space:nowrap}.profile-header h2{color:#333;margin:0}.profile-info{gap:20px}.info-item,.profile-info{display:flex;flex-direction:column}.info-item{gap:5px}.info-item label{color:#666;font-size:14px;font-weight:500}.info-item span{color:#333;font-size:16px}.profile-form{gap:20px}.form-group,.profile-form{box-sizing:border-box;display:flex;flex-direction:column;width:100%}.form-group{gap:5px}.form-group input,.form-group label{font-size:14px}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-actions{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-top:10px;width:100%}.form-actions .btn-primary,.form-actions .btn-secondary{font-size:13px;padding:8px 14px;white-space:nowrap}@media (max-width:480px){.form-actions{flex-wrap:wrap;justify-content:stretch}.form-actions .btn-primary,.form-actions .btn-secondary{flex:1 1;min-width:0}}.btn-primary,.btn-secondary{font-size:14px;padding:10px 20px}.btn-secondary{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer}.btn-secondary:hover{background-color:#5a6268}.batches-page{padding:20px}.batches-page h1{color:#333;margin-bottom:10px}.page-description{color:#666;font-size:14px;margin:0 0 30px}.no-batches{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:60px 20px;text-align:center}.no-batches p{color:#666;font-size:18px;margin-bottom:10px}.hint{color:#999!important;font-size:14px!important}.batches-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.batch-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;transition:transform .2s,box-shadow .2s}.batch-card:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-2px)}.batch-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.batch-header h3{color:#333;margin:0}.organization-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;font-size:12px;font-weight:500;padding:4px 12px}.batch-description{color:#666;font-size:14px;line-height:1.6;margin:0}.loading{padding:40px}.coins-page{padding:20px}.page-header{margin-bottom:20px}.page-header h1{color:#2c3e50;font-size:clamp(1.1rem,2.5vw,1.75rem)}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin-bottom:20px;padding:15px}.success-message p{margin:5px 0}.tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;margin-bottom:30px}.tabs button{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s}.tabs button:hover{color:#1976d2}.tabs button.active{border-bottom-color:#1976d2;color:#1976d2}.balance-section{padding:20px 0}.campaign-banners{margin-bottom:30px}.campaign-banner{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;margin-bottom:15px;padding:20px}.campaign-content{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.campaign-content strong{font-size:1.1rem}.campaign-details{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.campaign-link-btn{background:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:6px 12px;transition:background .3s}.campaign-link-btn:hover{background:#ffffff4d}.balance-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.balance-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px;text-align:center}.balance-card h2{color:#666;font-size:1.1rem;font-weight:500;margin:0 0 15px}.balance-amount{color:#1976d2;font-size:2.5rem;font-weight:700;margin:10px 0}.balance-label{color:#999;font-size:.9rem;margin:0}.recharge-section{padding:20px 0}.recharge-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:600px;padding:30px}.recharge-card h2{margin-bottom:10px;margin-top:0}.info-text{color:#666;font-size:.9rem}.form-group,.info-text{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.form-group input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:16px;padding:10px;width:100%}.discount-info{background-color:#e8f5e9;border:1px solid #c8e6c9;border-radius:4px;margin-top:10px;padding:15px}.discount-info p{color:#2e7d32;margin:5px 0}.final-amount{font-size:1.1rem;font-weight:600}.available-offers{border-top:1px solid #e0e0e0;margin-top:30px;padding-top:30px}.available-offers h3{margin-bottom:15px}.offers-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.offer-card{background:#f5f5f5;border-radius:4px;padding:15px;text-align:center}.offer-card h4{color:#1976d2;margin:0 0 10px}.offer-card code{background:#fff;border-radius:4px;color:#1976d2;font-weight:600;padding:4px 8px}.offer-card p{color:#666;font-size:.9rem;margin:5px 0}.btn-primary{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .3s}.btn-primary:hover:not(:disabled){background-color:#1565c0}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-large{font-size:18px;padding:15px;width:100%}.history-section{padding:20px 0}.table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;max-width:100%;overflow-x:auto!important;overflow-y:visible!important;width:100%}table{border-collapse:collapse;min-width:800px;width:100%}thead{background-color:#f5f5f5}td,th{border-bottom:1px solid #e0e0e0;padding:12px;text-align:left}th{color:#333;font-weight:600}tbody tr:hover{background-color:#f9f9f9}.type-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px;text-transform:capitalize}.type-recharge,.type-student-recharge{background-color:#e3f2fd;color:#1976d2}.type-student-usage,.type-usage{background-color:#fff3e0;color:#e65100}.type-admin-credit,.type-student-admin-credit{background-color:#e8f5e9;color:#2e7d32}.type-admin-debit,.type-student-admin-debit{background-color:#ffebee;color:#c62828}.positive{color:#2e7d32;font-weight:600}.negative{color:#c62828;font-weight:600}.no-data{color:#999;padding:40px;text-align:center}.offers-section{padding:20px 0}.offers-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.offer-card-large{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.offer-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;justify-content:space-between;padding:20px}.offer-header h3{margin:0}.offer-badge{background:#fff3;border-radius:12px;font-size:.85rem;padding:4px 12px}.offer-body{padding:20px}.offer-code-section{margin-bottom:15px}.offer-code-section label{color:#666;display:block;font-weight:500;margin-bottom:5px}.offer-code{background:#f5f5f5;border-radius:4px;color:#1976d2;display:block;font-size:1.2rem;font-weight:600;padding:10px;text-align:center}.offer-details{margin-bottom:20px}.offer-details p{color:#666;margin:8px 0}.no-offers{color:#999;padding:40px;text-align:center}.settings-page{max-width:1400px;padding:2rem}.page-header{border-bottom:2px solid #e0e0e0;margin-bottom:2rem;padding-bottom:1rem}.page-header h1{word-wrap:break-word;color:#1a1a1a;font-size:clamp(1.2rem,3vw,2rem);font-weight:600;-webkit-hyphens:auto;hyphens:auto;line-height:1.4;margin:0;max-width:100%;overflow-wrap:break-word}.settings-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.loading{color:#666;padding:2rem;text-align:center}