*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-header{background:#fff;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;justify-content:space-between;padding:1rem 2rem;width:100%}.app-header,.header-left{align-items:center;display:flex}.header-left{gap:.75rem}.header-logo{height:40px;object-fit:contain;width:40px}.header-title{color:#000;font-size:1.5rem;font-weight:600;margin:0}.header-right{align-items:center;display:flex;gap:1rem}.header-link{color:#333;cursor:pointer;font-size:1rem;transition:color .2s;-webkit-user-select:none;user-select:none}.header-link:hover{color:#667eea}.header-link-logout{color:#dc2626}.header-link-logout:hover{color:#b91c1c}.header-divider{color:#ccc;-webkit-user-select:none;user-select:none}.phone-verification-banner{background:#fff3cd;border-bottom:1px solid #ffc107;box-sizing:border-box;padding:.75rem 2rem;width:100%}.banner-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin:0 auto;max-width:1200px}.banner-icon{flex-shrink:0;font-size:1.2rem}.banner-text{color:#856404;flex:1 1;font-size:.9rem;min-width:200px}.banner-button{background:#ffc107;border:none;border-radius:5px;color:#333;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.banner-button:hover{background:#ffb300;transform:translateY(-1px)}@media (max-width:768px){.phone-verification-banner{padding:.75rem 1rem}.banner-content{align-items:flex-start;flex-direction:column;gap:.75rem}.banner-button{width:100%}}.app-footer{background:#2c3e50;color:#fff;margin-top:auto;padding:1.5rem 2rem .5rem}.footer-content{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:180px 1fr 180px;margin:0 auto .5rem;max-width:1200px}@media (max-width:768px){.footer-content{grid-template-columns:1fr}}.footer-section h4{color:#fff;font-size:1rem;margin-bottom:.5rem}.footer-section p{color:#bdc3c7;font-size:.95rem;line-height:1.4;margin:0}.footer-section a{color:#667eea;text-decoration:none;transition:color .2s}.footer-section a:hover{color:#5568d3}.language-select{background:#34495e;border:1px solid #34495e;border-radius:5px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem}.language-select:focus{border-color:#667eea;outline:none}.footer-bottom{border-top:1px solid #34495e;margin:0 auto;max-width:1200px;padding-top:.5rem;text-align:center}.footer-bottom p{color:#95a5a6;font-size:.85rem;line-height:1.2;margin:0}.login-container{align-items:center;background:#f5f5f5;display:flex;flex:1 1;justify-content:center;padding:2rem}.login-box{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:400px;padding:2rem;width:100%}.login-box h2{color:#000;font-weight:600;margin-bottom:1.5rem;text-align:center}.form-group input{border:1px solid #ddd;border-radius:5px;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus{border-color:#667eea;outline:none}.register-links{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem;text-align:center}.register-links a{color:#667eea;text-decoration:none}.register-links a:hover{text-decoration:underline}.auth-page{flex-direction:column;min-height:100vh}.auth-page,.register-container{background:#f5f5f5;display:flex}.register-container{align-items:center;flex:1 1;justify-content:center;padding:2rem}.register-box{background:#fff;border-radius:10px;box-shadow:0 10px 25px #0003;max-width:500px;padding:2rem;width:100%}.register-box h2{color:#000;font-weight:600;margin-bottom:1.5rem;text-align:center}.form-group{margin-bottom:1rem}.form-group label{color:#000;display:block;margin-bottom:.5rem}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:5px;font-family:inherit;font-size:1rem;padding:.75rem;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.error{background:#fee;border-radius:5px;color:#e74c3c;margin-bottom:1rem;padding:.5rem;text-align:center}.password-error{color:#e74c3c;font-size:.875rem;line-height:1.4;margin-top:.5rem}.btn-primary{font-size:1rem;padding:.75rem;transition:background .3s;width:100%}.login-link{margin-top:1.5rem;text-align:center}.login-link a{color:#667eea;text-decoration:none}.login-link a:hover{text-decoration:underline}.register-link{margin-top:1rem;text-align:center}.register-link a{color:#667eea;text-decoration:none}.register-link a:hover{text-decoration:underline}.verify-email-page{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.verify-email-container{align-items:center;background:#f5f5f5;display:flex;flex:1 1;justify-content:center;padding:2rem}.verify-email-box{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;max-width:500px;padding:2.5rem;width:100%}.verify-email-header{margin-bottom:2rem;text-align:center}.verify-icon{font-size:3rem;margin-bottom:1rem}.verify-email-header h2{color:#333;font-size:1.5rem;font-weight:600;margin:0}.verify-info{margin-bottom:2rem}.info-box{align-items:flex-start;background:#e3f2fd;border-radius:6px;display:flex;gap:.75rem;margin-bottom:1rem;padding:1rem}.info-icon{flex-shrink:0;font-size:1.2rem}.info-box p{color:#333;font-size:.95rem;line-height:1.5;margin:0}.info-box strong{color:#1976d2}.verify-instructions{color:#666;font-size:.9rem;line-height:1.5;margin:0}.verify-form{gap:1.5rem}.code-input-group,.verify-form{display:flex;flex-direction:column}.code-input-group{gap:.75rem}.code-input-group label{color:#333;font-size:.9rem;font-weight:500}.code-inputs{display:flex;gap:.5rem;justify-content:center}.code-input{background:#fff;border:2px solid #d1d5db;border-radius:8px;color:#333;font-size:1.5rem;font-weight:600;height:60px;text-align:center;transition:all .2s;width:50px}.code-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.code-hint{color:#999;font-size:.85rem;margin:0;text-align:center}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.9rem;padding:.75rem;text-align:center}.btn-verify{align-items:center;background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .2s;width:100%}.btn-verify:hover:not(:disabled){background:#5568d3;box-shadow:0 2px 4px #667eea4d;transform:translateY(-1px)}.btn-verify:disabled{background:#ccc;cursor:not-allowed;transform:none}.btn-back{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem;transition:all .2s;width:100%}.btn-back:hover{background:#f5f5f5;border-color:#9ca3af}.resend-section{border-top:1px solid #e5e7eb;padding-top:1rem;text-align:center}.resend-section p{color:#666;font-size:.9rem;margin:0 0 .5rem}.btn-resend{background:#0000;border:none;color:#667eea;cursor:pointer;font-size:.9rem;font-weight:500;padding:.25rem .5rem;text-decoration:underline;transition:color .2s}.btn-resend:hover:not(:disabled){color:#5568d3}.btn-resend:disabled{color:#999;cursor:not-allowed;text-decoration:none}@media (max-width:768px){.verify-email-box{padding:2rem 1.5rem}.code-input{font-size:1.3rem;height:55px;width:45px}}.dashboard{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.page-title{color:#333;font-size:2rem;font-weight:600;margin:2rem 0 1rem;text-align:center}.dashboard-main{flex:1 1;margin:1.5rem 0;padding:0;width:100%}.dashboard-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;margin:0 auto;min-height:600px;padding:3rem;width:60%}.dashboard-main h2{color:#333;margin-bottom:2rem}.dashboard-main h3{color:#666;margin-bottom:2rem;text-align:left}.teachers-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:2rem}.teacher-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;transition:transform .2s,box-shadow .2s}.teacher-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-5px)}.teacher-card h3{color:#333;margin-bottom:.5rem;text-align:left}.teacher-username{color:#666;font-size:.9rem;margin-bottom:1rem}.teacher-bio{color:#555;line-height:1.5;margin-bottom:1rem}.btn-enter-classroom{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;transition:background .3s;width:100%}.btn-enter-classroom:hover{background:#5568d3}:root{--react-pdf-annotation-layer:1;--annotation-unfocused-field-background:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');--input-focus-border-color:Highlight;--input-focus-outline:1px solid Canvas;--input-unfocused-border-color:#0000;--input-disabled-border-color:#0000;--input-hover-border-color:#000;--link-outline:none}@media screen and (forced-colors:active){:root{--input-focus-border-color:CanvasText;--input-unfocused-border-color:ActiveText;--input-disabled-border-color:GrayText;--input-hover-border-color:Highlight;--link-outline:1.5px solid LinkText}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{left:0;pointer-events:none;position:absolute;top:0;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translateX(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{height:100%;position:absolute;width:100%}.annotationLayer section{box-sizing:border-box;margin:0;pointer-events:auto;position:absolute;text-align:left;text-align:initial;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:none;outline:var(--link-outline)}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{font-size:1em;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{background:#ff0;box-shadow:0 2px 10px #ff0;opacity:.2}.annotationLayer .textAnnotation img{cursor:pointer;height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input,.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .textWidgetAnnotation :is(input,textarea){background-image:url('data:image/svg+xml;charset=utf-8,<svg width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%" style="fill:rgba(0,54,255,.13)"/></svg>');background-image:var(--annotation-unfocused-field-background);border:2px solid #0000;border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px*var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .textWidgetAnnotation :is(input,textarea):required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled]{background:none;border:2px solid #0000;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border:2px solid #000;border:2px solid var(--input-hover-border-color)}.annotationLayer .buttonWidgetAnnotation.checkBox input:hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .textWidgetAnnotation :is(input,textarea):hover{border-radius:2px}.annotationLayer .choiceWidgetAnnotation select:focus,.annotationLayer .textWidgetAnnotation :is(input,textarea):focus{background:none;border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-color:initial;background-image:none}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid Highlight;border:2px solid var(--input-focus-border-color);outline:1px solid Canvas;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{font-size:calc(9px*var(--scale-factor));min-width:calc(180px*var(--scale-factor));pointer-events:none;position:absolute;width:100%}.annotationLayer .popup{word-wrap:break-word;background-color:#ff9;border-radius:calc(2px*var(--scale-factor));box-shadow:0 calc(2px*var(--scale-factor)) calc(5px*var(--scale-factor)) #888;cursor:pointer;font:message-box;margin-left:calc(5px*var(--scale-factor));max-width:calc(180px*var(--scale-factor));padding:calc(6px*var(--scale-factor));pointer-events:auto;position:absolute;white-space:normal}.annotationLayer .popup>*{font-size:calc(9px*var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px*var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid #333;margin-top:calc(2px*var(--scale-factor));padding-top:calc(2px*var(--scale-factor))}.annotationLayer .richText>*{font-size:calc(9px*var(--scale-factor));white-space:pre-wrap}.annotationLayer .caretAnnotation,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .fileAttachmentAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .highlightAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .lineAnnotation svg line,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .squareAnnotation svg rect,.annotationLayer .squigglyAnnotation,.annotationLayer .stampAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .underlineAnnotation{cursor:pointer}.annotationLayer section svg{height:100%;left:0;position:absolute;top:0;width:100%}.annotationLayer .annotationTextContent{color:#0000;height:100%;opacity:0;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.annotationLayer .annotationTextContent span{display:inline-block;width:100%}:root{--react-pdf-text-layer:1;--highlight-bg-color:#b400aa;--highlight-selected-bg-color:#006400}@media screen and (forced-colors:active){:root{--highlight-bg-color:Highlight;--highlight-selected-bg-color:ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translateX(-100%)}.textLayer{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;inset:0;line-height:1;overflow:hidden;position:absolute;text-align:left;text-align:initial;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:#0000;cursor:text;margin:0;position:absolute;transform-origin:0 0;white-space:pre}.textLayer span.markedContent{height:0;top:0}.textLayer .highlight{background-color:#b400aa;background-color:var(--highlight-bg-color);border-radius:4px;margin:-1px;padding:1px}.textLayer .highlight.appended{position:static}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:#006400;background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:#0000}.textLayer .endOfContent{cursor:default;display:block;inset:100% 0 0;position:absolute;-webkit-user-select:none;user-select:none;z-index:-1}.textLayer .endOfContent.active{top:0}.classroom{background:#f5f5f5;min-height:100vh;overflow-x:hidden;width:100%}.classroom-content{height:calc(100vh - 80px);width:100%}.classroom-content,.classroom-main{box-sizing:border-box;display:flex;overflow-x:hidden}.classroom-main{flex:1 1;flex-direction:column;min-width:0;overflow-y:auto;padding:1rem}.videos-section{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem;overflow-x:hidden}.video-container,.videos-section{box-sizing:border-box;max-width:100%;width:100%}.video-container{background:#000;border-radius:10px;overflow:hidden;position:relative}.video-container h3{background:#00000080;border-radius:5px;color:#fff;font-size:.9rem;left:10px;padding:.5rem;position:absolute;top:10px;z-index:1}.video-player{box-sizing:border-box;height:200px;max-width:100%;object-fit:cover;width:100%}.video-controls{bottom:10px;display:flex;gap:.5rem;position:absolute;right:10px;z-index:2}.video-control-button{align-items:center;background:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:background .2s;width:32px}.video-control-button:hover{background:#000c}.video-control-button svg{height:20px;width:20px}.video-control-button.disabled{background:#0009}.video-control-button.disabled:hover{background:#000c}.pdf-viewer{background:#fff;border-radius:10px;box-sizing:border-box;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:1rem;width:100%}.pdf-viewer h3{color:#333;margin-bottom:1rem}.pdf-container{box-sizing:border-box;flex:1 1;flex-direction:column;max-width:100%;min-height:0;overflow:hidden}.pdf-container,.pdf-controls{align-items:center;display:flex;width:100%}.pdf-controls{flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem}.pdf-controls-left{align-items:center;display:flex;gap:1rem}.pdf-controls-right{align-items:center;display:flex;gap:.5rem}.pdf-controls button{align-items:center;background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:40px;justify-content:center;padding:.5rem;position:relative;white-space:nowrap;width:40px}.pdf-controls button:hover{background:#5568d3}.pdf-controls button.active{background:#28a745}.pdf-controls button:disabled{background:#ccc;cursor:not-allowed}.drawing-tool-wrapper{align-items:center;display:flex;gap:.5rem}.drawing-tool-wrapper button{position:relative}.color-picker-button{align-items:center;background:#667eea;border:none;border-radius:5px;box-sizing:border-box;cursor:pointer;display:flex;height:40px;justify-content:center;margin:0;overflow:visible;padding:4px;position:relative;width:40px}.color-picker-button:hover{background:#5568d3}.color-picker-hidden{border:none;cursor:pointer;height:100%;left:0;margin:0;opacity:0;padding:0;position:absolute;top:0;width:100%;z-index:2}.color-picker-preview{border-radius:3px;box-sizing:border-box;flex-shrink:0;height:100%;width:100%}.line-width-slider{cursor:pointer;height:40px;margin:0;width:80px}.pdf-wrapper{background:#f5f5f5;border-radius:5px;flex:1 1;min-height:400px;overflow:hidden;position:relative;width:100%}.pdf-wrapper.eraser-active:after{border:1px solid #000c;border-radius:50%;box-shadow:0 0 2px #0000004d;content:"";height:20px;height:var(--eraser-size,20px);left:0;left:var(--mouse-x,0);pointer-events:none;position:absolute;top:0;top:var(--mouse-y,0);transform:translate(-50%,-50%);width:20px;width:var(--eraser-size,20px);z-index:100}.pdf-background{pointer-events:none}.pdf-placeholder{color:#999;padding:3rem;text-align:center}.pdf-document{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;overflow-x:hidden;width:100%}.pdf-document canvas{height:auto!important;max-width:100%!important}.pdf-document .react-pdf__Page,.pdf-document .react-pdf__Page__canvas,.pdf-document canvas{display:block!important;opacity:1!important;visibility:visible!important}.pdf-document .react-pdf__Page__canvas{height:auto!important;max-width:100%!important}.pdf-background{left:0;position:absolute;top:0;z-index:1}.pdf-wrapper canvas{left:0;pointer-events:auto;position:absolute;top:0;z-index:10}.pdf-wrapper .react-pdf__Page,.pdf-wrapper .react-pdf__Page__canvas{display:block!important;margin:0 auto;opacity:1!important;position:relative!important;visibility:visible!important;z-index:1!important}.classroom-sidebar{background:#fff;border-left:1px solid #ddd;box-sizing:border-box;display:flex;flex-direction:column;max-width:300px;min-width:300px;overflow-x:hidden;overflow-y:auto;width:300px}.chat-section,.files-section{border-bottom:1px solid #eee;box-sizing:border-box;overflow-x:hidden;padding:1rem;width:100%}.chat-section h3,.files-section h3{color:#333;font-size:.9rem;margin-bottom:.75rem}.file-upload{margin-bottom:.75rem}.btn-upload{align-items:center;background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.5rem;justify-content:center;padding:.5rem .75rem;text-align:center;transition:all .2s;width:100%}.btn-upload:hover{background:#5568d3;box-shadow:0 2px 4px #667eea4d;transform:translateY(-1px)}.files-list{box-sizing:border-box;max-height:200px;overflow-x:hidden;overflow-y:auto;width:100%}.files-empty{color:#999;font-size:.85rem;margin:0;padding:.75rem;text-align:center}.file-item{word-wrap:break-word;align-items:center;background:#f5f5f5;border:1px solid #0000;border-radius:6px;box-sizing:border-box;cursor:pointer;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.4rem;max-width:100%;overflow-wrap:break-word;padding:.5rem .75rem;transition:all .2s;word-break:break-word}.file-item:hover{background:#e9ecef;border-color:#dee2e6}.file-item.active{background:#667eea;border-color:#5568d3;color:#fff}.file-name{flex:1 1;font-size:.85rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-delete-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:20px;justify-content:center;line-height:1;opacity:.7;padding:0;transition:all .2s;width:20px}.file-item:hover .file-delete-btn{opacity:1}.file-item.active .file-delete-btn{background:#fff3;color:#fff}.file-delete-btn:hover{background:#dc354533;color:#dc3545;transform:scale(1.1)}.file-item.active .file-delete-btn:hover{background:#ffffff4d;color:#fff}.chat-messages{background:#f9f9f9;height:300px;margin-bottom:.75rem;overflow-x:hidden;overflow-y:auto;width:100%}.chat-message,.chat-messages{border-radius:5px;box-sizing:border-box;padding:.4rem}.chat-message{word-wrap:break-word;background:#fff;font-size:.8rem;line-height:1.4;margin-bottom:.4rem;max-width:100%;overflow-wrap:break-word;word-break:break-word}.chat-message strong{color:#667eea}.chat-input{display:flex;gap:.5rem}.chat-input,.chat-input input{box-sizing:border-box;width:100%}.chat-input input{border:1px solid #ddd;border-radius:5px;flex:1 1;font-size:.85rem;min-width:0;padding:.4rem}.chat-input button{align-items:center;background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:40px;justify-content:center;padding:.5rem;width:40px}.chat-input button:hover{background:#5568d3}.chat-image-button{font-size:1rem}.chat-send-button{font-size:1.2rem;padding:0}.chat-image-container{margin-bottom:.5rem;margin-top:.5rem}.chat-image{border-radius:5px;cursor:pointer;display:block;height:200px;object-fit:cover;transition:transform .2s;width:200px}.chat-image:hover{box-shadow:0 2px 8px #0003;transform:scale(1.05)}.image-modal{background:#000000e6;cursor:pointer;height:100%;left:0;position:fixed;top:0;width:100%;z-index:10000}.image-modal,.image-modal-content{align-items:center;display:flex;justify-content:center}.image-modal-content{max-height:90%;max-width:90%;position:relative}.image-modal-content img{border-radius:5px;max-height:90vh;max-width:100%;object-fit:contain}.image-modal-close{align-items:center;background:#fffc;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:0;top:-40px;transition:background .2s;width:40px}.image-modal-close:hover{background:#fff}.country-phone-input-wrapper{align-items:stretch;background:#fff;border:1px solid #d1d5db;border-radius:6px;display:flex;gap:0;max-width:500px;overflow:visible;position:relative;transition:all .15s ease;width:100%}.country-phone-input-wrapper:hover{border-color:#9ca3af}.country-phone-input-wrapper:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.country-selector{flex-shrink:0;position:relative;z-index:10}.country-selector-button{align-items:center;align-self:stretch;background:#fff;border:none;border-radius:6px 0 0 6px;border-right:1px solid #e5e7eb;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;gap:.5rem;padding:.5rem .75rem;transition:all .2s;width:140px}.country-selector-button:hover:not(:disabled){background:#f5f5f5}.country-selector-button:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.country-flag{font-size:1.2rem;line-height:1}.country-code{color:#333;font-size:.9rem;font-weight:500}.country-arrow{color:#666;font-size:.7rem;margin-left:auto}.country-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 4px 12px #00000026;left:0;max-height:400px;overflow:hidden;position:absolute;top:calc(100% + 4px);width:200px;z-index:1000}.country-list{max-height:300px;overflow-y:auto}.country-item{align-items:center;border-bottom:1px solid #f5f5f5;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:background .2s}.country-item:hover{background:#f5f5f5}.country-item.selected{background:#e3f2fd}.country-item .country-flag{flex-shrink:0;font-size:1rem}.country-item .country-name{color:#333;flex:1 1;font-size:.8rem}.country-item .country-dial-code{color:#666;font-size:.75rem;font-weight:500;margin-left:auto}.country-item.no-results{color:#999;cursor:default;font-style:italic;justify-content:center}.country-item.no-results:hover{background:#0000}.phone-number-input{background:#0000;border:none!important;border-radius:0 6px 6px 0;box-sizing:border-box;color:#333!important;flex:1 1;font-family:inherit!important;font-size:.9rem!important;height:100%;line-height:normal!important;min-width:0;outline:none;padding:.5rem .75rem!important;transition:all .15s ease}.phone-number-input:disabled{background:#f5f5f5;color:#666;cursor:not-allowed}.phone-number-input::placeholder{color:#999}.phone-input-wrapper .country-phone-input-wrapper{flex:1 1;min-width:0;width:100%}.phone-input-wrapper .country-phone-input-wrapper.phone-input-disabled{background:#f5f5f5}.phone-input-wrapper .country-phone-input-wrapper.phone-input-disabled .country-selector-button,.phone-input-wrapper .country-phone-input-wrapper.phone-input-disabled .phone-number-input{background:#f5f5f5;color:#666}.country-phone-input-wrapper .phone-number-input,.phone-input-wrapper .country-phone-input-wrapper .phone-number-input{padding:.5rem .75rem!important}.settings-page{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.settings-content{flex:1 1;margin:1.5rem 0;padding:0;width:100%}.settings-container{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;margin:0 auto;min-height:600px;padding:3rem;width:60%}.settings-container .page-title{color:#333;font-size:2rem;font-weight:600;margin-bottom:2rem;margin-top:0;text-align:left}.settings-sections{display:flex;gap:2rem}.settings-sidebar{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.section-tab{background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1rem;text-align:left;transition:all .2s}.section-tab:hover{background:#f5f5f5;color:#333}.section-tab.active{background:#667eea;color:#fff}.settings-main{flex:1 1;max-width:600px}.section-title{color:#333;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;margin-top:0}.subsection-title{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:1.5rem}.settings-form{gap:1rem}.form-group,.settings-form{display:flex;flex-direction:column}.form-group{gap:.25rem}.form-group label{color:#333;font-size:.9rem;font-weight:500}.form-group input:not(.phone-number-input),.form-group select,.form-group textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#333;font-family:inherit;font-size:.9rem;max-width:500px;padding:.5rem .75rem;transition:all .15s ease}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#9ca3af}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:#9ca3af}.form-textarea{min-height:80px;resize:vertical}.form-select{cursor:pointer}.form-divider{background:#e5e7eb;height:1px;margin:1.5rem 0;max-width:500px}.avatar-upload{align-items:center;display:flex;gap:1rem;max-width:500px}.avatar-controls{display:flex;flex-direction:column;gap:.5rem}.avatar-preview{border:2px solid #e5e7eb;border-radius:50%;height:80px;object-fit:cover;width:80px}.avatar-input{display:none}.avatar-label{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;display:inline-block;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.avatar-label:hover{background:#e5e7eb;border-color:#9ca3af}.notification-group{display:flex;flex-direction:column;gap:1.5rem;max-width:500px}.notification-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.notification-info{flex:1 1}.notification-label{color:#333;cursor:pointer;display:block;font-size:.95rem;font-weight:500;margin-bottom:.25rem}.notification-description{color:#6b7280;font-size:.85rem;margin:0}.toggle-switch{cursor:pointer;display:inline-block;height:24px;position:relative;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:24px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background-color:#667eea}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.message{border-radius:6px;font-size:.9rem;max-width:500px;padding:.75rem 1rem;text-align:left}.message-success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.message-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.btn-submit{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1.5rem;transition:background .2s;width:-webkit-fit-content;width:fit-content}.btn-submit:hover:not(:disabled){background:#5568d3}.btn-submit:disabled{background:#ccc;cursor:not-allowed}.phone-input-wrapper{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;width:100%}.phone-input-disabled{background:#f5f5f5;color:#666;cursor:not-allowed}.btn-edit-phone{background:#fff;border:1px solid #667eea;border-radius:6px;color:#667eea;cursor:pointer;font-size:.85rem;font-weight:500;padding:.4rem .75rem;transition:all .2s;white-space:nowrap}.btn-edit-phone:hover{background:#f5f5f5;border-color:#5568d3;color:#5568d3}.verified-badge{color:#10b981;font-size:.85rem;font-weight:500;white-space:nowrap}.phone-verification{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-top:1rem;padding:1rem}.phone-verification-send{display:flex;flex-direction:column;gap:.75rem}.btn-send-phone-code{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;width:-webkit-fit-content;width:fit-content}.btn-send-phone-code:hover:not(:disabled){background:#5568d3}.btn-send-phone-code:disabled{background:#ccc;cursor:not-allowed}.verification-hint{color:#666;font-size:.85rem;margin:0 0 .75rem}.phone-code-inputs{display:flex;gap:.5rem;margin-bottom:.75rem}.phone-code-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#333;font-size:1.2rem;font-weight:600;height:50px;text-align:center;transition:all .2s;width:45px}.phone-code-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.phone-verification-error{color:#dc3545;font-size:.85rem;margin-bottom:.75rem}.phone-verification-actions{display:flex;gap:.5rem}.btn-resend-phone,.btn-verify-phone{border:1px solid #d1d5db;border-radius:6px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s}.btn-verify-phone{background:#667eea;border-color:#667eea;color:#fff}.btn-verify-phone:hover:not(:disabled){background:#5568d3}.btn-verify-phone:disabled{background:#ccc;border-color:#ccc;cursor:not-allowed}.btn-resend-phone{background:#fff;color:#333}.btn-resend-phone:hover:not(:disabled){background:#f5f5f5}.btn-resend-phone:disabled{background:#f5f5f5;cursor:not-allowed}@media (max-width:768px){.settings-sections{flex-direction:column}.settings-sidebar{flex-direction:row;min-width:auto;overflow-x:auto}.section-tab{white-space:nowrap}}.home-page{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.home-main{flex:1 1;margin:1.5rem 0;padding:0;width:100%}.home-container{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;box-sizing:border-box;display:flex;justify-content:center;margin:0 auto;min-height:400px;padding:4rem 3rem;width:60%}.home-hero{margin:0 auto;max-width:600px;text-align:center}.home-title{color:#333;font-size:3rem;font-weight:700;line-height:1.2;margin-bottom:1.5rem}.title-rose{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,#f68695 0,#f68695);-webkit-background-clip:text;background-clip:text}.home-description{color:#666;font-size:1.25rem;line-height:1.6;margin-bottom:3rem}.home-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-login{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#333;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;min-width:220px;padding:1rem 2rem;text-decoration:none;transition:all .2s}.btn-login:hover{background:#f5f5f5;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-2px)}.btn-primary:hover{box-shadow:0 4px 8px #667eea4d}@media (max-width:768px){.home-container{padding:3rem 2rem;width:90%}.home-title{font-size:2rem}.home-description{font-size:1.1rem}.home-buttons{flex-direction:column}.btn-login{min-width:auto;width:100%}}.error-page{background:#f5f5f5;display:flex;flex-direction:column;min-height:100vh}.error-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:2rem}.error-content{max-width:600px;text-align:center}.error-code{font-size:8rem;font-weight:700;line-height:1}.error-code,.error-title{color:#000;margin-bottom:1rem}.error-title{font-size:2.5rem;font-weight:600}.error-description{color:#666;font-size:1.25rem;line-height:1.6;margin-bottom:2.5rem}.error-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-primary{background:#667eea;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:background .2s,transform .2s}.btn-primary:hover{background:#5568d3;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #667eea;border-radius:5px;color:#667eea;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:background .2s,transform .2s}.btn-secondary:hover{background:#f0f0f0;transform:translateY(-2px)}@media (max-width:768px){.error-code{font-size:5rem}.error-title{font-size:2rem}.error-description{font-size:1rem}}.App{min-height:100vh}
/*# sourceMappingURL=main.10237287.css.map*/