*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;width:100%;min-width:0;min-height:100%;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;direction:rtl;width:100%;min-width:0;min-height:100vh;margin:0;padding:0;font-family:Tahoma,Arial,sans-serif;overflow-x:hidden}#root{width:100%;min-width:0;min-height:100vh;text-align:initial;margin:0;padding:0}img,svg,video,canvas{max-width:100%}button,input,select,textarea{font:inherit}@media screen and (width<=760px){input,select,textarea{font-size:16px}}*{box-sizing:border-box;margin:0;padding:0}:root{--purple:#6f4cc3;--purple-dark:#4d3289;--purple-deep:#392267;--purple-light:#8c6bd8;--purple-soft:#f0ebfb;--purple-ultra-soft:#f8f6fd;--yellow:#f4c542;--yellow-dark:#dcae23;--yellow-light:#fff4c4;--yellow-soft:#fff9e8;--navy:#4d3289;--navy-light:#6547a6;--background:#f7f5fb;--white:#fff;--text:#292535;--muted:#787386;--border:#e8e3f0;--border-dark:#d9d1e8;--success:#198754;--success-bg:#e8f7ef;--danger:#c73a4a;--danger-bg:#fdebed;--warning:#a56b00;--warning-bg:#fff5d6;--info:#4d52b8;--info-bg:#eeefff;--shadow-small:0 3px 12px #432d690f;--shadow:0 8px 28px #432d6917;--shadow-large:0 20px 50px #34225429;--radius-small:9px;--radius:14px;--radius-large:20px}html{scroll-behavior:smooth;direction:rtl}body{background:linear-gradient(145deg, #fbfaff 0%, var(--background) 45%, #f4f0fb 100%);min-width:320px;color:var(--text);font-family:Vazirmatn,IRANSansX,IRANSans,Tahoma,Arial,sans-serif;line-height:1.7}button,input,select,textarea{font-family:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{transition:background-color .2s,color .2s,border-color .2s,transform .15s,box-shadow .2s,opacity .2s}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit}.app{direction:rtl;min-height:100vh;display:flex}.sidebar{z-index:1000;color:#fff;background:linear-gradient(180deg, var(--purple-deep) 0%, var(--purple-dark) 50%, #5b3a9b 100%);flex-direction:column;width:270px;height:100vh;padding:22px 17px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden auto;box-shadow:-5px 0 30px #34225429}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:#ffffff2e;border-radius:20px}.sidebar-brand{border-bottom:1px solid #ffffff1c;align-items:center;gap:12px;padding:7px 6px 20px;display:flex}.sidebar-brand-mark{background:linear-gradient(135deg, #ffd95a, var(--yellow));width:48px;height:48px;color:var(--purple-deep);border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;font-size:24px;font-weight:900;display:flex;box-shadow:0 7px 18px #f4c54238}.sidebar-brand h2{color:#fff;margin:0;font-size:20px;font-weight:900;line-height:1.4}.sidebar-brand p{color:#ffffffa1;margin-top:2px;font-size:11px}.sidebar-user-wrapper{margin:18px 0 4px;position:relative}.sidebar-user{color:#fff;cursor:pointer;text-align:right;background:#ffffff13;border:1px solid #ffffff1a;border-radius:14px;align-items:center;gap:10px;width:100%;padding:11px;display:flex}.sidebar-user:hover{background:#ffffff1f;border-color:#ffffff29}.sidebar-user-avatar{background:var(--yellow);width:39px;height:39px;color:var(--purple-deep);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:900;display:flex}.sidebar-user-info{flex-direction:column;flex:1;min-width:0;line-height:1.5;display:flex}.sidebar-user-info span{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.sidebar-user-info small{color:var(--yellow);font-size:11px}.sidebar-user-arrow{color:#ffffffb3;font-size:9px}.sidebar-user-menu{z-index:20;background:#fff;border-radius:12px;padding:6px;position:absolute;top:calc(100% + 7px);left:0;right:0;overflow:hidden;box-shadow:0 14px 35px #1c103040}.sidebar-user-menu button{width:100%;color:var(--purple-dark);text-align:right;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px 11px;font-size:13px;font-weight:700}.sidebar-user-menu button:hover{background:var(--purple-soft)}.sidebar-user-menu .sidebar-menu-logout{color:#bd3042}.sidebar-user-menu .sidebar-menu-logout:hover{background:#fdecee}.sidebar nav{flex-direction:column;flex:1;gap:5px;margin-top:18px;display:flex}.sidebar nav a{color:#ffffffd4;border-radius:11px;align-items:center;min-height:43px;padding:10px 14px;font-size:14px;font-weight:600;text-decoration:none;transition:background .2s,color .2s,transform .15s;display:flex;position:relative}.sidebar nav a:visited{color:#ffffffd4}.sidebar nav a:hover{color:#fff;background:#ffffff16;transform:translate(-2px)}.sidebar nav a.active{background:linear-gradient(135deg, var(--yellow), #ffd85a);color:var(--purple-deep);font-weight:900;box-shadow:0 6px 15px #f4c54229}.sidebar nav a.active:before{content:"";background:var(--purple-dark);border-radius:20px;width:4px;height:18px;position:absolute;right:6px}.sidebar-footer{text-align:center;border-top:1px solid #ffffff1a;flex-direction:column;margin-top:18px;padding-top:16px;display:flex}.sidebar-footer span{color:#ffffff73;font-size:10px}.sidebar-footer strong{color:var(--yellow);font-size:12px}.logout-button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:11px;width:100%;margin-top:18px;padding:10px 13px}.logout-button:hover{background:#ffffff1a}.content{flex:1;min-width:0;margin-right:270px;padding:30px 32px 45px}.mobile-topbar{display:none}header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px;display:flex}header h1{color:var(--purple-dark);letter-spacing:-.4px;margin-bottom:3px;font-size:27px;font-weight:900}header p{color:var(--muted);font-size:13px}.profile{border:1px solid var(--border);border-right:4px solid var(--yellow);background:var(--white);color:var(--purple-dark);box-shadow:var(--shadow-small);border-radius:12px;padding:10px 15px}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:25px;display:grid}.card{background:var(--white);min-height:128px;box-shadow:var(--shadow);border:1px solid #6f4cc317;border-radius:17px;padding:20px;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg, var(--yellow), var(--purple-light));width:100%;height:4px;position:absolute;top:0;right:0}.card:after{content:"";background:#6f4cc30b;border-radius:50%;width:85px;height:85px;position:absolute;top:-26px;left:-24px}.card h3{z-index:1;color:var(--muted);margin-bottom:12px;font-size:13px;font-weight:700;position:relative}.card strong{z-index:1;color:var(--purple-dark);font-size:29px;font-weight:900;position:relative}.panel{box-shadow:var(--shadow);background:#fffffff7;border:1px solid #6f4cc314;border-radius:17px;margin-bottom:20px;padding:22px}.panel h2{color:var(--purple-dark);margin-bottom:18px;padding-right:13px;font-size:19px;font-weight:900;position:relative}.panel h2:before{content:"";background:var(--yellow);border-radius:10px;width:4px;height:21px;position:absolute;top:4px;right:0}.panel h3{color:var(--purple-dark);margin-top:15px;margin-bottom:12px;font-size:15px}.panel>p{color:var(--muted);font-size:13px}.activity{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:14px 2px;display:flex}.activity:last-child{border-bottom:none}.activity span:first-child{color:var(--purple-dark);font-weight:800}.activity span:last-child{color:var(--muted)}.primary-action-button,.save-grade-button,.save-edit-button,.save-class-attendance-button{background:linear-gradient(135deg, var(--yellow), #ffd75a);min-height:42px;color:var(--purple-deep);cursor:pointer;border:none;border-radius:11px;padding:9px 17px;font-size:13px;font-weight:900;box-shadow:0 5px 14px #f4c54229}.primary-action-button:hover,.save-grade-button:hover,.save-edit-button:hover,.save-class-attendance-button:hover{background:linear-gradient(135deg,#ffd44f,#f5bd25);transform:translateY(-1px);box-shadow:0 7px 18px #f4c5423b}.primary-action-button:disabled,.save-grade-button:disabled,.save-edit-button:disabled,.save-class-attendance-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.cancel-edit-button{border:1px solid var(--border-dark);min-height:40px;color:var(--muted);cursor:pointer;background:#fff;border-radius:10px;padding:8px 14px;font-weight:700}.cancel-edit-button:hover{border-color:var(--purple-light);background:var(--purple-ultra-soft);color:var(--purple-dark)}.edit-grade-button,.teacher-edit-button{background:var(--purple-soft);color:var(--purple-dark);cursor:pointer;border:1px solid #dcd4f2;border-radius:9px;padding:8px 13px;font-weight:800}.edit-grade-button:hover,.teacher-edit-button:hover{background:#e6ddfa;border-color:#cdbfee}.send-sms-button{background:var(--purple-dark);color:#fff;cursor:pointer;border:none;border-radius:9px;padding:8px 13px;font-weight:800}.send-sms-button:hover{background:var(--purple-deep)}.send-sms-button:disabled{opacity:.5;cursor:not-allowed}.teacher-disable-button{background:var(--danger-bg);color:var(--danger);cursor:pointer;border:none;border-radius:9px;padding:8px 13px;font-weight:800}.teacher-enable-button{background:var(--success-bg);color:var(--success);cursor:pointer;border:none;border-radius:9px;padding:8px 13px;font-weight:800}.teacher-disable-button:hover,.teacher-enable-button:hover{filter:brightness(.97)}.form-group{margin-bottom:17px}.form-group label{color:var(--purple-dark);margin-bottom:7px;font-size:13px;font-weight:800;display:block}.form-group input,.form-group select,.form-group textarea,.student-create-form input,.student-create-form select,.clean-grade-form input,.clean-grade-form select,.report-filter-grid input,.report-filter-grid select,.ranking-filter-grid input,.ranking-filter-grid select,.student-report-selector select,.attendance-class-selector select,.edit-grade-box input,.edit-grade-box select{border:1px solid var(--border-dark);width:100%;min-height:45px;color:var(--text);background:#fff;border-radius:10px;outline:none;padding:0 12px;font-size:13px;transition:border-color .2s,box-shadow .2s,background .2s}.form-group textarea{padding-top:10px;padding-bottom:10px}.form-group input:hover,.form-group select:hover,.student-create-form input:hover,.student-create-form select:hover{border-color:#cbbfe4}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.student-create-form input:focus,.student-create-form select:focus,.clean-grade-form input:focus,.clean-grade-form select:focus,.report-filter-grid input:focus,.report-filter-grid select:focus,.ranking-filter-grid input:focus,.ranking-filter-grid select:focus,.student-report-selector select:focus,.attendance-class-selector select:focus,.edit-grade-box input:focus,.edit-grade-box select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6f4cc31c}input::placeholder,textarea::placeholder{color:#aaa5b2}.login-page{background:radial-gradient(circle at 15% 15%, #f4c54229, transparent 28%), radial-gradient(circle at 85% 80%, #9b78dd40, transparent 30%), linear-gradient(135deg, var(--purple-deep), var(--purple-dark), #7651ba);direction:rtl;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{width:100%;max-width:420px;box-shadow:var(--shadow-large);background:#fffffff7;border:1px solid #ffffffb3;border-radius:23px;padding:38px;position:relative;overflow:hidden}.login-card:before{content:"";background:linear-gradient(90deg, var(--purple), var(--yellow), var(--purple));height:5px;position:absolute;top:0;left:0;right:0}.login-brand{text-align:center;margin-bottom:27px}.login-brand h1{color:var(--purple-dark);margin-bottom:5px;font-size:26px;font-weight:900}.login-brand p{color:var(--muted);font-size:13px}.login-button{background:linear-gradient(135deg, var(--yellow), #ffd85a);width:100%;height:48px;color:var(--purple-deep);cursor:pointer;border:none;border-radius:11px;margin-top:5px;font-size:15px;font-weight:900;box-shadow:0 7px 18px #f4c5422e}.login-button:hover{transform:translateY(-1px);box-shadow:0 9px 24px #f4c54240}.login-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-error{background:var(--danger-bg);color:var(--danger);border:1px solid #f7c6cc;border-radius:9px;margin-bottom:15px;padding:10px 12px;font-size:13px}.grade-success{background:var(--success-bg);color:#13643f;border:1px solid #bde9d0;border-radius:11px;margin-bottom:16px;padding:12px 16px;font-size:13px;font-weight:700}.error-message{color:var(--danger)}.student-create-form{grid-template-columns:repeat(2,minmax(220px,1fr));gap:15px;margin-top:18px;display:grid}.student-create-form .form-group{flex-direction:column;gap:6px;margin-bottom:0;display:flex}.student-create-form label{color:var(--purple-dark);font-size:13px;font-weight:800}.student-form-actions{grid-column:1/-1;gap:9px;margin-top:3px;display:flex}.students-list{flex-direction:column;display:flex}.student-row{align-items:center;min-height:68px}.student-row>div{flex-direction:column;gap:2px;display:flex}.student-row strong{color:var(--purple-dark)}.student-row small{color:var(--muted);font-size:12px}.teacher-active-badge,.teacher-inactive-badge{border-radius:30px;justify-content:center;align-items:center;padding:5px 10px;font-size:11px;font-weight:900;display:inline-flex}.teacher-active-badge{background:var(--success-bg);color:var(--success)}.teacher-inactive-badge{background:var(--danger-bg);color:var(--danger)}.sms-sent-badge{background:var(--success-bg);border-radius:20px;padding:6px 10px;font-size:12px;font-weight:800;color:var(--success)!important}.teachers-list,.subjects-list,.assignments-list,.users-list,.classes-list{flex-direction:column;gap:10px;margin-top:16px;display:flex}.teacher-row,.subject-row,.assignment-row,.user-management-row,.class-management-row{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:17px;padding:15px 17px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.teacher-row:hover,.subject-row:hover,.assignment-row:hover,.user-management-row:hover,.class-management-row:hover{border-color:#d8cdef;box-shadow:0 5px 15px #4530650d}.teacher-info,.user-management-info{flex-direction:column;gap:4px;display:flex}.teacher-info strong,.subject-info strong,.assignment-main-info strong,.user-management-info strong,.class-management-info strong{color:var(--purple-dark);font-size:15px;font-weight:900}.teacher-info span,.user-management-info span{color:var(--muted);font-size:12px}.user-management-info b{color:var(--purple-dark)}.teacher-status-area,.user-management-actions,.class-management-actions,.assignment-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.subject-info{align-items:center;gap:11px;display:flex}.assignment-main-info,.class-management-info{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.assignment-main-info span,.class-management-info span{background:var(--purple-ultra-soft);color:var(--muted);border-radius:8px;padding:6px 9px;font-size:12px}.teacher-class-list,.student-select-list{flex-direction:column;gap:10px;display:flex}.teacher-class-card,.student-select-card{border:1px solid var(--border);cursor:pointer;text-align:right;background:#fff;border-radius:13px;width:100%;padding:15px 17px;transition:border-color .2s,background .2s,transform .15s,box-shadow .2s}.teacher-class-card:hover,.student-select-card:hover{background:var(--purple-ultra-soft);border-color:#d3c6ef;transform:translateY(-1px);box-shadow:0 5px 16px #432d690f}.teacher-class-card strong,.student-select-card strong{color:var(--purple-dark);font-size:15px;display:block}.teacher-class-card span,.student-select-card span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.student-select-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-open-text{background:var(--yellow);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:900;color:var(--purple-deep)!important}.selected-student-header{margin-bottom:18px}.selected-student-header h2{margin-bottom:5px}.selected-student-header p{color:var(--muted);font-size:13px}.clean-grade-form{grid-template-columns:180px 150px 1fr 130px;align-items:end;gap:12px;display:grid}.clean-grade-form .form-group{margin:0}.grade-main-info{align-items:center;gap:10px;display:flex}.grade-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.previous-grades{border-top:1px solid var(--border);margin-top:19px;padding-top:17px}.previous-grades h3{color:var(--purple-dark);margin-bottom:11px;font-size:14px}.previous-grades-list{flex-direction:column;gap:8px;display:flex}.previous-grade-item{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:10px;justify-content:space-between;gap:18px;padding:10px 13px;display:flex}.previous-grade-item>div{align-items:center;gap:10px;display:flex}.previous-grade-item strong{color:var(--purple-dark)}.previous-grade-item span{color:var(--muted);font-size:12px}.no-grade-text{color:var(--muted);font-size:13px}.edit-grade-box{grid-template-columns:160px 120px 1fr 90px 80px;align-items:center;gap:9px;width:100%;display:grid!important}.attendance-class-selector{flex-direction:column;gap:7px;max-width:330px;margin:17px 0 23px;display:flex}.attendance-student-row{border:1px solid var(--border);background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.attendance-student-info{flex-direction:column;gap:3px;display:flex}.attendance-student-info strong{color:var(--purple-dark)}.attendance-student-info span{color:var(--muted);font-size:12px}.attendance-actions{flex-wrap:wrap;gap:7px;display:flex}.attendance-actions button,.attendance-change-button{cursor:pointer;border:none;border-radius:9px;padding:8px 13px;font-size:12px;font-weight:900}.attendance-present-button{background:var(--success-bg);color:var(--success)}.attendance-absent-button{background:var(--danger-bg);color:var(--danger)}.attendance-leave-button{background:var(--warning-bg);color:var(--warning)}.attendance-change-button{background:var(--info-bg);color:var(--info)}.attendance-actions button:hover,.attendance-change-button:hover{filter:brightness(.97)}.attendance-actions button:disabled{opacity:.45;cursor:not-allowed}.attendance-selected{box-shadow:inset 0 0 0 2px}.attendance-not-registered{background:#f2f0f5;border-radius:20px;padding:5px 9px;font-weight:800;color:var(--muted)!important;font-size:11px!important}.attendance-status{border-radius:20px;width:fit-content;padding:5px 9px;font-size:11px;font-weight:900}.attendance-status-Present{background:var(--success-bg);color:var(--success)}.attendance-status-Absent{background:var(--danger-bg);color:var(--danger)}.attendance-status-EarlyLeave{background:var(--warning-bg);color:var(--warning)}.attendance-history-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(180px,1fr) 130px 120px auto;align-items:center;gap:11px;padding:13px 15px;display:grid}.attendance-history-row>div:first-child{flex-direction:column;gap:3px;display:flex}.attendance-history-row>div:first-child span{color:var(--muted);font-size:12px}.attendance-bulk-toolbar{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:15px;margin:17px 0;padding:13px 15px;display:flex}.attendance-summary{flex-wrap:wrap;gap:8px;display:flex}.attendance-summary span{color:var(--muted);background:#f0eef4;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:900}.attendance-summary .summary-present{background:var(--success-bg);color:var(--success)}.attendance-summary .summary-absent{background:var(--danger-bg);color:var(--danger)}.mark-all-present-button{background:var(--success-bg);color:var(--success);cursor:pointer;border:1px solid #bae5ca;border-radius:9px;padding:8px 13px;font-weight:800}.mark-all-present-button:hover{background:#daf3e4}.attendance-toggle{gap:7px;display:flex}.attendance-save-area{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:17px;margin-top:19px;padding:15px 17px;display:flex}.attendance-completed{background:var(--success-bg);color:var(--success);border:1px solid #bde9d0;border-radius:10px;margin-top:17px;padding:13px 15px;font-weight:800}.early-leave-panel textarea{resize:vertical;border:1px solid var(--border-dark);border-radius:10px;outline:none;width:100%;min-height:90px;margin-top:7px;padding:11px}.early-leave-panel textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #6f4cc31a}.report-filter-grid,.ranking-filter-grid{grid-template-columns:repeat(3,1fr);align-items:end;gap:16px;margin-top:19px;display:grid}.report-filter-grid .form-group,.ranking-filter-grid .form-group{flex-direction:column;gap:6px;margin-bottom:0;display:flex}.report-filter-grid label,.ranking-filter-grid label,.student-report-selector label{color:var(--purple-dark);font-size:13px;font-weight:800}.report-filter-actions{grid-column:1/-1;align-items:center;gap:9px;margin-top:4px;display:flex}.report-summary-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:19px 0;display:grid}.report-summary-card{border:1px solid var(--border);min-height:102px;box-shadow:var(--shadow-small);background:#fff;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:16px;display:flex}.report-summary-present{border-top:4px solid #3cb371}.report-summary-absent{border-top:4px solid #d95362}.report-summary-leave{border-top:4px solid #e5a91c}.report-table-wrapper{border:1px solid var(--border);border-radius:12px;width:100%;margin-top:17px;overflow-x:auto}.report-table{border-collapse:collapse;width:100%;min-width:700px}.report-table th,.report-table td{text-align:right;border-bottom:1px solid var(--border);padding:12px 11px}.report-table th{background:var(--purple-ultra-soft);color:var(--purple-dark);font-size:12px;font-weight:900}.report-table td{color:#575161;font-size:12px}.report-present{background:var(--success-bg);color:var(--success)}.report-absent{background:var(--danger-bg);color:var(--danger)}.report-early-leave{background:var(--warning-bg);color:var(--warning)}.report-section-description{color:var(--muted);margin:7px 0 18px;font-size:13px}.student-report-selector{align-items:end;gap:11px;margin-bottom:22px;display:flex}.student-report-selector .form-group{flex-direction:column;flex:1;gap:6px;max-width:420px;margin-bottom:0;display:flex}.student-report-selector button{min-width:130px;min-height:45px}.student-summary-area{margin-top:22px}.student-summary-header strong{color:var(--purple-dark);font-size:15px}.student-performance-grid{grid-template-columns:repeat(3,1fr)}.ranking-top-badge{background:var(--yellow-light);color:#936c00;border:1px solid var(--yellow)}table{border-collapse:collapse;background:#fff;width:100%}table th,table td{border-bottom:1px solid var(--border);text-align:right;padding:12px;font-size:12px}table th{color:var(--purple-dark);background:var(--purple-ultra-soft);font-weight:900}@media (width<=1100px){.cards,.report-summary-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=950px){.content{padding:25px 23px 40px}.clean-grade-form{grid-template-columns:1fr 1fr}.clean-description{grid-column:1/-1}.edit-grade-box,.report-filter-grid,.ranking-filter-grid{grid-template-columns:1fr 1fr}}@media (width<=760px){body{background:var(--background)}.app{display:block}.sidebar{z-index:1000;width:86vw;max-width:300px;height:100dvh;transition:transform .28s;position:fixed;top:0;right:0;overflow:hidden auto;transform:translate(110%);box-shadow:-12px 0 40px #27194040}.sidebar.sidebar-open{transform:translate(0,0)}.sidebar-overlay{z-index:999;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#180f2578;border:none;width:100%;height:100dvh;margin:0;padding:0;position:fixed;inset:0}.content{width:100%;min-width:0;max-width:100%;margin-right:0;padding:15px 14px 32px;overflow-x:hidden}.mobile-topbar{border:1px solid var(--border);min-height:60px;box-shadow:var(--shadow-small);background:#fffffff5;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:-2px -1px 20px;padding:8px 12px;display:flex}.mobile-topbar>div{flex-direction:column;display:flex}.mobile-topbar strong{color:var(--purple-dark);font-size:15px}.mobile-topbar span{color:var(--muted);font-size:10px}.mobile-menu-button{background:var(--purple-soft);width:42px;height:42px;color:var(--purple-dark);cursor:pointer;border:none;border-radius:11px;font-size:21px}header{align-items:flex-start;gap:12px}header h1{font-size:22px}header p,.profile{font-size:12px}.panel{border-radius:14px;padding:17px}.card{min-height:110px;padding:17px}.card strong{font-size:24px}.student-create-form{grid-template-columns:1fr}.student-form-actions{flex-direction:column;grid-column:auto}.student-form-actions button{width:100%}.activity,.teacher-row,.subject-row,.assignment-row,.user-management-row,.class-management-row{flex-direction:column;align-items:stretch}.student-row{gap:9px}.teacher-status-area,.user-management-actions,.class-management-actions,.assignment-actions{width:100%}.teacher-status-area button,.user-management-actions button,.class-management-actions button,.assignment-actions button{flex:1}.assignment-main-info{flex-direction:column;align-items:flex-start}.subject-info,.class-management-info{justify-content:space-between}.attendance-student-row{flex-direction:column;align-items:stretch}.attendance-actions{width:100%}.attendance-actions button{flex:1}.attendance-history-row{grid-template-columns:1fr}.attendance-bulk-toolbar,.attendance-save-area{flex-direction:column;align-items:stretch}.save-class-attendance-button,.attendance-toggle{width:100%}.attendance-toggle button{flex:1}.previous-grade-item{flex-direction:column;gap:6px}.previous-grade-item>div{flex-wrap:wrap}.student-report-selector{flex-direction:column;align-items:stretch}.student-report-selector .form-group{max-width:none}.student-report-selector button{width:100%}.student-summary-header{flex-direction:column;align-items:flex-start}.student-performance-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){header{flex-direction:column}header>div:last-child{width:100%}header .primary-action-button{flex:1}.cards{grid-template-columns:1fr 1fr;gap:10px}.report-filter-grid,.ranking-filter-grid{grid-template-columns:1fr}.report-summary-grid{grid-template-columns:1fr 1fr;gap:9px}.report-filter-actions{flex-direction:column;align-items:stretch}.report-filter-actions button{width:100%}.clean-grade-form{grid-template-columns:1fr}.clean-description{grid-column:auto}.edit-grade-box{grid-template-columns:1fr}.student-select-card{align-items:flex-start}}@media (width<=430px){.content{padding:12px 10px 28px}.mobile-topbar{gap:8px;margin-bottom:17px;padding:8px 10px}.mobile-topbar strong{font-size:14px}.mobile-topbar span{font-size:9px}.mobile-menu-button{flex-shrink:0;width:38px;height:38px;font-size:18px}.cards{grid-template-columns:1fr}.card{max-width:100%;min-height:auto;overflow:hidden}.report-summary-grid,.student-performance-grid{grid-template-columns:1fr}.panel{max-width:100%;padding:15px;overflow:hidden}header h1{font-size:20px}header p{font-size:11px}.login-card{border-radius:19px;padding:31px 20px 26px}.login-brand h1{font-size:22px}}.login-logo{background:linear-gradient(135deg, var(--yellow), #ffdc67);width:68px;height:68px;color:var(--purple-deep);border-radius:20px;justify-content:center;align-items:center;margin:0 auto 16px;font-size:31px;font-weight:900;display:flex;box-shadow:0 10px 24px #f4c54238}.login-school-type{color:var(--purple);margin-bottom:4px;font-size:12px;font-weight:800;display:inline-block}.login-footer{border-top:1px solid var(--border);text-align:center;flex-direction:column;align-items:center;gap:1px;margin-top:24px;padding-top:17px;display:flex}.login-footer span{color:var(--muted);font-size:10px}.login-footer strong{color:var(--purple-dark);font-size:11px}.login-school-logo{object-fit:contain;width:105px;height:105px;margin:0 auto 10px;display:block}@media (width<=500px){.login-school-logo{width:88px;height:88px}}.sidebar-brand-logo{background:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;padding:5px;display:flex;box-shadow:0 6px 16px #0000001f}.sidebar-brand-logo img{object-fit:contain;width:100%;height:100%;display:block}.dashboard-page{width:100%}.dashboard-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.dashboard-stat-card{align-items:center;gap:16px;display:flex}.dashboard-stat-card>div:last-child{flex:1}.dashboard-card-icon{background:var(--purple-soft);width:50px;height:50px;color:var(--purple-dark);border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:900;display:flex}.dashboard-card-icon-alert{background:var(--danger-bg);color:var(--danger)}.dashboard-alert-card:before{background:linear-gradient(90deg, #e05b68, var(--yellow))}.dashboard-panel-header{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:10px;display:flex}.dashboard-panel-header h2{margin-bottom:3px}.dashboard-panel-header p{color:var(--muted);font-size:12px}.dashboard-activity-panel{overflow:hidden}.dashboard-activity-list{flex-direction:column;display:flex}.dashboard-activity-item{justify-content:flex-start;gap:12px}.dashboard-activity-dot{background:var(--yellow);width:9px;height:9px;box-shadow:0 0 0 4px var(--yellow-light);border-radius:50%;flex-shrink:0}.dashboard-activity-content{flex-direction:column;gap:2px;display:flex}.dashboard-activity-content strong{color:var(--purple-dark);font-size:13px}.dashboard-activity-content span{color:var(--muted);font-size:12px}.dashboard-empty{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:24px;font-size:13px}.dashboard-loading{min-height:55vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.dashboard-loading-spinner{border:3px solid var(--purple-soft);border-top-color:var(--purple);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite dashboard-spin}@keyframes dashboard-spin{to{transform:rotate(360deg)}}@media (width<=600px){.dashboard-stat-card{min-height:100px}.dashboard-card-icon{width:46px;height:46px}.dashboard-panel-header{flex-direction:column}}.dashboard-page{max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:28px}.dashboard-header h1{margin-bottom:4px}.dashboard-header p{font-size:13px}.dashboard-page .cards{gap:20px;margin-bottom:30px}.dashboard-stat-card{justify-content:space-between;align-items:center;gap:18px;min-height:150px;padding:22px;display:flex}.dashboard-stat-card>div:last-child{flex-direction:column;flex:1;gap:5px;display:flex}.dashboard-stat-card h3{margin:0;font-size:14px}.dashboard-stat-card strong{font-size:34px;line-height:1.1}.dashboard-card-icon{border-radius:18px;width:58px;height:58px;font-size:18px}.dashboard-activity-panel{min-height:360px;padding:28px}.dashboard-panel-header{border-bottom:1px solid var(--border);margin-bottom:18px;padding-bottom:16px}.dashboard-panel-header h2{margin:0 0 5px}.dashboard-panel-header p{margin:0}.dashboard-activity-list{width:100%}.dashboard-activity-item{border-bottom:1px solid var(--border);align-items:flex-start;gap:14px;padding:18px 2px;display:flex}.dashboard-activity-item:last-child{border-bottom:none}.dashboard-activity-dot{flex-shrink:0;margin-top:7px}.dashboard-activity-content{flex-direction:column;flex:1;gap:4px;display:flex}.dashboard-activity-content strong{font-size:14px}.dashboard-activity-content span{font-size:13px;line-height:1.8}@media (width<=1100px){.dashboard-page .cards{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.dashboard-page .cards{grid-template-columns:1fr}.dashboard-stat-card{min-height:110px}.dashboard-activity-panel{padding:18px}.dashboard-activity-item{padding:15px 0}}.students-page{width:100%}.students-header{margin-bottom:24px}.students-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.students-header-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.students-main-action,.students-secondary-action{justify-content:center;align-items:center;gap:8px;display:inline-flex}.students-secondary-action{background:var(--purple-soft);min-height:42px;color:var(--purple-dark);cursor:pointer;border:1px solid #d8cfed;border-radius:11px;padding:9px 16px;font-size:13px;font-weight:800}.students-secondary-action:hover{background:#e8e0fa;border-color:#c9bce9}.students-success-message{margin-bottom:18px}.students-form-panel,.students-import-panel,.students-list-panel{margin-bottom:22px}.students-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.students-section-heading h2{margin-bottom:4px}.students-section-heading p{color:var(--muted);font-size:12px}.students-import-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:16px;display:grid}.students-file-picker{background:var(--purple-ultra-soft);min-height:45px;color:var(--purple-dark);cursor:pointer;border:1px dashed #cbbce9;border-radius:10px;align-items:center;gap:9px;padding:0 13px;font-size:12px;font-weight:800;display:flex;overflow:hidden}.students-file-picker:hover{background:var(--purple-soft);border-color:var(--purple)}.students-file-picker span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.students-file-picker input{display:none}.students-import-preview{border-top:1px solid var(--border);margin-top:23px;padding-top:20px}.students-preview-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.students-preview-header h3{margin:0}.students-preview-header span{background:var(--yellow-light);color:var(--purple-dark);border-radius:20px;padding:5px 10px;font-size:11px;font-weight:800}.students-table-wrapper{border:1px solid var(--border);border-radius:12px;width:100%;overflow-x:auto}.students-preview-table{min-width:680px}.students-import-actions{margin-top:18px}.students-import-errors{background:var(--danger-bg);border:1px solid #f2c6cc;border-radius:11px;margin-top:20px;padding:15px}.students-import-errors h3{color:var(--danger);margin-top:0}.students-import-error-item{margin-bottom:5px;font-size:12px}.students-import-error-item:last-child{margin-bottom:0}.students-list-heading{margin-bottom:14px}.students-list{flex-direction:column;gap:10px;display:flex}.student-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;padding:15px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.student-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.student-management-main{align-items:center;gap:13px;min-width:0;display:flex}.student-avatar{background:var(--purple-soft);width:45px;height:45px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:900;display:flex}.student-management-info{flex-direction:column;gap:5px;min-width:0;display:flex}.student-management-info>strong{color:var(--purple-dark);font-size:14px;font-weight:900}.student-meta{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.student-meta span{color:var(--muted);font-size:11px}.student-meta b{color:#575061;font-weight:700}.student-management-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;display:flex}.student-edit-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.students-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=850px){.students-import-grid{grid-template-columns:1fr}.student-management-card{flex-direction:column;align-items:stretch}.student-management-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.student-management-actions button{flex:1}}@media (width<=600px){.students-header{flex-direction:column}.students-header-actions{grid-template-columns:1fr;width:100%;display:grid}.students-header-actions button{width:100%}.student-management-main{align-items:flex-start}.student-meta{flex-direction:column;align-items:flex-start;gap:3px}.student-management-actions{grid-template-columns:1fr 1fr;display:grid}.student-management-actions .teacher-active-badge,.student-management-actions .teacher-inactive-badge{grid-column:1/-1;justify-self:start}}@media (width<=430px){.student-management-actions{grid-template-columns:1fr}.student-management-actions .teacher-active-badge,.student-management-actions .teacher-inactive-badge{grid-column:auto}}.classes-page{width:100%}.classes-page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.classes-page-header>div:first-child{flex:1}.classes-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.classes-main-action{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.classes-success{margin-bottom:18px}.classes-form-panel,.classes-list-panel{margin-bottom:22px}.classes-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.classes-section-heading h2{margin:0 0 4px}.classes-section-heading p{color:var(--muted);margin:0;font-size:12px}.classes-create-form{max-width:850px}.classes-list-heading{margin-bottom:15px}.classes-management-list{flex-direction:column;gap:10px;display:flex}.class-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.class-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.class-management-main{align-items:center;gap:13px;min-width:0;display:flex}.class-management-icon{background:var(--purple-soft);width:46px;height:46px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.class-management-info{flex-direction:column;gap:4px;min-width:0;display:flex}.class-management-info strong{color:var(--purple-dark);font-size:14px;font-weight:900}.class-management-info span{color:var(--muted);font-size:11px}.class-management-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;display:flex}.class-edit-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.classes-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=750px){.class-management-card{flex-direction:column;align-items:stretch}.class-management-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.class-management-actions button{flex:1}}@media (width<=600px){.classes-page-header{flex-direction:column;align-items:stretch;gap:16px}.classes-main-action{width:100%}.classes-create-form{grid-template-columns:1fr}.class-management-main{align-items:flex-start}.class-management-actions{grid-template-columns:1fr 1fr;display:grid}.class-management-actions .teacher-active-badge,.class-management-actions .teacher-inactive-badge{grid-column:1/-1;justify-self:start}}@media (width<=430px){.class-management-actions{grid-template-columns:1fr}.class-management-actions .teacher-active-badge,.class-management-actions .teacher-inactive-badge{grid-column:auto}}.teachers-page{width:100%}.teachers-page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.teachers-page-header>div:first-child{flex:1}.teachers-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.teachers-main-action{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px;display:inline-flex}.teachers-success{margin-bottom:18px}.teachers-form-panel,.teachers-list-panel{margin-bottom:22px}.teachers-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.teachers-section-heading h2{margin:0 0 4px}.teachers-section-heading p{color:var(--muted);margin:0;font-size:12px}.teachers-create-form{max-width:900px}.teachers-list-heading{margin-bottom:15px}.teachers-management-list{flex-direction:column;gap:10px;display:flex}.teacher-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.teacher-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.teacher-management-main{align-items:center;gap:13px;min-width:0;display:flex}.teacher-management-icon{background:var(--purple-soft);width:48px;height:48px;color:var(--purple-dark);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-management-info{flex-direction:column;gap:6px;min-width:0;display:flex}.teacher-management-info strong{color:var(--purple-dark);font-size:14px;font-weight:900}.teacher-management-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:11px;display:flex}.teacher-phone{align-items:center;gap:5px;display:inline-flex}.teacher-management-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;display:flex}.teacher-card-edit-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.teachers-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=750px){.teacher-management-card{flex-direction:column;align-items:stretch}.teacher-management-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.teacher-management-actions button{flex:1}}@media (width<=600px){.teachers-page-header{flex-direction:column;align-items:stretch;gap:16px}.teachers-main-action{width:100%}.teachers-create-form{grid-template-columns:1fr}.teacher-management-main{align-items:flex-start}.teacher-management-meta{flex-direction:column;align-items:flex-start;gap:4px}.teacher-management-actions{grid-template-columns:1fr 1fr;display:grid}.teacher-management-actions .teacher-active-badge,.teacher-management-actions .teacher-inactive-badge{grid-column:1/-1;justify-self:start}}@media (width<=430px){.teacher-management-actions{grid-template-columns:1fr}.teacher-management-actions .teacher-active-badge,.teacher-management-actions .teacher-inactive-badge{grid-column:auto}}.teachers-page-header{direction:rtl;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.teachers-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.teachers-page-header h1,.teachers-page-header p,.teachers-eyebrow{text-align:right!important}.teachers-main-action{margin-right:auto}@media (width<=600px){.teachers-page-header{flex-direction:column!important;align-items:stretch!important}.teachers-page-header>div:first-child{width:100%}.teachers-main-action{width:100%;margin-right:0}}.classes-page-header{direction:rtl;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.classes-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.classes-page-header h1,.classes-page-header p,.classes-eyebrow{text-align:right!important}.classes-main-action{margin-right:auto}@media (width<=600px){.classes-page-header{gap:16px;flex-direction:column!important;align-items:stretch!important}.classes-page-header>div:first-child{width:100%}.classes-main-action{width:100%;margin-right:0}}.subjects-page{width:100%}.subjects-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.subjects-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.subjects-page-header h1,.subjects-page-header p,.subjects-eyebrow{text-align:right!important}.subjects-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.subjects-main-action{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px;margin-right:auto;display:inline-flex}.subjects-success{margin-bottom:18px}.subjects-form-panel,.subjects-list-panel{margin-bottom:22px}.subjects-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.subjects-section-heading h2{margin:0 0 4px}.subjects-section-heading p{color:var(--muted);margin:0;font-size:12px}.subjects-create-form{max-width:700px}.subjects-list-heading{margin-bottom:15px}.subjects-management-list{flex-direction:column;gap:10px;display:flex}.subject-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.subject-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.subject-management-main{align-items:center;gap:13px;min-width:0;display:flex}.subject-management-icon{background:var(--purple-soft);width:46px;height:46px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.subject-management-info{flex-direction:column;gap:4px;min-width:0;display:flex}.subject-management-info strong{color:var(--purple-dark);font-size:14px;font-weight:900}.subject-management-info span{color:var(--muted);font-size:11px}.subject-management-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;display:flex}.subject-edit-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.subjects-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=750px){.subject-management-card{flex-direction:column;align-items:stretch}.subject-management-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.subject-management-actions button{flex:1}}@media (width<=600px){.subjects-page-header{gap:16px;flex-direction:column!important;align-items:stretch!important}.subjects-page-header>div:first-child{width:100%}.subjects-main-action{width:100%;margin-right:0}.subjects-create-form{grid-template-columns:1fr}.subject-management-main{align-items:flex-start}.subject-management-actions{grid-template-columns:1fr 1fr;display:grid}.subject-management-actions .teacher-active-badge,.subject-management-actions .teacher-inactive-badge{grid-column:1/-1;justify-self:start}}@media (width<=430px){.subject-management-actions{grid-template-columns:1fr}.subject-management-actions .teacher-active-badge,.subject-management-actions .teacher-inactive-badge{grid-column:auto}}.assignments-page{width:100%}.assignments-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.assignments-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.assignments-page-header h1,.assignments-page-header p,.assignments-eyebrow{text-align:right!important}.assignments-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.assignments-main-action{white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:8px;margin-right:auto;display:inline-flex}.assignments-success{margin-bottom:18px}.assignments-form-panel,.assignments-list-panel{margin-bottom:22px}.assignments-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.assignments-section-heading h2{margin:0 0 4px}.assignments-section-heading p{color:var(--muted);margin:0;font-size:12px}.assignments-create-form{max-width:1000px}.assignments-management-list{flex-direction:column;gap:10px;display:flex}.assignment-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;min-height:90px;padding:15px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.assignment-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.assignment-card-main{align-items:center;gap:14px;min-width:0;display:flex}.assignment-card-icon{background:var(--purple-soft);width:48px;height:48px;color:var(--purple-dark);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.assignment-card-content{flex-direction:column;gap:8px;min-width:0;display:flex}.assignment-teacher-name{color:var(--purple-dark);font-size:14px;font-weight:900}.assignment-details{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.assignment-detail-chip,.assignment-time-chip{background:var(--purple-ultra-soft);color:var(--muted);border-radius:7px;align-items:center;gap:4px;padding:5px 8px;font-size:10px;display:inline-flex}.assignment-detail-chip strong,.assignment-time-chip strong{color:var(--purple-dark);font-weight:800}.assignment-time-chip{background:var(--yellow-light);gap:5px}.assignment-card-actions{flex-shrink:0;align-items:center;gap:7px;display:flex}.assignment-edit-button,.assignment-delete-button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.assignments-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=850px){.assignment-management-card{flex-direction:column;align-items:stretch}.assignment-card-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.assignment-card-actions button{flex:1}}@media (width<=600px){.assignments-page-header{gap:16px;flex-direction:column!important;align-items:stretch!important}.assignments-page-header>div:first-child{width:100%}.assignments-main-action{width:100%;margin-right:0}.assignments-create-form{grid-template-columns:1fr}.assignment-card-main{align-items:flex-start}.assignment-details{align-items:stretch}.assignment-detail-chip,.assignment-time-chip{width:fit-content}.assignment-card-actions{grid-template-columns:1fr 1fr;display:grid}}@media (width<=430px){.assignment-management-card{padding:13px}.assignment-card-icon{width:42px;height:42px}.assignment-details{flex-direction:column;align-items:flex-start}.assignment-card-actions{grid-template-columns:1fr}.assignment-card-actions button{width:100%}}.attendance-page{width:100%}.attendance-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.attendance-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.attendance-page-header h1,.attendance-page-header p,.attendance-eyebrow{text-align:right!important}.attendance-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.attendance-today-panel,.attendance-history-panel,.early-leave-panel{margin-bottom:22px}.attendance-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.attendance-section-heading h2{align-items:center;gap:8px;margin:0 0 4px;display:flex}.attendance-section-heading p{color:var(--muted);margin:0;font-size:12px}.attendance-class-selector{flex-direction:column;gap:7px;max-width:430px;margin-bottom:20px;display:flex}.attendance-class-selector label{color:var(--purple-dark);font-size:12px;font-weight:800}.attendance-class-selector select{width:100%}.attendance-bulk-toolbar{justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px;display:flex}.attendance-summary{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.attendance-summary-item{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:78px;padding:8px 12px;display:flex}.attendance-summary-item span{color:var(--muted);font-size:10px}.attendance-summary-item strong{color:var(--purple-dark);font-size:15px;font-weight:900}.attendance-summary-present{background:#eefaf2;border-color:#ccebd6}.attendance-summary-present strong{color:#2e8b57}.attendance-summary-absent{background:#fff2f2;border-color:#f1cccc}.attendance-summary-absent strong{color:#b54141}.mark-all-present-button{color:#2e8b57;cursor:pointer;background:#eefaf2;border:1px solid #ccebd6;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:39px;padding:8px 14px;font-family:inherit;font-size:11px;font-weight:800;transition:transform .15s,background-color .2s;display:inline-flex}.mark-all-present-button:hover{background:#e4f7ea;transform:translateY(-1px)}.attendance-student-list{flex-direction:column;gap:10px;display:flex}.attendance-student-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;min-height:88px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.attendance-student-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.attendance-student-main{align-items:center;gap:13px;min-width:0;display:flex}.attendance-student-icon{background:var(--purple-soft);width:46px;height:46px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.attendance-student-info{flex-direction:column;gap:4px;min-width:0;display:flex}.attendance-student-info>strong{color:var(--purple-dark);font-size:14px;font-weight:900}.attendance-student-info>span{color:var(--muted);font-size:11px}.today-status-area{flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;display:flex}.attendance-status,.attendance-not-registered{border-radius:999px;justify-content:center;align-items:center;min-height:23px;padding:4px 8px;font-size:9px;font-weight:800;display:inline-flex}.attendance-not-registered{background:var(--yellow-light);color:#826300}.attendance-status-Present{color:#287b4d;background:#e9f8ee}.attendance-status-Absent{color:#b33b3b;background:#fff0f0}.attendance-status-EarlyLeave{color:#9c7110;background:#fff6dd}.attendance-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:7px;display:flex}.attendance-toggle{align-items:center;gap:6px;display:flex}.attendance-present-button,.attendance-absent-button,.attendance-change-button,.attendance-leave-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:7px 11px;font-family:inherit;font-size:10px;font-weight:800;transition:transform .15s,opacity .2s,background-color .2s;display:inline-flex}.attendance-present-button{color:#2f8c57;background:#f4fbf6;border:1px solid #bfe5cb}.attendance-absent-button{color:#b74242;background:#fff6f6;border:1px solid #f0c7c7}.attendance-present-button.attendance-selected{background:#daf2e2;border-color:#8ecba2}.attendance-absent-button.attendance-selected{background:#f8dddd;border-color:#dc9999}.attendance-change-button{border:1px solid var(--border);background:var(--purple-ultra-soft);color:var(--purple-dark)}.attendance-leave-button{color:#917111;background:#fff9e7;border:1px solid #ead898}.attendance-present-button:hover,.attendance-absent-button:hover,.attendance-change-button:hover,.attendance-leave-button:hover{transform:translateY(-1px)}.attendance-actions button:disabled{cursor:not-allowed;opacity:.55;transform:none}.attendance-save-area{background:var(--purple-ultra-soft);border:1px solid #d7caee;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:14px 16px;display:flex}.attendance-save-area>div{flex-direction:column;gap:4px;display:flex}.attendance-save-area strong{color:var(--purple-dark);font-size:12px}.attendance-save-area span{color:var(--muted);font-size:10px}.save-class-attendance-button{background:var(--purple);color:#fff;cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 15px;font-family:inherit;font-size:11px;font-weight:800;transition:transform .15s,opacity .2s;display:inline-flex}.save-class-attendance-button:hover{transform:translateY(-1px)}.save-class-attendance-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.attendance-completed{color:#2d8252;background:#edf9f1;border:1px solid #cde8d5;border-radius:10px;justify-content:center;align-items:center;gap:7px;margin-top:16px;padding:12px 14px;font-size:11px;font-weight:800;display:flex}.attendance-success{margin-top:16px}.early-leave-panel textarea{resize:vertical;min-height:105px}.attendance-history{flex-direction:column;gap:8px;display:flex}.attendance-history-card{border:1px solid var(--border);background:#fff;border-radius:11px;grid-template-columns:minmax(180px,1.5fr) minmax(100px,auto) minmax(105px,auto) minmax(120px,auto);align-items:center;gap:14px;padding:12px 14px;display:grid}.attendance-history-student{flex-direction:column;gap:3px;min-width:0;display:flex}.attendance-history-student strong{color:var(--purple-dark);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:900;overflow:hidden}.attendance-history-student span,.attendance-history-date{color:var(--muted);font-size:10px}.attendance-history-action{justify-content:flex-end;align-items:center;display:flex}.send-sms-button{background:var(--purple-ultra-soft);min-height:33px;color:var(--purple-dark);cursor:pointer;border:1px solid #d9cdee;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;font-size:9px;font-weight:800;display:inline-flex}.send-sms-button:disabled{cursor:not-allowed;opacity:.55}.sms-sent-badge{color:#2e8252;background:#edf9f1;border-radius:999px;justify-content:center;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.attendance-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:28px 15px;font-size:12px}@media (width<=900px){.attendance-student-card{flex-direction:column;align-items:stretch}.attendance-actions{border-top:1px solid var(--border);width:100%;padding-top:12px}.attendance-history-card{grid-template-columns:minmax(160px,1fr) auto auto}.attendance-history-action{border-top:1px solid var(--border);grid-column:1/-1;justify-content:flex-start;padding-top:8px}}@media (width<=650px){.attendance-page-header{flex-direction:column!important;align-items:stretch!important}.attendance-page-header>div:first-child{width:100%}.attendance-bulk-toolbar{flex-direction:column;align-items:stretch}.attendance-summary{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.attendance-summary-item{min-width:0}.mark-all-present-button{width:100%}.attendance-student-main{align-items:flex-start}.attendance-actions{grid-template-columns:1fr 1fr;display:grid}.attendance-toggle{grid-column:1/-1;grid-template-columns:1fr 1fr;display:grid}.attendance-actions button{width:100%}.attendance-save-area{flex-direction:column;align-items:stretch}.save-class-attendance-button{width:100%}.attendance-history-card{grid-template-columns:1fr auto;gap:10px}.attendance-history-date,.attendance-history-action{grid-column:1/-1}}@media (width<=430px){.attendance-summary{grid-template-columns:1fr 1fr}.attendance-student-card{padding:12px}.attendance-student-icon{width:42px;height:42px}.attendance-actions{grid-template-columns:1fr}.attendance-toggle{grid-template-columns:1fr 1fr}.attendance-history-card{grid-template-columns:1fr}.attendance-history-card .attendance-status{justify-self:start}.attendance-history-date,.attendance-history-action{grid-column:auto}}.grades-page{width:100%}.grades-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.grades-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.grades-page-header h1,.grades-page-header p,.grades-eyebrow{text-align:right!important}.grades-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.grades-list-panel{margin-bottom:22px}.grades-section-heading{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:18px;display:flex}.grades-section-heading h2{margin:0 0 4px}.grades-section-heading p{color:var(--muted);margin:0;font-size:12px}.grades-management-list{flex-direction:column;gap:10px;display:flex}.grade-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;min-height:88px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.grade-management-card:hover{border-color:#d4c8ed;transform:translateY(-1px);box-shadow:0 6px 18px #4731690f}.grade-card-main{align-items:center;gap:14px;min-width:0;display:flex}.grade-card-icon{background:var(--purple-soft);width:48px;height:48px;color:var(--purple-dark);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.grade-card-content{flex-direction:column;gap:7px;min-width:0;display:flex}.grade-student-name{color:var(--purple-dark);align-items:center;gap:6px;display:flex}.grade-student-name strong{font-size:14px;font-weight:900}.grade-details{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.grade-detail-chip{background:var(--purple-ultra-soft);color:var(--muted);border-radius:7px;align-items:center;gap:4px;padding:5px 8px;font-size:10px;display:inline-flex}.grade-detail-chip strong{color:var(--purple-dark);font-weight:800}.grade-description{max-width:600px;color:var(--muted);margin:0;font-size:10px;line-height:1.8}.grade-score-box{border-radius:12px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;width:76px;height:64px;display:flex}.grade-score-box span{font-size:9px}.grade-score-box strong{font-size:18px;font-weight:900}.grade-score-high{color:#2e8252;background:#edf9f1}.grade-score-medium{color:#916f10;background:#fff7df}.grade-score-low{color:#b13f3f;background:#fff0f0}.grade-score-empty{background:var(--purple-ultra-soft);color:var(--muted)}.grades-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:30px 15px;font-size:13px}@media (width<=700px){.grade-management-card{align-items:flex-start;gap:14px}.grade-score-box{width:66px;height:58px}}@media (width<=600px){.grades-page-header{flex-direction:column!important;align-items:stretch!important}.grades-page-header>div:first-child{width:100%}.grade-management-card{flex-direction:column;align-items:stretch;position:relative}.grade-card-main{align-items:flex-start}.grade-score-box{flex-direction:row;gap:8px;width:100%;height:48px}.grade-score-box strong{font-size:16px}}@media (width<=430px){.grade-management-card{padding:12px}.grade-card-icon{width:42px;height:42px}.grade-details{flex-direction:column;align-items:flex-start}}.reports-page{width:100%}.reports-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.reports-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.reports-page-header h1,.reports-page-header p,.reports-eyebrow{text-align:right!important}.reports-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.reports-filter-panel,.reports-detail-panel,.reports-student-panel,.reports-ranking-panel{margin-bottom:22px}.reports-section-heading{align-items:flex-start;gap:11px;margin-bottom:20px;display:flex}.reports-section-heading h2{margin:0 0 4px}.reports-section-heading p{color:var(--muted);margin:0;font-size:11px;line-height:1.8}.reports-heading-icon{background:var(--purple-soft);width:42px;height:42px;color:var(--purple-dark);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.reports-trophy-icon{background:var(--yellow-light);color:#92700c}.reports-section-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.reports-section-title h2{margin:0}.reports-section-title>span{background:var(--purple-ultra-soft);color:var(--purple-dark);border-radius:999px;padding:5px 9px;font-size:9px;font-weight:800}.report-filter-grid,.ranking-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;display:grid}.report-filter-actions{align-items:center;gap:7px;display:flex}.reports-primary-button,.reports-secondary-button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:8px 13px;font-family:inherit;font-size:10px;font-weight:800;transition:transform .15s,opacity .2s,background-color .2s;display:inline-flex}.reports-primary-button{background:var(--purple);color:#fff;border:none}.reports-secondary-button{border:1px solid var(--border);color:var(--purple-dark);background:#fff}.reports-primary-button:hover,.reports-secondary-button:hover{transform:translateY(-1px)}.reports-primary-button:disabled,.reports-secondary-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.report-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:22px;display:grid}.report-summary-card{border:1px solid var(--border);background:#fff;border-radius:13px;flex-direction:column;justify-content:center;gap:5px;min-height:92px;padding:15px;display:flex}.report-summary-card span{color:var(--muted);font-size:10px}.report-summary-card strong{color:var(--purple-dark);font-size:22px;font-weight:900}.report-summary-present{background:#f0faf3;border-color:#cde9d5}.report-summary-present strong{color:#2f8655}.report-summary-absent{background:#fff3f3;border-color:#efcccc}.report-summary-absent strong{color:#b24040}.report-summary-leave{background:#fff9e8;border-color:#ebdca9}.report-summary-leave strong{color:#987313}.report-average-card{background:var(--purple-ultra-soft);border-color:#d6caed}.report-table-wrapper{border:1px solid var(--border);border-radius:12px;width:100%;overflow-x:auto}.report-table{border-collapse:collapse;background:#fff;width:100%;min-width:650px}.report-table th{border-bottom:1px solid var(--border);background:var(--purple-ultra-soft);color:var(--purple-dark);text-align:right;padding:11px 13px;font-size:10px;font-weight:900}.report-table td{border-bottom:1px solid var(--border);color:#514c5d;padding:11px 13px;font-size:10px}.report-table tbody tr:last-child td{border-bottom:none}.report-table tbody tr{transition:background-color .15s}.report-table tbody tr:hover{background:#fcfbff}.report-table td strong{color:var(--purple-dark)}.report-status-badge{border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.report-present{color:#2c8050;background:#e9f8ee}.report-absent{color:#b23f3f;background:#fff0f0}.report-early-leave{color:#94700f;background:#fff5da}.report-sms-sent,.report-sms-not-sent{border-radius:999px;align-items:center;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.report-sms-sent{color:#2c8050;background:#edf9f1}.report-sms-not-sent{color:var(--muted);background:#f3f1f6}.student-report-selector{align-items:end;gap:10px;max-width:650px;display:flex}.student-report-selector .form-group{flex:1}.student-summary-area{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.student-summary-header{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px;padding:14px;display:flex}.student-summary-header>div{flex-direction:column;gap:3px;display:flex}.student-summary-header strong{color:var(--purple-dark);font-size:13px;font-weight:900}.student-summary-header span{color:var(--muted);font-size:10px}.student-summary-label{font-weight:800;color:var(--purple)!important;font-size:9px!important}.student-national-code{align-items:flex-end}.student-national-code strong{font-size:12px}.student-performance-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.ranking-result{margin-top:20px}.ranking-table{min-width:480px}.ranking-badge,.ranking-top-badge{border-radius:9px;justify-content:center;align-items:center;width:29px;height:29px;font-size:11px;font-weight:900;display:inline-flex}.ranking-badge{background:var(--purple-ultra-soft);color:var(--purple-dark)}.ranking-top-badge{background:var(--yellow-light);color:#806000}.ranking-place-1{background:#fff1a8}.ranking-place-2{color:#5e586a;background:#f1eff5}.ranking-place-3{color:#8b5d31;background:#f7e3d0}.ranking-average{font-size:13px;color:var(--purple)!important}.reports-error{margin-bottom:18px}.reports-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:28px 15px;font-size:11px}@media (width<=1050px){.report-filter-grid,.ranking-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-filter-actions{grid-column:1/-1}.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-performance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=650px){.reports-page-header{flex-direction:column!important;align-items:stretch!important}.reports-page-header>div:first-child{width:100%}.report-filter-grid,.ranking-filter-grid{grid-template-columns:1fr}.report-filter-actions{grid-column:auto;grid-template-columns:1fr 1fr;display:grid}.reports-primary-button,.reports-secondary-button{width:100%}.report-summary-grid,.student-performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-report-selector{flex-direction:column;align-items:stretch;max-width:none}.student-summary-header{flex-direction:column;align-items:stretch}.student-national-code{border-top:1px solid var(--border);align-items:flex-start;padding-top:10px}}@media (width<=430px){.reports-section-heading{gap:9px}.reports-heading-icon{width:38px;height:38px}.report-summary-grid,.student-performance-grid{grid-template-columns:1fr 1fr;gap:8px}.report-summary-card{min-height:82px;padding:12px}.report-summary-card strong{font-size:19px}.report-filter-actions{grid-template-columns:1fr}.reports-section-title{align-items:flex-start}}.users-page{width:100%}.users-page-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.users-page-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.users-page-header h1,.users-page-header p,.users-eyebrow{text-align:right!important}.users-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.users-main-action{background:var(--purple);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:41px;padding:9px 15px;font-family:inherit;font-size:11px;font-weight:900;transition:transform .15s,opacity .2s;display:inline-flex}.users-main-action:hover{transform:translateY(-1px)}.users-form-panel,.users-list-panel{margin-bottom:22px}.users-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.users-section-heading h2{margin:0 0 4px}.users-section-heading p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.users-create-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.users-form-actions{grid-column:1/-1;align-items:center;gap:8px;margin-top:2px;display:flex}.users-save-button,.users-cancel-button{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;min-height:40px;padding:8px 15px;font-family:inherit;font-size:10px;font-weight:900;display:inline-flex}.users-save-button{background:var(--purple);color:#fff;border:none}.users-cancel-button{border:1px solid var(--border);color:var(--purple-dark);background:#fff}.users-save-button:disabled{cursor:not-allowed;opacity:.55}.users-success{color:#2e7e50;background:#eef9f1;border:1px solid #cce7d4;border-radius:10px;margin-bottom:18px;padding:11px 14px;font-size:11px;font-weight:800}.users-management-list{flex-direction:column;gap:10px;display:flex}.user-management-card{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;min-height:92px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,transform .15s;display:flex}.user-management-card:hover{border-color:#d6caed;transform:translateY(-1px);box-shadow:0 6px 18px #4c34700f}.user-card-main{align-items:center;gap:13px;min-width:0;display:flex}.user-card-icon{background:var(--purple-soft);width:48px;height:48px;color:var(--purple-dark);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.user-card-content{flex-direction:column;gap:7px;min-width:0;display:flex}.user-card-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.user-card-name>strong{color:var(--purple-dark);font-size:14px;font-weight:900}.user-role-badge{border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:9px;font-weight:800;display:inline-flex}.user-role-badge svg{width:12px;height:12px}.user-role-admin{color:#6543ad;background:#f1ebff}.user-role-vice{color:#896809;background:#fff4c9}.user-role-teacher{color:#317b4d;background:#eaf7ee}.user-card-details{flex-wrap:wrap;align-items:center;gap:6px 16px;display:flex}.user-card-details span{color:var(--muted);align-items:center;gap:4px;font-size:10px;display:inline-flex}.user-card-details strong{color:#514b5d;font-weight:800}.user-card-actions{flex-shrink:0;align-items:center;gap:7px;display:flex}.user-active-badge,.user-inactive-badge{border-radius:999px;justify-content:center;align-items:center;min-width:48px;padding:5px 8px;font-size:9px;font-weight:900;display:inline-flex}.user-active-badge{color:#2e8250;background:#eaf8ef}.user-inactive-badge{color:#777181;background:#f0eef3}.user-password-button,.user-disable-button,.user-enable-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:6px 10px;font-family:inherit;font-size:9px;font-weight:800;transition:background-color .2s,transform .15s;display:inline-flex}.user-password-button{color:var(--purple-dark);background:#faf8ff;border:1px solid #d6cbea}.user-disable-button{color:#b14141;background:#fff5f5;border:1px solid #efcccc}.user-enable-button{color:#2d7d4e;background:#f2faf4;border:1px solid #cce5d4}.user-password-button:hover,.user-disable-button:hover,.user-enable-button:hover{transform:translateY(-1px)}.user-password-button:disabled,.user-disable-button:disabled,.user-enable-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.users-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted);text-align:center;border-radius:12px;padding:28px 15px;font-size:11px}@media (width<=950px){.users-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.user-management-card{align-items:flex-start}.user-card-actions{flex-wrap:wrap;justify-content:flex-end}}@media (width<=650px){.users-page-header{gap:16px;flex-direction:column!important;align-items:stretch!important}.users-page-header>div:first-child,.users-main-action{width:100%}.users-create-form{grid-template-columns:1fr}.users-form-actions{grid-template-columns:1fr 1fr;display:grid}.users-save-button,.users-cancel-button{width:100%}.user-management-card{flex-direction:column;align-items:stretch}.user-card-main{align-items:flex-start}.user-card-actions{grid-template-columns:auto 1fr 1fr;width:100%;display:grid}.user-password-button,.user-disable-button,.user-enable-button{width:100%}}@media (width<=430px){.user-management-card{padding:12px}.user-card-icon{width:42px;height:42px}.user-card-details{flex-direction:column;align-items:flex-start}.user-card-actions{grid-template-columns:1fr 1fr}.user-active-badge,.user-inactive-badge{grid-column:1/-1;justify-self:flex-start}.users-form-actions{grid-template-columns:1fr}}.change-password-page{width:100%}.change-password-header{direction:rtl;margin-bottom:24px;text-align:right!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.change-password-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.change-password-header h1,.change-password-header p,.change-password-eyebrow{text-align:right!important}.change-password-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.change-password-success,.change-password-error{border-radius:10px;margin-bottom:18px;padding:11px 14px;font-size:11px;font-weight:800}.change-password-success{color:#2e7e50;background:#eef9f1;border:1px solid #cce7d4}.change-password-error{color:#b14141;background:#fff3f3;border:1px solid #efcccc}.change-password-panel{max-width:760px}.change-password-panel-header{align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.change-password-panel-header h2{margin:0 0 4px}.change-password-panel-header p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.change-password-icon{background:var(--purple-soft);width:44px;height:44px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.change-password-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.change-password-form .form-group:first-child{grid-column:1/-1}.change-password-security-note{color:#7e6515;background:#fff9e8;border:1px solid #eadb9b;border-radius:10px;grid-column:1/-1;align-items:center;gap:8px;padding:10px 12px;font-size:10px;line-height:1.8;display:flex}.change-password-security-note svg{flex-shrink:0}.change-password-actions{grid-column:1/-1;justify-content:flex-start;margin-top:2px;display:flex}.change-password-submit{background:var(--purple);color:#fff;cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:41px;padding:9px 16px;font-family:inherit;font-size:10px;font-weight:900;transition:transform .15s,opacity .2s;display:inline-flex}.change-password-submit svg{width:16px;height:16px}.change-password-submit:hover{transform:translateY(-1px)}.change-password-submit:disabled{cursor:not-allowed;opacity:.55;transform:none}@media (width<=700px){.change-password-panel{max-width:none}.change-password-form{grid-template-columns:1fr}.change-password-form .form-group:first-child,.change-password-security-note,.change-password-actions{grid-column:auto}}@media (width<=500px){.change-password-header{align-items:stretch!important}.change-password-panel-header{gap:10px}.change-password-icon{width:40px;height:40px}.change-password-submit{width:100%}}.teacher-portal-page{width:100%}.teacher-portal-header{direction:rtl;gap:24px;margin-bottom:24px;text-align:right!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;display:flex!important}.teacher-portal-header>div:first-child{text-align:right!important;flex:0 auto!important;margin:0!important}.teacher-portal-header h1,.teacher-portal-header p,.teacher-portal-eyebrow{text-align:right!important}.teacher-portal-eyebrow{color:var(--purple);margin-bottom:3px;font-size:11px;font-weight:800;display:inline-block}.teacher-back-button{border:1px solid var(--border);min-height:39px;color:var(--purple-dark);cursor:pointer;background:#fff;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px 13px;font-family:inherit;font-size:10px;font-weight:800;transition:transform .15s,border-color .2s;display:inline-flex}.teacher-back-button:hover{border-color:#cfc1e8;transform:translateY(-1px)}.teacher-section-heading{align-items:flex-start;gap:11px;margin-bottom:20px;display:flex}.teacher-section-heading h2{margin:0 0 4px}.teacher-section-heading p{color:var(--muted);margin:0;font-size:10px;line-height:1.8}.teacher-heading-icon{background:var(--purple-soft);width:43px;height:43px;color:var(--purple-dark);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-classes-panel{margin-bottom:20px}.teacher-class-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teacher-class-card{border:1px solid var(--border);width:100%;min-height:105px;color:inherit;text-align:right;cursor:pointer;background:#fff;border-radius:13px;align-items:center;gap:12px;padding:14px;font-family:inherit;transition:transform .15s,border-color .2s,box-shadow .2s;display:flex}.teacher-class-card:hover{border-color:#d2c4ea;transform:translateY(-2px);box-shadow:0 7px 20px #4b2e8312}.teacher-class-card-icon{background:var(--purple-soft);width:46px;height:46px;color:var(--purple-dark);border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-class-card-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.teacher-class-card-content strong{color:var(--purple-dark);font-size:13px;font-weight:900}.teacher-class-card-content span{color:var(--muted);font-size:10px}.teacher-card-open{color:var(--purple);align-items:center;gap:2px;font-size:9px;font-weight:800;display:inline-flex}.teacher-students-panel{margin-bottom:20px}.teacher-student-list{flex-direction:column;gap:9px;display:flex}.teacher-student-card{border:1px solid var(--border);width:100%;color:inherit;text-align:right;cursor:pointer;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:15px;padding:12px 14px;font-family:inherit;transition:transform .15s,border-color .2s,background-color .2s;display:flex}.teacher-student-card:hover{background:#fdfcff;border-color:#d5c8eb;transform:translateY(-1px)}.teacher-student-main{align-items:center;gap:11px;min-width:0;display:flex}.teacher-student-icon{background:var(--purple-ultra-soft);width:42px;height:42px;color:var(--purple);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-student-info{flex-direction:column;gap:3px;min-width:0;display:flex}.teacher-student-info strong{color:var(--purple-dark);font-size:12px;font-weight:900}.teacher-student-info span{color:var(--muted);font-size:9px}.teacher-student-info span b{color:#57515f;margin-right:3px;font-weight:700}.teacher-student-open{color:var(--purple);flex-shrink:0;align-items:center;gap:3px;font-size:9px;font-weight:800;display:inline-flex}.teacher-grade-panel,.teacher-history-panel{margin-bottom:20px}.teacher-selected-student{background:var(--purple-ultra-soft);border:1px solid #dcd1ef;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;padding:13px 15px;display:flex}.teacher-selected-student-main{align-items:center;gap:10px;display:flex}.teacher-selected-avatar{background:var(--purple-soft);width:42px;height:42px;color:var(--purple-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.teacher-selected-student-main>div:last-child,.teacher-student-national-code{flex-direction:column;gap:2px;display:flex}.teacher-selected-student span{color:var(--muted);font-size:9px}.teacher-selected-student strong{color:var(--purple-dark);font-size:12px;font-weight:900}.teacher-student-national-code{align-items:flex-end}.teacher-grade-heading{margin-top:3px}.teacher-grade-form{grid-template-columns:minmax(0,1fr) minmax(120px,.55fr) minmax(0,1.5fr);align-items:end;gap:12px;display:grid}.teacher-description-field{min-width:0}.teacher-grade-submit-area{grid-column:1/-1;justify-content:flex-start;margin-top:2px;display:flex}.teacher-save-grade-button{background:var(--purple);color:#fff;cursor:pointer;border:none;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:8px 15px;font-family:inherit;font-size:10px;font-weight:900;transition:transform .15s,opacity .2s;display:inline-flex}.teacher-save-grade-button svg{width:16px;height:16px}.teacher-save-grade-button:hover{transform:translateY(-1px)}.teacher-save-grade-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.teacher-grade-success{color:#2e7e50;background:#eef9f1;border:1px solid #cce7d4;border-radius:9px;margin-top:16px;padding:10px 13px;font-size:10px;font-weight:800}.teacher-grade-history-list{flex-direction:column;gap:10px;display:flex}.teacher-grade-history-card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:13px 15px}.teacher-grade-history-main{justify-content:space-between;align-items:center;gap:14px;display:flex}.teacher-grade-history-info{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.teacher-evaluation-type{background:var(--purple-soft);color:var(--purple-dark);border-radius:999px;align-items:center;padding:5px 8px;font-size:9px;font-weight:900;display:inline-flex}.teacher-grade-date{color:var(--muted);font-size:9px}.teacher-score-box{border-radius:9px;justify-content:center;align-items:center;gap:5px;min-width:64px;padding:7px 9px;display:flex}.teacher-score-box span{font-size:8px;font-weight:700}.teacher-score-box strong{font-size:14px;font-weight:900}.teacher-score-high{color:#2c7e4d;background:#eaf8ef}.teacher-score-medium{color:#8b6a0b;background:#fff7d9}.teacher-score-low{color:#ad3e3e;background:#fff0f0}.teacher-score-empty{color:#77717d;background:#f2f0f4}.teacher-grade-description{color:#5e5865;background:#faf9fc;border-radius:8px;margin-top:10px;padding:9px 11px;font-size:10px;line-height:1.8}.teacher-grade-card-actions{flex-wrap:wrap;align-items:center;gap:7px;margin-top:11px;display:flex}.teacher-edit-grade-button,.teacher-send-sms-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:5px 9px;font-family:inherit;font-size:9px;font-weight:800;display:inline-flex}.teacher-edit-grade-button{color:var(--purple-dark);background:#faf8ff;border:1px solid #d7cbea}.teacher-send-sms-button{color:#84670f;background:#fff9e8;border:1px solid #eadb9b}.teacher-edit-grade-button:hover,.teacher-send-sms-button:hover{transform:translateY(-1px)}.teacher-send-sms-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.teacher-sms-registered{color:#327d4e;background:#edf8f0;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.teacher-edit-grade-form{grid-template-columns:minmax(0,1fr) minmax(100px,.55fr) minmax(0,1.5fr);align-items:end;gap:11px;display:grid}.teacher-edit-description{min-width:0}.teacher-edit-actions{grid-column:1/-1;gap:7px;display:flex}.teacher-save-edit-button,.teacher-cancel-edit-button{cursor:pointer;border-radius:8px;min-height:35px;padding:6px 11px;font-family:inherit;font-size:9px;font-weight:800}.teacher-save-edit-button{background:var(--purple);color:#fff;border:none}.teacher-cancel-edit-button{border:1px solid var(--border);color:var(--purple-dark);background:#fff}.teacher-save-edit-button:disabled,.teacher-cancel-edit-button:disabled{cursor:not-allowed;opacity:.55}.teacher-empty-state,.teacher-error-state{text-align:center;border-radius:11px;padding:26px 14px;font-size:10px}.teacher-empty-state{border:1px dashed var(--border-dark);background:var(--purple-ultra-soft);color:var(--muted)}.teacher-error-state{color:#b14141;background:#fff3f3;border:1px solid #efcccc}.teacher-page-error{margin-bottom:18px}@media (width<=950px){.teacher-class-list,.teacher-grade-form,.teacher-edit-grade-form{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-description-field,.teacher-edit-description{grid-column:1/-1}}@media (width<=650px){.teacher-portal-header{gap:15px;flex-direction:column!important;align-items:stretch!important}.teacher-portal-header>div:first-child,.teacher-back-button{width:100%}.teacher-class-list,.teacher-grade-form,.teacher-edit-grade-form{grid-template-columns:1fr}.teacher-description-field,.teacher-edit-description,.teacher-grade-submit-area,.teacher-edit-actions{grid-column:auto}.teacher-selected-student{flex-direction:column;align-items:stretch}.teacher-student-national-code{border-top:1px solid #ddd3ee;align-items:flex-start;padding-top:10px}.teacher-save-grade-button{width:100%}}@media (width<=430px){.teacher-class-card{min-height:92px;padding:12px}.teacher-class-card-icon{width:41px;height:41px}.teacher-card-open{font-size:0}.teacher-card-open svg{width:18px;height:18px}.teacher-student-card{padding:11px}.teacher-student-icon{width:38px;height:38px}.teacher-student-open{font-size:0}.teacher-student-open svg{width:18px;height:18px}.teacher-grade-history-main{align-items:flex-start}.teacher-grade-card-actions{grid-template-columns:1fr 1fr;display:grid}.teacher-edit-grade-button,.teacher-send-sms-button{width:100%}.teacher-sms-registered{grid-column:1/-1;justify-content:center}.teacher-edit-actions{grid-template-columns:1fr 1fr;display:grid}.teacher-save-edit-button,.teacher-cancel-edit-button{width:100%}}.students-class-filter{border:1px solid var(--border);background:var(--purple-ultra-soft);min-width:190px;color:var(--purple);border-radius:10px;align-items:center;gap:8px;padding:8px 12px;display:flex}.students-class-filter select{width:100%;min-width:140px;color:var(--purple-dark);cursor:pointer;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:10px;font-weight:800}.students-class-filter svg{flex-shrink:0}@media (width<=600px){.students-list-heading{align-items:stretch}.students-class-filter{width:100%}.students-class-filter select{flex:1}}.reports-filter-panel .report-filter-grid{grid-template-columns:minmax(190px,.8fr) minmax(300px,1.25fr) minmax(300px,1.25fr);align-items:end;gap:18px;display:grid}.reports-filter-panel .persian-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.reports-filter-panel .persian-date-fields select{width:100%;min-width:0}.reports-filter-panel .report-filter-actions{grid-column:1/-1;justify-content:flex-start;align-items:center;gap:10px;margin-top:2px;display:flex}@media (width<=1050px){.reports-filter-panel .report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-filter-panel .report-filter-grid>.form-group:first-child{grid-column:1/-1}}@media (width<=700px){.reports-filter-panel .report-filter-grid{grid-template-columns:1fr;gap:14px}.reports-filter-panel .report-filter-grid>.form-group:first-child,.reports-filter-panel .report-filter-actions{grid-column:auto}.reports-filter-panel .persian-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.reports-filter-panel .report-filter-actions{width:100%}.reports-filter-panel .report-filter-actions button{flex:1}}@media (width<=430px){.reports-filter-panel .persian-date-fields{grid-template-columns:1fr}}.reports-filter-panel{overflow:hidden}.reports-filter-panel .report-filter-grid{grid-template-columns:minmax(180px,.8fr) minmax(0,1fr) minmax(0,1fr);align-items:end;gap:16px;width:100%;max-width:100%;display:grid}.reports-filter-panel .report-filter-grid>*{min-width:0}.reports-filter-panel .persian-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;min-width:0;display:grid}.reports-filter-panel .persian-date-fields select{width:100%;min-width:0;max-width:100%}.reports-filter-panel .form-group{min-width:0}.reports-filter-panel .form-group>select{width:100%;max-width:100%}.reports-filter-panel .report-filter-actions{grid-column:1/-1;justify-content:flex-start;align-items:center;gap:10px;width:100%;display:flex}@media (width<=1100px){.reports-filter-panel .report-filter-grid{grid-template-columns:1fr}.reports-filter-panel .report-filter-actions{grid-column:auto}}@media (width<=700px){.reports-filter-panel .persian-date-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.reports-filter-panel .report-filter-actions button{flex:1}}@media (width<=430px){.reports-filter-panel .persian-date-fields{grid-template-columns:1fr}}.student-report-selected-filters{border:1px solid var(--border);background:var(--purple-ultra-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px 24px;margin:20px 0;padding:14px 18px;font-size:14px;line-height:1.8;display:flex}.student-report-selected-filters span{align-items:center;gap:5px;display:flex}.student-report-selected-filters strong{color:var(--purple-dark);font-weight:900}@media (width<=600px){.student-report-selected-filters{gap:8px 16px;font-size:13px}}.student-grades-section{margin-top:22px}.student-grades-toggle{justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:800;display:inline-flex}.student-grades-table-area{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.student-grades-table-area .reports-section-title{margin-bottom:14px}.student-grades-table-area .reports-section-title h2{font-size:18px}.student-grades-table-area .reports-section-title span{background:var(--purple-soft);color:var(--purple-dark);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.student-grades-table th{font-weight:900;font-size:13px!important}.student-grades-table td{line-height:1.8;font-size:13px!important}.student-grades-table td:last-child strong{font-size:16px;font-weight:900}.student-grades-table tbody tr:hover{background:var(--purple-ultra-soft)}@media (width<=600px){.student-grades-toggle{width:100%}.student-grades-table th,.student-grades-table td{white-space:nowrap;font-size:12px!important}.student-grades-table-area{margin-top:14px}}.reports-eyebrow,.users-eyebrow,.student-summary-label,.student-summary-header span,.reports-section-heading p,.users-section-heading p,.attendance-history-date,.sidebar-footer span,.sidebar-user-info small,.mobile-topbar span{font-size:12px!important}.report-table th,.report-table td{font-size:13px!important}.report-status-badge,.report-sms-sent,.report-sms-not-sent{font-size:12px!important}.report-summary-card span,.student-performance-grid .report-summary-card span,.form-group label,.send-sms-button,.reports-primary-button,.reports-secondary-button{font-size:13px!important}.sidebar-user-info span{font-size:14px!important}.sidebar-footer strong,.panel>p{font-size:13px!important}@media (width<=600px){.report-table th,.report-table td,.report-status-badge,.report-sms-sent,.report-sms-not-sent{font-size:12px!important}.report-summary-card span,.form-group label{font-size:13px!important}}html,body,#root{width:100%;max-width:100%}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:hidden}.app,.content,main,header,.panel,.card{min-width:0}img,svg,video,canvas{max-width:100%;height:auto}input,select,textarea,button{max-width:100%}.table-wrapper,.report-table-wrapper,.students-table-wrapper{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow-x:auto}@media (width<=760px){.app{width:100%;max-width:100%;display:block}.content{width:100%;min-width:0;max-width:100%;padding:15px 14px 32px;overflow-x:hidden;margin-right:0!important}.sidebar{-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .28s;min-height:100vh;transition:transform .28s;transform:translate(110%);z-index:1000!important;width:82vw!important;max-width:300px!important;height:100vh!important;margin:0!important;position:fixed!important;inset:0 0 0 auto!important;overflow:hidden auto!important}.sidebar.sidebar-open{transform:translate(0,0)!important}.sidebar-overlay{-webkit-tap-highlight-color:transparent;z-index:999!important;background:#180f2578!important;border:0!important;width:100%!important;height:100vh!important;margin:0!important;padding:0!important;position:fixed!important;inset:0!important}.mobile-topbar{width:100%;max-width:100%}.mobile-menu-button{flex:none}.panel,.card,.student-management-card,.teacher-management-card,.class-management-card,.subject-management-card,.assignment-management-card,.attendance-student-card,.grade-management-card,.user-management-card{min-width:0;max-width:100%}}@media (width<=600px){.content{padding:14px!important}.form-group,.form-group input,.form-group select,.form-group textarea{min-width:0;max-width:100%}.table-wrapper,.report-table-wrapper,.students-table-wrapper{max-width:100%;overflow-x:auto}}@media (width<=430px){.content{padding:12px 10px 28px!important}.mobile-topbar{gap:8px;padding:8px 10px}.mobile-menu-button{flex-shrink:0}.cards,.report-summary-grid,.student-performance-grid{grid-template-columns:1fr!important}.panel,.card{max-width:100%}}@media (width<=360px){.content{padding:10px 8px 24px!important}.mobile-topbar{padding:8px!important}}@media (width<=760px){.sidebar,.sidebar-overlay{height:100vh}}@supports not (inset:0){.sidebar-overlay{inset:0}}@media screen and (width<=430px) and (orientation:portrait){html,body,#root,.app,.content{width:100%;min-width:0;max-width:100%}body{overflow-x:hidden}.content{margin-right:0!important;overflow-x:hidden!important}.sidebar{width:82vw!important;max-width:300px!important}.cards,.report-summary-grid,.student-performance-grid,.panel,.card{min-width:0;max-width:100%}}@media (width<=760px){.content>*,.panel>*,.card>*{min-width:0}}@media screen and (width<=760px){.sidebar-overlay{-webkit-tap-highlight-color:transparent;z-index:999!important;appearance:none!important;background:#180f2578!important;border:0!important;border-radius:0!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;display:block!important;position:fixed!important;inset:0!important}.sidebar{z-index:1000!important}}
