@tailwind base;@tailwind components;@tailwind utilities;:root{--rk-purple:#a259e6;--rk-blue:#2ec4f1;--rk-pink:#e14eca;--rk-dark:#22223b}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8f9fa;margin:0;padding:0}body,h1,h2,h3,h4,h5,h6{color:#22223b;color:var(--rk-dark);font-family:Montserrat,Arial,sans-serif}h1,h2,h3,h4,h5,h6{font-weight:900}a{color:#2ec4f1;color:var(--rk-blue);text-decoration:none}a:hover{color:#a259e6;color:var(--rk-purple)}.btn,button{background:linear-gradient(90deg,#e14eca,#a259e6,#2ec4f1);background:linear-gradient(90deg,var(--rk-pink),var(--rk-purple),var(--rk-blue));border:none;border-radius:8px;box-shadow:0 2px 8px #a259e614;color:#fff;cursor:pointer;font-family:Montserrat,Arial,sans-serif;font-weight:700;padding:.75rem 1.5rem;transition:background .3s,box-shadow .3s}.btn:hover,button:hover{background:linear-gradient(90deg,#2ec4f1,#a259e6,#e14eca);background:linear-gradient(90deg,var(--rk-blue),var(--rk-purple),var(--rk-pink));color:#fff}nav{background:#fff;border-bottom:2px solid #2ec4f1;border-bottom:2px solid var(--rk-blue);margin-bottom:2rem;padding:1rem 0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.line-clamp-2{-webkit-line-clamp:2;line-clamp:2}.line-clamp-2,.line-clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;line-clamp:3}*{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.app{background-color:#f9fafb;min-height:100vh}.main-content{margin:0 auto;max-width:1200px;padding:2rem 1rem}.btn{border-radius:.375rem;display:inline-block;font-size:.875rem;font-weight:500;padding:.5rem 1rem;text-align:center;transition:background-color .2s}.btn-primary{background-color:#3b82f6}.btn-primary:hover{background-color:#2563eb}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563}.form-group{margin-bottom:1rem}.form-label{color:#374151;font-weight:500;margin-bottom:.5rem}.form-input{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.5rem}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.card{border-radius:.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1rem;padding:1.5rem}.grid{grid-gap:1rem;display:grid;gap:1rem}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:768px){.grid-cols-2,.grid-cols-3{grid-template-columns:repeat(1,minmax(0,1fr))}}.navbar{background:#fff;border-bottom:4px solid #3b82f6;box-shadow:0 2px 4px #0000001a}.nav-container{margin:0 auto;max-width:1200px;padding:0 1rem}.nav-content{height:4rem;justify-content:space-between}.nav-content,.nav-logo{align-items:center;display:flex}.nav-logo{color:#1f2937;gap:.5rem;text-decoration:none}.nav-icon{font-size:1.5rem}.nav-title{color:#1f2937;font-size:1.25rem;font-weight:700}.nav-links{display:flex;gap:2rem}.nav-link{align-items:center;border-radius:.375rem;color:#6b7280;display:flex;font-size:.875rem;font-weight:500;gap:.25rem;padding:.5rem .75rem;text-decoration:none;transition:all .2s}.nav-link:hover{background-color:#eff6ff;color:#3b82f6}.nav-link-active{background-color:#dbeafe;color:#1d4ed8}.nav-mobile{display:none}.nav-mobile-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:.5rem}.nav-mobile-btn:hover{color:#3b82f6}@media (max-width:768px){.nav-links{display:none}.nav-mobile{display:block}}.upload-container{max-width:800px}.upload-header{margin-bottom:2rem}.upload-title{color:#1f2937;font-size:1.875rem;font-weight:700;margin-bottom:.5rem}.upload-subtitle{color:#6b7280}.file-drop-zone{border:2px dashed #d1d5db;border-radius:.5rem;cursor:pointer;padding:2rem;text-align:center;transition:all .2s}.file-drop-zone:hover{border-color:#9ca3af}.file-drop-zone-active{background-color:#eff6ff;border-color:#3b82f6}.file-drop-content{gap:1rem}.file-drop-icon{color:#9ca3af;font-size:3rem}.file-drop-text{color:#374151;font-size:1.125rem;font-weight:500}.file-browse-link{color:#3b82f6;cursor:pointer;text-decoration:underline}.file-browse-link:hover{color:#2563eb}.file-drop-hint{color:#6b7280;font-size:.875rem}.file-selected{align-items:center;display:flex;flex-direction:column;gap:1rem}.file-info{gap:.5rem}.file-icon{color:#10b981;font-size:2rem}.file-name{color:#374151;font-size:1.125rem;font-weight:500}.file-size{color:#6b7280;font-size:.875rem}.file-remove-btn{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626;display:flex;gap:.25rem}.file-remove-btn:hover{background-color:#fee2e2}.submit-btn{font-size:1rem;padding:.75rem;width:100%}.submit-btn:disabled{cursor:not-allowed;opacity:.5}.error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;margin-bottom:1rem;padding:1rem}.success-message{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:.375rem;color:#16a34a;margin-bottom:1rem;padding:1rem}.hidden{display:none}@media (max-width:768px){nav{flex-direction:column;gap:1rem!important;padding:1rem!important}nav>div{flex-wrap:wrap;gap:10px!important;justify-content:center;margin:0!important}nav .btn{font-size:.9rem;padding:.5rem 1rem}}.upload-container{font-family:Montserrat,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:55px}.upload-header-section{margin-bottom:32px;text-align:left}.upload-form-layout{grid-gap:32px;align-items:start;display:grid;gap:32px;grid-template-columns:1.5fr 1fr}.form-card{background:#fff;background-clip:padding-box;border:4px solid #0000;border-radius:20px;box-shadow:0 4px 20px #a259e60f;padding:32px;position:relative}.form-card:before{background:linear-gradient(135deg,var(--rk-purple) 0,var(--rk-blue) 100%);border-radius:24px;bottom:-4px;content:"";left:-4px;opacity:.15;position:absolute;right:-4px;top:-4px;z-index:-1}.card-section-title{align-items:center;display:flex;justify-content:space-between}.file-drop-zone{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:16px;display:flex;justify-content:center;min-height:200px;transition:all .3s ease}.file-drop-zone.active,.file-drop-zone:hover{background:#6366f10d;border-color:var(--rk-blue)}.hidden-input{display:none}.file-drop-content{align-items:center;cursor:pointer;display:flex;flex-direction:column;height:100%;padding:40px 20px;text-align:center;width:100%}.drop-icon-wrapper{align-items:center;background:#fff;border-radius:50%;box-shadow:0 4px 12px #0000000d;display:flex;height:64px;justify-content:center;margin-bottom:16px;width:64px}.file-drop-icon{font-size:2rem}.file-drop-text{color:#475569;font-size:1.1rem;margin:0 0 8px}.file-drop-text strong{color:var(--rk-blue)}.file-drop-hint{color:#94a3b8;font-size:.85rem;margin:0}.file-selected-state{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a;display:flex;justify-content:space-between;margin:16px;padding:24px;width:100%}.file-info{align-items:center;display:flex;gap:16px}.file-meta{display:flex;flex-direction:column}.file-name{color:#1e293b;font-size:1rem;font-weight:700}.file-size{color:#64748b;font-size:.85rem}.btn-remove-file{background:#fee2e2;color:#ef4444;font-size:.9rem;padding:8px 16px}.btn-remove-file:hover{background:#fecaca;color:#dc2626}.visibility-toggle-container{align-items:flex-start;background:linear-gradient(90deg,#a259e60d,#6366f10d);border:1px solid #a259e633;border-radius:16px;display:flex;justify-content:space-between;margin-top:16px;padding:20px}.toggle-text-content{padding-right:20px}.toggle-label{color:#1e293b;display:block;font-size:1.05rem;font-weight:800;margin-bottom:4px}.toggle-description{color:#64748b;font-size:.85rem;line-height:1.4}.switch{display:inline-block;flex-shrink:0;height:28px;position:relative;width:52px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#cbd5e1;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.4s}.slider:before{background-color:#fff;bottom:4px;content:"";height:20px;left:4px;width:20px}input:checked+.slider{background:linear-gradient(135deg,var(--rk-purple) 0,var(--rk-blue) 100%)}input:checked+.slider:before{transform:translateX(24px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.submission-area{display:flex;flex-direction:column;gap:16px;margin-top:24px}.submit-btn-large{border-radius:16px;font-size:1.1rem;padding:16px;width:100%}.success-alert{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.form-label-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.format-guide-toggle{background:none;border:none;border-radius:6px;box-shadow:none;color:var(--rk-blue);cursor:pointer;font-size:.85rem;font-weight:700;padding:4px 8px;transition:background .2s ease}.format-guide-toggle:hover{background:#6366f11a;color:#1d2737}.format-guide-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px}.format-guide-box h4{color:#1e293b;font-size:.95rem;margin:0 0 8px}.format-guide-box p{color:#64748b;font-size:.85rem;margin:0 0 12px}.format-preview{background:#1e293b;border-radius:6px;color:#f8fafc;font-family:monospace;font-size:.8rem;line-height:1.5;margin:0;padding:12px;white-space:pre-wrap}.autocomplete-dropdown{background-color:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px #00000014;left:0;list-style:none;margin-top:6px;max-height:220px;overflow-y:auto;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.autocomplete-dropdown::-webkit-scrollbar{width:8px}.autocomplete-dropdown::-webkit-scrollbar-track{background:#f8fafc;border-radius:8px}.autocomplete-dropdown::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:8px}.autocomplete-item{color:#1e293b;cursor:pointer;font-size:.95rem;padding:10px 16px;transition:background-color .2s ease,color .2s ease}.autocomplete-item:hover{background-color:#6366f11a;color:var(--rk-blue);font-weight:600}.autocomplete-no-results{color:#94a3b8;font-size:.9rem;font-style:italic;padding:10px 16px;text-align:center}@media (max-width:968px){.upload-form-layout{grid-template-columns:1fr}}@media (max-width:600px){.form-group-row{flex-direction:column;gap:0}}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border:4px solid;border-image-slice:1;border-image-source:linear-gradient(90deg,#a259ff,#6366f1,#ec4899);border-image-source:linear-gradient(90deg,var(--rk-purple),var(--rk-blue),var(--rk-pink));border-radius:20px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:24px 32px}.modal-title{color:#333;font-size:1.5rem;font-weight:700;line-height:1.2;margin:0}.modal-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:8px;transition:all .2s ease;width:40px}.modal-close-btn:hover{background:#f0f0f0;color:#333;transform:scale(1.1)}.modal-body{flex:1 1;overflow-y:auto;padding:32px}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f0f0f0;border-radius:50%;border-top-color:#a259ff;border-top:4px solid var(--rk-purple);height:40px;margin-bottom:16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container p{color:#666;font-size:1.1rem;margin:0}.error-container{padding:40px 20px;text-align:center}.error-message{font-size:1.1rem}.document-content{display:flex;flex-direction:column;gap:24px}.document-meta{border-bottom:2px solid #f0f0f0;gap:16px;padding-bottom:16px}.meta-item{color:#666;font-size:.9rem}.meta-icon{margin-right:8px}.meta-badge{border-radius:20px;font-size:.8rem;font-weight:600;padding:6px 12px}.grade-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.category-badge{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.document-text{flex:1 1}.text-content{background:#fafafa;border:2px solid #f0f0f0;border-radius:12px;color:#333;font-size:1rem;line-height:1.8;max-height:400px;overflow-y:auto;padding:24px;white-space:pre-wrap}.text-content::-webkit-scrollbar{width:8px}.text-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.text-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.text-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.no-content{background:#fafafa;border:2px dashed #e0e0e0;border-radius:12px;color:#999;font-style:italic;padding:40px;text-align:center}.modal-actions{border-top:2px solid #f0f0f0;display:flex;gap:16px;justify-content:flex-end;padding-top:24px}.btn-icon{margin-right:8px}@media (max-width:768px){.modal-overlay{padding:16px}.modal-content{max-height:95vh}.modal-header{padding:20px 24px}.modal-title{font-size:1.3rem}.modal-body{padding:24px}.text-content{max-height:300px;padding:20px}.modal-actions{flex-direction:column}.btn{width:100%}}@media (max-width:480px){.modal-header{padding:16px 20px}.modal-body{padding:20px}.text-content{font-size:.95rem;padding:16px}}:root{--rk-purple:#a259ff;--rk-blue:#6366f1;--rk-pink:#ec4899}.document-list-container{font-family:Arial,sans-serif;margin:0 auto;max-width:1200px;padding:20px}.card{background:#fff;border:4px solid;border-image-slice:1;border-image-source:linear-gradient(90deg,#a259ff,#6366f1,#ec4899);border-image-source:linear-gradient(90deg,var(--rk-purple),var(--rk-blue),var(--rk-pink));border-radius:20px;box-shadow:0 4px 20px #a259e614;margin-bottom:24px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.header-card{padding:32px}.header-content{text-align:center}.page-title{color:#333;font-size:2.5rem;font-weight:900;line-height:1.2;margin:0 0 12px}.page-subtitle{color:#666;font-size:1.1rem;margin:0}.filters-card{padding:32px}.card-title{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.5rem;font-weight:700;margin-bottom:24px;padding-bottom:12px}.filters-grid{align-items:end;display:flex;flex-wrap:wrap;gap:16px}.search-container{flex:2 1 240px;position:relative}.filters-grid .filter-select{flex:1 1 175px}.filters-grid .clear-filters-btn{flex:1 1 150px;white-space:nowrap}.search-input{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:25px;box-sizing:border-box;font-size:1rem;padding:12px 16px 12px 48px;transition:all .2s ease;width:100%}.search-input:focus{background:#fff;border-color:#a259ff;border-color:var(--rk-purple);box-shadow:0 0 0 3px #a259e61a;outline:none}.search-icon{color:#666;font-size:1.1rem;left:16px;position:absolute;top:50%;transform:translateY(-50%)}.filter-select{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:25px;box-sizing:border-box;cursor:pointer;font-size:1rem;padding:12px 16px;transition:all .2s ease;width:100%}.filter-select:focus{background:#fff;border-color:#a259ff;border-color:var(--rk-purple);box-shadow:0 0 0 3px #a259e61a;outline:none}.clear-filters-btn{border-radius:25px;font-weight:600;padding:12px 24px;transition:all .2s ease}.results-count{margin-bottom:24px}.count-text{color:#666;font-size:1rem;margin:0}.empty-state-card{padding:48px 32px;text-align:center}.empty-state-content{margin:0 auto;max-width:400px}.empty-state-title{color:#333;font-size:1.5rem;font-weight:700;margin-bottom:12px}.empty-state-text{color:#666;font-size:1rem;line-height:1.5;margin-bottom:24px}.swimlane-container{gap:40px}.swimlane-container,.swimlane-section{display:flex;flex-direction:column}.swimlane-header{align-items:baseline;border-left:4px solid #a259ff;border-left:4px solid var(--rk-purple);display:flex;gap:12px;margin-bottom:16px;padding-left:8px}.swimlane-title{color:#1e293b;font-size:1.5rem;font-weight:900;margin:0}.swimlane-count{color:#94a3b8;font-size:.9rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.document-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));padding:10px 4px 24px}.document-row::-webkit-scrollbar{display:none}.document-card{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#a259ff,#6366f1) border-box;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,var(--rk-purple) 0,var(--rk-blue) 100%) border-box;border:2px solid #0000;box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:24px;position:relative;width:100%}.document-header{margin-bottom:16px}.document-title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:#1e293b;display:-webkit-box;font-weight:800;line-height:1.3;overflow:hidden}.document-meta{flex-wrap:wrap;gap:12px}.document-meta,.meta-item{align-items:center;display:flex}.meta-item{color:#64748b;font-size:.85rem;font-weight:600}.meta-icon{margin-right:6px}.document-content{flex:1 1;margin-bottom:16px}.document-preview{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;color:#475569;display:-webkit-box;font-size:.95rem;line-height:1.6;margin:0;overflow:hidden}.document-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.tag{border-radius:20px;font-size:.75rem;font-weight:800;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.grade-tag{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.skill-tag{background:#a259e61a;color:#a259ff;color:var(--rk-purple)}.difficulty-easy{background:#dcfce7;color:#166534}.difficulty-medium{background:#fef3c7;color:#92400e}.difficulty-hard{background:#fee2e2;color:#991b1b}.document-actions{display:flex;gap:12px;margin-top:auto}.action-btn{align-items:center;border-radius:20px;display:flex;flex:1 1;font-size:.9rem;font-weight:600;justify-content:center;padding:10px;text-align:center;text-decoration:none;transition:all .2s ease}.btn-icon{margin-right:6px}.delete-corner-btn{align-items:center;background:#ef4444!important;border:none;border-radius:6px;box-sizing:border-box;color:#fff;cursor:pointer;display:flex;font-size:.75rem;font-weight:700;height:26px!important;justify-content:center;margin:0!important;max-height:26px!important;max-width:26px!important;min-height:26px!important;min-width:26px!important;padding:0!important;position:absolute;right:4px;top:6px;transition:transform .2s ease-in-out,background-color .2s ease-in-out;width:26px!important;z-index:10}.delete-corner-btn:hover{background:#dc2626;transform:scale(1.1)}.btn{align-items:center;border:none;border-radius:25px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;padding:12px 24px;text-decoration:none;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#a259ff,#6366f1);background:linear-gradient(135deg,var(--rk-purple) 0,var(--rk-blue) 100%);color:#fff}.btn-primary:hover{box-shadow:0 4px 15px #a259e64d;color:#fff;transform:translateY(-2px)}.btn-secondary{background:#f8f9fa;border:2px solid #e0e0e0;color:#666}.btn-secondary:hover{background:#e9ecef;color:#333;transform:translateY(-2px)}.btn-danger{background:#ef4444;border:none;color:#fff}.btn-danger:hover{background:#dc2626;box-shadow:0 4px 15px #ef44444d;color:#fff;transform:translateY(-2px)}.btn-cancel{background:#e5e7eb;border:none;color:#374151}.btn-cancel:hover{background:#d1d5db;color:#111827;transform:translateY(-2px)}.loading-message{color:#666;padding:40px}.error-message,.loading-message{font-size:1.2rem;text-align:center}.error-message{background:#f8d7da;border-radius:12px;color:#dc3545;margin-bottom:20px;padding:20px}@media (max-width:1024px){.filters-grid{gap:12px}.search-container{flex:1 1 100%}}@media (max-width:768px){.filters-grid{gap:12px}.filters-grid .clear-filters-btn,.filters-grid .filter-select,.search-container{flex:1 1 100%}.page-title{font-size:2rem}.card{padding:20px}.document-card{flex:0 0 280px;padding:20px}.document-actions{flex-direction:column}.action-btn{width:100%}}@media (max-width:480px){.document-list-container{padding:16px}.filters-card,.header-card{padding:24px}}.quiz-container{background:#fff;border:2px solid #f3e5f5;border-radius:12px;box-shadow:0 4px 20px #00000014;margin:140px auto 0;max-width:1200px;overflow:hidden;padding:2rem}.resume-banner{align-items:center;background:#eff6ff;border-bottom:2px solid #bfdbfe;border-left:6px solid #3b82f6;color:#1e3a8a;display:flex;gap:1rem;justify-content:space-between;margin:-2rem -2rem 2rem;padding:1rem 2rem}.resume-banner-text{display:flex;flex-direction:column;gap:.25rem}.resume-banner-text strong{font-size:1rem}.resume-banner-text span{color:#315f9f;font-size:.9rem}.resume-banner-actions{align-items:center;display:flex;flex-shrink:0;gap:.75rem}.resume-banner-button{border:0;border-radius:8px;cursor:pointer;font-weight:700;padding:.65rem .9rem;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.resume-banner-button:hover{transform:translateY(-1px)}.resume-banner-button-primary{background:#2563eb;box-shadow:0 4px 10px #2563eb2e;color:#fff}.resume-banner-button-secondary{background:#fff;border:1px solid #bfdbfe;color:#1e3a8a}.quiz-layout{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.passage-section{background:#fff}.passage-title{color:#1a1a1a;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.passage-box{background:#f5ecf6;border:1px solid #eaeaea;border-radius:12px;box-shadow:inset 0 2px 6px #00000005;color:#2c2c2c;font-family:Merriweather,Georgia,serif;height:65vh;line-height:1.8;min-height:450px;overflow-y:auto;padding:2.5rem}.passage-box p{margin-bottom:1.25rem;margin-left:auto;margin-right:auto;max-width:65ch;text-indent:2rem}.questions-section{background:#fff}.questions-title{color:#1a1a1a;font-size:1.25rem;font-weight:700;margin-bottom:1rem}.question-item{margin-bottom:1.5rem}.question-number{color:#1a1a1a;font-weight:600;margin-bottom:.75rem}.answer-options{display:flex;flex-direction:column;gap:.75rem}.answer-option{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .2s ease}.answer-option:hover{background:#f8f4ff;border-color:var(--rk-purple);box-shadow:0 2px 8px #a259e626;transform:translateY(-2px)}.answer-option.selected{background:#f8f4ff;border-color:#a259e6}.answer-letter{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:20%;color:#1f1d1d;display:flex;font-size:.875rem;font-weight:600;height:24px;justify-content:center;padding:5px;width:24px}.answer-option:hover .answer-letter{border-color:var(--rk-purple);color:var(--rk-purple)}.answer-option.selected .answer-letter{background:#a259e6;border-color:#a259e6;color:#fff}.answer-text{color:#1a1a1a;font-size:.95rem}.sr-only{border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.submit-button{background:linear-gradient(90deg,var(--rk-pink),var(--rk-purple),var(--rk-blue));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.875rem 2rem;transition:all .2s ease;width:100%}.submit-button:hover{background:linear-gradient(90deg,var(--rk-blue),var(--rk-purple),var(--rk-pink));box-shadow:0 4px 12px #a259e64d;transform:translateY(-1px)}.submit-button:active{transform:translateY(0)}@media (max-width:768px){.quiz-layout{gap:1.5rem;grid-template-columns:1fr}.quiz-container{margin:120px 1rem 1rem;padding:1.5rem}.resume-banner{align-items:stretch;flex-direction:column;margin:-1.5rem -1.5rem 1.5rem;padding:1rem 1.5rem}.resume-banner-actions{width:100%}.resume-banner-button{flex:1 1}.passage-box{height:300px}}.passage-box::-webkit-scrollbar{width:6px}.passage-box::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.passage-box::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.passage-box::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media print{.dashboard-tabs,.passage-section button,.questions-section button,.questions-title,.resume-banner,.student-dashboard-header,.toast-container{display:none!important}.quiz-layout{display:block!important}.passage-section,.questions-section{border:none!important;box-shadow:none!important;max-height:none!important;overflow:visible!important;width:100%!important}.questions-section{margin-top:2rem;page-break-before:always}.passage-box{border:none!important;max-height:none!important;overflow:visible!important}input[type=radio]{display:none!important}}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOut{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.toast{align-items:center;animation:slideIn .3s ease-out;border-radius:12px;box-shadow:0 8px 24px #00000026;display:flex;font-weight:500;gap:1rem;max-width:400px;min-width:300px;padding:1rem 1.5rem;position:fixed;right:2rem;top:160px;z-index:9999}.toast-success{background:linear-gradient(135deg,#10b981,#059669)}.toast-error,.toast-success{border:2px solid #fff3;color:#fff}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626)}.toast-icon{align-items:center;background:#fff3;border-radius:50%;display:flex;flex-shrink:0;font-size:1.25rem;font-weight:700;height:32px;justify-content:center;width:32px}.toast-message{flex:1 1;font-size:1rem;line-height:1.4}@media (max-width:768px){.toast{left:1rem;max-width:none;min-width:auto;right:1rem;top:100px}}.auth-shell{max-width:1180px}.auth-layout{grid-gap:26px;gap:26px;grid-template-columns:1fr 1fr}.auth-panel{background:radial-gradient(circle at 20% 20%,#ffffff26,#0000 28%),linear-gradient(135deg,#3b82f6,#9b51e0);background:radial-gradient(circle at 20% 20%,#ffffff26,#0000 28%),linear-gradient(135deg,var(--rk-blue,#3b82f6) 0,var(--rk-purple,#9b51e0) 100%);color:#fff;padding:40px;position:relative}.auth-panel p{line-height:1.75}.auth-feature-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}.auth-feature{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:20px;padding:18px}.auth-feature strong{display:block;font-size:1rem;margin-bottom:8px}.auth-form-card{padding:34px 38px}.auth-form-card h2{font-size:2rem;margin:0 0 8px}.auth-form-card>p{color:#64748b;line-height:1.65;margin:0 0 24px}.auth-form,.form-stack{grid-gap:16px;gap:16px}.auth-form{display:grid}.form-field label{text-align:left}.auth-input{border-radius:16px}.field-errors,.form-errors{color:#b91c1c;font-size:.92rem;margin-top:6px;text-align:left}button.auth-submit{border-radius:16px;font-size:1rem;margin-top:4px;padding:15px 18px}button.auth-submit:hover:not(:disabled){background:linear-gradient(90deg,#9b51e0,#3b82f6,#ff4785);background:linear-gradient(90deg,var(--rk-purple,#9b51e0),var(--rk-blue,#3b82f6),var(--rk-pink,#ff4785));color:#fff}.auth-submit-wrap{padding-top:0}.password-wrapper{position:relative;width:100%}button.password-toggle{align-items:center;background:#fff;border:none;border-bottom-right-radius:13px;border-top-right-radius:13px;bottom:1px;box-shadow:none;color:#475569;cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;position:absolute;right:1px;top:1px;transition:background .2s ease,color .2s ease;width:46px}button.password-toggle:hover{background:#f1f5f9;color:#0f172a}button.forgotPasswordButton{background:#0000;border:none;box-shadow:none;color:#475569;cursor:pointer;display:block;font-size:.9rem;font-weight:600;margin:4px 0 12px auto;padding:4px 6px;text-decoration:none;transition:color .2s ease;width:-webkit-fit-content;width:fit-content}button.forgotPasswordButton:hover{background:#0000;box-shadow:none;color:#7c3aed;text-decoration:underline}button.backToLoginButton{background:#0000;border:none;box-shadow:none;color:#334155;cursor:pointer;display:block;font-size:.95rem;font-weight:700;margin:18px auto 0;padding:6px 12px;text-decoration:none;transition:color .2s ease}button.backToLoginButton:hover{background:#0000;box-shadow:none;color:#7c3aed;text-decoration:underline}.auth-links{line-height:1.75;margin-top:22px;text-align:left}.auth-links a{font-weight:700}.resetDescription{color:#475569;font-size:.98rem;line-height:1.55;margin:0 0 16px;text-align:left}.verificationCodeInput{font-size:1.5rem;font-weight:800;letter-spacing:12px;padding:16px;text-align:center}.resetMessage{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;color:#0369a1;font-size:.95rem;line-height:1.5;margin:16px 0 0;padding:14px}.passwordResetSuccess{padding:16px 0;text-align:center}.passwordResetSuccess p{color:#334155;font-size:1.05rem;line-height:1.6;margin:16px 0 24px}.successIcon{align-items:center;background:#dcf7e7;border-radius:50%;box-shadow:0 8px 16px #1665341a;color:#166534;display:flex;font-size:2rem;font-weight:800;height:64px;justify-content:center;margin:0 auto;width:64px}.errorText{color:#cf334b;font-size:.9rem;line-height:1.4;margin:14px 0 0}@media (max-width:900px){.auth-feature-grid,.auth-layout{grid-template-columns:1fr}}.auth-shell{margin:0 auto;max-width:1280px;padding:80px 20px 70px}.auth-layout{grid-gap:32px;align-items:stretch;display:grid;gap:32px;grid-template-columns:1fr 1.1fr}.auth-form-card,.auth-panel{border-radius:30px;box-shadow:0 28px 60px #a259e624;overflow:hidden}.signup-panel{background:radial-gradient(circle at 20% 20%,#ffffff26,#0000 28%),linear-gradient(135deg,#3b82f6,#9b51e0);background:radial-gradient(circle at 20% 20%,#ffffff26,#0000 28%),linear-gradient(135deg,var(--rk-blue,#3b82f6) 0,var(--rk-purple,#9b51e0) 100%);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:44px;position:relative}.auth-panel h1{color:#f8f4f4;font-size:clamp(2.2rem,4vw,4rem);font-weight:900;line-height:.95;margin:0 0 16px}.auth-panel p{color:#ffffffeb;font-size:1.05rem;line-height:1.65;margin:0;max-width:540px}.auth-feature-list{display:flex;flex-direction:column;gap:16px;margin-top:36px}.auth-feature-item{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:20px;display:flex;gap:18px;padding:20px}.feature-icon{align-items:center;background:#ffffff40;border-radius:14px;box-shadow:inset 0 2px 4px #fff3;display:flex;flex-shrink:0;font-size:1.6rem;height:52px;justify-content:center;width:52px}.feature-text strong{color:#fff;display:block;font-size:1.05rem;margin-bottom:4px}.feature-text span{color:#ffffffd9;font-size:.95rem;line-height:1.4}.auth-panel-footer{align-items:center;border-top:1px solid #fff3;color:#fffffff2;display:flex;font-size:.95rem;font-weight:600;gap:16px;margin-top:40px;padding-top:24px}.trusted-avatars{display:flex}.avatar{border:2px solid #9b51e0;border:2px solid var(--rk-purple,#9b51e0);border-radius:50%;height:32px;margin-left:-10px;width:32px}.avatar:first-child{margin-left:0}.bg-white{background:#f6f2f2}.bg-blue{background:#3b82f6}.bg-purple{background:#d946ef}.auth-form-card{background:#ffffffed;border:1px solid #a259e633;padding:34px 44px}.auth-form-card h2{color:#0f172a;font-size:2.2rem;font-weight:900;margin:0 0 4px}.signup-subtitle{color:#64748b;font-size:1rem;line-height:1.65;margin:0 0 28px}.role-selector-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:26px}.role-card{align-items:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:16px;color:#64748b;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:16px 8px;transition:all .2s ease}.role-card:hover{background:#f1f5f9;border-color:#cbd5e1;color:#475569}.role-card.active{background:#f3e8ff;border-color:#9b51e0;border-color:var(--rk-purple,#9b51e0);box-shadow:0 4px 12px #9b51e026;color:#9b51e0;color:var(--rk-purple,#9b51e0);transform:translateY(-2px)}.role-card-icon{font-size:1.8rem}.role-card-name{font-size:.95rem;font-weight:800}.form-stack{grid-gap:18px;display:grid;gap:18px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-field label{color:#1e293b;display:block;font-size:.95rem;font-weight:700;margin-bottom:8px}.auth-input{background:#fff;border:1px solid #cbd5e1;border-radius:14px;box-sizing:border-box;color:#0f172a;font-size:1rem;padding:13px 16px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.auth-input:focus{border-color:#9b51e0;border-color:var(--rk-purple,#9b51e0);box-shadow:0 0 0 3px #a259e62e;outline:none}button.auth-submit{background:linear-gradient(90deg,#9b51e0,#3b82f6,#ff4785);background:linear-gradient(90deg,var(--rk-purple,#9b51e0),var(--rk-blue,#3b82f6),var(--rk-pink,#ff4785));border:0;border-radius:14px;box-shadow:0 10px 20px #a259e638;color:#fff;cursor:pointer;display:block;font-size:1.05rem;font-weight:800;padding:16px;transition:opacity .2s,transform .2s;width:100%}button.auth-submit:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}button.auth-submit:disabled{cursor:not-allowed;opacity:.7;transform:none}.auth-links{color:#475569;font-size:.95rem;margin-top:24px;text-align:center}.auth-links a{color:#2563eb;font-weight:800;margin-left:4px;text-decoration:none}.auth-links a:hover{text-decoration:underline}@media (max-width:960px){.auth-layout,.form-row{grid-template-columns:1fr}.auth-panel{padding:32px}.auth-form-card{padding:32px 24px}}.profileContainer{align-items:center;display:flex;flex-direction:column;font-family:Montserrat,Inter,sans-serif;margin-top:60px;padding:20px}.profileCard{background:#fff;border-radius:24px;box-shadow:0 20px 40px #a259e614,0 1px 3px #0000000d;max-width:100%;overflow:hidden;position:relative;width:800px}.profileBanner{background:linear-gradient(135deg,#3b82f6,#9b51e0);background:linear-gradient(135deg,var(--rk-blue,#3b82f6) 0,var(--rk-purple,#9b51e0) 100%);height:140px;width:100%}.profileHeaderSection{align-items:flex-end;display:flex;flex-wrap:wrap;gap:24px;margin-bottom:32px;margin-top:-25px;padding:0 36px}.profileAvatar{align-items:center;background:#fff;border:6px solid #fff;border-radius:50%;box-shadow:0 8px 16px #0000000f;color:#9b51e0;color:var(--rk-purple,#9b51e0);display:flex;flex-shrink:0;font-size:3rem;font-weight:900;height:110px;justify-content:center;width:110px}.profileTitleBlock{flex:1 1;min-width:200px;padding-bottom:8px}.profileTitleBlock h1{color:#1e293b;font-size:2rem;font-weight:900;line-height:1.1;margin:0 0 6px}.roleBadge{background:#f1f5f9;border-radius:999px;color:#475569;display:inline-block;font-size:.8rem;font-weight:800;letter-spacing:1px;padding:4px 12px;text-transform:uppercase}.profileActions{padding-bottom:12px}.editActionGroup{display:flex;gap:12px}.profileContent{display:flex;flex-direction:column;gap:24px;padding:0 36px 40px}.fieldGroup{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.fieldSection{display:flex;flex-direction:column;gap:8px}.fullWidth{grid-column:1/-1}.fieldLabel{color:#64748b;font-size:.85rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.fieldDisplay{align-items:center;background-color:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#0f172a;display:flex;font-size:1.05rem;font-weight:600;min-height:52px;padding:14px 16px}.readOnly{background-color:#f8fafc;color:#475569}.emptyText{color:#94a3b8;font-style:italic;font-weight:500}.profileInput{border:2px solid #cbd5e1;border-radius:12px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:1.05rem;font-weight:600;outline:none;padding:14px 16px;transition:all .2s ease;width:100%}.profileInput:focus{border-color:#9b51e0;border-color:var(--rk-purple,#9b51e0);box-shadow:0 0 0 4px #a259e61f}.rk-btn{border-radius:10px;font-size:.95rem;padding:10px 20px}.primary-btn:hover:not(:disabled){box-shadow:0 6px 16px #9b51e04d;transform:translateY(-2px)}.cancel-btn{background:#0000;border:2px solid #e2e8f0;color:#64748b}.cancel-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.rk-btn:disabled{cursor:not-allowed;opacity:.6}.loadingMessage{color:#64748b;font-size:1.1rem;font-weight:600;padding:60px;text-align:center}.errorMessage{background-color:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#b91c1c;font-size:.95rem}@media (max-width:640px){.fieldGroup{gap:16px;grid-template-columns:1fr}.profileHeaderSection{align-items:center;flex-direction:column;margin-top:-60px;text-align:center}.editActionGroup{flex-direction:column;width:100%}}.perfect-score-overlay{align-items:center;animation:perfectOverlayEnter .35s ease-out;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:radial-gradient(circle at center,#714cff47,#0d0a23e0 68%);display:flex;inset:0;justify-content:center;overflow:hidden;padding:24px;position:fixed;z-index:9999}.perfect-score-card{animation:perfectCardEnter .75s cubic-bezier(.22,1,.36,1);background:linear-gradient(145deg,#fffffffa,#faf4fff5);border:1px solid #ffffff80;border-radius:30px;box-shadow:0 30px 80px #0a072375,0 0 55px #b15cff47;overflow:hidden;padding:42px 36px 34px;position:relative;text-align:center;width:min(520px,100%);z-index:3}.perfect-score-card:before{background:#ffcb4a33;border-radius:50%;content:"";filter:blur(12px);height:300px;left:50%;position:absolute;top:-120px;transform:translateX(-50%);width:300px}.perfect-score-glow{animation:perfectGlowSpin 7s linear infinite;background:conic-gradient(from 0deg,#0000,#ffd04c33,#0000,#a361ff33,#0000);inset:-40%;position:absolute}.perfect-score-trophy{align-items:center;animation:trophyBounce 1.3s ease-in-out infinite;background:linear-gradient(145deg,#ffe894,#ffad32);border-radius:30px;box-shadow:0 15px 30px #db861947,inset 0 2px 0 #ffffffb3;display:flex;font-size:3.6rem;height:94px;justify-content:center;margin:0 auto 16px;position:relative;width:94px;z-index:2}.achievement-unlocked{color:#7a51c9;display:block;font-size:.78rem;font-weight:900;letter-spacing:.14em;margin-bottom:7px;position:relative;text-transform:uppercase;z-index:2}.perfect-score-card h2{color:#24143f;font-size:clamp(2rem,7vw,3.25rem);line-height:1;margin:0;position:relative;z-index:2}.perfect-score-number{background:linear-gradient(135deg,#ff9f1c,#b03cff);-webkit-background-clip:text;background-clip:text;color:#0000;font-size:clamp(3rem,12vw,5.2rem);font-weight:950;letter-spacing:-.05em;line-height:1;margin:15px 0 8px;position:relative;z-index:2}.perfect-score-result{color:#463957;font-size:1.04rem;font-weight:700;margin:13px 0 7px;position:relative;z-index:2}.perfect-score-message{color:#6b6078;line-height:1.6;margin:0 auto;max-width:390px;position:relative;z-index:2}.perfect-score-summary{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:23px 0;position:relative;z-index:2}.perfect-score-summary span{background:#f5efffe6;border:1px solid #7247b324;border-radius:999px;color:#624992;font-size:.82rem;font-weight:800;padding:9px 13px}.perfect-score-close{background:linear-gradient(135deg,#e63daf,#6c5cff);border:none;border-radius:999px;box-shadow:0 12px 25px #714fdc4d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:850;min-width:180px;padding:13px 25px;position:relative;transition:transform .2s ease,box-shadow .2s ease;z-index:2}.perfect-score-close:hover{box-shadow:0 16px 30px #714fdc61;transform:translateY(-2px)}.fireworks-layer{inset:0;pointer-events:none;position:absolute;z-index:1}.firework{height:4px;position:absolute;width:4px}.firework-one{left:18%;top:21%}.firework-two{animation-delay:.5s;right:17%;top:17%}.firework-three{animation-delay:1s;bottom:20%;right:23%}.firework span{--angle:calc(var(--particle-index)*15deg);animation:fireworkParticle 1.6s ease-out infinite;animation-delay:calc(var(--particle-index)*12ms);background:hsl(calc(var(--particle-index)*28),92%,64%);border-radius:999px;height:18px;opacity:0;position:absolute;transform:rotate(var(--angle)) translateY(-55px) scaleY(0);transform-origin:3px 55px;width:6px}.firework-two span{animation-delay:calc(.55s + var(--particle-index)*12ms)}.firework-three span{animation-delay:calc(1.05s + var(--particle-index)*12ms)}@keyframes perfectOverlayEnter{0%{opacity:0}to{opacity:1}}@keyframes perfectCardEnter{0%{opacity:0;transform:translateY(55px) scale(.7)}65%{transform:translateY(-8px) scale(1.03)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes trophyBounce{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-9px) rotate(3deg)}}@keyframes perfectGlowSpin{to{transform:rotate(1turn)}}@keyframes fireworkParticle{0%{opacity:0;transform:rotate(var(--angle)) translateY(-10px) scaleY(0)}18%{opacity:1}55%{opacity:1;transform:rotate(var(--angle)) translateY(-85px) scaleY(1)}to{opacity:0;transform:rotate(var(--angle)) translateY(-115px) scaleY(.25)}}@media (max-width:600px){.perfect-score-card{border-radius:24px;padding:34px 20px 27px}.perfect-score-trophy{font-size:2.9rem;height:78px;width:78px}.perfect-score-summary{align-items:center;flex-direction:column}}@media (prefers-reduced-motion:reduce){.firework span,.perfect-score-card,.perfect-score-glow,.perfect-score-overlay,.perfect-score-trophy{animation:none}}.results-wrapper{font-family:Inter,system-ui,sans-serif;margin:40px auto 80px;max-width:1200px;padding:0 20px}.results-hero{background:#fff;border:1px solid #e2e8f0;border-radius:24px;box-shadow:0 12px 32px #94a3b814;margin-bottom:32px;padding:40px}.hero-content{align-items:center;display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between}.hero-text h2{color:#0f172a;font-size:2.4rem;font-weight:900;margin:0 0 8px}.document-title{color:#9b51e0;color:var(--rk-purple,#9b51e0);font-size:1.25rem;font-weight:700;margin:0 0 12px}.hero-subtext{color:#64748b;font-size:1.05rem;line-height:1.6;margin:0 0 24px;max-width:500px}.score-circle-wrapper{flex-shrink:0}.score-circle{box-shadow:0 8px 24px #0000000d;height:160px;position:relative;width:160px}.score-circle,.score-circle-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.score-circle-inner{background:#fff;box-shadow:inset 0 2px 8px #0000000a;flex-direction:column;height:130px;width:130px}.score-big{color:#0f172a;font-size:1.8rem;font-weight:900;line-height:1}.score-small{color:#64748b;font-size:1rem;font-weight:700;margin-top:4px}.review-layout{grid-gap:32px;align-items:start;display:grid;gap:32px;grid-template-columns:300px 1fr}.review-navigation{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 12px #94a3b80d;padding:24px;position:-webkit-sticky;position:sticky;top:24px}.review-navigation h3{color:#334155;font-size:1.1rem;margin:0 0 16px}.question-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.nav-bubble{align-items:center;aspect-ratio:1;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:800;justify-content:center;transition:all .2s ease;width:100%}.bubble-correct{background:#dcfce7;color:#166534}.bubble-incorrect{background:#fee2e2;color:#991b1b}.nav-bubble:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.bubble-active{outline:3px solid #0f172a;outline-offset:2px;transform:scale(1.05)}.active-review-pane{background:#fff;border:1px solid #e2e8f0;border-radius:24px;box-shadow:0 12px 32px #94a3b814;padding:40px}.review-card-header{align-items:center;border-bottom:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.question-number{color:#692ad6;font-size:1.1rem;font-weight:500}.status-badge{border-radius:99px;font-size:.95rem;font-weight:700;padding:6px 14px}.badge-correct{background:#dcfce7;color:#166534}.badge-incorrect{background:#fee2e2;color:#991b1b}.active-question-text{color:#0f172a;font-size:1.3rem;font-weight:700;line-height:1.6;margin:0 0 28px}.answer-box{border-left:5px solid #0000;border-radius:12px;padding:16px 20px}.answer-correct{background:#f0fdf4;border-color:#22c55e;color:#14532d}.answer-wrong{background:#fef2f2;border-color:#ef4444;color:#7f1d1d}.answer-label{font-size:.85rem;font-weight:800;letter-spacing:.5px;margin-bottom:4px;opacity:.8;text-transform:uppercase}.answer-content{font-size:1.1rem;font-weight:500;line-height:1.5}.explanation-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;color:#334155;font-weight:600;line-height:1.6;margin-top:32px;padding:24px}.explanation-box strong{color:#9b51e0;color:var(--rk-purple,#9b51e0);display:block;font-size:1.1rem;margin-bottom:8px}.explanation-box p{margin:0}.review-controls{border-top:2px solid #f1f5f9;display:flex;justify-content:space-between;margin-top:32px;padding-top:24px}.rk-btn{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:700;padding:12px 24px;transition:all .2s ease}.primary-btn{background:linear-gradient(90deg,#9b51e0,#3b82f6);background:linear-gradient(90deg,var(--rk-purple,#9b51e0),var(--rk-blue,#3b82f6));box-shadow:0 4px 12px #9b51e033;color:#fff}.primary-btn:hover{box-shadow:0 6px 16px #9b51e04d;transform:translateY(-2px)}.secondary-btn{background:#f1f5f9;color:#475569}.secondary-btn:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.secondary-btn:disabled{cursor:not-allowed;opacity:.5}.empty-state{background:#fff;border:1px dashed #cbd5e1;border-radius:24px;padding:80px 20px;text-align:center}.skill-impact-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;margin-top:32px;padding:24px}.skill-impact-card h4{color:#334155;font-size:1.05rem;font-weight:800;margin:0 0 16px}.impact-numbers{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;margin-bottom:16px;padding:16px}.impact-numbers,.impact-stat{align-items:center;display:flex}.impact-stat{flex:1 1;flex-direction:column}.impact-label{color:#64748b;font-size:.8rem;font-weight:700;margin-bottom:4px;text-transform:uppercase}.impact-value{font-size:1.8rem;font-weight:900;line-height:1}.impact-divider{background:#e2e8f0;height:40px;width:2px}.impact-positive{color:#166534}.impact-negative{color:#991b1b}.impact-neutral{color:#475569}.impact-message{color:#475569;font-size:.95rem;font-weight:500;line-height:1.5;margin:0}@media (max-width:900px){.review-layout{grid-template-columns:1fr}.review-navigation{position:static}.question-grid{grid-template-columns:repeat(8,1fr)}}@media (max-width:600px){.hero-content{justify-content:center;text-align:center}.question-grid{grid-template-columns:repeat(5,1fr)}.active-review-pane{padding:24px}}.dashboardContainer{align-items:center;display:flex;flex-direction:column;font-family:Montserrat,Arial,sans-serif;margin-top:60px;padding:20px}.dashboardCard{background:#fff;border-radius:10px;box-shadow:0 24px 60px #22223b1a,0 2px 8px #a259e614;max-width:100%;overflow:hidden;width:1000px}.dashboardHeader{align-items:flex-end;background:linear-gradient(120deg,var(--rk-purple) 0,var(--rk-blue) 55%,var(--rk-pink) 100%);color:#fff;display:flex;gap:24px;justify-content:space-between;padding:40px 40px 32px}.dashboardHeaderText h1{color:#fff;font-size:2.2rem;letter-spacing:-.5px;margin:6px 0 8px}.dashboardEyebrow{background:#fff3;border-radius:4px;display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:1.6px;padding:5px 12px;text-transform:uppercase}.dashboardSubtitle{color:#ffffffe0;font-size:.95rem;font-weight:500;margin:0;max-width:460px}.uploadDocumentButton{background:#fff;border-radius:6px;box-shadow:0 4px 12px #0000001f;color:var(--rk-purple);display:inline-block;font-size:.88rem;font-weight:700;margin-top:16px;padding:10px 20px;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.uploadDocumentButton:hover{box-shadow:0 6px 16px #0000002e;transform:translateY(-2px)}.dashboardStats{display:flex;flex-shrink:0;gap:12px}.statPill{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff29;border:1px solid #ffffff40;border-radius:8px;display:flex;flex-direction:column;justify-content:center;min-width:84px;padding:12px 16px}.statValue{font-size:1.5rem;font-weight:900;line-height:1.1}.statLabel{color:#ffffffd9;font-size:.7rem;font-weight:700;letter-spacing:.4px;text-transform:uppercase}.dashboardContent{display:flex;flex-direction:column;gap:24px;padding:32px 40px 40px}.createClassForm{display:flex;gap:15px}.createClassForm .editInput{border:2px solid #ecebf5;border-radius:6px;flex:1 1;font-family:inherit;font-size:.98rem;outline:none;padding:13px 18px;transition:border-color .2s ease,box-shadow .2s ease}.createClassForm .editInput:focus{border-color:var(--rk-purple);box-shadow:0 0 0 4px #a259e61f}.createClassButton{background:linear-gradient(90deg,var(--rk-pink),var(--rk-purple),var(--rk-blue));border:none;border-radius:6px;box-shadow:0 6px 16px #a259e647;color:#fff;cursor:pointer;font-size:.98rem;font-weight:700;padding:12px 26px;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}.createClassButton:hover:not(:disabled){box-shadow:0 10px 22px #a259e657;transform:translateY(-2px)}.createClassButton:disabled{cursor:not-allowed;opacity:.6;transform:none}.classList{display:flex;flex-direction:column;gap:14px}.classCard{background:#fff;border:2px solid #eeecf8;border-radius:8px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.classCard:hover{border-color:#e2ddf7;box-shadow:0 6px 20px #22223b0f}.classCardExpanded{border-color:var(--rk-purple);box-shadow:0 10px 28px #a259e624}.classCardTop{background:#fbfaff;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:18px 20px}.classCardTop,.classNameToggle{align-items:center;display:flex}.classNameToggle{background:none;border:none;box-shadow:none;cursor:pointer;flex:1 1;gap:12px;min-width:220px;padding:0;text-align:left}.classNameToggle:hover{background:#0000!important;box-shadow:none!important;transform:none!important}.classChevron{align-items:center;color:var(--rk-purple);display:inline-flex;flex-shrink:0;font-size:1.1rem;height:22px;justify-content:center;transition:transform .2s ease;width:22px}.classChevronOpen{transform:rotate(90deg)}.className{color:#1e293b;font-size:1.08rem;font-weight:800}.rosterBadge{background:#a259e61a;border-radius:4px;color:var(--rk-purple);font-size:.72rem;font-weight:700;padding:4px 10px;white-space:nowrap}.classCardActions{align-items:center;display:flex;gap:10px}.joinCodeChip{align-items:center;background:#1e293b;border-radius:4px;display:flex;gap:8px;padding:6px 8px 6px 14px}.joinCodeLabel{color:#ffffff80;font-size:.62rem;font-weight:800;letter-spacing:1px}.joinCodeValue{color:#fff;font-family:Courier New,monospace;font-size:.95rem;font-weight:800;letter-spacing:2px}.copyCodeButton{background:linear-gradient(90deg,var(--rk-pink),var(--rk-purple),var(--rk-blue));border:none;border-radius:4px;box-shadow:none;color:#fff;cursor:pointer;font-size:.78rem;font-weight:700;padding:6px 14px}.classWorkspace{border-top:2px solid #eeecf8}.classTabs{background:#fff;border-bottom:1px solid #e2e8f0;display:flex;gap:20px;padding:0 20px}.tabBtn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;font-size:.95rem;font-weight:700;padding:16px 8px;transition:all .2s ease}.tabBtn:hover{color:#0f172a}.tabBtn.activeTab{border-bottom-color:var(--rk-purple);color:var(--rk-purple)}.tabContent{padding:24px}.assignmentCreationBox{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.assignmentCreationBox h4{color:#334155;font-size:1rem;margin:0 0 16px}.assignmentForm{display:flex;flex-wrap:wrap;gap:12px}.assignmentForm .editInput{border:1px solid #cbd5e1;border-radius:10px;flex:1 1;font-size:.9rem;min-width:180px;outline:none;padding:10px 14px}.extendDeadlineForm{align-items:center;background:#fbfaff;border:1px solid #eeecf8;border-radius:6px;display:flex;flex-wrap:wrap;gap:10px;margin:0 16px 12px;padding:10px 12px}.extendDeadlineForm .editInput{border-radius:6px;padding:8px 12px}.extendDeadlineForm .createClassButton{font-size:.85rem;padding:8px 18px}.assignmentItemCard{background:#fff;border:1px solid #e2e8f0;border-radius:8px;list-style:none;margin-bottom:12px;overflow:hidden;transition:box-shadow .2s ease}.assignmentItemCard:hover{box-shadow:0 4px 12px #0000000d}.assignmentHeader{align-items:center;background:#fbfaff;display:flex;justify-content:space-between;padding:16px 20px}.assignmentTitleBlock{align-items:center;display:flex;gap:16px}.assignmentIcon{align-items:center;background:#f1f5f9;border-radius:10px;display:flex;font-size:1.5rem;height:40px;justify-content:center;width:40px}.assignmentTitleInfo{display:flex;flex-direction:column}.assignmentActions{align-items:center;display:flex;gap:8px}.iconButton{font-size:1.1rem;padding:6px 10px}.assignmentGrades{background:#fff;border-top:1px solid #e2e8f0;padding:16px 20px}.assignmentsSection{display:flex;flex-direction:column;gap:12px}.statusBadge{border-radius:4px;font-size:.65rem;font-weight:800;margin-left:8px;padding:2px 6px;vertical-align:middle}.lateBadge{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.missingBadge{background:#fffbeb;border:1px solid #fde68a;color:#b45309}.classRosterHeader{align-items:center;border-bottom:1px solid #e2e8f0;color:#475569;display:flex;font-size:.95rem;gap:12px;justify-content:space-between;padding:0 0 16px}.rosterList{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.rosterItem{background:#fff;border:1px solid #f0eefa;border-radius:6px;gap:12px;padding:10px 14px}.rosterAvatar,.rosterItem{align-items:center;display:flex}.rosterAvatar{background:linear-gradient(135deg,var(--rk-pink),var(--rk-purple));border-radius:50%;color:#fff;flex-shrink:0;font-size:.9rem;font-weight:800;height:34px;justify-content:center;width:34px}.rosterInfo{display:flex;flex:1 1;flex-direction:column;min-width:0}.rosterName{color:#1e293b;font-size:.92rem;font-weight:700}.rosterEmail{color:#64748b;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.regenerateButton{background:#fff;border:2px solid #ecebf5;border-radius:4px;box-shadow:none;color:var(--rk-purple);cursor:pointer;font-size:.78rem;font-weight:700;padding:6px 14px;transition:all .2s ease;white-space:nowrap}.regenerateButton:hover:not(:disabled){background:#a259e60f;border-color:var(--rk-purple)}.exportGradesButton{background:#fff;border:2px solid #ecebf5;border-radius:4px;box-shadow:none;color:var(--rk-purple);cursor:pointer;font-size:.85rem;font-weight:700;padding:8px 18px;transition:all .2s ease;white-space:nowrap}.exportGradesButton:hover:not(:disabled){background:#a259e60f;border-color:var(--rk-purple)}.exportGradesButton:disabled{cursor:not-allowed;opacity:.6}.deleteClassButton,.rosterRemoveButton{background:#fff;border:2px solid #fee2e2;border-radius:4px;color:#dc3545;cursor:pointer;font-size:.76rem;font-weight:700;padding:6px 14px;transition:all .2s ease}.deleteClassButton:hover:not(:disabled),.rosterRemoveButton:hover:not(:disabled){background:#dc3545;border-color:#dc3545;color:#fff}.studentReportPanel{background:#fbfaff;border-top:1px dashed #e5e1f5;box-sizing:border-box;display:flex;flex-direction:column;gap:16px;padding:16px 20px;width:100%}.resultsItem{align-items:stretch;flex-direction:column;gap:10px}.resultsItemTop{align-items:center;display:flex;gap:12px}.masteryBars{display:flex;flex-direction:column;gap:8px}.masteryBarRow{align-items:center;display:flex;gap:10px}.masteryBarLabel{color:var(--rk-dark);flex-shrink:0;font-size:.8rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:130px}.masteryBarTrack{background:#e2e8f0;border-radius:4px;flex:1 1;height:10px;overflow:hidden}.masteryBarFill{border-radius:4px;height:100%;transition:width .3s ease}.masteryBarValue{color:#64748b;flex-shrink:0;font-size:.8rem;font-weight:700;text-align:right;width:40px}.skillMasteryChart{background:#fff;border:1px solid #f0eefa;border-radius:6px;margin-bottom:24px;padding:16px 8px 8px}.mt-3{margin-top:12px}.mt-8{margin-top:32px}.emptyMessage{align-items:center;background:#fbfaff;border:1px dashed #e5e1f5;border-radius:8px;color:#666;display:flex;flex-direction:column;gap:4px;padding:50px 30px;text-align:center}.rosterEmpty{background:#fff;border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;font-size:.88rem;padding:18px;text-align:center}.errorMessage{background-color:#fdf1f2;border:1px solid #f5c6cb;border-radius:6px;color:#dc3545;font-size:.92rem;font-weight:600;padding:14px;text-align:center}.viewFullReportBtn{background:#0000;border:none;color:var(--rk-blue);cursor:pointer;font-size:.9rem;font-weight:700;transition:-webkit-text-decoration .2s;transition:text-decoration .2s;transition:text-decoration .2s,-webkit-text-decoration .2s}.viewFullReportBtn:hover{text-decoration:none}.heatmapTitle{color:#1e293b;font-size:1.25rem;margin:0 0 4px}.heatmapSubtitle{color:#64748b;font-size:.9rem;margin:0 0 20px}.heatmapContainer{border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 4px 6px #00000005;overflow-x:auto}.heatmapTable{background:#fff;border-collapse:collapse;min-width:600px;width:100%}.heatmapTable th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:800;padding:14px 16px;text-align:left;white-space:nowrap}.heatmapTable td{border-bottom:1px solid #f1f5f9;padding:12px 16px}.heatmapTable tbody tr:hover td{background-color:#dfcbf4}.heat-name{color:#1e293b;font-weight:700}.heat-cell{border:3px solid #fff;border-radius:6px;font-weight:800;text-align:center}.heat-border-right{border-right:2px solid #e2e8f0}.heat-high{background-color:#dcfce7;color:#166534}.heat-med{background-color:#fef3c7;color:#92400e}.heat-low{background-color:#fee2e2;color:#991b1b}.heat-none{background-color:#f1f5f9;color:#94a3b8;font-weight:600}@media (max-width:640px){.dashboardHeader{align-items:flex-start;flex-direction:column;padding:32px 24px}.dashboardContent{padding:24px}.classCardTop,.createClassForm{flex-direction:column}.classCardTop{align-items:flex-start}.classCardActions{justify-content:space-between;width:100%}.assignmentHeader{align-items:flex-start;flex-direction:column;gap:12px}.resultsItemTop{align-items:stretch;flex-direction:column}}.weekly-report-button{background:#fff;border:2px solid #ecebf5;border-radius:4px;box-shadow:none;color:var(--rk-purple);cursor:pointer;font-size:.78rem;font-weight:700;padding:6px 14px;transition:all .2s ease;white-space:nowrap}.weekly-report-button:hover{background:#eee5ff;box-shadow:0 7px 16px #5b3d9121;transform:translateY(-1px)}.weekly-report-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#19142a8f;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:10000}.weekly-report-modal{background:#fff;border:1px solid #e6def5;border-radius:22px;box-shadow:0 28px 70px #1c143447;max-height:calc(100vh - 48px);overflow-y:auto;width:min(620px,100%)}.weekly-report-modal-header{align-items:flex-start;border-bottom:1px solid #eee9f7;display:flex;gap:20px;justify-content:space-between;padding:26px 28px 20px}.weekly-report-eyebrow{color:#8c63cf;display:block;font-size:.73rem;font-weight:800;letter-spacing:.1em;margin-bottom:5px;text-transform:uppercase}.weekly-report-modal-header h2{color:#2c2440;font-size:1.65rem;margin:0}.weekly-report-modal-header p{color:#716a80;margin:7px 0 0}.weekly-report-modal-close{align-items:center;background:#f4f1f8;border:none;border-radius:50%;color:#696073;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;width:36px}.weekly-report-form{display:flex;flex-direction:column;gap:10px;padding:24px 28px 28px}.weekly-report-form label{color:#40374f;font-size:.9rem;font-weight:750;margin-top:5px}.weekly-report-form input,.weekly-report-form textarea{background:#fcfbfe;border:1px solid #dcd4e8;border-radius:12px;box-sizing:border-box;color:#332b3e;font:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease;width:100%}.weekly-report-form input{padding:12px 14px}.weekly-report-form textarea{line-height:1.55;min-height:170px;padding:14px;resize:vertical}.weekly-report-form input:focus,.weekly-report-form textarea:focus{border-color:#9671d2;box-shadow:0 0 0 3px #9671d224}.weekly-report-character-count{color:#8b8495;font-size:.78rem;text-align:right}.weekly-report-feedback{border-radius:10px;font-size:.88rem;line-height:1.45;padding:11px 13px}.weekly-report-feedback-success{background:#edf9f1;border:1px solid #9ee0b7;color:#207044}.weekly-report-feedback-error{background:#fff1f3;border:1px solid #f1b4bd;color:#a73345}.weekly-report-modal-actions{display:flex;gap:11px;justify-content:flex-end;margin-top:12px}.weekly-report-cancel-button,.weekly-report-submit-button{border-radius:11px;cursor:pointer;font-size:.9rem;font-weight:750;padding:11px 17px}.weekly-report-cancel-button{background:#fff;border:1px solid #d9d1e5;color:#665e70}.weekly-report-submit-button{background:linear-gradient(135deg,#8a5ed0,#6247b9);border:none;box-shadow:0 9px 20px #6247b93d;color:#fff}.weekly-report-cancel-button:disabled,.weekly-report-submit-button:disabled{cursor:not-allowed;opacity:.65}@media (max-width:600px){.weekly-report-modal-overlay{padding:12px}.weekly-report-form,.weekly-report-modal-header{padding-left:18px;padding-right:18px}.weekly-report-modal-actions{flex-direction:column-reverse}.weekly-report-cancel-button,.weekly-report-submit-button{width:100%}}*{box-sizing:border-box}.student-dashboard{margin:0 auto;max-width:1400px;padding:110px 24px 50px}.student-dashboard-header{background:linear-gradient(135deg,#ff49a914,#7957ff1a,#4facfe14);border:2px solid #9b51e0;border-radius:10px;margin-bottom:28px;overflow:hidden;padding:34px;position:relative;text-align:center}.student-dashboard-header h1{color:#29243a;font-size:2.2rem;margin:0 0 8px}.student-dashboard-header p{color:#6c667d;font-size:1rem;margin:0}.join-class-card{align-items:center;background:#fff;border:2px solid #ece7ff;border-radius:10px;box-shadow:0 10px 28px #4737820a;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;margin-bottom:24px;padding:24px 28px}.join-class-text h2{color:#29243a;font-size:1.3rem;margin:0 0 4px}.join-class-text p{color:#6c667d;font-size:.95rem;margin:0}.join-class-form{display:flex;flex-shrink:0;gap:10px}.join-class-input{border:2px solid #e5e0f3;border-radius:8px;font-family:Courier New,monospace;font-size:1rem;font-weight:700;letter-spacing:2px;outline:none;padding:12px 16px;text-transform:uppercase;transition:border-color .2s ease;width:150px}.join-class-input:focus{border-color:#9b51e0}.join-class-button{background:#9b51e0;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:12px 22px;text-decoration:none;white-space:nowrap}.join-class-result{border-radius:8px;font-size:.88rem;font-weight:600;margin-top:4px;padding:10px 14px;width:100%}.join-class-result-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#15803d}.join-class-result-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.student-dashboard-content{background:#fff;border:2px solid #ece7ff;border-radius:10px;box-shadow:0 10px 28px #47378214;margin-bottom:24px;padding:28px}.student-dashboard-content h2{color:#29243a;margin-bottom:20px;margin-top:0}.dashboard-stats{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.stat-card{background:#fff;border:2px solid #ece7ff;border-radius:10px;box-shadow:0 10px 28px #4737820a;padding:24px;text-align:center;transition:transform .2s ease,border-color .2s ease}.stat-card:hover{border-color:#9b51e0;transform:translateY(-4px)}.stat-card h3{color:#6c667d;font-size:1.1rem;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.stat-value{color:#9b51e0;font-size:2.5rem;font-weight:700;margin:0}.weak-skill-card{background:#fffbeb;border-color:#fde68a}.weak-skill-card:hover{border-color:#f59e0b}.skill-name{color:#92400e;font-size:1.5rem;margin-bottom:8px}.skill-bar-bg{background:#fef3c7;border-radius:6px;height:12px;margin:12px 0;overflow:hidden;width:100%}.skill-bar-fill{background:linear-gradient(90deg,#f59e0b,#d97706);height:100%;transition:width 1s ease-in-out}.skill-subtext{color:#d97706;font-size:.9rem;font-weight:600;margin:0}.assignments-card{margin-bottom:24px}.assignments-list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}.assignment-item{align-items:center;background:#faf9ff;border:1px solid #ece7ff;border-radius:6px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:16px 18px}.assignment-info{display:flex;flex-direction:column;gap:2px;min-width:0}.assignment-info strong{color:#29243a;font-size:1.1rem}.assignment-info small{color:#8a8498}.assignment-instructions{color:#514b62;font-size:.9rem;margin:4px 0 0}.assignment-start-button{flex-shrink:0;text-align:center}.dashboard-table-wrapper{border:1px solid #ece8f7;border-radius:8px;overflow-x:auto}.dashboard-table{border-collapse:collapse;min-width:900px;width:100%}.dashboard-table th{background:#f8f6ff;border-bottom:1px solid #e5e0f3;color:#514b62;font-size:.9rem;padding:16px 14px;text-align:left}.dashboard-table td{border-bottom:1px solid #f0edf6;padding:17px 14px;vertical-align:middle}.dashboard-table tbody tr{transition:background .2s ease,transform .2s ease}.dashboard-table tbody tr:hover{background:#fcfbff}.dashboard-table tbody tr:last-child td{border-bottom:none}.test-name-cell{gap:12px}.test-icon,.test-name-cell{align-items:center;display:flex}.test-icon{background:linear-gradient(135deg,#f0eaff,#e6f1ff);border-radius:6px;flex-shrink:0;font-size:1.25rem;height:42px;justify-content:center;width:42px}.test-name-cell strong{color:#29243a;display:block;margin-bottom:3px}.test-name-cell small{color:#8a8498}.dashboard-badge,.score-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:.88rem;font-weight:700;padding:8px 12px;white-space:nowrap}.grade-badge{background:#efeaff;color:#5d3fc0}.skill-badge{background:#fff1dc;color:#b65a17}.time-badge{background:#e4f5ff;color:#156b9d}.date-badge{background:#f0f2f5;color:#5d6470}.score-high{background:#dcf7e7;color:#17743c}.score-medium{background:#fff0cb;color:#a46005}.score-low{background:#ffe2e6;color:#b83c4c}.dashboard-empty{background:#faf9ff;border:1px dashed #cfc5ed;border-radius:8px;color:#716b7d;padding:36px;text-align:center}.dashboard-tabs{border-bottom:2px solid #ece7ff;display:flex;gap:12px;margin-bottom:24px;overflow-x:auto;padding-bottom:16px}.tab-button{align-items:center;background:#f8f6ff;border:2px solid #0000;border-radius:4px;color:#6c667d;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:8px;padding:10px 20px;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#f0ebff;color:#29243a}.tab-button.active{background:#9b51e0;box-shadow:0 4px 12px #9b51e040;color:#fff}.tab-badge{background:#ff4785;border-radius:4px;color:#fff;font-size:.75rem;font-weight:800;padding:2px 8px}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.student-dashboard{padding-left:14px;padding-right:14px}.student-dashboard-content{padding:16px}.student-dashboard-header h1{font-size:1.8rem}}@media (max-width:1024px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.dashboard-stats{grid-template-columns:1fr}}.reading-streak-card{align-items:center;background:radial-gradient(circle at top left,#ffc45747,#0000 42%),linear-gradient(135deg,#fff8eb,#fff2db 52%,#fffaf3);border:1px solid #ff9c3e4d;border-radius:22px;box-shadow:0 14px 32px #c5661a1f,inset 0 1px 0 #ffffffe6;display:flex;gap:20px;margin:24px 0;overflow:hidden;padding:24px 28px;position:relative}.reading-streak-card:after{background:#ff9b391a;border-radius:50%;bottom:-70px;content:"";height:180px;position:absolute;right:-50px;width:180px}.streak-flame-wrapper{align-items:center;background:linear-gradient(145deg,#ffcf66,#ff8e32);border-radius:24px;box-shadow:0 10px 22px #ea751f42,inset 0 2px 0 #ffffff73;display:flex;flex:0 0 76px;height:76px;justify-content:center;position:relative;width:76px;z-index:1}.streak-flame{animation:streakFlamePulse 1.8s ease-in-out infinite;display:inline-block;font-size:2.8rem;line-height:1}.streak-main-content{flex:1 1;position:relative;z-index:1}.streak-label{color:#a65016;display:block;font-size:.8rem;font-weight:800;letter-spacing:.08em;margin-bottom:3px;text-transform:uppercase}.streak-count-row{align-items:baseline;display:flex;gap:8px}.streak-count{color:#45240f;font-size:2.5rem;line-height:1}.streak-day-text{color:#7b4a2d;font-size:1.05rem;font-weight:700}.streak-message{color:#79553d;font-size:.94rem;line-height:1.5;margin:8px 0 0}.streak-record{background:#ffffff9e;border:1px solid #b15b1626;border-radius:16px;min-width:130px;padding:14px 18px;position:relative;text-align:center;z-index:1}.streak-record-label{color:#9b6844;display:block;font-size:.72rem;font-weight:800;letter-spacing:.05em;margin-bottom:5px;text-transform:uppercase}.streak-record strong{color:#713a18;font-size:1rem}.gc-layout{display:flex;flex-direction:column;gap:32px}.gc-section-title{align-items:center;border-bottom:2px solid #e2e8f0;color:#1e293b;display:flex;font-size:1.5rem;gap:12px;margin:0 0 16px;padding-bottom:12px}.gc-count-badge{background:#f1f5f9;border-radius:20px;color:#64748b;font-size:1rem;font-weight:700;padding:4px 12px}.gc-empty-state{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;color:#15803d;font-weight:600;padding:24px;text-align:center}.gc-card-list{display:flex;flex-direction:column;gap:16px}.gc-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000005;display:flex;gap:20px;padding:20px;transition:box-shadow .2s ease,transform .2s ease}.gc-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px #a259e614;transform:translateY(-2px)}.gc-card-icon{align-items:center;background:#f1f5f9;border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;height:48px;justify-content:center;width:48px}.gc-icon-completed{background:#dcfce7}.gc-card-main{display:flex;flex:1 1;flex-direction:column;justify-content:center;min-width:0}.gc-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:6px}.gc-card-title{color:#0f172a;font-size:1.15rem;font-weight:800;margin:0}.gc-badge{border-radius:6px;font-size:.75rem;font-weight:700;padding:4px 10px;white-space:nowrap}.current-badge{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.below-badge{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.above-badge{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.gc-card-meta{color:#64748b;font-size:.9rem;margin:0 0 4px}.gc-card-meta strong{color:#334155}.gc-card-instructions{background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:6px;color:#475569;font-size:.9rem;margin:8px 0 0;padding:10px}.gc-card-actions{align-items:center;display:flex;justify-content:flex-end}.gc-btn{border-radius:8px;font-size:1rem;padding:10px 32px}.gc-card-completed{background:#f8fafc;border:1px dashed #cbd5e1;opacity:.9}.gc-card-completed:hover{box-shadow:none;transform:none}.gc-score-chip{background:#dcfce7;border-radius:8px;color:#166534;font-size:.95rem;font-weight:800;padding:10px 16px}@media (max-width:640px){.gc-card{flex-direction:column;gap:12px}.gc-card-actions{justify-content:flex-start}.gc-btn{width:100%}}@keyframes streakFlamePulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-4px) scale(1.08)}}@media (max-width:680px){.reading-streak-card{align-items:flex-start;gap:15px;padding:20px}.streak-flame-wrapper{border-radius:18px;flex-basis:60px;height:60px;width:60px}.streak-flame{font-size:2.15rem}.streak-count{font-size:2rem}.streak-record{min-width:auto;padding:10px}}@media (max-width:500px){.reading-streak-card{flex-wrap:wrap}.streak-main-content{flex-basis:calc(100% - 80px);flex-grow:1;flex-shrink:1}.streak-record{text-align:left;width:100%}}.learning-path-section{background:radial-gradient(circle at top right,#8b5cf626,#0000 35%),linear-gradient(145deg,#fff,#faf8ff);border:1px solid #e6ddff;border-radius:22px;box-shadow:0 14px 36px #4c1d9514;margin-bottom:24px;overflow:hidden;padding:28px;position:relative}.learning-path-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px}.learning-path-eyebrow{color:#8b5cf6;display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.09em;margin-bottom:8px}.learning-path-header h2{color:#1f2937;font-size:1.65rem;margin:0 0 8px}.learning-path-header p{color:#6b7280;line-height:1.6;margin:0;max-width:650px}.learning-path-header-icon{background:linear-gradient(135deg,#8b5cf6,#d946a1);border-radius:18px;box-shadow:0 10px 24px #8b5cf640;display:grid;flex-shrink:0;font-size:1.8rem;height:58px;place-items:center;width:58px}.learning-path-list{grid-gap:14px;display:grid;gap:14px}.learning-path-item{background:#ffffffe6;border:1px solid #eee9ff;border-radius:17px;display:flex;gap:18px;padding:20px;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.learning-path-item:hover{border-color:#c4b5fd;box-shadow:0 12px 26px #4c1d9517;transform:translateY(-2px)}.learning-path-step{background:linear-gradient(135deg,#8b5cf6,#a855f7);border-radius:13px;box-shadow:0 6px 15px #8b5cf638;color:#fff;display:grid;flex:0 0 40px;font-size:1rem;font-weight:800;height:40px;place-items:center;width:40px}.learning-path-item-content{flex:1 1;min-width:0}.learning-path-item-top{align-items:flex-start;display:flex;gap:18px;justify-content:space-between}.learning-path-item h3{color:#202033;font-size:1.1rem;margin:0 0 8px}.learning-path-status{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:800;padding:5px 10px}.learning-path-status-danger{background:#fee2e2;color:#b91c1c}.learning-path-status-warning{background:#fef3c7;color:#a16207}.learning-path-status-success{background:#dcfce7;color:#15803d}.learning-path-score{color:#7c3aed;font-size:1.35rem}.learning-path-progress{background:#eeeafd;border-radius:999px;height:9px;margin:16px 0 13px;overflow:hidden;width:100%}.learning-path-progress-fill{background:linear-gradient(90deg,#8b5cf6,#ec4899);border-radius:inherit;height:100%;transition:width .5s ease}.learning-path-guidance{color:#667085;line-height:1.55;margin:0}.learning-path-document{color:#4b5563;font-size:.9rem;margin:11px 0 0}.learning-path-button{align-items:center;background:#7c3aed;border-radius:11px;box-shadow:0 4px 12px #7c3aed40;color:#fff;display:inline-flex;font-size:.88rem;font-weight:800;gap:10px;margin-top:15px;padding:10px 18px;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1)}.learning-path-button:not(.learning-path-button-secondary):hover{background:#6d28d9;box-shadow:0 8px 20px #7c3aed59;color:#fff;transform:translateY(-2px)}.learning-path-button-secondary{background:#fff;border:1px solid #c4b5fd;box-shadow:none;color:#7c3aed}.learning-path-button-secondary:hover{background:#f5f3ff;border-color:#7c3aed;box-shadow:0 4px 12px #7c3aed1a;color:#7c3aed;transform:translateY(-2px)}.learning-path-empty{align-items:center;background:#f5f3ffb3;border:1px dashed #c4b5fd;border-radius:16px;display:flex;gap:17px;padding:20px}.learning-path-empty>span{font-size:2rem}.learning-path-empty div{flex:1 1}.learning-path-empty h3{color:#29243a;margin:0 0 5px}.learning-path-empty p{color:#6b7280;line-height:1.5;margin:0}.learning-path-insight-box{background:#f8fafc;border-left:4px solid #8b5cf6;border-radius:0 8px 8px 0;margin-top:16px;padding:14px 16px}.insight-badge{border-radius:6px;display:inline-block;font-size:.75rem;font-weight:800;letter-spacing:.05em;margin-bottom:8px;padding:4px 10px;text-transform:uppercase}.insight-text{color:#334155!important;font-size:.95rem;font-weight:500;margin:0 0 6px!important}.insight-impact{background:#e0f2fe;border:1px solid #bae6fd;border-radius:6px;color:#0f172a!important;display:inline-block;font-size:.9rem;margin:0!important;padding:4px 10px}@media (max-width:700px){.learning-path-section{padding:20px}.learning-path-header-icon{display:none}.learning-path-item{gap:12px;padding:16px}.learning-path-item-top{flex-direction:column;gap:8px}.learning-path-score{font-size:1.1rem}.learning-path-empty{align-items:flex-start;flex-direction:column}}.weekly-reports-section{padding:24px}.weekly-reports-heading{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:18px}.weekly-reports-heading h2{margin:0 0 6px}.weekly-reports-heading p{color:#6b647d;font-size:.92rem;margin:0}.weekly-reports-unread-count{background:#8b5cf6;border-radius:999px;color:#fff;flex-shrink:0;font-size:.78rem;font-weight:800;padding:7px 12px}.weekly-reports-list{display:flex;flex-direction:column;gap:14px}.parent-weekly-report-card{background:#fff;border-radius:16px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.parent-weekly-report-card.report-unread{border:2px solid #8b5cf6;box-shadow:0 8px 24px #8b5cf61f}.parent-weekly-report-card.report-read{border:1px solid #e7e2ee;box-shadow:0 6px 18px #29243a0f}.parent-weekly-report-card:hover{background:#fff!important;box-shadow:0 10px 26px #29243a1a;transform:translateY(-1px)}.parent-weekly-report-summary{align-items:center;background:#0000;border:0;color:inherit;cursor:pointer;display:flex;font:inherit;gap:16px;padding:18px 20px;text-align:left;width:100%}.parent-weekly-report-summary:hover{background:#f2ecfd}.weekly-report-envelope{border-radius:14px;display:grid;flex-shrink:0;font-size:1.45rem;height:48px;place-items:center;width:48px}.envelope-unread{background:#f0eaff}.envelope-read{background:#f3f1f6}.weekly-report-summary-text{display:flex;flex:1 1;flex-direction:column;gap:5px;min-width:0}.weekly-report-summary-top{align-items:center;display:flex;gap:10px}.weekly-report-summary-top strong{color:#29243a;font-size:1.02rem}.weekly-report-new-badge{background:#8b5cf6;border-radius:999px;color:#fff;font-size:.68rem;font-weight:800;padding:4px 8px;text-transform:uppercase}.weekly-report-summary-meta,.weekly-report-summary-student{color:#746d83;font-size:.84rem}.weekly-report-chevron{color:#8b5cf6;flex-shrink:0;font-size:1.25rem;transition:transform .2s ease}.weekly-report-chevron-open{transform:rotate(180deg)}.parent-weekly-report-body{animation:weeklyReportOpen .2s ease;border-top:1px solid #eeeaf3;padding:0 20px 20px}.weekly-report-information-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));padding:18px 0}.weekly-report-information-grid div{background:#f8f6fc;border-radius:12px;padding:12px}.weekly-report-information-grid span{color:#81788f;display:block;font-size:.72rem;font-weight:700;margin-bottom:4px;text-transform:uppercase}.weekly-report-information-grid strong{color:#29243a;font-size:.88rem}.weekly-report-message{background:#fcfbfe;border:1px solid #eee9f5;border-radius:14px;padding:18px}.weekly-report-message h3{color:#29243a;margin:0 0 10px}.weekly-report-message p{color:#514a60;line-height:1.65;margin:0;white-space:pre-wrap}.weekly-report-read-status{color:#6f687b;font-size:.78rem;font-weight:700;margin-top:12px;text-align:right}.weekly-reports-empty,.weekly-reports-error{border-radius:14px;padding:20px;text-align:center}.weekly-reports-empty{background:#f8f6fc;color:#746d83}.weekly-reports-error{background:#fff0f1;color:#c13f4d}@keyframes weeklyReportOpen{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media (max-width:800px){.weekly-report-information-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.weekly-reports-heading{flex-direction:column}.parent-weekly-report-summary{padding:16px}.weekly-report-information-grid{grid-template-columns:1fr}.weekly-report-summary-top{align-items:flex-start;flex-direction:column}}.ai-studio-container{font-family:Montserrat,Arial,sans-serif;margin:0 auto;max-width:1200px;padding:55px}.ai-studio-header{margin-bottom:24px;text-align:left}.ai-tab-bar{border-bottom:2px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:16px}.ai-tab-btn{background:#f8fafc;border:none;border-radius:999px;box-shadow:inset 0 0 0 1px #cbd5e1;color:#475569;cursor:pointer;font-size:.9rem;font-weight:700;padding:10px 20px;transition:all .2s ease}.ai-tab-btn:hover{background:#f8fafc;box-shadow:inset 0 0 0 1px var(--rk-blue);color:var(--rk-blue)}.ai-tab-btn.active{background:linear-gradient(90deg,var(--rk-pink),var(--rk-purple),var(--rk-blue));box-shadow:0 4px 12px #9b51e040;color:#fff}.ai-tab-grid{grid-gap:32px;align-items:start;display:grid;gap:32px;grid-template-columns:1fr 1fr}.ai-form-card{background:#fff;background-clip:padding-box;border:4px solid #0000;border-radius:20px;box-shadow:0 4px 20px #a259e60f;padding:32px;position:relative}.ai-form-card:before{background:linear-gradient(135deg,var(--rk-purple) 0,var(--rk-blue) 100%);border-radius:24px;bottom:-4px;content:"";left:-4px;opacity:.15;position:absolute;right:-4px;top:-4px;z-index:-1}.ai-tab-description{color:#64748b;font-size:.9rem;line-height:1.5;margin-bottom:24px;margin-top:-12px}.card-section-title{border-bottom:2px solid #f1f5f9;color:#1e293b;font-size:1.25rem;font-weight:800;margin-bottom:24px;margin-top:0;padding-bottom:12px}.optional-tag{background:#f1f5f9;border-radius:12px;color:#94a3b8;font-size:.8rem;font-weight:600;padding:4px 10px}.form-group{margin-bottom:24px}.form-group-row{display:flex;gap:16px}.half-width{flex:1 1}.form-label{color:#334155;display:block;font-size:.95rem;font-weight:700;margin-bottom:8px}.required-asterisk{color:var(--rk-pink)}.form-input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;color:#1e293b;font-size:1rem;padding:14px 16px;transition:all .2s ease;width:100%}.form-input:focus{background:#fff;border-color:var(--rk-purple);box-shadow:0 0 0 4px #a259e61a;outline:none}.alert-message{border-radius:12px;font-size:.95rem;font-weight:600;margin-bottom:16px;padding:16px;text-align:center}.error-alert{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.ai-checkbox-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.ai-checkbox-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-size:.85rem;font-weight:600;gap:8px;padding:8px 12px}.ai-checkbox-item input{margin:0}.ai-submit-btn{border-radius:14px;font-size:1rem;margin-top:8px;padding:14px;width:100%}.ai-result-panel{min-height:200px;position:-webkit-sticky;position:sticky;top:90px}.ai-loading-hint{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b;font-size:.9rem;padding:24px;text-align:center}.ai-result-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 4px 20px #2ec4f114;padding:28px}.ai-result-badge{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;color:#166534;display:inline-block;font-size:.8rem;font-weight:700;margin-bottom:16px;padding:6px 14px}.ai-result-title{color:#1e293b;font-size:1.2rem;margin:0 0 12px}.ai-result-preview{color:#475569;font-size:.9rem;line-height:1.6;margin-bottom:20px}.ai-review-link{display:inline-block;margin-top:8px}.ai-questions-preview{display:flex;flex-direction:column;gap:16px;margin:16px 0}.ai-question-preview-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px}.ai-question-preview-text{color:#1e293b;font-size:.95rem;margin:0 0 10px}.ai-choice-preview-list{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.ai-choice-preview-list li{border-radius:8px;color:#475569;font-size:.85rem;padding:6px 10px}.ai-choice-preview-list li.ai-choice-correct{background:#f0fdf4;color:#166534;font-weight:600}.ai-autocomplete-dropdown{background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 10px 25px #0000001a;left:0;list-style:none;margin:4px 0 0;max-height:200px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:10}.ai-autocomplete-item{border-bottom:1px solid #f1f5f9;color:#1e293b;cursor:pointer;font-size:.95rem;padding:12px 16px;transition:background .1s ease}.ai-autocomplete-item:hover{background:#f8fafc;color:var(--rk-purple)}.ai-autocomplete-item:last-child{border-bottom:none}@media (max-width:968px){.ai-tab-grid{grid-template-columns:1fr}.ai-result-panel{position:static}}@media (max-width:600px){.ai-studio-container{padding:24px 16px}.ai-checkbox-grid{grid-template-columns:1fr}}.school-admin-dashboard{background:radial-gradient(circle at top left,#8b5cf61f,#0000 35%),#f8f7fc;color:#29243a;min-height:100vh;padding:40px 6%}.school-admin-hero{align-items:center;background:linear-gradient(135deg,#fff,#f4f0ff);border:1px solid #e4dcff;border-radius:24px;box-shadow:0 14px 35px #4a367814;display:flex;gap:24px;justify-content:space-between;margin-bottom:28px;padding:34px}.school-admin-eyebrow,.school-admin-panel-eyebrow{color:#7c3aed;display:block;font-size:.76rem;font-weight:800;letter-spacing:.09em;margin-bottom:7px;text-transform:uppercase}.school-admin-hero h1{font-size:clamp(1.8rem,4vw,2.7rem);margin:0 0 10px}.school-admin-hero p{color:#6b667b;line-height:1.7;margin:0;max-width:650px}.school-admin-school-badge{align-items:center;background:#fff;border:1px solid #ded4ff;border-radius:18px;display:flex;gap:13px;min-width:250px;padding:17px 20px}.school-admin-school-badge>span{font-size:2rem}.school-admin-school-badge div{display:flex;flex-direction:column;gap:3px}.school-admin-school-badge small{color:#777184}.school-admin-stats{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:28px}.school-admin-stat-card{align-items:center;background:#fff;border:1px solid #e8e2f4;border-radius:20px;box-shadow:0 10px 28px #362a590f;display:flex;gap:15px;padding:22px}.school-admin-stat-icon{background:#f2edff;border-radius:15px;display:grid;font-size:1.45rem;height:48px;place-items:center;width:48px}.school-admin-stat-card>div:last-child{display:flex;flex-direction:column;gap:4px}.school-admin-stat-card span{color:#716b80;font-size:.9rem}.school-admin-stat-card strong{font-size:1.7rem}.school-admin-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.school-admin-panel{background:#fff;border:1px solid #e6e0f2;border-radius:22px;box-shadow:0 12px 34px #362a590f;padding:25px}.school-admin-panel-header{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.school-admin-panel-header h2{margin:0}.school-admin-primary-button,.school-admin-secondary-button{border-radius:11px;cursor:pointer;font:inherit;font-weight:700;padding:10px 15px}.school-admin-primary-button{background:linear-gradient(135deg,#8b5cf6,#d946a4);border:none;color:#fff}.school-admin-secondary-button{background:#fff;border:1px solid #d8cef5;color:#6841c6}.school-admin-list{display:flex;flex-direction:column;gap:12px}.school-admin-list-item{align-items:center;background:#fdfcff;border:1px solid #eee9f5;border-radius:15px;display:flex;gap:13px;padding:15px}.school-admin-avatar{background:#ede6ff;border-radius:50%;color:#6938c9;display:grid;flex:0 0 44px;font-weight:800;height:44px;place-items:center;width:44px}.school-admin-list-main{display:flex;flex:1 1;flex-direction:column;gap:3px;min-width:0}.school-admin-list-main small,.school-admin-list-main span{color:#777184}.school-admin-status{border-radius:999px;font-size:.76rem;font-weight:800;padding:6px 10px}.school-admin-status-approved{background:#e9fbf1;color:#18794e}.school-admin-status-pending{background:#fff6dc;color:#966200}.school-admin-classroom-card{background:#fdfcff;border:1px solid #ebe5f3;border-radius:16px;padding:17px}.school-admin-classroom-footer,.school-admin-classroom-header{align-items:center;display:flex;gap:15px;justify-content:space-between}.school-admin-classroom-header>div:first-child{display:flex;flex-direction:column;gap:5px}.school-admin-classroom-footer span,.school-admin-classroom-header span{color:#777184;font-size:.88rem}.school-admin-score{background:#eee8ff;border-radius:50%;color:#6439c1;display:grid;font-weight:800;height:54px;min-width:54px;place-items:center}.school-admin-classroom-footer{border-top:1px solid #eee9f4;margin-top:15px;padding-top:13px}.school-admin-classroom-footer button{background:none;border:none;color:#6d3dcc;cursor:pointer;font:inherit;font-weight:700}.school-admin-empty,.school-admin-error{border-radius:14px;padding:22px;text-align:center}.school-admin-empty{background:#f8f6fc;color:#777184}.school-admin-error{background:#fff0f1;color:#b42335}@media (max-width:1050px){.school-admin-stats{grid-template-columns:repeat(2,1fr)}.school-admin-grid{grid-template-columns:1fr}}@media (max-width:700px){.school-admin-dashboard{padding:24px 16px}.school-admin-hero{align-items:stretch;flex-direction:column;padding:24px}.school-admin-school-badge{min-width:auto}.school-admin-stats{grid-template-columns:1fr}.school-admin-panel-header{align-items:flex-start;flex-direction:column}.school-admin-list-item{align-items:flex-start;flex-wrap:wrap}}
/*# sourceMappingURL=main.1e7fa19c.css.map*/