/* Tutor chrome only: receipt artwork and public pages retain their own styles. */
@font-face{font-family:TeacherNoto;src:url('fonts/NotoSans-LatinVietnamese.woff2') format('woff2');font-display:swap;font-weight:100 900}
body.teacher-ui{background:#f6f4ee;padding:20px;color:#19354a}
.teacher-ui #main-app,.teacher-ui #main-app button,.teacher-ui #main-app input,.teacher-ui #main-app select,.teacher-ui #main-app textarea{font-family:TeacherNoto,'Segoe UI',sans-serif;letter-spacing:normal}
.teacher-ui #main-app{max-width:1560px;gap:24px;--primary:#e87513;--border:#e9e2d7;--text-dark:#19354a;--text-light:#73808b}
.teacher-ui .teacher-sidebar{width:234px;padding:22px 14px;gap:5px;background:#fffdf8;border:1px solid #e9e2d7;border-radius:20px;box-shadow:0 6px 24px #41351f05;top:20px;min-height:calc(100vh - 40px)}
.teacher-ui .teacher-side-brand{margin:0 0 22px;padding:4px 0!important;display:flex!important}
.teacher-ui .teacher-side-brand .qll-logo-mark{width:36px;height:36px}.teacher-ui .teacher-side-brand .qll-logo-word{font-size:20px}.teacher-ui .teacher-side-brand .qll-logo-domain{font-size:11px}
.teacher-ui .teacher-side-label{font-size:10px;letter-spacing:1.5px;color:#8b8f92;padding:20px 14px 7px;font-weight:700}
.teacher-ui .teacher-sidebar button,.teacher-ui .teacher-sidebar>a:not(.teacher-side-brand){display:flex;align-items:center;gap:12px;min-height:47px;width:100%;border:1px solid transparent;border-radius:12px;padding:11px 14px;background:transparent;color:#50606f;text-decoration:none;font-size:13px;font-weight:650;transition:background .16s,border-color .16s,color .16s;text-align:left}
.teacher-ui [data-ui-icon]{display:inline-flex;flex:none}.teacher-ui [data-ui-icon] svg{width:21px;height:21px}
.teacher-ui .teacher-sidebar button:hover,.teacher-ui .teacher-sidebar>a:not(.teacher-side-brand):hover{background:#fff1dc;border-color:#f3d9ac;color:#b9570c}
.teacher-ui .teacher-sidebar button.active{background:linear-gradient(110deg,#ff771d,#ffbc2d);border-color:#ff9b24;color:white;box-shadow:0 5px 13px #ed8e1826}
.teacher-side-note{margin-top:auto;padding:32px 14px 5px;font-size:10px;color:#96918a}
.teacher-ui .main-wrapper{gap:18px}.teacher-ui .top-nav{border:1px solid #e9e2d7;background:#fffdf9;border-radius:16px;padding:14px 20px;box-shadow:0 4px 20px #41351f04;min-height:72px}
.teacher-ui .public-site-btn{background:#fff7e9;border-color:#f0dec2;color:#986024;border-radius:10px}.teacher-ui .avatar{background:linear-gradient(135deg,#ff761d,#ffc637);color:white;border:none}.teacher-ui .app-logo{color:#19354a;font-size:15px}.teacher-ui #dailyCountDisplay{color:#849089}
.teacher-ui .main-wrapper>.stats-grid{gap:14px;margin:0}.teacher-ui .main-wrapper>.stats-grid .stat-card{border:1px solid #e9e2d7!important;border-radius:15px;background:#fffdf9;box-shadow:0 4px 18px #41351f04;padding:17px 18px;position:relative;text-align:left;min-width:0}
.teacher-ui .stat-card h3{font-size:11px;line-height:1.5;margin:0 0 5px;text-transform:none;letter-spacing:0;color:#697987}.teacher-ui .stat-card .value{font-size:29px;line-height:1.25;color:#19354a}.teacher-ui .stat-card .dashboard-money-note{font-size:10px;color:#909b9d;margin-top:5px}.teacher-stat-icon{float:right;background:#fff0d6;color:#e88517;border-radius:11px;padding:10px;display:flex}.teacher-stat-icon svg{width:22px;height:22px}
.teacher-ui #adminTrafficStats .stat-card{padding:11px 14px}.teacher-ui #adminTrafficStats .value{font-size:19px}.teacher-ui #adminTrafficStats .dashboard-money-note{display:none}
.teacher-ui .main-box{padding:0;background:transparent;border:0;box-shadow:none;overflow:visible}.teacher-page-head{display:flex;gap:16px;align-items:center;background:linear-gradient(105deg,#fff0d9,#fff9e9);border:1px solid #efddbb;border-radius:17px;padding:22px 24px;margin-bottom:20px}.teacher-heading-icon{background:linear-gradient(135deg,#ff7d23,#ffba31);color:white;padding:13px;border-radius:13px;display:flex;box-shadow:0 5px 12px #e9941825}.teacher-heading-icon svg{width:26px;height:26px}.teacher-eyebrow{font-size:9px;letter-spacing:1.5px;color:#b58143;font-weight:700;margin-bottom:5px}.teacher-page-head h1{margin:0;font-size:25px;font-weight:750;color:#19354a;line-height:1.3}.teacher-page-head p{margin:7px 0 0;font-size:12px;color:#7b7c75;line-height:1.6}.teacher-page-actions{margin-left:auto}.teacher-header-date{font-size:10px;display:grid;gap:5px;color:#8c744f}.teacher-header-date input{padding:8px 10px;border-radius:9px;border:1px solid #ecd7b3;color:#19354a;background:#fffdf9}
.teacher-ui .main-box>.toolbar{display:none!important}.teacher-ui .main-box>[id^=view-]{background:#fffdfb;border:1px solid #e9e2d7;border-radius:17px;padding:22px;box-shadow:0 5px 20px #41351f04;min-width:0}.teacher-ui .main-box>[id^=view-] h2,.teacher-ui .main-box>[id^=view-] h3{color:#19354a!important}.teacher-ui .tc-main-title{display:none}.teacher-ui .tc-heading{margin-top:0}.teacher-ui .tc-card{border-color:#ece4d7;background:white;box-shadow:0 2px 9px #41351f03}.teacher-ui .tc-legacy{border-color:#ece4d7;background:#fffaf1}
.teacher-ui #main-app .btn{border:1px solid #e9ddc9;background:#fffaf1;color:#875a2f;border-radius:9px;box-shadow:none;font-weight:650}.teacher-ui #main-app .btn:hover{background:#ffefd5;border-color:#edbf79;color:#ac5411}.teacher-ui #main-app .btn.active,.teacher-ui #main-app button[type=submit]{background:linear-gradient(110deg,#ff7b21,#ffb92c)!important;color:#fff!important;border-color:#ff9d26!important;box-shadow:0 4px 10px #ed8e181a}.teacher-ui #main-app button:focus-visible,.teacher-ui #main-app a:focus-visible{outline:3px solid #f5b94c;outline-offset:3px}
.teacher-ui #main-app table{border-collapse:separate;border-spacing:0}.teacher-ui #main-app th{background:#faf3e7!important;color:#65717b!important;border-color:#eee4d4!important;font-size:11px;font-weight:750;padding:14px 12px}.teacher-ui #main-app td{border-color:#eee7dd!important;padding:14px 12px}.teacher-ui #main-app tbody tr:hover{background:#fffbf3}.teacher-ui #main-app input:not([type=checkbox]):not([type=radio]),.teacher-ui #main-app select,.teacher-ui #main-app textarea{border-color:#e5ddce;border-radius:9px;background:#fff;color:#19354a}.teacher-ui #main-app input:focus,.teacher-ui #main-app select:focus,.teacher-ui #main-app textarea:focus{outline:2px solid #ffc76b;outline-offset:1px}
.teacher-ui #view-schedule>div:first-child{border-color:#eee0c9!important;background:#fffaf1!important;box-shadow:none!important}.teacher-ui #weekRangeLabel{color:#a96522!important}.teacher-ui .timetable th{background:#f5ead7!important}.teacher-ui .timetable td{background:#fffdf9}.teacher-ui .today-schedule-box{border-color:#efdfc8;background:#fffaf0}.teacher-ui .mobile-home-title{display:none}
.teacher-ui .student-page{width:100%;position:static;background:transparent}.teacher-ui #manageModal .student-manage-modal{width:100%;max-width:none;max-height:none;overflow:visible;border:0;box-shadow:none;border-radius:0;background:transparent}.teacher-ui #manageModal .manage-header{background:#fff7e9;color:#805a30;padding:12px 15px;border:1px solid #eddfc9;border-radius:12px;gap:12px;flex-wrap:wrap}.teacher-ui #manageModal .manage-header>span{font-size:11px;letter-spacing:.3px}.teacher-ui #manageModal .manage-header>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.teacher-ui #manageModal .manage-header a,.teacher-ui #manageModal .manage-header button{background:white!important;color:#9a642c!important;border:1px solid #e9d5b5!important;margin:0!important;padding:8px 12px!important;font-size:11px!important}.teacher-ui #manageModal .manage-body{padding:18px 0 0;max-height:none;overflow:visible}.teacher-ui .student-list-toolbar{gap:12px;flex-wrap:wrap}.teacher-ui .student-list-title{color:#19354a;font-size:17px}.teacher-ui .student-editor-panel{background:#fffaf1;border-color:#edd9b7;margin-top:20px;padding:20px;border-radius:14px;scroll-margin-top:24px}.teacher-ui .student-editor-head{color:#19354a;border-color:#edddc3}.teacher-ui #billingPreview{background:#fff5df!important;border-color:#eed7af!important;color:#996124!important}.teacher-ui #manageModal .student-actions{flex-wrap:wrap}
.teacher-ui .journal-head,.teacher-ui .library-head{padding-bottom:16px;border-bottom:1px solid #eee3d2}.teacher-ui #view-guide>div{border-color:#e6c58b!important;background:#fffdf8!important;box-shadow:none!important}.teacher-ui #view-guide h2,.teacher-ui #view-guide h3{color:#845c30!important}.teacher-ui .class-card{border-color:#eadac1;background:#fffaf2}.teacher-ui .mobile-bottom-nav{background:#fffdf9;border-top:1px solid #e9e2d7}.teacher-ui .mobile-bottom-nav .nav-item.active{background:#fff0d8;color:#d77413;border-radius:12px}.teacher-ui .nav-icon svg{width:22px;height:22px}.teacher-ui .nav-icon{display:flex;justify-content:center;margin-bottom:4px}.teacher-ui .modal-overlay:not(#receiptModal) .manage-header{background:linear-gradient(110deg,#ffeed4,#fff8e7)!important;color:#19354a!important;border-bottom:1px solid #ecd9b9}.teacher-ui .modal-overlay:not(#receiptModal) .manage-header button{color:#9f642a;background:white;border:1px solid #e5d2b5;border-radius:8px}.teacher-ui .tc-modal{border:1px solid #ead9bc;box-shadow:0 18px 70px #26334120}
@media(min-width:901px){.teacher-ui .teacher-sidebar{display:flex!important}.teacher-ui .mobile-bottom-nav{display:none!important}}
@media(min-width:901px) and (max-width:1150px){.teacher-ui .teacher-sidebar{width:206px}.teacher-ui #main-app{gap:16px}.teacher-ui .teacher-side-brand .qll-logo-word{font-size:17px}.teacher-ui .main-wrapper>.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){body.teacher-ui{padding:12px 10px 90px}.teacher-ui .teacher-sidebar{display:none!important}.teacher-ui .main-wrapper{gap:12px}.teacher-ui #main-app{display:block;max-width:100%}.teacher-ui .top-nav{padding:10px 12px;border-radius:13px;min-height:58px}.teacher-ui .main-wrapper>.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.teacher-ui .main-wrapper>.stats-grid .stat-card{padding:12px!important}.teacher-ui .stat-card .value{font-size:24px}.teacher-stat-icon{padding:7px}.teacher-stat-icon svg{width:19px;height:19px}.teacher-ui #adminTrafficStats{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.teacher-ui #adminTrafficStats .stat-card{padding:8px 4px!important;text-align:center}.teacher-ui #adminTrafficStats h3{font-size:8px}.teacher-ui #adminTrafficStats .value{font-size:18px}.teacher-page-head{padding:16px 14px;gap:11px;margin-bottom:12px;flex-wrap:wrap}.teacher-heading-icon{padding:10px}.teacher-page-head h1{font-size:21px}.teacher-page-head p{font-size:11px;max-width:260px}.teacher-page-actions{margin-left:0;width:100%}.teacher-header-date{display:flex;align-items:center;justify-content:space-between}.teacher-ui .main-box>[id^=view-]{padding:14px 12px;border-radius:14px}.teacher-ui #manageModal{max-height:none;overflow:visible}.teacher-ui #manageModal .manage-header>span{display:none}.teacher-ui #manageModal .student-list-toolbar{align-items:flex-start}.teacher-ui #manageModal table{min-width:650px;table-layout:auto!important}.teacher-ui #manageModal th,.teacher-ui #manageModal td{width:auto!important;max-width:none!important;white-space:normal!important}.teacher-ui #manageModal .student-name-full{display:block!important}.teacher-ui #manageModal .student-name-mobile{display:none!important}.teacher-ui #manageModal .student-fee-full{display:block!important}.teacher-ui #manageModal .student-fee-mobile{display:none!important}.teacher-ui .student-editor-panel{padding:14px}.teacher-ui #manageModal .form-row{grid-template-columns:1fr!important}.teacher-ui #manageModal .start-date-selects{grid-template-columns:1fr 1fr 1.25fr!important}.teacher-ui #main-app th,.teacher-ui #main-app td{padding:11px 8px}.teacher-ui .tc-card{grid-template-columns:1fr;padding:15px;gap:10px}.teacher-ui .tc-actions{justify-content:flex-start}.teacher-ui .tc-heading{align-items:flex-start;flex-wrap:wrap}.teacher-ui .mobile-home-head{background:transparent}.teacher-ui .mobile-bottom-nav .nav-item{padding:7px 2px;font-size:10px}.teacher-ui #view-schedule>div:first-child>div:first-child{gap:6px!important;flex-wrap:wrap}.teacher-ui #weekRangeLabel{font-size:12px!important}}
.teacher-ui .main-wrapper>.stats-grid .stat-card .value{-webkit-text-fill-color:#19354a}.teacher-ui .main-wrapper>.stats-grid .stat-card{text-align:left!important;display:block!important}.teacher-ui .main-wrapper>.stats-grid .stat-card .teacher-stat-icon{float:right}.teacher-ui #library-home-view [onclick]{background:linear-gradient(135deg,#fffaf0,#fffdf9)!important;border:1px solid #ecd9b8!important;box-shadow:none!important;border-radius:15px!important;transition:background .16s,transform .16s}.teacher-ui #library-home-view [onclick]:hover{background:#fff0d5!important;transform:translateY(-2px)}.teacher-ui #library-home-view [onclick] [style*="color"]{color:#9a632c!important}.teacher-ui .student-list-toolbar{background:#fffaf1;border-color:#eee0c9}.teacher-ui #main-app .stat-card h3{font-weight:600}.teacher-ui #main-app td{font-weight:500}
@media(max-width:900px){.teacher-ui .main-wrapper>.stats-grid{background:transparent!important;border:0!important;padding:0!important;gap:9px!important;box-shadow:none!important;display:grid!important}.teacher-ui .main-wrapper>.stats-grid .stat-card{border-radius:13px!important;background:#fffdf9!important;box-shadow:0 3px 12px #41351f04!important}.teacher-ui .main-wrapper>.stats-grid .stat-card h3{font-size:10px!important;line-height:1.5!important}.teacher-ui .main-wrapper>.stats-grid .stat-card .value{font-size:24px!important;margin-top:5px!important}.teacher-ui #adminTrafficStats .stat-card h3{font-size:8px!important}.teacher-ui #adminTrafficStats .stat-card .value{font-size:17px!important}.teacher-ui #manageModal .table-responsive{overflow-x:auto!important}.teacher-ui #manageModal .fee-full{display:block!important}.teacher-ui #manageModal .fee-mobile{display:none!important}.teacher-ui #manageModal thead th:nth-child(3){font-size:11px!important}.teacher-ui #manageModal thead th:nth-child(3)::after{content:none}.teacher-ui #manageModal .student-name-full{white-space:normal}.teacher-ui .teacher-page-head{margin-top:0}.teacher-ui .student-list-sub{display:block!important}}
.teacher-ui .tc-progress{height:6px;border-radius:9px;background:#f4ead8;max-width:250px;margin:9px 0;overflow:hidden}.teacher-ui .tc-progress span{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#ff7a20,#ffc133)}
.teacher-ui .journal-head{background:#fff6e7;border-color:#ecd9b8}.teacher-ui .journal-session-card{border-color:#ebddc6;border-left-color:#ed9728}.teacher-ui .journal-session-card.planned{border-left-color:#d0af75;background:#fffaf2}.teacher-ui .journal-order{background:#fff0d4;color:#b57225}.teacher-ui .journal-session-card.planned .journal-order{background:#f7edda;color:#9e7842}.teacher-ui .journal-student-head{background:#fff3dd;color:#885d2e}
@media(max-width:900px){.teacher-ui .main-wrapper>.stats-grid:not(#adminTrafficStats){grid-template-columns:repeat(2,minmax(0,1fr))!important}.teacher-ui #adminTrafficStats{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
/* Approved compact tutor theme v2. Brand files are deliberately untouched. */
.teacher-ui #main-app{--teacher-active:linear-gradient(135deg,#ffb32c,#ff850b);--teacher-soft:linear-gradient(110deg,#f8b477,#fbd17a);gap:16px}
.teacher-ui .teacher-sidebar{padding:16px 12px;gap:3px}.teacher-ui .teacher-side-brand{margin-bottom:14px}.teacher-ui .teacher-side-label{padding-top:15px}.teacher-ui .teacher-sidebar button.active{background:var(--teacher-active)!important;border-color:#ff9d24;color:#fff}.teacher-ui .main-wrapper{gap:12px}.teacher-ui .main-wrapper>.stats-grid{gap:12px}.teacher-ui .main-wrapper>.stats-grid .stat-card{padding:13px 16px}.teacher-ui .top-nav{min-height:60px;padding:10px 16px}.teacher-ui .teacher-page-head{background:transparent;border:0;border-radius:0;padding:4px 0 10px;margin-bottom:8px;gap:12px}.teacher-ui .teacher-heading-icon,.teacher-ui .teacher-eyebrow{display:none}.teacher-ui .teacher-page-head h1{font-size:25px}.teacher-ui .teacher-page-head p{margin-top:4px}.teacher-ui .main-box>[id^=view-]{border:1px solid #d9cbb6;padding:16px;border-radius:13px;box-shadow:0 3px 12px #41351f03}.teacher-ui .main-wrapper>.stats-grid .stat-card,.teacher-ui .top-nav{border-color:#ded2bf!important;border-radius:12px}.teacher-ui #main-app .btn.active,.teacher-ui #main-app button[type=submit]{background:var(--teacher-active)!important;border-color:#ff9d24!important}.teacher-ui #main-app th,.teacher-ui #main-app th *{-webkit-text-fill-color:#19354a!important;color:#19354a!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}.teacher-ui #main-app th{background:var(--teacher-soft)!important;border-color:#dbc8aa!important}.teacher-ui #main-app td{border-color:#e0d3bf!important}.teacher-ui .student-list-toolbar{background:transparent;border:0;padding:8px 0;margin-bottom:10px}.teacher-ui #manageModal .manage-header{background:transparent;border:0;padding:0;justify-content:flex-end}.teacher-ui #manageModal .manage-header>span{display:none}.teacher-ui #manageModal .manage-body{padding-top:0}.teacher-ui .student-editor-panel{border:1px solid #d9cbb6;background:#fffdf9}.teacher-ui #manageModal .student-actions{flex-direction:row;align-items:center;gap:5px}.teacher-ui #manageModal .student-action-bottom{display:flex;gap:5px}.teacher-ui #manageModal .student-actions .btn{padding:6px 8px;font-size:11px}.teacher-ui #manageModal td{padding:11px 10px}.teacher-ui .table-responsive{border-radius:10px}.teacher-ui .tc-card,.teacher-ui .class-card,.teacher-ui .journal-head,.teacher-ui .journal-session-card{border-color:#d9cbb6}.teacher-ui .tc-heading{gap:12px}.teacher-ui .tc-card{padding:16px;gap:12px}
/* Each schedule cell, including empty ones, is a separate outlined block. */
.teacher-ui #view-schedule .timetable{border-collapse:separate!important;border-spacing:5px!important;border:0!important;box-shadow:none!important;background:transparent;table-layout:fixed;width:100%}.teacher-ui #view-schedule .timetable th{background:var(--teacher-soft)!important;border:1px solid #edbc7e!important;border-radius:9px;padding:12px 6px!important;color:#19354a!important;-webkit-text-fill-color:#19354a!important}.teacher-ui #view-schedule .timetable th.corner-th{background:var(--teacher-soft)!important;background-image:var(--teacher-soft)!important}.teacher-ui #view-schedule .timetable td{border:1.5px solid #d6b78e!important;border-radius:10px;background:#fffdf9!important;padding:8px!important;height:105px;vertical-align:top}.teacher-ui #view-schedule .timetable td:first-child{background:#fff8ed!important;vertical-align:middle;color:#19354a!important}.teacher-ui #view-schedule .timetable td:first-child *{color:#19354a!important}.teacher-ui #view-schedule .table-responsive>div{border:0!important;background:transparent!important}.teacher-ui #view-schedule>div:first-child{margin-bottom:8px!important;padding:8px 10px!important}.teacher-ui #view-schedule .timetable th .tuition-due-badge{background:#fff6dc!important;color:#905614!important;-webkit-text-fill-color:#905614!important}
/* Monthly click-only attendance: logic and selected-student scope remain intact. */
.teacher-ui #attendance-step-2>div:first-child{gap:8px!important;margin-bottom:10px!important}.teacher-ui #attendance-step-2>div:first-child>div:nth-child(2){padding:12px!important;background:#fffdf9!important;border-color:#d9cbb6!important}.teacher-ui #attDaysGrid{gap:6px!important;justify-items:stretch!important;margin-top:8px!important}.teacher-ui #attDaysGrid .calendar-header-cell{width:100%!important;height:35px!important;background:var(--teacher-soft)!important;color:#19354a!important;box-shadow:none!important;font-size:12px!important;border:1px solid #edbc7e!important;border-radius:7px!important}.teacher-ui #attDaysGrid .day-btn{width:100%!important;height:48px!important;margin:0;border:1px solid #d9cbb6!important;border-radius:8px;box-shadow:none;font-size:14px;background:#fff;color:#19354a;position:relative}.teacher-ui #attDaysGrid .day-btn.suggested:not(.selected){background:#fff!important;border:2px solid #e9a23d!important;color:#19354a!important}.teacher-ui #attDaysGrid .day-btn.selected{background:var(--teacher-active)!important;color:white!important;border:1px solid #ff9d24!important;box-shadow:none!important}.teacher-ui #attDaysGrid .day-btn.absent-recorded:not(.selected){background:#fff!important;border:2px solid #e9a23d!important;color:#19354a!important}.teacher-ui #attDaysGrid .day-btn.absent-recorded:not(.selected)::after,.teacher-ui #attDaysGrid .day-btn.mixed-recorded:not(.selected)::after{content:'';width:14px;height:14px;position:absolute;right:5px;bottom:4px;background:transparent url('absence-cross.png') center/contain no-repeat!important;border-radius:0}.teacher-ui #attDaysGrid .day-btn.partial-present:not(.selected){background:#fff4e0!important;border:2px solid #e9a23d!important;color:#19354a!important}.teacher-ui #attDaysGrid .day-btn.partial-present:not(.selected)::after{content:none}.teacher-ui #attDaysGrid .day-btn.mixed-recorded:not(.selected){background:#fff4e0!important;border:2px solid #e9a23d!important;color:#19354a!important}.teacher-ui .attendance-legend{margin:10px 0;gap:12px}.teacher-ui .attendance-legend .legend-present{background:var(--teacher-active)!important;border-color:#ff9d24}.teacher-ui .attendance-legend .legend-suggested{background:white!important;border:2px solid #e9a23d}.teacher-ui .attendance-legend .legend-absent{background:transparent url('absence-cross.png') center/contain no-repeat!important;border:0;border-radius:0;width:14px;height:14px}.teacher-ui .attendance-table{border:1px solid #d9cbb6;overflow:hidden}.teacher-ui .attendance-table th{background:#faf0df!important}.teacher-ui .attendance-all-toggle input,.teacher-ui .attendance-select-cell input{accent-color:#ef9516}.teacher-ui #view-guide>div{margin-bottom:12px!important}.teacher-ui .journal-head{padding:12px;gap:12px}.teacher-ui .journal-session-list{gap:8px}
@media(max-width:900px){.teacher-ui .teacher-page-head{padding:3px 2px 8px;gap:8px}.teacher-ui .teacher-page-head h1{font-size:22px}.teacher-ui .teacher-page-head p{max-width:none}.teacher-ui .main-box>[id^=view-]{padding:12px 9px}.teacher-ui #attDaysGrid{gap:4px!important}.teacher-ui #attDaysGrid .day-btn{height:39px!important;font-size:12px}.teacher-ui #attDaysGrid .calendar-header-cell{height:29px!important;font-size:9px!important}.teacher-ui #attDaysGrid .day-btn.absent-recorded:not(.selected)::after,.teacher-ui #attDaysGrid .day-btn.mixed-recorded:not(.selected)::after{width:12px;height:12px;right:2px;bottom:2px}.teacher-ui #manageModal table{min-width:720px}.teacher-ui #view-schedule .timetable td{height:100px!important}.teacher-ui .student-list-toolbar{padding:8px 0!important}.teacher-ui #manageModal .manage-header a,.teacher-ui #manageModal .manage-header button{padding:7px 9px!important}.teacher-ui .main-wrapper>.stats-grid .stat-card{padding:10px!important}}
.teacher-ui #view-schedule .timetable .shift-cell,.teacher-ui #view-schedule .timetable .shift-cell *{-webkit-text-fill-color:#19354a!important;color:#19354a!important}.teacher-ui .tc-calendar-badge{background:#fff5dc!important;color:#935b17!important;-webkit-text-fill-color:#935b17!important;border-color:#e8ba6c!important;font-weight:700}.teacher-ui #attDaysGrid .calendar-empty{width:100%;height:48px;background:#f2f1ed;border:1px solid #e1ddd4;border-radius:8px}.student-search-tools{display:flex;gap:12px;margin:8px 0 12px}.student-search-tools label{display:grid;gap:4px;font-size:10px;color:#6b7781}.student-search-tools label:first-child{width:min(330px,65%)}.student-search-tools input,.student-search-tools select{width:100%;padding:9px 11px;font-size:12px}.student-empty{padding:24px!important;text-align:center;color:#71808c}
@media(max-width:900px){.teacher-ui #attDaysGrid .calendar-empty{height:39px}.student-search-tools{gap:8px}.student-search-tools label{min-width:0}.student-search-tools label:last-child{flex:1}}
.teacher-ui #attendance-step-2 button[onclick="window.autoFillMonthAttendance()"]{background:#fff2da!important;color:#9c621e!important;border:1px solid #e8bf80!important}.teacher-ui #attDaysGrid .day-btn.absent-recorded:not(.selected)::after,.teacher-ui #attDaysGrid .day-btn.mixed-recorded:not(.selected)::after,.teacher-ui .attendance-legend .legend-absent{background-size:155% 155%!important}.teacher-ui #main-app .attendance-table th{background:#faf0df!important}
.teacher-ui #manageModal .manage-col-schedule{font-size:11px;min-width:140px}.teacher-ui #manageModal .manage-col-schedule span{display:block;white-space:nowrap;line-height:1.7}.teacher-ui #manageModal .student-action-top{display:flex;gap:5px}.teacher-ui #manageModal .report-student-btn,.teacher-ui #manageModal .student-action-share,.teacher-ui #manageModal .student-action-test{background:#fffaf0!important;border-color:#ead5b2!important;color:#885b2f!important}.teacher-ui #manageModal .student-action-edit{color:#885b2f!important}
@media(max-width:900px){.teacher-ui #manageModal table{min-width:820px}.teacher-ui #manageModal .student-action-bottom{display:flex!important}.teacher-ui #manageModal .student-action-report{width:auto!important}}

/* Approved overview/student design: a single continuous table heading. */
body.teacher-ui{background:#f7f6f2}
.teacher-ui #view-dashboard,.teacher-ui #view-students{background:#fff;border-color:#e6e2da;box-shadow:0 3px 14px #19354a04}
.teacher-ui #view-dashboard thead,.teacher-ui #view-students thead{background:linear-gradient(110deg,#ffe1bc,#fff0c9)}
.teacher-ui #main-app #view-dashboard thead th,.teacher-ui #main-app #view-students thead th{background:transparent!important;border:0!important;color:#19354a!important;-webkit-text-fill-color:#19354a!important;font-weight:600;font-size:12px;padding:13px 12px}
.teacher-ui #view-dashboard td,.teacher-ui #view-students td{border-color:#eeeae3!important;font-size:13px}
.teacher-ui #view-dashboard td *,.teacher-ui #view-students td *{font-family:TeacherNoto,'Segoe UI',sans-serif!important;text-shadow:none!important}
.teacher-ui #view-dashboard .student-name,.teacher-ui #view-students .student-name{color:#19354a!important;font-weight:600!important}
.teacher-ui #view-dashboard th:nth-child(4),.teacher-ui #view-dashboard td:nth-child(4){text-align:center}
.teacher-ui #view-dashboard th:nth-child(5),.teacher-ui #view-dashboard td:nth-child(5),.teacher-ui #view-students th:nth-child(4),.teacher-ui #view-students td:nth-child(4){text-align:right}
.teacher-ui .student-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.teacher-ui .student-header-actions>a,.teacher-ui .student-header-actions>button{margin:0!important;padding:8px 12px!important;border:1px solid #e6e2da!important;border-radius:8px!important;background:white!important;color:#50606f!important;font-size:12px!important;font-weight:500!important;text-decoration:none;min-height:34px;cursor:pointer}
.teacher-ui .student-header-actions>.student-add-main{background:var(--teacher-active)!important;color:white!important;border-color:#ffad35!important}
.teacher-ui .student-list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 0 14px!important}
.teacher-ui #manageModal .student-actions .btn{min-height:32px;background:#fff;border-color:#e6e2da;color:#50606f;font-weight:500}
.teacher-ui #manageModal .student-actions .student-action-delete{border-color:#f1d4d4!important;color:#c44f4f!important;background:#fffafa!important}
.teacher-ui #adminTrafficStats{gap:0!important;border:1px solid #e6e2da;border-radius:12px;background:white;padding:9px 0}
.teacher-ui #adminTrafficStats .stat-card{background:transparent;border:0!important;border-radius:0;box-shadow:none;padding:3px 12px!important;text-align:center}
.teacher-ui #adminTrafficStats .stat-card+.stat-card{border-left:1px solid #e6e2da!important}
.teacher-ui #adminTrafficStats .value{font-size:18px}.teacher-ui #adminTrafficStats h3{margin:0;font-size:10px;font-weight:500}
@media(max-width:900px){.teacher-ui .student-header-actions{gap:5px}.teacher-ui .student-header-actions>a,.teacher-ui .student-header-actions>button{font-size:11px!important;padding:7px 8px!important}.teacher-ui .student-list-toolbar{align-items:flex-start;flex-direction:column}.teacher-ui #adminTrafficStats .stat-card{padding:3px!important}.teacher-ui #adminTrafficStats h3{font-size:8px}}
.teacher-ui #main-app #manageModal .student-actions .btn{background:#fff!important;border-color:#e6e2da!important;color:#50606f!important;font-weight:500!important;box-shadow:none!important}
.teacher-ui #main-app #manageModal .student-actions .student-action-delete{border-color:#f1d4d4!important;color:#c44f4f!important;background:#fffafa!important}
