.teacher-weekly-tutoring{margin-top:22px}.teacher-weekly-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.teacher-weekly-heading h2{background:0 0!important;margin:4px 0!important;padding:0!important;font-size:24px!important}.teacher-weekly-heading small{letter-spacing:.12em;color:#6954bd;font-weight:900}.teacher-weekly-heading p{color:#625d70;margin:0}.teacher-weekly-heading>strong{white-space:nowrap;color:#5442aa;background:#ebe8ff;border-radius:14px;padding:10px 14px}.teacher-weekly-navigation{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:20px 0;display:flex}.teacher-weekly-navigation button{color:#514295;cursor:pointer;background:#f6f2ff;border:1px solid #dcd4f4;border-radius:11px;padding:9px 13px;font-weight:800}.teacher-weekly-navigation span{color:#30294d;text-align:center;min-width:150px;font-weight:900}.teacher-weekly-grid{grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.teacher-weekly-day{background:#fff;border:1px solid #e6e1ef;border-radius:16px;min-width:0;overflow:hidden;margin:0!important}.teacher-weekly-day-heading{color:#3f3482;background:#e9e5ff;flex-direction:column;gap:3px;padding:11px;display:flex}.teacher-weekly-day.day-1 .teacher-weekly-day-heading{color:#24536d;background:#e0f3ff}.teacher-weekly-day.day-2 .teacher-weekly-day-heading{color:#275943;background:#e2f5e9}.teacher-weekly-day.day-3 .teacher-weekly-day-heading{color:#81522d;background:#fff0db}.teacher-weekly-day.day-4 .teacher-weekly-day-heading{color:#893d57;background:#ffe5ed}.teacher-weekly-day.day-5 .teacher-weekly-day-heading{color:#315788;background:#e6f0ff}.teacher-weekly-day.day-6 .teacher-weekly-day-heading{color:#724d88;background:#f3e8fa}.teacher-weekly-day-heading b{font-size:13px}.teacher-weekly-day-heading time{font-size:12px;font-weight:700}.teacher-weekly-day-body{align-content:start;gap:7px;min-height:105px;padding:7px;display:grid}.teacher-weekly-session{overflow-wrap:anywhere;background:#fcfbff;border:1px solid #e4e2f1;border-radius:12px;padding:8px}.teacher-weekly-time{color:#5b48af;justify-content:space-between;gap:4px;font-size:12px;display:flex}.teacher-weekly-session>strong,.teacher-weekly-session>span{margin-top:5px;font-size:12px;display:block}.teacher-weekly-session>span{color:#5f5b6c}.teacher-weekly-attendance{gap:4px;margin-top:8px;display:grid}.teacher-weekly-attendance button{cursor:pointer;color:#39674f;background:#edf2f0;border:0;border-radius:8px;padding:6px 4px;font-size:11px;font-weight:800}.teacher-weekly-attendance button.absent{color:#9a3e48;background:#fff0f0}.teacher-weekly-attendance button.selected.done{color:#135f37;background:#c8efda}.teacher-weekly-attendance button.selected.absent{color:#872b40;background:#ffced7}.teacher-weekly-empty{color:#827d8e;margin:6px 2px;font-size:12px}@media (width<=1000px){.teacher-weekly-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=650px){.teacher-weekly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-weekly-heading{align-items:flex-start}.teacher-weekly-heading h2{font-size:20px!important}}@media (width<=380px){.teacher-weekly-grid{grid-template-columns:1fr}}.teacher-daily-hours{background:#f7f4ff;border:1px solid #ddd6ef;border-radius:14px;margin:16px 0;padding:16px}.teacher-daily-hours h3{margin:0 0 8px}.teacher-daily-hours p{font-size:12px;line-height:1.6}.daily-hours-row{border-top:1px solid #ded8eb;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;display:flex}.daily-hours-row>b{min-width:90px}.daily-hours-row label{align-items:center;gap:6px;min-height:44px;font-size:12px;display:flex}.daily-hours-row input[type=checkbox]{flex:none;width:20px;height:20px;min-height:20px}.daily-hours-row input[type=time]{max-width:135px;min-height:44px}.teacher-daily-hours button{min-height:44px}.teacher-daily-warning{color:#704d10;background:#fff3db;border:1px solid #ecd4a6;border-radius:10px;padding:10px;font-size:12px}.etut-teacher-edit-dialog{max-height:90vh;overflow-y:auto}.teacher-weekly-day-heading small{font-weight:500;display:block}@media (width<=600px){.daily-hours-row>b{width:100%}}.attendance-history article{grid-template-columns:minmax(210px,1.35fr) repeat(5,minmax(75px,.5fr)) auto}.attendance-history .reported,.attendance-editor-summary .reported{color:#5a3da5;background:#eee5ff}.attendance-history article>.attendance-history-actions{grid-column:auto;gap:5px;display:flex}.attendance-history-actions button{color:#523ca9;cursor:pointer;background:#eee9ff;border:0;border-radius:8px;align-items:center;gap:4px;padding:8px;font-size:11px;font-weight:800;display:flex}.attendance-history-actions button.delete{color:#96394c;background:#ffe7ea}.attendance-history-actions svg{width:14px}.attendance-editor{background:linear-gradient(145deg,#fff,#faf7ff);border:1px solid #ded7ef;border-radius:20px;padding:18px}.attendance-editor>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.attendance-editor>header small{color:#6750c8;letter-spacing:.08em;font-weight:850}.attendance-editor>header h2{margin:3px 0}.attendance-editor>header p{color:#6d6878;margin:0}.attendance-editor>header>button{color:#5e5670;background:#f0edf6;border:0;border-radius:9px;padding:8px 11px}.attendance-editor-summary{flex-wrap:wrap;gap:7px;margin:14px 0;display:flex}.attendance-editor-summary span{background:#f1f1f5;border-radius:9px;gap:6px;padding:7px 9px;display:flex}.attendance-editor-summary .present{color:#25684d;background:#dff4e9}.attendance-editor-summary .absent{color:#913448;background:#ffe3e7}.attendance-editor-summary .late{color:#765817;background:#fff0c9}.attendance-editor-summary .excused{color:#285e91;background:#e4f0ff}.attendance-editor-list{gap:6px;max-height:430px;padding-right:6px;display:grid;overflow:auto}.attendance-editor-list article{background:#fff;border:1px solid #e5e2eb;border-radius:12px;grid-template-columns:30px minmax(150px,1fr) minmax(400px,auto) minmax(130px,.65fr);align-items:center;gap:8px;padding:9px;display:grid}.attendance-editor-list article>i{background:#eee9ff;border-radius:8px;place-items:center;width:28px;height:28px;font-style:normal;display:grid}.attendance-editor-list article>div{gap:4px;display:flex}.attendance-editor-list article button{color:#696371;cursor:pointer;background:#f1f1f4;border:0;border-radius:8px;padding:7px}.attendance-editor-list article button.selected.present{color:#1c6748;background:#d9f3e6}.attendance-editor-list article button.selected.absent{color:#913448;background:#ffe0e5}.attendance-editor-list article button.selected.late{color:#775817;background:#fff0c7}.attendance-editor-list article button.selected.excused{color:#285d91;background:#e2efff}.attendance-editor-list article button.selected.reported{color:#5a3da5;background:#eee5ff}.attendance-editor-list article input{border:1px solid #dfe1e7;border-radius:9px;min-height:36px;padding:7px}.attendance-editor>footer{justify-content:flex-end;margin-top:12px;display:flex}.attendance-editor>footer button{color:#fff;background:#6650cb;border:0;border-radius:11px;padding:11px 15px;font-weight:850}.attendance-editor>footer button:disabled{opacity:.5}.class-attendance-hint{color:#6f5719;background:#fff3cf;border-radius:11px;padding:10px 12px;font-weight:750}.class-attendance-list article{grid-template-columns:34px minmax(150px,1fr) minmax(430px,auto) 150px}.class-attendance-list button.selected.reported{color:#5a3da5;background:#eee5ff}@media (width<=1100px){.attendance-history article{grid-template-columns:1fr repeat(3,90px)}.attendance-history article>div:first-child,.attendance-history article>.attendance-history-actions{grid-column:1/-1}.attendance-editor-list article{grid-template-columns:30px 1fr}.attendance-editor-list article>div,.attendance-editor-list article>input{grid-column:1/-1}.attendance-editor-list article>div{flex-wrap:wrap}}@media (width<=760px){.class-attendance-list article{grid-template-columns:30px 1fr}.class-attendance-list article>div{grid-template-columns:1fr 1fr}}@media (width<=600px){.attendance-history article{grid-template-columns:1fr 1fr}.attendance-history article>.attendance-history-actions{grid-template-columns:1fr 1fr 1fr;display:grid}.attendance-history-actions button{justify-content:center}.attendance-editor-list{max-height:360px}}.attendance-parent-notice{background:linear-gradient(135deg,#fff7f7,#fff);border:1px solid #f4caca;margin-top:18px;padding:18px}.attendance-parent-notice>header{justify-content:space-between;align-items:center;gap:16px;display:flex}.attendance-parent-notice>header svg{color:#d95c73;width:28px;height:28px}.attendance-parent-notice>header h2,.attendance-parent-notice>header p{margin:3px 0}.attendance-parent-notice>header small{color:#b84c62;letter-spacing:.09em;font-weight:800}.attendance-parent-notice-bar{background:#ffe9ed;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;padding:10px 12px;display:flex}.attendance-parent-notice-bar label{font-weight:750}.attendance-parent-notice-bar span{margin-left:auto}.attendance-parent-notice-bar button,.attendance-parent-notice-list button{color:#fff;background:#cf4f69;border:0;border-radius:10px;align-items:center;gap:6px;padding:9px 13px;font-weight:750;display:inline-flex}.attendance-parent-notice button:disabled{opacity:.5}.attendance-parent-notice-list{gap:8px;max-height:280px;display:grid;overflow:auto}.attendance-parent-notice-list>label{background:#fff;border:1px solid #f4dadd;border-radius:12px;align-items:center;gap:10px;padding:10px;display:flex}.attendance-parent-notice-list>label>span{flex:1;gap:2px;display:grid}.attendance-parent-notice-list small{color:#665e6d}.attendance-parent-notice-list input{accent-color:#cf4f69;width:18px;height:18px}.teacher-attendance-report{background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #ded7ef;border-radius:20px;margin-top:18px;padding:18px}.teacher-attendance-report>header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.teacher-attendance-report>header small{color:#6750c8;letter-spacing:.08em;font-weight:850}.teacher-attendance-report>header h3{margin:4px 0}.teacher-attendance-report>header>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.teacher-attendance-report button{color:#514a61;cursor:pointer;background:#eef0f7;border:0;border-radius:10px;padding:9px 12px;font-weight:800}.teacher-attendance-report button.active{color:#fff;background:#6650cb}.teacher-attendance-report button:last-child{color:#fff;background:#21345a}.teacher-attendance-report button:disabled{opacity:.45}.teacher-attendance-report-table{border:1px solid #dce1ea;border-radius:14px;overflow:auto}.teacher-attendance-report table{border-collapse:collapse;width:100%;min-width:900px;font-size:12px}.teacher-attendance-report th,.teacher-attendance-report td{text-align:left;white-space:nowrap;border-bottom:1px solid #e2e6ed;padding:9px 10px}.teacher-attendance-report th{color:#493591;z-index:1;background:#eee9ff;position:sticky;top:0}.teacher-attendance-report tbody tr:nth-child(2n){background:#fafbfe}.attendance-status{border-radius:999px;padding:5px 8px;font-weight:800;display:inline-flex}.attendance-status.present{color:#25684d;background:#dff4e9}.attendance-status.absent{color:#913448;background:#ffe3e7}.attendance-status.late{color:#765817;background:#fff0c9}.attendance-status.excused{color:#285e91;background:#e4f0ff}.attendance-status.reported{color:#5a3da5;background:#eee5ff}@media (width<=760px){.teacher-attendance-report>header{flex-direction:column;align-items:flex-start}.teacher-attendance-report>header>div:last-child{width:100%}.teacher-attendance-report button{flex:1}.teacher-attendance-report{padding:12px}}.attendance-matrix-wrap{border:1px solid #d9deea;border-radius:16px;margin:12px 0 14px;overflow:auto;box-shadow:0 10px 28px #2e375f12}.attendance-matrix{border-collapse:separate;border-spacing:0;background:#fff;width:100%;min-width:1420px;font-size:11px}.attendance-matrix th,.attendance-matrix td{text-align:center;vertical-align:middle;border-bottom:1px solid #e1e5ed;border-right:1px solid #e1e5ed;height:64px;padding:7px}.attendance-matrix thead th{z-index:3;color:#2d3150;background:linear-gradient(#f2efff,#ebe7fa);height:82px;position:sticky;top:0}.attendance-matrix thead th small,.attendance-matrix thead th b,.attendance-matrix thead th em{display:block}.attendance-matrix thead th small{color:#5d4fab;min-height:26px;font-weight:850}.attendance-matrix thead th b{font-size:12px}.attendance-matrix thead th em{color:#6c7284;margin-top:3px;font-size:9px;font-style:normal}.attendance-matrix .matrix-order{z-index:4;background:#f7f8fc;width:42px;min-width:42px;position:sticky;left:0}.attendance-matrix .matrix-student{z-index:4;text-align:left;background:#fff;width:190px;min-width:190px;font-size:12px;position:sticky;left:42px}.attendance-matrix thead .matrix-student,.attendance-matrix thead .matrix-order{z-index:6;color:#44358c;background:#e7e1fb}.attendance-matrix tbody tr:nth-child(2n) td,.attendance-matrix tbody tr:nth-child(2n) .matrix-student{background:#fafbfe}.attendance-matrix .selected-period{box-shadow:inset 2px 0 #e6b72f,inset -2px 0 #e6b72f;background:#fff8dc!important}.attendance-matrix thead .selected-period{color:#5e4711;background:linear-gradient(#fff0b8,#ffe59a)!important}.matrix-status{border-radius:10px;justify-content:center;align-items:center;min-width:72px;padding:7px 8px;font-weight:850;display:inline-flex}.matrix-status.empty{color:#8a90a0;background:#f0f2f6}.matrix-status.present{color:#25684d;background:#dff4e9}.matrix-status.absent{color:#913448;background:#ffe3e7}.matrix-status.late{color:#765817;background:#fff0c9}.matrix-status.excused{color:#285e91;background:#e4f0ff}.matrix-status.reported{color:#5a3da5;background:#eee5ff}.matrix-editor{gap:4px;display:grid}.matrix-editor select,.matrix-editor input{background:#fff;border:1px solid #d6c470;border-radius:8px;width:100%;min-width:104px;padding:6px;font-size:10px}.attendance-date-range{background:#f3f0ff;border-radius:13px;flex-wrap:wrap;align-items:flex-end;gap:10px;margin:-3px 0 14px;padding:12px;display:flex}.attendance-date-range label{color:#55468e;gap:4px;font-size:11px;font-weight:800;display:grid}.attendance-date-range input{background:#fff;border:1px solid #d8d1ed;border-radius:9px;padding:8px}.attendance-date-range span{color:#605a70;margin-left:auto;font-weight:750}@media (width<=760px){.attendance-matrix .matrix-student{width:145px;min-width:145px}.attendance-matrix{min-width:1280px}.attendance-date-range{align-items:stretch}.attendance-date-range label{flex:1}.attendance-date-range span{width:100%;margin:0}}.attendance-report-matrices{gap:18px;display:grid}.report-date-page{background:#fff;border:1px solid #d9deea;border-radius:16px;overflow:hidden;box-shadow:0 9px 24px #2e375f0f}.report-date-page>header{background:linear-gradient(100deg,#eee9ff,#eef8ff);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.report-date-page>header small{color:#6552b2;font-weight:850}.report-date-page>header h4{margin:3px 0 0;font-size:15px}.report-date-page>header>span{color:#51468a;background:#fff;border-radius:999px;padding:6px 9px;font-weight:800}.teacher-attendance-report-table .attendance-report-matrix{table-layout:fixed;min-width:1280px;font-size:10px}.attendance-report-matrix th,.attendance-report-matrix td{text-align:center;border-right:1px solid #dfe4ec;height:48px;padding:5px}.attendance-report-matrix thead th{text-align:center;background:#e9e3fa;height:68px}.attendance-report-matrix thead th small,.attendance-report-matrix thead th b,.attendance-report-matrix thead th em{display:block}.attendance-report-matrix thead th small{color:#5d4fab;min-height:22px;font-weight:850}.attendance-report-matrix thead th em{color:#727889;margin-top:2px;font-size:8px;font-style:normal}.attendance-report-matrix .report-order{z-index:4;background:#f5f6fa;width:38px;position:sticky;left:0}.attendance-report-matrix .report-student{z-index:4;text-align:left;background:#fff;width:170px;position:sticky;left:38px}.attendance-report-matrix thead .report-order,.attendance-report-matrix thead .report-student{z-index:6;background:#dfd7f7}.attendance-report-matrix .matrix-status{min-width:58px;padding:6px;font-size:9px}@media (width<=760px){.attendance-report-matrix .report-student{width:140px}.teacher-attendance-report-table .attendance-report-matrix{min-width:1160px}}.mobile-attendance-list{display:none}@media (width<=760px){.class-attendance-box{padding:12px 10px 18px}.class-attendance-box>header{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf8fff5;border-radius:14px;margin:0 -4px 10px;padding:10px;position:sticky;top:0;box-shadow:0 6px 18px #2d31501a}.teacher-class-header-actions{grid-template-columns:1fr 1fr!important;gap:8px!important;display:grid!important}.teacher-class-header-actions .teacher-auto-identity{grid-column:1/-1}.teacher-class-header-actions input,.teacher-class-header-actions select{width:100%;min-width:0;min-height:46px}.class-attendance-summary{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.class-attendance-summary>*{text-align:center;padding:7px 5px;font-size:11px}.attendance-matrix-wrap{display:none}.mobile-attendance-list{gap:10px;margin:12px 0 74px;display:grid}.mobile-attendance-card{background:#fff;border:1px solid #dfe4ec;border-radius:16px;padding:12px;box-shadow:0 7px 20px #2e375f12}.mobile-attendance-card>header{align-items:center;gap:9px;margin-bottom:10px;display:flex}.mobile-attendance-card>header span{color:#5b46ad;background:#eee9ff;border-radius:10px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.mobile-attendance-card>header b{color:#252b44;font-size:14px}.mobile-attendance-statuses{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.mobile-attendance-statuses button{color:#5f6573;touch-action:manipulation;background:#f2f3f7;border:1px solid #0000;border-radius:11px;min-height:44px;padding:8px 5px;font-size:12px;font-weight:850}.mobile-attendance-statuses button.present.selected{color:#25684d;background:#dff4e9;border-color:#76c8a4}.mobile-attendance-statuses button.absent.selected{color:#913448;background:#ffe3e7;border-color:#e994a3}.mobile-attendance-statuses button.late.selected{color:#765817;background:#fff0c9;border-color:#e7c568}.mobile-attendance-statuses button.excused.selected{color:#285e91;background:#e4f0ff;border-color:#8ebbe8}.mobile-attendance-statuses button.reported.selected{color:#5a3da5;background:#eee5ff;border-color:#b7a1e9}.mobile-attendance-card details{border-top:1px dashed #dfe2ea;margin-top:9px;padding-top:8px}.mobile-attendance-card summary{color:#6552b2;cursor:pointer;font-size:12px;font-weight:800}.mobile-attendance-card details input{width:100%;min-height:44px;margin-top:8px}.save-class-attendance{z-index:25;min-height:50px;margin-top:10px;position:sticky;bottom:10px;box-shadow:0 8px 24px #3c298e4d}.teacher-attendance-report{margin-top:8px}.teacher-attendance-report-table{-webkit-overflow-scrolling:touch;overflow-x:auto}}.student-search-select{isolation:isolate;width:100%;min-width:0;position:relative}.student-search-native{opacity:0;pointer-events:none;width:1px!important;height:1px!important;padding:0!important;position:absolute!important}.student-search-trigger{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:46px;display:flex;color:#372a50!important;background:#faf8ff!important;border:1px solid #d9d1e9!important;border-radius:12px!important;padding:10px 12px!important}.student-search-trigger span{overflow-wrap:anywhere}.student-search-select:focus-within{z-index:80}.student-search-dropdown{z-index:80;background:#fff;border:1px solid #d9d1e9;border-radius:14px;min-width:230px;margin-top:6px;padding:12px;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 32px #33214725}.student-search-dropdown>input{box-sizing:border-box;border:1px solid #d9d1e9;border-radius:10px;width:100%;min-height:44px;padding:10px;font-size:16px}.student-search-options{overscroll-behavior:contain;gap:4px;max-height:260px;margin-top:8px;display:grid;overflow:auto}.student-search-options button{white-space:normal;text-align:left;overflow-wrap:anywhere;color:#372a50;background:#f7f4fc;border:0;border-radius:9px;width:100%;min-height:44px;padding:10px}.student-search-options button[aria-pressed=true]{background:#e5dcf7}.student-search-close{color:#493471;background:#e5dcf7;border:0;border-radius:9px;width:100%;min-height:44px;margin-top:8px}.student-search-select button:focus-visible{outline-offset:2px;outline:2px solid #7962b8}.student-search-select button:disabled{opacity:.5}@media (width<=640px){.student-search-dropdown{min-width:0;box-shadow:none;box-sizing:border-box;position:relative;top:auto}.student-search-options{max-height:220px}}.panel-context-bar{background:#ffffffe0;border:1px solid #6247b124;border-radius:18px;grid-template-columns:auto minmax(260px,440px);justify-content:space-between;align-items:end;gap:14px;margin:0 0 18px;padding:12px 14px;display:grid;box-shadow:0 12px 30px #35266512}.panel-context-bar>*,.panel-context-navigation,.panel-context-student{min-width:0}.panel-context-navigation{gap:9px;display:flex}.panel-context-navigation button{color:#33285f;min-height:42px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:7px;padding:9px 15px;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;display:inline-flex}.panel-context-navigation button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #382a6d1f}.panel-context-navigation button:disabled{cursor:not-allowed;opacity:.42}.panel-context-navigation svg{flex:none;width:18px;height:18px}.panel-context-back{background:#eee8ff;border-color:#d8ccff!important}.panel-context-home{background:#e1f6f3;border-color:#bfe9e2!important}.panel-context-student{color:#40356c;gap:5px;font-weight:800;display:grid}.panel-context-student span{letter-spacing:.02em;font-size:.78rem}.panel-context-student select{color:#251c4d;width:100%;min-width:0;min-height:43px;font:inherit;text-overflow:ellipsis;background:#fff;border:2px solid #8c72e7;border-radius:13px;padding:8px 38px 8px 12px;font-weight:700}.panel-context-student select:disabled{color:#766f88;background:#f5f3fa;border-color:#d8d3e8}@media (width<=650px){.panel-context-bar{grid-template-columns:1fr;align-items:stretch;gap:10px;padding:11px}.panel-context-navigation{grid-template-columns:1fr 1fr;display:grid}.panel-context-navigation button,.panel-context-student,.panel-context-student select{width:100%;min-width:0}}.ls-report-dialog{color:#26324d;background:#fff;border-radius:20px;width:min(800px,100%);max-height:92vh;padding:22px;overflow:auto;box-shadow:0 24px 70px #151b3250}.ls-report-dialog>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ls-report-dialog h2{margin:0;font-size:22px}.ls-report-dialog header p{color:#67718b;margin:4px 0 0}.ls-report-dialog header button{cursor:pointer;background:#f1f2fa;border:0;border-radius:9px;padding:5px 12px;font-size:24px}.ls-report-controls{flex-wrap:wrap;gap:12px;margin:20px 0 12px;display:flex}.ls-report-controls label{flex:220px;gap:6px;font-size:13px;font-weight:700;display:grid}.ls-report-controls select{color:#26324d;background:#fff;border:1px solid #d7dced;border-radius:10px;width:100%;padding:10px}.ls-report-summary{color:#5d50a8;font-weight:800}.ls-report-preview{gap:12px;max-height:48vh;padding:8px 2px;display:grid;overflow:auto}.ls-report-preview article{background:#fbfbff;border:1px solid #e0e3ef;border-radius:12px;padding:12px}.ls-report-preview h3{margin:0 0 8px;font-size:16px}.ls-report-preview h3 small{color:#66738d;font-weight:600}.ls-report-preview article p{border-top:1px solid #eff0f7;flex-wrap:wrap;gap:5px 12px;margin:0;padding:6px 0;font-size:12px;display:flex}.ls-report-preview article p span{flex:240px}.ls-report-notice{color:#315a80;background:#eef7ff;border-radius:9px;padding:9px}.ls-report-dialog footer{flex-wrap:wrap;justify-content:flex-end;gap:9px;margin-top:16px;display:flex}.ls-report-dialog footer button{color:#443889;cursor:pointer;background:#eceafd;border:0;border-radius:10px;padding:10px 14px;font-weight:800}.ls-report-dialog footer button:last-child{color:#fff;background:#6257d7}.ls-report-dialog footer button:disabled{opacity:.45;cursor:not-allowed}.lesson-schedule{color:#26324d;max-width:100%;padding:20px 6px 60px}.ls-header{background:linear-gradient(115deg,#eef0ff,#e2f7f5,#fff0e9);border-radius:25px;justify-content:space-between;align-items:flex-start;gap:22px;padding:22px 26px;display:flex;box-shadow:0 12px 32px #4f568012}.ls-header h1{margin:4px 0;font-size:clamp(25px,3vw,35px)}.ls-header p{color:#495873;margin:0}.ls-eyebrow{letter-spacing:.17em;color:#5e62a9;font-size:11px;font-weight:900}.ls-header-actions,.ls-weekbar,.ls-toolbar,.ls-tabs,.ls-day-actions,.ls-dialog footer{align-items:center;gap:9px;display:flex}.ls-header-actions{flex-wrap:wrap}.ls-primary,.ls-soft,.ls-today{cursor:pointer;border:0;border-radius:12px;padding:10px 15px;font-weight:800}.ls-primary{color:#fff;background:#6257d7;align-items:center;gap:6px;display:inline-flex}.ls-soft{color:#45399d;background:#fff}.ls-weekbar{justify-content:center;margin:18px 0}.ls-weekbar>button{cursor:pointer;background:#fff;border:1px solid #dbdef0;border-radius:12px;padding:9px}.ls-weekbar>div{background:#fff;border-radius:14px;align-items:center;gap:8px;padding:10px 15px;display:flex}.ls-weekbar small{color:#747d95}.ls-tabs{background:#f1f2fc;border-radius:13px;padding:4px}.ls-tabs button,.ls-mobile-days button{cursor:pointer;color:#59617a;background:0 0;border:0;border-radius:10px;padding:9px 13px;font-weight:700}.ls-tabs button.selected,.ls-mobile-days button.selected{color:#5247b6;background:#fff;box-shadow:0 3px 12px #29376812}.ls-toolbar{flex-wrap:wrap;justify-content:space-between;margin-bottom:14px}.ls-toolbar select{background:#fff;border:1px solid #dce0ef;border-radius:12px;min-width:210px;padding:10px}.ls-grid{grid-template-columns:repeat(7,minmax(150px,1fr));gap:8px;display:grid;overflow-x:auto}.ls-day{background:#fff;border:1px solid #e3e6f1;border-radius:16px;flex-direction:column;min-height:205px;display:flex;overflow:hidden}.ls-day-head{background:#eff1fc;gap:2px;padding:11px 12px;display:grid}.ls-day:nth-child(7n+2) .ls-day-head{background:#eaf8f4}.ls-day:nth-child(7n+3) .ls-day-head{background:#fff1e8}.ls-day:nth-child(7n+4) .ls-day-head{background:#f5edfa}.ls-day:nth-child(7n+5) .ls-day-head{background:#eaf3ff}.ls-day:nth-child(7n+6) .ls-day-head{background:#fff7df}.ls-day:nth-child(7n) .ls-day-head{background:#ffeef1}.ls-day-head span,.ls-day-head small{color:#59667d;font-size:12px}.ls-day-body{flex:1;align-content:start;gap:7px;padding:8px;display:grid}.ls-entry,.ls-block{text-align:left;cursor:pointer;color:#293451;background:#f3f1ff;border:1px solid #d9d6fa;border-radius:12px;gap:3px;width:100%;padding:9px;display:grid}.ls-entry.private{background:#e9f8f4;border-color:#bee9dd}.ls-entry b{font-size:12px}.ls-entry span{font-weight:800}.ls-entry small{color:#4e5e71;line-height:1.35}.ls-block{background:repeating-linear-gradient(135deg,#ffebec,#ffebec 8px,#ffdde1 8px 16px);border-color:#f1bfc5;align-items:center;gap:5px;font-size:12px;display:flex}.ls-empty{color:#9aa4b2;padding:14px 5px;font-size:12px}.ls-day-actions{border-top:1px solid #edf0f5;justify-content:space-between;padding:7px}.ls-day-actions button{color:#5a53a2;cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;font-size:12px;display:inline-flex}.ls-free{background:#effaf4;border-radius:16px;margin-top:20px;padding:18px}.ls-free h2{align-items:center;gap:8px;margin:0 0 10px;font-size:17px;display:flex}.ls-free>div{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:6px;display:grid}.ls-free p{background:#fff;border-radius:8px;margin:0;padding:8px;font-size:13px}.ls-alert,.ls-notice{border-radius:12px;margin:12px 0;padding:12px 15px;font-weight:700}.ls-alert{color:#8c2e42;background:#fff0f1}.ls-alert button{color:#632a8b;cursor:pointer;background:0 0;border:0;text-decoration:underline}.ls-alert p{margin:3px 0}.ls-notice{color:#216346;background:#e5f7ea}.ls-overlay{z-index:1200;background:#1e233a9a;place-items:center;padding:14px;display:grid;position:fixed;inset:0}.ls-dialog{background:#fff;border-radius:20px;width:min(620px,100%);max-height:92vh;padding:22px;overflow:auto;box-shadow:0 24px 70px #151b3250}.ls-dialog header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.ls-dialog h2{margin:0;font-size:22px}.ls-dialog header button{cursor:pointer;background:#f2f2f8;border:0;border-radius:9px;padding:5px 12px;font-size:24px}.ls-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.ls-fields label{gap:5px;font-size:13px;font-weight:700;display:grid}.ls-fields label.wide{grid-column:1/-1}.ls-fields input,.ls-fields select,.ls-hours input{color:#283149;background:#fff;border:1px solid #d6dbe8;border-radius:10px;min-width:0;padding:9px}.ls-dialog footer{flex-wrap:wrap;justify-content:flex-end;margin-top:20px}.ls-dialog footer button:not(.ls-primary){cursor:pointer;background:#f1f2f8;border:0;border-radius:10px;padding:9px 13px}.ls-dialog footer .ls-danger{color:#a3404c;margin-right:auto}.ls-settings{width:min(700px,100%)}.ls-hours{gap:7px;margin-top:17px;display:grid}.ls-hours>div{grid-template-columns:1fr 75px 110px 110px;align-items:center;gap:8px;display:grid}.ls-hours label{align-items:center;gap:4px;font-size:12px;display:flex}.ls-mobile-days{display:none}@media (width<=900px){.ls-grid{grid-template-columns:repeat(7,minmax(155px,1fr))}.ls-header{flex-direction:column}.ls-mobile-days{gap:4px;margin:12px 0;display:flex;overflow:auto}.ls-mobile-days button{white-space:nowrap}.ls-mobile-days small,.ls-grid{display:block}.ls-day{display:none}.ls-day.mobile-selected{min-height:230px;display:flex}.ls-weekbar{flex-wrap:wrap}.ls-toolbar{align-items:stretch}.ls-toolbar select{width:100%}}@media (width<=560px){.ls-fields{grid-template-columns:1fr}.ls-fields label.wide{grid-column:auto}.ls-hours>div{grid-template-columns:1fr 65px 88px 88px;gap:4px}.ls-hours input{padding:6px;font-size:12px}.ls-header{padding:18px}}.lesson-schedule>.ls-alert{z-index:1300;width:min(640px,100vw - 28px);position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #51243835}.ls-class-picker{border:1px solid #d6dbe8;border-radius:12px;grid-column:1/-1;min-width:0;margin:0;padding:10px 12px 12px}.ls-class-picker legend{color:#283149;padding:0 5px;font-size:13px;font-weight:800}.ls-class-picker legend small{color:#59667d;font-size:11px;font-weight:500;display:block}.ls-class-options{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:6px;max-height:170px;display:grid;overflow-y:auto}.ls-class-options label{color:#303850;cursor:pointer;background:#f1f0fc;border-radius:9px;align-items:center;gap:7px;padding:8px 9px;display:flex}.ls-class-options label:has(input:checked){color:#215b44;background:#e3f7ed}.ls-class-options input{accent-color:#6257d7;width:17px;height:17px;margin:0}.ls-class-picker p{color:#8c2e42;margin:0;font-size:12px}.ls-recurrence-hint{color:#254b71;background:#eef7ff;border-radius:11px;margin:-5px 0 16px;padding:11px 13px;font-size:13px;font-weight:700;line-height:1.45}.ls-recurring-badge{color:#503788;vertical-align:middle;background:#e8dfff;border-radius:5px;margin-left:5px;padding:2px 5px;font-size:10px;font-style:normal;display:inline-block}.ls-fields label.wide:has(input[type=checkbox]){background:#faf9ff;border:1px solid #dfdcf5;border-radius:10px;align-items:center;gap:9px;padding:9px 11px;display:flex}.ls-fields label.wide input[type=checkbox]{accent-color:#6257d7;width:18px;min-width:18px;height:18px}.ls-teacher-line{flex-wrap:wrap;align-items:baseline;gap:5px;font-weight:700;display:flex}.ls-teacher-line em{color:#65718b;font-size:10px;font-style:normal;font-weight:600}.ls-duration{font-weight:800;color:#4e42a7!important}
