:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400}body{margin:0;padding:0;width:100vw;max-width:100%;min-height:100vh;background-color:#fff;color:#333;overflow-x:hidden;box-sizing:border-box}#root{width:100%;min-height:100vh;box-sizing:border-box}html{width:100%;overflow-x:hidden;box-sizing:border-box}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:2.4em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.page-container{min-height:100vh;background:#f8fafc;padding:20px 30px 30px}.page-content{max-width:1200px;margin:0 auto;background:#f7f8fc;border-radius:16px;min-height:calc(100vh - 160px);box-shadow:0 4px 20px #0000001a;padding:20px}.content-header{color:#333;font-size:28px;margin-bottom:12px;font-weight:700;line-height:1.2;text-align:left;padding:0;margin-top:0}.back-button{background:none;border:none;color:#667eea;font-size:14px;cursor:pointer;padding:8px 12px;margin-bottom:16px;border-radius:6px;transition:all .2s ease}.back-button:hover{background:#f7f8fc;color:#5a67d8}.test-details-header{margin-bottom:20px}.loading-progress{text-align:center;padding:40px 20px}.loading-progress .loading-spinner{display:inline-block;width:32px;height:32px;border:3px solid #f3f4f6;border-radius:50%;border-top-color:#667eea;animation:spin 1s ease-in-out infinite;margin-bottom:16px}.test-metrics-dashboard{display:flex;justify-content:center;gap:40px;margin-bottom:40px;padding:0 40px}.chart-container{text-align:center}.pie-chart{width:85px;height:85px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 16px #0000001f,0 2px 4px #00000014;cursor:pointer;margin-bottom:8px}.pie-label{font-size:10px;font-weight:600;color:#6b7280;margin-top:2px;text-transform:uppercase;letter-spacing:.5px}.chart-status{font-size:12px;color:#6b7280;font-weight:500;margin-top:4px}@media (max-width: 768px){.test-metrics-dashboard{gap:20px;padding:0 20px;flex-wrap:wrap}.pie-chart{width:70px;height:70px}.pie-center{width:50px;height:50px}.pie-percentage{font-size:12px}.pie-label{font-size:8px}}*,*:before,*:after{word-wrap:break-word!important;overflow-wrap:break-word!important;-webkit-hyphens:auto!important;hyphens:auto!important}.page-container,.questionnaire-container,.test-quiz-container,.students-page-content,.pod-content,.payment-container,.game-container,.main-content,.content-wrapper{max-width:100vw!important;overflow-x:hidden!important}h1,h2,h3,h4,h5,h6,p,span,div,button,input,textarea,.question-text,.option-text,.test-title,.student-name,.test-name,.description{max-width:100%!important}@media (max-width: 768px){.page-container{padding:0 10px!important;margin:0!important}.page-content,.questionnaire-content,.students-page-content,.pod-content,.test-content{padding:15px!important;margin:0!important;border-radius:8px!important;width:100%!important;max-width:100%!important}.quiz-layout,.student-progress-grid,.pods-grid,.dashboard-grid{flex-direction:column!important;gap:15px!important}.quiz-sidebar,.progress-sidebar,.navigation-sidebar{width:100%!important;min-width:100%!important;max-width:100%!important;position:static!important;order:-1!important;margin:0 0 15px!important;padding:12px!important}.student-card,.pod-card,.test-card,.question-card,.result-card,.summary-card{width:100%!important;max-width:100%!important;padding:15px!important;margin:0 0 15px!important}.option,.quiz-option,.answer-option,.choice-item{width:100%!important;max-width:100%!important;padding:12px!important;margin:0 0 8px!important;font-size:.9rem!important;line-height:1.4!important;display:flex!important;align-items:flex-start!important;text-align:left!important}.nav-button,.action-button,.submit-button,.primary-button,.secondary-button{width:100%!important;max-width:100%!important;padding:14px 20px!important;font-size:1rem!important;margin:0 0 10px!important;min-height:48px!important;touch-action:manipulation!important;box-sizing:border-box!important}.students-grid,.pods-grid,.tests-grid,.results-grid{grid-template-columns:1fr!important;gap:15px!important}.question-grid,.navigation-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))!important;gap:8px!important}h1{font-size:1.5rem!important;line-height:1.2!important;margin:0 0 15px!important}h2{font-size:1.3rem!important;line-height:1.3!important;margin:0 0 12px!important}h3{font-size:1.1rem!important;line-height:1.3!important;margin:0 0 10px!important}.top-navigation,.bottom-navigation,.quiz-navigation{padding:10px!important;margin:0 0 15px!important}.nav-center,.navigation-center{flex-direction:column!important;gap:10px!important;width:100%!important}.progress-summary,.score-details,.stats-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important;margin:15px 0!important}.progress-item,.stat-item,.score-item{padding:12px 8px!important;font-size:.85rem!important;text-align:center!important}.question-image img,.option-image,.student-avatar img,.content-image{max-width:100%!important;height:auto!important;border-radius:8px!important}.action-buttons,.student-actions,.test-actions,.button-group{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important}.content-header,.page-header,.section-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;text-align:left!important}.modal,.notification-modal,.dialog{width:95%!important;max-width:95%!important;margin:10px auto!important;padding:20px!important}}@media (max-width: 480px){.page-content,.questionnaire-content,.quiz-content{padding:10px!important}.student-card,.pod-card,.question-card{padding:12px!important}.option,.quiz-option{padding:10px!important;font-size:.85rem!important}.nav-button,.action-button{padding:12px 16px!important;font-size:.9rem!important}h1{font-size:1.3rem!important}h2{font-size:1.1rem!important}.progress-summary,.score-details{grid-template-columns:1fr!important}.question-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr))!important;gap:4px!important}.question-nav-btn{width:36px!important;height:36px!important;font-size:.75rem!important}}@media (max-width: 768px) and (orientation: landscape){.quiz-layout{flex-direction:row!important;gap:15px!important}.quiz-sidebar{width:200px!important;min-width:200px!important;order:2!important;margin:0!important}.students-grid,.pods-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){button,.nav-button,.option,.quiz-option,.question-nav-btn,.action-button,.interactive-element{min-height:44px!important;min-width:44px!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(0,0,0,.1)!important}button:focus,input:focus,textarea:focus,.focusable:focus{outline:2px solid #667eea!important;outline-offset:2px!important}}.no-overflow,.quiz-content,.question-content,.option-content{overflow-wrap:break-word!important;word-wrap:break-word!important;-webkit-hyphens:auto!important;hyphens:auto!important}@media (max-width: 768px){.question-text,.option-text,.explanation,.content-text{line-height:1.5!important;font-size:1rem!important}.small-text,.meta-text,.helper-text{font-size:.9rem!important;line-height:1.4!important}}.email-auth-container{max-width:400px;margin:0 auto;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a}.email-auth-header{text-align:center;margin-bottom:24px}.email-auth-header h2{margin:0 0 8px;color:#333;font-size:24px;font-weight:600}.email-auth-header p{margin:0;color:#666;font-size:14px;line-height:1.4}.email-auth-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:#333}.form-group input{padding:12px 16px;border:2px solid #e1e5e9;border-radius:6px;font-size:16px;transition:border-color .2s,box-shadow .2s;background:#fff}.form-group input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.form-group input.error{border-color:#dc3545}.form-group input.error:focus{box-shadow:0 0 0 3px #dc35451a}.field-error{font-size:12px;color:#dc3545;margin-top:-2px}.error-message{padding:12px 16px;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:6px;font-size:14px;text-align:center;margin-bottom:8px}.submit-button{padding:12px 24px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s,transform .1s;margin-top:8px}.submit-button:hover:not(:disabled){background:#3367d6;transform:translateY(-1px)}.submit-button:disabled{background:#9ca3af;cursor:not-allowed;transform:none}.form-footer{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:8px}.link-button{background:none;border:none;color:#4285f4;cursor:pointer;font-size:14px;text-decoration:underline;padding:0;transition:color .2s}.link-button:hover{color:#3367d6}.toggle-mode{margin:0;font-size:14px;color:#666;text-align:center}.toggle-mode .link-button{font-weight:500;margin-left:4px}.back-to-social-button{width:100%;padding:12px;background:#f8f9fa;border:2px solid #e9ecef;border-radius:6px;color:#6c757d;font-size:14px;cursor:pointer;transition:all .2s;margin-top:16px}.back-to-social-button:hover{background:#e9ecef;color:#495057}.email-exists-prompt{text-align:center;padding:24px}.prompt-icon{font-size:48px;margin-bottom:16px}.email-exists-prompt h3{margin:0 0 12px;color:#333;font-size:20px;font-weight:600}.email-exists-prompt p{margin:0 0 8px;color:#666;font-size:14px;line-height:1.4}.email-exists-prompt p:last-of-type{margin-bottom:24px;font-weight:500}.prompt-actions{display:flex;flex-direction:column;gap:12px}.primary-action-button{padding:12px 24px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s}.primary-action-button:hover{background:#3367d6}.secondary-action-button{padding:12px 24px;background:#f8f9fa;color:#6c757d;border:2px solid #e9ecef;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-action-button:hover{background:#e9ecef;color:#495057}.reset-success{text-align:center;padding:20px}.success-icon{width:60px;height:60px;border-radius:50%;background:#28a745;color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;margin:0 auto 16px}.reset-success h3{margin:0 0 8px;color:#333;font-size:20px}.reset-success p{margin:0 0 20px;color:#666;font-size:14px;line-height:1.4}.back-to-login-button{padding:10px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.back-to-login-button:hover{background:#3367d6}@media (max-width: 480px){.email-auth-container{margin:0;padding:16px;border-radius:0;box-shadow:none}.email-auth-header h2{font-size:20px}.form-group input{font-size:16px;padding:14px 16px}.submit-button{padding:14px 24px;font-size:16px}.email-exists-prompt{padding:16px}.prompt-icon{font-size:40px;margin-bottom:12px}.email-exists-prompt h3{font-size:18px}.primary-action-button,.secondary-action-button{padding:14px 20px;font-size:16px}}.submit-button:focus,.link-button:focus,.back-to-social-button:focus,.back-to-login-button:focus,.primary-action-button:focus,.secondary-action-button:focus{outline:2px solid #4285f4;outline-offset:2px}.submit-button:disabled:after{content:"";display:inline-block;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;margin-left:8px}@keyframes spin{to{transform:rotate(360deg)}}.signin-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.signin-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:400px;text-align:center}.signin-header h1{color:#333;margin-bottom:8px;font-size:28px;font-weight:600}.signin-header p{color:#666;margin-bottom:32px;font-size:16px}.error-message{background-color:#fee;border:1px solid #fcc;color:#c66;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px}.signin-buttons{display:flex;flex-direction:column;gap:16px}.signin-button{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 20px;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.signin-button:disabled{opacity:.6;cursor:not-allowed}.google-button{background-color:#fff;color:#333;border:2px solid #dadce0}.google-button:hover:not(:disabled){background-color:#f8f9fa;box-shadow:0 2px 8px #0000001a}.microsoft-button{background-color:#00bcf2;color:#fff}.microsoft-button:hover:not(:disabled){background-color:#00a3d6;box-shadow:0 2px 8px #00bcf24d}.google-icon,.microsoft-icon{width:20px;height:20px;flex-shrink:0}.signin-button:active{transform:translateY(1px)}.email-button{background-color:#6c757d;color:#fff}.email-button:hover:not(:disabled){background-color:#5a6268;box-shadow:0 2px 8px #6c757d4d}.email-icon{width:20px;height:20px;flex-shrink:0}.signin-divider{position:relative;text-align:center;margin:8px 0}.signin-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e1e5e9}.signin-divider span{background:#fff;color:#6c757d;padding:0 16px;font-size:14px;position:relative}@media (max-width: 480px){.signin-card{padding:24px;margin:16px}.signin-header h1{font-size:24px}.signin-button{font-size:14px;padding:12px 16px}}.notification-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2000;opacity:0;transition:opacity .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.notification-overlay.visible{opacity:1}.notification-modal{background:#f7f8fc;border-radius:16px;box-shadow:0 24px 48px #0003;max-width:450px;width:90%;max-height:80vh;overflow:hidden;transform:translateY(20px) scale(.9);transition:all .3s cubic-bezier(.34,1.56,.64,1);border:1px solid rgba(255,255,255,.2)}.notification-modal.visible{transform:translateY(0) scale(1)}.notification-modal-confirm{box-shadow:0 24px 48px #0003,0 0 0 1px #667eea1a}.notification-modal-warning{box-shadow:0 24px 48px #0003,0 0 0 1px #ffc10733}.notification-modal-success{box-shadow:0 24px 48px #0003,0 0 0 1px #28a74533}.notification-header{display:flex;align-items:center;gap:12px;padding:24px 24px 16px;border-bottom:1px solid #f0f0f0;position:relative}.notification-icon{font-size:24px;flex-shrink:0}.notification-title{margin:0;font-size:20px;font-weight:600;color:#333;flex:1}.notification-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:#999;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.notification-close:hover{background:#f5f5f5;color:#666}.notification-content{padding:16px 24px 24px}.notification-message{margin:0;font-size:16px;line-height:1.6;color:#555;white-space:pre-line}.notification-message br{margin:8px 0}.notification-actions{display:flex;justify-content:flex-end;gap:12px;padding:0 24px 24px}.notification-button{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;min-width:80px}.notification-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.notification-button.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.notification-button.confirm{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.notification-button.confirm:hover{transform:translateY(-2px);box-shadow:0 6px 20px #28a7454d}.notification-button.cancel{background:#f8f9fa;color:#6c757d;border:2px solid #e9ecef}.notification-button.cancel:hover{background:#e9ecef;color:#495057}.notification-modal-success .notification-header{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724}.notification-modal-warning .notification-header{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404}.notification-modal-error .notification-header{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24}.notification-modal-confirm .notification-header{background:linear-gradient(135deg,#d1ecf1,#bee5eb);color:#0c5460}.notification-modal-info .notification-header{background:linear-gradient(135deg,#e2e3e5,#d6d8db);color:#383d41}@media (max-width: 768px){.notification-modal{width:95%;margin:20px}.notification-header,.notification-content,.notification-actions{padding-left:20px;padding-right:20px}.notification-actions{flex-direction:column}.notification-button{width:100%}}.notification-modal.auto-close:after{content:"";position:absolute;bottom:0;left:0;height:3px;background:linear-gradient(135deg,#667eea,#764ba2);animation:progress-bar 3s linear forwards}@keyframes progress-bar{0%{width:100%}to{width:0%}}.app-header{position:fixed;top:0;left:0;right:0;z-index:1000;width:100%;max-width:100%;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 20px #0000001a;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;color:#fff!important;box-sizing:border-box}.app-header *{color:#fff!important}.app-header-left{display:flex;align-items:center;gap:20px;flex:1}.header-back-button{background:#667eea1a;color:#667eea;border:1px solid rgba(102,126,234,.2);border-radius:8px;padding:12px 20px;font-size:14px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 4px #0000000d}.header-back-button:hover{background:#667eea26;border-color:#667eea4d;transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.mobile-menu-button{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;width:46px;height:46px;border-radius:8px;cursor:pointer;font-size:20px;font-weight:600;display:none;align-items:center;justify-content:center;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0003}.mobile-menu-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.profile-image{width:50px;height:50px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0003}.user-details h2{margin:0;color:#fff!important;font-size:20px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.user-email{margin:4px 0 0;color:#ffffffe6!important;font-size:14px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.signout-button{background:#fff3;color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 24px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.signout-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.signout-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){body{padding-top:40px}.app-header .mobile-menu-button{display:flex!important;width:40px;height:40px;font-size:18px;margin-right:12px;flex-shrink:0;align-self:center;position:static;order:0}.app-header{padding:12px 20px;flex-direction:row;align-items:center;min-height:70px;gap:12px;justify-content:space-between}.app-header-left{display:flex;align-items:center;flex:1;min-width:0;gap:12px}.app-header .user-info{display:flex!important;align-items:center!important;gap:12px;flex-direction:row!important;flex-wrap:nowrap!important;min-width:0;width:100%}.app-header .user-info>*{align-self:center}.app-header .user-info .mobile-menu-button{order:0}.app-header .user-info .profile-image{order:1}.app-header .user-info .user-details{order:2;flex:1}.profile-image{width:40px;height:40px;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.user-details h2{font-size:16px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:12px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-back-button{padding:8px 12px;font-size:12px;flex-shrink:0}.signout-button{padding:8px 16px;font-size:12px;margin:0;flex-shrink:0}}@media (max-width: 480px){body{padding-top:35px}.app-header{padding:10px 16px;gap:8px;min-height:60px}.app-header .mobile-menu-button{width:36px;height:36px;font-size:16px;margin-right:8px}.app-header .user-info{gap:8px}.user-details h2{font-size:14px}.user-email{font-size:11px}.profile-image{width:36px;height:36px}.header-back-button{padding:6px 10px;font-size:11px}.signout-button{padding:6px 12px;font-size:11px}}.page-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 20px #0000001a;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;color:#fff}.page-header-left{display:flex;align-items:center;gap:20px;flex:1}.page-header .header-back-button{background:#fff3;border:2px solid rgba(255,255,255,.3);color:#fff;width:46px;height:46px;border-radius:50%;cursor:pointer;font-size:22px;font-weight:700;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.page-header .header-back-button:hover{background:#ffffff4d;border-color:#ffffff80;transform:translate(-3px) translateY(-2px);box-shadow:0 8px 25px #0000004d}.page-header .header-back-button:active{transform:translate(-1px) translateY(-1px);box-shadow:0 2px 8px #0003}.page-title{margin:0;font-size:18px;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.sidebar{position:fixed;left:0;top:80px;height:calc(100vh - 80px);width:280px;background:#f8f9fa;border-right:1px solid #e9ecef;box-shadow:2px 0 10px #0000000d;transition:width .3s ease,transform .3s ease;z-index:100;overflow:hidden;display:flex;flex-direction:column}.sidebar.collapsed{width:70px}.sidebar-header{padding:20px;border-bottom:1px solid #e9ecef;display:flex;align-items:center;justify-content:space-between;min-height:60px;background:#fff}.sidebar.collapsed .sidebar-header{padding:20px 15px;justify-content:center}.collapse-btn{background:none;border:none;font-size:18px;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.collapse-btn:hover{background:#e9ecef}.sidebar-header h3{margin:0;font-size:18px;font-weight:600;color:#2c3e50}.sidebar-nav{flex:1;overflow-y:auto;padding:10px 0}.sidebar-menu{list-style:none;margin:0;padding:0}.sidebar-menu-item{margin:0}.sidebar-menu-btn{width:100%;border:none;background:none;padding:16px 20px;text-align:left;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:16px;color:#495057;position:relative}.sidebar.collapsed .sidebar-menu-btn{padding:16px;justify-content:center;gap:0}.sidebar-menu-btn:hover{background:#e9ecef;color:#2c3e50}.sidebar-menu-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.sidebar-menu-btn.active:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190)}.sidebar-icon{font-size:22px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-text{display:flex;flex-direction:column;gap:2px;overflow:hidden}.sidebar-label{font-size:15px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-description{font-size:12px;opacity:.7;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-menu-btn.active .sidebar-description{opacity:.9}.sidebar-menu-btn.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#fff;border-radius:0 2px 2px 0}.sidebar.collapsed .sidebar-menu-btn.active:before{display:none}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:280px;z-index:1001;box-shadow:4px 0 20px #0000004d;transition:transform .3s ease}.sidebar.collapsed{transform:translate(-100%);width:280px}.sidebar.mobile-open{transform:translate(0)}}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media (max-width: 768px){.sidebar.mobile-open{z-index:1001}}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#dee2e6;border-radius:3px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ced4da}.sidebar.collapsed .sidebar-menu-btn{position:relative}.sidebar.collapsed .sidebar-menu-btn:hover:after{content:attr(title);position:absolute;left:70px;top:50%;transform:translateY(-50%);background:#2c3e50;color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;white-space:nowrap;z-index:1000;box-shadow:0 4px 12px #00000026;pointer-events:none}.sidebar.collapsed .sidebar-menu-btn:hover:before{content:"";position:absolute;left:62px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#2c3e50;z-index:1001;pointer-events:none}.page-content{max-width:1400px;padding:10px 20px}.content-header{text-align:center;margin-bottom:15px}.content-header h1{color:#333;margin-bottom:10px}.content-header p{color:#666;font-size:16px}.questionnaire-info{display:flex;justify-content:center;gap:20px;margin-top:15px;color:#666;font-size:14px}.questionnaire-info span{background:#f0f0f0;padding:8px 12px;border-radius:20px}.generator-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:14px}.form-select,.form-input{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .2s;background:#fff}.form-select:focus,.form-input:focus{outline:none;border-color:#667eea}.form-input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.form-input[type=number]::-webkit-outer-spin-button,.form-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:10px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.submit-button:disabled{background:#f8f9fa!important;color:#495057!important;border:2px solid #dee2e6;opacity:1;cursor:not-allowed;transform:none;font-weight:500}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.error-message{background:#fee;color:#c33;padding:12px;border-radius:8px;border:1px solid #fcc;font-size:14px}.questions-list{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.question-card{background:#fff;border:1px solid #f0f0f0;border-radius:8px;padding:20px;box-shadow:0 1px 4px #0000000d}.question-card h3{color:#667eea;margin-bottom:15px;font-size:18px}.question-text{font-size:16px;color:#333;margin-bottom:15px;font-weight:500}.options-list{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.option{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;background:#f8f9fa;border:1px solid #e9ecef;transition:all .2s}.option.correct{background:#d4edda;border-color:#c3e6cb;color:#155724}.option-label{font-weight:600;min-width:24px}.correct-indicator{margin-left:auto;color:#28a745;font-weight:700;font-size:18px}.explanation{background:#f8f9fa;padding:12px;border-radius:8px;border-left:4px solid #667eea;font-size:14px;color:#555}.questionnaire-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.generate-new-button,.back-to-dashboard-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.generate-new-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.generate-new-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.back-to-dashboard-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;box-shadow:0 4px 12px #667eea4d}.quiz-progress{margin:20px 0;text-align:center}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);transition:width .3s ease}.progress-text{font-size:14px;color:#666;font-weight:500}.question-navigator{background:#f8f9fa;border-radius:12px;padding:20px;margin:20px 0;border:1px solid #e9ecef}.navigator-title{font-weight:600;margin-bottom:15px;color:#333;text-align:center}.filter-indicator{font-size:12px;font-weight:500;color:#667eea;background:#667eea1a;padding:2px 8px;border-radius:12px;margin-left:8px;display:inline-block}.question-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;margin-bottom:15px;max-width:600px;margin-left:auto;margin-right:auto}.question-nav-btn{width:40px;height:40px;border:2px solid #ddd;border-radius:8px;background:#fff;color:#666;font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.question-nav-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.question-nav-btn.answered{background:#28a745;border-color:#1e7e34;color:#fff}.question-nav-btn.skipped{background:#ffc107;border-color:#e0a800;color:#333}.question-nav-btn.current{background:#667eea;border-color:#5a67d8;color:#fff;transform:scale(1.1)}.question-nav-btn.unanswered{background:#fff;border-color:#ddd;color:#666}.navigator-legend{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:12px}.legend-item{display:flex;align-items:center;gap:6px;color:#666}.legend-dot{width:12px;height:12px;border-radius:50%;border:1px solid #ddd}.legend-dot.answered{background:#28a745;border-color:#1e7e34}.legend-dot.skipped{background:#ffc107;border-color:#e0a800}.legend-dot.current{background:#667eea;border-color:#5a67d8}.legend-dot.unanswered{background:#fff;border-color:#ddd}.page-info{font-size:12px;color:#666;background:#e9ecef;padding:4px 8px;border-radius:12px}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:10px;margin:15px 0;flex-wrap:wrap}.page-nav-btn{background:#f8f9fa;border:1px solid #ddd;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;color:#666;transition:all .2s}.page-nav-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.page-nav-btn:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;opacity:1;cursor:not-allowed}.page-numbers{display:flex;gap:4px}.page-number-btn{width:28px;height:28px;border:1px solid #ddd;border-radius:4px;background:#fff;color:#666;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.page-number-btn:hover{background:#f8f9fa;border-color:#adb5bd}.page-number-btn.active{background:#667eea;border-color:#5a67d8;color:#fff}.results-pagination-header{display:flex;justify-content:space-between;align-items:center;margin:20px 0 15px;padding:12px 20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.results-pagination-info{font-size:14px;color:#495057;font-weight:500}.results-page-info{font-size:12px;color:#6c757d;background:#e9ecef;padding:4px 8px;border-radius:12px}.results-pagination-controls{display:flex;justify-content:center;align-items:center;gap:12px;margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.results-pagination-controls.top{margin-top:15px;margin-bottom:25px;background:linear-gradient(135deg,#e9ecef,#f8f9fa);border:2px solid #dee2e6;box-shadow:0 2px 8px #0000001a}.results-pagination-controls.bottom{margin-top:25px;margin-bottom:20px;background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid #e9ecef;box-shadow:0 1px 4px #0000001a}.results-page-nav-btn{background:#fff;border:1px solid #dee2e6;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:#495057;transition:all .2s;box-shadow:0 1px 3px #0000001a}.results-page-nav-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd;transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.results-page-nav-btn:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;opacity:1;cursor:not-allowed;transform:none;box-shadow:0 1px 3px #0000001a}.results-page-numbers{display:flex;gap:6px}.results-page-number-btn{width:32px;height:32px;border:1px solid #dee2e6;border-radius:6px;background:#fff;color:#495057;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0000001a}.results-page-number-btn:hover{background:#f8f9fa;border-color:#adb5bd;transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.results-page-number-btn.active{background:#28a745;border-color:#1e7e34;color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px #28a7454d}.results-filter-header{display:flex;justify-content:space-between;align-items:center;margin:15px 0 10px;padding:12px 20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #dee2e6}.active-filter-info{display:flex;align-items:center;gap:10px}.filter-indicator{font-size:14px;font-weight:600;padding:6px 12px;border-radius:20px;background:#fff;border:1px solid #dee2e6;box-shadow:0 1px 3px #0000001a}.filter-indicator.correct{background:linear-gradient(135deg,#d4edda,#f8fff9);border-color:#28a745;color:#155724}.filter-indicator.incorrect{background:linear-gradient(135deg,#f8d7da,#fff5f5);border-color:#dc3545;color:#721c24}.filter-indicator.skipped{background:linear-gradient(135deg,#fff3cd,#fffbf0);border-color:#ffc107;color:#856404}.filter-indicator.all{background:linear-gradient(135deg,#e9ecef,#f8f9fa);border-color:#6c757d;color:#495057}.skip-button{background:#ffc107;color:#333;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:10px}.skip-button:hover:not(:disabled){background:#e0a800;transform:translateY(-1px)}.skip-button:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;cursor:not-allowed;opacity:1;transform:none}.show-answer-button{background:#17a2b8;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:10px}.show-answer-button:hover{background:#138496;transform:translateY(-1px)}.teacher-preview-controls{display:flex;flex-direction:column;align-items:center;gap:10px}.preview-buttons{display:flex;gap:10px;align-items:center}.preview-buttons .skip-button,.preview-buttons .show-answer-button{margin-top:0}.nav-center{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:5px}.quiz-content{flex:1;min-width:0;order:1}.quiz-option{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:10px;cursor:pointer;transition:all .2s;width:100%;text-align:left;font-size:14px;margin-bottom:8px}.quiz-option:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-1px)}.quiz-option.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.quiz-option.selected .option-label{background:#fff3;color:#fff}.quiz-option.correct-answer{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:2px solid #28a745}.quiz-option.correct-answer .option-label{background:#fff3;color:#fff}.correct-indicator{font-weight:700;margin-left:10px;font-size:14px}.quiz-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding:20px 0;gap:20px}.nav-button{padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;min-width:120px;white-space:nowrap}.prev-button{background:linear-gradient(135deg,#6c757d,#495057);color:#fff;border:2px solid #495057;flex-shrink:0}.prev-button:hover:not(:disabled){background:linear-gradient(135deg,#5a6268,#3d4146);transform:translateY(-2px);box-shadow:0 6px 20px #6c757d4d}.next-button,.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0}.next-button:hover:not(:disabled),.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.nav-button:disabled{background:#f8f9fa!important;color:#495057!important;border:2px solid #adb5bd!important;opacity:1;cursor:not-allowed;transform:none;font-weight:600}.nav-center{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;min-height:50px;justify-content:center}.nav-right{display:flex;gap:10px;align-items:center;flex-shrink:0}.selection-prompt{color:#999;font-style:italic}.score-summary{display:flex;justify-content:center;align-items:center;gap:30px;margin:20px 0;flex-wrap:wrap}.score-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 25px #667eea4d}.score-percentage{font-size:24px;font-weight:700;line-height:1}.score-text{font-size:12px;opacity:.9;margin-top:4px}.score-details{display:flex;gap:20px;flex-wrap:wrap}.score-item.clickable.all{background:linear-gradient(135deg,#e9ecef,#f8f9fa);border:2px solid #6c757d;color:#495057}.results-list{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.result-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d;border-left:4px solid #ddd}.result-card.correct{border-left-color:#28a745;background:linear-gradient(135deg,#d4edda,#f8fff9)}.result-card.incorrect{border-left-color:#dc3545;background:linear-gradient(135deg,#f8d7da,#fff5f5)}.result-card.skipped{border-left-color:#ffc107;background:linear-gradient(135deg,#fff3cd,#fffbf0)}.result-option{margin-bottom:8px;padding:10px;border-radius:8px;border:1px solid #e9ecef}.result-option.correct-answer{background:#d4edda;border-color:#c3e6cb;color:#155724}.result-option.user-answer:not(.correct-answer){background:#f8d7da;border-color:#f5c6cb;color:#721c24}.result-option.user-answer.correct-answer{background:#b8e6b8;border-color:#a5d6a5}.result-status{margin:15px 0 10px;font-weight:600}.skipped-status{color:#e0a800}@media (max-width: 768px){.quiz-navigation{flex-direction:column;gap:15px;align-items:stretch}.nav-center{order:1;margin:10px 0}.prev-button{order:2}.nav-right{order:3;flex-direction:column;gap:10px}.nav-button{width:100%;min-width:unset}.score-circle{width:100px;height:100px}.score-percentage{font-size:20px}.question-grid{grid-template-columns:repeat(auto-fit,minmax(35px,1fr));gap:6px}.question-nav-btn{width:35px;height:35px;font-size:12px}.navigator-legend{gap:10px;font-size:11px}.question-navigator{padding:15px}.navigator-header{flex-direction:column;gap:8px;text-align:center}.pagination-controls{gap:8px}.page-nav-btn{padding:4px 8px;font-size:11px}.page-number-btn{width:24px;height:24px;font-size:11px}.page-numbers{gap:3px}.results-pagination-header{flex-direction:column;gap:8px;text-align:center;padding:10px 15px}.results-pagination-controls{gap:8px;padding:12px}.results-pagination-controls.top{margin-top:10px;margin-bottom:20px;padding:10px}.results-pagination-controls.bottom{margin-top:20px;margin-bottom:15px;padding:10px}.results-page-nav-btn{padding:6px 12px;font-size:12px}.results-page-number-btn{width:28px;height:28px;font-size:12px}.results-page-numbers{gap:4px}.results-filter-header{flex-direction:column;gap:10px;text-align:center;padding:10px 15px}.score-details{gap:10px}.score-item{min-width:70px;padding:12px}.score-number{font-size:20px}.filter-indicator{font-size:13px;padding:5px 10px}}.test-creation-section{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;margin:20px 0;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0000001a}.test-creation-section h3{color:#333;margin:0 0 10px;font-size:1.25rem;font-weight:600}.test-creation-section p{color:#0f172a;margin:0 0 20px;font-size:1rem}.student-context{color:#64748b;font-size:1rem;margin:5px 0 0}.save-as-test-button{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;min-width:200px;justify-content:center}.save-as-test-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #0ea5e94d}.save-as-test-button:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;opacity:1;cursor:not-allowed;transform:none}.save-as-test-button .loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.test-customization-section{background:#f0f9ff;border:2px solid #0ea5e9;border-radius:12px;padding:24px;margin:20px 0}.test-customization-section h3{color:#0369a1;margin:0 0 10px;font-size:1.25rem;text-align:center}.test-customization-section p{color:#0f172a;margin:0 0 24px;font-size:1rem;text-align:center}.test-form{max-width:500px;margin:0 auto}.form-group label{display:block;margin-bottom:8px;color:#374151;font-weight:600;font-size:14px}.test-input,.test-textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .3s ease,box-shadow .3s ease;box-sizing:border-box}.test-input:focus,.test-textarea:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91a}.test-textarea{resize:vertical;min-height:80px}.test-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.create-test-button{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;min-width:140px;justify-content:center}.create-test-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #0ea5e94d}.create-test-button:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;opacity:1;cursor:not-allowed;transform:none}.cancel-test-button{background:#f8fafc;color:#64748b;border:2px solid #e2e8f0;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:140px}.cancel-test-button:hover:not(:disabled){background:#e2e8f0;color:#475569;transform:translateY(-1px)}.cancel-test-button:disabled{background:#e9ecef;color:#6c757d;border:2px solid #dee2e6;opacity:1;cursor:not-allowed;transform:none}.checkbox-group{background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;padding:12px;max-height:200px;overflow-y:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}@media (max-width: 768px){.checkbox-group{gap:8px;padding:12px;flex-direction:row;justify-content:flex-start;align-items:stretch}}@media (max-width: 480px){.checkbox-group{flex-direction:column;gap:10px;padding:14px;align-items:stretch}}.checkbox-item{margin-bottom:0;min-width:auto;flex:0 0 auto}.checkbox-item:last-child{margin-bottom:0}.checkbox-item label{display:flex;align-items:center;cursor:pointer;color:#374151;font-size:.95em;transition:all .2s ease;padding:6px 10px;border-radius:6px;white-space:nowrap;background-color:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;flex-direction:row;gap:8px;width:100%;min-width:0}.checkbox-item label:hover{color:#667eea;background-color:#667eea1a;border-color:#667eea}.checkbox-item input[type=checkbox]{margin:0!important;width:16px;height:16px;accent-color:#667eea;cursor:pointer;flex-shrink:0}.checkbox-item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.checkbox-item label span{display:inline-block;line-height:1.2;vertical-align:middle}.form-group .checkbox-group .checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important}.checkbox-group .checkbox-item label,.form-group .checkbox-group .checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important}.checkbox-group .checkbox-item input[type=checkbox],.form-group .checkbox-group .checkbox-item input[type=checkbox]{margin:0!important;flex-shrink:0!important}.checkbox-group .checkbox-item label span,.form-group .checkbox-group .checkbox-item label span{margin:0!important;flex:1!important}@media (max-width: 768px){.checkbox-item{margin-bottom:0;flex:0 0 auto;width:auto}.checkbox-item label{padding:8px 12px;font-size:.9em;min-height:44px;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:10px!important;white-space:nowrap}.checkbox-item input[type=checkbox]{width:18px!important;height:18px!important;margin:0!important;flex-shrink:0!important;order:1!important}.checkbox-item label span{order:2!important;flex:1!important;margin-left:0!important}}@media (max-width: 480px){.checkbox-item{width:100%;flex:1 1 100%}.checkbox-item label{width:100%!important;padding:12px 14px!important;justify-content:flex-start!important;box-sizing:border-box!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;min-height:48px!important}.checkbox-item input[type=checkbox]{width:20px!important;height:20px!important;margin:0!important;order:1!important}.checkbox-item label span{order:2!important;font-size:.95em!important}.generator-form .form-group .checkbox-group .checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important;gap:12px!important}.generator-form .form-group .checkbox-group .checkbox-item input[type=checkbox]{margin:0!important;flex-shrink:0!important}}.checkbox-group::-webkit-scrollbar{width:6px}.checkbox-group::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.checkbox-group::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.checkbox-group::-webkit-scrollbar-thumb:hover{background:#94a3b8}.quiz-timer{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;margin:0 0 10px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:6px;box-shadow:0 2px 6px #0ea5e91a;transition:all .3s ease}.quiz-timer.timer-caution{background:linear-gradient(135deg,#fefce8,#fef3c7);border-color:#f59e0b;box-shadow:0 4px 12px #f59e0b33}.quiz-timer.timer-warning{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-color:#ef4444;box-shadow:0 4px 12px #ef444433;animation:pulse 1s infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 4px 12px #ef444433}50%{transform:scale(1.02);box-shadow:0 6px 20px #ef44444d}}.timer-icon{font-size:24px;margin-right:4px}.timer-text{display:flex;flex-direction:column;align-items:center;gap:2px}.timer-label{font-size:12px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.timer-value{font-size:28px;font-weight:700;font-family:Courier New,monospace;color:#1e293b;line-height:1}.quiz-timer.timer-caution .timer-value{color:#d97706}.quiz-timer.timer-warning .timer-value{color:#dc2626}.timer-alert{font-size:12px;font-weight:600;color:#dc2626;background:#dc26261a;padding:4px 8px;border-radius:6px;animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.5}}.form-help{display:block;margin-top:4px;font-size:12px;color:#64748b;font-style:italic}.checkbox-container{display:flex;flex-direction:column;gap:8px}.checkbox-container .checkbox-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer;padding:8px;border-radius:6px;transition:background-color .2s ease;background:#fff;border:1px solid #e2e8f0}.checkbox-container .checkbox-item:hover{background-color:#f9fafb;border-color:#667eea}.checkbox-container .checkbox-item input[type=checkbox]{width:16px;height:16px;accent-color:#667eea;cursor:pointer;flex-shrink:0}.checkbox-container .checkbox-item input[type=checkbox]:focus{outline:2px solid #667eea;outline-offset:2px}@media (max-width: 768px){.checkbox-container .checkbox-item{padding:10px 12px;min-height:44px}.checkbox-container .checkbox-item input[type=checkbox]{width:18px;height:18px}}.homework-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-bottom:20px}.homework-checkbox{width:18px;height:18px;accent-color:#667eea;cursor:pointer;margin-right:8px}.checkbox-label{display:flex;align-items:center;cursor:pointer;font-weight:500;color:#374151;font-size:16px}.checkbox-label:hover{color:#667eea}.test-details-section{margin-top:20px;padding:20px;background:#fff;border:1px solid #d1d5db;border-radius:8px}.test-details-section h4{margin:0 0 15px;color:#374151;font-size:16px;font-weight:600;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s ease,box-shadow .2s ease}.form-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-textarea::placeholder{color:#9ca3af}.selection-panel{margin-top:20px;background:#fff;border:1px solid #d1d5db;border-radius:8px;overflow:hidden}.panel-header{background:#f3f4f6;padding:15px 20px;border-bottom:1px solid #d1d5db;display:flex;justify-content:space-between;align-items:center}.panel-header h3{margin:0;color:#374151;font-size:18px;font-weight:600}.collapse-button{background:#667eea;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:8px}.collapse-button:hover{background:#5a67d8;transform:translateY(-1px)}.collapse-button:active{transform:translateY(0)}.selection-content{padding:20px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.selection-row{display:grid;grid-template-columns:1fr 1fr;gap:30px}.selection-group h4{margin:0 0 15px;color:#374151;font-size:16px;font-weight:600;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.students-list,.pods-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto;padding-right:8px}.students-list::-webkit-scrollbar,.pods-list::-webkit-scrollbar{width:6px}.students-list::-webkit-scrollbar-track,.pods-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.students-list::-webkit-scrollbar-thumb,.pods-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.students-list::-webkit-scrollbar-thumb:hover,.pods-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.student-item,.pod-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s ease}.student-item:hover,.pod-item:hover{background:#e2e8f0;border-color:#667eea}.student-item input[type=checkbox],.pod-item input[type=checkbox]{width:16px;height:16px;accent-color:#667eea;cursor:pointer}.student-item span,.pod-item span{color:#374151;font-size:14px;font-weight:500}.myself-section{margin:20px 0;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.myself-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:16px;font-weight:500;color:#374151;transition:color .2s ease}.myself-checkbox:hover{color:#1d4ed8}.myself-checkbox input[type=checkbox]{width:20px;height:20px;accent-color:#3b82f6;cursor:pointer}.myself-checkbox span{color:inherit}.no-items{color:#6b7280;font-style:italic;text-align:center;padding:20px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:6px}@media (max-width: 768px){.selection-row{grid-template-columns:1fr;gap:20px}.panel-header{flex-direction:column;align-items:stretch;gap:10px}.collapse-button{width:100%;justify-content:center}.test-creation-section{margin:15px 0;padding:15px}.test-creation-section h3{font-size:1.1rem}.test-creation-section p{font-size:.9rem;margin-bottom:15px}.save-as-test-button{min-width:auto;width:100%;padding:10px 20px;font-size:.95rem}}@media (max-width: 480px){.test-creation-section{margin:10px 0;padding:12px;border-radius:8px}.test-creation-section h3{font-size:1rem;margin-bottom:8px}.test-creation-section p{font-size:.85rem;margin-bottom:12px;line-height:1.4}}.questionnaire-container,.page-container,.page-content,.questionnaire-content{max-width:100vw!important;overflow-x:hidden!important;box-sizing:border-box!important}@media (max-width: 768px){.questionnaire-container{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important}.page-content{padding:15px!important;margin:0!important;width:100%!important;max-width:100%!important}.content-header{text-align:center!important;margin-bottom:15px!important;padding:0!important}.content-header h1{font-size:1.3rem!important;line-height:1.2!important;margin-bottom:8px!important;word-break:break-word!important}.content-header p,.student-context{font-size:.9rem!important;line-height:1.4!important;margin:5px 0!important;word-break:break-word!important}.quiz-form{width:100%!important;max-width:100%!important;padding:0!important}.form-group{margin-bottom:15px!important;width:100%!important}.form-group label{font-size:.9rem!important;margin-bottom:5px!important;display:block!important}.form-group input,.form-group select,.form-group textarea{width:100%!important;padding:12px!important;font-size:1rem!important;border-radius:8px!important;box-sizing:border-box!important}.selection-row{grid-template-columns:1fr!important;gap:15px!important;width:100%!important;margin:0!important}.panel,.topics-panel,.subtopics-panel{width:100%!important;max-width:100%!important;margin:0 0 15px!important;padding:15px!important;border-radius:12px!important}.panel-header{flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:15px!important}.panel-header h3{font-size:1.1rem!important;margin:0!important;text-align:center!important}.collapse-button{width:100%!important;justify-content:center!important;padding:8px 12px!important;font-size:.85rem!important}.panel-content{max-height:none!important;padding:0!important}.items-list{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}.item,.topic-item,.subtopic-item{width:100%!important;padding:10px!important;margin:0!important;border-radius:8px!important;font-size:.85rem!important;line-height:1.3!important;word-break:break-word!important;box-sizing:border-box!important}.item input[type=checkbox],.item input[type=radio]{width:18px!important;height:18px!important;margin-right:8px!important;flex-shrink:0!important}.quiz-config{width:100%!important;padding:15px!important;margin:15px 0!important;border-radius:12px!important}.config-section{margin-bottom:15px!important}.config-section h4{font-size:1rem!important;margin:0 0 10px!important}.config-controls{display:flex!important;flex-direction:column!important;gap:10px!important}.control-group{width:100%!important}.control-group input,.control-group select{width:100%!important;padding:10px!important;font-size:.9rem!important}.generate-button,.action-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;margin:15px 0!important;min-height:48px!important;border-radius:8px!important;touch-action:manipulation!important;box-sizing:border-box!important}.questions-container{width:100%!important;max-width:100%!important;padding:0!important}.question-item{width:100%!important;max-width:100%!important;padding:15px!important;margin:0 0 15px!important;border-radius:12px!important}.question-header{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.question-number{font-size:.85rem!important;padding:4px 8px!important}.question-text{font-size:.9rem!important;line-height:1.5!important;word-break:break-word!important;overflow-wrap:break-word!important}.question-options{margin:10px 0!important}.question-option{padding:8px!important;margin:5px 0!important;font-size:.85rem!important;line-height:1.3!important;border-radius:6px!important;word-break:break-word!important}.results-container{width:100%!important;padding:0!important}.results-summary{padding:15px!important;margin:0 0 15px!important;border-radius:12px!important}.results-stats{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.stat-card{padding:12px!important;text-align:center!important;border-radius:8px!important}.stat-value{font-size:1.2rem!important;font-weight:600!important}.stat-label{font-size:.8rem!important;margin-top:4px!important}.filter-controls{flex-direction:column!important;gap:10px!important;padding:10px!important}.filter-group{width:100%!important}.filter-buttons{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.filter-button{padding:8px 12px!important;font-size:.8rem!important;border-radius:6px!important}.pagination{flex-direction:column!important;gap:10px!important;padding:15px 0!important}.pagination-controls{display:flex!important;justify-content:space-between!important;width:100%!important}.page-button{min-width:44px!important;min-height:44px!important;padding:10px!important;font-size:.9rem!important}.page-info{text-align:center!important;font-size:.8rem!important;padding:10px 0!important}.test-customization-section{width:100%!important;padding:15px!important;margin:15px 0!important;border-radius:12px!important}.test-form{width:100%!important}.test-form .form-group{margin-bottom:15px!important}.test-form input,.test-form textarea{width:100%!important;padding:12px!important;font-size:.9rem!important;border-radius:8px!important}.test-actions{display:flex!important;flex-direction:column!important;gap:10px!important;margin-top:15px!important}.test-action-button{width:100%!important;padding:12px 20px!important;font-size:.9rem!important;min-height:44px!important;border-radius:8px!important}.questionnaire-actions{display:flex!important;flex-direction:column!important;gap:10px!important;padding:15px 0!important;width:100%!important}.generate-new-button,.back-to-dashboard-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;min-height:48px!important;border-radius:8px!important;margin:0!important}.loading-spinner{width:100%!important;padding:20px!important;text-align:center!important}.loading-text{font-size:.9rem!important;margin-top:10px!important}.error-message{width:100%!important;padding:15px!important;margin:10px 0!important;border-radius:8px!important;font-size:.9rem!important;line-height:1.4!important;text-align:center!important}}@media (max-width: 480px){.page-content{padding:10px!important}.panel,.quiz-config,.test-customization-section{padding:12px!important}.content-header h1{font-size:1.2rem!important}.item,.question-item{padding:12px!important}.generate-button,.action-button{padding:12px 16px!important;font-size:.9rem!important}.results-stats,.filter-buttons{grid-template-columns:1fr!important}.pagination-controls{flex-direction:column!important;gap:8px!important}}@media (max-width: 768px) and (orientation: landscape){.selection-row{grid-template-columns:repeat(2,1fr)!important}.results-stats,.filter-buttons{grid-template-columns:repeat(3,1fr)!important}}@media (max-width: 768px){.questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item label,.page-content .generator-form .form-group .checkbox-group .checkbox-item label,body .questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:10px!important;width:100%!important;box-sizing:border-box!important}.questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item input[type=checkbox],.page-content .generator-form .form-group .checkbox-group .checkbox-item input[type=checkbox],body .questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item input[type=checkbox]{margin:0!important;flex-shrink:0!important;order:1!important}.questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item label span,.page-content .generator-form .form-group .checkbox-group .checkbox-item label span,body .questionnaire-content .generator-form .form-group .checkbox-group .checkbox-item label span{order:2!important;flex:1!important;margin:0!important;text-align:left!important}}body div.page-container div.page-content div.questionnaire-content form.generator-form div.form-group div.checkbox-group div.checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important}@media screen and (max-width: 768px){body div.page-container div.page-content div.questionnaire-content form.generator-form div.form-group div.checkbox-group div.checkbox-item label{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:10px!important}body div.page-container div.page-content div.questionnaire-content form.generator-form div.form-group div.checkbox-group div.checkbox-item input[type=checkbox]{margin:0!important;order:1!important;flex-shrink:0!important}body div.page-container div.page-content div.questionnaire-content form.generator-form div.form-group div.checkbox-group div.checkbox-item label span{order:2!important;margin:0!important}}@media (max-width: 768px){input[type=checkbox]+span,.checkbox-item input[type=checkbox]+span,.checkbox-group input[type=checkbox]+span{display:inline-block!important;vertical-align:middle!important;margin-left:0!important}}.checkbox-container .ai-checkbox-fix,.checkbox-container .timer-checkbox-fix,.form-group .ai-checkbox-fix,.form-group .timer-checkbox-fix{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:25px!important;padding:12px 16px!important;margin:8px 0!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;width:100%!important;box-sizing:border-box!important}.ai-checkbox-fix input[type=checkbox],.timer-checkbox-fix input[type=checkbox],.ai-checkbox-input,.timer-checkbox-input{margin:0!important;padding:0!important;width:18px!important;height:18px!important;flex-shrink:0!important;order:1!important;position:relative!important}.ai-checkbox-fix span,.timer-checkbox-fix span,.ai-checkbox-text,.timer-checkbox-text{margin:0!important;padding:0!important;font-size:16px!important;line-height:1.5!important;color:#374151!important;flex:1!important;text-align:left!important;order:2!important}@media (max-width: 768px){.checkbox-container .ai-checkbox-fix,.checkbox-container .timer-checkbox-fix,.form-group .ai-checkbox-fix,.form-group .timer-checkbox-fix{padding:12px 16px!important;min-height:48px!important;gap:30px!important}.ai-checkbox-fix input[type=checkbox],.timer-checkbox-fix input[type=checkbox],.ai-checkbox-input,.timer-checkbox-input{width:20px!important;height:20px!important;order:1!important}.ai-checkbox-fix span,.timer-checkbox-fix span,.ai-checkbox-text,.timer-checkbox-text{margin-left:0!important;font-size:17px!important;order:2!important}}body .questionnaire-content .generator-form .form-group .ai-checkbox-fix,body .questionnaire-content .generator-form .form-group .timer-checkbox-fix{display:flex!important;flex-direction:row!important;align-items:center!important;gap:25px!important}body .questionnaire-content .generator-form .form-group .ai-checkbox-fix input[type=checkbox],body .questionnaire-content .generator-form .form-group .timer-checkbox-fix input[type=checkbox]{margin:0!important;flex-shrink:0!important;order:1!important}body .questionnaire-content .generator-form .form-group .ai-checkbox-fix span,body .questionnaire-content .generator-form .form-group .timer-checkbox-fix span{margin-left:0!important;order:2!important}@media (max-width: 768px){body .questionnaire-content .generator-form .form-group .ai-checkbox-fix,body .questionnaire-content .generator-form .form-group .timer-checkbox-fix{gap:30px!important}body .questionnaire-content .generator-form .form-group .ai-checkbox-fix span,body .questionnaire-content .generator-form .form-group .timer-checkbox-fix span{margin-left:0!important;order:2!important}}.progress-counter-container{margin:20px 0}.score-details{display:flex;gap:20px;flex-wrap:wrap;justify-content:center}.score-item{display:flex;flex-direction:column;align-items:center;padding:15px;border-radius:12px;min-width:80px}.score-item.correct{background:linear-gradient(135deg,#d4edda,#f8fff9);border:2px solid #28a745;color:#155724}.score-item.incorrect{background:linear-gradient(135deg,#f8d7da,#fff5f5);border:2px solid #dc3545;color:#721c24}.score-item.skipped{background:linear-gradient(135deg,#fff3cd,#fffbf0);border:2px solid #ffc107;color:#856404}.score-item.all{background:linear-gradient(135deg,#e9ecef,#f8f9fa);border:2px solid #6c757d;color:#495057}.score-item.clickable{cursor:pointer;transition:all .2s ease;border:2px solid transparent;position:relative;overflow:hidden}.score-item.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.score-item.clickable.active{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.score-item.clickable.active:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#fff3;pointer-events:none}.score-item.clickable.correct.active{border-color:#1e7e34;background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.score-item.clickable.incorrect.active{border-color:#bd2130;background:linear-gradient(135deg,#dc3545,#e83e8c);color:#fff}.score-item.clickable.skipped.active{border-color:#e0a800;background:linear-gradient(135deg,#ffc107,#fd7e14);color:#212529}.score-item.clickable.all.active{border-color:#495057;background:linear-gradient(135deg,#6c757d,#495057);color:#fff}.score-number{font-size:24px;font-weight:700;line-height:1}.score-label{font-size:12px;font-weight:600;margin-top:4px;text-transform:uppercase}@media (max-width: 768px){.score-details{gap:15px}.score-item{min-width:70px;padding:12px}.score-number{font-size:20px}}.report-button{background:#f59e0b;color:#fff;border:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px;min-width:80px;justify-content:center;margin-left:auto}.report-button:hover:not(:disabled){background:#d97706;transform:translateY(-1px);box-shadow:0 2px 8px #f59e0b4d}.report-button:active{transform:translateY(0)}.report-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.report-button.reported{background:#10b981;color:#fff}.report-button.reported:hover{background:#059669;transform:none}.report-spinner{width:12px;height:12px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.report-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.report-dialog{background:#fff;border-radius:12px;max-width:500px;width:90%;max-height:80vh;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideIn .2s ease-out}.report-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.report-dialog-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.report-dialog-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.report-dialog-close:hover{background:#f3f4f6;color:#374151}.report-dialog-content{padding:20px 24px}.report-dialog-content p{margin:0 0 16px;color:#374151;font-size:14px;line-height:1.5}.report-reason-input{width:100%;border:2px solid #e5e7eb;border-radius:8px;padding:12px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px;transition:border-color .2s ease;box-sizing:border-box}.report-reason-input:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.character-count{text-align:right;font-size:12px;color:#6b7280;margin-top:8px}.report-dialog-actions{display:flex;gap:12px;padding:16px 24px 24px;justify-content:flex-end}.report-cancel-button,.report-submit-button{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:100px}.report-cancel-button{background:#f3f4f6;color:#374151}.report-cancel-button:hover{background:#e5e7eb}.report-submit-button{background:#f59e0b;color:#fff}.report-submit-button:hover:not(:disabled){background:#d97706}.report-submit-button:disabled{opacity:.5;cursor:not-allowed}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.report-button{font-size:11px;padding:6px 10px;min-width:70px}.report-dialog{width:95%;margin:20px}.report-dialog-header,.report-dialog-content,.report-dialog-actions{padding-left:16px;padding-right:16px}.report-dialog-actions{flex-direction:column-reverse}.report-cancel-button,.report-submit-button{width:100%}}.admin-settings-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.admin-settings-modal{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;max-width:600px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.admin-settings-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-settings-header h2{margin:0;font-size:24px;font-weight:600}.close-button{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.close-button:hover{background:#fff3}.admin-settings-content{padding:30px;overflow-y:auto;flex:1}.settings-section{margin-bottom:30px}.settings-section h3{margin:0 0 20px;color:#333;font-size:18px;font-weight:600;border-bottom:2px solid #f8f9fa;padding-bottom:10px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#555}.form-input{width:100%;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.info-grid{display:grid;gap:15px}.info-item{padding:12px 16px;background:#f8f9fa;border-radius:8px;border-left:4px solid #667eea}.info-item strong{color:#333}.admin-settings-actions{display:flex;justify-content:space-between;gap:15px;padding:20px 30px;border-top:1px solid #e9ecef;background:#f8f9fa}.reset-button,.save-button{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;min-width:120px}.reset-button{background:#6c757d;color:#fff}.reset-button:hover{background:#5a6268;transform:translateY(-2px)}.save-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.save-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}@media (max-width: 768px){.admin-settings-modal{width:95%;max-height:90vh}.admin-settings-header,.admin-settings-content,.admin-settings-actions{padding:20px}.admin-settings-actions{flex-direction:column}.reset-button,.save-button{width:100%}}.loading-screen-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 100px);background:linear-gradient(135deg,#667eea,#764ba2);padding:40px 20px}.loading-screen-content{text-align:center;color:#fff;max-width:400px}.loading-screen-spinner{position:relative;display:inline-block;width:80px;height:80px;margin-bottom:32px}.loading-screen-spinner .spinner-ring{position:absolute;top:0;left:0;width:100%;height:100%;border:4px solid transparent;border-top:4px solid rgba(255,255,255,.9);border-radius:50%;animation:loading-spin 1.2s linear infinite}.loading-screen-spinner .spinner-ring:nth-child(1){animation-delay:-.45s}.loading-screen-spinner .spinner-ring:nth-child(2){animation-delay:-.3s;border-top-color:#ffffffb3;width:90%;height:90%;top:5%;left:5%}.loading-screen-spinner .spinner-ring:nth-child(3){animation-delay:-.15s;border-top-color:#ffffff80;width:80%;height:80%;top:10%;left:10%}.loading-screen-spinner .spinner-ring:nth-child(4){border-top-color:#ffffff4d;width:70%;height:70%;top:15%;left:15%}@keyframes loading-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-screen-title{font-size:2rem;font-weight:600;margin:0 0 12px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.loading-screen-message{font-size:1.1rem;margin:0 0 24px;opacity:.9;line-height:1.6}.loading-screen-dots{display:flex;justify-content:center;gap:8px}.loading-screen-dots span{width:8px;height:8px;background:#fffc;border-radius:50%;animation:loading-bounce 1.4s ease-in-out infinite both}.loading-screen-dots span:nth-child(1){animation-delay:-.32s}.loading-screen-dots span:nth-child(2){animation-delay:-.16s}@keyframes loading-bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-screen-container.compact{min-height:200px;padding:20px}.loading-screen-container.compact .loading-screen-spinner{width:60px;height:60px;margin-bottom:20px}.loading-screen-container.compact .loading-screen-title{font-size:1.5rem;margin-bottom:8px}.loading-screen-container.compact .loading-screen-message{font-size:1rem;margin-bottom:16px}.loading-screen-container.custom-colors .loading-screen-spinner .spinner-ring{border-top-color:currentColor}.loading-screen-container.custom-colors .loading-screen-dots span{background:currentColor}.loading-screen-container.small .loading-screen-spinner{width:50px;height:50px;margin-bottom:20px}.loading-screen-container.small .loading-screen-title{font-size:1.3rem}.loading-screen-container.small .loading-screen-message{font-size:.9rem}.loading-screen-container.large .loading-screen-spinner{width:100px;height:100px;margin-bottom:40px}.loading-screen-container.large .loading-screen-title{font-size:2.5rem}.loading-screen-container.large .loading-screen-message{font-size:1.3rem}.students-page-content{display:flex;flex-direction:column;background:transparent;min-height:auto;padding:0;margin:0;width:100%;border-radius:0;box-shadow:none;overflow-x:hidden}@keyframes pageSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.students-content-header{padding:0 0 20px;background:transparent;border:none;margin-bottom:0}.students-content-header h1{margin:0 0 20px;font-size:1.75rem;font-weight:700;color:#1a202c;letter-spacing:-.5px;text-align:center}.api-status-warning{background:linear-gradient(135deg,#fff3cd,#ffeaa7);color:#856404;padding:12px 16px;border-radius:12px;border:1px solid #ffeaa7;margin:16px 20px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:10px;box-shadow:0 4px 12px #ffeaa74d}.students-content{flex:1;padding:0;overflow:visible!important;height:auto!important;max-height:none!important;background:transparent;border-radius:0;margin:0;box-shadow:none}@media (max-width: 768px){.students-page-content{padding:0;margin:0}.students-content-header{padding:0 0 16px;margin:0}.students-content-header h1{font-size:1.5rem;margin-bottom:16px}.students-content{padding:0}.api-status-warning{margin:12px 0;padding:10px 12px;font-size:13px}}@media (max-width: 480px){.students-page-content{padding:0}.students-content-header{padding:0 0 12px}.students-content-header h1{font-size:1.4rem}.students-content{padding:0}.api-status-warning{margin:8px 0;padding:8px 10px;font-size:12px}}.students-actions{margin-bottom:24px}.students-list{flex:0 0 auto;overflow:visible!important;max-height:none!important;height:auto!important}.add-student-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:16px;padding:16px 32px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.165,.84,.44,1);box-shadow:0 6px 24px #667eea4d;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.add-student-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.add-student-button:hover:before{left:100%}.add-student-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 10px 30px #667eea66}@media (max-width: 768px){.add-student-button{width:100%;padding:14px 24px;font-size:.95rem}}@media (max-width: 480px){.add-student-button{padding:12px 20px;font-size:.9rem}}.add-student-form{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:20px;padding:32px;margin-bottom:32px;box-shadow:0 8px 32px #0000001a;position:relative;overflow:hidden}.add-student-form:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea,#764ba2)}.add-student-form h3{margin:0 0 28px;color:#1a202c;font-size:1.5rem;font-weight:700;letter-spacing:-.5px;text-align:center}.form-row{display:grid;grid-template-columns:1fr 1fr auto;gap:24px;margin-bottom:24px}@media (max-width: 768px){.add-student-form{padding:24px 20px;margin-bottom:24px;border-radius:16px}.add-student-form h3{font-size:1.35rem;margin-bottom:20px}.form-row{grid-template-columns:1fr;gap:16px;margin-bottom:20px}}@media (max-width: 480px){.add-student-form{padding:20px 16px;border-radius:12px}.add-student-form h3{font-size:1.25rem}}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#4a5568;font-weight:500;font-size:.9rem}.form-input,.form-select{width:100%;padding:16px 20px;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#fff;font-weight:500}.form-input:focus,.form-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea26;transform:translateY(-2px)}.form-input.error,.form-select.error{border-color:#e53e3e;box-shadow:0 0 0 4px #e53e3e26}@media (max-width: 768px){.form-input,.form-select{padding:14px 16px;font-size:.95rem;border-radius:10px}}@media (max-width: 480px){.form-input,.form-select{padding:12px 14px;font-size:.9rem;border-radius:8px}}.error-text{color:#e53e3e;font-size:.875rem;margin-top:4px;display:block}.form-actions{display:flex;gap:16px;margin-top:32px}.save-button{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:12px;padding:16px 32px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;box-shadow:0 4px 16px #48bb784d;text-transform:uppercase;letter-spacing:.5px}.save-button:hover{background:linear-gradient(135deg,#38a169,#2f855a);transform:translateY(-2px);box-shadow:0 6px 24px #48bb7866}.save-button:disabled{background:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.cancel-button{background:linear-gradient(135deg,#f7fafc,#edf2f7);color:#4a5568;border:2px solid #e2e8f0;border-radius:12px;padding:16px 32px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;text-transform:uppercase;letter-spacing:.5px}.cancel-button:hover{border-color:#cbd5e0;background:linear-gradient(135deg,#edf2f7,#e2e8f0);transform:translateY(-2px)}@media (max-width: 768px){.form-actions{flex-direction:column;gap:12px;margin-top:24px}.save-button,.cancel-button{padding:14px 24px;font-size:.95rem}}@media (max-width: 480px){.form-actions{gap:10px;margin-top:20px}.save-button,.cancel-button{padding:12px 20px;font-size:.9rem}}.students-summary{margin-bottom:16px;padding:0;background:transparent;border:none;box-shadow:none}.students-summary h3{margin:0;color:#2d3748;font-size:1.1rem;font-weight:600;text-align:center;padding:8px 0}.no-students{text-align:center;padding:40px 20px;color:#718096;background:#fff;border-radius:16px;margin:20px 0;box-shadow:0 4px 20px #0000000d}.no-students-icon{font-size:3rem;margin-bottom:16px}.no-students p{margin:8px 0;font-size:1rem}.students-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));overflow:visible!important;height:auto!important;max-height:none!important;margin-top:16px;width:100%}@media (min-width: 768px){.students-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}@media (min-width: 1024px){.students-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (min-width: 1440px){.students-grid{grid-template-columns:repeat(3,1fr)}}.student-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:20px;display:flex;justify-content:space-between;align-items:flex-start;transition:all .3s cubic-bezier(.165,.84,.44,1);box-shadow:0 4px 20px #00000014;position:relative;overflow:hidden}.student-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea,#764ba2)}.student-card:hover{border-color:#667eea;box-shadow:0 8px 30px #667eea33;transform:translateY(-4px) scale(1.02)}@media (max-width: 768px){.students-grid{grid-template-columns:1fr;gap:12px;margin-top:12px}.student-card{padding:16px;flex-direction:column;gap:16px;align-items:stretch;margin:0;width:100%;box-sizing:border-box}.student-info{margin-bottom:0}.student-actions{justify-content:center;gap:12px}}@media (max-width: 480px){.students-grid{gap:10px;margin-top:10px}.student-card{padding:12px;border-radius:12px}.student-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}}.student-info{display:flex;align-items:flex-start;gap:20px;flex:1}.student-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;flex-shrink:0;box-shadow:0 4px 16px #667eea4d;border:3px solid white}.student-details h4{margin:0 0 6px;color:#1a202c;font-size:1.25rem;font-weight:700;letter-spacing:-.3px;line-height:1.2;word-break:break-word;overflow-wrap:break-word}.student-email{margin:0 0 6px;color:#4a5568;font-size:.95rem;font-weight:500;word-break:break-word;overflow-wrap:break-word}.student-grade{margin:0 0 6px;color:#667eea;font-size:.95rem;font-weight:600;padding:2px 8px;background:#667eea1a;border-radius:12px;display:inline-block;white-space:nowrap}.student-date{margin:0;color:#718096;font-size:.85rem;font-weight:500;white-space:nowrap}@media (max-width: 768px){.student-info{gap:16px;margin-bottom:16px}.student-avatar{width:60px;height:60px;font-size:1.6rem}.student-details h4{font-size:1.1rem}.student-email{font-size:.9rem}.student-grade{font-size:.9rem;padding:1px 6px}.student-date{font-size:.8rem}}@media (max-width: 480px){.student-info{flex-direction:column;align-items:center;text-align:center;gap:12px}.student-avatar{width:64px;height:64px;font-size:1.8rem}.student-details h4{font-size:1rem;margin-bottom:6px}.student-email{font-size:.85rem;margin-bottom:4px}.student-grade{font-size:.85rem;margin-bottom:4px;padding:1px 4px}.student-date{font-size:.75rem;margin-bottom:4px}}.student-actions{display:flex;gap:10px;flex-shrink:0}.edit-button{background:linear-gradient(135deg,#bee3f8,#90cdf4);color:#2b6cb0;border:none;border-radius:10px;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-size:16px;box-shadow:0 4px 12px #2b6cb033}.edit-button:hover{background:linear-gradient(135deg,#90cdf4,#63b3ed);transform:translateY(-2px) scale(1.1);box-shadow:0 6px 16px #2b6cb04d}.delete-button{background:linear-gradient(135deg,#fed7d7,#feb2b2);color:#e53e3e;border:none;border-radius:10px;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-size:16px;box-shadow:0 4px 12px #e53e3e33}.delete-button:hover{background:linear-gradient(135deg,#feb2b2,#fc8181);transform:translateY(-2px) scale(1.1);box-shadow:0 6px 16px #e53e3e4d}.test-button{background:linear-gradient(135deg,#d6f5d6,#b3e6b3);color:#2d7d2d;border:none;border-radius:10px;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;font-size:16px;box-shadow:0 4px 12px #2d7d2d33}.test-button:hover{background:linear-gradient(135deg,#b3e6b3,#9ae6b4);transform:translateY(-2px) scale(1.1);box-shadow:0 6px 16px #2d7d2d4d}.view-tests-button{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:10px;border-radius:10px;cursor:pointer;font-size:16px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;box-shadow:0 4px 12px #3b82f64d}.view-tests-button:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px) scale(1.1);box-shadow:0 6px 16px #3b82f666}@media (max-width: 768px){.student-actions{gap:12px;width:100%;justify-content:center}.edit-button,.delete-button,.test-button,.view-tests-button{width:44px;height:44px;font-size:18px}}@media (max-width: 480px){.student-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%}.edit-button,.delete-button,.test-button,.view-tests-button{width:100%;height:40px;font-size:16px;border-radius:8px}}@media (max-width: 768px){.students-page-content{background:#f7f8fc;min-height:100vh}.students-content-header{position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #0000001a}.students-content{padding-top:20px}.students-actions{margin-bottom:20px}.no-students{padding:32px 16px;margin:16px;background:#fff;border-radius:12px;box-shadow:0 2px 10px #0000000d}.no-students-icon{font-size:3rem;margin-bottom:16px}.no-students p{font-size:.95rem;margin:10px 0}.students-summary{background:transparent;padding:8px 0;border-radius:0;margin-bottom:12px;box-shadow:none}.students-summary h3{font-size:1rem;font-weight:600}}@media (max-width: 480px){.students-page-content{min-height:100vh}.no-students{padding:24px 12px;margin:12px}.no-students-icon{font-size:2.5rem}.no-students p{font-size:.9rem}.students-summary{padding:6px 0;margin-bottom:8px}.students-summary h3{font-size:.95rem}}.test-modal{max-width:800px;max-height:90vh;overflow-y:auto}.form-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;margin-bottom:0}.form-section h3{margin:0 0 16px;font-size:1.1rem;font-weight:600;color:#2d3748}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.generate-button{background:#667eea;color:#fff;border:none;border-radius:6px;padding:10px 20px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;margin-top:16px}.generate-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.generate-button:disabled{background:#a0aec0;cursor:not-allowed}.questions-preview{background:#f7fafc;border-radius:8px;padding:16px;max-height:300px;overflow-y:auto}.question-preview{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.question-preview:last-child{margin-bottom:0;border-bottom:none}.question-preview p{margin:0 0 8px;font-weight:500;color:#2d3748}.options-preview{margin:0;padding-left:20px;list-style:disc}.options-preview li{margin:4px 0;color:#4a5568}.options-preview li.correct{color:#2d7d2d;font-weight:500}.more-questions{text-align:center;color:#718096;font-style:italic;margin:12px 0 0}.create-button{background:#48bb78;color:#fff;border:none;border-radius:6px;padding:10px 24px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.create-button:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.create-button:disabled{background:#a0aec0;cursor:not-allowed}@media (max-width: 768px){.test-modal{max-width:95vw;margin:20px auto}.form-row{grid-template-columns:1fr;gap:12px}.questions-preview{max-height:200px}}.tests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:16px}.test-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a;border:1px solid #e2e8f0;transition:all .2s ease}.test-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.test-info{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.test-icon{background:#667eea;color:#fff;border-radius:8px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.test-details h4{margin:0 0 4px;color:#2d3748;font-size:1.1rem;font-weight:600}.test-student{margin:0 0 4px;color:#4a5568;font-size:.9rem}.test-date{margin:0;color:#718096;font-size:.85rem}.test-actions{display:flex;gap:8px}.view-test-button,.copy-link-button,.copy-test-button{background:#667eea;color:#fff;border:none;border-radius:6px;padding:8px 12px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease;flex:1}.view-test-button:hover{background:#5a6fd8;transform:translateY(-1px)}.copy-link-button{background:#48bb78}.copy-link-button:hover{background:#38a169;transform:translateY(-1px)}.copy-test-button{background:#f59e0b}@media (max-width: 768px){.tests-grid{grid-template-columns:1fr;gap:16px}.test-actions{flex-direction:column}}.student-tests-section{background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:20px;margin:20px 0;padding:24px;grid-column:1 / -1;width:100%;box-shadow:0 8px 32px #00000014;position:relative;overflow:hidden}.student-tests-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea,#764ba2)}@media (max-width: 768px){.student-tests-section{margin:16px -16px;border-radius:16px;padding:20px 16px;border-left:none;border-right:none}.tests-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.tests-header h4{font-size:1.25rem}.close-tests-button{align-self:flex-end;width:32px;height:32px}.test-item{padding:12px;flex-direction:column;gap:12px;align-items:stretch}.test-info{order:1}.test-actions{order:2;justify-content:center;gap:10px}.test-meta{flex-direction:column;gap:8px}}@media (max-width: 480px){.student-tests-section{margin:12px -12px;border-radius:12px;padding:16px 12px}.tests-header h4{font-size:1.1rem}.test-item{padding:10px}.test-actions{flex-direction:column;gap:8px}.take-test-button,.view-test-button,.copy-link-button,.copy-test-button{width:100%;padding:10px;font-size:.9rem}}.tests-header{display:flex;justify-content:between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.tests-header h4{margin:0;color:#1a202c;font-size:1.1rem;font-weight:600}.close-tests-button{background:#ef4444;color:#fff;border:none;width:28px;height:28px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;transition:all .2s ease}.close-tests-button:hover{background:#dc2626;transform:scale(1.1)}.loading-tests{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px;color:#64748b;font-size:14px}.tests-list{display:flex;flex-direction:column;gap:12px}.test-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;transition:all .2s ease}.test-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.test-info{flex:1}.test-main{margin-bottom:8px}.test-name{margin:0 0 4px;font-size:1rem;font-weight:600;color:#1a202c}.test-description{margin:0;font-size:14px;color:#64748b;line-height:1.4}.test-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#64748b}.test-meta span{display:flex;align-items:center;gap:4px}.test-link{color:#3b82f6;text-decoration:none;font-weight:500;margin-left:4px;border-radius:4px;padding:2px 4px;transition:all .2s ease}.test-link:hover{color:#1d4ed8;background:#dbeafe;text-decoration:underline}.test-id{font-family:monospace;font-size:11px}.test-actions{display:flex;gap:8px;flex-shrink:0}.take-test-button,.copy-link-button,.copy-test-button{padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px;white-space:nowrap}.take-test-button{background:#3b82f6;color:#fff}.take-test-button:hover{background:#2563eb;transform:translateY(-1px)}.copy-link-button{background:#10b981;color:#fff}.copy-link-button:hover{background:#059669;transform:translateY(-1px)}.copy-test-button{background:#f59e0b;color:#fff}.copy-test-button:hover{background:#d97706;transform:translateY(-1px)}.no-tests{text-align:center;padding:30px 20px;color:#64748b}.no-tests p{margin:0 0 16px;font-size:14px}.create-first-test-button{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.create-first-test-button:hover{background:#2563eb;transform:translateY(-1px)}.test-results-summary{margin-top:8px;padding:12px;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef}.test-status{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;margin-bottom:8px}.test-status.completed{background:#d1fae5;color:#065f46}.test-status.pending{background:#fef3c7;color:#92400e}.test-status.loading{background:#e0e7ff;color:#3730a3}.results-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}.result-item{display:flex;align-items:center;justify-content:center;padding:6px 8px;border-radius:4px;font-size:11px;font-weight:500;text-align:center}.result-item.correct{background:#d1fae5;color:#065f46}.result-item.incorrect{background:#fee2e2;color:#991b1b}.result-item.skipped{background:#fef3c7;color:#92400e}.result-item.score{background:#dbeafe;color:#1e40af}.completion-date{font-size:11px;color:#6b7280;font-style:italic}.view-test-button{background:#8b5cf6;color:#fff;padding:8px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;display:flex;align-items:center;gap:4px;white-space:nowrap}.view-test-button:hover{background:#7c3aed;transform:translateY(-1px)}.student-performance-overview{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000a}.performance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.performance-header h4{margin:0;color:#1a202c;font-size:1.25rem;font-weight:700}.performance-period{font-size:14px;color:#64748b;font-weight:500}.test-metrics-charts{display:flex;justify-content:space-around;padding:20px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;border:1px solid #e2e8f0;gap:15px;box-shadow:0 2px 8px #0000000a;margin-bottom:20px;flex-wrap:wrap}.chart-container{display:flex;flex-direction:column;align-items:center;gap:10px}.pie-chart{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 12px #0000001a}.pie-center{background:#fff;border-radius:50%;width:50px;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:700;text-align:center}.pie-percentage{font-size:12px;font-weight:700;color:#1a202c;line-height:1}.pie-label{font-size:8px;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.5px;line-height:1}.chart-status{font-size:11px;font-weight:600;text-align:center;padding:4px 8px;border-radius:12px;background:#fffc;border:1px solid rgba(0,0,0,.1)}.progress-stats{display:flex;justify-content:center}.question-stats{flex:1}.question-row{display:flex;justify-content:space-around;gap:20px}.question-item{display:flex;flex-direction:column;align-items:center;padding:15px;background:#fff;border-radius:10px;border:2px solid #e2e8f0;transition:all .2s ease;min-width:70px}.question-item.correct{border-color:#68d391;background:linear-gradient(135deg,#f0fff4,#c6f6d5)}.question-item.wrong{border-color:#fc8181;background:linear-gradient(135deg,#fff5f5,#fed7d7)}.question-item.skipped{border-color:#cbd5e0;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.question-icon{font-size:18px;margin-bottom:5px;font-weight:700}@media (max-width: 992px){.test-metrics-charts{flex-wrap:wrap;justify-content:center;padding:16px}.chart-container{min-width:120px}}@media (max-width: 768px){.student-performance-overview{margin-bottom:20px;padding:16px}.performance-header{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:16px}.performance-header h4{font-size:1.1rem}.performance-period{font-size:13px}.test-metrics-charts{flex-direction:row;flex-wrap:wrap;justify-content:space-around;padding:12px;gap:12px}.chart-container{min-width:100px}.pie-chart{width:70px;height:70px}.pie-center{width:45px;height:45px}.pie-percentage{font-size:11px}.pie-label{font-size:7px}.question-row{flex-direction:column;gap:12px}.question-item{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 16px;min-width:auto}.question-item .question-icon{margin-bottom:0;font-size:16px}.question-count{font-size:14px}.question-label{font-size:10px}}@media (max-width: 480px){.student-performance-overview{padding:12px}.performance-header h4{font-size:1rem}.test-metrics-charts{flex-direction:column;align-items:center;gap:16px;padding:8px}.chart-container{min-width:80px}.pie-chart{width:60px;height:60px}.pie-center{width:38px;height:38px}.pie-percentage{font-size:10px}.pie-label{font-size:6px}.question-item{padding:10px 12px}}.tests-list .test-item-horizontal{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px;padding:12px 16px!important;display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:16px!important;align-items:center;transition:all .2s ease;box-shadow:0 2px 8px #0000000d;margin-bottom:12px;justify-content:unset!important}.test-item-horizontal:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea26;transform:translateY(-2px)}.test-main-section{flex:1;min-width:0}.test-header{display:flex;align-items:center;gap:12px}.test-icon{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;box-shadow:0 2px 8px #667eea33}.test-basic-info{flex:1;min-width:0}.test-basic-info .test-name{margin:0 0 4px;color:#1a202c;font-size:1.1rem;font-weight:600;line-height:1.2}.test-basic-info .test-description{margin:0 0 6px;color:#4a5568;font-size:.9rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical}.test-metadata{display:flex;gap:12px;font-size:.8rem;color:#64748b}.test-metadata span{display:flex;align-items:center;gap:4px}.test-id-date{font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:.75rem;color:#64748b;font-weight:500}.test-item-horizontal .test-status-section{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;min-width:300px;gap:12px;padding:8px 12px;background:#f8fafc;border-radius:8px}.test-results-horizontal{display:flex;align-items:center;gap:12px}.test-pending-horizontal{display:flex;align-items:center;gap:8px}.status-badge{padding:4px 12px;border-radius:16px;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:4px}.status-badge.completed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #34d399}.status-badge.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #f59e0b}.results-metrics{display:flex;gap:6px;flex-wrap:nowrap;align-items:center}.metric-item{display:flex;flex-direction:column;align-items:center;padding:4px 6px;border-radius:6px;min-width:42px;transition:all .2s ease}.metric-item:hover{transform:translateY(-2px)}.metric-item.correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #34d399}.metric-item.incorrect{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1px solid #f87171}.metric-item.skipped{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b}.metric-item.score{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #60a5fa}.metric-icon{font-size:.9rem;margin-bottom:2px}.metric-value{font-size:.9rem;font-weight:700;color:#1a202c;line-height:1}.metric-label{font-size:.65rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.completion-info{font-size:.7rem;color:#64748b;text-align:right;white-space:nowrap}.pending-message{font-size:.8rem;color:#64748b;font-style:italic}.test-actions-section{display:flex;flex-direction:row;gap:6px;min-width:140px;justify-content:flex-end}.take-test-button-horizontal,.view-test-button-horizontal,.copy-link-button-horizontal{padding:6px 10px;border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;flex:1}.take-test-button-horizontal{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 12px #3b82f64d}.take-test-button-horizontal:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.view-test-button-horizontal{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.view-test-button-horizontal:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.copy-link-button-horizontal{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 12px #10b9814d}.copy-link-button-horizontal:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}@media (max-width: 1100px){.test-item-horizontal{grid-template-columns:1fr auto;gap:12px}.test-status-section{min-width:250px;flex-direction:column;gap:6px}.test-results-horizontal{flex-direction:column;gap:6px}.completion-info{text-align:center}.test-actions-section{min-width:100px;flex-direction:column;gap:4px}}@media (max-width: 768px){.student-tests-section{margin:12px -16px;border-radius:0;border-left:none;border-right:none}.test-item-horizontal{grid-template-columns:1fr;gap:16px;padding:16px}.test-header{flex-direction:column;align-items:center;text-align:center;gap:12px}.results-metrics{gap:8px}.metric-item{min-width:45px;padding:6px}.test-actions-section{flex-direction:row;justify-content:center}}@media (max-width: 480px){.results-metrics{grid-template-columns:repeat(2,1fr);display:grid;gap:8px;width:100%}.test-actions-section{flex-direction:column;width:100%}}.student-tests-section .test-item-student-horizontal{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px;padding:12px 16px!important;display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:16px!important;align-items:center;transition:all .2s ease;box-shadow:0 2px 8px #0000000d;margin-bottom:12px;justify-content:unset!important}.test-item-student-horizontal:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea26;transform:translateY(-2px)}.test-main-section-student{flex:1;min-width:0}.test-header-student{display:flex;align-items:center;gap:12px}.test-icon-student{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;box-shadow:0 2px 8px #667eea33}.test-basic-info-student{flex:1;min-width:0}.test-basic-info-student .test-name{margin:0 0 4px;color:#1a202c;font-size:1.1rem;font-weight:600;line-height:1.2}.test-basic-info-student .test-description{margin:0 0 6px;color:#4a5568;font-size:.9rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical}.test-metadata-student{display:flex;flex-direction:column;gap:2px;font-size:.75rem;color:#64748b}.test-id-info{font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:.7rem;color:#64748b;font-weight:500}.test-details{font-size:.7rem;color:#64748b;font-weight:500}.test-item-student-horizontal .test-status-section-student{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;min-width:300px;gap:12px;padding:8px 12px;background:#f8fafc;border-radius:8px}.test-results-horizontal-student{display:flex;align-items:center;gap:12px}.test-pending-horizontal-student{display:flex;align-items:center;gap:8px}.status-badge-student{padding:4px 12px;border-radius:16px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:4px}.status-badge-student.completed{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #34d399}.status-badge-student.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #f59e0b}.results-metrics-student{display:flex;gap:4px;flex-wrap:nowrap;align-items:center}.metric-item-student{display:flex;flex-direction:column;align-items:center;padding:3px 5px;border-radius:6px;min-width:38px;transition:all .2s ease}.metric-item-student:hover{transform:translateY(-1px)}.metric-item-student.correct{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:1px solid #34d399}.metric-item-student.incorrect{background:linear-gradient(135deg,#fee2e2,#fecaca);border:1px solid #f87171}.metric-item-student.skipped{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b}.metric-item-student.score{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #60a5fa}.metric-item-student .metric-icon{font-size:.8rem;margin-bottom:1px}.metric-item-student .metric-value{font-size:.8rem;font-weight:700;color:#1a202c;line-height:1}.completion-info-student{font-size:.65rem;color:#64748b;text-align:right;white-space:nowrap}.pending-message-student{font-size:.75rem;color:#64748b;font-style:italic}.test-actions-section-student{display:flex;flex-direction:row;gap:4px;min-width:120px;justify-content:flex-end}.take-test-button-student,.view-test-button-student,.copy-link-button-student,.copy-test-button-student{padding:5px 8px;border:none;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:3px;white-space:nowrap;flex:1}.take-test-button-student{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 2px 8px #3b82f64d}.take-test-button-student:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.view-test-button-student{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 2px 8px #8b5cf64d}.view-test-button-student:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.copy-link-button-student{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.copy-link-button-student:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.copy-test-button-student{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px #f59e0b4d}.copy-test-button-student:hover{background:linear-gradient(135deg,#d97706,#b45309);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}@media (max-width: 1100px){.test-item-student-horizontal{grid-template-columns:1fr auto;gap:12px}.test-status-section-student{min-width:250px;flex-direction:column;gap:6px}.test-results-horizontal-student{flex-direction:column;gap:6px}.completion-info-student{text-align:center}.test-actions-section-student{min-width:100px;flex-direction:column;gap:3px}}@media (max-width: 768px){.test-item-student-horizontal{grid-template-columns:1fr;gap:12px;padding:12px}.test-header-student{flex-direction:column;align-items:center;text-align:center;gap:8px}.test-metadata-student{align-items:center}.results-metrics-student{gap:4px}.metric-item-student{min-width:35px;padding:2px 4px}.test-actions-section-student{flex-direction:row;justify-content:center;gap:6px}}.attendance-controls{background:#fff;border-radius:12px;padding:20px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0}.range-days.warning{color:#d69e2e}.range-days.at-limit{color:#c53030}.max-limit{font-size:12px;color:#4a5568;font-weight:400;margin-left:8px}.date-range-selector{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.date-inputs-row{display:flex;gap:20px;align-items:flex-end;flex-wrap:wrap}.date-input-group{display:flex;flex-direction:row;gap:8px;align-items:center;flex:0 0 auto}.date-input-group label{font-size:14px;font-weight:600;color:#2d3748}.date-input{padding:10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#1a202c;font-size:14px;width:150px;max-width:150px;min-width:140px}.date-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 5px #667eea4d}.quick-date-buttons{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.quick-date-btn{background:#e2e8f0;border:1px solid #cbd5e0;color:#2d3748;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:14px;transition:all .3s ease}.quick-date-btn:hover{background:#cbd5e0;transform:translateY(-1px)}.quick-date-btn.active{background:#667eea;color:#fff;border-color:#5a67d8;box-shadow:0 2px 8px #667eea4d}.quick-date-btn.active:hover{background:#5a67d8}.attendance-grid-container{background:#fff;border-radius:12px;padding:20px;margin-bottom:30px;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0;overflow-x:auto}.attendance-grid-container h3{margin:0 0 20px;font-size:1.3rem;color:#1a202c}.no-students{text-align:center;padding:40px;color:#4a5568}.attendance-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:8px;overflow:hidden;background:#f7fafc;min-width:auto}.attendance-table thead{background:#edf2f7}.attendance-table th{padding:10px 6px;text-align:center;font-weight:600;color:#2d3748;border-bottom:2px solid #e2e8f0}.student-header{text-align:left!important;min-width:120px;font-size:13px;width:120px;max-width:120px}.date-header{min-width:35px;width:35px;max-width:35px;font-size:11px;padding:8px 3px}.date-number{font-size:12px;font-weight:700}.date-day{font-size:8px;opacity:.7;margin-top:1px}.attendance-table tbody tr{border-bottom:1px solid #e2e8f0}.attendance-table tbody tr:nth-child(2n){background:#f7fafc}.attendance-table tbody tr:hover{background:#edf2f7}.student-cell{padding:8px 10px;text-align:left;border-right:1px solid #e2e8f0;width:120px;max-width:120px}.student-name{font-size:13px;font-weight:600;color:#1a202c;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-grade{font-size:10px;color:#4a5568}.attendance-counts{display:flex;gap:8px;margin-top:4px}.count-present,.count-absent{font-size:10px;font-weight:600;padding:2px 6px;border-radius:12px;display:flex;align-items:center;gap:2px}.count-present{background:#48bb7826;color:#2f855a;border:1px solid rgba(72,187,120,.3)}.count-absent{background:#f5656526;color:#c53030;border:1px solid rgba(245,101,101,.3)}.attendance-cell{padding:8px 3px;text-align:center;cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:700;width:35px;max-width:35px;min-width:35px;border-left:1px solid #e2e8f0}.attendance-cell:hover{background:#e2e8f0!important;transform:scale(1.05)}.attendance-cell.present{background:#48bb7833;color:#2f855a}.attendance-cell.absent{background:#f5656533;color:#c53030}.attendance-cell.unmarked{background:transparent;color:#a0aec0}.submit-section{display:flex;justify-content:center;gap:15px;align-items:center;padding:20px;margin:30px auto 40px;max-width:400px}.submit-btn{background:#667eea;border:none;color:#fff;padding:15px 25px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;box-shadow:0 4px 15px #667eea66;transition:all .3s ease}.submit-btn:hover{background:#5a67d8;transform:translateY(-2px);box-shadow:0 6px 20px #667eea99}.undo-btn{background:#f56565;border:none;color:#fff;padding:12px 20px;border-radius:20px;cursor:pointer;font-size:14px;font-weight:600;box-shadow:0 4px 15px #f565654d;transition:all .3s ease}.undo-btn:hover{background:#e53e3e;transform:translateY(-2px);box-shadow:0 6px 20px #f5656580}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 30px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e2e8f0;background:#f7fafc;flex-shrink:0}.modal-header h3{margin:0;color:#1a202c;font-size:1.5rem}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#4a5568;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.close-btn:hover{background:#e2e8f0;color:#1a202c}.modal-body{padding:20px;flex:1;overflow-y:auto;min-height:0}.changes-list{margin-top:15px}.change-item{display:grid;grid-template-columns:1fr auto 2fr;gap:15px;align-items:center;padding:12px;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:8px}.change-student{font-weight:600;color:#1a202c;font-size:14px}.change-date{font-size:13px;color:#4a5568;text-align:center}.change-status{display:flex;align-items:center;gap:8px;justify-content:flex-end}.status-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.present{background:#48bb7826;color:#2f855a;border:1px solid rgba(72,187,120,.3)}.status-badge.absent{background:#f5656526;color:#c53030;border:1px solid rgba(245,101,101,.3)}.status-badge.unmarked{background:#e2e8f0;color:#4a5568;border:1px solid #cbd5e0}.arrow{color:#4a5568;font-weight:700}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e2e8f0;background:#f7fafc;flex-shrink:0}.cancel-btn,.confirm-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.cancel-btn{background:#e2e8f0;color:#4a5568}.cancel-btn:hover{background:#cbd5e0}.confirm-btn{background:#667eea;color:#fff}.confirm-btn:hover{background:#5a67d8}@media (max-width: 768px){.attendance-container{padding:10px}.attendance-header{flex-direction:column;align-items:flex-start;gap:10px;padding:15px}.attendance-header h1{font-size:1.7rem}.back-button{font-size:13px;padding:8px 16px;font-weight:600;background:#667eea;color:#fff;border:2px solid #667eea}.student-management{flex-direction:column;align-items:flex-start;gap:10px}.date-range-selector{flex-direction:column;gap:15px}.date-inputs-row{flex-direction:row;gap:15px;justify-content:flex-start;align-items:flex-end;flex-wrap:wrap}.date-input{width:120px;max-width:120px;min-width:110px}.date-input-group{flex-direction:column;gap:4px;align-items:flex-start;min-width:auto}.date-input-group label{font-size:12px;margin-bottom:2px}.attendance-table{font-size:12px}.student-header{width:100px;max-width:100px;min-width:100px;font-size:12px}.student-cell{width:100px;max-width:100px;padding:6px 8px}.student-name{font-size:12px}.attendance-counts{gap:4px}.modal-content{width:95%;max-height:95vh}.modal-header,.modal-footer,.modal-body{padding:15px}.change-item{grid-template-columns:1fr;gap:8px;text-align:center}.change-status{justify-content:center}.count-present,.count-absent{font-size:9px;padding:1px 4px}.date-header{width:30px;max-width:30px;min-width:30px;padding:6px 2px}.attendance-cell{padding:6px 2px;font-size:12px;width:30px;max-width:30px;min-width:30px}}@media (max-width: 480px){.attendance-header h1{font-size:1.4rem}.student-header{width:80px;max-width:80px;min-width:80px;font-size:11px}.student-cell{width:80px;max-width:80px;padding:5px 6px}.student-name{font-size:11px}.attendance-counts{gap:3px;margin-top:2px}.count-present,.count-absent{font-size:8px;padding:1px 3px}.date-header{width:25px;max-width:25px;min-width:25px;padding:5px 1px}.date-number{font-size:10px}.date-day{font-size:7px}.attendance-cell{padding:5px 1px;font-size:11px;width:25px;max-width:25px;min-width:25px}.modal-content{width:95%;margin:10px}.change-item{grid-template-columns:1fr;gap:8px;text-align:center}.change-status{justify-content:center}.submit-section{flex-direction:column;gap:8px;bottom:10px;right:10px}.submit-section{flex-direction:column;gap:12px;margin:20px auto 30px;padding:15px}.submit-btn,.undo-btn{padding:14px 20px;font-size:14px;width:100%}}.collapsible-control-panel{margin-bottom:24px}.panel-collapse-toggle{width:100%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:12px 20px;border-radius:12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.panel-collapse-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.panel-collapse-toggle .toggle-icon{font-size:14px;transition:transform .3s ease}.panel-collapse-toggle .collapsed-info{margin-left:auto;font-size:14px;font-weight:400;opacity:.9}.progress-controls{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:24px;margin-bottom:32px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;position:relative}.progress-controls:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:16px 16px 0 0;opacity:.7}.student-management{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e2e8f0}.student-count{font-size:14px;color:#4a5568;font-weight:500}.refresh-students-btn{background:#667eea;border:none;color:#fff;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:14px;transition:all .3s ease}.refresh-students-btn:hover:not(:disabled){background:#5a67d8;transform:translateY(-1px)}.refresh-students-btn:disabled{opacity:.6;cursor:not-allowed}.student-selector{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px solid #cbd5e0;border-radius:12px;padding:20px;margin-bottom:20px;transition:all .3s ease}.selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-weight:600;color:#2d3748}.selector-title{flex:1}.collapse-toggle{background:none;border:none;font-size:16px;font-weight:600;color:#2d3748;cursor:pointer;padding:8px 12px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;gap:8px;width:100%;text-align:left}.collapse-toggle:hover{background:#4299e11a;color:#3182ce}.student-selector.collapsed{padding-bottom:20px}.collapsed-preview{font-size:14px;font-weight:500;color:#4a5568;margin-top:8px;padding:8px 12px;background:#4299e11a;border-radius:6px;border-left:3px solid #4299e1;max-height:60px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selector-controls{display:flex;gap:10px}.select-all-btn,.clear-all-btn{padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.select-all-btn{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff}.select-all-btn:hover{background:linear-gradient(135deg,#3182ce,#2b77b3);transform:translateY(-1px)}.clear-all-btn{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.clear-all-btn:hover{background:linear-gradient(135deg,#e53e3e,#c53030);transform:translateY(-1px)}.student-dropdown{background:#fff;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:300px}}.search-section{padding:15px;background:#f7fafc;border-bottom:1px solid #e2e8f0}.search-input-container{position:relative;margin-bottom:10px}.student-search-input{width:100%;padding:10px 40px 10px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s ease}.student-search-input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#a0aec0;pointer-events:none}.search-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:#a0aec0;cursor:pointer;padding:4px;border-radius:50%;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-clear-btn:hover{background:#f1f5f9;color:#4a5568}.selected-count{font-size:13px;font-weight:600;color:#4a5568}.student-options{max-height:200px;overflow-y:auto}.student-option{display:flex;align-items:center;padding:12px 15px;cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid #f1f5f9}.student-option input[type=checkbox]{margin-right:12px;transform:scale(1.2);cursor:pointer}.student-option input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.student-option .student-name{flex:1;font-weight:600;color:#2d3748}.student-option .student-grade{font-size:12px;color:#718096;background:#edf2f7;padding:2px 8px;border-radius:12px}.student-option:has(input:disabled){opacity:.6;cursor:not-allowed}.student-option:has(input:checked){background-color:#ebf8ff;border-left:4px solid #4299e1}.no-search-results{padding:20px;text-align:center;color:#718096;font-style:italic;font-size:14px}.date-range-selector{display:flex;flex-direction:column;gap:15px}.date-inputs{display:flex;gap:20px;align-items:center}.date-input-group{display:flex;flex-direction:column;gap:5px;flex:0 0 auto}.date-input-group label{font-size:14px;font-weight:600;color:#4a5568}.date-input{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .3s ease;width:150px;max-width:150px;min-width:140px}.date-input:focus{outline:none;border-color:#667eea}.quick-selectors{display:flex;gap:10px}.quick-btn{background:#f7fafc;border:2px solid #e2e8f0;color:#4a5568;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease}.quick-btn:hover{background:#edf2f7;border-color:#cbd5e0}.quick-btn.active{background:#667eea;border-color:#667eea;color:#fff}.date-range-info{margin-bottom:15px;text-align:center}.range-days{font-size:14px;color:#2d3748;font-weight:600;transition:color .3s ease}.progress-dashboard{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e2e8f0}.dashboard-header h2{margin:0;font-size:1.8rem;color:#1a202c;font-weight:700}.period-info{font-size:14px;color:#4a5568;background:#f7fafc;padding:8px 16px;border-radius:20px;border:1px solid #e2e8f0}.loading-state,.no-students{text-align:center;padding:40px 20px;color:#4a5568;font-size:16px}.progress-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:24px;padding:0 4px}.student-progress-card{background:linear-gradient(145deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:16px;padding:24px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:fadeInUp .6s ease-out}.student-progress-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:.6}.student-progress-card:hover{border-color:#c7d2fe;transform:translateY(-4px);box-shadow:0 12px 32px #667eea26,0 4px 12px #0000001a}.student-progress-card:hover:before{opacity:1}.student-info{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid #e2e8f0;position:relative}.student-info:after{content:"";position:absolute;bottom:-1px;left:0;width:60px;height:2px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px}.student-name{font-size:19px;font-weight:800;color:#1a202c;margin-bottom:6px;background:linear-gradient(135deg,#1a202c,#4a5568);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 4px rgba(0,0,0,.1)}.last-test-top{font-size:11px;color:#667eea;font-weight:600;margin-top:6px;padding:4px 8px;background:#667eea14;border-radius:12px;border:1px solid rgba(102,126,234,.2);display:inline-block;text-transform:uppercase;letter-spacing:.5px}.student-grade{font-size:14px;color:#4a5568;font-weight:500}.progress-stats{display:flex;flex-direction:column;gap:15px}.question-stats{background:#fff;border-radius:8px;padding:15px;border:1px solid #e2e8f0}.question-row{display:flex;justify-content:space-between;gap:10px}.question-item{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;padding:8px;border-radius:6px}.question-item.correct{background:#48bb781a}.question-item.wrong{background:#f565651a}.question-item.skipped{background:#a0aec01a}.question-icon{font-size:18px;font-weight:700;margin-bottom:4px}.question-item.correct .question-icon{color:#38a169}.question-item.wrong .question-icon{color:#e53e3e}.question-item.skipped .question-icon{color:#a0aec0}.question-count{font-size:16px;font-weight:700;color:#1a202c;margin-bottom:2px}.question-label{font-size:11px;color:#4a5568;font-weight:600;text-transform:uppercase}.test-metrics-charts{display:flex;justify-content:space-around;padding:20px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;border:1px solid #e2e8f0;gap:15px;box-shadow:0 2px 8px #0000000a;margin-bottom:8px}.performance-charts{display:flex;justify-content:space-around;padding:20px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:12px;border:1px solid #e2e8f0;gap:25px;box-shadow:0 2px 8px #0000000a;margin-bottom:8px}.chart-container{display:flex;flex-direction:column;align-items:center;gap:10px;position:relative}.pie-chart{width:85px;height:85px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 6px 16px #0000001f,0 2px 4px #00000014;cursor:pointer}.pie-chart:hover{transform:scale(1.15) translateY(-4px);box-shadow:0 16px 32px #0003,0 8px 16px #00000026;z-index:10}.pie-chart:hover .pie-center{background:linear-gradient(135deg,#fff,#f0f9ff);border-color:#667eea4d}.pie-chart:hover .pie-percentage{font-size:16px;color:#667eea}.pie-chart:before{content:"";position:absolute;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.3),transparent 50%);pointer-events:none}.pie-center{width:64px;height:64px;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 2px 4px #0000000f;border:2px solid rgba(255,255,255,.8);z-index:2;position:relative}.pie-percentage{font-size:15px;font-weight:800;color:#1f2937;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.1)}.pie-label{font-size:9px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.8px;margin-top:1px}.chart-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;padding:4px 12px;border-radius:20px;background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 8px #00000014;text-shadow:0 1px 2px rgba(255,255,255,.8);min-width:80px;text-align:center}@keyframes pieChartReveal{0%{transform:scale(.8) rotate(-10deg);opacity:0}50%{transform:scale(1.05) rotate(5deg);opacity:.8}to{transform:scale(1) rotate(0);opacity:1}}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.last-test{font-size:12px;color:#4a5568;text-align:center;padding:8px;background:#667eea0d;border-radius:6px;border:1px solid rgba(102,126,234,.1)}.student-actions{margin-top:15px;text-align:center}.view-details-button{background:#667eea;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;transition:all .3s ease;width:100%}.view-details-button:hover{background:#5a67d8;transform:translateY(-1px)}.student-tests-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000001a;border:1px solid #e2e8f0}.tests-header{margin-bottom:25px;padding-bottom:20px;border-bottom:2px solid #e2e8f0}.tests-header .student-info h3{margin:0 0 5px;color:#1a202c;font-size:1.5rem}.tests-header .student-info p{margin:2px 0;color:#4a5568;font-size:14px}.loading-spinner{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-right:10px}.progress-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#4a5568;background:#f8fafc;border-radius:12px;margin:20px 0}.progress-loading .loading-spinner{width:32px;height:32px;border:4px solid #f3f3f3;border-top:4px solid #667eea;margin:0 0 16px}.student-progress-card.loading{opacity:.8;background:linear-gradient(145deg,#f8fafc,#f1f5f9)}.progress-loading-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#64748b;font-size:.9rem;min-height:120px}.progress-loading-placeholder .loading-spinner.small{width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:8px}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.student-progress-card:nth-child(1){animation-delay:.1s}.student-progress-card:nth-child(2){animation-delay:.2s}.student-progress-card:nth-child(3){animation-delay:.3s}.student-progress-card:nth-child(4){animation-delay:.4s}.student-progress-card:nth-child(5){animation-delay:.5s}.student-progress-card.loading{animation:pulse 1.5s ease-in-out infinite}.tests-list{display:flex;flex-direction:column;gap:20px}.test-item{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s ease}.test-item:hover{border-color:#cbd5e0;transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.test-info,.test-main{margin-bottom:15px}.test-name{font-size:1.2rem;font-weight:700;color:#1a202c;margin:0 0 5px}.test-description{color:#4a5568;margin:0;font-size:14px}.test-meta{display:flex;flex-wrap:wrap;gap:15px;font-size:13px;color:#4a5568}.test-meta span{background:#edf2f7;padding:4px 8px;border-radius:4px;font-weight:500}.test-link{color:#667eea;text-decoration:none;margin-left:5px}.test-link:hover{text-decoration:underline}.test-results-summary{margin-top:10px;padding:15px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.test-status.completed{color:#38a169;font-weight:600}.test-status.pending{color:#a0aec0;font-weight:600}.results-grid{display:flex;gap:15px;margin:10px 0;flex-wrap:wrap}.result-item{padding:6px 10px;border-radius:6px;font-weight:600;font-size:13px}.result-item.correct{background:#48bb7826;color:#38a169}.result-item.incorrect{background:#f5656526;color:#e53e3e}.result-item.skipped{background:#a0aec026;color:#a0aec0}.result-item.score{background:#667eea26;color:#5a67d8}.completion-date{font-size:12px;color:#4a5568;margin-top:8px;display:block}.test-actions{display:flex;gap:10px;margin-top:15px}.view-test-button,.take-test-button,.copy-link-button{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;transition:all .3s ease}.view-test-button{background:#38a169;color:#fff}.view-test-button:hover{background:#2f855a}.take-test-button{background:#667eea;color:#fff}.take-test-button:hover{background:#5a67d8}.copy-link-button{background:#edf2f7;color:#4a5568;border:1px solid #e2e8f0}.copy-link-button:hover{background:#e2e8f0}.no-tests{text-align:center;padding:40px 20px;color:#4a5568}.no-tests p{margin-bottom:20px;font-size:16px}@media (max-width: 768px){.progress-container{padding:10px}.student-management{flex-direction:column;align-items:flex-start;gap:10px}.student-selector{padding:15px}.selector-header{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:10px}.collapse-toggle{font-size:14px;padding:6px 10px}.selector-controls{width:100%;justify-content:center;margin-top:10px}.student-options{max-height:150px}.student-option{padding:10px 12px}.student-option .student-name{font-size:14px}.student-option .student-grade{font-size:11px}.collapsed-preview{font-size:12px;padding:6px 10px;margin-top:6px}.search-section{padding:12px}.student-search-input{padding:8px 35px 8px 10px;font-size:13px}.search-icon{right:10px;font-size:14px}.search-clear-btn{right:6px;font-size:14px;padding:3px}.selected-count{font-size:12px}.no-search-results{padding:15px;font-size:13px}.date-inputs{flex-direction:column;gap:10px}.date-input{width:100%;max-width:200px;min-width:150px}.quick-selectors{flex-wrap:wrap;gap:8px}.dashboard-header{flex-direction:column;align-items:flex-start;gap:15px}.dashboard-header h2{font-size:1.5rem}.progress-grid{grid-template-columns:1fr;gap:15px}.student-progress-card{padding:15px}.question-row{gap:8px}.test-metrics-charts,.performance-charts{flex-direction:row;gap:12px;padding:15px;justify-content:center;flex-wrap:wrap}.pie-chart{width:75px;height:75px}.pie-chart:active{transform:scale(1.1);box-shadow:0 8px 25px #0000004d}.pie-center{width:56px;height:56px}.pie-percentage{font-size:13px}.pie-label{font-size:8px}.chart-status{font-size:10px;padding:3px 10px;min-width:70px}}@media (max-width: 480px){.progress-header h1{font-size:1.4rem}.dashboard-header h2{font-size:1.3rem}.student-name,.question-icon{font-size:16px}.question-count{font-size:14px}.pie-chart{width:65px;height:65px}.pie-center{width:48px;height:48px}.pie-percentage{font-size:11px}.pie-label{font-size:7px}.test-metrics-charts{gap:8px;padding:10px}}.test-summary-card{background:#fff;border-radius:8px;padding:16px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;cursor:pointer;transition:all .2s ease;position:relative}.test-summary-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.test-summary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:12px}.test-name{margin:0 0 8px;font-size:1rem;font-weight:600;color:#1a202c;line-height:1.3}.test-meta-inline{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.meta-item{font-size:.8rem;color:#4a5568;white-space:nowrap}.meta-item.score.high{color:#16a34a;font-weight:500}.meta-item.score.medium{color:#d97706;font-weight:500}.meta-item.score.low{color:#dc2626;font-weight:500}.completion-indicator{display:flex;flex-direction:column;align-items:center;min-width:60px;padding:6px 10px;background:#00000008;border-radius:6px}.completion-percentage{font-size:1.2rem;font-weight:700;line-height:1}.test-summary-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.action-btn{flex:1;min-width:70px;padding:6px 10px;border:1px solid #e2e8f0;border-radius:4px;background:#fff;color:#4a5568;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;white-space:nowrap}.action-btn:hover{background-color:#f7fafc;border-color:#cbd5e0}.action-btn.primary{background-color:#667eea;color:#fff;border-color:#667eea}.action-btn.primary:hover{background-color:#5a67d8;border-color:#5a67d8}.action-btn.secondary:hover{background-color:#edf2f7}@media (max-width: 768px){.test-summary-card{padding:14px}.test-summary-header{flex-direction:column;gap:10px}.completion-indicator{align-self:flex-start;min-width:50px}.completion-percentage{font-size:1rem}.test-name{font-size:.95rem}.test-meta-inline{gap:8px}.meta-item{font-size:.75rem}.action-btn{font-size:.75rem;padding:5px 8px}}@media (max-width: 480px){.test-summary-actions{flex-direction:column}.action-btn{flex:none}.test-meta-inline{flex-direction:column;align-items:flex-start;gap:4px}.meta-item{font-size:.7rem}}.pod-progress-section{max-width:1200px;margin:0 auto;padding:20px}.pod-info-header{display:flex;align-items:flex-start;gap:16px;background:#fff;padding:24px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.pod-color-indicator{width:8px;height:60px;border-radius:4px;flex-shrink:0}.pod-details h2{margin:0 0 8px;font-size:1.5rem;font-weight:600;color:#1a202c}.pod-title-line{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:8px}.pod-title-line h2{margin:0;font-size:1.5rem;font-weight:600;color:#1a202c}.pod-title-line .student-count,.pod-title-line .created-date{font-size:.9rem;color:#718096;white-space:nowrap}.pod-description{margin:0 0 12px;color:#4a5568;line-height:1.5}.pod-meta{display:flex;gap:24px;flex-wrap:wrap}.pod-meta span{font-size:.9rem;color:#718096}.pod-details{display:flex;flex-direction:column;gap:12px}.pod-details .summary-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:8px}.pod-details .summary-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:#f8f9fa;border-radius:6px;border-left:4px solid #007bff}.pod-details .summary-label{font-size:.8rem;color:#6c757d;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.pod-details .summary-value{font-size:1rem;color:#495057;font-weight:500}.pod-stats-overview{background:#fff;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.pod-stats-overview h3{margin:0 0 16px;font-size:1.2rem;font-weight:600;color:#1a202c}.pod-stats-grid{display:flex;gap:12px;flex-wrap:nowrap;justify-content:stretch}.pod-stat-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-radius:12px;min-width:0;transition:transform .2s ease;flex:1;overflow:hidden}.pod-stat-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.pod-stat-item.clickable{cursor:pointer;transition:all .2s ease}.pod-stat-item.clickable:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0003}.pod-stat-item.active{transform:scale(1.02);box-shadow:0 4px 16px #00000040;border-width:3px}.pod-stat-item.active.total{box-shadow:0 4px 16px #2196f366}.pod-stat-item.active.completed{box-shadow:0 4px 16px #28a74566}.pod-stat-item.active.partial{box-shadow:0 4px 16px #ffc10766}.pod-stat-item.active.pending{box-shadow:0 4px 16px #dc354566}.pod-stat-item.total{background:linear-gradient(135deg,#e3f2fd,#f8fdff);border:2px solid #2196f3;color:#0d47a1}.pod-stat-item.completed{background:linear-gradient(135deg,#d4edda,#f8fff9);border:2px solid #28a745;color:#155724}.pod-stat-item.partial{background:linear-gradient(135deg,#fff3cd,#fffbf0);border:2px solid #ffc107;color:#856404}.pod-stat-item.pending{background:linear-gradient(135deg,#f8d7da,#fff5f5);border:2px solid #dc3545;color:#721c24}.pod-stat-item .stat-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.pod-stat-item .stat-value{font-size:1.2rem;font-weight:700;line-height:1;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.pod-students-summary{background:#fff;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.pod-students-summary h3{margin:0 0 16px;font-size:1.2rem;font-weight:600;color:#1a202c}.students-list{display:flex;flex-wrap:wrap;gap:8px}.student-chip{display:flex;align-items:center;gap:8px;background:#f7fafc;border:1px solid #e2e8f0;border-radius:20px;padding:6px 12px;font-size:.85rem}.student-name{font-weight:500;color:#2d3748}.student-grade{color:#718096;font-size:.8rem}.tests-overview-section{background:#fff;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header-controls{display:flex;align-items:center;gap:8px}.filter-toggle-button{padding:6px 12px;border:none;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.filter-toggle-button:hover{opacity:.9;transform:translateY(-1px)}.show-all-tests-button{padding:8px 16px;background-color:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.show-all-tests-button:hover{background-color:#5a67d8;transform:translateY(-1px)}.section-header h3{margin:0;font-size:1.2rem;font-weight:600;color:#1a202c}.loading-indicator{display:flex;align-items:center;gap:8px;color:#4a5568;font-size:.9rem}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner.small{width:14px;height:14px;border-width:2px}.pod-tests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;justify-content:start}.loading-tests{text-align:center;padding:40px 20px;color:#4a5568}.no-tests .empty-state{text-align:center;padding:40px 20px}.empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.empty-state h4{margin:0 0 8px;color:#2d3748;font-size:1.1rem}.empty-state p{margin:0;color:#718096}.loading-container{display:flex;justify-content:center;align-items:center;padding:60px 20px;color:#4a5568}.error-container{text-align:center;padding:40px 20px}.error-container h3{color:#dc3545;margin-bottom:16px}.error-container p{color:#6c757d;margin-bottom:20px}.back-button{background-color:#667eea;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500}.back-button:hover{background-color:#5a67d8}.test-detail-section{max-width:1000px;margin:0 auto;padding:20px}.test-summary-header{background:#fff;padding:24px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.test-summary-header h2{margin:0 0 8px;font-size:1.5rem;font-weight:600;color:#1a202c}.test-title-with-badges{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.test-title-badges{display:flex;gap:8px;flex-wrap:wrap}.score-badge,.date-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:500;gap:4px}.score-badge.high{background-color:#c6f6d5;color:#22543d}.score-badge.medium{background-color:#fefcbf;color:#744210}.score-badge.low{background-color:#fed7d7;color:#742a2a}.date-badge{background-color:#e2e8f0;color:#4a5568}.test-description{margin:0 0 8px;color:#4a5568;line-height:1.5}.test-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:20px}.test-title-section{flex:1}.test-meta-stats{display:flex;gap:12px;flex-shrink:0}.test-meta-stats .summary-stat{min-width:120px;flex:none}.test-summary-stats{display:flex;flex-direction:row;gap:12px;flex-wrap:nowrap;padding:0;margin-bottom:20px;width:100%}.summary-stat{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-radius:12px;min-width:0;transition:transform .2s ease;flex:1;overflow:hidden}.summary-stat:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.summary-stat.correct{background:linear-gradient(135deg,#d4edda,#f8fff9);border:2px solid #28a745;color:#155724}.summary-stat.incorrect{background:linear-gradient(135deg,#f8d7da,#fff5f5);border:2px solid #dc3545;color:#721c24}.summary-stat.skipped{background:linear-gradient(135deg,#fff3cd,#fffbf0);border:2px solid #ffc107;color:#856404}.summary-stat.all{background:linear-gradient(135deg,#e9ecef,#f8f9fa);border:2px solid #6c757d;color:#495057}.summary-stat.questions{background:linear-gradient(135deg,#e3f2fd,#f8fdff);border:2px solid #2196f3;color:#0d47a1}.summary-stat.progress{background:linear-gradient(135deg,#f3e5f5,#faf8fb);border:2px solid #9c27b0;color:#4a148c}.summary-stat.created{background:linear-gradient(135deg,#fff8e1,#fffef7);border:2px solid #ff9800;color:#e65100}.stat-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.stat-value{font-size:1.1rem;font-weight:700;line-height:1;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.students-section{background:#fff;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:20px}.students-section h3{margin:0 0 16px;font-size:1.2rem;font-weight:600;color:#1a202c}.students-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.student-result-card{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:8px;padding:16px;transition:all .2s ease}.student-result-card.completed{border-left:4px solid #28a745}.student-result-card.pending{border-left:4px solid #ffc107}.student-result-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.student-info h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:#1a202c}.student-email{margin:0 0 12px;font-size:.85rem;color:#718096}.result-details{display:flex;flex-direction:column;gap:8px}.score-display{text-align:center;margin-bottom:8px}.score-value{font-size:1.5rem;font-weight:700;color:#28a745}.results-breakdown{display:flex;justify-content:center;gap:8px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.results-breakdown .score-item{display:flex;flex-direction:column;align-items:center;padding:8px 12px;border-radius:6px;font-size:.85rem;min-width:60px;text-align:center}.results-breakdown .score-item.correct{background:linear-gradient(135deg,#d4edda,#f8fff9);border:2px solid #28a745;color:#155724}.results-breakdown .score-item.incorrect{background:linear-gradient(135deg,#f8d7da,#fff5f5);border:2px solid #dc3545;color:#721c24}.results-breakdown .score-item.skipped{background:linear-gradient(135deg,#fff3cd,#fffbf0);border:2px solid #ffc107;color:#856404}.results-breakdown .score-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;opacity:.8}.results-breakdown .score-count{font-size:1rem;font-weight:700}.completion-time{text-align:center;font-size:.85rem;color:#718096;margin-top:8px}.pending-status{text-align:center;padding:20px}.status-text{color:#6c757d;font-style:italic}.test-actions-section{display:flex;justify-content:center;gap:16px;margin-top:24px}.action-button{padding:12px 24px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.action-button.primary{background-color:#667eea;color:#fff}.action-button.primary:hover{background-color:#5a67d8}.action-button.secondary{background-color:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.action-button.secondary:hover{background-color:#edf2f7;border-color:#cbd5e0}@media (max-width: 1024px){.pod-stats-grid{flex-wrap:wrap;gap:10px}.pod-stat-item{flex:1 1 calc(50% - 5px);min-width:140px}.pod-tests-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.test-summary-stats{flex-wrap:wrap;gap:10px}.summary-stat{flex:1 1 calc(50% - 5px);min-width:140px}}@media (max-width: 768px){.pod-progress-section,.test-detail-section{padding:16px}.pod-info-header{padding:20px}.pod-title-line{flex-direction:column;align-items:flex-start;gap:8px}.pod-title-line h2{font-size:1.3rem}.pod-title-line .student-count,.pod-title-line .created-date{font-size:.85rem}.pod-details h2{font-size:1.3rem}.pod-meta{flex-direction:column;gap:8px}.pod-stats-grid{gap:8px}.pod-stat-item{min-width:140px;flex:1 1 calc(50% - 4px)}.pod-tests-grid{grid-template-columns:1fr}.test-title-with-badges,.test-title-badges{gap:6px}.score-badge,.date-badge{font-size:.7rem;padding:3px 6px}.test-header-top{flex-direction:column;gap:16px}.test-meta-stats{justify-content:flex-start}.test-summary-stats{gap:6px;flex-wrap:wrap}.summary-stat{min-width:140px;max-width:none;padding:10px 12px;justify-content:space-between;flex:1 1 calc(50% - 3px)}.students-grid{grid-template-columns:1fr}.test-actions-section{flex-direction:column;align-items:center}.action-button{width:200px;justify-content:center}}@media (max-width: 480px){.pod-info-header{flex-direction:column;gap:12px}.pod-color-indicator{width:60px;height:8px}.students-list{flex-direction:column}.student-chip{justify-content:space-between}.pod-stats-grid{flex-direction:column;gap:8px}.pod-stat-item{min-width:auto;padding:10px 12px}.pod-stat-item .stat-label{font-size:.7rem}.pod-stat-item .stat-value{font-size:1.1rem}.test-meta-stats{flex-direction:column;gap:8px}.test-summary-stats{flex-direction:column;gap:8px;padding:12px}.summary-stat{padding:8px 10px}.stat-label{font-size:.7rem}.stat-value{font-size:1rem}.results-breakdown{flex-direction:column;gap:4px;text-align:center}}.pending-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.student-actions{display:flex;gap:8px;flex-wrap:wrap}.student-action-btn{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;font-size:.8rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.student-action-btn:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.student-action-btn.copy-link{background:linear-gradient(135deg,#e3f2fd,#f8fdff);color:#1976d2;border-color:#bbdefb}.student-action-btn.copy-link:hover{background:linear-gradient(135deg,#bbdefb,#e3f2fd);box-shadow:0 2px 4px #1976d233}.student-action-btn.open-test{background:linear-gradient(135deg,#f3e5f5,#faf8fb);color:#7b1fa2;border-color:#e1bee7}.student-action-btn.open-test:hover{background:linear-gradient(135deg,#e1bee7,#f3e5f5);box-shadow:0 2px 4px #7b1fa233}.student-action-btn:active{transform:translateY(0)}.action-note{margin-top:12px;padding:12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0c4a6e;font-size:.9rem;text-align:center}.pod-summary-dashboard{background:#fff;padding:24px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:24px}.pod-summary-dashboard h3{margin:0 0 20px;font-size:1.25rem;font-weight:600;color:#1a202c;display:flex;align-items:center;gap:8px}.summary-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-stat-card{display:flex;align-items:center;gap:12px;padding:20px;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;transition:all .2s ease}.summary-stat-card.clickable:hover{border-color:#667eea;background:#f0f4ff;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.summary-stat-card.active{border-color:#667eea;background:#f0f4ff;box-shadow:0 2px 6px #667eea26}.summary-stat-card.completed{background:#f0fdf4;border-color:#16a34a}.summary-stat-card.completed:hover{background:#dcfce7;border-color:#15803d}.summary-stat-card.partial{background:#fffbeb;border-color:#f59e0b}.summary-stat-card.partial:hover{background:#fef3c7;border-color:#d97706}.summary-stat-card.pending{background:#fef2f2;border-color:#ef4444}.summary-stat-card.pending:hover{background:#fee2e2;border-color:#dc2626}.summary-stat-card.average-score{background:#f0f9ff;border-color:#0ea5e9}.stat-icon{font-size:2rem;opacity:.8}.stat-content{flex:1}.stat-number{font-size:1.75rem;font-weight:700;margin:0;color:#1a202c}.stat-number.score.high{color:#16a34a}.stat-number.score.medium{color:#f59e0b}.stat-number.score.low{color:#ef4444}.stat-number.score.neutral{color:#6b7280}.stat-label{font-size:.9rem;color:#64748b;font-weight:500;margin-top:4px}.active-filter-indicator{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#e0e7ff;border:1px solid #c7d2fe;border-radius:8px;margin-top:16px}.filter-label{font-size:.9rem;color:#3730a3}.clear-filter-btn{padding:6px 12px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:.8rem;cursor:pointer;font-weight:500;transition:background-color .2s ease}.clear-filter-btn:hover{background:#4f46e5}.integrated-summary-stats{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.summary-stat-compact{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:8px 12px;display:flex;align-items:center;gap:6px;transition:all .3s ease;min-width:fit-content}.summary-stat-compact.clickable{cursor:pointer}.summary-stat-compact.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a;border-color:#007bff}.summary-stat-compact.active{background:#e3f2fd;border-color:#2196f3;box-shadow:0 2px 6px #2196f333}.summary-stat-compact.completed{background:#e8f5e8;border-color:#4caf50}.summary-stat-compact.completed.active{background:#c8e6c9;border-color:#388e3c}.summary-stat-compact.partial{background:#fff3e0;border-color:#ff9800}.summary-stat-compact.partial.active{background:#ffe0b2;border-color:#f57c00}.summary-stat-compact.pending{background:#ffebee;border-color:#f44336}.summary-stat-compact.pending.active{background:#ffcdd2;border-color:#d32f2f}.summary-stat-compact.average-score{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.summary-stat-compact .stat-icon{font-size:1.1rem}.summary-stat-compact .stat-value{font-weight:600;font-size:1rem}.summary-stat-compact .stat-value.score.high{color:#4caf50}.summary-stat-compact .stat-value.score.medium{color:#ff9800}.summary-stat-compact .stat-value.score.low{color:#f44336}.summary-stat-compact .stat-value.score.neutral{color:#9e9e9e}.summary-stat-compact.average-score .stat-value.score{color:#fff}.summary-stat-compact .stat-label{font-size:.8rem;color:#666;font-weight:500}.summary-stat-compact.average-score .stat-label{color:#ffffffe6}.integrated-summary-stats.loading{justify-content:center;padding:20px}.summary-loading{display:flex;align-items:center;gap:10px;color:#4a5568;font-size:.9rem;background:#f8fafc;padding:12px 20px;border-radius:8px;border:1px solid #e2e8f0}.summary-loading .loading-spinner.small{width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.summary-stat-compact.loading-placeholder{background:linear-gradient(90deg,#f3f4f6,#e5e7eb,#f3f4f6);background-size:200% 100%;animation:shimmer 1.5s infinite;pointer-events:none;cursor:default}.summary-stat-compact.loading-placeholder .loading-spinner.small{width:12px;height:12px;border:2px solid #e5e7eb;border-top:2px solid #9ca3af}.test-summary-card.loading-placeholder{background:linear-gradient(145deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:20px;opacity:.8;animation:pulse 1.5s ease-in-out infinite}.test-summary-card.loading-placeholder .card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.test-summary-card.loading-placeholder .placeholder-text{height:20px;background:linear-gradient(90deg,#e5e7eb,#d1d5db,#e5e7eb);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;flex:1}.test-summary-card.loading-placeholder .card-content{margin-top:16px}.test-summary-card.loading-placeholder .placeholder-stats{display:flex;gap:12px;justify-content:space-between}.test-summary-card.loading-placeholder .stat-placeholder{height:40px;background:linear-gradient(90deg,#e5e7eb,#d1d5db,#e5e7eb);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:6px;flex:1}@keyframes pulse{0%,to{opacity:.8}50%{opacity:.6}}.active-filter-indicator.compact{background:#e3f2fd;padding:6px 12px;border-radius:6px;border:1px solid #2196f3;display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:.85rem}.active-filter-indicator.compact .filter-label{font-size:.85rem;color:#1976d2}.active-filter-indicator.compact .clear-filter-btn{background:#2196f3;color:#fff;border:none;padding:3px 8px;border-radius:4px;font-size:.75rem;cursor:pointer;transition:background .3s ease}.active-filter-indicator.compact .clear-filter-btn:hover{background:#1976d2}@media (max-width: 768px){.summary-stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.summary-stat-card{padding:16px;gap:8px}.stat-icon,.stat-number{font-size:1.5rem}.integrated-summary-stats{gap:8px}.summary-stat-compact{padding:6px 10px;gap:4px}.summary-stat-compact .stat-icon{font-size:1rem}.summary-stat-compact .stat-value{font-size:.9rem}.summary-stat-compact .stat-label{font-size:.75rem}}@media (max-width: 480px){.summary-stats-grid{grid-template-columns:1fr}}@media (max-width: 768px){.pending-actions{align-items:stretch}.student-actions{justify-content:center}.student-action-btn{font-size:.75rem;padding:4px 8px}}.pod-management-controls{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:24px;margin-bottom:32px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;position:relative}.pod-management-controls:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:16px 16px 0 0;opacity:.7}.student-selector{background:#fff;border-radius:12px;margin-bottom:24px;box-shadow:0 2px 10px #0000000d;border:1px solid #e2e8f0}.selector-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.selector-title{flex-grow:1}.collapse-toggle{background:none;border:none;font-size:14px;font-weight:600;color:#4a5568;cursor:pointer;display:flex;align-items:center;gap:8px;padding:0;transition:color .2s ease}.collapse-toggle:hover{color:#667eea}.toggle-icon{font-size:12px;transition:transform .2s ease}.collapsed-preview{font-size:12px;color:#718096;margin-top:4px;font-style:italic}.selector-controls{display:flex;gap:8px}.select-all-btn,.clear-all-btn{background:#667eea;color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.clear-all-btn{background:#e53e3e}.select-all-btn:hover{background:#5a67d8}.clear-all-btn:hover{background:#c53030}.student-dropdown{padding:16px 20px 20px}.search-section{margin-bottom:16px}.search-input-container{position:relative;margin-bottom:8px}.student-search-input{width:100%;padding:10px 40px 10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;background:#f8fafc;transition:all .2s ease}.student-search-input:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.search-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:#a0aec0;cursor:pointer;font-size:16px;padding:4px;border-radius:4px;transition:color .2s ease}.search-clear-btn:hover{color:#e53e3e}.search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#a0aec0;font-size:14px;pointer-events:none}.selected-count{font-size:12px;color:#718096}.student-options{max-height:200px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.student-option{display:flex;align-items:center;padding:12px 16px;cursor:pointer;border-bottom:1px solid #f7fafc;transition:background-color .2s ease}.student-option:last-child{border-bottom:none}.student-option:hover{background-color:#f8fafc}.student-option input[type=checkbox]{margin-right:12px;transform:scale(1.1)}.student-name{font-weight:500;color:#2d3748;flex-grow:1}.student-grade{font-size:12px;color:#718096;background:#f1f5f9;padding:2px 6px;border-radius:10px}.no-search-results{padding:20px;text-align:center;color:#a0aec0;font-style:italic}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 10px 30px #0003;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{margin-bottom:16px}.modal-header h3{margin:0;color:#2d3748;font-size:18px;font-weight:600}.modal-body{margin-bottom:24px}.modal-body p{margin:0 0 8px;color:#4a5568;line-height:1.5}.modal-warning{color:#e53e3e!important;font-weight:500;font-size:14px}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-cancel-button,.modal-delete-button{padding:8px 16px;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-cancel-button{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.modal-cancel-button:hover{background:#edf2f7}.modal-delete-button{background:#e53e3e;color:#fff}.modal-delete-button:hover{background:#c53030}.grade-conflict-modal{max-width:500px}.grade-conflict-modal .modal-header h3{color:#d69e2e;display:flex;align-items:center;gap:8px}.grade-list{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}.grade-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.modal-note{color:#718096!important;font-size:14px;font-style:italic}.modal-confirm-button{padding:8px 16px;border-radius:6px;border:none;font-weight:500;cursor:pointer;transition:all .2s ease;background:#d69e2e;color:#fff}.modal-confirm-button:hover{background:#b7791f}.pods-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:#fff;padding:1.5rem;border-radius:15px;box-shadow:0 4px 20px #0000001a}.pods-stats{display:flex;gap:2rem}.stat-card{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-number{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:.25rem}.stat-label{font-size:.9rem;color:#666;font-weight:500}.create-pod-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.create-pod-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.create-pod-form{background:#fff;border-radius:15px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 20px #0000001a}.create-pod-form h3{margin:0 0 1.5rem;color:#333;font-size:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#333;font-weight:600;font-size:.95rem}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e1e5e9;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.error-message{background:#fee;color:#c53030;padding:.75rem;border-radius:8px;margin-bottom:1rem;border-left:4px solid #c53030}.students-selection{max-height:200px;overflow-y:auto;border:2px solid #e1e5e9;border-radius:8px;padding:1rem}.student-checkbox{display:flex;align-items:center;padding:.5rem 0;border-bottom:1px solid #f0f0f0}.student-checkbox:last-child{border-bottom:none}.student-checkbox input[type=checkbox]{margin-right:.75rem;width:auto}.student-checkbox label{display:flex;flex-direction:column;margin-bottom:0;cursor:pointer;flex:1}.student-name{font-weight:600;color:#333}.student-grade{font-size:.85rem;color:#666}.no-students{text-align:center;color:#666;font-style:italic;margin:1rem 0}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.cancel-button{background:#f7fafc;color:#4a5568;border:2px solid #e2e8f0;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .3s ease}.cancel-button:hover{background:#edf2f7}.create-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;cursor:pointer;transition:all .3s ease}.create-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 15px #667eea4d}.create-button:disabled{opacity:.6;cursor:not-allowed}.pods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.empty-state{grid-column:1 / -1;text-align:center;background:#fff;border-radius:15px;padding:3rem 2rem;box-shadow:0 4px 20px #0000001a}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{margin:0 0 1rem;color:#333;font-size:1.5rem}.empty-state p{margin:0 0 2rem;color:#666;font-size:1.1rem}.create-first-pod-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.create-first-pod-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.pod-card{background:#fff;border-radius:15px;padding:1.5rem;box-shadow:0 4px 20px #0000001a;border-left:4px solid #667eea;transition:all .3s ease}.pod-card:hover{transform:translateY(-2px);box-shadow:0 6px 25px #00000026}.pod-header{display:flex;align-items:flex-start;margin-bottom:1rem}.pod-color{width:12px;height:12px;border-radius:50%;margin-right:.75rem;margin-top:.25rem;flex-shrink:0}.pod-info{flex:1}.pod-name{margin:0 0 .5rem;color:#333;font-size:1.25rem;font-weight:700}.pod-description{margin:0;color:#666;font-size:.9rem;line-height:1.4}.delete-pod-button{background:none;border:none;color:#999;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .3s ease}.delete-pod-button:hover{background:#fee;color:#c53030}.pod-stats{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f0f0f0}.student-count{font-weight:600;color:#667eea}.created-date{font-size:.85rem;color:#999}.pod-students{margin-bottom:1.5rem}.pod-student{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f8f9fa}.pod-student:last-child{border-bottom:none}.pod-student .student-name{font-weight:500;color:#333}.pod-student .student-grade{font-size:.85rem;color:#666;background:#f8f9fa;padding:.25rem .5rem;border-radius:12px}.pod-actions{display:flex;gap:.5rem}.pod-action-button{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;padding:.5rem .75rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease}.pod-action-button.secondary{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0}.pod-action-button:hover{transform:translateY(-1px)}.pod-action-button.secondary:hover{background:#edf2f7}.loading-placeholder{pointer-events:none;opacity:.7}.loading-shimmer{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.pod-card.loading-placeholder{animation:pulse 1.5s ease-in-out infinite}.pod-card.loading-placeholder .pod-color{width:12px;height:12px;border-radius:50%}.pod-card.loading-placeholder .pod-name{height:20px;width:70%;margin-bottom:8px}.pod-card.loading-placeholder .pod-description{height:14px;width:90%}.pod-card.loading-placeholder .student-count,.pod-card.loading-placeholder .created-date{height:16px;width:80px}.pod-card.loading-placeholder .pod-student{height:16px;width:100%;margin-bottom:8px}.pod-card.loading-placeholder .pod-action-button{height:32px;width:100%}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.student-option.loading-placeholder{cursor:default}.student-option.loading-placeholder .student-checkbox{width:16px;height:16px;margin-right:12px;border-radius:3px}.student-option.loading-placeholder .student-name{height:16px;width:120px}.student-option.loading-placeholder .student-grade{height:16px;width:60px;border-radius:10px}.fadeInUp{animation:fadeInUp .4s ease-out forwards}@media (max-width: 768px){.student-pods-header{padding:1.5rem 1rem}.student-pods-back-button{left:1rem;position:relative;transform:none;margin-bottom:1rem}.student-pods-header h1{font-size:2rem}.student-pods-content{padding:1rem}.pods-header{flex-direction:column;gap:1rem;align-items:stretch}.pods-stats{justify-content:center}.pods-grid{grid-template-columns:1fr}.pod-actions{flex-direction:column}}.balloon-game-container{min-height:100vh;background:#f8fafc;padding:100px 30px 30px;font-family:Arial,sans-serif}.balloon-game-content{max-width:1200px;margin:0 auto;background:#f7f8fc;border-radius:16px;min-height:calc(100vh - 160px);box-shadow:0 4px 20px #0000001a;position:relative;overflow:hidden}.game-header{display:flex;justify-content:space-between;align-items:center;padding:15px 25px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);position:relative;z-index:100}.back-button{background:#fff3;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:20px;color:#fff;cursor:pointer;font-weight:500;transition:all .3s ease}.back-button:hover{background:#ffffff4d;transform:translateY(-2px)}.game-stats{display:flex;gap:30px;color:#fff;font-weight:600;font-size:16px}.score-value,.timer-value{font-size:20px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.score-value{color:#ffeaa7}.timer-value{color:#ff6b6b}.game-area{width:100%;height:calc(100vh - 120px);position:relative;overflow:hidden}.balloon{position:absolute;width:60px;height:80px;border-radius:50%/60% 60% 40% 40%;cursor:pointer;transition:transform .1s ease;box-shadow:inset -10px -10px #0000001a,2px 2px 10px #0000004d;z-index:10;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(-5px) rotate(-1deg)}66%{transform:translate(5px) rotate(1deg)}}.balloon:hover{transform:scale(1.1) translateY(-5px);box-shadow:inset -10px -10px #0000001a,4px 4px 15px #0006}.balloon-shine{position:absolute;top:15%;left:25%;width:20px;height:30px;background:#fff6;border-radius:50%;transform:rotate(-45deg);pointer-events:none}.balloon-string{position:absolute;bottom:-20px;left:50%;width:2px;height:20px;background:#333;transform:translate(-50%);pointer-events:none}.balloon-string:after{content:"";position:absolute;bottom:-8px;left:50%;width:8px;height:8px;background:#666;border-radius:50%;transform:translate(-50%)}.balloon.popping{animation:popEffect .3s ease-out;pointer-events:none}@keyframes popEffect{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.8}to{transform:scale(.8);opacity:0}}.points-display{position:absolute;top:-30px;left:50%;transform:translate(-50%);color:#ffeaa7;font-weight:700;font-size:14px;text-shadow:1px 1px 2px rgba(0,0,0,.8);opacity:0;pointer-events:none;animation:pointsAnimation .8s ease-out}.balloon.popping .points-display{opacity:1}@keyframes pointsAnimation{0%{opacity:0;transform:translate(-50%) translateY(0) scale(.8)}50%{opacity:1;transform:translate(-50%) translateY(-10px) scale(1.2)}to{opacity:0;transform:translate(-50%) translateY(-25px) scale(1)}}.game-over-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.game-over-content{background:linear-gradient(135deg,#667eea,#764ba2);padding:40px;border-radius:20px;text-align:center;color:#fff;box-shadow:0 20px 40px #0000004d;border:2px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideUp .5s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.game-over-content h2{margin:0 0 20px;font-size:28px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.final-score{font-size:24px;font-weight:700;margin-bottom:30px;color:#ffeaa7;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.game-over-buttons{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.play-again-button{background:#fff3;border:2px solid #4ecdc4;padding:12px 24px;border-radius:25px;color:#fff;cursor:pointer;font-weight:600;font-size:16px;transition:all .3s ease;min-width:140px}.play-again-button:hover{background:#ffffff4d;transform:translateY(-3px);box-shadow:0 10px 20px #0003}.back-to-dashboard-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:25px;padding:12px 24px;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease;min-width:140px;box-shadow:0 4px 12px #667eea4d}.back-to-dashboard-button:hover{transform:translateY(-3px);box-shadow:0 10px 20px #667eea66}.game-instructions{position:absolute;bottom:20px;left:50%;transform:translate(-50%);text-align:center;color:#fff;background:#0000004d;padding:10px 20px;border-radius:15px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:14px;z-index:50}.game-instructions p{margin:2px 0;text-shadow:1px 1px 2px rgba(0,0,0,.5)}@media (max-width: 768px){.game-header{padding:10px 15px;flex-direction:column;gap:10px}.game-stats{gap:20px;font-size:14px}.balloon{width:50px;height:65px}.game-over-content{margin:20px;padding:30px}.game-over-content h2{font-size:24px}.final-score{font-size:20px}.game-over-buttons{flex-direction:column;align-items:center}.play-again-button,.back-to-dashboard-button{width:100%;max-width:200px}.game-instructions{bottom:10px;font-size:12px;padding:8px 15px}}@media (max-width: 1024px) and (min-width: 769px){.balloon{width:55px;height:72px}.game-header{padding:12px 20px}}.mental-math-game{min-height:100vh;background:#f8fafc;padding:100px 30px 30px}.mental-math-game-content{max-width:1200px;margin:0 auto;background:#fff;border-radius:16px;min-height:calc(100vh - 160px);box-shadow:0 4px 20px #0000001a;background:radial-gradient(circle at 15% 25%,rgba(255,255,255,.05) 1px,transparent 1px),radial-gradient(circle at 85% 75%,rgba(255,255,255,.03) 1px,transparent 1px),radial-gradient(circle at 45% 85%,rgba(255,255,255,.04) 1px,transparent 1px),radial-gradient(circle at 75% 15%,rgba(255,255,255,.02) 1px,transparent 1px),repeating-linear-gradient(90deg,#228b22,#228b22 40px,#32cd32 40px,#32cd32 80px,#228b22 80px,#228b22 120px,#1e6b1e 120px,#1e6b1e 160px),linear-gradient(135deg,#228b22,#32cd32,#228b22);background-size:25px 25px,35px 35px,20px 20px,40px 40px,160px 100%,100% 100%;display:flex;flex-direction:column;position:relative;overflow:hidden}.mental-math-game:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(to bottom,transparent 48%,rgba(255,255,255,.9) 48%,rgba(255,255,255,.9) 52%,transparent 52%),linear-gradient(to bottom,rgba(255,255,255,.8) 0%,rgba(255,255,255,.8) 2px,transparent 2px,transparent calc(100% - 2px),rgba(255,255,255,.8) calc(100% - 2px),rgba(255,255,255,.8) 100%),linear-gradient(to right,rgba(255,255,255,.8) 0%,rgba(255,255,255,.8) 2px,transparent 2px,transparent calc(100% - 2px),rgba(255,255,255,.8) calc(100% - 2px),rgba(255,255,255,.8) 100%);z-index:1}.mental-math-game .game-content:before{content:"";position:absolute;top:50%;left:50%;width:120px;height:120px;border:3px solid rgba(255,255,255,.9);border-radius:50%;transform:translate(-50%,-50%);z-index:1;box-shadow:0 0 15px #ffffff4d,inset 0 0 15px #ffffff1a}.mental-math-game .game-content:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#ffffffe6;border-radius:50%;transform:translate(-50%,-50%);z-index:2;box-shadow:0 0 10px #ffffff80}.mental-math-game:after{content:"🥅";position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:80px;z-index:10;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));animation:goalSway 3s ease-in-out infinite}.left-goal-post{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:80px;z-index:10;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3));animation:goalSway 3.5s ease-in-out infinite}@keyframes goalSway{0%,to{transform:translateY(-50%) rotate(-1deg)}50%{transform:translateY(-50%) rotate(1deg)}}.fullscreen-soccer-field{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1000;pointer-events:none;overflow:hidden}.field-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;pointer-events:none}.center-circle{position:absolute;top:50%;left:50%;width:150px;height:150px;border:3px solid rgba(255,255,255,.4);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 15px #fff3;pointer-events:none}.center-circle:after{content:"";position:absolute;top:50%;left:50%;width:8px;height:8px;background:#fff9;border-radius:50%;transform:translate(-50%,-50%)}.penalty-areas{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.penalty-area{position:absolute;top:35%;width:80px;height:30%;border:2px solid rgba(255,255,255,.3);pointer-events:none}.penalty-area.left{left:0;border-right:none;border-radius:0 15px 15px 0}.penalty-area.right{right:0;border-left:none;border-radius:15px 0 0 15px}.corner-flags{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.flag{position:absolute;font-size:20px;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5));animation:flagWave 3s ease-in-out infinite;pointer-events:none}.flag.top-left{top:10px;left:10px}.flag.top-right{top:10px;right:10px}.flag.bottom-left{bottom:10px;left:10px}.flag.bottom-right{bottom:10px;right:10px}@keyframes flagWave{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.fullscreen-soccer-ball{position:absolute;font-size:40px;transition:all 2s cubic-bezier(.25,.46,.45,.94);z-index:10000!important;filter:drop-shadow(4px 4px 8px rgba(0,0,0,.5));animation:fullFieldBallBounce 1.2s ease-in-out infinite;text-shadow:0 0 15px rgba(255,255,255,.8),0 0 25px rgba(255,215,0,.4);pointer-events:none;isolation:isolate}.fullscreen-soccer-ball.goal-scored{animation:fullFieldBallBounce 1.2s ease-in-out infinite,fullFieldGoalScored 2s ease-out}@keyframes fullFieldBallBounce{0%,to{transform:translate(-50%) translateY(-50%) rotate(var(--rotation, 0deg)) scale(var(--scale, 1))}25%{transform:translate(-50%) translateY(-60%) rotate(var(--rotation, 0deg)) scale(calc(var(--scale, 1) * 1.05))}50%{transform:translate(-50%) translateY(-70%) rotate(var(--rotation, 0deg)) scale(calc(var(--scale, 1) * 1.1))}75%{transform:translate(-50%) translateY(-60%) rotate(var(--rotation, 0deg)) scale(calc(var(--scale, 1) * 1.05))}}@keyframes fullFieldGoalScored{0%{transform:translate(-50%) translateY(-50%) scale(1)}20%{transform:translate(-50%) translateY(-50%) scale(2);filter:drop-shadow(4px 4px 8px rgba(0,0,0,.5)) drop-shadow(0 0 30px #FFD700) drop-shadow(0 0 50px #FF6B35)}40%{transform:translate(-50%) translateY(-50%) scale(1.5)}to{transform:translate(-50%) translateY(-50%) scale(1)}}@keyframes goalScored{0%{transform:translate(-50%) translateY(-50%) scale(1)}30%{transform:translate(-50%) translateY(-50%) scale(1.5);filter:drop-shadow(3px 3px 6px rgba(0,0,0,.4)) drop-shadow(0 0 20px #FFD700)}60%{transform:translate(-50%) translateY(-50%) scale(1.2)}to{transform:translate(-50%) translateY(-50%) scale(1)}}.ball-trail{position:absolute;width:60px;height:60px;background:radial-gradient(circle at center,rgba(255,255,255,.3) 0%,rgba(255,215,0,.2) 30%,transparent 70%);border-radius:50%;transform:translate(-50%) translateY(-50%);transition:all 2s ease;pointer-events:none;z-index:9998!important;animation:trailPulse 1.5s ease-in-out infinite}@keyframes trailPulse{0%,to{opacity:.3;transform:translate(-50%) translateY(-50%) scale(1)}50%{opacity:.6;transform:translate(-50%) translateY(-50%) scale(1.2)}}.progress-markers{position:absolute;top:0;left:0;right:0;bottom:0;z-index:8;pointer-events:none}.marker{position:absolute;background:#fff3;color:#fff;padding:8px 12px;border-radius:15px;font-weight:700;font-size:14px;text-shadow:2px 2px 4px rgba(0,0,0,.8);border:2px solid rgba(255,255,255,.3);transition:all .5s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.marker.reached{background:#ffd700cc;color:#000;border-color:gold;transform:scale(1.2);box-shadow:0 0 20px #ffd70099,0 4px 15px #0000004d;animation:markerGlow 2s ease-in-out infinite}@keyframes markerGlow{0%,to{box-shadow:0 0 20px #ffd70099,0 4px 15px #0000004d}50%{box-shadow:0 0 30px #ffd700e6,0 6px 20px #0006}}.goal-celebration{position:absolute;top:15%;left:50%;transform:translate(-50%);font-size:2.5rem;font-weight:700;z-index:25;animation:goalCelebration 4s ease-out forwards;pointer-events:none;color:gold;text-shadow:0 0 10px #FFD700,0 0 20px #FF6B35,0 0 30px #FF1744,2px 2px 4px rgba(0,0,0,.8);text-align:center;white-space:nowrap}@keyframes goalCelebration{0%{opacity:0;transform:translate(-50%) scale(.3) rotate(-10deg)}10%{opacity:1;transform:translate(-50%) scale(1.4) rotate(5deg)}20%{transform:translate(-50%) scale(1.2) rotate(-2deg)}30%{transform:translate(-50%) scale(1.3) rotate(1deg)}40%{transform:translate(-50%) scale(1.1) rotate(0)}70%{opacity:1;transform:translate(-50%) scale(1) rotate(0)}85%{opacity:.8;transform:translate(-50%) scale(.9) translateY(-20px)}to{opacity:0;transform:translate(-50%) scale(.6) translateY(-80px) rotate(5deg)}}.game-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:3px solid rgba(34,139,34,.3);z-index:20;position:relative;box-shadow:0 4px 20px #0000001a}.back-button{background:#228b22cc;border:2px solid rgba(255,255,255,.5);color:#fff;padding:.5rem 1rem;border-radius:25px;cursor:pointer;font-weight:500;transition:all .3s ease}.back-button:hover{background:#228b22;transform:translateY(-2px);box-shadow:0 4px 12px #228b2266}.game-stats{display:flex;gap:2rem;align-items:center}.stat{display:flex;flex-direction:column;align-items:center;color:#2c3e50}.stat-label{font-size:.8rem;opacity:.8;margin-bottom:.2rem}.stat-value{font-size:1.5rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.game-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative;background:transparent;isolation:isolate}.progress-bar{width:100%;max-width:600px;height:8px;background:#fff3;border-radius:4px;margin-bottom:2rem;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);transition:width .3s ease;border-radius:4px}.problem-container{background:#fffffff2;border-radius:20px;padding:3rem;box-shadow:0 20px 60px #0000004d;text-align:center;max-width:600px;width:100%;position:relative;animation:slideIn .5s ease-out;z-index:100;border:3px solid rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.grade-indicator{position:absolute;top:-15px;left:2rem;background:linear-gradient(135deg,#ff6b6b,#ff8e53);color:#fff;padding:.5rem 1rem;border-radius:15px;font-size:.9rem;font-weight:700;box-shadow:0 4px 12px #ff6b6b66}.problem-display{margin-bottom:2rem}.math-question{font-size:3rem;font-weight:700;color:#2c3e50;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.1);animation:bounce .6s ease-out}@keyframes bounce{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.options-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}@keyframes buttonPulse{0%,to{box-shadow:0 6px 20px #ff6b3580,inset 0 2px 4px #ffffff4d}50%{box-shadow:0 8px 25px #ff6b35b3,inset 0 2px 6px #fff6}}@keyframes correctPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes incorrectShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.feedback{margin-top:1.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1.2rem;font-weight:700;animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.feedback.correct{color:#00b894}.feedback.incorrect{color:#e84393}.feedback-icon{font-size:1.5rem;animation:spin .8s ease-out}@keyframes spin{0%{transform:rotate(0) scale(.5)}to{transform:rotate(360deg) scale(1)}}.animation-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden}.floating-element{position:absolute;font-size:2rem;font-weight:700;pointer-events:none;animation:floatUp 1s ease-out forwards;z-index:1000}.floating-element.star{color:gold;text-shadow:0 0 10px #FFD700;animation:starBurst 1s ease-out forwards}.floating-element.plus{color:#4caf50;text-shadow:0 0 5px #4CAF50}.floating-element.sparkle{color:#ff69b4;text-shadow:0 0 8px #FF69B4}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1);left:50%}to{opacity:0;transform:translateY(-100px) scale(1.5);left:calc(50% + 50px)}}@keyframes starBurst{0%{opacity:1;transform:translateY(0) scale(.5) rotate(0);left:50%}50%{transform:translateY(-50px) scale(1.2) rotate(180deg)}to{opacity:0;transform:translateY(-120px) scale(.8) rotate(360deg);left:calc(50% + 80px)}}.game-over{width:100%;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;position:relative}.game-over:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="20" cy="20" r="2" fill="rgba(255,255,255,0.1)" opacity="0.5"><animate attributeName="opacity" values="0.5;1;0.5" dur="3s" repeatCount="indefinite"/></circle><circle cx="80" cy="30" r="1.5" fill="rgba(255,255,255,0.1)" opacity="0.3"><animate attributeName="opacity" values="0.3;0.8;0.3" dur="2s" repeatCount="indefinite"/></circle><circle cx="60" cy="70" r="1" fill="rgba(255,255,255,0.1)" opacity="0.4"><animate attributeName="opacity" values="0.4;0.9;0.4" dur="4s" repeatCount="indefinite"/></circle></svg>') repeat}.game-over-content{background:#fffffff2;border-radius:25px;padding:3rem;text-align:center;box-shadow:0 25px 80px #0000004d;max-width:500px;width:90%;animation:gameOverSlide .8s ease-out;position:relative;z-index:1}@keyframes gameOverSlide{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.game-over h2{color:#2c3e50;margin-bottom:2rem;font-size:2.5rem;animation:titlePulse 2s ease-in-out infinite}@keyframes titlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.final-stats{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}.stat-item{background:linear-gradient(135deg,#74b9ff,#0984e3);color:#fff;padding:1rem;border-radius:15px;display:flex;flex-direction:column;align-items:center;box-shadow:0 4px 15px #74b9ff4d}.stat-item .stat-label{font-size:.9rem;opacity:.9;margin-bottom:.5rem}.stat-item .stat-value{font-size:1.8rem;font-weight:700}.play-again-button{background:linear-gradient(135deg,#00b894,#00cec9);border:none;color:#fff;font-size:1.2rem;font-weight:700;padding:1rem 3rem;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #00b89466}.play-again-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #00b89499}@media (max-width: 768px){.game-stats{gap:1rem}.stat-value{font-size:1.2rem}.problem-container{padding:2rem;margin:1rem}.math-question{font-size:2rem}.option-button{font-size:1.2rem;padding:.8rem 1.5rem}.final-stats{grid-template-columns:1fr}.game-over-content{padding:2rem}}@media (max-width: 480px){.game-header{padding:1rem}.math-question{font-size:1.8rem}.options-container{grid-template-columns:1fr}.option-button{font-size:1.1rem}}.game-over-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.game-over-modal-content{background:#fff;padding:2rem;border-radius:15px;text-align:center;box-shadow:0 10px 30px #0000004d;max-width:400px;width:90%}.game-over-modal-content h2{color:#2196f3;margin-bottom:1rem;font-size:2rem}.game-over-modal-content p{color:#666;margin-bottom:2rem;font-size:1.2rem}.confirm-button{background:#4caf50;color:#fff;border:none;padding:.75rem 2rem;border-radius:25px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s ease}.confirm-button:hover{background:#45a049;transform:scale(1.05)}.game-over-ball{position:absolute;font-size:28px;z-index:10;animation:curvedMovement 4s ease-in-out infinite;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5))}.results-ball{position:absolute;font-size:28px;z-index:10;animation:victoryLap 6s linear infinite;filter:drop-shadow(2px 2px 4px rgba(0,0,0,.5))}@keyframes curvedMovement{0%{left:10%;top:70%;transform:rotate(0) scale(1)}25%{left:30%;top:40%;transform:rotate(90deg) scale(1.2)}50%{left:70%;top:30%;transform:rotate(180deg) scale(1.1)}75%{left:90%;top:60%;transform:rotate(270deg) scale(1.2)}to{left:10%;top:70%;transform:rotate(360deg) scale(1)}}@keyframes victoryLap{0%{left:5%;top:80%;transform:rotate(0)}20%{left:25%;top:20%;transform:rotate(72deg)}40%{left:75%;top:15%;transform:rotate(144deg)}60%{left:95%;top:50%;transform:rotate(216deg)}80%{left:50%;top:85%;transform:rotate(288deg)}to{left:5%;top:80%;transform:rotate(360deg)}}.field-background{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#1a6b1a,#2e8b2e,#1a6b1a,#2e8b2e,#1a6b1a);overflow:hidden;z-index:1}.field-lines{position:absolute;top:0;left:0;right:0;bottom:0;z-index:2}.field-lines:before{content:"";position:absolute;top:50%;left:0;right:0;height:3px;background:#fff;transform:translateY(-50%);box-shadow:0 0 10px #ffffff80}.field-lines:after{content:"";position:absolute;top:50%;left:50%;width:120px;height:120px;border:3px solid white;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 10px #ffffff80}.field-background:before{content:"";position:absolute;top:0;bottom:0;left:25%;width:2px;background:#fff9;z-index:2}.field-background:after{content:"";position:absolute;top:0;bottom:0;left:75%;width:2px;background:#fff9;z-index:2}.game-card-container{min-height:100vh;background:#f8fafc;padding:100px 30px 30px}.game-card{max-width:800px;margin:0 auto;background:#f7f8fc;border-radius:16px;min-height:calc(100vh - 160px);box-shadow:0 4px 20px #0000001a;padding:30px;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.game-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;flex-wrap:wrap;gap:10px}.back-button{background:#667eea1a;border:2px solid rgba(102,126,234,.3);padding:8px 16px;border-radius:20px;color:#667eea;cursor:pointer;font-weight:500;transition:all .3s ease;font-size:14px}.back-button:hover{background:#667eea33;transform:translateY(-2px)}.game-card-header h2{margin:0;color:#333;font-size:24px;text-align:center;flex:1}.last-game-score{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;padding:12px 20px;border-radius:15px;margin-bottom:20px;text-align:center;font-weight:600;box-shadow:0 4px 15px #4ecdc44d}.score-highlight{font-size:18px;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.2)}.questions-count{color:#666;font-size:14px;margin-left:8px;font-weight:400}.game-selection-section{margin-bottom:25px}.game-dropdown-container{margin-bottom:20px}.game-dropdown-container label,.timer-selection-section label{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.game-dropdown,.timer-dropdown{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;background:#fff;font-size:14px;color:#333;transition:all .2s ease;cursor:pointer}.game-dropdown:focus,.timer-dropdown:focus,.grade-dropdown:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.game-dropdown:hover,.timer-dropdown:hover,.grade-dropdown:hover{border-color:#667eea}.game-info{display:flex;align-items:center;gap:15px;background:#667eea0d;padding:15px;border-radius:15px;border-left:4px solid #667eea}.game-icon{font-size:32px;min-width:40px}.game-details h3{margin:0 0 5px;color:#333;font-size:18px}.game-details p{margin:0;color:#666;font-size:14px;line-height:1.4}.timer-selection-section,.grade-selection-section{margin-bottom:25px}.grade-selection-section{background:#ffc1071a;padding:15px;border-radius:10px;border-left:4px solid #ffc107}.grade-selection-section label{color:#856404;font-weight:700}.grade-dropdown{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:10px;background:#fff;font-size:14px;color:#333;transition:all .2s ease}.game-actions{text-align:center}.start-game-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px 28px;border-radius:15px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;width:100%;text-transform:none}.start-game-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px #667eea66}.start-game-button:active:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 15px #667eea4d}.start-game-button.disabled,.start-game-button:disabled{background:linear-gradient(135deg,#a0a0a0,#888);cursor:not-allowed;transform:none;box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.game-card-container{padding:15px}.game-card{padding:20px;max-width:none}.game-card-header{flex-direction:column;text-align:center}.game-card-header h2{font-size:20px}.back-button{align-self:flex-start}.game-info{flex-direction:column;text-align:center;gap:10px}.game-details h3{font-size:16px}.start-game-button{padding:12px 24px;font-size:14px}}.main-content{margin-left:280px;transition:margin-left .3s ease;min-height:calc(100vh - 80px);padding:20px 30px 30px}.main-content.sidebar-collapsed{margin-left:70px}.content-wrapper{max-width:1200px;margin:0 auto;background:#f7f8fc;border-radius:16px;min-height:calc(100vh - 160px);box-shadow:0 4px 20px #0000001a;padding:20px}@media (max-width: 768px){.main-content{margin-left:0;padding:45px 20px 20px;min-height:calc(100vh - 45px)}.main-content.sidebar-collapsed{margin-left:0}}@media (max-width: 480px){.main-content{padding:40px 15px 15px;min-height:calc(100vh - 40px)}}.user-info{display:flex;align-items:center;gap:16px}.profile-image{width:50px;height:50px;border-radius:50%;object-fit:cover;border:2px solid #667eea}.user-details h2{margin:0;color:#333;font-size:20px;font-weight:600}.user-email{margin:4px 0 0;color:#666;font-size:14px}.signout-button{background:#667eea;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.signout-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.signout-button:disabled{opacity:.6;cursor:not-allowed}.landing-main{padding:40px}.welcome-section{text-align:center;margin-bottom:50px}.welcome-section h1{color:#333;font-size:36px;margin-bottom:16px;font-weight:700}.welcome-section p{color:#666;font-size:18px;max-width:600px;margin:0 auto;line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:50px}.feature-card{background:#f7f8fc;border-radius:20px;padding:32px 24px;text-align:center;box-shadow:0 8px 32px #0000001a;transition:all .4s cubic-bezier(.165,.84,.44,1);position:relative;overflow:hidden;border-top:4px solid #667eea;cursor:pointer}.students-card{border-top-color:#3498db;background:linear-gradient(135deg,#f8fcff,#e3f2fd)}.pods-card{border-top-color:#2ecc71;background:linear-gradient(135deg,#f1f8e9,#e8f5e8)}.questionnaire-card{border-top-color:#e74c3c;background:linear-gradient(135deg,#fef7f0,#ffebee)}.attendance-card{border-top-color:#f39c12;background:linear-gradient(135deg,#fffef7,#fff8e1)}.progress-card{border-top-color:#9b59b6;background:linear-gradient(135deg,#f3e5f5,#f3e5f5)}.mytest-card{border-top-color:#1abc9c;background:linear-gradient(135deg,#e0f2f1,#e0f7fa)}.games-card{border-top-color:#ff6b6b;background:linear-gradient(135deg,#fff5f5,#ffebee)}.mental-math-card{border-top-color:#4ecdc4;background:linear-gradient(135deg,#e0f7fa,#e0f2f1)}.settings-card{border-top-color:#95a5a6;background:linear-gradient(135deg,#f5f5f5,#eceff1)}.upgrade-card{border-top-color:#fd79a8;background:linear-gradient(135deg,#fdf2f8,#f3e8ff)}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffff1a,#fff0 50%);opacity:0;transition:opacity .3s ease}.feature-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #00000026}.feature-card:hover:before{opacity:1}.students-card{border-top-color:#3498db;background:linear-gradient(135deg,#fff,#f8fbff)}.students-card:hover{box-shadow:0 20px 40px #3498db4d}.pods-card{border-top-color:#2ecc71;background:linear-gradient(135deg,#fff,#f8fffe)}.pods-card:hover{box-shadow:0 20px 40px #2ecc714d}.questionnaire-card{border-top-color:#e74c3c;background:linear-gradient(135deg,#fff,#fffbfb)}.questionnaire-card:hover{box-shadow:0 20px 40px #e74c3c4d}.attendance-card{border-top-color:#f39c12;background:linear-gradient(135deg,#fff,#fffef9)}.attendance-card:hover{box-shadow:0 20px 40px #f39c124d}.progress-card{border-top-color:#9b59b6;background:linear-gradient(135deg,#fff,#fefcff)}.progress-card:hover{box-shadow:0 20px 40px #9b59b64d}.mytest-card{border-top-color:#1abc9c;background:linear-gradient(135deg,#fff,#f9ffff)}.mytest-card:hover{box-shadow:0 20px 40px #1abc9c4d}.games-card{border-top-color:#ff6b6b;background:linear-gradient(135deg,#fff,#fffbfb)}.games-card:hover{box-shadow:0 20px 40px #ff6b6b4d}.mental-math-card{border-top-color:#4ecdc4;background:linear-gradient(135deg,#fff,#faffff)}.mental-math-card:hover{box-shadow:0 20px 40px #4ecdc44d}.settings-card{border-top-color:#95a5a6;background:linear-gradient(135deg,#fff,#fdfdfd)}.settings-card:hover{box-shadow:0 20px 40px #95a5a64d}.upgrade-card{border-top-color:#8e44ad;background:linear-gradient(135deg,#fff,#fefbff)}.upgrade-card:hover{box-shadow:0 20px 40px #8e44ad4d}.feature-icon{font-size:36px;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 20px #667eea4d;transition:all .3s ease;color:#fff}.students-card .feature-icon{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 20px #3498db4d;color:#fff}.pods-card .feature-icon{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 4px 20px #2ecc714d;color:#fff}.questionnaire-card .feature-icon{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 20px #e74c3c4d;color:#fff}.attendance-card .feature-icon{background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 4px 20px #f39c124d;color:#fff}.progress-card .feature-icon{background:linear-gradient(135deg,#9b59b6,#8e44ad);box-shadow:0 4px 20px #9b59b64d;color:#fff}.mytest-card .feature-icon{background:linear-gradient(135deg,#1abc9c,#16a085);box-shadow:0 4px 20px #1abc9c4d;color:#fff}.games-card .feature-icon{background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 4px 20px #ff6b6b4d;color:#fff}.mental-math-card .feature-icon{background:linear-gradient(135deg,#4ecdc4,#45b7aa);box-shadow:0 4px 20px #4ecdc44d;color:#fff}.settings-card .feature-icon{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 4px 20px #95a5a64d;color:#fff}.upgrade-card .feature-icon{background:linear-gradient(135deg,#8e44ad,#732d91);box-shadow:0 4px 20px #8e44ad4d;color:#fff}.feature-card:hover .feature-icon{transform:scale(1.1) rotate(5deg);box-shadow:0 6px 25px #0003}.feature-card h3{color:#2c3e50;font-size:22px;margin-bottom:16px;font-weight:700;letter-spacing:-.5px}.feature-card p{color:#5a6c7d;font-size:15px;line-height:1.7;margin-bottom:24px;font-weight:400}.feature-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 28px;border-radius:25px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;text-transform:uppercase;letter-spacing:.5px;pointer-events:none}.feature-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.students-card .feature-button{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 15px #3498db4d}.students-card .feature-button:hover{box-shadow:0 6px 20px #3498db66}.pods-card .feature-button{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 4px 15px #2ecc714d}.pods-card .feature-button:hover{box-shadow:0 6px 20px #2ecc7166}.questionnaire-card .feature-button{background:linear-gradient(135deg,#e74c3c,#c0392b);box-shadow:0 4px 15px #e74c3c4d}.questionnaire-card .feature-button:hover{box-shadow:0 6px 20px #e74c3c66}.attendance-card .feature-button{background:linear-gradient(135deg,#f39c12,#e67e22);box-shadow:0 4px 15px #f39c124d}.attendance-card .feature-button:hover{box-shadow:0 6px 20px #f39c1266}.progress-card .feature-button{background:linear-gradient(135deg,#9b59b6,#8e44ad);box-shadow:0 4px 15px #9b59b64d}.progress-card .feature-button:hover{box-shadow:0 6px 20px #9b59b666}.mytest-card .feature-button{background:linear-gradient(135deg,#1abc9c,#16a085);box-shadow:0 4px 15px #1abc9c4d}.mytest-card .feature-button:hover{box-shadow:0 6px 20px #1abc9c66}.games-card .feature-button{background:linear-gradient(135deg,#ff6b6b,#ee5a52);box-shadow:0 4px 15px #ff6b6b4d}.games-card .feature-button:hover{box-shadow:0 6px 20px #ff6b6b66}.mental-math-card .feature-button{background:linear-gradient(135deg,#4ecdc4,#45b7aa);box-shadow:0 4px 15px #4ecdc44d}.mental-math-card .feature-button:hover{box-shadow:0 6px 20px #4ecdc466}.settings-card .feature-button{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 4px 15px #95a5a64d}.settings-card .feature-button:hover{box-shadow:0 6px 20px #95a5a666}.upgrade-card .feature-button{background:linear-gradient(135deg,#8e44ad,#732d91);box-shadow:0 4px 15px #8e44ad4d}.upgrade-card .feature-button:hover{box-shadow:0 6px 20px #8e44ad66}.mental-math-card{background:linear-gradient(135deg,#ffeaa7,#fab1a0);position:relative;overflow:hidden}.mental-math-card:before{content:"✨";position:absolute;top:10px;right:15px;font-size:20px;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.mental-math-card .feature-icon{animation:bounce 3s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.mental-math-card h3{color:#2d3436;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.mental-math-card p{color:#2d3436;font-weight:500}.mental-math-button{background:linear-gradient(135deg,#00b894,#00cec9);font-weight:600;padding:12px 24px;border-radius:25px;box-shadow:0 4px 15px #00b8944d;transition:all .3s ease}.mental-math-button:hover{background:linear-gradient(135deg,#00a085,#00b2a9);transform:translateY(-2px);box-shadow:0 6px 20px #00b89480}.quick-stats{display:flex;justify-content:center;gap:60px;background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 20px #00000014}.stat-item{text-align:center}.stat-number{display:block;font-size:32px;font-weight:700;color:#667eea;margin-bottom:8px}.stat-label{font-size:14px;color:#666;font-weight:500}@media (max-width: 768px){.landing-header{padding:16px 20px;flex-direction:column;gap:16px;text-align:center}.landing-main{padding:20px}.welcome-section h1{font-size:28px}.welcome-section p{font-size:16px}.features-grid{grid-template-columns:1fr;gap:16px}.quick-stats{flex-direction:column;gap:24px;padding:24px}}@media (max-width: 480px){.user-info{flex-direction:column;gap:8px}.quick-stats{gap:16px}.stat-number{font-size:24px}}.main-content,.content-wrapper,.dashboard-grid,.pods-grid{max-width:100vw!important;overflow-x:hidden!important;box-sizing:border-box!important}@media (max-width: 768px){.main-content{margin-left:0!important;padding:15px!important;min-height:calc(100vh - 60px)!important;width:100%!important;max-width:100%!important}.main-content.sidebar-collapsed{margin-left:0!important}.content-wrapper{max-width:100%!important;margin:0!important;padding:15px!important;border-radius:12px!important;min-height:auto!important;background:#ffffff0d!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.dashboard-header{flex-direction:column!important;align-items:flex-start!important;gap:15px!important;padding:0 0 20px!important;text-align:left!important}.dashboard-header h1{font-size:1.5rem!important;margin:0!important;width:100%!important}.user-info{flex-direction:column!important;gap:8px!important;width:100%!important;align-items:flex-start!important}.user-avatar{width:60px!important;height:60px!important}.user-details h2{font-size:1.2rem!important;margin:0!important}.user-details p{font-size:.9rem!important;margin:4px 0 0!important}.quick-stats{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px!important;padding:15px 0!important;width:100%!important}.stat-card{padding:15px!important;border-radius:12px!important;text-align:center!important;background:#ffffff1a!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.stat-number{font-size:1.8rem!important;font-weight:700!important;margin-bottom:4px!important}.stat-label{font-size:.8rem!important;opacity:.9!important}.dashboard-grid{display:grid!important;grid-template-columns:1fr!important;gap:20px!important;width:100%!important;margin-top:20px!important}.dashboard-section{width:100%!important;max-width:100%!important;padding:20px!important;margin:0!important;border-radius:16px!important;background:#ffffff14!important;-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;border:1px solid rgba(255,255,255,.1)!important}.section-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;margin-bottom:15px!important}.section-header h3{font-size:1.2rem!important;margin:0!important;width:100%!important}.section-actions{display:flex!important;flex-direction:column!important;gap:8px!important;width:100%!important}.section-button{width:100%!important;padding:12px 20px!important;font-size:.9rem!important;min-height:44px!important;border-radius:8px!important;touch-action:manipulation!important}.pods-grid{display:grid!important;grid-template-columns:1fr!important;gap:15px!important;width:100%!important;margin:15px 0!important}.pod-card{width:100%!important;max-width:100%!important;padding:15px!important;border-radius:12px!important;background:#ffffff0d!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.1)!important}.pod-header{flex-direction:column!important;align-items:flex-start!important;gap:8px!important;margin-bottom:12px!important}.pod-title{font-size:1rem!important;margin:0!important;width:100%!important;word-break:break-word!important}.pod-stats{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important}.pod-stat{flex:1 1 auto!important;min-width:60px!important;text-align:center!important;padding:8px 4px!important;background:#ffffff1a!important;border-radius:6px!important;font-size:.8rem!important}.pod-actions{display:flex!important;flex-direction:column!important;gap:8px!important;margin-top:12px!important;width:100%!important}.pod-button{width:100%!important;padding:10px 16px!important;font-size:.85rem!important;min-height:40px!important;border-radius:6px!important}.students-section{width:100%!important;padding:20px!important}.students-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important}.student-card{width:100%!important;max-width:100%!important;padding:15px!important;border-radius:12px!important;background:#ffffff0d!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.student-header{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.student-name{font-size:1rem!important;margin:0!important;width:100%!important;word-break:break-word!important}.student-progress{width:100%!important;margin:10px 0!important}.progress-bar{width:100%!important;height:6px!important;border-radius:3px!important}.student-actions{display:flex!important;flex-direction:column!important;gap:6px!important;width:100%!important;margin-top:12px!important}.student-button{width:100%!important;padding:8px 12px!important;font-size:.8rem!important;min-height:36px!important;border-radius:6px!important}.primary-action,.secondary-action,.cta-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;min-height:48px!important;border-radius:8px!important;margin:8px 0!important;touch-action:manipulation!important}.navigation-tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important;margin:15px 0!important}.nav-tab{flex:1 1 auto!important;min-width:80px!important;padding:10px 8px!important;font-size:.8rem!important;text-align:center!important;border-radius:6px!important}.notification-banner{width:100%!important;padding:12px!important;margin:10px 0!important;border-radius:8px!important;font-size:.9rem!important;line-height:1.4!important}.notification-actions{flex-direction:column!important;gap:8px!important;margin-top:10px!important}.notification-button{width:100%!important;padding:8px 16px!important;font-size:.8rem!important;min-height:36px!important}}@media (max-width: 480px){.main-content{padding:10px!important}.content-wrapper{padding:12px!important}.dashboard-section,.pod-card,.student-card{padding:15px!important}.quick-stats{grid-template-columns:1fr!important;gap:10px!important}.stat-card{padding:12px!important}.stat-number{font-size:1.5rem!important}.section-header h3{font-size:1.1rem!important}.pod-title,.student-name{font-size:.9rem!important}.pod-stats{flex-direction:column!important}.pod-stat{width:100%!important;min-width:auto!important}}.test-quiz-container{min-height:100vh;width:100vw;max-width:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;padding:20px;box-sizing:border-box;overflow-x:hidden}.loading-container,.error-container{background:#fff;border-radius:12px;padding:40px;text-align:center;box-shadow:0 10px 30px #0000001a;width:100%;max-width:1200px;min-height:200px;box-sizing:border-box}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.quiz-header{background:#fff;border-radius:12px;padding:30px;margin-bottom:20px;box-shadow:0 4px 6px #0000001a;max-width:800px;width:100%}.quiz-header h1{margin:0 0 10px;color:#2d3748;font-size:1.35rem;font-weight:600}.quiz-header p{margin:0 0 20px;color:#4a5568;font-size:1rem}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.question-counter{margin:0;color:#718096;font-size:.9rem;text-align:center}.quiz-layout{display:flex;gap:15px;margin-top:10px;width:100%;max-width:100%;box-sizing:border-box}.quiz-sidebar{width:240px;min-width:240px;position:sticky;top:10px;height:fit-content;max-height:calc(100vh - 20px);overflow-y:auto;background:#fff;border-radius:8px;padding:15px;box-shadow:0 2px 4px #0000001a;order:2}.quiz-sidebar h3{margin:0 0 10px;color:#2d3748;font-size:.9rem;font-weight:600;border-bottom:1px solid #e2e8f0;padding-bottom:6px}.quiz-sidebar-section{margin-bottom:15px}.quiz-sidebar-section:last-child{margin-bottom:0}.top-navigation{background:#fff;border-radius:8px;padding:15px;margin-bottom:15px;box-shadow:0 2px 4px #0000001a;border:1px solid #e2e8f0}@media (max-width: 1024px){.quiz-layout{flex-direction:column}.quiz-sidebar{position:relative;width:100%;max-height:none;order:-1}.quiz-sidebar-section{margin-bottom:15px}}.quiz-content{flex:1;min-width:0;background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;order:1}.question-section{margin-bottom:30px}.question-section h2{margin:0 0 20px;color:#2d3748;font-size:1.3rem;font-weight:500;line-height:1.4}.question-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px}.question-header h2{margin:0;flex:1}@media (max-width: 768px){.question-header{flex-direction:column;align-items:stretch;gap:10px}.question-header .report-button{align-self:flex-end;margin-left:0}}.question-image{max-width:100%;height:auto;border-radius:8px;margin-top:15px}.options-section{margin-bottom:30px}.option-button{width:100%;background:#f7fafc;border:2px solid #e2e8f0;border-radius:8px;padding:15px 20px;margin-bottom:12px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;text-align:left}.option-button:hover{border-color:#667eea;background:#edf2f7}.option-button.selected{border-color:#667eea;background:#ebf4ff;box-shadow:0 0 0 3px #667eea1a}.option-letter{background:#667eea;color:#fff;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-weight:600;margin-right:15px;flex-shrink:0}.option-text{flex:1;color:#2d3748;font-size:1rem}.option-image{max-width:100px;height:auto;border-radius:4px;margin-left:15px}.quiz-navigation{display:flex;justify-content:space-between;gap:15px}.nav-button{background:#667eea;color:#fff;border:none;border-radius:8px;padding:12px 24px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease;flex:1;max-width:150px}.nav-button:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.nav-button:disabled{background:#a0aec0;cursor:not-allowed;transform:none}.nav-button.previous{background:#718096}.nav-button.previous:hover:not(:disabled){background:#4a5568}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.view-mode-toggle{display:flex;gap:10px}.mode-btn{padding:10px 20px;border:2px solid #e2e8f0;background:#f8f9fa;color:#4a5568;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.mode-btn:hover{border-color:#667eea;background:#edf2f7}.mode-btn.active{background:#667eea;color:#fff;border-color:#667eea}.review-mode{display:flex;flex-direction:column;gap:25px}.question-navigator-review{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.navigator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.navigator-title{font-weight:600;color:#2d3748}.question-counter{font-size:.9rem;color:#667eea;font-weight:600}.question-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:8px;max-width:100%}.question-nav-btn{width:50px;height:50px;border:2px solid #e2e8f0;background:#fff;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.question-nav-btn:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.question-nav-btn.correct{background:#d4edda;border-color:#28a745;color:#155724}.question-nav-btn.incorrect{background:#f8d7da;border-color:#dc3545;color:#721c24}.question-nav-btn.current{border-color:#667eea;background:#667eea;color:#fff;transform:scale(1.1)}.review-question-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000000d}.review-navigation{display:flex;justify-content:space-between;align-items:center;padding:20px 0;border-top:1px solid #e2e8f0}.nav-center{display:flex;align-items:center;gap:15px}.question-info{color:#667eea;font-weight:600;font-size:.9rem}.nav-button{padding:12px 24px;border:2px solid #667eea;background:#fff;color:#667eea;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-button:hover:not(:disabled){background:#667eea;color:#fff}.nav-button:disabled{opacity:.5;cursor:not-allowed;border-color:#e2e8f0;color:#a0aec0}.summary-mode{display:flex;flex-direction:column;gap:20px}@media (max-width: 768px){.results-header{flex-direction:column;align-items:stretch}.view-mode-toggle{justify-content:center}.question-grid{grid-template-columns:repeat(auto-fill,minmax(45px,1fr))}.question-nav-btn{width:45px;height:45px}.review-navigation{flex-direction:column;gap:15px}}.test-completed-notice{max-width:600px;margin:50px auto;text-align:center}.notice-content{background:#fff;padding:40px;border-radius:12px;box-shadow:0 4px 20px #0000001a;border:1px solid #e9ecef}.notice-content h2{color:#2d3748;margin:20px 0 15px}.notice-content p{color:#6c757d;margin:10px 0;line-height:1.6}.action-buttons{display:flex;gap:15px;justify-content:center;margin-top:30px}.view-results-button{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s ease}.view-results-button:hover{background:#5a67d8}.test-info{text-align:center;margin-bottom:30px;padding:25px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border:1px solid #e2e8f0}.test-info h2{color:#2d3748;margin:0 0 10px;font-size:1.8rem;font-weight:700}.test-info>p{color:#4a5568;margin:0 0 20px;font-size:1.1rem;line-height:1.5}.test-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px;margin-top:20px}.metadata-item{background:#fff;padding:15px;border-radius:8px;border:1px solid #e2e8f0;display:flex;flex-direction:column;text-align:center}.metadata-label{font-size:.9rem;color:#667eea;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.metadata-value{font-size:1rem;color:#2d3748;font-weight:500}@media (max-width: 768px){.test-metadata{grid-template-columns:1fr}.test-info h2{font-size:1.5rem}}.test-completed-notice{text-align:center;padding:60px 20px;max-width:600px;margin:0 auto}.test-completed-notice h1{color:#28a745;margin-bottom:30px;font-size:1.65rem}.notice-content{background:#f8f9fa;border-radius:12px;padding:40px;border:1px solid #e9ecef;box-shadow:0 4px 6px #0000001a}.completion-icon{font-size:4rem;color:#28a745;margin-bottom:20px}.notice-content h2{color:#495057;margin-bottom:20px;font-size:1.5rem}.notice-content p{color:#6c757d;line-height:1.6;margin-bottom:10px}.action-buttons{display:flex;gap:15px;justify-content:center;margin-top:30px;flex-wrap:wrap}.view-results-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem}.view-results-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea4d}.close-button{background:#6c757d;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1rem}.close-button:hover{background:#5a6268;transform:translateY(-2px)}.error-message{text-align:center;padding:60px 20px;max-width:500px;margin:0 auto}.error-message h2{color:#dc3545;margin-bottom:20px;font-size:1.8rem}.error-message p{color:#6c757d;line-height:1.6;margin-bottom:30px}.loading-message{text-align:center;padding:60px 20px;font-size:1.2rem;color:#6c757d}@media (max-width: 768px){.test-completed-notice{padding:40px 15px}.notice-content{padding:30px 20px}.test-completed-notice h1{font-size:1.35rem}.notice-content h2{font-size:1.3rem}.action-buttons{flex-direction:column;align-items:center}.view-results-button,.close-button{width:100%;max-width:200px}}.questionnaire-container .content-header h1{margin-bottom:20px}.questionnaire-content .score-summary{margin:30px 0}.test-info-compact{background:#f8f9fa;padding:15px 20px;border-radius:8px;border-left:4px solid #667eea;margin-bottom:20px}.test-title{display:block;font-size:1.2rem;font-weight:600;color:#495057;margin-bottom:5px}.test-meta{display:block;font-size:.9rem;color:#6c757d}.test-start-section{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:30px 0}.test-instructions{background:#f8f9fa;padding:25px;border-radius:12px;border:1px solid #e9ecef}.test-instructions h2{color:#495057;margin-bottom:15px;font-size:1.3rem}.test-instructions p{color:#6c757d;line-height:1.6;margin-bottom:20px}.test-instructions ul{list-style:none;padding:0;margin:0}.test-instructions li{color:#495057;padding:8px 0 8px 20px;position:relative}.test-instructions li:before{content:"•";color:#667eea;font-weight:700;position:absolute;left:0}.test-preview{background:#fff;padding:25px;border-radius:12px;border:1px solid #e9ecef;box-shadow:0 2px 4px #0000000d}.test-preview h3{color:#495057;margin-bottom:20px;font-size:1.3rem;text-align:center}.test-stats{display:flex;justify-content:space-around;gap:15px}.test-stats .stat-item{text-align:center;padding:15px;background:#f8f9fa;border-radius:8px;flex:1}.test-stats .stat-number{display:block;font-size:1.5rem;font-weight:700;color:#667eea;margin-bottom:5px}.test-stats .stat-label{font-size:.9rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px}.start-test-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:15px 30px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:1.1rem}.start-test-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #28a7454d}@media (max-width: 768px){.test-start-section{grid-template-columns:1fr;gap:20px}.test-stats{flex-direction:column;gap:10px}.test-instructions,.test-preview{padding:20px}}.answer-options{margin:15px 0;display:flex;flex-direction:column;gap:8px}.option-display{padding:12px 15px;border:2px solid #e2e8f0;border-radius:8px;display:flex;align-items:center;gap:10px;background:#f8f9fa;transition:all .2s ease}.option-display.correct-option{border-color:#28a745;background:linear-gradient(135deg,#d4edda,#f0fff4);color:#155724;border-width:2px;box-shadow:0 2px 4px #28a74533}.option-display.user-selected:not(.correct-option){border-color:#dc3545;background:linear-gradient(135deg,#f8d7da,#fff5f5);color:#721c24;border-width:2px;box-shadow:0 2px 4px #dc354533}.option-display.user-selected.correct-option{border-color:#28a745;background:linear-gradient(135deg,#b8e6b8,#d4edda);color:#155724;border-width:2px;box-shadow:0 2px 4px #28a7454d}.option-label{font-weight:600;min-width:20px}.option-text{flex:1}.correct-indicator{color:#28a745;font-weight:600;font-size:.9rem}.incorrect-indicator{color:#dc3545;font-weight:600;font-size:.9rem}.saved-notice{color:#155724;font-weight:600;margin-top:15px;padding:15px;background:linear-gradient(135deg,#d4edda,#f0fff4);border:2px solid #c3e6cb;border-radius:12px;text-align:center;box-shadow:0 2px 8px #28a7451a}.results-container{background:#fff;border-radius:16px;padding:40px;box-shadow:0 10px 30px #0000001a;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;border:1px solid rgba(0,0,0,.05)}.results-container h1{text-align:center;color:#2d3748;margin:0 0 30px;font-size:1.5rem}.test-info{text-align:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid #e2e8f0}.test-info h2{margin:0 0 10px;color:#4a5568;font-size:1.4rem}.test-info p{margin:0;color:#718096}.score-summary{text-align:center;margin-bottom:30px}.score-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;box-shadow:0 8px 20px #667eea4d}.score-percentage{color:#fff;font-size:2rem;font-weight:700}.results-actions{display:flex;gap:15px;justify-content:center;margin-bottom:40px}.restart-button,.close-button{background:#667eea;color:#fff;border:none;border-radius:8px;padding:12px 24px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s ease}.close-button{background:#718096}.restart-button:hover{background:#5a6fd8;transform:translateY(-1px)}.close-button:hover{background:#4a5568;transform:translateY(-1px)}.detailed-results{border-top:1px solid #e2e8f0;padding-top:30px}.detailed-results h3{margin:0 0 20px;color:#2d3748;font-size:1.3rem}.result-question{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;border-left:4px solid #ddd;box-shadow:0 2px 8px #0000000d;transition:all .3s ease;transform:translateY(0)}.result-question:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.result-question.correct{border-left-color:#28a745;background:linear-gradient(135deg,#d4edda,#f8fff9)}.result-question.incorrect{border-left-color:#dc3545;background:linear-gradient(135deg,#f8d7da,#fff5f5)}.result-question.skipped{border-left-color:#ffc107;background:linear-gradient(135deg,#fff3cd,#fffbf0)}.result-question h4{margin:0 0 15px;color:#2d3748;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:10px}.question-text{margin:0 0 20px;color:#374151;font-weight:500;font-size:16px;line-height:1.6;padding:15px;background:#ffffffb3;border-radius:8px;border:1px solid rgba(0,0,0,.05)}.answer-review p{margin:8px 0;font-size:14px;padding:12px 15px;border-radius:8px;border:1px solid #e9ecef;background:#f8f9fa;font-weight:500}.user-answer.correct{background:#d4edda;border-color:#c3e6cb;color:#155724}.user-answer.incorrect{background:#f8d7da;border-color:#f5c6cb;color:#721c24}.correct-answer{background:#d4edda;border-color:#c3e6cb;color:#155724}.user-answer.correct-answer{background:#b8e6b8;border-color:#a5d6a5;color:#155724}.result-question h4:before{content:"";width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff}.result-question.correct h4:before{content:"✓";background:#28a745}.result-question.incorrect h4:before{content:"✗";background:#dc3545}.result-question.skipped h4:before{content:"⚠";background:#ffc107;color:#212529}.correct-indicator,.wrong-indicator{margin-left:auto;font-weight:700;font-size:18px}.correct-indicator{color:#28a745}.wrong-indicator{color:#dc3545}.result-status{margin:15px 0 10px;font-weight:600;font-size:16px;display:flex;align-items:center;gap:8px}.correct-status{color:#28a745}.incorrect-status{color:#dc3545}.skipped-status{color:#ffc107}.explanation{background:#37415108;border-radius:8px;padding:15px;margin-top:15px;color:#374151;font-style:italic;border-left:3px solid #6b7280;font-size:14px;line-height:1.5}@media (max-width: 768px){.test-quiz-container{padding:10px}.quiz-header,.quiz-content,.results-container{padding:20px}.quiz-header h1{font-size:1.13rem}.question-section h2{font-size:1.1rem}.quiz-navigation{flex-direction:column}.nav-button{max-width:none}.results-actions{flex-direction:column}.score-circle{width:100px;height:100px}.score-percentage{font-size:1.6rem}}.skipped-indicator{color:#f39c12;font-weight:500;margin-top:8px;font-size:.9rem}.quiz-option.selected.skipped{background-color:#fff3cd;border-color:#ffeaa7;color:#856404}.quiz-option.selected.skipped:hover{background-color:#ffeaa7;border-color:#f39c12}.quiz-option.correct-answer-preview{background-color:#d4edda!important;border-color:#28a745!important;border-width:2px!important}.quiz-option.correct-answer-preview:hover{background-color:#c3e6cb!important}.correct-indicator{color:#28a745;font-weight:700;font-size:.9em;margin-left:10px;display:inline-flex;align-items:center;gap:4px}.teacher-preview-controls{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.show-answers-btn:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0003}.detailed-results .result-question{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;background:#fff;padding:20px;box-shadow:0 2px 4px #0000001a}.detailed-results .question-image{margin:15px 0;text-align:center;padding:10px;background:#fffc;border-radius:12px;border:1px solid rgba(0,0,0,.1)}.detailed-results .question-image img{max-width:100%;max-height:250px;border-radius:8px;border:1px solid rgba(0,0,0,.1);box-shadow:0 2px 8px #0000001a;transition:transform .2s ease}.detailed-results .question-image img:hover{transform:scale(1.02)}.detailed-results .options-list{margin:15px 0;padding:15px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.detailed-results .options-list h5{margin:0 0 10px;color:#4a5568;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.detailed-results .option-item{display:flex;align-items:center;padding:8px 12px;margin:5px 0;border-radius:4px;border:1px solid #e2e8f0;background:#fff;transition:all .2s ease}.detailed-results .option-item.correct-option{background:#f0fff4;border-color:#68d391;color:#22543d}.detailed-results .option-item.user-selected{background:#ebf8ff;border-color:#4299e1}.detailed-results .option-item.incorrect-selection{background:#fed7d7;border-color:#fc8181;color:#742a2a}.detailed-results .option-label{font-weight:700;margin-right:8px;min-width:20px;color:#4a5568}.detailed-results .option-text{flex:1;margin-right:10px}.detailed-results .option-image{max-width:60px;max-height:40px;border-radius:3px;margin-left:10px}.detailed-results .correct-indicator{background:#48bb78;color:#fff;padding:2px 6px;border-radius:12px;font-size:.75rem;font-weight:600;margin-left:8px}.detailed-results .user-indicator{background:#4299e1;color:#fff;padding:2px 6px;border-radius:12px;font-size:.75rem;font-weight:600;margin-left:8px}.detailed-results .answer-review{margin-top:15px;padding-top:15px;border-top:1px solid #e2e8f0}.detailed-results .explanation{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px;margin-top:10px}.detailed-results .explanation strong{color:#2d3748;display:block;margin-bottom:5px}.detailed-results .explanation p{margin:0;color:#4a5568;line-height:1.5}.test-completion-info{margin-top:15px;padding:15px;background:#f7fafc;border-radius:8px;border-left:4px solid #667eea}.test-completion-info p{margin:5px 0;color:#4a5568;font-size:.95rem}.completed-by{font-size:1rem!important}.completion-date{color:#718096!important;font-size:.9rem!important}.score-details-top{display:flex;gap:20px;margin-top:20px;justify-content:center;flex-wrap:wrap}.score-details-top .score-item{display:flex;flex-direction:column;align-items:center;padding:12px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;min-width:80px}.score-details-top .score-item .score-number{font-size:1.5rem;font-weight:700;color:#2d3748}.score-details-top .score-item .score-label{font-size:.875rem;color:#718096;margin-top:4px}.detailed-results-section{margin-top:30px}@media (max-width: 768px){.test-completion-info{margin-top:10px;padding:12px}.score-details-top{gap:10px;margin-top:15px}.score-details-top .score-item{padding:10px 15px;min-width:70px}.score-details-top .score-item .score-number{font-size:1.25rem}}.score-header{background:transparent;color:#374151;padding:20px;text-align:center;margin-bottom:25px}.score-header .score-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 15px;border:3px solid rgba(102,126,234,.2);box-shadow:0 4px 12px #667eea4d;color:#fff}.score-header .score-percentage{font-size:2.5rem;font-weight:700;margin:0;line-height:1}.score-header .score-text{font-size:14px;opacity:.9;margin:5px 0 0}.test-completion-info{background:#f8fafc;border-radius:8px;padding:15px;text-align:center;border:1px solid #e2e8f0}.test-completion-info h3{margin:0 0 10px;font-size:1.3rem;font-weight:600;color:#374151}.test-completion-info p{margin:5px 0;color:#6b7280}.result-question{animation:fadeInUp .5s ease-out}.result-question:nth-child(1){animation-delay:.1s}.result-question:nth-child(2){animation-delay:.2s}.result-question:nth-child(3){animation-delay:.3s}.result-question:nth-child(4){animation-delay:.4s}.result-question:nth-child(5){animation-delay:.5s}.detailed-results{padding:0}.result-question.correct:after{content:"";position:absolute;top:0;right:0;width:50px;height:50px;background:linear-gradient(135deg,#28a745,#20c997);border-radius:0 12px 0 50px;opacity:.1;pointer-events:none}.result-question.incorrect:after{content:"";position:absolute;top:0;right:0;width:50px;height:50px;background:linear-gradient(135deg,#dc3545,#fd7e14);border-radius:0 12px 0 50px;opacity:.1;pointer-events:none}.result-question.skipped:after{content:"";position:absolute;top:0;right:0;width:50px;height:50px;background:linear-gradient(135deg,#ffc107,#fd7e14);border-radius:0 12px 0 50px;opacity:.1;pointer-events:none}.result-question{position:relative;overflow:hidden}@media (max-width: 768px){.result-question{padding:15px;margin-bottom:15px}.result-question h4:before{width:20px;height:20px;font-size:12px}.score-header .score-circle{width:100px;height:100px}.score-header .score-percentage{font-size:2rem}.question-text{padding:12px;font-size:14px}.answer-review p{padding:10px 12px;font-size:13px}.explanation{padding:12px;font-size:13px}}.teacher-review-notice{background:linear-gradient(135deg,#60a5fa,#3b82f6);border-radius:12px;padding:16px 20px;margin-top:15px;color:#fff;text-align:center;box-shadow:0 4px 12px #3b82f64d}.review-badge{display:inline-block;background:#fff3;padding:6px 12px;border-radius:20px;font-weight:600;font-size:.9rem;margin-bottom:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.teacher-review-notice p{margin:8px 0 0;font-size:.9rem;opacity:.9;font-weight:500}.back-to-dashboard-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;padding:12px 24px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #667eea4d;text-decoration:none;display:inline-block}.back-to-dashboard-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}@media (max-width: 768px){.teacher-review-notice{padding:12px 16px}.review-badge{font-size:.8rem;padding:4px 10px}.teacher-review-notice p{font-size:.8rem}}.test-quiz-container,.quiz-layout,.quiz-content,.quiz-sidebar{max-width:100vw!important;overflow-x:hidden!important;box-sizing:border-box!important}@media (max-width: 768px){.test-quiz-container{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important}.quiz-layout{flex-direction:column!important;gap:10px!important;padding:0!important;margin:0!important;width:100%!important;max-width:100%!important}.quiz-sidebar{width:100%!important;min-width:100%!important;max-width:100%!important;position:static!important;order:-1!important;margin:0 0 15px!important;padding:12px!important;background:#ffffff14!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border-radius:12px!important}.quiz-sidebar-section{margin-bottom:12px!important}.quiz-sidebar-section:last-child{margin-bottom:0!important}.quiz-content{width:100%!important;max-width:100%!important;padding:15px!important;margin:0!important;border-radius:8px!important;background:#ffffff0d!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.question-card{width:100%!important;max-width:100%!important;padding:15px!important;margin:0 0 15px!important;border-radius:12px!important}.question-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}.question-header h2{font-size:1.1rem!important;line-height:1.3!important;margin:0!important;width:100%!important;word-break:break-word!important}.question-text{font-size:.95rem!important;line-height:1.5!important;padding:12px 0!important;word-break:break-word!important;white-space:normal!important;overflow-wrap:break-word!important;-webkit-hyphens:auto!important;hyphens:auto!important}.options-list{width:100%!important;margin:0!important;padding:0!important}.option,.quiz-option{width:100%!important;max-width:100%!important;padding:12px!important;margin:0 0 8px!important;font-size:.9rem!important;line-height:1.4!important;word-break:break-word!important;white-space:normal!important;display:flex!important;align-items:flex-start!important;text-align:left!important;border-radius:8px!important;box-sizing:border-box!important}.option-label{min-width:25px!important;margin-right:8px!important;flex-shrink:0!important;font-weight:600!important}.option-text{flex:1!important;word-break:break-word!important;overflow-wrap:break-word!important}.quiz-navigation,.review-navigation{flex-direction:column!important;gap:10px!important;padding:15px 0!important;width:100%!important}.nav-center{flex-direction:column!important;gap:10px!important;width:100%!important}.nav-button{width:100%!important;max-width:100%!important;padding:14px 20px!important;font-size:1rem!important;margin:0!important;min-height:48px!important;border-radius:8px!important;box-sizing:border-box!important;touch-action:manipulation!important}.top-navigation{padding:10px!important;margin:0 0 15px!important;width:100%!important}.question-navigator{width:100%!important;max-width:100%!important}.question-grid{grid-template-columns:repeat(auto-fill,minmax(40px,1fr))!important;gap:6px!important;padding:0!important;width:100%!important}.question-nav-btn{width:40px!important;height:40px!important;font-size:.8rem!important;padding:0!important;min-width:40px!important;border-radius:6px!important}.progress-summary{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:space-around!important;width:100%!important}.progress-item{flex:1 1 auto!important;min-width:70px!important;text-align:center!important;padding:8px 4px!important;font-size:.8rem!important;border-radius:6px!important}.progress-label{font-size:.7rem!important;margin-top:2px!important}.progress-value{font-size:1rem!important;font-weight:600!important}.quiz-timer{padding:10px!important;font-size:.9rem!important;text-align:center!important}.timer-value{font-size:1.2rem!important;font-weight:600!important}.score-details{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important;margin:15px 0!important;width:100%!important}.score-item{padding:12px 8px!important;font-size:.85rem!important;text-align:center!important;border-radius:8px!important}.score-value{font-size:1.1rem!important;font-weight:600!important;display:block!important}.score-label{font-size:.75rem!important;margin-top:4px!important;opacity:.8!important}.question-image img,.option-image{max-width:100%!important;height:auto!important;border-radius:8px!important}.question-image{margin:10px 0!important;text-align:center!important}.report-button{padding:8px 12px!important;font-size:.8rem!important;min-width:44px!important;min-height:44px!important;border-radius:6px!important}.test-start-section{padding:0!important;margin:0!important;grid-template-columns:1fr!important;gap:15px!important}.test-instructions,.test-preview{padding:15px!important;margin:0 0 15px!important;border-radius:12px!important}.test-stats{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))!important;gap:10px!important;width:100%!important}.stat-item{padding:12px 8px!important;text-align:center!important;border-radius:8px!important}.stat-number{font-size:1.2rem!important;font-weight:600!important;display:block!important}.stat-label{font-size:.8rem!important;display:block!important;margin-top:4px!important;opacity:.8!important}.start-test-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;margin:15px 0 0!important;min-height:48px!important}.review-section{width:100%!important;padding:15px!important;margin:0 0 15px!important}.answer-review{padding:12px!important;margin:8px 0!important;border-radius:8px!important}.explanation{font-size:.9rem!important;line-height:1.4!important;padding:10px!important;margin:10px 0!important;border-radius:8px!important}}@media (max-width: 480px){.quiz-content,.quiz-sidebar{padding:10px!important}.question-card{padding:12px!important}.option,.quiz-option{padding:10px!important;font-size:.85rem!important}.nav-button{padding:12px 16px!important;font-size:.9rem!important;min-height:44px!important}.question-header h2{font-size:1rem!important}.question-text{font-size:.9rem!important}.question-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr))!important;gap:4px!important}.question-nav-btn{width:36px!important;height:36px!important;font-size:.75rem!important}.score-details{grid-template-columns:1fr!important}.test-stats{grid-template-columns:repeat(2,1fr)!important}.progress-summary{flex-direction:column!important}.progress-item{width:100%!important;margin:0 0 5px!important}}@media (max-width: 768px) and (orientation: landscape){.quiz-layout{flex-direction:row!important;gap:15px!important}.quiz-sidebar{width:200px!important;min-width:200px!important;order:2!important;margin:0!important}.quiz-content{flex:1!important;order:1!important}.question-header{flex-direction:row!important;align-items:center!important}.progress-summary{flex-direction:row!important;flex-wrap:wrap!important}}.google-pay-container{margin:20px 0;text-align:center}.payment-divider{position:relative;text-align:center;margin:20px 0}.payment-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e2e8f0;z-index:1}.payment-divider span{background:#fff;padding:0 15px;color:#718096;font-size:14px;font-weight:500;position:relative;z-index:2}.google-pay-button{background:#000;color:#fff;border:none;border-radius:4px;padding:12px 24px;cursor:pointer;font-size:16px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-bottom:15px;transition:all .3s ease;min-height:48px}.google-pay-button:hover:not(:disabled){background:#333;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.google-pay-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.google-pay-button.processing{background:#666}.google-pay-logo{display:flex;align-items:center;gap:2px}.gpay-text{font-weight:600;color:#4285f4;font-size:18px}.google-pay-button .spinner{width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}.demo-notice-small{margin-top:8px}.demo-notice-small p{margin:0;font-size:12px;color:#718096;font-style:italic}@media (max-width: 768px){.google-pay-button{max-width:100%;padding:14px 24px}.payment-divider{margin:15px 0}}.google-pay-button:focus{outline:2px solid #4285f4;outline-offset:2px}.google-pay-container{animation:fadeInUp .5s ease-out}.apple-pay-container{margin-bottom:15px}.apple-pay-button{background:#000;color:#fff;border:none;border-radius:4px;padding:12px 24px;cursor:pointer;font-size:16px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-bottom:15px;transition:all .3s ease;min-height:48px}.apple-pay-button:hover:not(:disabled){background:#333;transform:translateY(-1px);box-shadow:0 4px 8px #0003}.apple-pay-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.apple-pay-button.processing{background:#666}.apple-pay-logo{display:flex;align-items:center;gap:4px}.apple-icon{font-size:20px}.pay-text{font-weight:500;color:#fff;font-size:18px}.apple-pay-button .spinner{width:16px;height:16px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.apple-pay-button{max-width:100%;padding:14px 24px}}.apple-pay-button:focus{outline:2px solid #007aff;outline-offset:2px}.apple-pay-container{animation:fadeInUp .5s ease-out}.checkout-form{max-width:100%}.checkout-layout{display:grid;grid-template-columns:300px 1fr;gap:40px;min-height:500px}.payment-options-sidebar{background:#f8fafc;border-radius:12px;padding:25px;border:1px solid #e2e8f0;height:fit-content}.payment-options-sidebar h3{color:#2c3e50;font-size:1.2rem;margin-bottom:20px;font-weight:600;text-align:center;padding-bottom:15px;border-bottom:2px solid #e2e8f0}.payment-option-item{padding:15px;margin-bottom:12px;border-radius:10px;border:2px solid #e2e8f0;cursor:pointer;transition:all .3s ease;background:#fff}.payment-option-item:hover{border-color:#cbd5e0;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.payment-option-item.active{border-color:#667eea;background:linear-gradient(135deg,#f7faff,#eef2ff);box-shadow:0 4px 15px #667eea33}.payment-option-header{display:flex;align-items:center;gap:12px}.payment-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.payment-option-item.active .payment-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea}.payment-option-text{display:flex;flex-direction:column;gap:2px}.payment-title{font-weight:600;color:#2c3e50;font-size:15px}.payment-subtitle{font-size:12px;color:#718096}.payment-option-item.active .payment-title{color:#667eea}.payment-option-item.active .payment-subtitle{color:#4c51bf}.payment-details-panel{background:#fff;border-radius:12px;padding:30px;border:1px solid #e2e8f0}.digital-wallet-container{display:flex;flex-direction:column;gap:15px;padding:20px;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.form-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #e2e8f0}.form-section:last-of-type{border-bottom:none}.form-section h3{color:#2c3e50;font-size:1.3rem;margin-bottom:20px;font-weight:600;display:flex;align-items:center;gap:10px}.form-section h3:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:2px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#4a5568;font-weight:500;margin-bottom:8px;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.form-group input{padding:12px 15px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;transition:all .3s ease;background:#fff}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder{color:#a0aec0}.stripe-element{padding:12px 15px;border:2px solid #e2e8f0;border-radius:8px;background:#fff;transition:all .3s ease;min-height:44px;display:flex;align-items:center}.stripe-element:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.stripe-element.StripeElement--focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.stripe-element.StripeElement--invalid{border-color:#e53e3e}.stripe-element.StripeElement--complete{border-color:#48bb78}.error-message{background:#fed7d7;border:1px solid #feb2b2;color:#c53030;padding:12px 15px;border-radius:8px;margin:20px 0;font-size:14px;display:flex;align-items:center;gap:8px}.error-message:before{content:"⚠️";font-size:16px}.demo-notice{background:linear-gradient(135deg,#fff5f5,#fed7e2);border:2px solid #fbb6ce;padding:15px 20px;border-radius:12px;margin:25px 0;text-align:center}.demo-notice p{margin:0;color:#97266d;font-weight:500;font-size:15px}.pay-button{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;padding:15px 30px;border-radius:8px;cursor:pointer;font-size:18px;font-weight:600;width:100%;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;position:relative;overflow:hidden}.pay-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 15px #48bb7866}.pay-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.pay-button.processing{background:linear-gradient(135deg,#cbd5e0,#a0aec0)}.spinner{width:20px;height:20px;border:2px solid #ffffff;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.security-info{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:15px;color:#718096;font-size:13px}.security-info:before{content:"🔒";font-size:14px}@media (max-width: 768px){.checkout-layout{grid-template-columns:1fr;gap:20px}.payment-options-sidebar{order:1;background:#fff;padding:20px}.payment-options-sidebar h3{font-size:1.1rem;margin-bottom:15px}.payment-option-item{padding:12px;margin-bottom:10px}.payment-icon{width:35px;height:35px;font-size:20px}.payment-details-panel{order:2;padding:20px}.form-row{grid-template-columns:1fr}.checkout-form{padding:20px}.form-section h3{font-size:1.2rem}.pay-button{font-size:16px;padding:12px 25px}}@media (max-width: 480px){.form-group input,.stripe-element{padding:10px 12px}.form-section{margin-bottom:25px;padding-bottom:20px}}.form-group input:focus,.stripe-element:focus-within,.pay-button:focus{outline:2px solid #667eea;outline-offset:2px}.digital-wallet-section{margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid #e2e8f0}.digital-wallet-section>*{margin-bottom:15px}.digital-wallet-section>*:last-child{margin-bottom:0}.form-group{animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card-brand-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:24px;height:auto}.billing-cycle-selector{display:flex;flex-direction:column;align-items:center;gap:15px;margin:20px 0}.cycle-toggle{display:flex;background:#f1f5f9;border-radius:12px;padding:4px;border:1px solid #e2e8f0}.cycle-button{position:relative;background:transparent;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:600;font-size:16px;transition:all .3s ease;color:#64748b;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:120px}.cycle-button:hover{background:#667eea1a;color:#667eea}.cycle-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.discount-badge{background:#10b981;color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;line-height:1}.cycle-button.active .discount-badge{background:#fff3;color:#fff}.savings-note{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;color:#047857;padding:12px 20px;border-radius:8px;font-size:14px;text-align:center;max-width:300px;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.cycle-button{padding:10px 16px;font-size:14px;min-width:100px}.savings-note{font-size:13px;padding:10px 16px}}.payment-container{max-width:1200px;margin:0 auto;padding:20px;min-height:calc(100vh - 120px)}.payment-header{text-align:center;margin-bottom:40px}.payment-header h1{color:#2c3e50;font-size:2.5rem;margin-bottom:10px;font-weight:700}.payment-header p{color:#7f8c8d;font-size:1.1rem;margin-bottom:30px}.payment-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:30px;margin-bottom:50px}.payment-plan{background:#f7f8fc;border:2px solid #e2e8f0;border-radius:16px;padding:30px;text-align:center;position:relative;transition:all .3s ease;box-shadow:0 4px 6px #00000012}.payment-plan:hover{transform:translateY(-5px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.payment-plan.popular{border-color:#667eea;transform:scale(1.05);box-shadow:0 20px 25px -5px #667eea40}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 20px;border-radius:20px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.plan-header h3{color:#2c3e50;font-size:1.8rem;margin-bottom:10px;font-weight:700}.plan-description{color:#7f8c8d;font-size:1rem;margin-bottom:20px}.plan-price{font-size:3rem;font-weight:800;color:#2c3e50;margin-bottom:30px;display:flex;align-items:baseline;justify-content:center;gap:5px}.price-period{font-size:1rem;color:#7f8c8d;font-weight:500}.yearly-price-display{display:flex;flex-direction:column;align-items:center;gap:8px}.main-price{display:flex;align-items:baseline;gap:5px;font-size:3rem;font-weight:800;color:#2c3e50}.yearly-total{font-size:.9rem;color:#7f8c8d;font-weight:500}.savings-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.8rem;font-weight:600;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.free-price{font-size:3rem;font-weight:800;color:#10b981;text-shadow:0 2px 4px rgba(16,185,129,.2)}.free-plan-button{background:linear-gradient(135deg,#10b981,#059669)!important;border:2px solid #10b981!important}.free-plan-button:hover{background:linear-gradient(135deg,#059669,#047857)!important;box-shadow:0 8px 15px #10b98166!important}.summary-savings{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#047857;padding:8px 12px;border-radius:6px;font-size:.9rem;font-weight:600;text-align:center;border:1px solid #10b981}.free-plan-confirmation{max-width:600px;margin:0 auto}.free-confirmation-card{background:linear-gradient(135deg,#f0fff4,#ecfdf5);border:2px solid #10b981;border-radius:16px;padding:40px 30px;text-align:center;box-shadow:0 10px 25px #10b9811a}.free-icon{font-size:4rem;margin-bottom:20px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.free-confirmation-card h3{color:#047857;font-size:1.8rem;margin-bottom:15px;font-weight:700}.free-confirmation-card p{color:#059669;font-size:1.1rem;margin-bottom:25px}.free-confirmation-card ul{text-align:left;max-width:400px;margin:0 auto 30px;list-style:none;padding:0}.free-confirmation-card li{display:flex;align-items:center;padding:8px 0;color:#047857;font-weight:500}.free-confirmation-card .feature-check{background:#10b981;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:12px;font-size:12px;font-weight:700;flex-shrink:0}.start-free-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:15px 30px;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.start-free-button:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 10px 20px #10b9814d}.plan-features{margin-bottom:30px}.plan-features ul{list-style:none;padding:0;margin:0}.plan-features li{display:flex;align-items:center;justify-content:flex-start;padding:8px 0;font-size:1rem;color:#4a5568}.feature-check{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:12px;font-size:12px;font-weight:700;flex-shrink:0}.select-plan-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;width:100%;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.select-plan-button:hover{transform:translateY(-2px);box-shadow:0 8px 15px #667eea66}.checkout-container{max-width:1000px;margin:0 auto}.checkout-header{margin-bottom:30px}.checkout-header h2{color:#2c3e50;font-size:2rem;margin-bottom:10px}.back-to-plans{background:#e2e8f0;color:#4a5568;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:20px;display:inline-flex;align-items:center;gap:6px;transition:all .3s ease}.back-to-plans:hover{background:#cbd5e0}.order-summary-top{margin-bottom:20px}.order-summary-card{background:#fffffff2;padding:16px 20px;border-radius:8px;border:1px solid #e2e8f0;max-width:600px;margin:0 auto;box-shadow:0 2px 4px #00000005;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.summary-header{display:none}.summary-content{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:8px;margin:0;padding:0}.item-name{color:#4a5568;font-weight:500;font-size:.9rem}.item-price{color:#2c3e50;font-weight:600;font-size:.9rem}.summary-divider{display:none}.summary-total{display:flex;align-items:center;gap:8px;padding:0;border:none;margin:0}.total-label{color:#2c3e50;font-weight:600;font-size:.9rem}.total-amount{color:#667eea;font-weight:700;font-size:1.1rem}.billing-info{margin:0;padding:0;background:transparent;border:none;text-align:left;flex-shrink:0}.billing-info p{margin:0;color:#718096;font-size:.8rem;display:flex;align-items:center;gap:4px}.billing-info p strong{font-weight:500}.checkout-content{display:block}.payment-form-container{background:#fff;padding:30px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 4px 6px #0000000d}@media (max-width: 768px){.payment-container{padding:15px}.payment-plans{grid-template-columns:1fr}.payment-plan.popular{transform:none}.order-summary-card{max-width:100%;margin:0;padding:12px 16px}.summary-content{flex-direction:column;gap:8px;align-items:flex-start}.summary-item,.summary-total,.billing-info{width:100%}.summary-item{justify-content:space-between}.summary-total{justify-content:space-between;border-top:1px solid #e2e8f0;padding-top:8px;margin-top:8px}.payment-header h1{font-size:2rem}.plan-price{font-size:2.5rem}}.payment-container,.pricing-grid,.payment-form,.checkout-form{max-width:100vw!important;overflow-x:hidden!important;box-sizing:border-box!important}@media (max-width: 768px){.payment-container{max-width:100%!important;margin:0!important;padding:15px!important;min-height:calc(100vh - 80px)!important;width:100%!important}.payment-header{text-align:center!important;margin-bottom:25px!important;padding:0!important}.payment-header h1{font-size:1.8rem!important;margin-bottom:8px!important;line-height:1.2!important;word-break:break-word!important}.payment-header p{font-size:.9rem!important;line-height:1.4!important;margin:0!important;padding:0 10px!important}.pricing-grid{display:grid!important;grid-template-columns:1fr!important;gap:20px!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.plan-card{width:100%!important;max-width:100%!important;padding:20px!important;margin:0!important;border-radius:16px!important;background:#ffffff14!important;-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;border:1px solid rgba(255,255,255,.1)!important;box-sizing:border-box!important}.plan-card.featured{border:2px solid #667eea!important;box-shadow:0 8px 30px #667eea33!important}.plan-header{text-align:center!important;margin-bottom:20px!important}.plan-name{font-size:1.3rem!important;margin-bottom:8px!important;word-break:break-word!important}.plan-description{font-size:.9rem!important;line-height:1.4!important;margin-bottom:15px!important}.plan-price{font-size:2.2rem!important;margin-bottom:5px!important;line-height:1!important}.plan-period{font-size:.8rem!important;opacity:.8!important}.plan-features{margin:20px 0!important;padding:0!important}.feature-list{list-style:none!important;padding:0!important;margin:0!important}.feature-item{display:flex!important;align-items:center!important;padding:8px 0!important;font-size:.85rem!important;line-height:1.3!important}.feature-icon{width:16px!important;height:16px!important;margin-right:8px!important;flex-shrink:0!important}.feature-text{flex:1!important;word-break:break-word!important}.plan-actions{margin-top:20px!important}.select-plan-button,.current-plan-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;min-height:48px!important;border-radius:8px!important;border:none!important;cursor:pointer!important;transition:all .2s ease!important;font-weight:600!important;touch-action:manipulation!important;box-sizing:border-box!important}.select-plan-button{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important}.current-plan-button{background:#e9ecef!important;color:#6c757d!important;cursor:not-allowed!important}.payment-form{width:100%!important;max-width:100%!important;padding:20px!important;margin:20px 0 0!important;border-radius:16px!important;background:#ffffff14!important;-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;border:1px solid rgba(255,255,255,.1)!important}.form-section{margin-bottom:20px!important}.form-section h3{font-size:1.1rem!important;margin-bottom:15px!important;color:#333!important}.form-group{margin-bottom:15px!important;width:100%!important}.form-group label{display:block!important;margin-bottom:5px!important;font-size:.9rem!important;color:#555!important;font-weight:500!important}.form-group input,.form-group select{width:100%!important;padding:12px!important;font-size:1rem!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:8px!important;background:#ffffff0d!important;color:#333!important;box-sizing:border-box!important}.form-row{display:grid!important;grid-template-columns:1fr!important;gap:15px!important;width:100%!important}.billing-cycle-selector{display:flex!important;flex-direction:column!important;gap:10px!important;margin:20px 0!important;width:100%!important}.cycle-option{width:100%!important;padding:12px!important;border-radius:8px!important;border:2px solid rgba(255,255,255,.2)!important;background:#ffffff0d!important;cursor:pointer!important;transition:all .2s ease!important}.cycle-option.selected{border-color:#667eea!important;background:#667eea1a!important}.cycle-label{font-size:.9rem!important;font-weight:600!important;margin-bottom:4px!important}.cycle-price{font-size:1.1rem!important;color:#667eea!important;font-weight:700!important}.cycle-savings{font-size:.75rem!important;color:#28a745!important;margin-top:2px!important}.payment-methods{display:flex!important;flex-direction:column!important;gap:10px!important;margin:15px 0!important}.payment-method{width:100%!important;padding:12px!important;border:2px solid rgba(255,255,255,.2)!important;border-radius:8px!important;background:#ffffff0d!important;cursor:pointer!important;transition:all .2s ease!important;display:flex!important;align-items:center!important;gap:10px!important}.payment-method.selected{border-color:#667eea!important;background:#667eea1a!important}.payment-icon{width:24px!important;height:24px!important;flex-shrink:0!important}.payment-label{font-size:.9rem!important;font-weight:500!important}.order-summary{width:100%!important;padding:20px!important;margin:20px 0!important;border-radius:12px!important;background:#ffffff14!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.summary-header{font-size:1.1rem!important;margin-bottom:15px!important;color:#333!important;font-weight:600!important}.summary-item{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:8px 0!important;font-size:.9rem!important}.summary-label{color:#666!important}.summary-value{font-weight:600!important;color:#333!important}.summary-total{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:12px 0 8px!important;border-top:1px solid rgba(255,255,255,.2)!important;margin-top:10px!important;font-size:1rem!important;font-weight:700!important}.checkout-actions{display:flex!important;flex-direction:column!important;gap:12px!important;margin-top:25px!important;width:100%!important}.checkout-button,.cancel-button{width:100%!important;padding:14px 20px!important;font-size:1rem!important;min-height:48px!important;border-radius:8px!important;border:none!important;cursor:pointer!important;transition:all .2s ease!important;font-weight:600!important;touch-action:manipulation!important}.checkout-button{background:linear-gradient(135deg,#28a745,#20c997)!important;color:#fff!important}.cancel-button{background:transparent!important;color:#6c757d!important;border:1px solid rgba(255,255,255,.2)!important}.security-info{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:15px 0!important;font-size:.8rem!important;color:#666!important;text-align:center!important}.security-icon{width:16px!important;height:16px!important}.promo-banner{width:100%!important;padding:15px!important;margin:15px 0!important;border-radius:12px!important;background:linear-gradient(135deg,#ffecd2,#fcb69f)!important;text-align:center!important}.promo-text{font-size:.9rem!important;color:#8b4513!important;font-weight:600!important;margin-bottom:5px!important}.promo-details{font-size:.8rem!important;color:sienna!important;line-height:1.3!important}}@media (max-width: 480px){.payment-container{padding:10px!important}.payment-header h1{font-size:1.5rem!important}.plan-card,.payment-form,.order-summary{padding:15px!important}.plan-price{font-size:1.8rem!important}.form-group input,.form-group select{padding:10px!important;font-size:.9rem!important}.checkout-button,.cancel-button{padding:12px 16px!important;font-size:.9rem!important;min-height:44px!important}.feature-item{font-size:.8rem!important}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;padding-top:90px}
