*{box-sizing:border-box}html{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Arial,Helvetica,sans-serif}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}#root{min-height:100vh}.teacher-management{flex-direction:column;gap:24px;display:flex}.teacher-page-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.teacher-page-header h2{color:#153e75;margin:0 0 8px;font-size:23px}.teacher-page-header p{color:#64748b;margin:0;font-size:14px;line-height:1.6}.teacher-refresh-btn{color:#fff;white-space:nowrap;background:#2563eb;border:none;border-radius:8px;padding:11px 16px;font-weight:600}.teacher-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.teacher-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.teacher-summary>div{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:10px;padding:20px;display:flex}.teacher-summary span{color:#64748b;font-size:13px}.teacher-summary strong{color:#153e75;font-size:28px}.teacher-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.teacher-table-heading{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex}.teacher-table-heading h3{color:#153e75;margin:0;font-size:17px}.teacher-table-heading span{color:#64748b;font-size:13px}.teacher-table-scroll{overflow-x:auto}.teacher-table{border-collapse:collapse;text-align:left;width:100%;min-width:620px}.teacher-table th,.teacher-table td{border-bottom:1px solid #f1f5f9;padding:15px 18px;font-size:14px}.teacher-table th{color:#475569;background:#f8fafc;font-weight:700}.teacher-table td{color:#334155}.teacher-role,.teacher-status{border-radius:20px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-block}.admin-role{color:#6d28d9;background:#ede9fe}.user-role{color:#1d4ed8;background:#dbeafe}.active-status{color:#15803d;background:#dcfce7}.inactive-status{color:#b91c1c;background:#fee2e2}.teacher-message,.teacher-error{text-align:center;padding:24px}.teacher-message{color:#64748b}.teacher-error{color:#b91c1c}@media (width<=700px){.teacher-page-header{flex-direction:column;align-items:flex-start}.teacher-summary{grid-template-columns:1fr}.teacher-page-header h2{font-size:20px}}.teacher-header-actions{flex-wrap:wrap;gap:10px;display:flex}.teacher-add-btn{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:8px;padding:11px 16px;font-weight:600}.teacher-add-btn:hover{background:#15803d}.teacher-success{color:#166534;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin:0;padding:13px 16px;font-size:14px}.teacher-modal-overlay{z-index:100;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.teacher-modal{background:#fff;border-radius:14px;width:100%;max-width:500px;max-height:90vh;padding:26px;overflow-y:auto;box-shadow:0 20px 60px #0003}.teacher-modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.teacher-modal-header h3{color:#153e75;margin:0;font-size:20px}.teacher-modal-close{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:28px}.teacher-form-group{margin-bottom:18px}.teacher-form-group label{color:#334155;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.teacher-form-group input{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:12px 14px;font-size:14px}.teacher-form-group input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.teacher-form-group small{color:#64748b;margin-top:6px;font-size:12px;display:block}.teacher-form-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.teacher-cancel-btn,.teacher-save-btn{cursor:pointer;border:none;border-radius:8px;padding:11px 18px;font-weight:600}.teacher-cancel-btn{color:#334155;background:#e2e8f0}.teacher-save-btn{color:#fff;background:#2563eb}.teacher-save-btn:hover{background:#1d4ed8}.teacher-save-btn:disabled,.teacher-cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.teacher-modal{padding:20px}.teacher-modal-header h3{font-size:18px}}.teacher-row-actions{flex-wrap:wrap;gap:8px;display:flex}.teacher-edit-btn,.teacher-lock-btn,.teacher-unlock-btn{cursor:pointer;border:none;border-radius:7px;padding:7px 12px;font-size:13px;font-weight:600}.teacher-edit-btn{color:#1d4ed8;background:#dbeafe}.teacher-edit-btn:hover{background:#bfdbfe}.teacher-lock-btn{color:#b91c1c;background:#fee2e2}.teacher-lock-btn:hover{background:#fecaca}.teacher-unlock-btn{color:#15803d;background:#dcfce7}.teacher-unlock-btn:hover{background:#bbf7d0}.teacher-form-group select{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:12px 14px;font-size:14px}.teacher-form-group select:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.teacher-form-group select:disabled{cursor:not-allowed;background:#f1f5f9}.password-overlay{z-index:1000;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.password-dialog{color:#1e293b;background:#fff;border-radius:12px;width:100%;max-width:520px;max-height:90vh;padding:24px;overflow-y:auto}.password-dialog p{line-height:1.6}.password-dialog fieldset{border:0;min-width:0;padding:0}.password-dialog label{gap:8px;margin:16px 0;display:grid}.password-dialog input{width:100%;font:inherit;border:1px solid #94a3b8;border-radius:6px;padding:12px}.password-buttons{flex-wrap:wrap;gap:12px;display:flex}.password-buttons button{color:#fff;font:inherit;background:#2563eb;border:0;border-radius:6px;padding:12px 16px}.password-buttons button:disabled{opacity:.5}.password-error{color:#991b1b;background:#fef2f2;padding:12px}.admin-layout{color:#1e293b;background:#f1f5f9;min-height:100vh;display:flex}.admin-sidebar{color:#fff;background:#153e75;flex-direction:column;flex-shrink:0;width:255px;min-height:100vh;display:flex}.admin-brand{text-align:center;border-bottom:1px solid #ffffff26;padding:30px 18px}.brand-icon{margin-bottom:12px;font-size:42px}.admin-brand h2{margin:0;font-size:15px;line-height:1.5}.admin-brand p{color:#bfdbfe;margin:6px 0 0;font-size:13px}.admin-navigation{flex-direction:column;gap:6px;padding:20px 12px;display:flex}.admin-menu-item{color:#dbeafe;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:12px;width:100%;padding:13px 14px;font-size:14px;display:flex}.admin-menu-item:hover{background:#ffffff1a}.admin-menu-item.active{color:#fff;background:#2563eb;font-weight:700}.admin-sidebar-footer{text-align:center;border-top:1px solid #ffffff26;margin-top:auto;padding:20px}.admin-sidebar-footer p{color:#dbeafe;font-size:12px;line-height:1.6}.admin-sidebar-footer small{color:#93c5fd}.admin-main{flex:1;min-width:0}.admin-header{background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:16px;min-height:85px;padding:16px 30px;display:flex}.admin-header-left{align-items:center;gap:12px;display:flex}.admin-header h1{color:#153e75;margin:0;font-size:20px}.admin-header p{color:#64748b;margin:5px 0 0;font-size:13px}.admin-account{align-items:center;gap:12px;display:flex}.admin-avatar{background:#dbeafe;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;display:flex}.admin-account-info{flex-direction:column;gap:4px;display:flex}.admin-account-info strong{font-size:13px}.admin-account-info span{color:#64748b;font-size:12px}.admin-logout{color:#b91c1c;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:600}.admin-logout:hover{background:#fee2e2}.admin-content{padding:30px}.admin-welcome{color:#fff;background:linear-gradient(120deg,#153e75,#2563eb);border-radius:14px;padding:28px}.admin-welcome h2{margin:0 0 10px;font-size:24px}.admin-welcome p{margin:0;font-size:14px;line-height:1.7}.admin-section-title{color:#153e75;margin:30px 0 18px;font-size:19px}.admin-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.admin-feature-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:100%;padding:25px;transition:transform .2s,box-shadow .2s;display:block}.admin-feature-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0f172a14}.feature-icon{margin-bottom:15px;font-size:32px;display:block}.admin-feature-card h3{color:#153e75;margin:0 0 10px;font-size:17px}.admin-feature-card p{color:#64748b;margin:0 0 18px;font-size:14px;line-height:1.6}.feature-link{color:#2563eb;font-size:13px;font-weight:700}.admin-placeholder{text-align:center;background:#fff;border-radius:14px;padding:60px 20px}.placeholder-icon{margin-bottom:15px;font-size:45px}.admin-placeholder h2{color:#153e75}.admin-placeholder p{color:#64748b;line-height:1.6}.admin-placeholder button{color:#fff;background:#2563eb;border:none;border-radius:8px;margin-top:20px;padding:12px 18px}.mobile-menu-button{color:#153e75;background:0 0;border:none;font-size:25px;display:none}.sidebar-overlay{display:none}@media (width<=900px){.admin-sidebar{z-index:20;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%)}.admin-sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay{z-index:19;background:#0f172a73;border:none;display:block;position:fixed;inset:0}.mobile-menu-button{display:block}.admin-header{padding:15px 20px}.admin-content{padding:20px}}@media (width<=600px){.admin-feature-grid{grid-template-columns:1fr}.admin-account-info{display:none}.admin-header h1{font-size:16px}.admin-header p{font-size:11px}.admin-logout{padding:9px}.admin-welcome h2{font-size:20px}}.lesson-management{flex-direction:column;gap:24px;display:flex}.lesson-page-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.lesson-page-header h2{color:#153e75;margin:0 0 8px;font-size:23px}.lesson-page-header p{color:#64748b;margin:0;font-size:14px}.lesson-refresh-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:11px 16px;font-weight:600}.lesson-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.lesson-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lesson-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:10px;padding:20px;display:flex}.lesson-summary-card span{color:#64748b;font-size:13px}.lesson-summary-card strong{color:#153e75;font-size:28px}.lesson-filter-bar{flex-wrap:wrap;gap:12px;display:flex}.lesson-filter-bar input,.lesson-filter-bar select{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:12px 14px;font-size:14px}.lesson-filter-bar input{flex:1;min-width:220px}.lesson-filter-bar select{min-width:160px}.lesson-filter-bar input:focus,.lesson-filter-bar select:focus{border-color:#2563eb;outline:none}.lesson-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.lesson-table-heading{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex}.lesson-table-heading h3{color:#153e75;margin:0;font-size:17px}.lesson-table-heading span{color:#64748b;font-size:13px}.lesson-table-scroll{overflow-x:auto}.lesson-table{border-collapse:collapse;text-align:left;width:100%;min-width:900px}.lesson-table th,.lesson-table td{border-bottom:1px solid #f1f5f9;padding:15px;font-size:14px}.lesson-table th{color:#475569;background:#f8fafc;font-weight:700}.lesson-table td{color:#334155}.lesson-title-cell{font-weight:600;color:#153e75!important}.lesson-status{white-space:nowrap;border-radius:20px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-block}.lesson-status.draft{color:#92400e;background:#fef3c7}.lesson-status.published{color:#15803d;background:#dcfce7}.lesson-message,.lesson-error{text-align:center;padding:24px;font-size:14px}.lesson-message{color:#64748b}.lesson-error{color:#b91c1c}@media (width<=700px){.lesson-page-header{flex-direction:column;align-items:flex-start}.lesson-summary{grid-template-columns:1fr}.lesson-page-header h2{font-size:20px}}.lesson-header-actions{flex-wrap:wrap;gap:10px;display:flex}.lesson-add-btn{color:#fff;cursor:pointer;background:#16a34a;border:none;border-radius:8px;padding:11px 16px;font-weight:600}.lesson-add-btn:hover{background:#15803d}.lesson-success{color:#166534;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:13px 16px;font-size:14px}.lesson-modal-overlay{z-index:100;background:#0f172a99;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lesson-modal{box-sizing:border-box;background:#fff;border-radius:14px;width:100%;max-width:680px;max-height:90vh;padding:26px;overflow-y:auto;box-shadow:0 20px 60px #0003}.lesson-modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.lesson-modal-header h3{color:#153e75;margin:0;font-size:20px}.lesson-modal-close{cursor:pointer;background:0 0;border:none;font-size:28px}.lesson-form-group{flex:1;margin-bottom:18px}.lesson-form-group label{color:#334155;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.lesson-form-group input,.lesson-form-group select,.lesson-form-group textarea{box-sizing:border-box;color:#1e293b;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:12px 14px;font-size:14px}.lesson-form-group textarea{resize:vertical}.lesson-form-row{gap:16px;display:flex}.lesson-form-group input[type=file]{cursor:pointer;background:#eff6ff;border:2px dashed #93c5fd}.lesson-file-hint{color:#64748b;margin:8px 0;font-size:13px}.lesson-selected-file{color:#166534;overflow-wrap:anywhere;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;justify-content:space-between;gap:12px;margin-top:12px;padding:12px;font-size:13px;display:flex}.lesson-form-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.lesson-cancel-btn,.lesson-save-btn{cursor:pointer;border:none;border-radius:8px;padding:11px 18px;font-weight:600}.lesson-cancel-btn{color:#334155;background:#e2e8f0}.lesson-save-btn{color:#fff;background:#2563eb}.lesson-save-btn:disabled,.lesson-cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=600px){.lesson-form-row{flex-direction:column;gap:0}.lesson-modal{padding:20px}}.lesson-view-btn{color:#1d4ed8;cursor:pointer;background:#dbeafe;border:none;border-radius:7px;padding:8px 14px;font-weight:600}.lesson-view-btn:hover{background:#bfdbfe}.lesson-detail-info{background:#f8fafc;border-radius:8px;padding:14px;line-height:1.6}.lesson-detail-info p{margin:8px 0}.lesson-detail-content{white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #e2e8f0;border-radius:8px;max-height:300px;padding:14px;line-height:1.7;overflow-y:auto}.lesson-modal h4{color:#153e75;margin:20px 0 10px}.lesson-actions{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:16px}.lesson-actions fieldset{border:0;min-width:0;padding:0}.lesson-action-buttons{flex-wrap:wrap;gap:10px;display:flex}.lesson-action-buttons button,.lesson-action-confirm button{color:#fff;font:inherit;background:#2563eb;border:0;border-radius:6px;padding:10px 14px}.lesson-actions .lesson-delete-btn{color:#fff;background:#b91c1c}.lesson-actions .lesson-cancel-btn{color:#1e293b;background:#e2e8f0}.lesson-actions button:disabled{opacity:.55;cursor:wait}.lesson-action-confirm{background:#fff7ed;border-radius:8px;margin-top:14px;padding:14px;line-height:1.6}.lesson-documents{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:16px;line-height:1.7}.lesson-documents form{gap:12px;margin-top:20px;display:grid}.lesson-documents label{font-weight:600}.lesson-replace-confirm{align-items:flex-start;gap:10px;display:flex}.lesson-replace-confirm input{margin-top:8px}.lesson-documents button:disabled{opacity:.5;cursor:wait}.lesson-filter-bar{flex-wrap:wrap}.lesson-filter-bar>input{flex:260px;min-width:180px}.lesson-filter-bar>select{flex:150px;min-width:0}.lesson-catalog-note{color:#64748b;line-height:1.6}.lesson-pagination{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;display:flex}.lesson-pagination label{align-items:center;gap:8px;display:flex}.lesson-pagination select,.lesson-pagination button{font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:10px 12px}.lesson-pagination button:disabled{opacity:.5;cursor:default}.slide-viewer{z-index:3000;color:#fff;box-sizing:border-box;background:#101827;flex-direction:column;padding:12px;display:flex;position:fixed;inset:0}.slide-viewer:fullscreen{width:100%;height:100%}.slide-viewer-toolbar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:8px;display:flex}.slide-viewer-toolbar strong{overflow-wrap:anywhere;flex:1}.slide-viewer button{color:#fff;cursor:pointer;background:#1e3a5f;border:1px solid #64748b;border-radius:6px;padding:8px 12px}.slide-viewer button:disabled{opacity:.45;cursor:default}.slide-viewer button:focus-visible{outline-offset:2px;outline:3px solid #93c5fd}.slide-viewer-stage{text-align:center;background:#050a12;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;overflow:hidden}.slide-viewer-stage img{object-fit:contain;max-width:100%;max-height:100%;display:block}.slide-viewer-navigation{justify-content:center}.slide-viewer-note{color:#cbd5e1;text-align:center;flex-shrink:0;margin:4px;font-size:12px}@media (width<=600px){.slide-viewer{padding:4px}.slide-viewer-toolbar{gap:6px;padding:6px}.slide-viewer-toolbar strong{flex-basis:100%;font-size:14px}}.ai-workspace{color:#1e293b;max-width:980px}.ai-workspace>p{line-height:1.7}.ai-note{background:#eff6ff;border-radius:8px;padding:14px}.ai-controls{background:#fff;border-radius:12px;gap:12px;padding:24px;display:grid}.ai-controls label{font-weight:600}.ai-controls input,.ai-controls select,.ai-controls textarea{width:100%;min-width:0;font:inherit;border:1px solid #94a3b8;border-radius:6px;padding:12px}.ai-workspace button{color:#fff;font:inherit;background:#2563eb;border:0;border-radius:6px;padding:12px 18px}.ai-workspace button:disabled{opacity:.55;cursor:wait}.ai-workspace :focus-visible{outline-offset:3px;outline:3px solid #60a5fa}.ai-error{color:#991b1b;background:#fef2f2;border-radius:8px;padding:14px}.ai-results{gap:16px;margin-top:24px;display:grid}.ai-card{overflow-wrap:anywhere;background:#fff;border:1px solid #dbeafe;border-radius:10px;padding:20px}.ai-card p{white-space:pre-wrap;line-height:1.7}.ai-card li{padding:6px}.ai-card summary{cursor:pointer;color:#1d4ed8}.ai-user{background:#eff6ff}.ai-success{color:#166534;background:#f0fdf4;border-radius:8px;padding:14px}.ai-save,.ai-history{background:#fff;border-radius:12px;margin-top:24px;padding:20px}.ai-save{gap:12px;display:grid}.ai-save input{width:100%;min-width:0;font:inherit;border:1px solid #94a3b8;border-radius:6px;padding:12px}.ai-history-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ai-history-list{padding:0;list-style:none}.ai-history-list li{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 0;display:flex}.ai-history-list li>div{overflow-wrap:anywhere;flex:1;min-width:140px}.ai-history-list small{color:#64748b;margin-top:6px;display:block}.ai-workspace .ai-delete{background:#b91c1c}.ai-delete-confirm{background:#fff7ed;border-radius:8px;padding:14px}.ai-history-pages{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ai-export{background:#fff;border-radius:10px;padding:20px}.ai-export label{align-items:flex-start;gap:10px;line-height:1.6;display:flex}.ai-export input{flex-shrink:0;margin-top:6px}.ai-export-actions{flex-wrap:wrap;gap:12px;display:flex}@media (width<=600px){.ai-controls,.ai-card{padding:16px}}.ai-quiz-editor{min-width:0;margin:16px 0}.ai-quiz-editor label{gap:8px;margin:14px 0;display:grid}.ai-quiz-editor input,.ai-quiz-editor textarea,.ai-quiz-editor select{width:100%;min-width:0;font:inherit;border:1px solid #94a3b8;border-radius:6px;padding:10px}.question-bank{color:#1e293b;max-width:1000px}.question-bank p{white-space:pre-wrap;line-height:1.7}.qb-panel{overflow-wrap:anywhere;background:#fff;border-radius:12px;margin:18px 0;padding:22px}.qb-panel>label,.qb-panel fieldset>label{gap:8px;margin:14px 0;font-weight:600;display:grid}.qb-panel input:not([type=radio]):not([type=checkbox]),.qb-panel select,.qb-panel textarea{width:100%;min-width:0;font:inherit;border:1px solid #94a3b8;border-radius:6px;padding:12px}.qb-panel fieldset{border:0;min-width:0;padding:0}.qb-panel button{color:#fff;font:inherit;background:#2563eb;border:0;border-radius:6px;padding:11px 15px}.qb-panel button:disabled{opacity:.5;cursor:default}.qb-buttons{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.qb-option{flex-wrap:wrap;align-items:center;gap:16px;margin:14px 0;display:flex}.qb-option>label:first-child{flex:220px;gap:8px;display:grid}.qb-panel .qb-radio{align-items:center;gap:10px;margin:14px 0;font-weight:400;display:flex}.qb-panel .qb-delete{background:#b91c1c}.qb-error{color:#991b1b;background:#fef2f2;border-radius:6px;padding:12px}.qb-success{color:#166534;background:#f0fdf4;border-radius:6px;padding:12px}.qb-history{padding:0;list-style:none}.qb-history li{border-bottom:1px solid #e2e8f0;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 0;display:flex}.qb-history li>div{flex:1;min-width:180px}.qb-history small{color:#64748b;margin-top:6px;display:block}.question-bank :focus-visible{outline-offset:3px;outline:3px solid #60a5fa}@media (width<=600px){.qb-panel{padding:16px}}.login-page{background:linear-gradient(135deg,#0f2d59 0%,#1d4ed8 55%,#60a5fa 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{text-align:center;background:#fff;border-radius:18px;width:100%;max-width:500px;padding:42px 36px;box-shadow:0 20px 50px #0003}.logo{margin-bottom:18px;font-size:52px;line-height:1.2}.website-title{letter-spacing:0;text-align:center;color:#153e75;flex-direction:column;justify-content:center;align-items:center;width:100%;margin:0 0 16px;font-family:Arial,Helvetica,sans-serif;font-size:23px;font-weight:700;line-height:1.5;display:flex}.website-title span{width:100%;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;white-space:nowrap;display:block}.subtitle{color:#64748b;margin:0 0 32px;font-size:15px;line-height:1.7}.form-group{text-align:left;margin-bottom:22px}.form-group label{color:#334155;margin-bottom:9px;font-size:14px;font-weight:600;display:block}.form-group input{color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;padding:13px 14px;font-size:15px;transition:border-color .2s}.form-group input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1a}.password-wrapper{position:relative}.password-wrapper input{padding-right:75px}.toggle-password{color:#2563eb;cursor:pointer;background:0 0;border:none;padding:6px;font-size:13px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:9px;width:100%;margin-top:5px;padding:14px;font-size:16px;font-weight:700;transition:background .2s}.login-btn:hover{background:#1d4ed8}.login-btn:focus-visible,.toggle-password:focus-visible{outline-offset:3px;outline:3px solid #93c5fd}.login-note{color:#64748b;margin-top:25px;font-size:13px}.footer-text{color:#94a3b8;margin-top:25px;font-size:11px;line-height:1.6}@media (width<=600px){.login-card{padding:32px 22px}.website-title{font-size:clamp(15px,4.5vw,22px);line-height:1.5}.website-title span{white-space:normal}.subtitle{font-size:14px}}@media (width<=380px){.website-title{font-size:17px}.login-card{padding:28px 16px}}.login-error{color:#b91c1c;text-align:left;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin:12px 0;padding:12px;font-size:14px}.login-btn:disabled{opacity:.65;cursor:not-allowed}.login-card h2{color:#153e75;margin:16px 0;font-size:21px}.registration-form fieldset{border:0;min-width:0;padding:0}.registration-note{color:#475569;font-size:14px;line-height:1.7}.registration-form small{color:#64748b;margin-top:6px;line-height:1.6;display:block}.registration-show{align-items:center;gap:8px;margin:14px 0;font-size:14px;display:flex}.registration-toggle{color:#1d4ed8;font:inherit;background:0 0;border:0;margin-top:20px;padding:10px;text-decoration:underline}.registration-toggle:disabled{opacity:.5}.registration-success{color:#166534;text-align:left;background:#f0fdf4;border-radius:8px;padding:14px;line-height:1.7}
