@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;700;800&display=swap";.toast-container{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:12px;background:var(--color-surface, #ffffff);padding:16px;border-radius:12px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;border:1px solid var(--color-border, #e2e8f0);width:350px;max-width:calc(100vw - 48px);pointer-events:auto;animation:slideInRight .3s cubic-bezier(.16,1,.3,1);transition:opacity .3s ease,transform .3s ease}.toast.toast-exiting{opacity:0;transform:translate(100%) scale(.95)}.toast-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#ef4444}.toast-warning .toast-icon{color:#f59e0b}.toast-info .toast-icon{color:var(--color-primary, #1a73e8)}.toast-content{flex:1;display:flex;flex-direction:column;gap:4px}.toast-title{font-weight:600;color:var(--color-text-primary, #1e293b);font-size:.95rem;margin:0}.toast-message{color:var(--color-text-secondary, #64748b);font-size:.85rem;line-height:1.4;margin:0}.toast-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;margin:-4px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.toast-close:hover{background:#f1f5f9;color:#475569}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.setup-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0d2f6966;z-index:1040;display:flex;justify-content:flex-end;animation:fadeIn .2s ease-out}.setup-drawer{background:#fff;width:100%;max-width:600px;height:100vh;box-shadow:-4px 0 24px #00000026;display:flex;flex-direction:column;animation:slideInRight .3s cubic-bezier(.16,1,.3,1);z-index:1050;overflow-y:auto}.setup-drawer-header{padding:2.5rem 2.5rem 1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-surface-2)}.setup-drawer-title{font-size:1.75rem;color:var(--color-primary);margin-bottom:.5rem;font-weight:700}.setup-drawer-subtitle{color:var(--color-text-secondary);font-size:1rem;line-height:1.5}.setup-context-info{background:#0d2f6908;border-left:4px solid var(--color-primary);padding:1.25rem 1.5rem;margin:1.5rem 2.5rem 0;border-radius:0 var(--radius-sm) var(--radius-sm) 0}.setup-context-title{font-size:.8rem;font-weight:700;color:var(--color-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.setup-context-text{font-size:.9rem;color:var(--color-text-secondary)}.setup-drawer-body{padding:2.5rem;flex:1}.setup-form-group{margin-bottom:2.5rem}.setup-form-label{display:block;font-weight:600;color:var(--color-primary);margin-bottom:.25rem;font-size:1.05rem}.setup-form-hint{display:block;font-size:.9rem;color:var(--color-text-muted);margin-bottom:.75rem}.setup-form-input{width:100%;padding:1rem 1.25rem;font-size:1.05rem;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);color:var(--color-text-primary);background:var(--color-surface)}.setup-form-input::placeholder{color:var(--color-text-muted);opacity:.7}.setup-form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #0d2f691a}.setup-form-select{width:100%;padding:1rem 1.25rem;font-size:1.05rem;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);color:var(--color-text-primary);background:var(--color-surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.2rem}.setup-form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #0d2f691a}.setup-drawer-footer{padding:1.5rem 2.5rem;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:1rem;background:var(--color-surface-2)}.setup-btn-cancel{padding:.875rem 1.75rem;font-weight:600;font-size:1rem;color:var(--color-text-secondary);background:transparent;border:2px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer}.setup-btn-cancel:hover{background:var(--color-surface);border-color:var(--color-text-muted);color:var(--color-text-primary)}.setup-btn-submit{padding:.875rem 2.5rem;font-weight:600;font-size:1rem;color:#fff;background:var(--color-accent);border:2px solid var(--color-accent);border-radius:var(--radius-md);transition:all var(--transition-fast);box-shadow:0 4px 10px #fd6a0140;cursor:pointer}.setup-btn-submit:hover:not(:disabled){background:var(--color-accent-light);border-color:var(--color-accent-light);box-shadow:0 6px 14px #fd6a0159;transform:translateY(-1px)}.setup-btn-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.setup-form-row{display:flex;flex-direction:column}@media (min-width: 640px){.setup-form-row{flex-direction:row;gap:2rem;align-items:flex-start}}@media (max-width: 639px){.setup-drawer-header{padding:1.5rem 1.25rem 1rem}.setup-drawer-title{font-size:1.35rem}.setup-context-info{margin:1rem 1.25rem 0;padding:1rem 1.25rem}.setup-drawer-body{padding:1.25rem}.setup-form-group{margin-bottom:1.5rem}.setup-drawer-footer{padding:1rem 1.25rem;flex-direction:column-reverse;gap:.75rem}.setup-btn-cancel,.setup-btn-submit{width:100%;text-align:center;justify-content:center;padding:.75rem 1rem}}.drawer-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0006;z-index:1000;display:flex;justify-content:flex-end}.drawer.right{width:100%;max-width:500px;height:100vh;background:#fff;box-shadow:-4px 0 15px #0000001a;display:flex;flex-direction:column;animation:slideInRight .3s ease-out}.drawer-header{padding:1.5rem;border-bottom:1px solid #e2e8f0;position:relative}.drawer-header h3{margin:0 0 .5rem;color:var(--ea-blue, #1e3a8a)}.drawer-header p{margin:0;font-size:.9rem}.drawer-close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;font-size:1.2rem;cursor:pointer;color:#64748b}.drawer-body{padding:1.5rem;overflow-y:auto;flex:1}.drawer-footer{padding:1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:1rem;background:#f8fafc}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.sections-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}@media (max-width: 768px){.drawer.right{max-width:100%}}.crm-container{padding:1.5rem;max-width:1200px;margin:0 auto}.crm-header{margin-bottom:2rem}.crm-title{font-size:1.8rem;color:#0d2f69;margin-bottom:.5rem;font-weight:700}.crm-subtitle{color:#64748b;font-size:1rem}.crm-summary-cards{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;margin-bottom:2rem}@media (min-width: 640px){.crm-summary-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.crm-summary-cards{grid-template-columns:repeat(4,1fr)}}.crm-summary-card{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid #E2E8F0;box-shadow:0 1px 3px #0000000d}.crm-summary-label{font-size:.875rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.crm-summary-value{font-size:2rem;font-weight:700}.text-blue{color:#0d2f69}.crm-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.crm-controls{flex-direction:row;justify-content:space-between;align-items:center}}.crm-search{display:flex;gap:.5rem;flex-grow:1;max-width:500px}.crm-search input{flex-grow:1;padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem}.crm-filters select{padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:6px;background-color:#fff;min-width:150px}.crm-table{width:100%;border-collapse:collapse}.crm-table th,.crm-table td{padding:1rem;text-align:left;border-bottom:1px solid #E2E8F0}.crm-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.875rem}.crm-student-name{font-weight:600;color:#0d2f69}.crm-student-email{font-size:.85rem;color:#64748b}.crm-pkg-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;margin-bottom:.2rem}.crm-pkg-starter{background:#e2e8f0;color:#475569}.crm-pkg-standard{background:#dbeafe;color:#1e40af}.crm-pkg-pro{background:#fef08a;color:#854d0e}.crm-credits-small{font-size:.85rem;color:#fd6a01;font-weight:600}.crm-status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-pending{background:#fef3c7;color:#92400e}.status-approved{background:#dcfce7;color:#166534}.status-rejected{background:#fee2e2;color:#991b1b}.crm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.crm-modal{background:#fff;border-radius:8px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.crm-modal-header{padding:1.5rem;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between;align-items:center}.crm-modal-header h2{margin:0;color:#0d2f69;font-size:1.25rem}.crm-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b}.crm-close-btn:hover{color:#0d2f69}.crm-modal-body{padding:1.5rem}.crm-detail-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}@media (min-width: 640px){.crm-detail-grid{grid-template-columns:1fr 1fr}}.crm-detail-section-title{font-size:1rem;font-weight:600;color:#0d2f69;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #f1f5f9}.crm-detail-row{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem}.crm-detail-label{color:#64748b}.crm-detail-value{font-weight:500;text-align:right;color:#0f172a}.crm-action-section{background:#f8fafc;padding:1.5rem;border-radius:8px;border:1px solid #e2e8f0}.crm-action-buttons{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1.5rem}.crm-reject-section{display:flex;flex-direction:column;gap:.5rem;border-top:1px solid #e2e8f0;padding-top:1rem}.crm-reject-label{font-size:.875rem;font-weight:600;color:#475569}.crm-reject-required{color:#dc2626;margin-left:2px}.crm-reject-section input{padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem}.crm-receipt-container{margin-top:1rem;padding-top:1rem;border-top:1px solid #E2E8F0}.crm-receipt-state{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#64748b}.crm-receipt-state-error{background:#fef2f2;border-color:#fecaca;color:#dc2626}.crm-receipt-spinner{width:16px;height:16px;border:2px solid #cbd5e1;border-top-color:#0d2f69;border-radius:50%;animation:crm-spin .7s linear infinite;flex-shrink:0}@keyframes crm-spin{to{transform:rotate(360deg)}}.crm-receipt-wrap{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;background:#f8fafc}.crm-receipt-img{display:block;width:100%;max-height:220px;object-fit:contain;background:#e2e8f0}.crm-receipt-actions{padding:.5rem .75rem;border-top:1px solid #e2e8f0;background:#fff}.rrm-container{padding:1.5rem;max-width:1240px;margin:0 auto}.rrm-header{margin-bottom:2rem}.rrm-title{font-size:1.8rem;color:#0d2f69;margin-bottom:.5rem;font-weight:700}.rrm-subtitle{color:#64748b;font-size:1rem;margin:0}.rrm-summary-cards{display:grid;grid-template-columns:repeat(1,1fr);gap:1.25rem;margin-bottom:2rem}@media (min-width: 640px){.rrm-summary-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.rrm-summary-cards{grid-template-columns:repeat(4,1fr)}}.rrm-summary-card{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid #E2E8F0;box-shadow:0 1px 3px #0000000a}.rrm-summary-label{font-size:.8rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.rrm-summary-value{font-size:2rem;font-weight:700}.text-amber{color:#d97706}.text-blue{color:#0284c7}.text-green{color:#166534}.text-red{color:#991b1b}.text-orange{color:#fd6a01}.rrm-controls{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 768px){.rrm-controls{flex-direction:row;justify-content:space-between;align-items:center}}.rrm-search{display:flex;gap:.5rem;flex-grow:1;max-width:520px}.rrm-search input{flex-grow:1;padding:.55rem 1rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem}.rrm-search input:focus{outline:none;border-color:#0d2f69}.rrm-filters select{padding:.55rem 1rem;border:1px solid #cbd5e1;border-radius:6px;background-color:#fff;min-width:170px;font-size:.95rem}.rrm-table{width:100%;border-collapse:collapse}.rrm-table th,.rrm-table td{padding:1rem;text-align:left;border-bottom:1px solid #E2E8F0;vertical-align:middle}.rrm-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.825rem;text-transform:uppercase;letter-spacing:.05em}.rrm-req-id{font-family:monospace;font-weight:700;color:#0d2f69;background:#f1f5f9;padding:.2rem .5rem;border-radius:4px;font-size:.85rem}.rrm-student-name{font-weight:600;color:#0d2f69}.rrm-student-email{font-size:.85rem;color:#64748b}.rrm-pkg-badge{display:inline-block;padding:.2rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;background:#dbeafe;color:#1e40af}.rrm-amount-small{font-size:.85rem;font-weight:600;color:#fd6a01;margin-top:.2rem}.rrm-ref-text{font-family:monospace;font-size:.85rem;color:#475569}.rrm-reason-text{font-size:.875rem;color:#334155;max-width:180px}.rrm-status-badge{display:inline-block;padding:.25rem .65rem;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:capitalize}.rrm-status-badge.status-pending{background:#fef3c7;color:#92400e}.rrm-status-badge.status-under_review{background:#e0f2fe;color:#0369a1}.rrm-status-badge.status-approved{background:#dcfce7;color:#166534}.rrm-status-badge.status-rejected{background:#fee2e2;color:#991b1b}.rrm-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1.5rem;overflow-y:auto}.rrm-modal{background:#fff;border-radius:12px;width:100%;max-width:760px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.rrm-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between;align-items:center}.rrm-modal-title{font-size:1.25rem;font-weight:700;color:#0d2f69;margin:0}.rrm-modal-subtitle{font-size:.85rem;color:#64748b;font-family:monospace}.rrm-close-btn{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;line-height:1;padding:.25rem;transition:color .15s ease}.rrm-close-btn:hover{color:#0f172a}.rrm-modal-body{padding:1.5rem;overflow-y:auto}.rrm-alert{padding:.85rem 1.25rem;border-radius:6px;font-size:.9rem;margin-bottom:1.25rem}.rrm-alert.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.rrm-alert.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.rrm-modal-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media (min-width: 640px){.rrm-modal-grid{grid-template-columns:1fr 1fr}}.rrm-detail-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem}.rrm-detail-section.full-width{grid-column:1 / -1}.rrm-detail-heading{font-size:.95rem;font-weight:700;color:#0d2f69;margin:0 0 .85rem;border-bottom:1px solid #e2e8f0;padding-bottom:.4rem}.rrm-detail-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem}.rrm-detail-row .label{color:#64748b;font-weight:500}.rrm-detail-row .value{color:#0f172a;text-align:right}.rrm-explanation-box{margin-top:.5rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:.85rem;font-size:.9rem;color:#334155;line-height:1.5;max-height:140px;overflow-y:auto}.rrm-receipt-wrap{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.rrm-receipt-img{max-height:220px;max-width:100%;object-fit:contain;border-radius:6px;border:1px solid #cbd5e1;background:#fff}.rrm-no-receipt{font-size:.875rem;color:#94a3b8;font-style:italic}.rrm-safety-notice{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.85rem 1rem;font-size:.825rem;color:#92400e;display:flex;gap:.75rem;align-items:flex-start;line-height:1.5}.rrm-safety-notice svg{flex-shrink:0;margin-top:.1rem;color:#d97706}.rrm-decision-box{background:#f0f4fa;border:1px solid #cbd5e1;border-radius:8px;padding:1.25rem}.rrm-decision-fields{display:flex;flex-direction:column;gap:1rem}.rrm-field{display:flex;flex-direction:column;gap:.35rem}.rrm-field label{font-size:.85rem;font-weight:600;color:#0d2f69}.rrm-decision-actions{display:flex;gap:.75rem;margin-top:.5rem}.ea-btn-danger{background:#dc2626;color:#fff;border-color:#dc2626}.ea-btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c;box-shadow:0 4px 12px #dc262640}.ea-btn-danger:disabled{opacity:.5;cursor:not-allowed}.profile-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background-color:#0f172a80;z-index:1000}.teacher-profile-modal{max-width:540px!important;width:95%;padding:0!important;border-radius:20px!important;overflow:hidden;background:#fff;box-shadow:0 25px 50px -12px #00000040;position:relative;animation:modal-slide-up .4s cubic-bezier(.16,1,.3,1)}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-modal-close{position:absolute;top:16px;right:16px;z-index:10;background:#00000040;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:all .2s ease}.profile-modal-close:hover{background:#00000080;transform:rotate(90deg)}.profile-cover-banner{height:120px;background:linear-gradient(135deg,#1e3a8a,#3b82f6);position:relative}.teacher-profile-wrapper{display:flex;flex-direction:column}.teacher-profile-details{padding:0 32px 32px}.profile-header-premium{display:flex;flex-direction:column;align-items:center;margin-top:-50px;margin-bottom:24px;text-align:center}.profile-avatar-premium{width:100px;height:100px;border-radius:50%;border:4px solid #fff;background:#fff;box-shadow:0 10px 15px -3px #0000001a;overflow:hidden;display:flex;align-items:center;justify-content:center;z-index:2;margin-bottom:16px}.profile-avatar-premium img{width:100%;height:100%;object-fit:cover}.profile-avatar-premium .avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;font-size:36px;font-weight:700;display:flex;align-items:center;justify-content:center}.profile-title-area h2{font-size:26px;font-weight:800;color:#0f172a;margin:0 0 12px;font-family:Outfit,sans-serif;line-height:1.2}.profile-badges-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.profile-info-badge{display:inline-flex;align-items:center;gap:6px;background:#f1f5f9;color:#475569;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500}.profile-body-content{display:flex;flex-direction:column;gap:28px}.profile-section h3{font-size:14px;text-transform:uppercase;letter-spacing:.8px;font-weight:700;color:#64748b;margin:0 0 12px}.profile-section p{font-size:15px;color:#334155;line-height:1.6;margin:0}.subjects-tags{display:flex;flex-wrap:wrap;gap:10px}.subject-pill{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2);padding:6px 16px;border-radius:24px;font-size:14px;font-weight:600}.profile-stats-grid-premium{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:8px}.stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px;transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000000d;background:#fff;border-color:#cbd5e1}.stat-icon-wrapper{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrapper.classrooms{background:#e0e7ff;color:#4f46e5}.stat-icon-wrapper.students{background:#dcfce7;color:#16a34a}.stat-icon-wrapper.assessments{background:#fef3c7;color:#d97706}.stat-icon-wrapper.joined{background:#f3e8ff;color:#9333ea}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:22px;font-weight:800;color:#0f172a;line-height:1.1;margin-bottom:4px}.stat-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.profile-loading,.profile-error{padding:80px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.profile-loading p,.profile-error p{color:#64748b;font-weight:500;margin:0}@media (max-width: 540px){.teacher-profile-details{padding:0 16px 20px}.profile-stats-grid-premium{grid-template-columns:1fr;gap:10px}.profile-title-area h2{font-size:20px}.teacher-profile-modal{width:96%;border-radius:16px!important}}.quiz-container{min-height:100vh;background-color:var(--color-bg);padding:2rem 1rem}.quiz-header{max-width:800px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:center;background-color:var(--color-surface);padding:1.5rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.timer{font-size:1.5rem;font-weight:600;color:var(--color-primary)}.timer-warning{color:var(--color-danger);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.quiz-content{max-width:800px;margin:0 auto}.question-card{background-color:var(--color-surface);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;padding:2rem;margin-bottom:1.5rem}.question-text{font-size:1.125rem;margin:1rem 0 1.5rem;line-height:1.6;color:var(--color-text-primary)}.options{display:flex;flex-direction:column;gap:1rem}.option-label{display:flex;align-items:center;padding:1rem;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background-color:var(--color-surface)}.option-label:hover{border-color:var(--color-primary);background-color:var(--color-surface-2)}.option-label input[type=radio]{margin-right:1rem;width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary)}.option-label input[type=radio]:checked+.option-text{font-weight:600;color:var(--color-primary)}.option-text{flex:1;font-size:1rem;color:var(--color-text-secondary)}.btn-bookmark-outline{background:var(--color-surface);border:1px solid var(--color-accent);color:var(--color-accent);border-radius:8px;padding:6px 12px;font-weight:500;transition:all .2s ease}.btn-bookmark-outline:hover:not(:disabled){background:#fd6a0114}.btn-bookmarked{background:#fd6a011f;border:1px solid var(--color-accent);color:var(--color-accent);border-radius:8px;padding:6px 12px;font-weight:600;transition:all .2s ease}.btn-bookmarked:hover:not(:disabled){background:#fd6a012e}@media (max-width: 480px){.hide-mobile{display:none}}.result-page-wrapper{min-height:calc(100vh - 70px);background:var(--color-bg, #f8fafc);padding:32px 24px 64px;display:flex;justify-content:center;width:100%}.result-page-container{width:100%;max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:28px;animation:fadeSlideIn .35s cubic-bezier(.16,1,.3,1) both}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.result-hero{border-radius:var(--radius-xl, 16px);padding:36px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;overflow:hidden;box-shadow:var(--shadow-md, 0 6px 16px rgba(0, 0, 0, .05));border:1px solid rgba(255,255,255,.15);background:linear-gradient(135deg,#0b2a5b,#113b7a);color:#fff}.result-hero-left{display:flex;flex-direction:column;gap:8px;z-index:1}.result-hero-subtitle{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:#ffffffbf;margin:0}.result-hero-title{font-family:Outfit,sans-serif;font-size:32px;font-weight:700;color:#fff;margin:0;line-height:1.25}.result-hero-meta{font-size:14px;color:#ffffffd9;margin-top:6px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.result-hero-right{display:flex;align-items:center;gap:20px;z-index:1;flex-shrink:0}.result-hero-score-badge{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding-right:20px;border-right:1px solid rgba(255,255,255,.2)}.result-hero-score-val{font-family:Outfit,sans-serif;font-size:38px;font-weight:800;line-height:1;color:#fff}.result-hero-score-lbl{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#ffffffb3;margin-top:4px}.result-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;border-radius:999px;font-family:Outfit,sans-serif;font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 4px 12px #00000026}.result-status-pill.pass{background:#10b981;color:#fff;border:1px solid #059669}.result-status-pill.fail{background:#f5820d;color:#fff;border:1px solid #ea580c}.result-score-panel{background:var(--color-surface, #ffffff);border-radius:var(--radius-xl, 16px);border:1px solid var(--color-border-light, #f1f5f9);padding:28px 32px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .03));display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:center}.score-metric-box{display:flex;flex-direction:column;gap:6px;padding:12px 18px;border-right:1px solid var(--color-border-light, #f1f5f9)}.score-metric-box:last-child{border-right:none}.score-metric-lbl{font-size:13px;font-weight:600;color:var(--color-text-secondary, #64748b);text-transform:uppercase;letter-spacing:.05em}.score-metric-val{font-family:Outfit,sans-serif;font-size:28px;font-weight:700;color:var(--color-text-primary, #0f172a)}.score-metric-val.pass-text{color:#10b981}.score-metric-val.fail-text{color:#f5820d}.result-section-panel{background:var(--color-surface, #ffffff);border-radius:var(--radius-xl, 16px);border:1px solid var(--color-border-light, #f1f5f9);padding:32px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .03))}.result-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border-light, #f1f5f9)}.result-section-title{font-family:Outfit,sans-serif;font-size:20px;font-weight:700;color:var(--color-text-primary, #0f172a);margin:0}.result-metrics-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.result-metric-card{background:var(--color-bg, #f8fafc);border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-lg, 12px);padding:18px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;transition:transform .2s ease,border-color .2s ease}.result-metric-card:hover{border-color:#cbd5e1;transform:translateY(-2px)}.result-metric-card-val{font-family:Outfit,sans-serif;font-size:24px;font-weight:700;color:var(--color-text-primary, #0f172a)}.result-metric-card-val.green{color:#10b981}.result-metric-card-val.orange{color:#f5820d}.result-metric-card-lbl{font-size:12.5px;font-weight:600;color:var(--color-text-secondary, #64748b)}.result-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border:1px solid var(--color-border, #e2e8f0);border-radius:var(--radius-lg, 12px);overflow:hidden}.summary-row{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--color-border-light, #f1f5f9);border-right:1px solid var(--color-border-light, #f1f5f9);background:#fff}.summary-row:nth-child(2n){border-right:none}.summary-row:nth-last-child(-n+2){border-bottom:none}.summary-row-lbl{font-size:14px;font-weight:500;color:var(--color-text-secondary, #64748b)}.summary-row-val{font-size:14px;font-weight:600;color:var(--color-text-primary, #0f172a);text-align:right}.result-feedback-box{background:#fff;border-radius:var(--radius-lg, 12px);padding:24px 28px;display:flex;align-items:flex-start;gap:20px;position:relative;border:1px solid var(--color-border, #e2e8f0);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .03))}.result-feedback-box.pass{border-left:5px solid #10b981}.result-feedback-box.fail{border-left:5px solid #F5820D}.feedback-content h4{font-family:Outfit,sans-serif;font-size:18px;font-weight:700;margin:0 0 6px;color:#0b2a5b}.feedback-content p{font-size:14.5px;line-height:1.6;margin:0;color:var(--color-text-primary, #1e293b)}.result-actions-bar{background:var(--color-surface, #ffffff);border-radius:var(--radius-xl, 16px);border:1px solid var(--color-border-light, #f1f5f9);padding:24px 32px;box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .03));display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.actions-bar-info{font-size:14px;color:var(--color-text-secondary, #64748b);font-weight:500}.actions-bar-buttons{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.btn-result-secondary{background:#fff!important;color:var(--color-text-primary, #0f172a)!important;border:1.5px solid var(--color-border, #cbd5e1)!important;padding:10px 22px;border-radius:var(--radius-md, 8px);font-weight:600;font-size:14px;transition:all .15s ease;cursor:pointer}.btn-result-secondary:hover{background:var(--color-surface-2, #f8fafc)!important;border-color:#94a3b8!important;transform:translateY(-1px)}.btn-result-primary{background:var(--color-accent, #F5820D)!important;color:#fff!important;border:1.5px solid #e07004!important;padding:10px 26px;border-radius:var(--radius-md, 8px);font-weight:600;font-size:14px;box-shadow:0 4px 12px #f5820d40;transition:all .15s ease;cursor:pointer}.btn-result-primary:hover{background:#e07004!important;transform:translateY(-1px);box-shadow:0 6px 16px #f5820d59}@media (max-width: 1024px){.result-score-panel{grid-template-columns:repeat(2,1fr);gap:16px}.score-metric-box:nth-child(2){border-right:none}.result-metrics-grid{grid-template-columns:repeat(3,1fr)}.result-summary-grid{grid-template-columns:1fr}.summary-row{border-right:none}.summary-row:nth-last-child(2){border-bottom:1px solid var(--color-border-light, #f1f5f9)}}@media (max-width: 768px){.result-page-wrapper{padding:16px 12px 48px}.result-hero{flex-direction:column;align-items:flex-start;padding:24px}.result-hero-right{width:100%;justify-content:space-between;padding-top:16px;border-top:1px solid rgba(255,255,255,.15)}.result-hero-score-badge{padding-right:0;border-right:none;align-items:flex-start}.result-score-panel{grid-template-columns:1fr;padding:20px}.score-metric-box{border-right:none;border-bottom:1px solid var(--color-border-light, #f1f5f9);padding:10px 0}.score-metric-box:last-child{border-bottom:none}.result-metrics-grid{grid-template-columns:repeat(2,1fr)}.result-actions-bar{flex-direction:column;align-items:stretch}.actions-bar-buttons{flex-direction:column;width:100%}.btn-result-secondary,.btn-result-primary{width:100%;text-align:center}}.prep-container{max-width:1000px;margin:0 auto;padding:32px 24px}.prep-loading,.prep-error,.prep-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center}.prep-header-top{display:flex;align-items:center;margin-bottom:24px}.prep-back-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:transparent;border:1px solid var(--color-border);color:var(--color-primary);cursor:pointer;transition:all .2s ease}.prep-back-btn:hover{background-color:var(--color-bg-alt, #f8fafc);border-color:var(--color-primary);transform:translate(-4px)}.prep-header{margin-bottom:32px}.prep-subtitle{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-secondary);font-weight:600;margin-bottom:8px}.prep-header h1{font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:800;color:var(--color-primary);margin-bottom:12px;line-height:1.2}.prep-desc{font-size:1rem;color:var(--color-text-secondary);max-width:600px}.prep-grid{display:flex;flex-direction:column;gap:24px}.prep-row{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width: 768px){.prep-row{grid-template-columns:1fr 1fr}}.prep-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.prep-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.prep-card-header h2{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0}.prep-badge{font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.badge-high{background:#10b9811a;color:#10b981}.badge-medium{background:#f59e0b1a;color:#f59e0b}.badge-low{background:#ef44441a;color:#ef4444}.prep-readiness-card{background:linear-gradient(to right,var(--color-primary-dark),var(--color-primary));color:#fff;border:none}.prep-readiness-card .prep-card-header h2{color:#fff}.prep-readiness-building h3{font-size:1.25rem;margin-bottom:8px;font-weight:600}.prep-readiness-building p{color:#fffc}.prep-readiness-score-row{display:flex;align-items:baseline;gap:16px;margin-bottom:16px}.prep-readiness-percent{font-size:4rem;font-family:Outfit,sans-serif;font-weight:800;line-height:1}.prep-readiness-status{font-size:1.25rem;font-weight:600;color:#ffffffe6}.prep-progress-track{height:8px;background:#fff3;border-radius:4px;overflow:hidden;margin-bottom:12px}.prep-progress-fill{height:100%;background:var(--color-accent);border-radius:4px;transition:width 1s ease-out}.prep-readiness-context{font-size:.85rem;color:#ffffffb3}.prep-breakdown-list{display:flex;flex-direction:column;gap:24px}.prep-breakdown-group h3{font-size:.85rem;text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-weight:600}.group-strong{color:#10b981}.group-developing{color:#f59e0b}.group-needs-attention{color:#ef4444}.prep-breakdown-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--color-border)}.prep-breakdown-item:last-child{border-bottom:none}.prep-subject-name{font-weight:500;color:var(--color-text-primary)}.prep-subject-score{font-weight:700;color:var(--color-text-secondary)}.prep-focus-card{border:1px solid var(--color-border);background:var(--color-surface)}.prep-focus-content{display:flex;flex-direction:column;gap:24px;height:100%;justify-content:space-between}.prep-focus-subject h3{font-family:Outfit,sans-serif;font-size:1.75rem;font-weight:700;color:var(--color-text-primary);margin-bottom:8px}.prep-focus-accuracy{display:inline-block;background:#ef44441a;color:#ef4444;padding:4px 12px;border-radius:var(--radius-md);font-weight:600;font-size:.85rem}.prep-focus-action{background:var(--color-bg);padding:20px;border-radius:var(--radius-md);border:1px solid var(--color-border)}.prep-focus-action h4{font-size:1rem;font-weight:700;margin-bottom:8px;color:var(--color-text-primary)}.prep-focus-action p{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:16px;line-height:1.4}.prep-progress-body{display:flex;flex-direction:column;gap:20px}.prep-progress-comparison{display:flex;align-items:center;gap:24px}.prep-progress-col{display:flex;flex-direction:column;gap:4px}.prep-progress-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;font-weight:600;color:var(--color-text-secondary)}.prep-progress-value{font-size:2rem;font-weight:800;font-family:Outfit,sans-serif;color:var(--color-text-primary);line-height:1}.prep-progress-arrow{color:var(--color-text-muted);display:flex;align-items:center;justify-content:center}.prep-progress-arrow svg{width:24px;height:24px}.prep-progress-details{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--color-border)}.prep-change-amount{font-size:1.25rem;font-weight:700;font-family:Outfit,sans-serif}.prep-change-amount.positive{color:#10b981}.prep-change-amount.negative{color:#ef4444}.prep-change-amount.neutral{color:var(--color-text-secondary)}.prep-progress-message{font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.prep-progress-context{font-size:.8rem;color:var(--color-text-muted)}@media (min-width: 768px){.prep-progress-body{flex-direction:row;align-items:center;gap:48px}.prep-progress-details{padding-top:0;border-top:none;padding-left:48px;border-left:1px solid var(--color-border);flex:1}}.review-page{max-width:860px;margin:0 auto;padding:32px 20px 48px}.review-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}.review-header-left h1{font-family:Outfit,sans-serif;font-size:1.75rem;font-weight:800;margin:0 0 4px}.review-header-left p{color:var(--color-text-secondary);font-size:.9rem;margin:0}.review-summary{display:flex;gap:12px;margin-bottom:28px;flex-wrap:wrap}.review-summary-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:.82rem;font-weight:600;background:var(--color-surface-2);border:1.5px solid var(--color-border);color:var(--color-text-secondary)}.review-summary-chip.pass{border-color:#10b981;color:#10b981;background:#10b98114}.review-summary-chip.fail{border-color:#ef4444;color:#ef4444;background:#ef444414}.review-summary-chip.correct{border-color:#10b981;color:#10b981}.review-summary-chip.incorrect{border-color:#ef4444;color:#ef4444}.review-question-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:14px;padding:24px;margin-bottom:16px;transition:border-color .2s}.review-question-card.correct-card{border-color:#10b98159}.review-question-card.incorrect-card{border-color:#ef44444d}.review-question-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.review-question-num{font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--color-text-muted);text-transform:uppercase}.review-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.04em}.review-badge.correct{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.review-badge.incorrect{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.25)}.review-question-text{font-size:1rem;font-weight:600;line-height:1.55;color:var(--color-text);margin-bottom:18px;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.review-options{display:flex;flex-direction:column;gap:10px}.review-option{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;border:1.5px solid var(--color-border);background:var(--color-surface-2);font-size:.9rem;transition:border-color .15s,background .15s;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.review-option.option-correct{border-color:#10b981;background:#10b9811a;color:#10b981;font-weight:600}.review-option.option-wrong{border-color:#ef4444;background:#ef444414;color:#ef4444;font-weight:600}.review-option-letter{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;font-size:.75rem;font-weight:800;flex-shrink:0;background:var(--color-surface);border:1.5px solid var(--color-border);color:var(--color-text-secondary)}.review-option.option-correct .review-option-letter{background:#10b98133;border-color:#10b981;color:#10b981}.review-option.option-wrong .review-option-letter{background:#ef444426;border-color:#ef4444;color:#ef4444}.review-option-text{flex:1}.review-option-icon{font-size:1rem;flex-shrink:0}.review-loading{min-height:60vh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:var(--color-text-secondary)}.review-error{max-width:480px;margin:80px auto;text-align:center}.review-back-row{display:flex;justify-content:flex-start;margin-top:32px;gap:12px;flex-wrap:wrap}@media (max-width: 600px){.review-question-card{padding:16px}.review-header-left h1{font-size:1.4rem}}.mistake-book-hero{display:flex;gap:32px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-left:5px solid var(--color-accent, #FD6A01);border-radius:12px;box-shadow:0 4px 20px #00000008;padding:32px;margin-bottom:24px}.mb-hero-content{flex:1 1 60%;display:flex;flex-direction:column}.mb-kicker{color:var(--color-accent, #FD6A01);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.mb-hero-content h1{color:var(--color-primary, #0D2F69);font-size:2.2rem;font-weight:800;margin:0 0 12px;line-height:1.2}.mb-description{color:var(--color-text-secondary, #475569);font-size:1.05rem;line-height:1.6;margin:0 0 24px;max-width:600px}.mb-features{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:24px}.mb-feature{display:flex;align-items:flex-start;gap:12px;flex:1 1 200px}.mb-feature-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#fd6a0114;color:var(--color-accent, #FD6A01);flex-shrink:0}.mb-feature-icon.blue{background:#0d2f690f;color:var(--color-primary, #0D2F69)}.mb-feature-text h4{color:var(--color-primary, #0D2F69);font-size:.95rem;font-weight:700;margin:0 0 4px}.mb-feature-text p{color:var(--color-text-secondary, #475569);font-size:.85rem;margin:0;line-height:1.4}.mb-hero-practice{flex:1 1 40%;background:var(--color-surface-2, #f8fafc);border:1px solid var(--color-border, #e2e8f0);border-radius:12px;padding:24px;display:flex;flex-direction:column;min-width:320px}.mb-practice-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.mb-practice-icon{color:var(--color-accent, #FD6A01);display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fd6a0114;border-radius:8px;flex-shrink:0}.mb-practice-title h3{color:var(--color-primary, #0D2F69);font-size:1.1rem;font-weight:700;margin:0 0 2px}.mb-practice-title p{color:var(--color-text-secondary, #475569);font-size:.85rem;margin:0}.mb-duration-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.mb-duration-btn{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);color:var(--color-primary, #0D2F69);padding:10px 16px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .2s,color .2s,border-color .2s,box-shadow .2s;flex:1 1 calc(33.333% - 10px);text-align:center;min-width:70px}.mb-duration-btn:hover{border-color:var(--color-primary, #0D2F69);background:#0d2f690a}.mb-duration-btn.active{background:var(--color-accent, #FD6A01);border-color:var(--color-accent, #FD6A01);color:#fff;box-shadow:0 4px 12px #fd6a0133}.mb-custom-duration{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e2e8f0);border-radius:8px;padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.mb-custom-duration label{font-size:.9rem;font-weight:600;color:var(--color-primary, #0D2F69)}.mb-custom-input-row{display:flex;align-items:center;gap:12px}.mb-custom-input-row input{width:80px;padding:8px 12px;border-radius:6px;border:1px solid var(--color-border, #cbd5e1);font-size:1rem;font-weight:600;color:var(--color-text-primary, #0f172a)}.mb-custom-input-row span{color:var(--color-text-secondary, #475569);font-size:.9rem}.mb-selected-duration{background:#fd6a010f;border:1px solid rgba(253,106,1,.15);border-radius:8px;padding:16px;margin-bottom:16px;display:flex;align-items:center;gap:12px}.mb-selected-duration .icon{color:var(--color-accent, #FD6A01);width:24px;height:24px;flex-shrink:0}.mb-selected-text span{display:block;font-size:.8rem;color:var(--color-text-secondary, #475569);margin-bottom:2px}.mb-selected-text strong{display:block;font-size:1.15rem;color:var(--color-accent, #FD6A01);font-weight:700}.mb-practice-btn{width:100%;padding:14px;font-size:1rem;font-weight:700;border-radius:8px;background:var(--color-accent, #FD6A01);color:#fff;border:none;cursor:pointer;transition:background .2s,transform .2s;display:flex;justify-content:center;align-items:center;gap:8px;margin-top:auto}.mb-practice-btn:hover:not(:disabled){background:#e56000}.mb-practice-btn:disabled{opacity:.6;cursor:not-allowed}.mb-practice-btn svg{width:18px;height:18px}@media (max-width: 900px){.mistake-book-hero{flex-direction:column;padding:24px}.mb-hero-practice{min-width:100%}}@media (max-width: 480px){.mistake-book-hero{padding:20px}.mb-hero-content h1{font-size:1.8rem}.mb-feature{flex:1 1 100%}.mb-duration-btn{flex:1 1 calc(50% - 10px)}}.analytics-dashboard-section{margin-top:32px;display:flex;flex-direction:column;gap:32px}.analytics-section-header{display:flex;flex-direction:column;gap:6px;padding-bottom:12px;border-bottom:2px solid var(--color-border)}.analytics-section-title-wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.analytics-section-title{font-family:Outfit,sans-serif;font-size:1.35rem;font-weight:700;color:var(--color-primary);margin:0;display:flex;align-items:center;gap:10px}.analytics-section-title svg{color:var(--color-accent)}.analytics-section-desc{font-size:.9rem;color:var(--color-text-secondary);margin:0}.analytics-kpi-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:8px}.analytics-kpi-chip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 18px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.analytics-kpi-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.analytics-kpi-icon{width:42px;height:42px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.analytics-kpi-icon.navy{background:#0d2f6914;color:var(--color-primary)}.analytics-kpi-icon.orange{background:#fd6a011a;color:var(--color-accent)}.analytics-kpi-icon.green{background:#10b9811a;color:var(--color-success)}.analytics-kpi-icon.blue{background:#3b82f61a;color:#2563eb}.analytics-kpi-info{display:flex;flex-direction:column}.analytics-kpi-label{font-size:.78rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.analytics-kpi-val{font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:800;color:var(--color-text-primary);line-height:1.2}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.analytics-grid.single-col{grid-template-columns:1fr}.analytics-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:space-between;transition:box-shadow var(--transition-fast);position:relative;overflow:hidden}.analytics-card:hover{box-shadow:var(--shadow-md)}.analytics-card-header{margin-bottom:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.analytics-card-titles{display:flex;flex-direction:column;gap:4px}.analytics-card-title{font-family:Outfit,sans-serif;font-size:1.12rem;font-weight:700;color:var(--color-primary);margin:0;display:flex;align-items:center;gap:8px}.analytics-card-subtitle{font-size:.84rem;color:var(--color-text-secondary);margin:0}.analytics-card-badge{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:700;padding:4px 10px;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap}.analytics-card-badge.badge-navy{background:#0d2f6914;border-color:#0d2f6933;color:var(--color-primary)}.analytics-card-badge.badge-orange{background:#fd6a011a;border-color:#fd6a0140;color:var(--color-accent-dark)}.analytics-card-badge.badge-success{background:#10b9811a;border-color:#10b98140;color:#065f46}.analytics-card-body{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:200px;position:relative}.analytics-insight{margin-top:18px;padding:10px 14px;border-radius:var(--radius-md);background:#f0f7ff;border:1px solid #bfdbfe;color:#1e3a8a;font-size:.82rem;display:flex;align-items:center;gap:10px;line-height:1.4}.analytics-insight.insight-accent{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.analytics-insight svg{flex-shrink:0}.analytics-chart-svg-wrap{width:100%;position:relative}.analytics-svg{width:100%;height:auto;overflow:visible;display:block}.analytics-grid-line{stroke:var(--color-border);stroke-dasharray:4 4;stroke-width:1}.analytics-axis-label{fill:var(--color-text-muted);font-size:11px;font-weight:500}.analytics-line-primary{fill:none;stroke:var(--color-primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.analytics-line-accent{fill:none;stroke:var(--color-accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.analytics-point{cursor:pointer;transition:r var(--transition-fast),stroke-width var(--transition-fast)}.analytics-point:hover{r:6}.analytics-point.point-primary{fill:#fff;stroke:var(--color-primary);stroke-width:2.5}.analytics-point.point-accent{fill:#fff;stroke:var(--color-accent);stroke-width:2.5}.analytics-svg-tooltip{position:absolute;top:0;right:0;background:var(--color-primary-dark);color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:.78rem;pointer-events:none;box-shadow:var(--shadow-md);z-index:10;display:flex;flex-direction:column;gap:2px}.analytics-svg-tooltip strong{color:#fed7aa;font-size:.85rem}.analytics-donut-container{display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap;padding:10px 0}.analytics-donut-svg-wrap{position:relative;width:170px;height:170px;flex-shrink:0}.analytics-donut-svg{width:100%;height:100%;transform:rotate(-90deg)}.analytics-donut-bg{fill:none;stroke:var(--color-surface-2);stroke-width:24}.analytics-donut-correct{fill:none;stroke:var(--color-primary);stroke-width:24;stroke-linecap:round;transition:stroke-dasharray .6s ease}.analytics-donut-incorrect{fill:none;stroke:var(--color-accent);stroke-width:24;stroke-linecap:round;transition:stroke-dasharray .6s ease}.analytics-donut-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;display:flex;flex-direction:column;align-items:center;pointer-events:none}.analytics-donut-center-pct{font-family:Outfit,sans-serif;font-size:1.8rem;font-weight:800;color:var(--color-text-primary);line-height:1}.analytics-donut-center-lbl{font-size:.72rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;margin-top:2px}.analytics-donut-legend{display:flex;flex-direction:column;gap:12px;min-width:140px}.analytics-donut-legend-item{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.88rem}.analytics-donut-legend-left{display:flex;align-items:center;gap:8px;color:var(--color-text-secondary)}.analytics-donut-dot{width:12px;height:12px;border-radius:3px;flex-shrink:0}.analytics-donut-dot.correct{background:var(--color-primary)}.analytics-donut-dot.incorrect{background:var(--color-accent)}.analytics-donut-legend-item strong{font-family:Outfit,sans-serif;font-weight:700;color:var(--color-text-primary)}.analytics-quality-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.analytics-quality-stat{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;display:flex;flex-direction:column;gap:2px}.analytics-quality-stat span{font-size:.76rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase}.analytics-quality-stat strong{font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:800;color:var(--color-text-primary)}.analytics-meter-section{display:flex;flex-direction:column;gap:6px}.analytics-meter-header{display:flex;justify-content:space-between;font-size:.82rem;color:var(--color-text-secondary)}.analytics-meter-bar{height:10px;background:var(--color-surface-2);border-radius:var(--radius-full);overflow:hidden;display:flex}.analytics-meter-fill-correct{background:var(--color-primary);height:100%;transition:width .5s ease}.analytics-meter-fill-incorrect{background:var(--color-accent);height:100%;transition:width .5s ease}.analytics-hbar-list{display:flex;flex-direction:column;gap:14px}.analytics-hbar-row{display:flex;flex-direction:column;gap:6px}.analytics-hbar-header{display:flex;justify-content:space-between;align-items:center;font-size:.86rem}.analytics-hbar-title{font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:6px}.analytics-hbar-meta{font-size:.8rem;font-weight:700;color:var(--color-primary)}.analytics-hbar-track{height:10px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-full);overflow:hidden;display:flex}.analytics-hbar-fill{height:100%;background:var(--color-primary);border-radius:inherit;transition:width .5s ease}.analytics-hbar-fill.fill-orange{background:var(--color-accent)}.analytics-hbar-fill.stacked-correct{background:var(--color-primary)}.analytics-hbar-fill.stacked-incorrect{background:var(--color-accent)}.analytics-ranked-list{display:flex;flex-direction:column;gap:10px}.analytics-ranked-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:transform var(--transition-fast)}.analytics-ranked-item:hover{transform:translate(4px)}.analytics-ranked-left{display:flex;align-items:center;gap:12px}.analytics-rank-badge{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-family:Outfit,sans-serif;font-weight:800;font-size:.85rem;flex-shrink:0}.analytics-rank-badge.rank-strength{background:#0d2f691a;color:var(--color-primary)}.analytics-rank-badge.rank-weakness{background:#fd6a011f;color:var(--color-accent-dark)}.analytics-ranked-name{font-weight:600;font-size:.92rem;color:var(--color-text-primary)}.analytics-ranked-sub{font-size:.78rem;color:var(--color-text-muted)}.analytics-ranked-right{text-align:right;display:flex;flex-direction:column;align-items:flex-end}.analytics-ranked-pct{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:800;color:var(--color-text-primary)}.analytics-ranked-pct.pct-strong{color:var(--color-primary)}.analytics-ranked-pct.pct-weak{color:var(--color-accent-dark)}.analytics-weakness-cta{margin-top:14px;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fd6a0114;border:1px solid rgba(253,106,1,.25);border-radius:var(--radius-md);font-size:.84rem;color:var(--color-accent-dark)}.analytics-weakness-cta a{color:var(--color-accent-dark);font-weight:700;text-decoration:underline}.analytics-mistake-wrap{display:flex;flex-direction:column;gap:16px}.analytics-mistake-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.analytics-mistake-box{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px;text-align:center;display:flex;flex-direction:column;gap:4px}.analytics-mistake-box span{font-size:.74rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase}.analytics-mistake-box strong{font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:800;color:var(--color-text-primary)}.analytics-mistake-box.box-active strong{color:var(--color-accent)}.analytics-mistake-box.box-mastered strong{color:var(--color-success)}.analytics-resolution-meter{display:flex;flex-direction:column;gap:6px}.analytics-resolution-header{display:flex;justify-content:space-between;font-size:.82rem;color:var(--color-text-secondary)}.analytics-resolution-header strong{color:var(--color-success)}.analytics-resolution-bar{height:10px;background:var(--color-surface-2);border-radius:var(--radius-full);overflow:hidden;display:flex}.analytics-resolution-fill{background:var(--color-success);height:100%;transition:width .5s ease}.analytics-comparison-grid{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:14px 0}.analytics-comp-box{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;text-align:center;display:flex;flex-direction:column;gap:6px}.analytics-comp-box.recent{border-color:#0d2f694d;background:#0d2f690a}.analytics-comp-label{font-size:.8rem;color:var(--color-text-secondary);font-weight:600}.analytics-comp-val{font-family:Outfit,sans-serif;font-size:1.8rem;font-weight:800;color:var(--color-text-primary);line-height:1.1}.analytics-comp-sub{font-size:.74rem;color:var(--color-text-muted)}.analytics-comp-vs{font-family:Outfit,sans-serif;font-weight:800;font-size:1rem;color:var(--color-text-muted)}.analytics-delta-pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.86rem;font-weight:700;padding:6px 14px;border-radius:var(--radius-full);align-self:center;margin-top:10px}.analytics-delta-pill.positive{background:#10b9811f;border:1px solid rgba(16,185,129,.3);color:#065f46}.analytics-delta-pill.negative{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:#991b1b}.analytics-delta-pill.neutral{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-secondary)}.analytics-activity-wrap{width:100%;overflow-x:auto}.analytics-activity-chart{display:flex;align-items:flex-end;gap:12px;min-height:180px;padding:10px 4px 4px}.analytics-activity-col{flex:1;min-width:32px;display:flex;flex-direction:column;align-items:center;gap:6px}.analytics-activity-bar-container{height:130px;width:100%;display:flex;align-items:flex-end;justify-content:center}.analytics-activity-bar{width:100%;max-width:36px;background:var(--color-primary);border-radius:4px 4px 0 0;transition:height .4s ease,background var(--transition-fast);position:relative;cursor:pointer}.analytics-activity-bar:hover{background:var(--color-accent)}.analytics-activity-val{font-size:.72rem;font-weight:700;color:var(--color-text-secondary)}.analytics-activity-date{font-size:.72rem;color:var(--color-text-muted);white-space:nowrap}.analytics-empty-box{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 20px;gap:12px;min-height:180px}.analytics-empty-icon{width:48px;height:48px;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.analytics-empty-title{font-size:.96rem;font-weight:700;color:var(--color-text-primary);margin:0}.analytics-empty-desc{font-size:.84rem;color:var(--color-text-secondary);max-width:320px;margin:0}.analytics-single-point-box{background:#0d2f690a;border:1px dashed rgba(13,47,105,.25);border-radius:var(--radius-md);padding:20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.analytics-single-point-title{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700;color:var(--color-primary);margin:0}.analytics-single-point-desc{font-size:.84rem;color:var(--color-text-secondary);margin:0;max-width:360px}@media (max-width: 900px){.analytics-grid{grid-template-columns:1fr}.analytics-donut-container{flex-direction:column;gap:16px}.analytics-comparison-grid{grid-template-columns:1fr;gap:10px}.analytics-comp-vs{display:none}}@media (max-width: 600px){.analytics-kpi-bar{grid-template-columns:repeat(2,1fr)}.analytics-card{padding:16px}.analytics-quality-grid,.analytics-mistake-grid{grid-template-columns:1fr}.analytics-card-header{flex-direction:column;align-items:flex-start}}@media (max-width: 400px){.analytics-kpi-bar{grid-template-columns:1fr}.analytics-section-title{font-size:1.2rem}}.teacher-profile-section{padding:32px 40px;max-width:1200px;margin:0 auto;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#0f172a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (max-width: 768px){.teacher-profile-section{padding:20px 16px}}.profile-toast{position:fixed;bottom:30px;right:30px;z-index:99999;display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:10px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;font-size:14px;font-weight:500;animation:toastSlideIn .3s cubic-bezier(.16,1,.3,1);background:#fff;border:1px solid #e2e8f0}.profile-toast-success{border-left:4px solid #10b981;color:#065f46}.profile-toast-error{border-left:4px solid #ef4444;color:#991b1b}.toast-icon{display:flex;align-items:center;justify-content:center}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-page-header{margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.profile-page-header h2{font-size:24px;font-weight:700;color:#0f172a;margin:0;letter-spacing:-.02em}.profile-workspace-grid{display:grid;grid-template-columns:360px 1fr;gap:32px;align-items:start}@media (max-width: 950px){.profile-workspace-grid{grid-template-columns:1fr;gap:24px}}.profile-sidebar-column,.profile-main-column{display:flex;flex-direction:column;gap:24px}.profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000a,0 1px 2px -1px #00000008}.profile-identity-card{padding:36px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;text-align:center}.profile-image-wrapper{width:136px;height:136px;border-radius:50%;margin:0 auto 16px;overflow:hidden;background:#f8fafc;border:3px solid #f1f5f9;box-shadow:0 4px 12px #0000000f;display:flex;align-items:center;justify-content:center}.profile-image-wrapper img{width:100%;height:100%;object-fit:cover}.profile-image-fallback{font-size:44px;font-weight:700;color:var(--color-primary, #0D2F69);background:#e0e7ff;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.profile-photo-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px;width:100%}.btn-photo-change{background:#f1f5f9;border:1px solid #e2e8f0;color:#334155;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.btn-photo-change:hover{background:#e2e8f0;color:#0f172a}.btn-photo-remove{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn-photo-remove:hover{background:#fee2e2}.profile-identity-details{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;text-align:center}.identity-name-row{display:inline-flex;align-items:center;justify-content:center;position:relative;margin:0 0 6px}.identity-name{font-size:20px;font-weight:700;color:#0f172a;margin:0;line-height:1.3;text-align:center}.identity-verified-badge{position:absolute;left:100%;margin-left:8px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background-color:#dbeafe;color:#2563eb;flex-shrink:0}.identity-verified-badge svg{width:12px;height:12px;stroke-width:2.5}.identity-title{font-size:14.5px;font-weight:600;color:#0f172a;margin-bottom:4px;text-align:center}.identity-org{font-size:13.5px;font-weight:500;color:#334155;margin-bottom:18px;text-align:center}.identity-placeholder{font-style:italic;color:#475569!important;margin-bottom:18px;font-size:13px;font-weight:500}.identity-subjects{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin-bottom:20px;width:100%}.subject-item{color:#0f172a;background:#f1f5f9;padding:3px 10px;border-radius:6px;border:1px solid #cbd5e1;font-size:12.5px;font-weight:600}.subject-dot{display:none}.identity-bio-section{text-align:left;margin-bottom:20px;padding-top:16px;border-top:1px solid #e2e8f0;width:100%}.bio-heading{font-size:13px;font-weight:600;color:#1e293b;margin-bottom:6px}.identity-bio-section p{font-size:13.5px;line-height:1.6;color:#1e293b;margin:0}.identity-meta-list{border-top:1px solid #e2e8f0;padding-top:16px;display:flex;flex-direction:column;gap:12px;font-size:13px;width:100%}.meta-row{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:12px}.meta-label{text-align:left;font-weight:500;color:#334155}.meta-value{text-align:right;font-weight:600;color:#0f172a}.completion-card-clean{padding:20px 24px}.completion-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.completion-title{font-size:14px;font-weight:600;color:#0f172a}.completion-score{font-size:14px;font-weight:700;color:var(--color-accent, #FD6A01)}.progress-bar-container{width:100%;height:6px;background:#f1f5f9;border-radius:6px;overflow:hidden;margin-bottom:12px}.progress-bar-fill{height:100%;background:var(--color-accent, #FD6A01);border-radius:6px;transition:width .8s cubic-bezier(.16,1,.3,1)}.completion-description{font-size:12.5px;color:#64748b;line-height:1.5;margin:0}.settings-form-card{padding:32px}@media (max-width: 640px){.settings-form-card{padding:20px 16px}}.settings-card-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.settings-card-header h3{font-size:18px;font-weight:600;color:#0f172a;margin:0;border:none;padding:0}.form-section{margin-bottom:12px}.form-section-header{margin-bottom:16px}.form-section-header h4{font-size:15px;font-weight:600;color:#0f172a;margin:0}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:8px}@media (max-width: 640px){.form-grid-2{grid-template-columns:1fr}}.form-stack{display:flex;flex-direction:column;gap:20px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:13.5px;font-weight:500;color:#334155}.input-clean,.textarea-clean{width:100%;padding:10px 14px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;font-size:14px;color:#0f172a;transition:border-color .15s,box-shadow .15s;box-sizing:border-box;font-family:inherit}.input-clean:focus,.textarea-clean:focus{border-color:var(--color-primary, #0D2F69);box-shadow:0 0 0 3px #0d2f691f;outline:none}.input-disabled{background:#f8fafc;color:#64748b;border-color:#e2e8f0;cursor:not-allowed}.section-divider{height:1px;background:#f1f5f9;margin:28px 0}.textarea-footer{display:flex;justify-content:flex-end;align-items:center;margin-top:4px}.char-count{font-size:12px;color:#94a3b8}.form-footer-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #e2e8f0}.btn-secondary-clean{background:#fff;border:1px solid #cbd5e1;color:#334155;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-secondary-clean:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;color:#0f172a}.btn-secondary-clean:disabled{opacity:.5;cursor:not-allowed}.btn-primary-clean{background:var(--color-accent, #FD6A01);border:1px solid var(--color-accent, #FD6A01);color:#fff;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-primary-clean:hover:not(:disabled){background:var(--color-accent-dark, #d45800);border-color:var(--color-accent-dark, #d45800);box-shadow:0 4px 12px #fd6a0159}.btn-primary-clean:disabled{opacity:.65;cursor:not-allowed}.btn-loading-content{display:inline-flex;align-items:center;gap:8px}.spinner-clean{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spinClean .75s linear infinite}@keyframes spinClean{to{transform:rotate(360deg)}}.crop-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172abf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.crop-modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 40px -10px #0003;max-width:440px;width:100%;padding:28px;animation:scaleUp .25s cubic-bezier(.16,1,.3,1);overflow:hidden;border:1px solid #e2e8f0}.crop-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.crop-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#0f172a;border:none;padding:0}.crop-close-btn{background:none;border:none;font-size:24px;color:#64748b;cursor:pointer;line-height:1;padding:0;transition:color .2s}.crop-close-btn:hover{color:#0f172a}.crop-modal-subtitle{font-size:13px;color:#64748b;margin:0 0 20px;line-height:1.4}@keyframes scaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.account-settings-container{max-width:860px;margin:0 auto;padding:16px 24px 48px;font-family:var(--font-family, "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);color:#1e293b}.account-settings-header{margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.account-settings-title{font-size:24px;font-weight:700;color:#0f172a;margin:0 0 6px;display:flex;align-items:center;gap:10px}.account-settings-subtitle{font-size:14px;color:#64748b;margin:0}.settings-toast{position:fixed;top:24px;right:24px;z-index:99999;display:inline-flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;font-size:13.5px;font-weight:500;line-height:1.4;background:#fff;border:1px solid #e2e8f0;max-width:380px;width:max-content;height:max-content;animation:settingsToastSlideIn .25s cubic-bezier(.16,1,.3,1)}.settings-toast.success{border-left:4px solid #10b981;color:#065f46;background-color:#fff}.settings-toast.error{border-left:4px solid #ef4444;color:#991b1b;background-color:#fff}.settings-toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-toast-close{background:none;border:none;color:inherit;opacity:.5;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;margin-left:8px;font-size:16px}.settings-toast-close:hover{opacity:1}@keyframes settingsToastSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.settings-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:24px;margin-bottom:24px;box-shadow:0 2px 4px #00000005;transition:box-shadow .2s ease,border-color .2s ease}.settings-card:hover{box-shadow:0 6px 12px #0000000a;border-color:#cbd5e1}.settings-card-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid #f1f5f9}.settings-card-header h3{font-size:16px;font-weight:600;color:#0f172a;margin:0}.settings-card-header p{font-size:13px;color:#64748b;margin:3px 0 0}.settings-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background-color:#fd6a011a;color:var(--color-accent, #FD6A01);flex-shrink:0}.settings-form-group{margin-bottom:16px}.settings-form-group label{display:block;font-size:13px;font-weight:500;color:#334155;margin-bottom:6px}.settings-input-wrapper{position:relative;display:flex;align-items:center;max-width:440px}.settings-input-wrapper input{width:100%;padding:10px 38px 10px 12px;border-radius:8px;border:1px solid #cbd5e1;font-size:14px;color:#0f172a;background-color:#fff;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.settings-input-wrapper input:focus{outline:none;border-color:var(--color-accent, #FD6A01);box-shadow:0 0 0 3px #fd6a0126}.password-toggle-btn{position:absolute;right:10px;background:none;border:none;color:#64748b;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px}.password-toggle-btn:hover{color:#0f172a}.password-strength-container{margin:-4px 0 16px;max-width:440px}.password-strength-meter{height:4px;background-color:#e2e8f0;border-radius:2px;overflow:hidden;margin-top:4px}.password-strength-fill{height:100%;transition:width .3s ease,background-color .3s ease}.password-strength-fill.weak{width:33%;background-color:#ef4444}.password-strength-fill.medium{width:66%;background-color:#f97316}.password-strength-fill.strong{width:100%;background-color:#10b981}.password-strength-label{font-size:11.5px;margin-top:4px;display:block;font-weight:500}.password-strength-label.weak{color:#ef4444}.password-strength-label.medium{color:#f97316}.password-strength-label.strong{color:#10b981}.settings-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.settings-info-item{background:#f8fafc;padding:14px 16px;border-radius:8px;border:1px solid #f1f5f9}.settings-info-label{font-size:11.5px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.settings-info-value{font-size:14px;font-weight:500;color:#0f172a;display:flex;align-items:center;gap:8px}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:9999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.status-badge.verified{background-color:#dcfce7;color:#166534}.status-badge.unverified{background-color:#fef9c3;color:#854d0e}.settings-toggle-list{display:flex;flex-direction:column;gap:16px}.settings-toggle-item{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid #f8fafc}.settings-toggle-item:last-child{padding-bottom:0;border-bottom:none}.settings-toggle-info{max-width:80%}.settings-toggle-title{font-size:14px;font-weight:500;color:#0f172a;margin-bottom:2px}.settings-toggle-desc{font-size:13px;color:#64748b;margin:0;line-height:1.4}.settings-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.settings-switch input{opacity:0;width:0;height:0}.settings-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.25s cubic-bezier(.4,0,.2,1);border-radius:24px}.settings-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.25s cubic-bezier(.4,0,.2,1);border-radius:50%;box-shadow:0 1px 3px #0003}input:checked+.settings-slider{background-color:var(--color-accent, #FD6A01)}input:checked+.settings-slider:before{transform:translate(20px)}@media (max-width: 640px){.account-settings-container{padding:16px}.settings-card{padding:18px}.settings-toggle-item{flex-direction:column;align-items:flex-start;gap:12px}.settings-toggle-info,.settings-input-wrapper,.password-strength-container{max-width:100%}}.avatar-container{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;overflow:hidden;flex-shrink:0;color:#fff;font-weight:600;-webkit-user-select:none;user-select:none;box-shadow:0 2px 4px #0000000d}.avatar-image{width:100%;height:100%;object-fit:cover}.avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-transform:uppercase}.teacher-leaderboard-container{padding:2rem;display:flex;flex-direction:column;gap:2rem;width:100%}.leaderboard-header-section{display:flex;flex-direction:column;gap:1.5rem}.leaderboard-title{display:flex;flex-direction:column;gap:.5rem}.leaderboard-title h1{font-size:2rem;font-weight:700;color:var(--color-text-primary, #1e293b);margin:0}.leaderboard-title p{color:var(--color-text-secondary, #64748b);font-size:1.1rem;margin:0}.leaderboard-filters{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:var(--color-surface, #ffffff);padding:1rem;border-radius:12px;box-shadow:0 4px 6px -1px #0000000d;border:1px solid var(--color-border, #e2e8f0)}.filter-group{display:flex;align-items:center;gap:.75rem}.filter-label{font-weight:600;color:var(--color-text-secondary, #64748b);font-size:.95rem}.time-filter-pills{display:flex;gap:.5rem;background:var(--color-surface-2, #f1f5f9);padding:.25rem;border-radius:8px}.time-filter-pill{padding:.5rem 1rem;border:none;background:transparent;border-radius:6px;font-size:.9rem;font-weight:500;color:var(--color-text-secondary, #64748b);cursor:pointer;transition:all .2s ease}.time-filter-pill.active{background:var(--color-primary, #1a73e8);color:#fff;box-shadow:0 2px 4px #1a73e833}.time-filter-pill:hover:not(.active){background:var(--color-border, #e2e8f0)}.podium-container{display:flex;align-items:flex-end;justify-content:center;gap:1.5rem;margin:2rem 0;min-height:250px}.podium-card{background:var(--color-surface, #ffffff);border-radius:16px;box-shadow:0 10px 15px -3px #0000001a;border:1px solid var(--color-border, #e2e8f0);padding:1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .3s ease;width:200px;position:relative}.podium-card:hover{transform:translateY(-5px)}.podium-card.rank-1{z-index:3;border-color:#fbbf24;box-shadow:0 10px 25px -5px #fbbf244d;padding-bottom:2.5rem}.podium-card.rank-2{z-index:2;padding-bottom:2rem;border-color:#94a3b8}.podium-card.rank-3{z-index:1;padding-bottom:1.5rem;border-color:#b45309}.podium-medal{font-size:2.5rem;position:absolute;top:-20px;background:var(--color-surface, #ffffff);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px #0000001a}.podium-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-top:1rem;margin-bottom:1rem;border:3px solid var(--color-primary, #1a73e8)}.rank-1 .podium-avatar{border-color:#fbbf24}.rank-2 .podium-avatar{border-color:#94a3b8}.rank-3 .podium-avatar{border-color:#b45309}.podium-name{font-size:1.1rem;font-weight:700;color:var(--color-text-primary, #1e293b);margin-bottom:.25rem}.podium-score{font-size:1.25rem;font-weight:800;color:var(--color-primary, #1a73e8)}.podium-badge{margin-top:.75rem;font-size:.8rem;background:var(--color-surface-2, #f1f5f9);padding:.25rem .75rem;border-radius:12px;color:var(--color-text-secondary, #64748b);font-weight:600}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.insight-card{background:var(--color-surface, #ffffff);padding:1.5rem;border-radius:12px;border:1px solid var(--color-border, #e2e8f0);box-shadow:0 2px 4px #00000005;display:flex;flex-direction:column;gap:.5rem}.insight-label{font-size:.9rem;color:var(--color-text-secondary, #64748b);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.insight-value{font-size:1.5rem;font-weight:700;color:var(--color-text-primary, #1e293b)}.insight-sub{font-size:.85rem;color:var(--color-primary, #1a73e8);font-weight:500}.leaderboard-table-container{background:var(--color-surface, #ffffff);border-radius:12px;border:1px solid var(--color-border, #e2e8f0);box-shadow:0 4px 6px -1px #0000000d;display:flex;flex-direction:column}.leaderboard-toolbar{padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--color-border, #e2e8f0);flex-wrap:wrap;gap:1rem}.leaderboard-search{flex:1;min-width:250px}.leaderboard-actions{display:flex;gap:.75rem}.leaderboard-table-responsive{overflow-x:auto}.leaderboard-table{width:100%;border-collapse:collapse;text-align:left}.leaderboard-table th{padding:1rem 1.5rem;font-size:.85rem;font-weight:600;color:var(--color-text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border, #e2e8f0);background:var(--color-surface-2, #f8fafc);white-space:nowrap}.leaderboard-table td{padding:1rem 1.5rem;border-bottom:1px solid var(--color-border, #e2e8f0);vertical-align:middle}.leaderboard-table tbody tr:hover{background:var(--color-surface-2, #f8fafc)}.student-cell{display:flex;align-items:center;gap:1rem}.student-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--color-border, #e2e8f0)}.student-info{display:flex;flex-direction:column}.student-name{font-weight:600;color:var(--color-text-primary, #1e293b)}.student-email{font-size:.85rem;color:var(--color-text-secondary, #64748b)}.rank-cell{font-weight:700;font-size:1.1rem;color:var(--color-text-primary, #1e293b);text-align:center;width:60px}.score-cell{font-weight:700;color:var(--color-primary, #1a73e8);font-size:1.05rem}.trend-cell{display:flex;align-items:center;gap:.25rem;font-weight:600}.trend-up{color:#16a34a}.trend-down{color:#dc2626}.trend-stable{color:#64748b}.achievement-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;background:var(--color-accent-light, #fff7ed);color:var(--color-accent, #ea580c);border:1px solid rgba(234,88,12,.2);white-space:nowrap}.empty-state{padding:4rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state h3{font-size:1.25rem;color:var(--color-text-primary, #1e293b);margin:0}.empty-state p{color:var(--color-text-secondary, #64748b);max-width:400px}@media (max-width: 768px){.podium-container{flex-direction:column;align-items:center;gap:2rem}.podium-card{width:100%;max-width:300px}.podium-card.rank-1,.podium-card.rank-2,.podium-card.rank-3{padding-bottom:1.5rem}.leaderboard-filters{flex-direction:column;align-items:stretch}}:root{--ea-blue: #0D2F69;--ea-blue-dark: #081d42;--ea-blue-light: #16438e;--ea-blue-subtle: #f0f4fa;--ea-orange: #FD6A01;--ea-orange-hover: #e55d00;--ea-orange-soft: rgba(253, 106, 1, .09);--ea-whatsapp: #25D366;--ea-whatsapp-hover: #1ebe57;--ea-green: #10b981;--ea-green-bg: #ecfdf5;--ea-bg: #ffffff;--ea-bg-soft: #f8fafc;--ea-bg-subtle: #f1f5f9;--ea-text: #0f172a;--ea-text-secondary: #475569;--ea-text-muted: #64748b;--ea-border: #e2e8f0;--ea-border-subtle: #edf2f7;--ea-radius-sm: 8px;--ea-radius-md: 12px;--ea-radius-lg: 18px;--ea-radius-xl: 24px;--ea-radius-pill: 9999px;--ea-max-width: 1240px;--ea-header-height: 84px;--ea-shadow-sm: 0 1px 2px rgba(13, 47, 105, .05);--ea-shadow-md: 0 4px 12px rgba(13, 47, 105, .06);--ea-shadow-lg: 0 10px 24px rgba(13, 47, 105, .08);--ea-shadow-glow: 0 4px 14px rgba(253, 106, 1, .15);--ea-transition: all .2s cubic-bezier(.16, 1, .3, 1)}.ea-public-root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--ea-text);background-color:var(--ea-bg);line-height:1.65;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden;position:relative;-webkit-font-smoothing:antialiased}.ea-public-root *,.ea-public-root *:before,.ea-public-root *:after{box-sizing:border-box}.ea-container{width:100%;max-width:var(--ea-max-width);margin:0 auto;padding:0 24px}.ea-main-content{flex:1 0 auto}.ea-header{position:sticky;top:0;z-index:1000;background:#fffffff2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--ea-border);transition:box-shadow .3s ease,background .3s ease}.ea-header.scrolled{box-shadow:0 4px 20px #0d2f6914;background:#fffffffa}.ea-header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;height:var(--ea-header-height)}.ea-brand-logo{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;transition:transform .2s ease}.ea-brand-logo:hover{transform:translateY(-1px)}.ea-brand-logo img{height:auto;max-height:64px;max-width:100%;width:auto;object-fit:contain;display:block}.ea-desktop-nav{display:flex;align-items:center;gap:6px}.ea-nav-link{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;font-size:.95rem;font-weight:500;color:var(--ea-text-secondary);text-decoration:none;border-radius:var(--ea-radius-sm);position:relative;transition:var(--ea-transition)}.ea-nav-link:hover{color:var(--ea-orange);background-color:var(--ea-orange-soft)}.ea-nav-link.active{color:var(--ea-blue);font-weight:600;background-color:var(--ea-blue-subtle)}.ea-nav-link.active:after{content:"";position:absolute;bottom:-2px;left:20%;width:60%;height:2.5px;background:var(--ea-orange);border-radius:2px}.ea-nav-item-dropdown{position:relative}.ea-dropdown-trigger{cursor:pointer}.ea-dropdown-icon{font-size:.75rem;transition:transform .2s ease}.ea-nav-item-dropdown:hover .ea-dropdown-icon{transform:rotate(180deg)}.ea-dropdown-menu{position:absolute;top:100%;left:0;min-width:220px;background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-md);box-shadow:var(--ea-shadow-lg);padding:8px;display:none;z-index:1010;animation:eaDropdownFade .2s ease}.ea-nav-item-dropdown:hover .ea-dropdown-menu,.ea-nav-item-dropdown:focus-within .ea-dropdown-menu{display:flex;flex-direction:column}@keyframes eaDropdownFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ea-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--ea-radius-sm);font-size:.92rem;font-weight:500;color:var(--ea-text-secondary);text-decoration:none;transition:var(--ea-transition)}.ea-dropdown-item:hover{background-color:var(--ea-bg-soft);color:var(--ea-orange)}.ea-dropdown-item.active{color:var(--ea-blue);font-weight:600;background-color:var(--ea-blue-subtle)}.ea-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.ea-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-weight:600;border-radius:var(--ea-radius-md);text-decoration:none;cursor:pointer;transition:background .2s cubic-bezier(.16,1,.3,1),color .2s cubic-bezier(.16,1,.3,1),border-color .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;border:1.5px solid transparent;line-height:1.2}.ea-btn-sm{padding:8px 16px;font-size:.88rem}.ea-btn-md{padding:12px 22px;font-size:.96rem}.ea-btn-lg{padding:14px 28px;font-size:1.05rem}.ea-btn-primary{background:var(--ea-blue);color:#fff;border-color:var(--ea-blue)}.ea-btn-primary:hover{background:var(--ea-blue-light);color:#fff;border-color:var(--ea-blue-light);box-shadow:0 4px 12px #0d2f6940;transform:translateY(-1px)}.ea-btn-orange{background:var(--ea-orange);color:#fff;border-color:var(--ea-orange)}.ea-btn-orange:hover{background:var(--ea-orange-hover);color:#fff;border-color:var(--ea-orange-hover);box-shadow:var(--ea-shadow-glow);transform:translateY(-1px)}.ea-btn-outline{background:transparent;color:var(--ea-blue);border-color:var(--ea-border)}.ea-btn-outline:hover{background:transparent;color:var(--ea-blue-dark);border-color:var(--ea-blue);box-shadow:0 0 0 2px #0d2f691a,0 0 8px #0d2f6914}.ea-btn-outline-orange{background:transparent;color:var(--ea-orange);border-color:var(--ea-orange)}.ea-btn-outline-orange:hover{background:transparent;color:var(--ea-orange-hover);border-color:var(--ea-orange-hover);box-shadow:0 0 0 2px #fd6a011f,0 0 8px #fd6a011a}.ea-btn-ghost{background:transparent;color:var(--ea-text-secondary);border-color:transparent}.ea-btn-ghost:hover{color:var(--ea-blue);background:var(--ea-bg-soft);border-color:transparent}.ea-btn-whatsapp{background:var(--ea-whatsapp);color:#fff;border-color:var(--ea-whatsapp)}.ea-btn-whatsapp:hover{background:var(--ea-whatsapp-hover);color:#fff;border-color:var(--ea-whatsapp-hover);box-shadow:0 4px 14px #25d3664d;transform:translateY(-1px)}.ea-user-chip{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;background:var(--ea-bg-soft);border:1px solid var(--ea-border);border-radius:var(--ea-radius-pill);text-decoration:none;color:var(--ea-text);font-size:.88rem;font-weight:500;transition:var(--ea-transition)}.ea-user-chip:hover{border-color:var(--ea-orange);background:#fff}.ea-avatar-bubble{width:32px;height:32px;border-radius:50%;background:var(--ea-blue);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.85rem}.ea-hamburger-btn{display:none;background:none;border:none;padding:8px;color:var(--ea-text);cursor:pointer;border-radius:var(--ea-radius-sm);transition:var(--ea-transition)}.ea-hamburger-btn:hover{background:var(--ea-bg-soft)}.ea-mobile-drawer{position:fixed;top:0;right:0;bottom:0;left:0;background:#081d4275;z-index:1100;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .3s ease,visibility .3s ease}.ea-mobile-drawer.open{visibility:visible;opacity:1;pointer-events:auto}.ea-mobile-drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(390px,calc(100vw - 24px));background:#fff;box-shadow:-4px 0 30px #00000026;padding:clamp(20px,5vw,28px);display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);overflow-y:auto}.ea-mobile-drawer.open .ea-mobile-drawer-panel{transform:translate(0)}.ea-drawer-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--ea-border);margin-bottom:20px}.ea-drawer-close-btn{background:none;border:none;width:44px;height:44px;padding:8px;cursor:pointer;color:var(--ea-text-muted);border-radius:var(--ea-radius-sm)}.ea-drawer-close-btn:hover{color:var(--ea-text);background:var(--ea-bg-soft)}.ea-drawer-nav{display:flex;flex-direction:column;gap:6px;flex:1}.ea-drawer-link{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 14px;font-size:1rem;font-weight:500;color:var(--ea-text);text-decoration:none;border-radius:var(--ea-radius-sm);transition:var(--ea-transition)}.ea-drawer-link:hover{background:var(--ea-orange-soft);color:var(--ea-orange)}.ea-drawer-link.active{background:var(--ea-blue-subtle);color:var(--ea-blue);font-weight:600}.ea-drawer-actions{display:flex;flex-direction:column;gap:10px;padding-top:20px;border-top:1px solid var(--ea-border);margin-top:20px}.ea-page-hero{position:relative;background:var(--ea-bg-soft);padding:64px 0 54px;border-bottom:1px solid var(--ea-border-subtle)}.ea-page-hero-inner{text-align:center;max-width:840px;margin:0 auto}.ea-badge-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-pill);font-size:.85rem;font-weight:600;color:var(--ea-blue);margin-bottom:20px;box-shadow:var(--ea-shadow-sm)}.ea-badge-pill.orange{border-color:#fd6a014d;color:var(--ea-orange);background:var(--ea-orange-soft)}.ea-badge-dot{width:8px;height:8px;border-radius:50%;background:var(--ea-orange)}.ea-page-hero h1{font-size:clamp(2.2rem,4vw,3.2rem);font-weight:800;color:var(--ea-blue);letter-spacing:-.02em;line-height:1.18;margin-bottom:18px}.ea-page-hero p.ea-hero-lead{font-size:clamp(1.05rem,2vw,1.22rem);color:var(--ea-text-secondary);line-height:1.6;margin-bottom:30px;max-width:740px;margin-left:auto;margin-right:auto}.ea-hero-actions-row{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.ea-section{padding:84px 0;position:relative}.ea-section-alt{background-color:var(--ea-bg-soft)}.ea-section-dark{background-color:var(--ea-blue-dark);color:#fff}.ea-section-dark .ea-section-subtitle,.ea-section-dark p{color:#cbd5e1}.ea-section-header{text-align:center;max-width:760px;margin:0 auto 52px}.ea-section-header.left-aligned{text-align:left;margin-left:0}.ea-section-kicker{display:inline-block;font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ea-orange);margin-bottom:10px}.ea-section-title{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;color:var(--ea-blue);letter-spacing:-.02em;line-height:1.22;margin-bottom:14px}.ea-section-dark .ea-section-title{color:#fff}.ea-section-subtitle{font-size:1.1rem;color:var(--ea-text-secondary);line-height:1.6}.ea-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.ea-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.ea-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.ea-card{background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-lg);padding:32px 28px;box-shadow:var(--ea-shadow-sm);transition:var(--ea-transition);display:flex;flex-direction:column}.ea-card:hover{transform:translateY(-4px);border-color:#cbd5e1;box-shadow:var(--ea-shadow-md)}.ea-card-icon-wrapper{width:52px;height:52px;border-radius:var(--ea-radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:20px;flex-shrink:0}.ea-card-icon-wrapper.blue{background:var(--ea-blue-subtle);color:var(--ea-blue)}.ea-card-icon-wrapper.orange{background:var(--ea-orange-soft);color:var(--ea-orange)}.ea-card-icon-wrapper.green{background:var(--ea-green-bg);color:var(--ea-green)}.ea-card h3,.ea-card h4{font-size:1.24rem;font-weight:700;color:var(--ea-blue);margin-bottom:12px;line-height:1.3}.ea-card p{font-size:.97rem;color:var(--ea-text-secondary);line-height:1.6;margin-bottom:0}.ea-tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;max-width:100%}.ea-tag{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;font-size:.8rem;font-weight:500;line-height:1.4;border-radius:var(--ea-radius-sm, 6px);background:#fff4ec;color:#fd6a01;border:1px solid rgba(253,106,1,.3);white-space:normal;word-break:normal;overflow-wrap:break-word;max-width:100%;transition:background-color .18s ease,border-color .18s ease;-webkit-user-select:none;user-select:none}.ea-tag:hover{background:#ffead9;border-color:#fd6a01;color:#fd6a01}.ea-step-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;position:relative}.ea-step-item{background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-md);padding:24px;position:relative;box-shadow:var(--ea-shadow-sm);transition:var(--ea-transition)}.ea-step-item:hover{border-color:var(--ea-orange);transform:translateY(-2px)}.ea-step-number{width:38px;height:38px;border-radius:50%;background:var(--ea-blue);color:#fff;font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;margin-bottom:16px;border:3px solid #ffffff;box-shadow:0 0 0 2px var(--ea-blue)}.ea-step-item:nth-child(2n) .ea-step-number{background:var(--ea-orange);box-shadow:0 0 0 2px var(--ea-orange)}.ea-step-title{font-size:1.1rem;font-weight:700;color:var(--ea-blue);margin-bottom:8px}.ea-step-desc{font-size:.92rem;color:var(--ea-text-secondary);line-height:1.5;margin:0}.ea-fadein{animation:eaPanelFadeIn .7s ease .15s both}@keyframes eaPanelFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ea-preview{position:relative;display:flex;justify-content:center}.ea-practice-card-preview{background:#fff;border-radius:var(--ea-radius-xl);box-shadow:var(--ea-shadow-lg);padding:24px 24px 20px;width:100%;max-width:440px;border:1px solid var(--ea-border);display:flex;flex-direction:column;gap:14px;transition:transform .3s ease,box-shadow .3s ease}.ea-practice-card-preview:hover{transform:translateY(-2px);box-shadow:0 16px 36px #0d2f691f}.ea-practice-card-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--ea-border)}.ea-practice-card-badge{display:inline-flex;align-items:center;gap:8px;background:var(--ea-blue-subtle);color:var(--ea-blue);font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:6px}.ea-practice-dot{width:7px;height:7px;border-radius:50%;background:var(--ea-orange)}.ea-practice-timer{display:inline-flex;align-items:center;gap:6px;font-family:monospace;font-size:.85rem;font-weight:700;color:#475569;background:#f1f5f9;padding:4px 10px;border-radius:6px}.ea-practice-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.ea-practice-qnum{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ea-orange)}.ea-practice-subject{font-size:.8rem;font-weight:600;color:var(--ea-text-secondary)}.ea-practice-card-stem{font-size:.94rem;font-weight:600;color:var(--ea-blue-dark);line-height:1.45}.ea-practice-options-list{display:flex;flex-direction:column;gap:8px}.ea-practice-opt{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;font-size:.86rem;font-weight:500;color:#334155;transition:all .2s ease}.ea-practice-opt.selected{border-color:var(--ea-orange);background:#fff8f3;color:var(--ea-blue-dark);font-weight:600;box-shadow:0 0 0 1px var(--ea-orange)}.ea-opt-letter{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#e2e8f0;color:#475569;font-size:.75rem;font-weight:700;flex-shrink:0}.ea-practice-opt.selected .ea-opt-letter{background:var(--ea-orange);color:#fff}.ea-practice-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--ea-border);gap:12px}.ea-practice-bookmark{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--ea-blue)}.ea-practice-bookmark svg{color:var(--ea-blue)}.ea-practice-status-tag{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ea-green);background:#ecfdf5;padding:3px 8px;border-radius:4px}.ea-analytics{background:#fff;border-radius:var(--ea-radius-xl);box-shadow:var(--ea-shadow-lg);padding:28px 28px 24px;width:100%;max-width:420px;border:1px solid var(--ea-border);transition:transform .3s ease,box-shadow .3s ease}.ea-analytics:hover{transform:translateY(-3px);box-shadow:0 14px 34px #0d2f6921}.ea-analytics-header{display:flex;align-items:center;gap:8px;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid var(--ea-border)}.ea-analytics-dot{width:8px;height:8px;border-radius:50%;background:var(--ea-orange);flex-shrink:0}.ea-analytics-header span{font-size:.85rem;font-weight:700;color:var(--ea-blue);text-transform:uppercase;letter-spacing:1px}.ea-summary-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:22px}.ea-summary-item{background:var(--ea-bg-soft);border-radius:10px;padding:14px 10px;text-align:center}.ea-summary-label{display:block;font-size:.7rem;font-weight:600;color:var(--ea-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.ea-summary-value{display:flex;align-items:center;justify-content:center;gap:3px;font-size:1.3rem;font-weight:800;line-height:1}.ea-val-blue{color:var(--ea-blue)}.ea-val-green{color:var(--ea-green)}.ea-chart-section{margin-bottom:18px}.ea-chart-label{font-size:.72rem;font-weight:600;color:var(--ea-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.ea-bar-chart{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;height:110px;padding:0 4px}.ea-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.ea-bar{width:100%;max-width:36px;border-radius:6px 6px 2px 2px;background:var(--ea-blue);transition:height .4s ease;position:relative;animation:eaBarGrow .8s ease .4s both;transform-origin:bottom}.ea-bar-accent{background:var(--ea-orange)}@keyframes eaBarGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.ea-bar-col span{font-size:.68rem;font-weight:600;color:var(--ea-text-secondary);margin-top:8px}.ea-accordion-list{display:flex;flex-direction:column;gap:12px;max-width:860px;margin:0 auto}.ea-accordion-item{background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-md);overflow:hidden;transition:var(--ea-transition)}.ea-accordion-item:hover{border-color:#cbd5e1}.ea-accordion-item.open{border-color:var(--ea-blue);box-shadow:var(--ea-shadow-sm)}.ea-accordion-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;background:none;border:none;text-align:left;font-family:inherit;font-size:1.04rem;font-weight:600;color:var(--ea-blue);cursor:pointer;transition:var(--ea-transition)}.ea-accordion-btn:hover{color:var(--ea-orange)}.ea-accordion-icon{width:24px;height:24px;border-radius:50%;background:var(--ea-bg-soft);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:var(--ea-blue);flex-shrink:0;transition:transform .25s ease,background .25s ease,color .25s ease}.ea-accordion-item.open .ea-accordion-icon{transform:rotate(45deg);background:var(--ea-orange);color:#fff}.ea-accordion-content{padding:0 24px 20px;font-size:.96rem;color:var(--ea-text-secondary);line-height:1.65;animation:eaAccordionSlide .25s ease}@keyframes eaAccordionSlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ea-cta-banner{background:var(--ea-blue-dark);border-radius:var(--ea-radius-xl);padding:56px 40px;color:#fff;text-align:center;position:relative;box-shadow:var(--ea-shadow-lg)}.ea-cta-banner-content{position:relative;z-index:2;max-width:720px;margin:0 auto}.ea-cta-banner h2{font-size:clamp(2rem,3.5vw,2.7rem);font-weight:800;color:#fff;letter-spacing:-.02em;line-height:1.2;margin-bottom:16px}.ea-cta-banner p{font-size:1.12rem;color:#e2e8f0;line-height:1.6;margin-bottom:32px}.ea-cta-banner-actions{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.ea-footer{background-color:var(--ea-blue-dark);color:#e2e8f0;padding:72px 0 32px;border-top:1px solid rgba(255,255,255,.08)}.ea-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:56px}.ea-footer-brand-col{display:flex;flex-direction:column;gap:16px}.ea-footer-logo img{height:56px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}.ea-footer-desc{font-size:.94rem;color:#94a3b8;line-height:1.65;max-width:340px}.ea-footer-col h4{font-size:.95rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.06em;margin-bottom:20px}.ea-footer-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.ea-footer-link{font-size:.92rem;color:#94a3b8;text-decoration:none;transition:var(--ea-transition);display:inline-flex;align-items:center;gap:6px}.ea-footer-link:hover{color:var(--ea-orange);transform:translate(2px)}.ea-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:32px;border-top:1px solid rgba(255,255,255,.08);font-size:.88rem;color:#64748b;flex-wrap:wrap}.ea-footer-status{display:inline-flex;align-items:center;gap:8px;font-size:.82rem;color:#94a3b8}.ea-status-dot{width:8px;height:8px;border-radius:50%;background-color:var(--ea-green);box-shadow:0 0 0 2px #10b98133}@media (max-width: 1024px){.ea-desktop-nav{display:none}.ea-hamburger-btn{display:flex}.ea-grid-4{grid-template-columns:repeat(2,1fr)}.ea-footer-grid{grid-template-columns:1fr 1fr;gap:36px}}@media (max-width: 768px){:root{--ea-header-height: 72px}.ea-container{padding:0 18px}.ea-section{padding:60px 0}.ea-page-hero{padding:48px 0 40px}.ea-grid-2,.ea-grid-3,.ea-grid-4{grid-template-columns:1fr;gap:20px}.ea-step-timeline{grid-template-columns:1fr}.ea-footer-grid{grid-template-columns:1fr;gap:32px}.ea-cta-banner{padding:40px 24px}.ea-progress-metrics{flex-direction:column;gap:16px}.ea-metric-arrow{transform:rotate(90deg)}.ea-header-actions .ea-btn-hide-mobile{display:none}}@media (max-width: 480px){.ea-brand-logo img{height:auto;max-height:52px}.ea-hero-actions-row{flex-direction:column;width:100%}.ea-hero-actions-row .ea-btn{width:100%}.ea-cta-banner-actions{flex-direction:column;width:100%}.ea-cta-banner-actions .ea-btn{width:100%}}.ea-home-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:48px}.ea-home-hero-copy,.ea-home-hero-grid>*{min-width:0}.ea-home-hero-actions,.ea-home-hero-benefits{display:flex;flex-wrap:wrap}.ea-home-hero-actions{gap:14px;margin-bottom:28px}.ea-home-hero-benefits{align-items:center;gap:12px 20px;color:var(--ea-text-muted);font-size:.9rem}@media (max-width: 768px){.ea-home-hero{padding:40px 0 48px!important}.ea-home-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:32px}.ea-home-hero-copy,.ea-home-hero-grid>*{width:100%}.ea-preview{order:2}.ea-analytics{width:min(100%,360px);margin:0 auto;padding:22px 18px 18px}.ea-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:18px}.ea-summary-item{min-width:0;padding:12px 6px}.ea-home-hero-actions{align-items:stretch;flex-direction:column;margin-bottom:24px}.ea-home-hero-actions .ea-btn{width:100%}.ea-home-hero-benefits{align-items:flex-start;flex-direction:column;gap:10px}.ea-header-inner{min-width:0;gap:8px}.ea-header-actions>.ea-btn,.ea-user-chip{display:none}.ea-hamburger-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;flex:0 0 44px}}@media (max-width: 480px){.ea-home-hero h1{font-size:2.1rem!important}.ea-home-hero-copy>p{font-size:1rem!important}.ea-badge-pill{max-width:100%;white-space:normal}.ea-summary-label{font-size:.62rem}.ea-summary-value{font-size:1.1rem}}.ea-home-hero-title{margin:0 0 20px;color:var(--ea-blue);font-size:clamp(2.4rem,4.5vw,3.6rem);font-weight:800;letter-spacing:-.025em;line-height:1.14}.ea-home-hero-title span{color:var(--ea-orange)}.ea-home-hero-description{max-width:620px;margin:0 0 32px;color:var(--ea-text-secondary);font-size:1.15rem;line-height:1.65}.ea-home-hero-benefit{display:inline-flex;align-items:center;gap:7px}.ea-home-hero-benefit svg{width:16px;height:16px;color:var(--ea-green);flex:0 0 auto}.ea-home-trust-strip{padding:18px 0;color:#fff;background:var(--ea-blue);border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.ea-home-trust-items{display:flex;align-items:center;justify-content:center;gap:16px 32px;color:inherit;font-size:.95rem;font-weight:600;letter-spacing:.02em;text-align:center}.ea-home-trust-items>span:not(.ea-home-trust-separator){display:inline-flex;align-items:center;gap:8px}.ea-home-trust-items svg{width:16px;height:16px;flex:0 0 auto}.ea-home-trust-separator{opacity:.4}.ea-home-experience-tabs{display:inline-flex;gap:8px;max-width:100%;margin-top:20px;padding:6px;border-radius:10px;background:#eef2f7}.ea-home-experience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}@media (max-width: 768px){.ea-home-hero-copy{max-width:560px;margin-inline:auto}.ea-home-hero-title,.ea-home-hero-description,.ea-home-hero-actions,.ea-home-hero-benefits,.ea-badge-pill{width:100%}.ea-badge-pill{width:fit-content;max-width:100%;margin-bottom:18px;white-space:normal;line-height:1.45}.ea-home-hero-title{max-width:13ch;margin-bottom:16px;font-size:clamp(2.15rem,10vw,3rem);line-height:1.08}.ea-home-hero-description{max-width:38rem;margin-bottom:26px;font-size:1rem;line-height:1.65}.ea-home-hero-actions{gap:12px;align-items:center}.ea-home-hero-actions .ea-btn{min-height:48px;max-width:360px;padding-inline:20px}.ea-home-hero-benefits{margin:0;font-size:.9rem}.ea-home-hero-benefit{min-height:24px}.ea-home-trust-items{flex-direction:column;align-items:flex-start;gap:10px;text-align:left}.ea-home-trust-separator{display:none}.ea-home-experience-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.ea-home-experience-tabs .ea-btn{min-width:0;min-height:44px;padding:8px 10px;font-size:.8rem;white-space:normal}.ea-home-experience-grid{grid-template-columns:minmax(0,1fr);gap:16px}.ea-home-experience-grid .ea-card{padding:24px 20px}}@media (max-width: 360px){.ea-container{padding-inline:14px}.ea-home-hero-title{font-size:2rem}.ea-analytics{padding:18px 14px 16px}.ea-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ea-summary-item:last-child{grid-column:1 / -1}.ea-analytics-header span{font-size:.76rem;letter-spacing:.07em}.ea-bar-chart{height:92px;gap:6px;padding-inline:0}}.ea-prep-widget{background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-lg);box-shadow:var(--ea-shadow-md);padding:32px;position:relative;overflow:hidden}.ea-prep-widget:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--ea-blue) 0%,var(--ea-orange) 100%)}.ea-prep-journey{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px;position:relative}.ea-prep-journey:after{content:"";position:absolute;top:50%;left:30px;right:30px;height:2px;background:var(--ea-border-subtle);z-index:1;transform:translateY(-50%)}.ea-prep-step{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px}.ea-prep-step-icon{width:48px;height:48px;border-radius:50%;background:var(--ea-bg-soft);border:2px solid var(--ea-bg);display:flex;align-items:center;justify-content:center;color:var(--ea-text-muted);box-shadow:var(--ea-shadow-sm);transition:all .3s ease}.ea-prep-step.active .ea-prep-step-icon{background:var(--ea-blue);color:#fff;border-color:var(--ea-blue-subtle)}.ea-prep-step.complete .ea-prep-step-icon{background:var(--ea-orange);color:#fff;border-color:var(--ea-orange-soft)}.ea-prep-step-label{font-size:.75rem;font-weight:600;color:var(--ea-text-secondary);text-transform:uppercase;letter-spacing:.5px}.ea-prep-metrics{display:flex;align-items:center;justify-content:space-around;background:var(--ea-bg-soft);border-radius:var(--ea-radius-md);padding:24px;margin-bottom:24px}.ea-prep-metric{text-align:center}.ea-prep-metric-label{display:block;font-size:.8rem;color:var(--ea-text-secondary);margin-bottom:4px}.ea-prep-metric-value{display:block;font-size:2rem;font-weight:700;font-family:Outfit,sans-serif;color:var(--ea-text);line-height:1}.ea-prep-metric-value.previous{color:var(--ea-text-muted)}.ea-prep-metric-value.current{color:var(--ea-blue)}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ea-prep-metric-value{animation:countUp .6s cubic-bezier(.16,1,.3,1) forwards}.ea-prep-improvement{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ea-green-bg);color:var(--ea-green);padding:12px 20px;border-radius:var(--ea-radius-sm);font-weight:700}.ea-prep-improvement-value{font-size:1.25rem;font-family:Outfit,sans-serif}.ea-prep-improvement-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.ea-prep-categories{display:flex;flex-direction:column;gap:12px}.ea-prep-category{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:var(--ea-radius-sm);border:1px solid var(--ea-border-subtle);background:#fff}.ea-prep-category-name{font-size:.9rem;font-weight:600;color:var(--ea-blue)}.ea-prep-category-stat{display:flex;align-items:center;gap:12px}.ea-prep-category-value{font-weight:700;font-size:.9rem}.ea-prep-category-trend{font-size:.75rem;color:var(--ea-orange);font-weight:600;background:var(--ea-orange-soft);padding:2px 8px;border-radius:var(--ea-radius-pill)}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.ea-prep-category:nth-child(1){animation:slideInRight .4s ease forwards .2s;opacity:0}.ea-prep-category:nth-child(2){animation:slideInRight .4s ease forwards .3s;opacity:0}.ea-prep-category:nth-child(3){animation:slideInRight .4s ease forwards .4s;opacity:0}@media (max-width: 576px){.ea-prep-metrics{flex-direction:column;gap:20px}.ea-prep-journey{display:none}}.ea-feature-card-student .student-icon-wrapper{background:var(--ea-blue-subtle)!important;color:var(--ea-blue)!important;transition:background .25s ease,color .25s ease,transform .25s ease}.ea-feature-card-student:hover .student-icon-wrapper,.ea-feature-card-student:focus-within .student-icon-wrapper{background:var(--ea-orange-soft)!important;color:var(--ea-orange)!important;transform:scale(1.05)}.ea-feature-card-teacher .teacher-icon-wrapper{background:var(--ea-orange-soft)!important;color:var(--ea-orange)!important;transition:background .25s ease,color .25s ease,transform .25s ease}.ea-feature-card-teacher:hover .teacher-icon-wrapper,.ea-feature-card-teacher:focus-within .teacher-icon-wrapper{background:var(--ea-blue-subtle)!important;color:var(--ea-blue)!important;transform:scale(1.05)}.ea-comparison-widget{display:flex;flex-direction:column;background:#fff;border:1px solid var(--ea-border);border-radius:var(--ea-radius-lg);box-shadow:var(--ea-shadow-sm);overflow:hidden;margin-top:24px}.ea-comparison-header{padding:24px 32px;text-align:center;background:var(--ea-bg-soft);border-bottom:1px solid var(--ea-border)}.ea-comparison-header h3{margin:0;font-size:1.4rem;color:var(--ea-text)}.ea-comparison-header p{margin:4px 0 0;font-size:.95rem;color:var(--ea-text-secondary)}.ea-comparison-body{display:grid;grid-template-columns:1fr 1fr;position:relative}.ea-comparison-body:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--ea-border)}.ea-comparison-panel{padding:40px 32px;transition:background .3s ease,box-shadow .3s ease;position:relative;z-index:1}.ea-comparison-panel.practice{border-top:4px solid transparent;transition:border-color .3s ease,background .3s ease}.ea-comparison-panel.practice:hover{background:#fafaf9;border-top-color:var(--ea-orange)}.ea-comparison-panel.assessment{border-top:4px solid transparent;transition:border-color .3s ease,background .3s ease}.ea-comparison-panel.assessment:hover{background:#f8fafc;border-top-color:var(--ea-blue)}.ea-comparison-label{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.ea-comparison-panel.practice .ea-comparison-label{color:var(--ea-orange)}.ea-comparison-panel.assessment .ea-comparison-label{color:var(--ea-blue)}.ea-comparison-label svg{width:18px;height:18px}.ea-comparison-title{font-size:1.5rem;margin-bottom:12px;color:var(--ea-text);font-family:Outfit,sans-serif;font-weight:700}.ea-comparison-desc{font-size:.95rem;color:var(--ea-text-secondary);margin-bottom:24px;line-height:1.6}.ea-comparison-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.ea-comparison-list li{display:flex;align-items:flex-start;gap:12px;font-size:.92rem;color:var(--ea-text-secondary)}.ea-comparison-panel.practice .ea-comparison-list li svg{color:var(--ea-orange);margin-top:2px;flex-shrink:0}.ea-comparison-panel.assessment .ea-comparison-list li svg{color:var(--ea-blue);margin-top:2px;flex-shrink:0}@media (max-width: 900px){.ea-comparison-body{grid-template-columns:1fr}.ea-comparison-body:after{display:none}.ea-comparison-panel{border-bottom:1px solid var(--ea-border);border-top:none;border-left:4px solid transparent}.ea-comparison-panel.practice:hover{border-top-color:transparent;border-left-color:var(--ea-orange)}.ea-comparison-panel.assessment:hover{border-top-color:transparent;border-left-color:var(--ea-blue)}}.ea-btn-outline-light{border-color:#fff6;color:#fff}.ea-btn-outline-light:hover{background:#ffffff26;color:#fff;border-color:#ffffffb3;box-shadow:0 0 12px #ffffff26;transform:translateY(-1px)}.ea-prep-snapshot{font-family:Outfit,sans-serif;background:#fff;border:1px solid var(--ea-border);border-radius:12px;padding:40px;box-shadow:0 4px 12px #00000005;display:flex;flex-direction:column;gap:36px;color:var(--ea-text);overflow:hidden}.ea-prep-snapshot-header{border-bottom:1px solid var(--ea-border);padding-bottom:16px}.ea-prep-snapshot-title{font-size:.8rem;font-weight:700;color:var(--ea-text-muted);letter-spacing:.1em;text-transform:uppercase;margin:0}.ea-prep-snapshot-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.ea-prep-snapshot-metric{display:flex;flex-direction:column;gap:8px}.ea-prep-snapshot-label{font-size:1.1rem;color:var(--ea-text-secondary)}.ea-prep-snapshot-value-row{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}.ea-prep-snapshot-number{font-size:clamp(2.5rem,8vw,4rem);font-weight:700;color:var(--ea-blue);line-height:1;letter-spacing:-.02em}.ea-prep-snapshot-improvement{font-size:.95rem;font-weight:600;color:var(--ea-green);background:#10b9811a;padding:4px 12px;border-radius:20px;animation:slideFadeIn .5s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.ea-prep-snapshot-trend{flex-shrink:0}.ea-snapshot-trend-svg{display:block}.ea-snapshot-trend-line{stroke-dasharray:150;stroke-dashoffset:150;animation:drawLine 1s ease-out .2s forwards}.ea-snapshot-trend-dot{opacity:0;animation:fadeDot .3s ease-in 1s forwards}.ea-prep-snapshot-categories{display:flex;flex-direction:column;gap:20px}.ea-snapshot-category{display:flex;flex-direction:column;gap:8px;opacity:0;transform:translateY(10px);animation:slideFadeIn .5s cubic-bezier(.16,1,.3,1) forwards}.ea-snapshot-cat-header{display:flex;justify-content:space-between;align-items:flex-end}.ea-snapshot-cat-info{display:flex;flex-direction:column;gap:2px}.ea-snapshot-cat-role{font-size:.7rem;font-weight:600;color:var(--ea-text-muted);text-transform:uppercase;letter-spacing:.05em}.ea-snapshot-cat-name{font-size:1rem;color:var(--ea-text);font-weight:500}.ea-snapshot-cat-score{font-size:1.05rem;font-weight:600;color:var(--ea-blue)}.ea-snapshot-cat-bar{height:5px;background:var(--ea-bg-soft);border-radius:3px;overflow:hidden}.ea-snapshot-cat-fill{height:100%;border-radius:3px;transform-origin:left;transform:scaleX(0);animation:fillBar .8s cubic-bezier(.16,1,.3,1) forwards}.ea-prep-snapshot-footer{border-top:1px solid var(--ea-border);padding-top:24px}.ea-prep-snapshot-footer p{margin:0;font-size:.95rem;color:var(--ea-text-secondary);font-style:italic}@keyframes slideFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes drawLine{to{stroke-dashoffset:0}}@keyframes fadeDot{to{opacity:1}}@keyframes fillBar{to{transform:scaleX(1)}}@media (prefers-reduced-motion: reduce){.ea-prep-snapshot-improvement,.ea-snapshot-trend-line,.ea-snapshot-trend-dot,.ea-snapshot-category,.ea-snapshot-cat-fill{animation:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important}}@media (max-width: 768px){.ea-prep-snapshot{padding:24px;gap:28px}.ea-prep-snapshot-hero{flex-direction:column;align-items:flex-start}}.ea-filter-tabs{display:flex;gap:8px;background:#f1f5f9;padding:6px;border-radius:12px;border:1px solid #e2e8f0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;max-width:100%}.ea-filter-tabs::-webkit-scrollbar{display:none}@media (max-width: 900px){.ea-grid-2,.ea-grid-3,.ea-grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}}@media (max-width: 768px){.ea-grid-2,.ea-grid-3,.ea-grid-4{grid-template-columns:1fr}}@media (max-width: 1199px){.ea-desktop-nav,.ea-btn-hide-mobile{display:none!important}.ea-hamburger-btn{display:block}}@media (max-width: 767px){.ea-header-actions .ea-btn{display:none!important}}@media (max-width: 480px){.ea-user-chip span:not(.ea-avatar-bubble){display:none}.ea-user-chip{padding:4px;border-radius:50%}}.ea-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;max-width:1000px;margin:0 auto;width:100%;box-sizing:border-box}.ea-contact-grid>*{min-width:0;width:100%;box-sizing:border-box}.ea-contact-form-control{width:100%;padding:10px 14px;border-radius:8px;border:1px solid #cbd5e1;font-size:.94rem;font-family:inherit;outline:none;box-sizing:border-box;max-width:100%;transition:border-color .2s ease,box-shadow .2s ease}.ea-contact-form-control:focus{border-color:var(--ea-orange, #FD6A01);box-shadow:0 0 0 3px #fd6a0126}.ea-contact-submit-btn{margin-top:8px;min-height:44px;box-sizing:border-box}@media (max-width: 900px){.ea-contact-grid{gap:24px}}@media (max-width: 768px){.ea-contact-grid{grid-template-columns:minmax(0,1fr);gap:20px}.ea-contact-submit-btn{width:100%}}@media (max-width: 480px){.ea-contact-grid .ea-card{padding:20px 16px}}.ea-pricing-section{padding:5rem 0;background-color:#f8fafc}.ea-pricing-header{text-align:center;max-width:800px;margin:0 auto 3rem}.ea-pricing-title{font-size:2.5rem;color:#0d2f69;font-weight:700;margin-bottom:1rem}.ea-pricing-subtitle{font-size:1.125rem;color:#475569;line-height:1.6}.ea-pricing-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem;max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 768px){.ea-pricing-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}}.ea-pricing-card{background:#fff;border:1px solid #E2E8F0;border-radius:12px;padding:2.5rem 2rem;display:flex;flex-direction:column;position:relative;transition:transform .2s ease,box-shadow .2s ease}.ea-pricing-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #0d2f691a}.ea-pricing-card.popular{border:2px solid #0D2F69;box-shadow:0 8px 16px -4px #0d2f691a}.ea-pricing-card.best-value{border:2px solid #FD6A01}.ea-pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#0d2f69;color:#fff;padding:.25rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;white-space:nowrap}.ea-pricing-card.best-value .ea-pricing-badge{background:#fd6a01}.ea-pricing-name{font-size:1.5rem;font-weight:700;color:#0d2f69;margin-bottom:.5rem;text-align:center}.ea-pricing-desc{color:#64748b;text-align:center;font-size:.95rem;margin-bottom:2rem;min-height:48px}.ea-pricing-price{text-align:center;margin-bottom:.5rem}.ea-pricing-currency{font-size:1.25rem;font-weight:600;color:#475569;vertical-align:top;margin-right:.25rem}.ea-pricing-amount{font-size:3.5rem;font-weight:800;color:#0d2f69;line-height:1}.ea-pricing-credits{text-align:center;color:#fd6a01;font-weight:700;font-size:1.125rem;margin-bottom:2.5rem;padding:.5rem;background:#fff2e8;border-radius:6px}.ea-pricing-features{list-style:none;padding:0;margin:0 0 2.5rem;flex-grow:1}.ea-pricing-feature{display:flex;align-items:flex-start;margin-bottom:1rem;color:#475569;font-size:.95rem}.ea-pricing-feature svg{color:#0d2f69;flex-shrink:0;margin-right:.75rem;margin-top:.125rem}.ea-pricing-action{margin-top:auto}.ea-pricing-btn{display:block;width:100%;text-align:center;padding:1rem;border-radius:8px;font-weight:600;font-size:1rem;transition:background .2s,color .2s,border-color .2s,box-shadow .2s;cursor:pointer;border:none}.ea-pricing-btn-primary{background:#0d2f69;color:#fff}.ea-pricing-btn-primary:hover:not(:disabled){background:#09204a;color:#fff}.ea-pricing-btn-outline{background:transparent;border:1px solid #0D2F69;color:#0d2f69}.ea-pricing-btn-outline:hover:not(:disabled){background:#f8fafc;color:#0d2f69;box-shadow:0 0 0 2px #0d2f691a,0 0 8px #0d2f6914}.ea-pricing-btn-orange{background:#fd6a01;color:#fff}.ea-pricing-btn-orange:hover:not(:disabled){background:#e56000;color:#fff}.ea-pricing-btn:disabled{opacity:.7;cursor:not-allowed}.ea-pricing-alert{max-width:1200px;margin:0 auto 2rem;padding:1rem 1.5rem;border-radius:8px;font-weight:500}.ea-pricing-alert.success{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.ea-pricing-alert.error{background-color:#fee2e2;color:#991b1b;border:1px solid #fecaca}.ea-credit-activation-info{max-width:1200px;margin:3rem auto 0;padding:1.5rem;background:#fff2e8;border:1px solid #FD6A01;border-radius:8px;text-align:center;color:#0d2f69}.ea-credit-activation-info .ea-credit-activation-header{margin-bottom:.5rem;color:#0d2f69}.ea-credit-activation-info p{margin:0;font-size:1.1rem}.ea-credit-activation-info strong{color:#fd6a01}.ea-pricing-refund-notice{max-width:1200px;margin:1.25rem auto 0;padding:1rem 1.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:.75rem;align-items:center;justify-content:space-between;transition:all .2s ease}@media (min-width: 640px){.ea-pricing-refund-notice{flex-direction:row;gap:1.5rem;padding:.9rem 1.75rem}}.ea-pricing-refund-text{display:flex;flex-direction:column;gap:.2rem;text-align:center}@media (min-width: 640px){.ea-pricing-refund-text{text-align:left}}.ea-pricing-refund-title{font-weight:700;font-size:.95rem;color:#0d2f69}.ea-pricing-refund-desc{font-size:.9rem;color:#64748b}.ea-pricing-refund-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:600;color:#0d2f69;text-decoration:none;padding:.45rem 1rem;border-radius:6px;border:1px solid #cbd5e1;background:#fff;transition:all .2s ease;white-space:nowrap}.ea-pricing-refund-link:hover{color:#fd6a01;border-color:#fd6a01;background:#fff8f5;transform:translateY(-1px)}.ea-payment-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0d2f69b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem 1rem;overscroll-behavior:contain}.ea-payment-modal{background:#fff;width:100%;max-width:820px;max-height:calc(100vh - 3rem);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #00000014;position:relative}.ea-payment-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #E2E8F0;background:#fff;flex-shrink:0;z-index:10}.ea-payment-modal-title{margin:0;padding:0;font-size:1.25rem;font-weight:700;color:#0d2f69;border-bottom:none;line-height:1.3}.ea-payment-modal-close{background:transparent;border:none;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-width:40px;min-height:40px;border-radius:8px;color:#64748b;cursor:pointer;transition:all .2s ease;padding:0;flex-shrink:0}.ea-payment-modal-close:hover{background:#f1f5f9;color:#0d2f69}.ea-payment-modal-close:focus-visible{outline:2px solid #FD6A01;outline-offset:2px}.ea-payment-modal-body{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;min-height:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ea-payment-modal-body::-webkit-scrollbar{width:6px}.ea-payment-modal-body::-webkit-scrollbar-track{background:#f8fafc}.ea-payment-modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.ea-payment-modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.ea-payment-modal-package{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#f8fafc;border-bottom:1px solid #E2E8F0}.pkg-left strong{display:block;color:#0d2f69;font-size:1.1rem}.pkg-left span{color:#64748b;font-size:.9rem}.pkg-right{font-weight:700;color:#0d2f69;font-size:1.1rem}.ea-payment-modal-form{padding:0;flex-grow:1}.ea-payment-error{background:#fee2e2;color:#991b1b;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;border:1px solid #fecaca}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#475569;font-size:.95rem}.form-group label .req{color:#e11d48}.form-group .helper-text{display:block;font-size:.85rem;color:#64748b;margin-top:.25rem}.form-group input[type=text],.form-group input[type=date],.form-group select{width:100%;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;color:#0f172a}.form-group input[type=text]:focus,.form-group input[type=date]:focus,.form-group select:focus{outline:none;border-color:#fd6a01;box-shadow:0 0 0 3px #fd6a011a}.form-group input.read-only-input{background:#f1f5f9;color:#64748b;cursor:not-allowed}.ea-file-upload{position:relative;border:2px dashed #cbd5e1;border-radius:6px;padding:2rem;text-align:center;background:#f8fafc;cursor:pointer;transition:all .2s}.ea-file-upload:hover{border-color:#fd6a01;background:#fff2e8}.ea-file-upload input[type=file]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.ea-file-upload span{color:#fd6a01;font-weight:600}.ea-receipt-preview{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc}.ea-receipt-preview img{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid #e2e8f0}.ea-receipt-details{flex-grow:1}.ea-receipt-details span{display:block;font-size:.9rem;color:#475569;margin-bottom:.25rem;font-weight:500;word-break:break-all}.ea-receipt-actions button{background:none;border:none;color:#e11d48;font-size:.85rem;font-weight:600;cursor:pointer;padding:0}.ea-receipt-actions button:hover{text-decoration:underline}.ea-credit-activation-info-modal{margin:0 1.5rem 1rem;padding:1rem;background:#fff2e8;border:1px solid #FD6A01;border-radius:6px;color:#0d2f69}.ea-credit-activation-info-modal strong{display:block;margin-bottom:.25rem;color:#fd6a01}.ea-credit-activation-info-modal p{margin:0;font-size:.9rem;line-height:1.4}.ea-payment-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;border-top:1px solid #E2E8F0;background:#f8fafc}.ea-btn-cancel{padding:.75rem 1.25rem;border:1px solid #cbd5e1;background:#fff;color:#475569;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.ea-btn-cancel:hover:not(:disabled){background:#f1f5f9;color:#475569}.ea-btn-submit{padding:.75rem 1.5rem;border:none;background:#fd6a01;color:#fff;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.ea-btn-submit:hover:not(:disabled){background:#e56000;color:#fff}.ea-btn-cancel:disabled,.ea-btn-submit:disabled{opacity:.6;cursor:not-allowed}.ea-payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:0 1.5rem 1.5rem}@media (max-width: 768px){.ea-payment-grid{grid-template-columns:1fr;gap:1.5rem}}.ea-payment-info-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem}.ea-payment-form-section{display:flex;flex-direction:column}.ea-payment-details-block h4{margin:0 0 .75rem;font-size:1rem;color:#0d2f69;border-bottom:2px solid #e2e8f0;padding-bottom:.25rem}.ea-bank-detail-row{margin-bottom:.75rem;font-size:.95rem}.ea-bank-detail-row:last-child{margin-bottom:0}.ea-bank-detail-label{display:block;font-size:.8rem;color:#64748b;font-weight:600;margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.02em}.ea-bank-detail-value{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-weight:600;color:#1e293b;word-break:break-all}.ea-copy-btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;background:#fff2e8;border:1px solid rgba(253,106,1,.45);color:#fd6a01;padding:.25rem .65rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease;white-space:nowrap;line-height:1.2;flex-shrink:0}.ea-copy-btn:hover{background:#ffe4d1;border-color:#fd6a01;color:#e56000}.ea-copy-btn:focus-visible{outline:2px solid #FD6A01;outline-offset:1px}.ea-copy-btn.copied{background:#dcfce7;color:#166534;border-color:#86efac}.ea-qr-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;display:flex;flex-direction:column;align-items:center;text-align:center}.ea-qr-container img{max-width:100%;height:auto;width:200px;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;margin-bottom:.75rem}.ea-qr-instruction{font-size:.85rem;color:#475569;margin:0}.ea-payment-instructions{margin:1.25rem 1.5rem;padding:.85rem 1rem;background:#e0f2fe;border-left:4px solid #0ea5e9;color:#0369a1;font-size:.95rem;border-radius:0 4px 4px 0}@media (min-width: 769px){.ea-payment-modal{width:820px;max-width:95%}}@media (max-width: 768px){.ea-payment-modal-overlay{padding:.5rem}.ea-payment-modal{max-height:calc(100vh - 1rem);border-radius:10px}.ea-payment-modal-header{padding:1rem 1.25rem}.ea-payment-modal-title{font-size:1.15rem}.ea-payment-modal-close{width:42px;height:42px;min-width:42px;min-height:42px}.ea-payment-instructions{margin:1rem 1rem 1.25rem}.ea-payment-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem 1rem}.ea-credit-activation-info-modal{margin:0 1rem 1rem}.ea-payment-modal-footer{padding:1rem;flex-direction:column-reverse;gap:.75rem}.ea-btn-cancel,.ea-btn-submit{width:100%;text-align:center}}.ea-refund-hero{background:linear-gradient(180deg,#f0f4fa,#fff);border-bottom:1px solid #e2e8f0;padding:3.5rem 0 3rem;text-align:center}.ea-refund-hero-content{max-width:780px;margin:0 auto}.ea-refund-hero-tag{display:inline-block;background:#0d2f6914;color:#0d2f69;font-size:.75rem;font-weight:700;letter-spacing:.08em;padding:.3rem .8rem;border-radius:9999px;margin-bottom:1rem}.ea-refund-hero-title{font-size:2.5rem;font-weight:800;color:#0d2f69;letter-spacing:-.02em;line-height:1.2;margin-bottom:1rem}.ea-refund-hero-subtitle{font-size:1.125rem;color:#475569;line-height:1.6;margin:0}.ea-refund-quickinfo-section{padding:2.5rem 0 1rem}.ea-refund-cards-grid{display:grid;grid-template-columns:1fr;gap:1.25rem}@media (min-width: 768px){.ea-refund-cards-grid{grid-template-columns:repeat(3,1fr)}}.ea-refund-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0d2f690a;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s ease,box-shadow .2s ease}.ea-refund-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0d2f6912}.ea-refund-card-icon{width:44px;height:44px;border-radius:10px;background:#f0f4fa;color:#0d2f69;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.ea-refund-card-title{font-size:1.1rem;font-weight:700;color:#0d2f69;margin:0 0 .5rem}.ea-refund-card-text{font-size:.925rem;color:#64748b;line-height:1.55;margin:0}.ea-section-kicker{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.1em;color:#fd6a01;margin-bottom:.5rem}.ea-refund-section-title{font-size:1.875rem;font-weight:700;color:#0d2f69;margin:0 0 .5rem}.ea-refund-section-subtitle{font-size:1rem;color:#64748b;margin:0}.ea-refund-policy-section{padding:3.5rem 0 2rem}.ea-refund-policy-header{text-align:center;max-width:680px;margin:0 auto 2.5rem}.ea-refund-policy-content{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.ea-policy-block{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;box-shadow:0 1px 3px #00000008}.ea-policy-heading{font-size:1.2rem;font-weight:700;color:#0d2f69;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.ea-policy-block p{font-size:.95rem;color:#334155;line-height:1.65;margin:0 0 .75rem}.ea-policy-block p:last-child{margin-bottom:0}.ea-policy-list{margin:.5rem 0 0;padding-left:1.25rem;color:#334155;font-size:.95rem;line-height:1.65}.ea-policy-list li{margin-bottom:.4rem}.ea-policy-note{margin-top:1rem;padding:.75rem 1rem;background:#f8fafc;border-left:3px solid #0D2F69;border-radius:4px;font-size:.85rem;color:#475569;line-height:1.5}.ea-policy-note strong{color:#0d2f69}.ea-refund-process-section{padding:3rem 0;background:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.ea-refund-process-header{text-align:center;max-width:680px;margin:0 auto 2.5rem}.ea-refund-steps-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}@media (min-width: 768px){.ea-refund-steps-grid{grid-template-columns:repeat(4,1fr)}}.ea-refund-step-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem 1.25rem;position:relative;display:flex;flex-direction:column}.ea-refund-step-badge{width:36px;height:36px;border-radius:8px;background:#0d2f69;color:#fff;font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.ea-refund-step-title{font-size:1.05rem;font-weight:700;color:#0d2f69;margin:0 0 .5rem}.ea-refund-step-desc{font-size:.875rem;color:#64748b;line-height:1.5;margin:0}.ea-refund-cta-banner{padding:2.5rem 0}.ea-refund-cta-box{background:#0d2f69;border-radius:16px;padding:2rem 2.5rem;display:flex;flex-direction:column;gap:1.5rem;align-items:center;justify-content:space-between;box-shadow:0 8px 24px #0d2f6926}@media (min-width: 768px){.ea-refund-cta-box{flex-direction:row;text-align:left}}.ea-refund-cta-text{text-align:center}@media (min-width: 768px){.ea-refund-cta-text{text-align:left}}.ea-refund-cta-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 .4rem}.ea-refund-cta-desc{font-size:1rem;color:#fffc;margin:0}.ea-refund-form-section{padding:2rem 0 3.5rem}.ea-refund-form-container{max-width:820px;margin:0 auto;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2.5rem;box-shadow:0 4px 20px #0d2f690f}@media (max-width: 640px){.ea-refund-form-container{padding:1.5rem;border-radius:12px}}.ea-refund-form-header{margin-bottom:2rem;text-align:center}.ea-refund-form-title{font-size:1.75rem;font-weight:700;color:#0d2f69;margin:0 0 .5rem}.ea-refund-form-subtitle{font-size:.95rem;color:#64748b;margin:0}.ea-refund-success-card{background:#ecfdf5;border:1px solid #10b981;border-radius:12px;padding:2.5rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.ea-refund-success-icon{width:64px;height:64px;border-radius:50%;background:#10b981;color:#fff;display:flex;align-items:center;justify-content:center}.ea-refund-success-title{font-size:1.35rem;font-weight:700;color:#065f46;margin:0}.ea-refund-ref-badge{background:#fff;border:1px solid #a7f3d0;padding:.5rem 1.25rem;border-radius:8px;font-size:1.1rem;color:#0d2f69}.ea-refund-ref-badge strong{color:#fd6a01;font-family:monospace}.ea-refund-success-desc{font-size:.95rem;color:#047857;max-width:540px;line-height:1.6;margin:0}.ea-refund-auth-prompt{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:3rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.ea-refund-auth-icon{width:56px;height:56px;border-radius:50%;background:#e2e8f0;color:#0d2f69;display:flex;align-items:center;justify-content:center}.ea-refund-auth-prompt h3{font-size:1.25rem;font-weight:700;color:#0d2f69;margin:0}.ea-refund-auth-prompt p{font-size:.95rem;color:#64748b;max-width:480px;margin:0;line-height:1.6}.ea-refund-form{display:flex;flex-direction:column;gap:2rem}.ea-form-group-section{border-top:1px solid #f1f5f9;padding-top:1.5rem}.ea-form-group-section:first-of-type{border-top:none;padding-top:0}.ea-form-group-title{font-size:1rem;font-weight:700;color:#0d2f69;margin:0 0 1rem}.ea-form-group-desc{font-size:.875rem;color:#64748b;margin:-.5rem 0 1rem;line-height:1.5}.ea-form-row{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 640px){.ea-form-row.two-col{grid-template-columns:1fr 1fr}.ea-form-row.three-col{grid-template-columns:repeat(2,1fr)}}@media (min-width: 768px){.ea-form-row.three-col{grid-template-columns:1fr 1fr 1fr 1fr}}.ea-form-field{display:flex;flex-direction:column;gap:.4rem}.ea-form-field label{font-size:.875rem;font-weight:600;color:#334155}.ea-form-field label .req{color:#ef4444}.ea-field-hint{font-size:.775rem;color:#94a3b8}.ea-input,.ea-select,.ea-textarea{width:100%;padding:.65rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.925rem;color:#0f172a;background:#fff;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.ea-input:focus,.ea-select:focus,.ea-textarea:focus{outline:none;border-color:#0d2f69;box-shadow:0 0 0 3px #0d2f691a}.ea-input.readonly{background:#f8fafc;color:#64748b;cursor:default}.ea-textarea{resize:vertical;min-height:90px}.ea-char-counter{text-align:right;font-size:.75rem;color:#94a3b8}.ea-verified-purchase-card{margin-top:.75rem;background:#f0f4fa;border:1px solid #d0ddec;border-radius:8px;padding:.85rem 1.25rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}@media (min-width: 640px){.ea-verified-purchase-card{grid-template-columns:repeat(4,1fr)}}.ea-purchase-detail-col{display:flex;flex-direction:column}.ea-purchase-detail-col .lbl{font-size:.75rem;font-weight:600;color:#64748b}.ea-purchase-detail-col .val{font-size:.9rem;font-weight:700;color:#0d2f69}.ea-purchase-detail-col .val.highlight{color:#fd6a01}.ea-file-dropzone{position:relative;border:2px dashed #cbd5e1;border-radius:10px;background:#f8fafc;padding:1.5rem 1rem;text-align:center;transition:border-color .2s ease,background .2s ease}.ea-file-dropzone:hover{border-color:#0d2f69;background:#f1f5f9}.ea-file-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer}.ea-file-dropzone-label{display:flex;flex-direction:column;align-items:center;gap:.4rem;color:#0d2f69;font-weight:600;font-size:.9rem;cursor:pointer}.ea-file-dropzone-label svg{color:#64748b}.ea-file-dropzone-label small{font-size:.775rem;font-weight:400;color:#94a3b8}.ea-file-preview-card{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.ea-preview-thumb{width:50px;height:50px;object-fit:cover;border-radius:6px;border:1px solid #cbd5e1}.ea-preview-meta{flex-grow:1;display:flex;flex-direction:column}.ea-preview-filename{font-size:.875rem;font-weight:600;color:#0d2f69;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ea-preview-size{font-size:.75rem;color:#64748b}.ea-btn-remove-file{background:transparent;border:1px solid #ef4444;color:#ef4444;font-size:.8rem;font-weight:600;padding:.3rem .6rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.ea-btn-remove-file:hover{background:#fef2f2}.ea-refund-alert{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500}.ea-refund-alert.error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.ea-form-submit-row{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}@media (min-width: 640px){.ea-form-submit-row{flex-direction:row;align-items:center;gap:1.5rem}}.ea-submit-note{font-size:.85rem;color:#64748b}.ea-btn-spinner-wrap{display:inline-flex;align-items:center;gap:.5rem}.ea-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:ea-spin .8s linear infinite}@keyframes ea-spin{to{transform:rotate(360deg)}}.ea-refund-history-section{padding:3rem 0;background:#f8fafc;border-top:1px solid #e2e8f0}.ea-refund-history-header{text-align:center;margin-bottom:2rem}.ea-refund-history-title{font-size:1.5rem;font-weight:700;color:#0d2f69;margin:0 0 .35rem}.ea-refund-history-subtitle{font-size:.95rem;color:#64748b;margin:0}.ea-refund-history-loading,.ea-refund-history-empty{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:2.5rem;text-align:center;color:#64748b;font-size:.95rem}.ea-refund-history-table-wrap{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;box-shadow:0 2px 8px #0d2f6908}.ea-refund-history-table{width:100%;border-collapse:collapse;font-size:.9rem;text-align:left}.ea-refund-history-table th,.ea-refund-history-table td{padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;vertical-align:middle}.ea-refund-history-table th{background:#f1f5f9;font-weight:700;color:#0d2f69;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.ea-refund-history-table tbody tr:last-child td{border-bottom:none}.ea-refund-notes-cell{max-width:250px;font-size:.85rem;color:#475569}.ea-refund-status-badge{display:inline-block;padding:.25rem .65rem;border-radius:6px;font-size:.775rem;font-weight:700;text-transform:capitalize}.ea-refund-status-badge.status-pending{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.ea-refund-status-badge.status-under_review{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.ea-refund-status-badge.status-approved{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.ea-refund-status-badge.status-rejected{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.ea-refund-support-section{padding:3rem 0}.ea-refund-support-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.25rem;align-items:center;justify-content:space-between}@media (min-width: 640px){.ea-refund-support-card{flex-direction:row}}.ea-refund-support-text h4{font-size:1.1rem;font-weight:700;color:#0d2f69;margin:0 0 .25rem}.ea-refund-support-text p{font-size:.9rem;color:#64748b;margin:0}.ea-refund-support-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.ea-btn-whatsapp{background:#25d366;color:#fff;border:none}.ea-btn-whatsapp:hover{background:#1ebe57;color:#fff}:root{--color-primary: #0D2F69;--color-primary-light: #1a4a8a;--color-primary-dark: #091f47;--color-accent: #FD6A01;--color-accent-light: #ff8a33;--color-accent-dark: #d45800;--color-bg: #f0f4f8;--color-surface: #ffffff;--color-surface-2: #f8fafc;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-text-primary: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-text-inverse: #ffffff;--color-success: #10b981;--color-success-bg: #d1fae5;--color-danger: #ef4444;--color-danger-bg: #fee2e2;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-info: #3b82f6;--color-info-bg: #dbeafe;--sidebar-width: 260px;--topbar-height: 64px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .1), 0 4px 12px rgba(0, 0, 0, .06);--shadow-xl: 0 20px 50px rgba(0, 0, 0, .12);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;overflow-x:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--color-bg);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:Outfit,sans-serif;font-weight:700;line-height:1.2;color:var(--color-text-primary)}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit}.admin-layout{display:flex;min-height:100vh}.admin-sidebar{width:var(--sidebar-width);background:var(--color-primary);position:fixed;top:0;left:0;height:100vh;display:flex;flex-direction:column;z-index:100;box-shadow:4px 0 20px #00000026}.sidebar-brand{padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:12px}.sidebar-brand-logo{height:70px;width:auto;flex-shrink:0;object-fit:contain}.sidebar-brand-text{display:flex;flex-direction:column}.sidebar-brand-name{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:800;color:#fff;letter-spacing:-.3px}.sidebar-brand-sub{font-size:.7rem;color:#ffffff80;font-weight:400;letter-spacing:.5px;text-transform:uppercase}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.sidebar-section-label{font-size:.65rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#ffffff59;padding:8px 12px 4px;margin-top:8px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-md);color:#ffffffb3;font-size:.9rem;font-weight:500;transition:all var(--transition-fast);margin-bottom:2px;cursor:pointer;border:none;background:none;width:100%;text-align:left;text-decoration:none}.sidebar-nav-item:hover{background:#ffffff1a;color:#fff}.sidebar-nav-item.active{background:var(--color-accent);color:#fff;box-shadow:0 4px 12px #fd6a0159}.sidebar-nav-item svg{width:18px;height:18px;flex-shrink:0}.sidebar-footer{padding:16px 12px;border-top:1px solid rgba(255,255,255,.1)}.admin-main{margin-left:var(--sidebar-width);flex:1;display:flex;flex-direction:column;min-height:100vh;min-width:0;max-width:100%;overflow-x:hidden;transition:margin-left var(--transition-base)}.admin-topbar{height:var(--topbar-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm);gap:12px}.topbar-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;border:none;background:transparent;border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;transition:background var(--transition-fast);flex-shrink:0;padding:0}.topbar-menu-btn svg{width:22px;height:22px}.topbar-menu-btn:hover{background:var(--color-surface-2)}.sidebar-close-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#ffffff1a;border-radius:var(--radius-md);color:#fffc;cursor:pointer;flex-shrink:0;margin-left:auto;transition:background var(--transition-fast)}.sidebar-close-btn svg{width:18px;height:18px}.sidebar-close-btn:hover{background:#fff3}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:99;animation:fadeIn .2s ease}.topbar-title{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;color:var(--color-text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.topbar-user{display:flex;align-items:center;gap:10px}.topbar-avatar{width:36px;height:36px;background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.85rem;flex-shrink:0}.topbar-username{font-size:.9rem;font-weight:600;color:var(--color-text-primary)}.admin-content{flex:1;padding:28px;min-width:0;max-width:100%}.user-layout{min-height:100vh;display:flex;flex-direction:column}.user-topbar{height:auto;min-height:var(--topbar-height);background:var(--color-surface);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 28px;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.user-topbar-brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.user-topbar-logo{height:65px;width:auto;object-fit:contain}.user-topbar-name{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:800;color:var(--color-text-primary)}.user-topbar-nav{display:flex;gap:4px;align-items:center;scrollbar-width:none}.user-topbar-nav::-webkit-scrollbar{display:none}.user-nav-link{padding:8px 14px;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;color:var(--color-text-secondary);background:transparent;transition:all .15s ease;text-decoration:none;white-space:nowrap;flex-shrink:0}.user-nav-link:hover{color:var(--color-primary);background:#0d2f690f}.user-nav-link.active{color:var(--color-primary);background:#0d2f691a;font-weight:500}.user-topbar-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.user-topbar-username{font-size:.875rem;color:var(--color-text-secondary);font-weight:500;white-space:nowrap}.user-logout-btn{background:var(--color-surface-2)!important;color:var(--color-text-primary)!important;border:1px solid var(--color-border)!important;min-height:36px}.user-content{flex:1;padding:28px;max-width:1200px;margin:0 auto;width:100%}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.card-header{padding:20px 24px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:12px}.card-title{font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:700;color:var(--color-text-primary)}.card-body{padding:24px}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:24px;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:20px;transition:transform var(--transition-base),box-shadow var(--transition-base)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{width:24px;height:24px}.stat-icon.primary{background:#0d2f691a;color:var(--color-primary)}.stat-icon.accent{background:#fd6a011a;color:var(--color-accent)}.stat-icon.warning{background:var(--color-warning-bg);color:var(--color-warning)}.stat-icon.info{background:var(--color-info-bg);color:var(--color-info)}.stat-value{font-family:Outfit,sans-serif;font-size:2rem;font-weight:800;color:var(--color-text-primary);line-height:1}.stat-label{font-size:.85rem;color:var(--color-text-secondary);margin-top:4px;font-weight:500}.quiz-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);display:flex;flex-direction:column}.quiz-card:hover:not(.locked){transform:translateY(-3px);box-shadow:var(--shadow-md)}.quiz-card.locked{opacity:.7}.quiz-card-header{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));padding:20px;color:#fff}.quiz-card-title{font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:700;margin-bottom:6px}.quiz-card-desc{font-size:.82rem;opacity:.75;line-height:1.4}.quiz-card-body{padding:18px 20px;flex:1}.quiz-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.quiz-meta-item{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--color-text-secondary)}.quiz-meta-item svg{width:14px;height:14px;color:var(--color-accent)}.quiz-card-footer{padding:14px 20px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;border:none;transition:all var(--transition-fast);cursor:pointer;white-space:nowrap;line-height:1}.btn svg{width:16px;height:16px}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-dark);box-shadow:0 4px 12px #fd6a014d}.btn-accent{background:var(--color-accent);color:#fff}.btn-accent:hover{background:var(--color-accent-dark);box-shadow:0 4px 12px #fd6a014d}.btn-secondary{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-secondary:hover{background:#0d2f690f}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #fca5a5}.btn-danger:hover{background:var(--color-danger);color:#fff}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.btn-sm{padding:6px 12px;font-size:.8rem}.btn-lg{padding:13px 28px;font-size:1rem}.btn-full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;line-height:1.4}.badge-success{background:var(--color-success-bg);color:#059669}.badge-danger{background:var(--color-danger-bg);color:#dc2626}.badge-warning{background:var(--color-warning-bg);color:#d97706}.badge-info{background:var(--color-info-bg);color:#2563eb}.badge-neutral{background:var(--color-border);color:var(--color-text-secondary)}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:.85rem;font-weight:600;color:var(--color-text-primary)}.form-input,.form-select,.form-textarea{padding:10px 14px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:.9rem;color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #fd6a0126}.form-textarea{resize:vertical;min-height:80px}.form-hint{font-size:.78rem;color:var(--color-text-muted)}.form-error{font-size:.78rem;color:var(--color-danger)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.table-wrapper,.table-container,.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);border:1px solid var(--color-border);scrollbar-width:auto;scrollbar-color:var(--color-primary) var(--color-surface-2)}.table-scroll-container{display:block;width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:auto;scrollbar-color:var(--color-primary) var(--color-surface-2)}.table-wrapper::-webkit-scrollbar,.table-container::-webkit-scrollbar,.table-responsive::-webkit-scrollbar,.table-scroll-container::-webkit-scrollbar{height:12px;width:12px}.table-wrapper::-webkit-scrollbar-track,.table-container::-webkit-scrollbar-track,.table-responsive::-webkit-scrollbar-track,.table-scroll-container::-webkit-scrollbar-track{background:var(--color-surface-2);border-radius:var(--radius-full);border:1px solid var(--color-border-light);box-shadow:inset 0 1px 3px #0000000f}.table-wrapper::-webkit-scrollbar-thumb,.table-container::-webkit-scrollbar-thumb,.table-responsive::-webkit-scrollbar-thumb,.table-scroll-container::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));border-radius:var(--radius-full);border:2px solid var(--color-surface-2);box-shadow:inset 0 0 0 1.5px var(--color-accent)}.table-wrapper::-webkit-scrollbar-thumb:hover,.table-container::-webkit-scrollbar-thumb:hover,.table-responsive::-webkit-scrollbar-thumb:hover,.table-scroll-container::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light));box-shadow:inset 0 0 0 1.5px var(--color-primary-light)}.table-wrapper::-webkit-scrollbar-thumb:active,.table-container::-webkit-scrollbar-thumb:active,.table-responsive::-webkit-scrollbar-thumb:active,.table-scroll-container::-webkit-scrollbar-thumb:active{background:linear-gradient(135deg,var(--color-accent-dark),var(--color-accent));box-shadow:inset 0 0 0 1.5px var(--color-primary-dark)}.card>.table-wrapper,.card>.table-container,.card>.table-responsive,.card>.table-scroll-container{border-radius:0;border:none}.table-wrapper table,.table-container table,.table-responsive table,.table-scroll-container table,table.data-table,table.admin-table{width:100%;min-width:max-content;border-collapse:collapse;font-size:.875rem}.table-wrapper thead,.table-container thead,.table-responsive thead,.table-scroll-container thead{background:var(--color-surface-2);position:sticky;top:0;z-index:10}.table-wrapper th,.table-container th,.table-responsive th,.table-scroll-container th{padding:12px 16px;text-align:left;font-size:.78rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--color-border);background:var(--color-surface-2);white-space:nowrap!important}.table-wrapper td,.table-container td,.table-responsive td,.table-scroll-container td{padding:14px 16px;border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);vertical-align:middle;white-space:nowrap!important}.col-assessment,.col-assessment-name,.col-quiz,.col-quiz-name{min-width:220px!important;max-width:320px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap!important}td:hover[title]{cursor:help}.col-classroom,.col-time,.col-date{min-width:180px!important}.col-email{min-width:250px!important}.col-student,.col-student-name{min-width:180px!important}.col-status{min-width:120px!important}.col-actions{min-width:300px!important}td:has(.badge),td:has(.status-badge),td:has(.btn),td:has(.btn-sm),.action-buttons,.flex.gap-2{white-space:nowrap!important}.btn,.btn-sm,.tm-menu-button{white-space:nowrap!important}.table-wrapper td.cell-wrap,.table-container td.cell-wrap,.table-responsive td.cell-wrap,.table-scroll-container td.cell-wrap{white-space:normal!important;word-break:break-word!important;min-width:280px!important;max-width:450px!important}tr:last-child td{border-bottom:none}tbody tr{transition:background var(--transition-fast)}tbody tr:hover td{background-color:var(--color-surface-2)}.status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;white-space:nowrap}.status-active{background:var(--color-success-bg);color:#059669}.status-inactive{background:var(--color-danger-bg);color:var(--color-danger)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}.modal{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;animation:slideUp .25s ease}.modal-lg{max-width:760px}.modal-xl{max-width:960px}.modal-header{padding:24px 28px 20px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700}.modal-close{width:32px;height:32px;border-radius:var(--radius-md);border:none;background:var(--color-surface-2);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.modal-close:hover{background:var(--color-danger-bg);color:var(--color-danger)}.modal-body{padding:24px 28px}.modal-footer{padding:16px 28px 24px;display:flex;gap:10px;justify-content:flex-end}.login-page{min-height:100vh;display:flex}.login-brand-panel{flex:1;background:linear-gradient(145deg,var(--color-primary-dark) 0%,var(--color-primary) 50%,var(--color-primary-light) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 48px;position:relative;overflow:hidden}.login-brand-panel:before{content:"";position:absolute;width:400px;height:400px;background:#fd6a011a;border-radius:50%;top:-100px;right:-100px}.login-brand-panel:after{content:"";position:absolute;width:300px;height:300px;background:#ffffff0a;border-radius:50%;bottom:-80px;left:-60px}.login-brand-content{position:relative;z-index:1;text-align:center;color:#fff}.login-brand-logo{width:auto;height:110px;object-fit:contain;margin:0 auto 24px}.login-brand-title{font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:800;margin-bottom:12px;letter-spacing:-.5px}.login-brand-subtitle{font-size:1rem;opacity:.75;line-height:1.6;max-width:320px}.login-features{margin-top:40px;display:flex;flex-direction:column;gap:14px;text-align:left}.login-feature{display:flex;align-items:center;gap:12px;color:#ffffffd9;font-size:.9rem}.login-feature-icon{width:32px;height:32px;background:#fd6a0133;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.login-form-panel{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 48px;background:var(--color-surface)}.login-form-header{text-align:center;margin-bottom:36px;width:100%}.login-form-title{font-family:Outfit,sans-serif;font-size:1.75rem;font-weight:800;color:var(--color-text-primary);margin-bottom:6px}.login-form-subtitle{font-size:.9rem;color:var(--color-text-secondary)}.login-form{width:100%;display:flex;flex-direction:column;gap:18px}.login-input-group{position:relative}.login-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);width:18px;height:18px}.login-input{padding:12px 14px 12px 48px!important;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:.95rem;width:100%;outline:none;transition:all var(--transition-fast);background:var(--color-surface-2)}.login-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #fd6a0126;background:var(--color-surface)}.password-input-shell{position:relative;display:flex;align-items:center;width:100%}.password-input-control{padding-right:46px!important}.password-input-shell.has-leading-icon .password-input-control{padding-left:48px!important}.password-input-leading-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;pointer-events:none;z-index:1}.password-input-leading-icon svg{width:18px;height:18px}.password-input-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;padding:0;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.password-input-toggle:hover{background:#fd6a011a;color:var(--color-accent)}.password-input-toggle:focus-visible{outline:2px solid rgba(253,106,1,.55);outline-offset:2px}.password-input-toggle svg{width:20px;height:20px}.login-error{background:var(--color-danger-bg);color:#dc2626;padding:10px 14px;border-radius:var(--radius-md);font-size:.85rem;border:1px solid #fca5a5}.login-footer-link{text-align:center;margin-top:20px;font-size:.85rem;color:var(--color-text-secondary)}.login-footer-link a{color:var(--color-accent);font-weight:600}.login-page-centered{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--color-primary-dark) 0%,var(--color-primary) 50%,var(--color-primary-light) 100%);padding:24px}.login-page-centered .login-card{position:relative;background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 25px 50px #00000026,0 0 0 1px #ffffff14;padding:40px 36px;width:100%;max-width:440px}.login-card-nav{position:absolute;top:16px;left:16px;z-index:10;display:flex;align-items:center}.login-card>.back-home-button{position:absolute;top:16px;left:16px;z-index:10}.back-home-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;min-height:32px;border-radius:50%;background-color:#0d2f69;color:#fff;border:none;box-shadow:0 1px 3px #0d2f692e;transition:background-color .18s ease,transform .18s ease,box-shadow .18s ease;text-decoration:none;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.back-home-button:hover{background-color:#174288;transform:scale(1.04);box-shadow:0 2px 6px #0d2f6947;color:#fff}.back-home-button:active{background-color:#0a234f;transform:scale(.98)}.back-home-button:focus-visible{outline:2px solid rgba(13,47,105,.45);outline-offset:2px}.back-home-button svg{width:16px;height:16px;stroke:#fff;display:block}.login-card-header{text-align:center;margin-bottom:28px}.login-card-logo{height:110px;width:auto;margin:0 auto 16px;display:block;border-radius:var(--radius-md);object-fit:contain}.login-card-title{font-family:Outfit,sans-serif;font-size:1.6rem;font-weight:800;color:var(--color-text-primary);margin-bottom:6px}.login-card-subtitle{font-size:.9rem;color:var(--color-text-secondary)}.auth-links-footer{margin-top:22px;width:100%}.auth-secondary-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;width:100%}.auth-secondary-link{font-size:.875rem;font-weight:500;color:#0d2f69;text-decoration:none;padding:4px 0;transition:color .18s ease}.auth-secondary-link:hover{color:#fd6a01;text-decoration:underline;text-underline-offset:3px}.auth-register-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .2s ease,background-color .2s ease}.auth-register-panel:hover{border-color:#cbd5e1;background-color:#f1f5f9}.auth-register-prompt{font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#64748b}.auth-register-link{font-size:.9375rem;font-weight:600;color:#0d2f69;text-decoration:none;display:inline-flex;align-items:center;gap:6px;padding:4px 6px;transition:color .18s ease}.auth-register-link:hover{color:#fd6a01}.login-card-wide{max-width:480px}.login-input.login-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px;cursor:pointer}.auth-status-card{text-align:center;padding:8px 12px 16px}.auth-status-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.auth-status-icon svg{width:32px;height:32px}.auth-status-icon.success{background:#ecfdf5;color:#10b981;border:1px solid #a7f3d0}.auth-status-icon.warning{background:#fffbeb;color:#f59e0b;border:1px solid #fde68a}.auth-status-icon.danger{background:#fef2f2;color:#ef4444;border:1px solid #fecaca}.auth-status-title{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:800;color:var(--color-text-primary);margin-bottom:10px}.auth-status-desc{font-size:.95rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:24px}.auth-status-actions{display:flex;flex-direction:column;gap:12px;align-items:center;width:100%}@media (max-width: 520px){.login-page-centered{padding:16px}.login-page-centered .login-card{padding:36px 20px 24px;max-width:100%;border-radius:var(--radius-md)}.login-card-nav{top:14px;left:14px}.login-card>.back-home-button{top:14px;left:14px}.back-home-button{width:30px;height:30px;min-width:30px;min-height:30px}.back-home-button svg{width:15px;height:15px}.login-card-title{font-size:1.3rem}}@media (max-width: 380px){.auth-secondary-actions{flex-direction:column;align-items:center;gap:8px;text-align:center}}.quiz-attempt-page{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.quiz-attempt-header{background:var(--color-primary);padding:16px 28px;display:flex;align-items:center;justify-content:space-between;color:#fff;box-shadow:0 2px 12px #0d2f694d}.quiz-attempt-title{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700}.quiz-timer{display:flex;align-items:center;gap:8px;background:#ffffff26;padding:8px 16px;border-radius:var(--radius-full);font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;transition:background var(--transition-base)}.quiz-timer.warning{background:#ef44444d;animation:pulse 1s infinite}.quiz-attempt-body{flex:1;display:flex;gap:24px;padding:24px 28px;max-width:1200px;margin:0 auto;width:100%}.quiz-question-panel{flex:1}.quiz-progress-bar{height:6px;background:var(--color-border);border-radius:var(--radius-full);margin-bottom:24px;overflow:hidden}.quiz-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-light));border-radius:var(--radius-full);transition:width var(--transition-base)}.quiz-question-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);padding:28px}.quiz-question-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.quiz-question-num{font-size:.8rem;font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.quiz-bookmark-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--color-border);padding:6px 12px;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.quiz-bookmark-btn:hover{background:var(--color-surface-hover);color:var(--color-text-primary)}.quiz-bookmark-btn.bookmarked{color:#eab308;border-color:#fef08a;background:#eab3080d}.quiz-bookmark-btn:disabled{opacity:.6;cursor:not-allowed}.quiz-question-text{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:24px;line-height:1.5;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.quiz-options{display:flex;flex-direction:column;gap:10px}.quiz-option{display:flex;align-items:center;gap:14px;padding:14px 18px;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.quiz-option:hover{border-color:var(--color-accent);background:#fd6a010a}.quiz-option.selected{border-color:var(--color-accent);background:#fd6a0114}.quiz-option-letter{width:32px;height:32px;border-radius:var(--radius-md);background:var(--color-surface-2);border:1.5px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0;transition:all var(--transition-fast)}.quiz-option.selected .quiz-option-letter{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.quiz-option-text{font-size:.95rem;color:var(--color-text-primary)}.quiz-nav-buttons{display:flex;justify-content:space-between;margin-top:20px}.quiz-sidebar{width:220px;flex-shrink:0}.quiz-sidebar-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:20px;position:sticky;top:24px}.quiz-sidebar-title{font-size:.8rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px}.quiz-question-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:16px}.quiz-q-btn{width:34px;height:34px;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:var(--color-surface-2);font-size:.78rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.quiz-q-btn.answered{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.quiz-q-btn.current{border-color:var(--color-primary);color:var(--color-primary);font-weight:700}.result-page{min-height:100vh;background:var(--color-bg);display:flex;align-items:center;justify-content:center;padding:40px 20px}.result-card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:48px;text-align:center;max-width:520px;width:100%;animation:slideUp .4s ease}.result-icon{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.result-icon.pass{background:var(--color-success-bg);color:var(--color-success)}.result-icon.fail{background:var(--color-danger-bg);color:var(--color-danger)}.result-icon svg{width:48px;height:48px}.result-status{font-family:Outfit,sans-serif;font-size:2rem;font-weight:800;margin-bottom:6px}.result-status.pass{color:var(--color-success)}.result-status.fail{color:var(--color-danger)}.result-score-display{font-family:Outfit,sans-serif;font-size:3.5rem;font-weight:800;color:var(--color-text-primary);line-height:1;margin:16px 0 4px}.result-score-label{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:28px}.result-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:32px}.result-stat{background:var(--color-surface-2);border-radius:var(--radius-md);padding:14px;border:1px solid var(--color-border)}.result-stat-value{font-family:Outfit,sans-serif;font-size:1.3rem;font-weight:700;color:var(--color-text-primary)}.result-stat-label{font-size:.75rem;color:var(--color-text-muted);margin-top:2px}.result-card.pass{border-top:5px solid var(--color-success)}.result-card.fail{border-top:5px solid var(--color-danger)}.result-header{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px}.result-quiz-title{font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:700;color:var(--color-text-primary)}.result-status-badge{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:800;padding:6px 20px;border-radius:var(--radius-full)}.result-status-badge.pass{background:var(--color-success-bg);color:#059669}.result-status-badge.fail{background:var(--color-danger-bg);color:#dc2626}.result-score-circle-wrap{display:flex;justify-content:center;margin-bottom:24px}.result-message{font-size:.95rem;color:var(--color-text-secondary);line-height:1.6;margin-bottom:28px;padding:14px 20px;background:var(--color-surface-2);border-radius:var(--radius-md);border:1px solid var(--color-border)}.result-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.section-label{font-size:.8rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.badge-primary{background:#0d2f691a;color:var(--color-primary)}.login-brand-logo,.sidebar-brand-logo,.user-topbar-logo{object-fit:contain;object-position:center;border-radius:var(--radius-sm);background-color:#fff;padding:4px}.login-brand-logo{height:110px;width:auto;margin:0 auto 20px;display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}.sidebar-brand-logo{height:70px;width:auto;flex-shrink:0;filter:drop-shadow(0 1px 4px rgba(0,0,0,.3))}.user-topbar-logo{height:65px;width:auto;filter:drop-shadow(0 1px 4px rgba(0,0,0,.15))}.search-bar{position:relative;max-width:320px}.search-bar svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--color-text-muted)}.search-input{padding:9px 14px 9px 38px;border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:.875rem;width:100%;outline:none;background:var(--color-surface);transition:all var(--transition-fast)}.search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #fd6a0126}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.empty-state svg{width:56px;height:56px;margin:0 auto 16px;opacity:.4}.empty-state-title{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.empty-state-desc{font-size:.85rem}.teacher-overview,.students-workflow{display:flex;flex-direction:column;gap:20px}.teacher-workflow-hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);color:#fff;border-radius:var(--radius-lg);padding:26px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 12px 30px #0d2f6938}.teacher-workflow-hero h2{color:#fff;font-size:1.55rem;margin:4px 0 6px}.teacher-workflow-hero p{color:#ffffffd1;font-size:.92rem;max-width:620px}.teacher-kicker{color:var(--color-accent-light)!important;font-size:.72rem!important;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.teacher-workflow-summary{min-width:220px;padding:16px 18px;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-md);background:#ffffff1f;display:flex;flex-direction:column;gap:4px}.teacher-workflow-summary span{font-size:.78rem;color:#ffffffb8}.teacher-workflow-summary strong{color:#fff;font-size:1rem}.teacher-workflow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.teacher-workflow-step{position:relative;display:grid;grid-template-columns:42px 1fr;grid-template-areas:"icon number" "icon title" "icon desc" "icon state";align-items:start;gap:4px 12px;width:100%;min-height:168px;padding:18px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-primary);text-align:left;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.teacher-workflow-step:hover{transform:translateY(-2px);border-color:#fd6a0173;box-shadow:var(--shadow-md)}.teacher-workflow-step.locked{background:var(--color-surface-2);color:var(--color-text-secondary)}.teacher-workflow-step.current{border-color:#fd6a0199;box-shadow:0 8px 24px #fd6a011f}.teacher-workflow-step.complete{border-color:#10b98159}.teacher-step-icon{grid-area:icon;width:42px;height:42px;border-radius:var(--radius-md);background:#0d2f6917;color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center}.teacher-workflow-step.current .teacher-step-icon{background:#fd6a011f;color:var(--color-accent)}.teacher-workflow-step.complete .teacher-step-icon{background:var(--color-success-bg);color:#059669}.teacher-step-icon svg{width:20px;height:20px}.teacher-step-number{grid-area:number;font-size:.72rem;font-weight:800;color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em}.teacher-step-title{grid-area:title;font-family:Outfit,sans-serif;font-weight:800;font-size:1rem;color:var(--color-text-primary)}.teacher-step-desc{grid-area:desc;font-size:.82rem;line-height:1.45;color:var(--color-text-secondary)}.teacher-step-state{grid-area:state;align-self:end;width:fit-content;margin-top:8px;padding:4px 10px;border-radius:var(--radius-full);font-size:.72rem;font-weight:700}.teacher-step-state.complete{background:var(--color-success-bg);color:#059669}.teacher-step-state.current{background:#fd6a011f;color:var(--color-accent-dark)}.teacher-step-state.locked{background:var(--color-border);color:var(--color-text-secondary)}.workflow-gate{max-width:760px;margin:28px auto;padding:28px;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:18px}.workflow-gate-icon{width:54px;height:54px;border-radius:var(--radius-md);background:#fd6a011f;color:var(--color-accent);display:inline-flex;align-items:center;justify-content:center}.workflow-gate-icon svg{width:24px;height:24px}.workflow-gate h2{font-size:1.2rem;margin-bottom:4px;color:var(--color-primary)}.workflow-gate p{color:var(--color-text-secondary);font-size:.92rem}.teacher-resource-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:5px solid var(--color-accent);border-radius:8px;box-shadow:var(--shadow-sm);padding:22px}.teacher-resource-main{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--color-border)}.teacher-resource-main h2{color:var(--color-primary);font-size:1.55rem;margin:4px 0 6px}.teacher-resource-main p{color:var(--color-text-secondary);font-size:.9rem;max-width:640px}.teacher-resource-badge{min-width:170px;padding:14px 16px;border-radius:8px;background:#0d2f690f;border:1px solid rgba(13,47,105,.12);text-align:right}.teacher-resource-badge span,.teacher-resource-stats span,.teacher-resource-limit span{color:var(--color-text-secondary);display:block;font-size:.78rem;font-weight:700}.teacher-resource-badge strong{color:var(--color-primary);display:block;font-size:1.35rem;margin-top:4px}.teacher-resource-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.teacher-resource-stats div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:13px}.teacher-resource-stats strong{color:var(--color-text-primary);display:block;font-size:1.05rem;margin-top:4px}.teacher-resource-limits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.teacher-resource-limit{border:1px solid var(--color-border);border-radius:8px;padding:13px}.teacher-resource-limit strong{color:var(--color-primary);display:block;font-size:.95rem;margin-top:4px}.teacher-resource-meter{height:7px;overflow:hidden;border-radius:999px;background:var(--color-surface-2);margin-top:10px}.teacher-resource-meter span{background:linear-gradient(90deg,var(--color-primary),var(--color-accent));display:block;height:100%;min-width:0}.teacher-section-header{align-items:flex-start}.invite-workflow{gap:18px}.invite-hero,.invite-control-card,.invite-assessment-summary,.invite-action-card,.invite-metrics-card,.invite-result-card,.invite-table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm)}.invite-hero{align-items:center;border-left:5px solid var(--color-accent);display:flex;justify-content:space-between;gap:20px;padding:24px 28px}.invite-hero h2{color:var(--color-primary);font-size:1.45rem;margin:4px 0 6px}.invite-hero p{color:var(--color-text-secondary);font-size:.92rem;margin:0}.invite-hero-status{background:#0d2f690f;border:1px solid rgba(13,47,105,.12);border-radius:8px;min-width:230px;padding:14px 16px}.invite-hero-status span,.invite-summary-grid span,.invite-progress-grid span,.invite-metrics-card span,.invite-control-card p,.invite-card-header p{color:var(--color-text-secondary);font-size:.82rem}.invite-hero-status strong{color:var(--color-primary);display:block;font-size:1rem;margin-top:4px}.invite-selection-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.invite-control-card{display:grid;gap:12px;grid-template-columns:44px 1fr;padding:18px}.invite-control-card .form-select{grid-column:1 / -1}.invite-control-number{align-items:center;background:#fd6a011f;border-radius:8px;color:var(--color-accent);display:flex;font-weight:800;height:44px;justify-content:center;width:44px}.invite-control-card h3,.invite-card-header h3{color:var(--color-primary);font-size:1rem;margin:0 0 4px}.invite-control-card p,.invite-card-header p{margin:0}.invite-assessment-summary{border-left:4px solid var(--color-primary);grid-column:1 / -1;padding:20px}.invite-summary-header,.invite-card-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.invite-summary-header span:first-child{color:var(--color-accent);display:block;font-size:.76rem;font-weight:800;text-transform:uppercase}.invite-summary-header h3{color:var(--color-primary);font-size:1.25rem;margin:4px 0 0}.invite-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:16px}.invite-summary-grid div,.invite-progress-grid div,.invite-metrics-card div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:12px}.invite-summary-grid strong,.invite-progress-grid strong,.invite-metrics-card strong{color:var(--color-primary);display:block;font-size:1rem;margin-top:4px}.invite-progress-grid,.invite-metrics-card{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px}.invite-action-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.invite-action-card,.invite-result-card,.invite-table-card{padding:18px}.invite-form{display:grid;gap:14px;margin-top:16px}.invite-file-field{display:grid;gap:8px}.invite-result-card .table-responsive,.invite-table-card .table-responsive{margin-top:14px}.teacher-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.teacher-header-actions .form-select{min-width:220px}.checkbox-list{max-height:220px;overflow-y:auto;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.checkbox-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast)}.checkbox-item:last-child{border-bottom:none}.checkbox-item:hover{background:var(--color-surface)}.checkbox-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.checkbox-item-label{font-size:.875rem;color:var(--color-text-primary);font-weight:500}.alert{padding:12px 16px;border-radius:var(--radius-md);font-size:.875rem;display:flex;align-items:flex-start;gap:10px}.alert svg{width:18px;height:18px;flex-shrink:0;margin-top:1px}.alert-danger{background:var(--color-danger-bg);color:#dc2626;border:1px solid #fca5a5}.alert-warning{background:var(--color-warning-bg);color:#d97706;border:1px solid #fcd34d}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}.loading-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px;color:var(--color-text-secondary);font-size:.9rem}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--color-text-secondary)}.font-semibold{font-weight:600}.font-bold{font-weight:700}.w-full{width:100%}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media (max-width: 1024px){.login-brand-panel{display:none}.login-form-panel{width:100%;max-width:100%;padding:48px 40px}.form-grid-3{grid-template-columns:1fr 1fr}.teacher-workflow-steps,.teacher-resource-stats,.teacher-resource-limits,.invite-summary-grid,.invite-progress-grid,.invite-metrics-card{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(2,1fr)}.admin-content{padding:20px}}@media (max-width: 768px){.admin-sidebar{transform:translate(-100%);z-index:200;transition:transform var(--transition-base)}.admin-sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{display:block}.sidebar-close-btn,.topbar-menu-btn{display:flex}.admin-main{margin-left:0}.admin-topbar{padding:0 16px}.topbar-username{display:none}.admin-content{padding:16px}.teacher-workflow-hero{flex-direction:column;align-items:flex-start;padding:22px 20px}.teacher-workflow-summary{width:100%;min-width:0}.teacher-resource-main{flex-direction:column}.teacher-resource-badge{min-width:0;text-align:left;width:100%}.invite-hero,.invite-summary-header,.invite-card-header{align-items:flex-start;flex-direction:column}.invite-hero-status{min-width:0;width:100%}.invite-selection-grid,.invite-action-grid{grid-template-columns:1fr}.teacher-header-actions{width:100%;justify-content:stretch}.teacher-header-actions .form-select,.teacher-header-actions .btn{width:100%}.workflow-gate{grid-template-columns:1fr;text-align:left;margin:12px 0}.user-content{padding:16px}.user-topbar{padding:10px 16px}.form-grid,.form-grid-3{grid-template-columns:1fr}.grid-3{grid-template-columns:repeat(2,1fr)}.quiz-attempt-body{flex-direction:column;padding:16px;gap:16px}.quiz-sidebar{width:100%;order:-1}.quiz-attempt-header{padding:12px 16px}.quiz-attempt-title{font-size:1rem}.quiz-question-card{padding:20px 16px}.result-card{padding:28px 20px}.result-stats{grid-template-columns:repeat(2,1fr);gap:10px}.result-actions{flex-direction:column;align-items:stretch}.result-actions .btn{width:100%;justify-content:center;min-height:48px}.card-header{flex-wrap:wrap}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.table-wrapper,.table-container,.table-responsive{border-radius:var(--radius-md)}th{padding:10px 12px}td{padding:11px 12px}.modal-overlay{padding:12px}.modal-header{padding:18px 20px 16px}.modal-body{padding:16px 20px}.modal-footer{padding:12px 20px 20px;flex-wrap:wrap}.modal-footer .btn{flex:1;min-height:44px}}@media (max-width: 640px){.grid-4,.grid-3,.grid-2,.teacher-workflow-steps{grid-template-columns:1fr}.teacher-workflow-step{min-height:0}.teacher-resource-stats,.teacher-resource-limits,.invite-summary-grid,.invite-progress-grid,.invite-metrics-card{grid-template-columns:1fr}.invite-hero,.invite-control-card,.invite-assessment-summary,.invite-action-card,.invite-result-card,.invite-table-card{padding:16px}.quiz-grid{grid-template-columns:1fr}.result-stats{grid-template-columns:repeat(2,1fr);margin-bottom:20px}.result-score-display{font-size:2.5rem}.login-form-panel{padding:32px 24px}.login-page-centered .login-card{padding:24px 16px}.login-card-title{font-size:1.3rem}.user-topbar{flex-wrap:wrap;gap:6px;padding:10px 12px}.user-topbar-brand{flex:1}.user-topbar-nav{order:3;width:100%;border-top:1px solid var(--color-border);padding-top:6px;gap:2px}.user-nav-link{padding:6px 10px;font-size:.82rem}.user-topbar-username-text{display:none}.user-topbar-right{gap:6px}.topbar-title{font-size:1rem}.btn{min-height:44px}.btn-sm{min-height:36px}.stat-card{padding:16px;gap:14px}.stat-value{font-size:1.6rem}.quiz-card-footer{flex-wrap:wrap;gap:8px}.quiz-card-footer .btn{flex:1;min-width:120px}.card-body{padding:16px}.card-header{padding:14px 16px}.empty-state{padding:40px 16px}.quiz-timer{font-size:.95rem;padding:6px 12px}.result-quiz-title{font-size:1rem}}.page-container{max-width:1200px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-title{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.page-subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:4px 0 0}.action-buttons{display:flex;align-items:center;gap:4px}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;border-top:1px solid var(--color-border)}.pagination-info{font-size:.875rem;color:var(--color-text-secondary)}.info-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--color-border-light)}.info-row:last-child{border-bottom:none}.info-label{font-size:.875rem;color:var(--color-text-secondary);font-weight:500}.info-value{font-size:.875rem;color:var(--color-text-primary)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;gap:12px;color:var(--color-text-secondary);font-size:.9rem}.spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 16px;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;margin-bottom:16px}.alert-error{background:var(--color-danger-bg);color:#dc2626;border:1px solid #fca5a5}.alert-success{background:var(--color-success-bg);color:#059669;border:1px solid #6ee7b7}.badge-error{background:var(--color-danger-bg);color:#dc2626}.btn-danger-ghost{background:transparent;color:var(--color-danger)}.btn-danger-ghost:hover{background:var(--color-danger-bg);color:#dc2626}.font-medium{font-weight:600}.text-secondary{color:var(--color-text-secondary)}.assessment-welcome{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 60%,#2563eb 100%);color:#fff;border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 4px 20px #0d2f6940;position:relative;overflow:hidden}.assessment-welcome:before{content:"";position:absolute;top:-40%;right:-5%;width:260px;height:260px;background:#ffffff0d;border-radius:50%;pointer-events:none}.assessment-welcome:after{content:"";position:absolute;bottom:-50%;right:10%;width:180px;height:180px;background:#ffffff0a;border-radius:50%;pointer-events:none}.assessment-welcome-text h1{font-family:Outfit,sans-serif;font-size:1.65rem;font-weight:800;margin-bottom:4px;line-height:1.2}.assessment-welcome-text p{font-size:.92rem;opacity:.85;line-height:1.5}.assessment-welcome-next{background:#ffffff1f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);padding:16px 22px;min-width:220px;flex-shrink:0;text-align:center;position:relative;z-index:1}.assessment-welcome-next-label{font-size:.72rem;text-transform:uppercase;letter-spacing:1px;opacity:.7;margin-bottom:6px;font-weight:600}.assessment-welcome-next-title{font-family:Outfit,sans-serif;font-weight:700;font-size:.95rem;margin-bottom:8px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.assessment-welcome-next-countdown{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:1.35rem;font-weight:700;letter-spacing:1px;color:var(--color-accent-light)}.assessment-section-header{display:flex;align-items:center;gap:12px;margin-bottom:18px;margin-top:8px}.assessment-section-header h2{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700;color:var(--color-text-primary);white-space:nowrap}.assessment-section-header:after{content:"";flex:1;height:1px;background:var(--color-border)}.assessment-section-count{background:var(--color-primary);color:#fff;font-size:.72rem;font-weight:700;padding:2px 9px;border-radius:var(--radius-full);line-height:1.5}.assessment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px;margin-bottom:32px}.assessment-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);display:flex;flex-direction:column;border-left:4px solid var(--color-border)}.assessment-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.assessment-card.status-live{border-left-color:var(--color-success)}.assessment-card.status-upcoming{border-left-color:var(--color-info)}.assessment-card.status-submitted{border-left-color:var(--color-primary)}.assessment-card.status-missed{border-left-color:var(--color-warning);opacity:.8}.assessment-card.status-locked{border-left-color:var(--color-danger);opacity:.7}.assessment-card-header{padding:18px 20px 14px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.assessment-card-title{font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:700;color:var(--color-text-primary);line-height:1.3;flex:1;min-width:0}.assessment-card-classroom{font-size:.8rem;color:var(--color-text-secondary);margin-top:3px}.assessment-type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:.7rem;font-weight:600;letter-spacing:.3px;white-space:nowrap;flex-shrink:0;background:#0d2f6914;color:var(--color-primary)}.assessment-status{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:var(--radius-full);font-size:.73rem;font-weight:700;letter-spacing:.3px;white-space:nowrap}.assessment-status-live{background:var(--color-success-bg);color:#059669;animation:pulse-live 2s infinite}.assessment-status-upcoming{background:var(--color-info-bg);color:#2563eb}.assessment-status-submitted{background:#0d2f6914;color:var(--color-primary)}.assessment-status-missed{background:var(--color-warning-bg);color:#d97706}.assessment-status-locked{background:var(--color-danger-bg);color:#dc2626}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.7}}.live-dot{width:7px;height:7px;border-radius:50%;background:#059669;display:inline-block;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.5}}.assessment-card-details{padding:0 20px 16px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.assessment-detail-item{display:flex;align-items:center;gap:7px}.assessment-detail-icon{width:30px;height:30px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-surface-2)}.assessment-detail-icon svg{width:14px;height:14px;color:var(--color-accent)}.assessment-detail-label{font-size:.68rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.3px;font-weight:600;line-height:1.2}.assessment-detail-value{font-size:.84rem;font-weight:700;color:var(--color-text-primary);line-height:1.2}.assessment-window{padding:0 20px 16px}.assessment-window-inner{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 16px;display:flex;align-items:center;gap:12px}.assessment-window-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:#fd6a011a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.assessment-window-icon svg{width:16px;height:16px;color:var(--color-accent)}.assessment-window-label{font-size:.72rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.assessment-window-date{font-size:.88rem;font-weight:600;color:var(--color-text-primary)}.assessment-window-time{font-size:.82rem;color:var(--color-text-secondary);font-weight:500}.assessment-countdown{padding:0 20px 16px}.assessment-countdown-inner{background:linear-gradient(135deg,#3b82f60f,#3b82f605);border:1px solid rgba(59,130,246,.15);border-radius:var(--radius-md);padding:14px 16px;text-align:center}.assessment-countdown-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted);font-weight:600;margin-bottom:4px}.assessment-countdown-timer{font-family:JetBrains Mono,Fira Code,Courier New,monospace;font-size:1.5rem;font-weight:700;color:var(--color-info);letter-spacing:2px}.assessment-attempt-window{padding-top:0}.assessment-attempt-window .assessment-countdown-inner{background:linear-gradient(135deg,#f59e0b1a,#f59e0b08);border:1px solid rgba(245,158,11,.28)}.assessment-attempt-window .assessment-countdown-label{color:#b45309}.assessment-attempt-window .assessment-countdown-timer{color:#d97706}.assessment-live-banner{padding:0 20px 16px}.assessment-live-banner-inner{background:linear-gradient(135deg,#10b98114,#10b98105);border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);padding:14px 16px;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px}.assessment-live-text{font-size:.88rem;font-weight:700;color:#059669}.assessment-card-action{padding:14px 20px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.assessment-action-info{font-size:.78rem;color:var(--color-text-muted);font-weight:500}.assessment-action-info strong{color:var(--color-text-secondary);font-weight:600}.btn-assessment-start{background:linear-gradient(135deg,var(--color-success),#059669);color:#fff;padding:10px 22px;font-weight:700;box-shadow:0 4px 12px #10b9814d}.btn-assessment-start:hover{box-shadow:0 6px 18px #10b98166;transform:translateY(-1px)}.assessment-empty-state{text-align:center;padding:80px 40px;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.assessment-empty-icon{width:80px;height:80px;margin:0 auto 20px;background:var(--color-surface-2);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.assessment-empty-icon svg{width:36px;height:36px;color:var(--color-text-muted)}.assessment-empty-title{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700;color:var(--color-text-primary);margin-bottom:8px}.assessment-empty-desc{font-size:.88rem;color:var(--color-text-secondary);max-width:380px;margin:0 auto;line-height:1.6}@media (max-width: 768px){.assessment-welcome{flex-direction:column;align-items:flex-start;padding:22px 20px;gap:16px}.assessment-welcome-next{width:100%;min-width:unset}.assessment-welcome-next-title{max-width:100%}.assessment-welcome-text h1{font-size:1.35rem}.assessment-grid{grid-template-columns:1fr}.assessment-card-details{grid-template-columns:1fr 1fr}.assessment-card-action{flex-direction:column;gap:8px}.assessment-card-action .btn{width:100%}}@media (max-width: 480px){.assessment-welcome{padding:18px 16px}.assessment-welcome-text h1{font-size:1.15rem}.assessment-card-details{grid-template-columns:1fr}.assessment-card-header{flex-direction:column;gap:8px}.assessment-countdown-timer{font-size:1.2rem}}.auth-status-icon,.review-error-icon,.quiz-attempt-error-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#0d2f6914;color:var(--color-primary)}.auth-status-icon svg,.review-error-icon svg,.quiz-attempt-error-icon svg{width:34px;height:34px}.auth-status-icon.success{background:#0d2f6914;color:var(--color-primary)}.auth-status-icon.danger,.review-error-icon{background:var(--color-danger-bg);color:var(--color-danger)}.assessment-welcome{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);border-left:5px solid var(--color-primary);border-radius:8px;box-shadow:var(--shadow-sm)}.assessment-welcome:before,.assessment-welcome:after{display:none}.assessment-welcome-text h1{color:var(--color-primary)}.assessment-welcome-text p{color:var(--color-text-secondary);opacity:1}.assessment-welcome-next{background:var(--color-surface-2);border-color:var(--color-border);border-radius:8px;color:var(--color-text-primary);-webkit-backdrop-filter:none;backdrop-filter:none}.assessment-welcome-next-label{color:var(--color-primary);opacity:1}.assessment-welcome-next-countdown{color:var(--color-accent)}.assessment-countdown-inner,.assessment-live-banner-inner{background:var(--color-surface-2);border-color:var(--color-border);border-radius:8px}.assessment-countdown-timer{color:var(--color-primary);letter-spacing:0}.btn-assessment-start{background:var(--color-primary);color:#fff;box-shadow:0 6px 16px #0d2f6938}.btn-assessment-start:hover{background:var(--color-primary-light);box-shadow:0 8px 20px #0d2f6940}.student-results-section{margin-bottom:28px}.student-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.student-result-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);padding:18px}.student-result-card-header,.student-result-score-row,.teacher-review-header,.tm-table-header,.tm-profile-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-result-card-header h3{font-size:1rem;font-weight:800;color:var(--color-primary);margin:0 0 4px}.student-result-card-header p,.student-result-summary p{color:var(--color-text-secondary);font-size:.82rem;margin:0}.student-result-score-row{justify-content:flex-start;margin:18px 0}.student-result-ring{width:88px;height:88px;border-radius:50%;background:radial-gradient(circle at center,var(--color-surface) 58%,transparent 59%),conic-gradient(var(--color-accent) var(--score),rgba(13,47,105,.12) 0);display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-result-ring span{color:var(--color-primary);font-weight:800}.student-result-summary strong{display:block;color:var(--color-text-primary);font-size:1.25rem}.student-result-summary span,.student-result-stats span,.tm-stat-card span,.tm-mini-stats span{display:block;color:var(--color-text-muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.student-result-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.student-result-stats div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:10px}.student-result-stats strong{color:var(--color-primary);font-size:1rem}.student-result-bar,.tm-percent{height:8px;background:#0d2f691a;border-radius:8px;overflow:hidden}.student-result-bar{margin-top:16px}.student-result-bar span,.tm-percent span{display:block;height:100%;background:var(--color-accent)}.invite-assessment-note{border:1px solid rgba(13,47,105,.12);background:var(--color-surface-2);border-radius:8px;padding:12px 14px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.invite-assessment-note strong{color:var(--color-primary)}.invite-assessment-note span{color:var(--color-text-secondary);font-size:.86rem}.teacher-review-panel{margin-top:18px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);padding:18px}.teacher-review-header h3{margin:0 0 4px;color:var(--color-primary)}.teacher-review-header p{margin:0;color:var(--color-text-secondary)}.teacher-review-list{display:grid;gap:12px;margin-top:16px}.teacher-review-question{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-danger);border-radius:8px;padding:14px}.teacher-review-question.correct{border-left-color:var(--color-success)}.teacher-review-question-title{display:flex;gap:10px;align-items:flex-start;color:var(--color-text-primary)}.teacher-review-question-title span{color:var(--color-accent);font-weight:800}.teacher-review-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.teacher-review-options div{background:var(--color-surface-2);border-radius:8px;padding:10px}.teacher-review-options span{display:block;color:var(--color-text-muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.teacher-management-page,.tm-details{display:flex;flex-direction:column;gap:20px}.tm-hero{background:var(--color-surface);border:1px solid var(--color-border);border-left:5px solid var(--color-accent);border-radius:8px;padding:24px 28px;box-shadow:var(--shadow-sm)}.tm-hero h2{color:var(--color-primary);font-size:1.5rem;margin:4px 0 6px}.tm-hero p{color:var(--color-text-secondary);max-width:760px}.tm-kicker{color:var(--color-accent);font-size:.78rem;font-weight:800;margin:0;text-transform:uppercase}.tm-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.tm-stat-card,.tm-panel,.tm-profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm)}.tm-stat-card{padding:16px}.tm-stat-card strong{display:block;color:var(--color-primary);font-size:1.55rem;margin-top:4px}.tm-row-active{background:var(--color-surface-2)}.tm-menu-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-primary);border-radius:8px;padding:7px 10px;font-weight:700;cursor:pointer}.tm-menu-button svg{width:16px;height:16px}.tm-profile-card{justify-content:flex-start;padding:22px}.tm-profile-card h2{color:var(--color-primary);margin:2px 0 4px}.tm-profile-card p{color:var(--color-text-secondary);margin:0}.tm-avatar{width:62px;height:62px;border-radius:8px;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800}.tm-profile-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.tm-resource-panel{border-left:5px solid var(--color-accent)}.tm-resource-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}.tm-resource-heading h3{margin-bottom:4px}.tm-resource-heading p,.tm-resource-heading span{color:var(--color-text-secondary);font-size:.86rem}.tm-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tm-resource-tile{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:14px}.tm-resource-tile span{color:var(--color-text-secondary);display:block;font-size:.78rem;font-weight:800;margin-bottom:6px}.tm-resource-tile strong{color:var(--color-primary);display:block;font-size:1.08rem}.tm-resource-tile small{color:var(--color-text-secondary);display:block;font-size:.78rem;margin-top:6px}.tm-resource-credit{background:#0d2f690d;border-color:#0d2f6921}.tm-resource-form{align-items:end;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:grid;grid-template-columns:1.25fr 1.1fr minmax(120px,.7fr) minmax(120px,.7fr) 1.6fr auto;gap:12px;margin-top:16px;padding:14px}.tm-resource-form .form-group{margin:0}.tm-resource-reason{min-width:200px}.tm-resource-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:16px}.tm-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tm-panel{padding:18px}.tm-panel h3{color:var(--color-primary);font-size:1rem;margin:0 0 14px}.tm-panel h4{color:var(--color-text-primary);font-size:.88rem;margin:16px 0 10px}.tm-mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tm-mini-stats div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:12px}.tm-mini-stats strong{color:var(--color-primary);font-size:1.2rem}.tm-distribution-row{display:grid;grid-template-columns:120px 1fr 44px;align-items:center;gap:10px;margin-bottom:8px;color:var(--color-text-secondary);font-size:.84rem}.tm-list{display:grid;gap:10px}.tm-list-item{border:1px solid var(--color-border);border-radius:8px;padding:12px;background:var(--color-surface-2)}.tm-list-item strong,.tm-list-item span{display:block}.tm-list-item span{color:var(--color-text-secondary);font-size:.82rem;margin-top:4px}@media (max-width: 900px){.tm-detail-grid,.tm-resource-history,.teacher-review-options{grid-template-columns:1fr}.tm-resource-grid,.tm-resource-form{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-resource-form .btn{width:100%}.student-result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.student-result-card-header,.student-result-score-row,.teacher-review-header,.tm-table-header,.tm-profile-card{align-items:flex-start;flex-direction:column}.tm-mini-stats{grid-template-columns:1fr}.tm-resource-heading{flex-direction:column}.tm-resource-grid,.tm-resource-form{grid-template-columns:1fr}.tm-resource-reason{min-width:0}}.learning-page{display:flex;flex-direction:column;gap:20px}.learning-hero{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-left:5px solid var(--color-accent);border-radius:8px;box-shadow:var(--shadow-sm);display:flex;gap:24px;justify-content:space-between;padding:24px 28px}.learning-hero h1{color:var(--color-primary);font-size:1.7rem;margin:4px 0 8px}.learning-hero p{color:var(--color-text-secondary);margin:0;max-width:720px}.learning-kicker{color:var(--color-accent)!important;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.learning-practice-box{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;display:grid;flex:0 0 270px;gap:10px;padding:14px}.learning-practice-box label{color:var(--color-text-secondary);font-size:.78rem;font-weight:800;text-transform:uppercase}.learning-practice-box div{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(72px,1fr) auto}.learning-practice-box input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-weight:700;min-height:38px;padding:8px 10px;width:100%}.learning-practice-box span{color:var(--color-text-secondary);font-size:.86rem}.learning-filters{display:grid;gap:12px;grid-template-columns:minmax(220px,1.4fr) repeat(4,minmax(150px,1fr));padding:16px}.learning-empty{color:var(--color-text-secondary);font-weight:700;padding:28px;text-align:center}.learning-card-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.learning-question-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:14px;min-width:0;padding:18px}.learning-question-card.mastered{border-color:#10b98152}.learning-card-header,.learning-card-footer{align-items:center;color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:.8rem;font-weight:700;gap:8px;justify-content:space-between}.learning-card-header span{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px;color:var(--color-primary);padding:4px 9px}.learning-question-card h3{color:var(--color-text-primary);font-size:.98rem;line-height:1.45;margin:0;overflow-wrap:anywhere}.learning-options{display:grid;gap:8px}.learning-options div{align-items:flex-start;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);display:grid;gap:10px;grid-template-columns:28px 1fr;padding:10px 12px}.learning-options div.correct{background:#10b98114;border-color:#10b98157;color:#047857}.learning-options div.incorrect{background:#ef444412;border-color:#ef444447;color:#b91c1c}.learning-options strong{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;display:inline-flex;font-size:.76rem;height:26px;justify-content:center;width:26px}.learning-options span{min-width:0;overflow-wrap:anywhere}.learning-card-footer{border-top:1px solid var(--color-border);margin-top:auto;padding-top:12px}.learning-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.learning-pagination span{color:var(--color-text-secondary);font-size:.88rem;font-weight:700}.learning-stats,.report-summary-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.learning-stats div,.report-summary-grid div{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);padding:16px}.learning-stats span,.report-summary-grid span,.mistake-meta span,.subject-report-stats span,.subject-area-row span{color:var(--color-text-secondary);display:block;font-size:.78rem;font-weight:800;text-transform:uppercase}.learning-stats strong,.report-summary-grid strong{color:var(--color-primary);display:block;font-size:1.45rem;margin-top:4px}.mistake-meta{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.mistake-meta div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:10px}.mistake-meta strong,.subject-report-stats strong,.subject-area-row strong{color:var(--color-text-primary);display:block;font-size:.95rem;margin-top:4px;overflow-wrap:anywhere}.report-chart-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.report-panel,.subject-report-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);padding:18px}.report-panel h2{color:var(--color-primary);font-size:1rem;margin:0 0 14px}.report-bar-row{align-items:center;color:var(--color-text-secondary);display:grid;font-size:.84rem;gap:10px;grid-template-columns:minmax(96px,.8fr) minmax(120px,1fr) 48px;margin-bottom:10px}.report-bar-row div{background:var(--color-surface-2);border-radius:999px;height:9px;overflow:hidden}.report-bar-row i{background:var(--color-primary);border-radius:inherit;display:block;height:100%}.report-bar-row i.accent{background:var(--color-accent)}.report-bar-row strong{color:var(--color-text-primary);text-align:right}.subject-report-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.subject-report-card{display:grid;gap:14px}.subject-report-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.subject-report-header h2{color:var(--color-primary);font-size:1.05rem;margin:0 0 4px}.subject-report-header p{color:var(--color-text-secondary);font-size:.86rem;margin:0}.subject-accuracy{align-items:center;background:#fd6a011a;border:1px solid rgba(253,106,1,.25);border-radius:8px;color:var(--color-accent);display:inline-flex;flex:0 0 auto;font-weight:800;min-height:42px;padding:8px 10px}.report-sparkline{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;height:58px;overflow:visible;padding:8px;width:100%}.report-sparkline path{fill:none;stroke:var(--color-primary);stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.subject-report-stats{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.subject-report-stats div,.subject-area-row div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:10px}.subject-area-row{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.review-bookmark-btn{margin-left:auto}@media (max-width: 1100px){.user-topbar-nav{flex:1 1 100%;justify-content:flex-start;order:3;overflow-x:auto;overflow-y:hidden;padding-top:4px;padding-bottom:4px;-webkit-overflow-scrolling:touch}.learning-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){.learning-hero,.subject-report-header{align-items:stretch;flex-direction:column}.learning-practice-box{flex-basis:auto;width:100%}.learning-filters,.report-chart-grid,.subject-area-row,.mistake-meta,.subject-report-stats,.report-bar-row{grid-template-columns:1fr}.report-bar-row strong{text-align:left}}.teacher-analytics-shell{display:grid;gap:18px}.analytics-hero,.analytics-panel,.analytics-kpi-card,.student-snapshot-card,.podium-card,.quiz-analytics-card,.teacher-results-modal,.teacher-quiz-detail-modal{background:#fff;border:1px solid rgba(31,78,140,.11);border-radius:8px;box-shadow:0 12px 30px #1f4e8c14}.analytics-hero{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:24px}.analytics-hero h2,.analytics-panel h3,.podium-card strong,.quiz-analytics-card h3,.teacher-results-modal-header h2{color:var(--color-primary);margin:0}.analytics-hero p,.analytics-panel-header span,.student-snapshot-card span,.quiz-analytics-card p,.teacher-results-modal-header span,.muted-cell{color:var(--color-text-secondary)}.analytics-export-group,.teacher-results-header-actions,.teacher-results-toolbar,.analytics-table-toolbar,.analytics-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.analytics-tabs{background:#fff;border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 22px #1f4e8c0f;display:flex;gap:6px;overflow-x:auto;padding:8px}.analytics-tabs button{background:transparent;border:0;border-radius:8px;color:var(--color-text-secondary);cursor:pointer;font-weight:700;padding:10px 14px;white-space:nowrap}.analytics-tabs button.active{background:#1f4e8c1a;color:var(--color-primary)}.analytics-kpi-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}.analytics-kpi-card{min-height:112px;padding:18px}.analytics-kpi-card span{color:var(--color-text-secondary);display:block;font-size:.82rem;font-weight:700;margin-bottom:10px;text-transform:uppercase}.analytics-kpi-card strong{color:var(--color-primary);display:block;font-size:1.55rem;line-height:1.2;overflow-wrap:anywhere}.analytics-grid{display:grid;gap:18px}.analytics-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-panel{padding:20px;min-width:0}.analytics-panel.wide{grid-column:1 / -1}.analytics-panel-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.analytics-chart-frame{width:100%}.analytics-line-chart{display:block;min-height:190px;width:100%}.analytics-grid-line{stroke:#1f4e8c1f;stroke-width:1}.analytics-axis-label{fill:var(--color-text-secondary);font-size:10px}.analytics-chart-legend,.analytics-donut-legend{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.analytics-chart-legend span,.analytics-donut-legend span{align-items:center;color:var(--color-text-secondary);display:inline-flex;font-size:.82rem;gap:6px}.analytics-chart-legend i,.analytics-donut-legend i{border-radius:999px;display:inline-block;height:8px;width:8px}.analytics-bar-list{display:grid;gap:12px}.analytics-bar-row{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(120px,1fr) minmax(120px,2fr) 56px}.analytics-bar-row span,.time-list span{color:var(--color-text-primary);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-bar-row div,.analytics-progress-meter{background:#1f4e8c1a;border-radius:999px;height:10px;overflow:hidden}.analytics-bar-row i,.analytics-progress-meter i{background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:inherit;display:block;height:100%}.analytics-bar-row strong{color:var(--color-primary);text-align:right}.analytics-donut-wrap{align-items:center;display:grid;gap:18px;grid-template-columns:150px 1fr}.analytics-donut{align-items:center;border-radius:50%;display:flex;height:150px;justify-content:center;position:relative;width:150px}.analytics-donut:after{background:#fff;border-radius:50%;content:"";height:92px;position:absolute;width:92px}.analytics-donut span{color:var(--color-primary);font-size:1.35rem;font-weight:800;position:relative;z-index:1}.student-snapshot-grid,.podium-grid,.quiz-analytics-grid,.quiz-trend-grid{display:grid;gap:14px}.student-snapshot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.student-snapshot-card{display:grid;gap:10px;padding:16px}.student-snapshot-card strong{color:var(--color-primary);display:block}.student-snapshot-card b{color:var(--color-accent);font-size:1.35rem}.analytics-status-pill{border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:800;padding:5px 9px;width:fit-content}.analytics-status-strong{background:#16a34a1f;color:#15803d}.analytics-status-average{background:#f59e0b26;color:#b45309}.analytics-status-risk{background:#dc26261c;color:#b91c1c}.analytics-status-muted{background:#64748b1f;color:#475569}.analytics-alert-panel{align-items:flex-start;background:linear-gradient(90deg,#1f4e8c14,#f973161a);border:1px solid rgba(249,115,22,.25);border-radius:8px;display:grid;gap:16px;grid-template-columns:1fr 2fr;padding:18px}.analytics-alert-panel h3{color:var(--color-primary);margin:0 0 6px}.analytics-alert-panel p{color:var(--color-text-secondary);margin:0}.analytics-alert-list{display:grid;gap:8px}.analytics-alert-list span{background:#fff;border:1px solid rgba(31,78,140,.1);border-radius:8px;color:var(--color-text-primary);font-weight:700;padding:9px 12px}.podium-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.podium-card{border-top:4px solid var(--color-primary);padding:20px}.podium-card.rank-1{border-top-color:var(--color-accent)}.podium-card span,.podium-card small{color:var(--color-text-secondary)}.podium-card p{color:var(--color-primary);font-weight:800;margin:10px 0 4px}.analytics-table-toolbar .form-input,.analytics-table-toolbar .form-select,.teacher-results-toolbar .form-input,.teacher-results-toolbar .form-select{max-width:240px}.quiz-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-analytics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quiz-analytics-card{cursor:pointer;padding:18px;text-align:left;transition:transform .18s ease,box-shadow .18s ease}.quiz-analytics-card:hover{box-shadow:0 16px 36px #1f4e8c1f;transform:translateY(-2px)}.quiz-card-metrics,.invite-summary-grid{display:grid}.quiz-card-metrics{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.quiz-card-metrics div{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:10px}.quiz-card-metrics span{color:var(--color-text-secondary);display:block;font-size:.76rem;margin-bottom:4px}.quiz-card-metrics strong{color:var(--color-primary)}.topic-mastery-list,.recommendation-list,.time-list{display:grid;gap:12px}.topic-mastery-row{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(160px,1fr) minmax(160px,2fr) 64px}.topic-mastery-row span,.topic-mastery-row strong{font-weight:800}.topic-mastery-row.strong strong{color:#15803d}.topic-mastery-row.average strong{color:#b45309}.topic-mastery-row.weak strong{color:#b91c1c}.analytics-heatmap{overflow-x:auto}.heatmap-header,.heatmap-row{display:grid;gap:8px;grid-template-columns:160px repeat(7,minmax(72px,1fr));min-width:760px}.heatmap-header{color:var(--color-text-secondary);font-size:.78rem;font-weight:800;margin-bottom:8px;text-transform:uppercase}.heatmap-row{align-items:center;margin-bottom:8px}.heatmap-row span{color:var(--color-primary);font-weight:800}.heatmap-row i{border-radius:8px;color:#fff;display:block;font-style:normal;font-weight:800;padding:9px 6px;text-align:center}.heatmap-strong{background:#16a34a}.heatmap-average{background:#f59e0b}.heatmap-weak{background:#dc2626}.heatmap-empty{background:#94a3b8}.recommendation-list p,.time-list p{align-items:center;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;display:flex;gap:12px;justify-content:space-between;margin:0;padding:12px 14px}.time-list strong{color:var(--color-accent)}.teacher-modal-backdrop{align-items:center;background:#0f172a85;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:1200}.teacher-results-modal{display:flex;flex-direction:column;max-height:92vh;overflow:hidden;width:min(1480px,100%)}.teacher-quiz-detail-modal{max-height:88vh;overflow:auto;padding:22px;width:min(960px,100%)}.teacher-results-modal-header{align-items:flex-start;border-bottom:1px solid var(--color-border);display:flex;gap:14px;justify-content:space-between;padding:22px 24px}.teacher-results-stat-grid{display:grid;gap:12px;grid-template-columns:repeat(6,minmax(0,1fr));padding:16px 24px 0}.teacher-results-toolbar{border-bottom:1px solid var(--color-border);padding:16px 24px}.teacher-results-body{display:grid;flex:1;gap:18px;grid-template-columns:minmax(0,1.55fr) minmax(360px,.85fr);min-height:0;overflow:hidden;padding:18px 24px 24px}.teacher-results-table-wrap,.teacher-result-detail-panel{min-height:0;overflow:auto}.teacher-result-detail-panel{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;padding:16px}.empty-state.compact{color:var(--color-text-secondary);padding:20px;text-align:center}@media (max-width: 1180px){.analytics-kpi-grid,.student-snapshot-grid,.quiz-analytics-grid,.teacher-results-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-results-body{grid-template-columns:1fr;overflow:auto}}@media (max-width: 760px){.analytics-hero,.teacher-results-modal-header,.analytics-alert-panel{grid-template-columns:1fr}.analytics-hero,.teacher-results-modal-header{align-items:stretch;flex-direction:column}.analytics-grid.two-columns,.analytics-kpi-grid,.student-snapshot-grid,.podium-grid,.quiz-trend-grid,.quiz-analytics-grid,.teacher-results-stat-grid,.analytics-bar-row,.topic-mastery-row{grid-template-columns:1fr}.analytics-donut-wrap{grid-template-columns:1fr;justify-items:center}.teacher-modal-backdrop{padding:10px}}.ud-hero{background:linear-gradient(135deg,var(--color-primary) 0%,#1a4a8a 50%,var(--color-primary-dark) 100%);border-radius:var(--radius-lg);padding:32px 36px;margin-bottom:28px;color:#fff;position:relative;overflow:hidden;box-shadow:0 8px 32px #0d2f6959}.ud-hero:before{content:"";position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(253,106,1,.12) 0%,transparent 70%);pointer-events:none}.ud-hero:after{content:"";position:absolute;bottom:-40%;left:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%);pointer-events:none}.ud-hero-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.ud-hero-text h1{font-family:Outfit,sans-serif;font-size:1.85rem;font-weight:800;color:#fff;margin-bottom:6px;line-height:1.2}.ud-hero-text p{font-size:.95rem;color:#ffffffbf;line-height:1.5}.ud-hero-stats{display:flex;gap:20px;flex-wrap:wrap}.ud-hero-stat{background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);padding:14px 20px;min-width:110px;text-align:center}.ud-hero-stat-value{font-family:Outfit,sans-serif;font-size:1.6rem;font-weight:800;color:#fff;line-height:1;margin-bottom:4px}.ud-hero-stat-label{font-size:.72rem;color:#ffffffa6;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.ud-prep-teaser{background:linear-gradient(135deg,#0d2f690d,#fd6a010d);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:16px 24px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all var(--transition-fast)}.ud-prep-teaser:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.ud-prep-teaser-content{display:flex;align-items:center;gap:16px}.ud-prep-teaser-icon{background:var(--color-surface);color:var(--color-primary);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000000d}.ud-prep-teaser-icon svg{width:24px;height:24px}.ud-prep-teaser-text h3{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.ud-prep-teaser-text p{font-size:.85rem;color:var(--color-text-secondary);margin:0}.ud-prep-teaser-action span{font-size:.9rem;font-weight:600;color:var(--color-accent)}@media (max-width: 640px){.ud-prep-teaser{flex-direction:column;align-items:flex-start;gap:16px}}.quiz-q-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.95rem;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);position:relative}.quiz-q-btn.q-bookmarked:after{content:"";position:absolute;top:-4px;right:-4px;width:10px;height:10px;background:var(--color-surface);border:2px solid #eab308;border-radius:50%;z-index:1}.ud-progress-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:20px}.ud-progress-header h2{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.ud-progress-header p{font-size:.85rem;color:var(--color-text-secondary);margin:0}.ud-progress-body{display:flex;flex-direction:column;gap:20px}.ud-progress-comparison{display:flex;align-items:center;gap:24px}.ud-progress-col{display:flex;flex-direction:column;gap:4px}.ud-progress-col .ud-progress-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;font-weight:600;color:var(--color-text-secondary)}.ud-progress-col .ud-progress-value{font-size:2rem;font-weight:800;font-family:Outfit,sans-serif;color:var(--color-text-primary);line-height:1}.ud-progress-arrow{color:var(--color-text-muted);display:flex;align-items:center;justify-content:center}.ud-progress-arrow svg{width:24px;height:24px}.ud-progress-details{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--color-border)}.ud-progress-change{display:flex;align-items:baseline;gap:8px}.ud-change-amount{font-size:1.25rem;font-weight:700;font-family:Outfit,sans-serif}.ud-change-text{font-size:.85rem;color:var(--color-text-secondary)}.ud-progress-message{font-size:.95rem;font-weight:500;color:var(--color-text-primary)}.ud-progress-context{font-size:.8rem;color:var(--color-text-muted)}.ud-progress-active.ud-change-positive{border-left:4px solid #10b981}.ud-progress-active.ud-change-positive .ud-change-amount{color:#10b981}.ud-progress-active.ud-change-negative{border-left:4px solid var(--color-accent)}.ud-progress-active.ud-change-negative .ud-change-amount{color:var(--color-accent)}.ud-progress-active.ud-change-neutral{border-left:4px solid var(--color-text-muted)}.ud-progress-active.ud-change-neutral .ud-change-amount{color:var(--color-text-secondary)}.ud-progress-first,.ud-progress-empty{border-left:4px solid var(--color-primary-light)}.ud-progress-current{display:flex;flex-direction:column;gap:4px}.ud-progress-current .ud-progress-value{font-size:2.5rem;font-weight:800;font-family:Outfit,sans-serif;color:var(--color-primary);line-height:1}.ud-progress-current .ud-progress-label{font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}@media (min-width: 768px){.ud-progress-body{flex-direction:row;align-items:center;gap:48px}.ud-progress-details{padding-top:0;border-top:none;padding-left:48px;border-left:1px solid var(--color-border);flex:1}}.ud-tabs{display:flex;gap:4px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:5px;margin-bottom:24px;box-shadow:var(--shadow-sm);overflow-x:auto}.ud-tab{padding:10px 20px;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:flex;align-items:center;gap:8px}.ud-tab:hover{color:var(--color-primary);background:#0d2f690a}.ud-tab.active{color:#fff;background:var(--color-primary);box-shadow:0 2px 8px #0d2f694d}.ud-tab-badge{background:#fd6a0126;color:var(--color-accent);font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:var(--radius-full);line-height:1.4}.ud-tab.active .ud-tab-badge{background:#fff3;color:#fff}.ud-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.ud-kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 22px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm);transition:transform var(--transition-base),box-shadow var(--transition-base);cursor:default}.ud-kpi-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.ud-kpi-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.ud-kpi-icon svg{width:22px;height:22px}.ud-kpi-icon.blue{background:#0d2f691a;color:var(--color-primary)}.ud-kpi-icon.orange{background:#fd6a011a;color:var(--color-accent)}.ud-kpi-icon.green{background:var(--color-success-bg);color:var(--color-success)}.ud-kpi-icon.purple{background:#7c3aed1a;color:#7c3aed}.ud-kpi-value{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:800;line-height:1;color:var(--color-text-primary)}.ud-kpi-label{font-size:.8rem;color:var(--color-text-secondary);margin-top:3px;font-weight:500}.ud-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.ud-section-title{font-family:Outfit,sans-serif;font-size:1.15rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.ud-section-count{background:#0d2f6914;color:var(--color-primary);font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:var(--radius-full)}.ud-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}.ud-content-grid.full{grid-template-columns:1fr}@media (max-width: 900px){.ud-content-grid{grid-template-columns:1fr}}.ud-timeline{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-sm)}.ud-timeline-item{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--color-border-light);position:relative}.ud-timeline-item:last-child{border-bottom:none}.ud-timeline-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0}.ud-timeline-dot.practice{background:var(--color-accent);box-shadow:0 0 0 3px #fd6a0126}.ud-timeline-dot.assessment{background:var(--color-primary);box-shadow:0 0 0 3px #0d2f6926}.ud-timeline-content{flex:1;min-width:0}.ud-timeline-title{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin-bottom:2px}.ud-timeline-desc{font-size:.8rem;color:var(--color-text-secondary)}.ud-timeline-time{font-size:.72rem;color:var(--color-text-muted);margin-top:4px}.ud-timeline-empty{text-align:center;padding:32px 16px;color:var(--color-text-muted);font-size:.875rem}.ud-quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.ud-quick-action{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.82rem;font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.ud-quick-action:hover{border-color:var(--color-primary);color:var(--color-primary);background:#0d2f6908;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.ud-quick-action svg{width:16px;height:16px}.ud-next-assessment{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.ud-next-assessment:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--color-primary);border-radius:4px 0 0 4px}.ud-next-assessment-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-primary);margin-bottom:8px}.ud-next-assessment-name{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.ud-next-assessment-classroom{font-size:.82rem;color:var(--color-text-secondary);margin-bottom:12px}.ud-next-assessment-meta{display:flex;gap:16px;flex-wrap:wrap}.ud-next-assessment-meta-item{font-size:.8rem;color:var(--color-text-secondary);display:flex;align-items:center;gap:5px}.ud-next-assessment-meta-item svg{width:14px;height:14px;color:var(--color-accent)}.ud-classrooms{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-sm)}.ud-classroom-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-border-light)}.ud-classroom-item:last-child{border-bottom:none}.ud-classroom-avatar{width:36px;height:36px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.82rem;flex-shrink:0}.ud-classroom-info{flex:1;min-width:0}.ud-classroom-name{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}.ud-classroom-teacher{font-size:.78rem;color:var(--color-text-secondary)}.ud-empty-state{text-align:center;padding:48px 24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.ud-empty-icon{width:64px;height:64px;margin:0 auto 16px;background:var(--color-surface-2);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted)}.ud-empty-icon svg{width:28px;height:28px}.ud-empty-title{font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:700;margin-bottom:6px}.ud-empty-desc{font-size:.875rem;color:var(--color-text-secondary);max-width:360px;margin:0 auto;line-height:1.5}@media (max-width: 768px){.ud-hero{padding:24px 20px}.ud-hero-content{flex-direction:column;align-items:flex-start}.ud-hero-text h1{font-size:1.4rem}.ud-hero-stats{width:100%}.ud-hero-stat{flex:1;min-width:80px}.ud-tabs{padding:4px}.ud-tab{padding:8px 14px;font-size:.8rem}.ud-kpi-grid{grid-template-columns:repeat(2,1fr)}.ud-quick-actions{flex-direction:column}.ud-quick-action{justify-content:center}}@media (max-width: 480px){.ud-kpi-grid{grid-template-columns:1fr}.ud-hero-stat{min-width:0;padding:10px 14px}.ud-hero-stat-value{font-size:1.3rem}}.compact-teacher-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #eaeaea;cursor:pointer;transition:background .2s}.compact-teacher-card:hover{background:#f1f3f5}.teacher-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;background-color:var(--primary-color, #1a73e8);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0}.teacher-avatar img{width:100%;height:100%;object-fit:cover}.teacher-info-compact{flex-grow:1;min-width:0}.teacher-name{font-weight:600;font-size:14px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-title{font-size:12px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.view-profile-btn{font-size:12px;color:var(--primary-color, #1a73e8);font-weight:500;white-space:nowrap}.table-responsive,.table-wrapper,.table-container,.table-scroll-container{overflow-x:auto!important;-webkit-overflow-scrolling:touch;width:100%}.table-responsive table,.table-wrapper table,.table-container table,.table-scroll-container table,table.data-table,table.admin-table{width:100%;min-width:max-content!important}.table-wrapper th,.table-container th,.table-responsive th,.table-scroll-container th,.table-wrapper td,.table-container td,.table-responsive td,.table-scroll-container td{white-space:nowrap}.table-responsive,.table-wrapper,.table-container,.table-scroll-container,.analytics-tabs,.analytics-heatmap,.sidebar-nav,.teacher-results-table-wrap,.teacher-quiz-detail-modal,.teacher-results-body,.tm-resource-form,.invite-progress-grid,.invite-metrics-card{scrollbar-width:thin;scrollbar-color:var(--color-primary) rgba(13,47,105,.08)}.table-responsive::-webkit-scrollbar,.table-wrapper::-webkit-scrollbar,.table-container::-webkit-scrollbar,.table-scroll-container::-webkit-scrollbar,.analytics-tabs::-webkit-scrollbar,.analytics-heatmap::-webkit-scrollbar,.sidebar-nav::-webkit-scrollbar,.teacher-results-table-wrap::-webkit-scrollbar,.teacher-quiz-detail-modal::-webkit-scrollbar,.teacher-results-body::-webkit-scrollbar,.tm-resource-form::-webkit-scrollbar,.invite-progress-grid::-webkit-scrollbar,.invite-metrics-card::-webkit-scrollbar{height:6px;width:6px}.table-responsive::-webkit-scrollbar-track,.table-wrapper::-webkit-scrollbar-track,.table-container::-webkit-scrollbar-track,.table-scroll-container::-webkit-scrollbar-track,.analytics-tabs::-webkit-scrollbar-track,.analytics-heatmap::-webkit-scrollbar-track,.sidebar-nav::-webkit-scrollbar-track,.teacher-results-table-wrap::-webkit-scrollbar-track,.teacher-quiz-detail-modal::-webkit-scrollbar-track,.teacher-results-body::-webkit-scrollbar-track,.tm-resource-form::-webkit-scrollbar-track,.invite-progress-grid::-webkit-scrollbar-track,.invite-metrics-card::-webkit-scrollbar-track{background:#0d2f690d;border-radius:999px}.table-responsive::-webkit-scrollbar-thumb,.table-wrapper::-webkit-scrollbar-thumb,.table-container::-webkit-scrollbar-thumb,.table-scroll-container::-webkit-scrollbar-thumb,.analytics-tabs::-webkit-scrollbar-thumb,.analytics-heatmap::-webkit-scrollbar-thumb,.sidebar-nav::-webkit-scrollbar-thumb,.teacher-results-table-wrap::-webkit-scrollbar-thumb,.teacher-quiz-detail-modal::-webkit-scrollbar-thumb,.teacher-results-body::-webkit-scrollbar-thumb,.tm-resource-form::-webkit-scrollbar-thumb,.invite-progress-grid::-webkit-scrollbar-thumb,.invite-metrics-card::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));border-radius:999px}.card,.stat-card,.teacher-workflow-step,.analytics-panel,.invite-hero,.invite-control-card,.invite-action-card,.invite-result-card,.invite-table-card,.tm-profile-card,.tm-resource-card{min-width:0!important;max-width:100%}.analytics-alert-panel,.teacher-resource-main h2,.teacher-resource-badge strong,.assessment-card-title,.empty-state,.assessment-empty-state,.ud-empty-state{word-break:break-word;overflow-wrap:break-word}.admin-topbar{flex-wrap:nowrap!important;min-height:72px;height:auto!important;align-items:center;justify-content:space-between;padding:0 24px;background:var(--color-surface);box-shadow:0 4px 12px #00000008;border-bottom:1px solid var(--color-border)}.topbar-left{display:flex;align-items:center;gap:16px;min-width:0;flex:1}.topbar-titles{display:flex;flex-direction:column;justify-content:center;min-width:0}.topbar-title{font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:800;color:var(--color-text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-subtitle{font-size:.8rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-user{display:flex;align-items:center;gap:16px;flex-shrink:0}.topbar-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;box-shadow:0 2px 8px #0d2f6926;border:2px solid white}.admin-topbar .back-home-button{position:static!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0}@media (max-width: 1199px){.admin-content{padding:20px}.form-grid,.form-grid-3,.tm-resource-form,.grid-4,.analytics-kpi-grid,.student-snapshot-grid,.invite-summary-grid,.invite-progress-grid,.invite-metrics-card,.teacher-resource-stats,.teacher-resource-limits,.teacher-workflow-steps,.grid-3,.quiz-analytics-grid,.teacher-results-stat-grid,.podium-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.analytics-grid.two-columns,.teacher-results-body{grid-template-columns:1fr}}@media (max-width: 767px){.admin-topbar{padding:0 16px;gap:8px;flex-direction:row;align-items:center}.topbar-left{gap:8px;flex-wrap:nowrap}.topbar-titles{min-width:0}.topbar-title{font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-subtitle{display:none}.topbar-user{gap:8px;border-top:none;padding-top:0;margin-top:0;width:auto}.topbar-username{display:none!important}.topbar-menu-btn{display:flex!important}.admin-sidebar{transform:translate(-100%);width:var(--sidebar-width);position:fixed;z-index:1000}.admin-sidebar.sidebar-open{transform:translate(0);box-shadow:4px 0 40px #00000040}.admin-main{margin-left:0}.form-grid,.form-grid-3,.tm-resource-form,.invite-form{grid-template-columns:1fr!important}.form-input,.form-select,.form-textarea{width:100%;max-width:100%!important}.analytics-table-toolbar .form-input,.analytics-table-toolbar .form-select,.teacher-results-toolbar .form-input,.teacher-results-toolbar .form-select{max-width:100%!important;width:100%}.btn{min-height:44px;font-size:.9rem;padding:10px 16px;white-space:normal;text-align:center}.btn-sm{min-height:38px}.grid-2,.grid-3,.grid-4,.analytics-kpi-grid,.student-snapshot-grid,.invite-summary-grid,.invite-progress-grid,.invite-metrics-card,.teacher-resource-stats,.teacher-resource-limits,.teacher-workflow-steps,.quiz-analytics-grid,.teacher-results-stat-grid,.podium-grid{grid-template-columns:1fr!important}.card-header,.invite-hero,.invite-summary-header,.invite-card-header,.analytics-hero,.teacher-results-modal-header,.teacher-resource-main{flex-direction:column;align-items:flex-start;gap:12px}.teacher-header-actions,.analytics-export-group,.teacher-results-toolbar{width:100%;flex-direction:column;align-items:stretch}.teacher-header-actions .btn,.teacher-header-actions .form-select,.analytics-export-group .btn{width:100%}.admin-content{padding:12px}.modal-overlay,.teacher-modal-backdrop{padding:0;align-items:flex-end}.modal,.teacher-results-modal,.teacher-quiz-detail-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:90vh;width:100%}}.assessment-setup-container{display:flex;flex-direction:column;gap:1.5rem}.assessment-tabs{display:flex;align-items:center;gap:1rem;background:var(--color-surface);padding:.75rem 1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow-x:auto}.assessment-tab{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--color-text-secondary);font-weight:500;font-size:.95rem;padding:.5rem .75rem;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;white-space:nowrap}.assessment-tab:hover{background:var(--color-bg);color:var(--color-primary)}.assessment-tab.active{color:var(--color-accent);background:var(--color-warning-bg)}.assessment-tab .step-num{font-size:1.1rem;opacity:.7}.assessment-tab.active .step-num{opacity:1}.tab-arrow{color:var(--color-text-muted);font-size:1.2rem}.assessment-content{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);min-height:400px}.assessment-content>.page-container{padding:1.5rem;margin:0;max-width:none}.assessment-content>.admin-toolbar{padding:1.5rem 1.5rem 0}.assessment-content>.table-scroll-container{margin:0;border-radius:0 0 var(--radius-md) var(--radius-md);border:none}@media (max-width: 768px){.assessment-tabs{padding:.5rem 1rem;gap:.5rem}.assessment-tab{padding:.5rem;font-size:.85rem}}.mcq-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.mcq-filters-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1 1 auto}.mcq-filter-select{width:auto;min-width:140px}.mcq-actions-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.mcq-status-bar{padding:10px 24px;border-bottom:1px solid var(--color-border);font-size:.82rem;color:var(--color-text-muted);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.mcq-delete-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}@media (max-width: 1024px){.mcq-toolbar{flex-direction:column;align-items:stretch}.mcq-filters-group{width:100%}.mcq-actions-group{width:100%;justify-content:flex-start}}@media (max-width: 767px){.search-bar{max-width:100%!important;width:100%}.mcq-filters-group{display:flex;flex-direction:column;width:100%;gap:8px}.mcq-filter-select{width:100%!important;min-width:0!important}.mcq-actions-group{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;width:100%}.mcq-actions-group .btn{width:100%;justify-content:center;padding:8px 10px;font-size:.82rem;min-height:40px}.mcq-status-bar{padding:10px 16px;flex-direction:column;align-items:flex-start}.mcq-delete-actions{width:100%;flex-direction:column}.mcq-delete-actions .btn{width:100%;justify-content:center}}@media (max-width: 400px){.mcq-actions-group{grid-template-columns:1fr}}
