.attendance-hero{color:#fff;background-position:50%;background-size:cover;border-radius:25px;min-height:215px;padding:34px 42px;position:relative;overflow:visible;box-shadow:0 18px 38px #1a5b6626}.theme-ocean{background:linear-gradient(130deg,#0d6179,#26988c)}.theme-forest{background:linear-gradient(130deg,#285e54,#62a969)}.theme-sunset{background:linear-gradient(130deg,#a9553e,#e69b55)}.theme-violet{background:linear-gradient(130deg,#544a8f,#9a69a5)}.attendance-hero>div:first-child{z-index:2;position:relative}.attendance-hero span{background:#ffffff26;border-radius:99px;align-items:center;gap:7px;padding:6px 10px;display:inline-flex}.attendance-hero span svg{width:17px}.attendance-hero h2{margin:17px 0 8px;font-size:30px}.attendance-hero p{opacity:.9;margin:0 0 22px}.attendance-hero a{color:#176b87;background:#fff;border-radius:11px;align-items:center;gap:7px;padding:11px 16px;font-weight:800;text-decoration:none;display:inline-flex}.attendance-hero a svg{width:17px}.attendance-orb{background:#ffffff18;border-radius:50%;place-items:center;width:130px;height:130px;display:grid;position:absolute;top:50%;right:8%;translate:0 -50%;box-shadow:0 0 0 28px #ffffff0d,0 0 0 55px #ffffff08}.attendance-orb svg{width:58px;height:58px}.theme-trigger{z-index:3;color:#fff;background:#ffffff24;border:1px solid #fff8;border-radius:9px;align-items:center;gap:5px;padding:7px 10px;display:flex;position:absolute;top:16px;right:18px}.theme-trigger svg,.theme-picker svg{width:16px}.theme-picker{color:#27464e;background:#fff;border-radius:13px;width:210px;padding:12px;top:54px;right:18px;box-shadow:0 14px 35px #17343d35;z-index:9!important;position:absolute!important}.theme-picker b{margin-bottom:8px;display:block}.theme-picker button{color:#27464e;text-align:left;background:#fff;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.theme-picker button.active{background:#edf5f4}.theme-picker i{border-radius:5px;width:24px;height:16px}.dashboard-work-grid{margin:15px 0}.dashboard-todos,.dashboard-timetable,.dashboard-calendar{background:#fff;border:1px solid #dfe9e9;border-radius:18px;padding:18px}.dashboard-todos>header{justify-content:space-between;align-items:center;display:flex}.dashboard-todos header>div{align-items:center;gap:10px;display:flex}.dashboard-todos h2,.dashboard-todos small{margin:0;display:block}.dashboard-todos small{color:#789096}.dashboard-todos header svg{color:#2a8c82}.dashboard-todos header>b{color:#176b87}.dashboard-todos>form{grid-template-columns:1fr 155px auto;gap:8px;margin:14px 0;display:grid}.dashboard-todos form input{border:1px solid #cfdddd;border-radius:10px;min-width:0;padding:10px}.dashboard-todos form button{color:#fff;background:#176b87;border:0;border-radius:10px;align-items:center;gap:5px;padding:9px 13px;display:flex}.dashboard-todos form svg{width:16px}.dashboard-todos label{border-top:1px solid #edf2f2;align-items:center;gap:9px;padding:9px 4px;display:flex}.dashboard-todos label>span{flex:1}.dashboard-todos label.done>span{color:#91a0a3;text-decoration:line-through}.dashboard-todos label>svg{color:#3b8a62;width:17px}.dashboard-todos label button{color:#a36a6a;background:0 0;border:0}.dashboard-todos label button svg{width:16px}.dashboard-todos>div>p{text-align:center;color:#83969a;padding:9px}.dashboard-todos details{margin-top:8px}.dashboard-todos summary{cursor:pointer;color:#176b87;font-weight:750}.dashboard-todos time{color:#71868b;font-size:11px}.dashboard-planning-grid{grid-template-columns:1fr;gap:15px;margin-bottom:18px;display:grid}.dashboard-timetable>header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.dashboard-timetable header>div:first-child{align-items:center;gap:9px;display:flex}.dashboard-timetable h2,.dashboard-timetable small{margin:0;display:block}.dashboard-timetable small{color:#7b9095}.dashboard-timetable header svg{color:#2a8c82}.dashboard-timetable header>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.dashboard-timetable header a,.dashboard-timetable header button{white-space:nowrap;color:#176b87;background:#edf5f4;border:0;border-radius:8px;align-items:center;gap:5px;padding:7px 9px;font-size:11px;font-weight:750;text-decoration:none;display:inline-flex}.dashboard-timetable header button svg{width:14px}.course-color-panel{background:#f6f9f9;border-radius:11px;flex-wrap:wrap;gap:9px;margin:-4px 0 12px;padding:10px;display:flex}.course-color-panel label{background:#fff;border:1px solid #dfe9e9;border-radius:8px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;display:flex}.course-color-panel input{background:0 0;border:0;width:25px;height:25px;padding:0}.schedule-scroll{border:1px solid #dce7e8;border-radius:13px;overflow-x:auto}.schedule-matrix{grid-template-columns:90px repeat(7,minmax(120px,1fr));min-width:940px;display:grid}.schedule-matrix>.schedule-corner,.schedule-matrix>b{color:#56747b;background:#f4f8f8;border-bottom:1px solid #dce7e8;border-right:1px solid #dce7e8;padding:11px}.schedule-matrix>b{text-align:center}.schedule-row{display:contents}.period-label{background:#f8fafa;border-bottom:1px solid #dce7e8;border-right:1px solid #dce7e8;flex-direction:column;justify-content:center;min-height:82px;padding:10px;display:flex}.period-label strong{font-size:13px}.period-label small{color:#72898e;margin-top:5px;font-size:10px}.schedule-cell{background:#fff;border-bottom:1px solid #e3ebec;border-right:1px solid #e3ebec;min-height:82px;padding:6px}.schedule-cell article{border-left:4px solid #ffffff80;border-radius:8px;flex-direction:column;justify-content:center;height:100%;min-height:68px;padding:8px;display:flex}.schedule-cell strong{font-size:12px;line-height:1.35}.schedule-cell span{color:#566f75;margin-top:5px;font-size:10px}.dashboard-calendar>header{justify-content:space-between;align-items:center;display:flex}.dashboard-calendar header>button{color:#176b87;background:#edf5f4;border:0;border-radius:8px;padding:7px}.dashboard-calendar header svg{width:17px}.dashboard-calendar header>div{text-align:center}.dashboard-calendar h2{margin:0;font-size:20px}.dashboard-calendar header p{color:#789096;margin:3px 0;font-size:12px}.dashboard-calendar header a{color:#2a8c82;font-size:11px;text-decoration:none}.calendar-legend{justify-content:flex-end;gap:7px;margin:-21px 52px 8px 0;display:flex}.calendar-legend span{border-radius:99px;padding:4px 8px;font-size:10px}.calendar-legend .work{color:#347665;background:#e7f4ef}.calendar-legend .rest{color:#778589;background:#f0f2f3}.calendar-legend .duty{color:#91671d;background:#fff0d2}.calendar-legend .todo{color:#5265a7;background:#e8edff}.mini-month{grid-template-columns:repeat(7,minmax(110px,1fr));gap:5px;margin-top:10px;display:grid}.mini-month>b{text-align:center;color:#637e84;padding:8px}.mini-month>span{background:#fafcfc;border:1px solid #e4ebeb;border-radius:9px;flex-direction:column;align-items:flex-start;min-height:92px;padding:8px;display:flex;position:relative}.mini-month>span.empty{background:0 0;border-color:#0000}.mini-month span>strong{align-self:flex-end;font-size:12px}.mini-month span>em{color:#347665;background:#e7f4ef;border-radius:99px;padding:2px 6px;font-size:10px;font-style:normal}.mini-month span.rest-day>em{color:#778589;background:#f0f2f3}.mini-month span.has-duty>em{color:#91671d;background:#fff0d2}.mini-month span>small{color:#91671d;margin-top:5px;font-size:10px}.mini-month span>i{color:#5265a7;white-space:nowrap;text-overflow:ellipsis;background:#e8edff;border-radius:5px;max-width:100%;margin-top:4px;padding:2px 5px;font-size:10px;font-style:normal;display:block;overflow:hidden}.mini-month span.today{outline:2px solid #176b87}.mini-month span.today>strong{color:#176b87}.crop-backdrop{z-index:1000;background:#102f3988;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.crop-dialog{background:#fff;border-radius:18px;width:min(680px,95vw);padding:20px;box-shadow:0 24px 70px #102f3960}.crop-dialog header{justify-content:space-between;display:flex}.crop-dialog h2{margin:0}.crop-dialog p{color:#71878c;margin:5px 0 13px}.crop-dialog header button{background:0 0;border:0}.crop-dialog header svg{width:20px}.crop-preview{background-color:#eef3f3;background-repeat:no-repeat;border-radius:13px;height:250px}.crop-dialog>label{grid-template-columns:85px 1fr;align-items:center;gap:10px;margin-top:10px;display:grid}.crop-dialog footer{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.crop-dialog footer button{background:#fff;border:1px solid #cfdddd;border-radius:9px;padding:9px 14px}.crop-dialog footer button:last-child{color:#fff;background:#176b87;border-color:#176b87}@media (width<=1050px){.mini-month{grid-template-columns:repeat(7,minmax(95px,1fr))}}@media (width<=700px){.attendance-hero{padding:28px 22px}.attendance-orb{display:none}.theme-trigger{top:10px;right:10px}.dashboard-todos>form{grid-template-columns:1fr}.dashboard-timetable>header{flex-direction:column;align-items:flex-start;gap:10px}.mini-month{grid-template-columns:repeat(7,minmax(82px,1fr));overflow:auto}.dashboard-calendar{overflow:hidden}.calendar-legend{justify-content:flex-start;margin:8px 0}.crop-preview{height:180px}}.schedule-matrix>b.calendar-rest-column{color:#2b8057}.schedule-matrix>b small{margin-top:4px;font-size:10px;font-weight:600;display:block}.schedule-matrix>.schedule-corner{z-index:4;position:sticky;left:0;box-shadow:5px 0 10px #1f4a521a}.schedule-matrix .period-label{z-index:3;border-right-color:#d2e0e0;position:sticky;left:0;box-shadow:5px 0 10px #1f4a521a}.schedule-scroll{isolation:isolate}.schedule-cell{min-width:0;overflow:hidden}.schedule-matrix>.schedule-corner{z-index:30!important;background:#f4f8f8!important}.schedule-matrix .period-label{box-shadow:8px 0 12px #1f4a5221;z-index:29!important;background:#f8fafa!important}.attendance-hero .hero-actions{flex-wrap:wrap;gap:10px;display:flex}.attendance-hero a.hero-secondary{color:#fff;background:#ffffff14;border:1px solid #ffffff70}.attendance-hero.custom-image{box-shadow:0 18px 42px #132f373d}.attendance-hero.custom-image:before{border-radius:inherit;content:"";pointer-events:none;background:linear-gradient(90deg,#0000007a,#00000014 72%);position:absolute;inset:0}.attendance-hero.custom-image h2,.attendance-hero.custom-image p{text-shadow:0 2px 8px #000000b8}.attendance-hero.custom-image>div:first-child>span,.attendance-hero.custom-image .theme-trigger,.attendance-hero.custom-image .hero-secondary{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#00000047;border-color:#ffffff7a;box-shadow:0 5px 16px #00000038}.attendance-hero.custom-image .hero-actions>a:first-child{box-shadow:0 7px 18px #00000047}.attendance-hero.custom-image .attendance-orb{background:#0000002e;box-shadow:0 0 0 28px #ffffff12,0 8px 28px #00000040}@media (width<=700px){.attendance-hero p{max-width:90%;line-height:1.65}}.todo-row{border-top:1px solid #edf2f2;align-items:center;gap:10px;padding:12px 4px;display:flex}.todo-row>input{accent-color:#238b81;flex:none;width:18px;height:18px}.todo-check-placeholder{flex:none;width:18px}.todo-content{flex:1;min-width:0}.todo-content>strong,.todo-content>small{display:block}.todo-content>small{color:#7b9095;margin-top:3px;font-size:11px}.todo-people{flex-wrap:wrap;gap:5px 9px;margin-top:6px;display:flex}.todo-people span{color:#238b81;align-items:center;gap:3px;font-size:12px;display:inline-flex}.todo-people span svg{width:13px;height:13px}.todo-people .completed-person{color:#99a5a7;text-decoration:line-through}.todo-row.done .todo-content>strong{color:#8d9b9e}.todo-row>button{border:0;border-radius:8px;flex:none;padding:7px 9px}.todo-attachment-picker{color:#176b87;cursor:pointer;white-space:nowrap;background:#eef8f6;border:1px solid #9fc9c5;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;padding:0 12px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.todo-attachment-picker span{text-overflow:ellipsis;overflow:hidden}.todo-attachment-picker input{display:none}.todo-attachment{color:#176b87;align-items:center;gap:4px;margin-top:6px;font-size:12px;display:inline-flex}.todo-attachment svg{width:14px;height:14px}.todo-complete-all{color:#176b87;background:#e8f4f2;font-size:11px;font-weight:750}.todo-delete{color:#a36a6a;background:0 0}.todo-delete svg{width:16px;height:16px}.todo-row time{flex:none;width:74px}.dashboard-todos>details>.todo-row{margin-top:0}@media (width<=640px){.todo-row{flex-wrap:wrap;align-items:flex-start}.todo-content{flex-basis:calc(100% - 38px)}.todo-complete-all{margin-left:28px}}.schedule-matrix .calendar-rest-column{background:#e7f6eb!important}.schedule-matrix>b.calendar-rest-column{color:#23734d;background:#d9f0df!important}.schedule-cell .calendar-rest-label{color:#23734d;place-items:center;height:100%;margin:0;font-size:12px;font-weight:800;display:grid}.schedule-matrix>b small,.overview-day small{margin-top:4px;font-size:10px;font-weight:600;display:block}.overview-week-grid .calendar-rest-day{color:#23734d;background:#e7f6eb!important}.overview-course .calendar-rest-message{color:#23734d;text-align:center;margin:auto;font-size:12px;font-weight:800}.timetable-overview-filters input[type=date]{color:#17343d;background:#fff;border:1px solid #cdd;border-radius:11px;min-width:180px;height:44px;padding:0 12px}.dashboard-timetable .current-week-badge{white-space:nowrap;background:#16877f;border-radius:12px;justify-content:center;align-items:center;min-width:84px;margin-left:10px;padding:8px 13px;display:inline-flex;color:#fff!important;font-size:16px!important}.dashboard-timetable .current-week-badge.missing{background:#d49a24}.dashboard-timetable .missing-course-banner{color:#805d13;text-align:center;background:#fff3bf;border:1px solid #efd479;border-radius:12px;margin:0 0 14px;padding:14px 18px;font-weight:800}@media (width<=700px){.dashboard-timetable .current-week-badge{margin-left:0}.dashboard-timetable>header>div:last-child button:nth-child(-n+3){flex:1;justify-content:center}}.page-actions>a.secondary-action{border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 16px;font-weight:750;text-decoration:none;display:flex}.create-class-warning{color:#93611f;background:#fff4e5;border-radius:10px;margin:12px 0 0;padding:11px 13px}.class-teacher-bound,.class-teacher-missing{margin-top:8px;font-size:12px;display:block}.class-teacher-bound{color:#287b65}.class-teacher-missing{color:#a15d31}.class-manage-link{color:#176b87;margin-top:7px;font-size:12px;text-decoration:none;display:inline-flex}.attendance-page .page-header{margin-bottom:18px}.attendance-history{flex-direction:column;max-height:100%;display:flex}.attendance-history .history-list{overflow:hidden}.attendance-history .history-list>button{text-align:left;background:0 0;border:0;border-top:1px solid #eaf0f0;justify-content:space-between;align-items:center;width:100%;padding:14px 2px;display:flex}.attendance-history .history-list>button div{flex-direction:column;gap:4px;min-width:0;display:flex}.attendance-history .history-list>button b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attendance-history .history-list>button span{color:#81959a;font-size:12px}.attendance-history .history-list>button strong{color:#c37230;flex:none;font-size:12px}.attendance-history .history-list>button strong.done{color:#43865a}.history-more{color:#176b87;background:#edf5f4;border:0;border-radius:9px;align-self:center;align-items:center;gap:5px;margin-top:auto;padding:8px 12px;font-weight:750;display:flex}.history-more svg{width:15px}.course-hint{color:#39776f;background:#eef7f5;border-radius:9px;margin:-6px 0 0;padding:9px 11px;font-size:12px}.safety-sections{gap:13px;max-width:1100px;margin:22px auto 0;display:grid}.safety-sections article{background:#fff;border:1px solid #dfe9e9;border-radius:16px;grid-template-columns:45px 1fr auto;align-items:center;gap:14px;padding:19px 21px;display:grid}.safety-sections article>svg{color:#25887e;width:25px;height:25px}.safety-sections h2{margin:0 0 4px;font-size:18px}.safety-sections p{color:#789095;margin:0;font-size:13px}.safety-sections a{color:#176b87;white-space:nowrap;background:#edf5f4;border-radius:9px;padding:9px 12px;font-weight:750;text-decoration:none}.safety-sections .duty-last{border-color:#cddfdf;margin-top:6px}@media (width<=760px){.safety-sections article{grid-template-columns:36px 1fr}.safety-sections a{grid-column:2;justify-self:start}}.attendance-page>.page-header{margin-bottom:18px}.attendance-page>.attendance-layout{background:#fff;border:1px solid #dfe9e9;border-radius:20px;max-width:1140px;padding:22px}.attendance-page>.attendance-layout>.detail-card{box-shadow:none}.attendance-page>.attendance-layout{grid-template-columns:repeat(2,minmax(0,1fr))!important}.attendance-page>.attendance-layout>.detail-card{width:100%;min-width:0}.attendance-page .attendance-history{overflow:hidden}.attendance-page .attendance-history .history-list,.attendance-page .attendance-history .history-list>button,.attendance-page .attendance-history .history-list>button>div{width:100%;min-width:0}.attendance-page .attendance-history .history-list>button{gap:10px}.attendance-page .attendance-history .history-list>button>div{flex:1;overflow:hidden}.attendance-page .attendance-history .history-list>button b,.attendance-page .attendance-history .history-list>button span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.attendance-page .attendance-history .history-list>button strong{white-space:nowrap;flex:none}.embedded-safety-tools{gap:18px;max-width:1140px;margin:22px auto 0;display:grid}.embedded-tool{background:#fff;border:1px solid #dce7e8;border-radius:20px;overflow:hidden}.embedded-tool>header{background:#f8fbfb;border-bottom:1px solid #e4ecec;align-items:center;gap:13px;padding:20px 24px;display:flex}.embedded-tool>header>svg{color:#25887e;width:27px;height:27px}.embedded-tool>header h2{margin:0 0 4px}.embedded-tool>header p{color:#789095;margin:0}.embedded-tool>.page-shell{background:#fff;padding:22px!important}.embedded-tool>.page-shell>.page-header{display:none}.embedded-tool>.page-shell>.result-banner{margin-top:0}.embedded-tool .observation-grid,.embedded-tool .duty-grid,.embedded-tool .current-duty,.embedded-tool .handover-list,.embedded-tool .notify-targets,.embedded-tool .plan-grid,.embedded-tool .emergency-history,.embedded-tool .emergency-run,.embedded-tool .plan-create{max-width:none;margin-left:0;margin-right:0}.embedded-tool.duty-last{border-color:#c7dddd;margin-top:4px}.embedded-tool *{box-sizing:border-box}.embedded-tool .observation-grid{grid-template-columns:minmax(0,1fr)!important}.embedded-tool .observation-grid>.detail-card,.embedded-tool .duty-grid>.detail-card{min-width:0}.embedded-tool .obs-two,.embedded-tool .obs-flags{grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-tool .obs-flags label{white-space:nowrap;justify-content:flex-start;min-width:0}.embedded-tool .recent-observations{max-height:360px}.embedded-tool .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-tool .duty-grid{grid-template-columns:minmax(0,1fr)!important}.embedded-tool .incident-layout{max-width:none;margin-left:0;margin-right:0;grid-template-columns:minmax(0,1fr)!important}.embedded-tool .incident-layout>.detail-card{min-width:0}.embedded-tool .incident-basic{grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-tool .abc-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.embedded-tool .incident-recent{max-height:380px;overflow:auto}.student-search>div{position:relative}.student-search>div svg{color:#789095;width:16px;position:absolute;top:50%;left:10px;translate:0 -50%}.student-search>div input{width:100%;padding-left:34px}.student-search select{margin-top:7px}.people-picker{background:#f8fbfb;grid-column:1/-1;grid-template-columns:1fr 1fr;gap:14px;padding:14px!important;display:grid!important}.people-picker>legend{padding:0 7px;font-weight:800}.people-picker>section{background:#fff;border:1px solid #dce7e8;border-radius:12px;min-width:0;padding:13px;position:relative}.people-picker>section>b{margin-bottom:9px;display:block}.people-search{position:relative}.people-search svg{color:#668087;width:15px;position:absolute;top:50%;left:10px;translate:0 -50%}.people-search input{width:100%;padding-left:34px!important}.selected-people{flex-wrap:wrap;align-items:center;gap:5px;min-height:35px;margin-bottom:8px;display:flex}.selected-people>button{color:#236f66;background:#dff1ed;border:0;border-radius:99px;font-size:12px;height:30px!important;padding:0 9px!important}.selected-people>button span{margin-left:5px}.selected-people>small{color:#91a0a3}.people-results{z-index:8;background:#fff;border:1px solid #cfdddd;border-radius:10px;max-height:210px;padding:6px;position:absolute;top:112px;left:13px;right:13px;overflow:auto;box-shadow:0 12px 26px #17343d25}.people-results>button{text-align:left;justify-content:space-between;width:100%;min-height:36px;display:flex;color:#27464e!important;background:#fff!important;border:0!important;height:auto!important;padding:7px 9px!important}.people-results>button:hover{background:#eef6f5!important}.people-results>button:disabled{opacity:.45}.people-results small{color:#809398}.preset-field{grid-column:1/-1!important}.preset-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:7px 0;display:grid}.preset-options button{color:#405e65;text-align:left;background:#f8fbfb;border:1px solid #d7e3e3;border-radius:9px;min-height:40px;padding:7px 9px;line-height:1.35}.preset-options button b{color:#176b87;background:#e4efef;border-radius:50%;place-items:center;width:20px;height:20px;margin-right:6px;display:inline-grid}.preset-options button.active{color:#176b87;background:#e8f5f2;border-color:#25887e}.preset-options button.manual{color:#6e8186}.preset-field textarea{width:100%}.incident-link{color:inherit;align-items:center;text-decoration:none}.incident-link>div{flex:1}.incident-link>svg{color:#7b9095;width:18px}@media (width<=560px){.people-picker,.preset-options{grid-template-columns:1fr}}.embedded-tool .duty-form form>div{grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-tool .handover-list dl{grid-template-columns:repeat(3,minmax(0,1fr))}.embedded-tool .detail-card{box-shadow:none}@media (width<=760px){.attendance-page>.attendance-layout{padding:12px;grid-template-columns:1fr!important}.embedded-tool>.page-shell{padding:12px!important}.embedded-tool>header{padding:16px}}@media (width<=560px){.embedded-tool .obs-two,.embedded-tool .plan-grid,.embedded-tool .duty-form form>div,.embedded-tool .handover-list dl,.embedded-tool .incident-basic,.embedded-tool .abc-grid{grid-template-columns:1fr}.embedded-tool .obs-flags{grid-template-columns:1fr 1fr}}.people-picker{background:#fff!important;border:1px solid #d7e3e3!important;border-radius:12px!important;padding:12px!important}.people-picker>legend{color:#173740;font-size:13px;font-weight:800;padding:0 8px!important}.people-picker>section{background:#f8fbfb!important;border:1px solid #e0e9e9!important;border-radius:10px!important;padding:12px!important}.selected-people>button{background:#e8f5f2!important;border:1px solid #c8e3dd!important}.people-search input{background:#fff!important;border:1px solid #cfdddd!important;border-radius:9px!important}.preset-field{background:#fbfdfd!important;border:1px solid #e0e9e9!important;border-radius:12px!important;grid-column:1/-1!important;padding:14px!important}.preset-help{color:#81959a;margin-top:3px;font-size:11px;font-weight:400;display:block}.preset-options{margin-top:10px!important}.school-calendar-page{max-width:1400px;margin:auto}.calendar-summary,.auto-duty-card{background:#fff;border:1px solid #d8e5e5;border-radius:20px;padding:20px;box-shadow:0 12px 35px #1b494e12}.calendar-summary{align-items:center;gap:14px;margin-bottom:18px;display:flex}.calendar-summary>svg{color:#168f83}.calendar-summary b,.calendar-summary span{display:block}.calendar-summary span{color:#758b91;margin-top:4px}.calendar-legend-large{align-items:center;gap:8px;margin-left:auto;display:flex}.calendar-legend-large i{border:1px solid #d5e2e2;border-radius:7px;width:24px;height:24px}.calendar-legend-large .work{background:#fff}.calendar-layout{grid-template-columns:300px minmax(0,1fr);gap:18px;display:grid}.calendar-layout>aside,.month-card{background:#fff;border:1px solid #d8e5e5;border-radius:20px;padding:16px}.calendar-layout>aside{flex-direction:column;gap:8px;display:flex}.calendar-layout>aside button{text-align:left;color:#395f67;background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;padding:14px;display:flex}.calendar-layout>aside button.active{color:#087b72;background:#e6f3f2}.calendar-layout>aside button svg{flex:none}.calendar-layout>aside button b,.calendar-layout>aside button small{display:block}.calendar-layout>aside button small{color:#789096;margin-top:5px}.month-card>header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.month-card>header>button{color:#176b87;background:#e9f4f4;border:0;border-radius:10px;padding:10px}.month-card>header div{text-align:center}.month-card h2,.month-card p{margin:0}.month-card p{color:#81959a;margin-top:4px}.month-grid{grid-template-columns:repeat(7,minmax(86px,1fr));gap:7px;display:grid;overflow:auto}.month-grid>b{text-align:center;color:#71888e;padding:10px}.month-grid>button,.month-grid>span{border-radius:11px;min-height:92px}.month-grid>button{color:#17343d;background:#fff;border:1px solid #d9e4e4;flex-direction:column;align-items:flex-start;gap:5px;padding:10px;display:flex}.month-grid>button.today{outline-offset:-3px;outline:3px solid #14877e}.month-grid>button:disabled{cursor:default}.month-grid>button strong{font-size:18px}.month-grid>button em{font-style:normal;font-weight:700}.month-grid>button small{color:#60777c}.auto-duty-card{margin-top:18px}.auto-duty-card>header{align-items:center;gap:12px;display:flex}.auto-duty-card header svg{color:#168f83}.auto-duty-card h2,.auto-duty-card p{margin:0}.auto-duty-card p{color:#748b90;margin-top:4px}.auto-duty-controls{flex-wrap:wrap;align-items:end;gap:12px;margin-top:18px;display:flex}.auto-duty-controls label{gap:5px;font-weight:700;display:grid}.auto-duty-controls input{border:1px solid #cadada;border-radius:10px;padding:11px}.auto-duty-controls button,.apply-duty{color:#fff;background:#14758e;border:0;border-radius:11px;align-items:center;gap:7px;padding:12px 18px;font-weight:800;display:flex}.duty-preview-summary{background:#eef7f6;border-radius:12px;flex-wrap:wrap;gap:12px;margin:18px 0;padding:12px;display:flex}.duty-preview-summary>*{border-right:1px solid #c9dedd;padding-right:12px}.duty-load-table{border:1px solid #d4e1e1;border-radius:12px;grid-template-columns:1fr 120px 120px;display:grid;overflow:hidden}.duty-load-table>*{border-bottom:1px solid #e1eaea;padding:10px 14px}.duty-load-table>b{background:#eaf3f3}.duty-day-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px;margin:10px 0;display:grid}.duty-day-list span{background:#f5f8f8;border-radius:8px;grid-template-columns:100px 1fr auto;padding:9px;display:grid}.duty-day-list em{color:#71878c;font-size:12px;font-style:normal}.apply-duty{margin-top:14px}.calendar-edit-backdrop{z-index:100;background:#0f2a2f61;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.calendar-edit-backdrop>section{background:#fff;border-radius:20px;width:min(560px,100%);padding:22px;box-shadow:0 24px 70px #00000038}.calendar-edit-backdrop header{justify-content:space-between;display:flex}.calendar-edit-backdrop header h2,.calendar-edit-backdrop header p{margin:0}.calendar-edit-backdrop header p{color:#788c91;margin-top:4px}.calendar-edit-backdrop header button{background:#edf4f4;border:0;border-radius:9px;padding:8px}.day-type-choice{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.day-type-choice button{background:#fff;border:1px solid #cbdada;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:16px;font-weight:800;display:flex}.day-type-choice button.active{background:#ecf8f6;outline:3px solid #168f83}.day-type-choice button.active.rest{background:#ffe476}.calendar-edit-backdrop label{gap:6px;margin-top:12px;font-weight:700;display:grid}.calendar-edit-backdrop input,.calendar-edit-backdrop textarea{border:1px solid #cbdada;border-radius:10px;padding:11px}.calendar-edit-backdrop footer{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.calendar-edit-backdrop footer button{border:0;border-radius:9px;padding:11px 16px}.calendar-edit-backdrop footer button:last-child{color:#fff;background:#14758e;align-items:center;gap:6px;font-weight:800;display:flex}@media (width<=760px){.calendar-layout{grid-template-columns:1fr}.calendar-layout>aside{flex-direction:row;overflow:auto}.calendar-layout>aside button{min-width:250px}.calendar-summary{align-items:flex-start}.calendar-legend-large{margin-left:0}.month-grid{grid-template-columns:repeat(7,minmax(72px,1fr))}.month-card{overflow:hidden}.auto-duty-controls>*{width:100%}.duty-load-table{grid-template-columns:1fr 80px 80px}.day-type-choice{grid-template-columns:1fr}}.calendar-layout{grid-template-columns:minmax(0,1fr);gap:14px}.calendar-layout>aside{flex-direction:row;overflow-x:auto}.calendar-layout>aside button{min-width:290px}@media (width<=760px){.calendar-layout>aside button{min-width:250px}}.duty-target-editor{background:#f8fbfb;border:1px solid #d5e3e3;border-radius:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:16px;padding:14px;display:grid}.duty-target-editor>header{grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.duty-target-editor>header span{color:#71878c;font-size:13px}.duty-target-editor>div{background:#fff;border:1px solid #dce7e7;border-radius:10px;grid-template-columns:minmax(0,1fr) 34px 54px 34px;align-items:center;gap:5px;padding:7px;display:grid}.duty-target-editor>div>span{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.duty-target-editor button{color:#087b72;background:#e8f3f2;border:0;border-radius:8px;width:34px;height:34px;font-size:20px}.duty-target-editor strong{text-align:center}.duty-preview-summary .pending{color:#a15c00;font-weight:800}.duty-day-list span.pending{color:#915800;background:#fff3df}.apply-duty:disabled{opacity:.45;cursor:not-allowed}@media (width<=760px){.duty-target-editor{grid-template-columns:1fr}.duty-target-editor>header{display:grid}}.calendar-legend-large .work{background:#ffe476;border-color:#e3c443}.calendar-legend-large .rest{background:#ddf2e8;border-color:#9acdb5}.month-grid>button{background:#ffe476;border-color:#e3c443}.month-grid>button.rest{background:#ddf2e8;border-color:#9acdb5}.month-header-actions{align-items:center;gap:8px;display:flex}.month-header-actions>button{color:#176b87;background:#e9f4f4;border:0;border-radius:10px;padding:10px}.month-header-actions .export-calendar{color:#fff;background:#14758e;align-items:center;gap:6px;padding:10px 14px;font-weight:800;display:flex}.month-header-actions .export-calendar svg{width:18px}.day-type-choice button.active{background:#fff4b9;outline-color:#c6a817}.day-type-choice button.active.rest{background:#ddf2e8;outline-color:#168f83}@media (width<=760px){.month-header-actions .export-calendar{padding:10px;font-size:0}.month-header-actions .export-calendar svg{width:20px}}.timetable-overview{max-width:1450px;margin:auto}.teacher-schedule-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.teacher-schedule-grid>article{background:#fff;border:1px solid #dfe9e9;border-radius:17px;padding:16px}.teacher-schedule-grid article>header{border-bottom:1px solid #edf2f2;align-items:center;gap:10px;padding-bottom:12px;display:flex}.teacher-schedule-grid header>span{color:#fff;background:#176b87;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.teacher-schedule-grid h2,.teacher-schedule-grid small{margin:0}.teacher-schedule-grid small{color:#789096}.teacher-course{border-bottom:1px solid #edf2f2;grid-template-columns:20px 1fr;gap:4px 8px;padding:11px 2px;display:grid}.teacher-course svg{color:#2a8c82;width:17px}.teacher-course span{color:#6e858b;grid-column:2;font-size:12px}@media (width<=1000px){.teacher-schedule-grid{grid-template-columns:1fr 1fr}}@media (width<=620px){.teacher-schedule-grid{grid-template-columns:1fr}}.timetable-overview .record-header>.secondary-action,.timetable-page .timetable-add-period{color:#176b87;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cadada;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 5px 14px #176b8714}.timetable-overview .record-header>.secondary-action:hover,.timetable-page .timetable-add-period:hover{background:#f4faf9;border-color:#8dbab8;transform:translateY(-1px)}.timetable-overview .record-header>.secondary-action svg,.timetable-page .timetable-add-period svg{width:18px;height:18px}.timetable-overview-filters{background:#fff;border:1px solid #dce7e7;border-radius:17px;align-items:end;gap:14px;margin-bottom:16px;padding:18px 20px;display:flex}.timetable-overview-filters label,.availability-controls label{flex-direction:column;gap:6px;font-size:12px;font-weight:800;display:flex}.timetable-overview-filters select,.availability-controls input{color:#17343d;background:#fff;border:1px solid #cdd;border-radius:11px;min-width:220px;height:44px;padding:0 12px}.timetable-overview-filters>span{color:#647f85;align-items:center;gap:7px;margin-left:auto;display:flex}.timetable-overview-filters svg{width:19px}.overview-week-card,.availability-card{background:#fff;border:1px solid #dce7e7;border-radius:19px;margin-bottom:18px;overflow:hidden;box-shadow:0 9px 24px #1d434b0f}.overview-week-card>header,.availability-card>header{border-bottom:1px solid #e4eded;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;display:flex}.overview-week-card>header>div,.availability-card>header>div:first-child{align-items:center;gap:12px;display:flex}.overview-week-card>header svg,.availability-card>header svg{color:#16877f}.overview-week-card>header span,.availability-card>header span{flex-direction:column;gap:3px;display:flex}.overview-week-card>header strong,.availability-card>header strong{font-size:20px}.overview-week-card>header small,.availability-card>header small{color:#768d92}.overview-week-card>header>b{color:#23776f;background:#eaf5f3;border-radius:99px;padding:6px 10px}.overview-grid-scroll{padding:16px;overflow:auto}.overview-week-grid{border:1px solid #dce7e7;border-radius:14px;min-width:1030px;display:grid;overflow:hidden}.overview-corner,.overview-day{color:#547279;text-align:center;background:#edf4f4;border-right:1px solid #dce7e7;padding:14px 8px}.overview-period{background:#f7fafa;border-top:1px solid #e0e9e9;border-right:1px solid #e0e9e9;flex-direction:column;justify-content:center;gap:5px;min-height:92px;padding:14px 10px;display:flex}.overview-period small{color:#758b91;font-size:11px}.overview-course{background:#fff;border-top:1px solid #e0e9e9;border-right:1px solid #e0e9e9;flex-direction:column;justify-content:center;gap:5px;min-height:92px;padding:11px;display:flex}.overview-course.filled{background:#e9f5f2;border-left:4px solid #25958b}.overview-course span{color:#2a756e}.overview-course small{color:#7d9195}.availability-controls{align-items:end;gap:9px;display:flex}.availability-controls input{min-width:145px}.availability-controls button{color:#176b87;background:#eef6f5;border:1px solid #cbdcdc;border-radius:11px;height:44px;padding:0 13px;font-weight:800}.availability-summary{background:#f7fafa;align-items:center;gap:10px;padding:14px 20px;display:flex}.availability-summary span{color:#27786f;background:#e9f5f2;border-radius:99px;align-items:center;gap:5px;padding:6px 10px;display:flex}.availability-summary span:nth-child(2){color:#a45e2e;background:#fff0e5}.availability-summary svg{width:16px}.availability-summary b{color:#5f777d;margin-left:auto}.availability-grid{grid-template-columns:repeat(3,1fr);gap:12px;padding:18px;display:grid}.availability-grid article{border:1px solid #dfe9e9;border-radius:14px;align-items:flex-start;gap:10px;min-height:105px;padding:15px;display:flex}.availability-grid article>svg{flex:none;width:20px}.availability-grid article.free{color:#28786e;background:#f0f8f5}.availability-grid article.busy{color:#a26032;background:#fff6ed}.availability-grid article div{color:#17343d;flex-direction:column;gap:3px;display:flex}.availability-grid article span{color:#71878d;font-size:12px}.availability-grid article p{color:#506b72;margin:5px 0 0;font-size:13px}.availability-grid article.free p{color:#71878d}@media (width<=900px){.timetable-overview-filters,.availability-card>header{flex-direction:column;align-items:stretch}.timetable-overview-filters>span{margin-left:0}.availability-controls{flex-wrap:wrap}.availability-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.availability-grid{grid-template-columns:1fr}.availability-controls label{flex:1}.availability-controls input{width:100%;min-width:0}.availability-summary{flex-wrap:wrap;align-items:flex-start}.availability-summary b{width:100%;margin-left:0}.overview-week-card>header{align-items:flex-start}}.schedule-output-actions{align-items:center;gap:8px;display:flex}.schedule-output-actions>b{color:#23776f;background:#eaf5f3;border-radius:99px;padding:6px 10px}.schedule-output-actions button{color:#176b87;cursor:pointer;background:#f2f8f7;border:1px solid #cedddd;border-radius:10px;align-items:center;gap:6px;height:40px;padding:0 12px;font-weight:800;display:inline-flex}.schedule-output-actions button:hover{background:#e8f4f2;border-color:#95beb9}.schedule-output-actions button svg{width:17px;height:17px}@media (width<=760px){.schedule-output-actions{flex-wrap:wrap;align-items:stretch}.schedule-output-actions>b{width:max-content}.schedule-output-actions button{flex:1;justify-content:center}}.print-orientation{color:#5f777d;white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.print-orientation select{color:#176b87;background:#fff;border:1px solid #cedddd;border-radius:10px;height:40px;padding:0 28px 0 10px;font-weight:800}.schedule-card-title{align-items:center;gap:12px;min-width:0;display:flex}.schedule-output-actions{flex-wrap:wrap;justify-content:flex-end}.schedule-output-actions button{white-space:nowrap;justify-content:center;min-width:88px}.print-orientation span{display:block!important}.overview-week-grid{overflow:visible}.overview-corner{z-index:4;position:sticky;left:0;box-shadow:5px 0 10px #1f4a521a}.overview-period{z-index:3;position:sticky;left:0;box-shadow:5px 0 10px #1f4a521a}@media (width<=1100px){.overview-week-card>header{flex-direction:column;align-items:stretch}.schedule-output-actions{justify-content:flex-start}}@media (width<=600px){.overview-week-card>header{padding:16px}.overview-grid-scroll{padding:10px}.schedule-card-title strong{font-size:18px!important}.schedule-output-actions{grid-template-columns:minmax(0,1fr) 88px 88px;gap:8px;display:grid}.schedule-output-actions button{min-width:0;padding:0 10px}.print-orientation{min-width:0}.print-orientation select{width:100%;min-width:0}}.overview-grid-scroll{isolation:isolate;padding:16px 0}.overview-week-grid{border-left:0;border-right:0;border-radius:0}.overview-course{min-width:0;overflow:hidden}.overview-corner{z-index:30!important;background:#edf4f4!important}.overview-period{z-index:29!important;background:#f7fafa!important}.overview-corner,.overview-period{box-shadow:8px 0 12px #1f4a5221}@media (width<=600px){.overview-grid-scroll{padding:10px 0}}.availability-holiday,.calendar-holiday-banner{color:#23734d;text-align:center;background:#e3f4e8;border-radius:12px;margin:12px 20px;padding:14px 18px;font-weight:700}.missing-individualized-guidance{z-index:2;color:#8a6515;letter-spacing:.5px;background:#fff3bf;border:1px solid #efd479;border-radius:12px;grid-area:7/2/auto/7;justify-content:center;place-self:center stretch;align-items:center;min-height:58px;margin:12px 10px;font-weight:800;display:flex;box-shadow:0 4px 12px #ab7f171a}.current-week-badge{white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;min-width:84px;padding:8px 13px;color:#fff!important;background:#16877f!important;font-size:16px!important;display:inline-flex!important}.week-switcher{background:#e8f3f2;border-radius:11px;gap:5px;padding:4px;display:flex}.week-switcher button{background:#fff}.week-switcher button:nth-child(2){color:#fff;background:#16877f;min-width:58px}.dashboard-timetable .current-week-badge{margin-left:10px}.dashboard-timetable>header>div:first-child{flex-wrap:wrap}.current-week-badge.missing{background:#d49a24!important}.missing-course-banner{color:#805d13;text-align:center;background:#fff3bf;border:1px solid #efd479;border-radius:12px;margin:0 20px 14px;padding:14px 18px;font-weight:800}@media (width<=600px){.schedule-card-title{flex-wrap:wrap}.current-week-badge{order:3;margin:4px 0 0 35px}.week-switcher{grid-column:1/-1;width:100%}.week-switcher button{flex:1!important}.dashboard-timetable .current-week-badge{margin-left:0}}.global-student-search{color:#173740;width:100%;min-width:0;height:40px;font:inherit;background:#fff;border:1px solid #cfdede;border-radius:10px;margin:0 0 7px;padding:0 11px}.global-student-search:focus{border-color:#25887e;outline:2px solid #25887e33}.global-student-search+select{width:100%}.daily-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.daily-work-grid>a{color:#17343d;background:#fff;border:1px solid #dce8e8;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:start;gap:15px;min-height:185px;padding:24px;text-decoration:none;transition:all .18s;display:grid;box-shadow:0 10px 28px #1d434b14}.daily-work-grid>a:hover{translate:0 -2px;box-shadow:0 16px 34px #1d434b21}.daily-work-grid>a>span{color:#16877f;background:#e8f5f3;border-radius:14px;place-items:center;width:48px;height:48px;display:grid}.daily-work-grid h2{margin:3px 0 8px;font-size:20px}.daily-work-grid p{color:#70888e;margin:0;line-height:1.65}.daily-work-grid>a>svg{color:#8ba0a4;width:19px;margin-top:14px}@media (width<=900px){.daily-work-grid{grid-template-columns:1fr}}.directory-card{background:#fff;border:1px solid #dfe9e9;border-radius:20px;max-width:720px;margin-top:18px;padding:26px}.directory-card header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.directory-card h2{margin:0}.directory-card p{color:#7a9095;margin:5px 0 0}.directory-search{border:1px solid #cfdddd;border-radius:11px;align-items:center;gap:8px;padding:0 10px;display:flex}.directory-search input{border:0;outline:0;width:210px;height:42px}.directory-list{margin-top:18px}.directory-list article{border-top:1px solid #edf2f2;justify-content:space-between;align-items:center;padding:14px 0;display:flex}.directory-list article div{gap:4px;display:grid}.directory-list small{color:#7a9095}.directory-list a{color:#176b87;align-items:center;gap:6px;font-weight:800;text-decoration:none;display:inline-flex}@media (width<=640px){.directory-card header{display:grid}.directory-search input{width:100%}.directory-list article{flex-direction:column;align-items:flex-start;gap:10px}}.auto-schedule-page{max-width:1320px;margin:auto}.auto-rule-note,.auto-config-card,.auto-rules-table,.auto-preview{background:#fff;border:1px solid #dbe7e7;border-radius:18px;margin-bottom:16px;box-shadow:0 9px 24px #1d434b0e}.auto-rule-note{background:#edf8f5;align-items:flex-start;gap:13px;padding:18px 20px;display:flex}.auto-rule-note>svg{color:#16877f;width:23px}.auto-rule-note b{font-size:17px}.auto-rule-note p{color:#58737a;margin:5px 0 0}.auto-config-card{padding:20px}.auto-config-card>header{margin-bottom:17px}.auto-config-card>header>div{align-items:center;gap:12px;display:flex}.auto-config-card header svg{color:#16877f;width:23px}.auto-config-card header span{flex-direction:column;gap:3px;display:flex}.auto-config-card header b{font-size:19px}.auto-config-card header small{color:#748b90}.auto-semester{align-items:end;gap:18px;margin-bottom:16px;display:flex}.auto-semester>label:first-child,.class-mapping-grid>label{flex-direction:column;gap:6px;font-size:12px;font-weight:800;display:flex}.auto-semester select,.class-mapping-grid select{color:#17343d;background:#fff;border:1px solid #cbdcdc;border-radius:11px;height:44px;padding:0 12px}.replace-option{color:#5e777d;align-items:center;gap:8px;padding-bottom:11px;display:flex}.class-mapping-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.class-mapping-grid label{background:#f8fbfb;border:1px solid #e0eaea;border-radius:13px;padding:14px}.class-mapping-grid label>span{color:#176b87;font-size:16px}.class-mapping-grid small{color:#71868b}.hygiene-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.hygiene-grid fieldset{border:1px solid #dce7e7;border-radius:14px;flex-wrap:wrap;gap:7px;padding:13px;display:flex}.hygiene-grid legend{color:#365a62;padding:0 7px;font-weight:800}.hygiene-grid label{color:#4e6c73;background:#f7fafa;border:1px solid #dfe8e8;border-radius:9px;align-items:center;gap:5px;padding:7px 9px;display:flex}.hygiene-grid label.selected{color:#176b62;background:#e6f5f1;border-color:#25958b}.auto-rules-table{overflow:hidden}.auto-rules-table>header{background:#f2f7f7;justify-content:space-between;padding:15px 18px;display:flex}.auto-rules-table header span{color:#5f787e}.auto-rules-table>div{grid-template-columns:2fr 1fr;display:grid}.auto-rules-table div>*{border-top:1px solid #e4ecec;padding:12px 18px}.auto-rules-table div>b{color:#176b87}.auto-validation{color:#966020;background:#fff5e6;border-radius:13px;align-items:flex-start;gap:11px;margin-bottom:15px;padding:14px 17px;display:flex}.auto-validation svg{flex:none;width:22px}.auto-validation p{margin:0 0 3px}.auto-actions{gap:10px;margin:18px 0;display:flex}.auto-actions button{color:#fff;cursor:pointer;background:#176b87;border:0;border-radius:11px;align-items:center;gap:7px;min-height:46px;padding:0 17px;font-weight:800;display:inline-flex}.auto-actions button svg{width:18px}.auto-actions button.secondary{color:#176b87;background:#fff;border:1px solid #cadada}.auto-actions button.apply{background:#258b65;margin-left:auto}.auto-actions button:disabled{opacity:.48;cursor:not-allowed}.auto-preview{overflow:hidden}.auto-preview>header{border-bottom:1px solid #e1eaea;justify-content:space-between;align-items:center;padding:19px 21px;display:flex}.auto-preview header>div{flex-direction:column;gap:4px;display:flex}.auto-preview header b{font-size:20px}.auto-preview header span{color:#6d848a}.auto-preview header svg{color:#298968}.preview-issues{background:#fafcfc;padding:14px 20px}.preview-issues p{border-radius:8px;margin:5px 0;padding:9px 11px}.preview-issues .warning{color:#91611f;background:#fff5e7}.preview-issues .error{color:#a44949;background:#fff0f0}.load-table{border:1px solid #dce7e7;border-radius:12px;grid-template-columns:1fr 130px 1fr;margin:18px;display:grid;overflow:hidden}.load-table>*{border-bottom:1px solid #e4ecec;padding:10px 13px}.load-table>b{background:#eef5f5}.load-table strong{color:#176b87}.auto-grid-scroll{border:1px solid #dce7e7;border-radius:13px;margin:18px;overflow:auto}.auto-grid{grid-template-columns:90px repeat(7,minmax(125px,1fr));min-width:965px;display:grid}.auto-grid>b{text-align:center;color:#fff;background:#176b87;padding:12px}.auto-grid>span{border-bottom:1px solid #e1eaea;border-right:1px solid #e1eaea;min-height:72px;padding:9px}.auto-grid .period{background:#f1f6f6;place-items:center;font-weight:800;display:grid}.auto-grid .course{background:#e7f4f1;border-left:4px solid #29968b;flex-direction:column;justify-content:center;display:flex}.auto-grid .course small{color:#507078;margin-top:5px}@media (width<=800px){.class-mapping-grid,.hygiene-grid{grid-template-columns:1fr 1fr}.auto-semester{flex-direction:column;align-items:stretch}.replace-option{padding:0}.auto-rules-table>div{grid-template-columns:1fr}.auto-rules-table div>b{padding-top:0}.auto-actions{flex-wrap:wrap}.auto-actions button.apply{justify-content:center;width:100%;margin-left:0}.load-table{grid-template-columns:1fr 90px}.load-table>:nth-child(3n){display:none}}@media (width<=520px){.class-mapping-grid,.hygiene-grid{grid-template-columns:1fr}.auto-config-card{padding:15px}.auto-rules-table>header{flex-direction:column;align-items:flex-start;gap:5px}}.load-table{grid-template-columns:minmax(110px,1fr) 100px 140px minmax(180px,1fr)}@media (width<=800px){.load-table{grid-template-columns:minmax(100px,1fr) 80px 110px}.load-table>:nth-child(3n){display:block}.load-table>:nth-child(4n){display:none}}.class-management-page{max-width:1320px;margin:auto}.class-message{color:#236f67;background:#edf8f5;border:1px solid #cfe1df;border-radius:12px;margin:0 0 16px;padding:13px 16px}.class-semester-card,.class-create-card,.class-transfer-card,.managed-class-card{background:#fff;border:1px solid #dce7e7;border-radius:18px;box-shadow:0 10px 28px #1d434b0e}.class-semester-card{justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px;padding:20px;display:flex}.class-semester-card label,.class-create-card label,.managed-class-card label,.class-transfer-card label{flex-direction:column;gap:7px;font-size:13px;font-weight:800;display:flex}.class-semester-card select,.class-create-card input,.class-create-card select,.managed-class-card input,.managed-class-card select,.class-transfer-card select,.class-transfer-card input{color:#17343d;background:#fff;border:1px solid #cbdcdc;border-radius:11px;height:44px;padding:0 12px}.class-semester-card label{min-width:300px}.class-semester-card>span{color:#627d83;align-items:center;gap:9px;display:flex}.class-semester-card svg{color:#1b8b80}.class-create-card,.class-transfer-card{margin-bottom:18px;padding:21px}.class-create-card>header,.class-transfer-card>header{align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.class-create-card header>svg,.class-transfer-card header>svg{color:#198a80}.class-create-card h2,.class-transfer-card h2{margin:0 0 4px}.class-create-card p,.class-transfer-card p{color:#748b90;margin:0}.class-create-card form{grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;display:grid}.class-create-card button,.managed-class-card button,.class-transfer-card button{color:#fff;background:#176b87;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;height:44px;padding:0 15px;font-weight:800;display:inline-flex}.managed-class-grid{grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px;display:grid}.managed-class-card{padding:18px}.managed-class-card header{align-items:center;gap:11px;margin-bottom:15px;display:flex}.managed-class-card header>span{color:#168478;background:#e6f4f2;border-radius:13px;place-items:center;width:44px;height:44px;font-size:20px;font-weight:900;display:grid}.managed-class-card h2{margin:0 0 2px;font-size:20px}.managed-class-card p{color:#768c91;align-items:center;gap:5px;margin:0;font-size:12px;display:flex}.managed-class-card p svg{width:15px}.managed-class-card label{margin-top:11px}.managed-class-card button{color:#176b87;background:#edf5f4;width:100%;margin-top:14px}.student-batch-tools{grid-template-columns:210px 1fr auto auto;align-items:end;gap:10px;display:grid}.batch-search{position:relative}.batch-search svg{color:#789196;width:18px;position:absolute;bottom:12px;left:12px}.batch-search input{padding-left:38px}.student-batch-tools>button{color:#176b87;background:#edf5f4}.student-batch-list{background:#f8fbfb;border:1px solid #e0e9e9;border-radius:13px;grid-template-columns:repeat(3,1fr);gap:9px;max-height:330px;margin:16px 0;padding:12px;display:grid;overflow:auto}.student-batch-list label{background:#fff;border:1px solid #e0e8e8;border-radius:10px;flex-direction:row;align-items:center;padding:11px}.student-batch-list label.selected{background:#eaf7f4;border-color:#29958b}.student-batch-list span{flex-direction:column;display:flex}.student-batch-list small{color:#768d92;font-weight:500}.student-batch-list input{width:17px;height:17px}.class-transfer-card footer{grid-template-columns:auto 1fr 180px auto;align-items:end;gap:12px;display:grid}.class-transfer-card footer>b{color:#176b87;align-self:center}.class-transfer-card button:disabled{opacity:.5;cursor:not-allowed}@media (width<=960px){.managed-class-grid,.student-batch-list{grid-template-columns:repeat(2,1fr)}.class-transfer-card footer{grid-template-columns:1fr 1fr}.class-transfer-card footer>b{grid-column:1/-1}}@media (width<=680px){.class-semester-card{flex-direction:column;align-items:stretch}.class-semester-card label{min-width:0}.class-create-card form,.managed-class-grid,.student-batch-tools,.student-batch-list,.class-transfer-card footer{grid-template-columns:1fr}.student-batch-tools>button{width:100%}.class-transfer-card footer>b{grid-column:auto}}.semester-init-page{max-width:1400px;margin:auto}.init-semester,.init-card,.init-final{background:#fff;border:1px solid #d7e4e4;border-radius:18px;box-shadow:0 10px 30px #24535c0c}.init-semester{justify-content:space-between;align-items:center;margin-bottom:18px;padding:18px 20px;display:flex}.init-semester label{align-items:center;gap:12px;font-weight:800;display:flex}.init-semester select,.init-card select,.init-card input{background:#fff;border:1px solid #cbdada;border-radius:10px;padding:10px}.init-semester .completed{color:#287852;gap:6px;font-weight:800;display:flex}.init-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.init-card{min-width:0;padding:18px}.init-card.wide{grid-column:1/-1}.init-card>header{border-bottom:1px solid #edf2f2;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:13px;display:flex}.init-card>header>svg{color:#16877f;flex:none}.init-card h2,.init-card p{margin:0}.init-card header p{color:#71878c;margin-top:3px}.has-data,.no-data{white-space:nowrap;border-radius:99px;margin-left:auto;padding:5px 8px;font-size:12px}.has-data{color:#916017;background:#fff2d8;align-items:center;gap:4px;display:flex}.has-data svg{width:14px}.no-data{color:#71878c;background:#edf4f4}.init-students{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:7px;max-height:260px;display:grid;overflow:auto}.init-students label{border:1px solid #dce7e7;border-radius:10px;gap:8px;padding:9px;display:flex}.init-students label.selected{background:#e8f5f3;border-color:#70b6af}.init-students span,.init-students small,.init-list span,.init-list small{display:block}.init-students small,.init-list small{color:#74898e;margin-top:3px}.init-card footer{justify-content:flex-end;align-items:center;gap:9px;margin-top:13px;display:flex}.init-card button,.card-link,.upload-action{color:#fff;background:#176b87;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 13px;font-weight:800;text-decoration:none;display:inline-flex}.init-card button svg{width:17px}.init-list{gap:8px;max-height:310px;display:grid;overflow:auto}.init-list>label{background:#f7fafa;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.assignment-form{grid-template-columns:1fr 1fr;gap:8px;display:grid}.assignment-form button{grid-column:1/-1}.assignment-chips{flex-wrap:wrap;gap:6px;max-height:90px;margin-top:10px;display:flex;overflow:auto}.assignment-chips span{background:#edf5f4;border-radius:99px;padding:5px 8px;font-size:12px}.staff-picker{width:100%;margin-bottom:10px}.permission-grid{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.permission-grid label{background:#f6f9f9;border-radius:8px;align-items:center;gap:6px;padding:7px;display:flex}.card-action{margin-top:12px}.upload-action{cursor:pointer}.init-card>small{color:#71878c;margin:11px 0;display:block}.init-card>a:not(.card-link){color:#176b87}.step-copy{color:#647d83;line-height:1.6;margin-bottom:16px!important}.init-final{background:linear-gradient(135deg,#f3fbfa,#fff);border-color:#8bc7c0;align-items:center;gap:14px;margin-top:18px;padding:22px;display:flex}.init-final>svg{color:#16877f}.init-final h2,.init-final p{margin:0}.init-final p{color:#647d83;margin-top:4px}.init-final button{color:#fff;white-space:nowrap;background:#16877f;border:0;border-radius:11px;margin-left:auto;padding:13px 20px;font-weight:900}@media (width<=800px){.init-grid{grid-template-columns:1fr}.init-card.wide{grid-column:auto}.init-semester,.init-final{flex-direction:column;align-items:stretch}.init-final button{margin-left:0}.assignment-form{grid-template-columns:1fr}.init-card footer{flex-direction:column;align-items:stretch}.init-card footer>*{width:100%}}.init-list-row>label{background:#f7fafa;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.inline-feedback{border-radius:9px;align-items:center;gap:6px;margin-top:8px;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.inline-feedback svg{width:16px;height:16px}.inline-feedback.success{color:#247249;background:#e8f6ee}.inline-feedback.error{color:#a94336;background:#fff0ed}.init-semester>div{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.init-semester>div>small{color:#6f878d}.not-initialized{color:#9a6418;background:#fff1d8;border-radius:999px;padding:5px 9px;font-weight:800}.pending-init-count,.initialized-count{text-align:center;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:12px;font-weight:800;display:inline-flex}.pending-init-count{color:#9a6418;background:#fff1d8}.initialized-count{color:#287647;background:#e7f5eb}.pending-init-count svg,.initialized-count svg{flex:none;width:14px;height:14px}.extend-semester{color:#14776f;background:#fff;border:1px solid #16877f;border-radius:9px;min-height:38px;padding:7px 12px;font-weight:800}.grade-projection{align-items:center;gap:5px;margin-left:8px;font-weight:800;display:inline-flex}.grade-projection i,.grade-projection em{border-radius:999px;padding:2px 6px;font-style:normal}.grade-projection i{color:#257640;background:#e4f5e8}.grade-projection em{color:#b23e35;background:#ffe8e4}.grade-projection b{color:#71878c}.empty-guidance{color:#865b17;background:#fff6df;border-radius:10px;margin-bottom:10px;padding:10px 12px}.teacher-bindings{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.teacher-bindings article{background:#fff;border:1px solid #dce7e7;border-radius:13px;padding:9px}.teacher-bindings article.open{background:#fbfefd;border-color:#74b9b1}.teacher-binding-trigger{text-align:left;width:100%;color:#183943!important;background:#f4f8f8!important;justify-content:space-between!important}.teacher-binding-trigger span,.teacher-binding-trigger small{display:block}.teacher-binding-trigger small{color:#71878c;margin-top:3px;font-weight:500}.teacher-binding-trigger>svg{transition:transform .2s}.teacher-bindings article.open .teacher-binding-trigger>svg{transform:rotate(180deg)}.teacher-bindings .assignment-form{background:#f4f9f8;border-radius:12px;margin-top:8px;padding:12px}.teacher-bindings .assignment-chips{margin-top:8px}.assignment-chips:empty{display:none}.final-action{margin-left:auto}.course-binding-form{margin-top:10px}.recommendation-note{color:#15776f;align-items:center;gap:6px;font-weight:800;display:flex;margin:0 0 10px!important}.recommendation-note svg{width:17px}.course-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.course-choice-grid label{cursor:pointer;background:#f8fafa;border:1px solid #dbe7e7;border-radius:10px;align-items:center;gap:7px;min-height:42px;padding:8px 10px;display:flex}.course-choice-grid label.selected{background:#e8f5f3;border-color:#16877f}.course-choice-grid label.recommended{background:#fff8df;border-color:#e6bf58;order:-1}.course-choice-grid label.recommended.selected{background:#e6f5ec;border-color:#16877f}.course-choice-grid span{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.course-choice-grid small{color:#684b08;background:#f4cf68;border-radius:99px;padding:2px 5px;font-size:10px;font-weight:800}.course-binding-form>button{width:100%;margin-top:10px}.embedded-component{border-top:1px solid #e3ecec;margin-top:16px;padding-top:16px}.embedded-component .embedded-tool{max-width:none;padding:0}.embedded-component .school-calendar-page>.calendar-summary,.embedded-component .auto-schedule-page>.auto-rule-note{margin-top:0}@media (width<=800px){.init-semester{align-items:stretch}.init-semester>div,.extend-semester{width:100%}.teacher-bindings{grid-template-columns:1fr}.final-action{margin-left:0}.init-final button{width:100%;margin-left:0}.init-card>header{align-items:flex-start}.has-data,.no-data{white-space:normal;text-align:center}.teacher-binding-trigger{padding:12px!important}.course-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.embedded-component{margin-left:-10px;margin-right:-10px}}:root{color:#17343d;font-synthesis:none;--blue:#176b87;--teal:#2a8c82;--orange:#e99a45;background:#f3f7f7;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}.ai-page,.ai-workspace{height:auto;min-height:calc(100vh - 120px)}.workspace{height:100vh;overflow-y:auto}.sidebar nav a{transition:all .2s}.sidebar nav a:hover{color:var(--blue);background:#f0f8f7}.sidebar nav a.active{color:var(--blue);background:#e8f4f5;font-weight:700}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}.search-page{max-width:1100px;margin:auto}.global-search-box{background:#fff;border:1px solid #cfdede;border-radius:15px;align-items:center;gap:10px;padding:9px 10px 9px 16px;display:flex;box-shadow:0 10px 25px #1e50550f}.global-search-box>svg{color:#2a8c82}.global-search-box input{border:0;outline:0;flex:1;min-width:0;padding:9px;font-size:16px}.global-search-box button{color:#fff;background:#176b87;border:0;border-radius:10px;padding:11px 19px;font-weight:800}.search-results{gap:9px;margin-top:16px;display:grid}.search-results>a{color:inherit;background:#fff;border:1px solid #dfe9e9;border-radius:14px;align-items:center;gap:13px;padding:16px;text-decoration:none;display:flex}.search-results>a:hover{border-color:#8fc7c1;box-shadow:0 8px 20px #23585b12}.search-results>a>span{color:#176b87;background:#e9f4f4;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.search-results>a>span svg{width:20px}.search-results>a>div{flex:1}.search-results small{color:#2a8c82}.search-results h2{margin:3px 0;font-size:17px}.search-results p{color:#789095;margin:0}.search-results>a>svg{color:#91a4a8}.staff-development-page{max-width:1450px;margin:auto}.staff-dev-summary{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:15px;display:grid}.staff-dev-summary article{background:#fff;border:1px solid #dfe9e9;border-radius:14px;align-items:center;gap:12px;padding:18px;display:flex}.staff-dev-summary svg{color:#2a8c82}.staff-dev-summary strong{font-size:25px}.staff-dev-summary span{color:#748a8f}.staff-dev-tabs{margin:16px 0}.staff-dev-grid{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.staff-dev-grid article header{align-items:center;gap:10px;display:flex}.staff-dev-grid header>span{color:#176b87;background:#e9f4f4;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.staff-dev-grid header svg{width:20px}.staff-dev-grid h2{margin:3px 0}.staff-dev-grid small{color:#2a8c82}.staff-dev-grid p{color:#577077;line-height:1.65}.staff-dev-grid button{color:#176b87;background:0 0;border:0;align-items:center;gap:5px;display:flex}.staff-dev-grid button svg{width:17px}@media (width<=900px){.staff-dev-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.staff-dev-grid,.staff-dev-summary{grid-template-columns:1fr}}.timetable-page{max-width:1600px;margin:auto}.timetable-toolbar{background:#fff;border:1px solid #dfe9e9;border-radius:14px;align-items:end;gap:14px;margin-bottom:14px;padding:15px;display:flex}.timetable-toolbar label{flex-direction:column;gap:5px;font-size:12px;font-weight:750;display:flex}.timetable-toolbar select,.timetable-toolbar input{background:#fff;border:1px solid #cfdddd;border-radius:9px;min-width:190px;padding:9px}.timetable-toolbar>span{color:#607a80;align-items:center;gap:6px;margin-left:auto;display:flex}.timetable-toolbar svg{width:17px}.timetable-scroll{background:#fff;border:1px solid #dbe6e6;border-radius:15px;overflow:auto}.timetable-grid{min-width:1100px;display:grid}.timetable-grid>.day,.timetable-grid>.corner{z-index:2;text-align:center;color:#fff;background:#176b87;border-right:1px solid #ffffff2e;padding:14px 8px;position:sticky;top:0}.timetable-grid>.period{background:#f1f6f6;border-top:1px solid #e0e9e9;border-right:1px solid #e0e9e9;place-items:center;min-height:92px;display:grid}.course-cell{color:#8a9b9f;background:#fff;border-top:1px solid #e3ebeb;border-bottom:0;border-left:0;border-right:1px solid #e3ebeb;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:92px;display:flex}.course-cell:hover{background:#f0f8f7}.course-cell svg{width:17px}.course-cell.filled{color:#244c54;background:#eaf5f3}.course-cell.filled strong{font-size:15px}.course-cell.filled span{color:#2a756e}.course-cell small{color:#7d9195}.form-modal .danger{color:#ad4545;border-color:#edcccc;margin-right:auto}@media (width<=700px){.timetable-toolbar{flex-direction:column;align-items:stretch}.timetable-toolbar>span{margin-left:0}}.homeroom-page{max-width:1450px;margin:auto}.homeroom-page .assessment-toolbar button{align-items:center;gap:6px;display:flex}.homeroom-page .assessment-toolbar svg{width:17px}.homeroom-list{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.homeroom-list article header{justify-content:space-between;gap:10px;display:flex}.homeroom-list header span{color:#176b87;background:#e9f4f4;border-radius:8px;padding:5px 8px;font-size:11px;font-weight:800}.homeroom-list header small{color:#82969a}.homeroom-list h2{margin-top:16px}.homeroom-list p{white-space:pre-wrap;color:#456168;line-height:1.7}.homeroom-list blockquote{color:#4f696f;background:#f1f7f6;border-left:3px solid #2a8c82;margin:12px 0 0;padding:10px 13px}.leave-returned{color:#398050;align-items:center;gap:6px;display:flex}.leave-returned svg{width:17px}.return-button{color:#fff;background:#176b87;border:0;border-radius:9px;padding:9px 12px}@media (width<=760px){.homeroom-list{grid-template-columns:1fr}}.family-page{max-width:1450px;margin:auto}.family-targets{border:1px solid #d5e2e2;border-radius:14px;padding:14px}.family-targets legend{padding:0 6px;font-weight:800}.target-actions{flex-wrap:wrap;gap:7px;margin-bottom:12px;display:flex}.target-actions button{color:#176b87;background:#e9f4f4;border:0;border-radius:8px;padding:7px 10px}.family-targets>div:last-child{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.family-targets>div:last-child>label{border:1px solid #e0e9e9;border-radius:10px;flex-direction:row;align-items:center;padding:10px;display:flex;position:relative}.family-targets label span,.family-targets label small{display:block}.family-targets label small{color:#84979b}.family-targets label a{color:#2a8c82;margin-left:auto}.family-targets svg{width:17px}.family-list{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.family-list>.detail-card>header{align-items:center;gap:11px;display:flex}.family-list header>span{color:#176b87;background:#e9f4f4;border-radius:9px;align-items:center;gap:5px;padding:7px 10px;font-size:12px;font-weight:800;display:flex}.family-list header>span.task{color:#6c52a4;background:#f0ecfb}.family-list header svg{width:16px}.family-list h2{margin:0 0 4px}.family-list header small{color:#82969a}.family-content{white-space:pre-wrap;color:#466168;line-height:1.7}.family-list details{border-top:1px solid #e9eeee;padding-top:12px}.family-list summary{cursor:pointer;color:#45676f;align-items:center;gap:6px;font-weight:750;display:flex}.family-recipient{border-top:1px solid #edf2f2;padding:11px 0}.family-recipient>div{align-items:center;gap:10px;display:flex}.family-recipient>div span{color:#819499;font-size:11px}.family-recipient a{color:#176b87;align-items:center;gap:4px;margin-left:auto;font-size:11px;display:flex}.family-recipient svg{width:15px}.family-recipient section{background:#f4f8f8;border-radius:9px;grid-template-columns:20px 1fr auto;align-items:center;margin-top:8px;padding:9px;display:grid}.family-recipient section p{margin:0}.family-recipient section button{color:#176b87;background:0 0;border:0;grid-column:2/4;justify-self:start}.parent-family{gap:14px;display:grid}.parent-family .parent-card>header{gap:10px;display:flex}.parent-family header>span{color:#176b87;background:#e9f4f4;border-radius:8px;height:max-content;padding:5px 8px;font-size:11px;font-weight:800}.parent-family h2{margin:0 0 5px}.parent-family .parent-card>p{white-space:pre-wrap;line-height:1.7}.parent-feedback-form{border-top:1px solid #e7eeee;gap:9px;margin-top:14px;padding-top:14px;display:grid}.parent-feedback-form textarea{font:inherit;border:1px solid #d1dfdf;border-radius:10px;padding:10px}.parent-feedback-form label{color:#607a80;align-items:center;gap:7px;font-size:12px;display:flex}.parent-feedback-form button{color:#fff;background:#176b87;border:0;border-radius:9px;justify-self:start;align-items:center;gap:6px;padding:9px 12px;display:flex}.parent-feedback-form svg,.parent-feedback-saved svg{width:16px}.parent-feedback-saved{color:#39744e;background:#edf8f1;border-radius:8px;align-items:center;gap:7px;padding:8px;display:flex}.parent-tabs button i{background:#e05252;border-radius:50%;width:7px;height:7px}@media (width<=850px){.family-list{grid-template-columns:1fr}.family-targets>div:last-child{grid-template-columns:1fr 1fr}}@media (width<=560px){.family-targets>div:last-child{grid-template-columns:1fr}}.login-shell{background:#fbfdfd;grid-template-columns:minmax(420px,1.05fr) minmax(440px,.95fr);min-height:100vh;display:grid}.brand-panel{color:#fff;background:radial-gradient(circle at 75% 20%,#62d8c359,#0000 27%),linear-gradient(145deg,#0b526c,#17788a 52%,#278d7e);flex-direction:column;justify-content:center;padding:clamp(48px,7vw,100px);display:flex;position:relative;overflow:hidden}.brand-panel:after{content:"";border:1px solid #ffffff1f;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-190px;right:-170px;box-shadow:0 0 0 70px #ffffff09,0 0 0 140px #ffffff06}.brand-mark{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff24;border-radius:18px;place-items:center;width:58px;height:58px;margin-bottom:36px;display:grid}.eyebrow{letter-spacing:.18em;opacity:.84;font-size:15px}.brand-copy h1{letter-spacing:-.04em;max-width:700px;margin:14px 0 22px;font-size:clamp(36px,4vw,58px);line-height:1.14}.lead{opacity:.86;font-size:clamp(17px,1.6vw,22px)}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:620px;margin-top:64px;display:grid}.feature-grid>div{background:#ffffff14;border:1px solid #ffffff29;border-radius:16px;align-items:center;gap:14px;padding:18px;display:flex}.feature-grid span{flex-direction:column;gap:3px;display:flex}.feature-grid small{opacity:.72}.login-panel{place-items:center;padding:40px;display:grid}.login-card{flex-direction:column;gap:22px;width:min(420px,100%);display:flex}.login-card header{margin-bottom:12px}.login-card h2{margin:0 0 9px;font-size:34px}.login-card header p{color:#71858b;margin:0}.mobile-school{color:var(--blue);margin-bottom:18px;font-weight:700;display:none}.login-card label>span{margin-bottom:8px;font-size:14px;font-weight:700;display:block}.input-wrap{color:#799097;background:#fff;border:1px solid #cddadd;border-radius:14px;align-items:center;gap:11px;height:54px;padding:0 15px;transition:all .2s;display:flex}.input-wrap:focus-within{border-color:var(--teal);box-shadow:0 0 0 4px #2a8c821f}.input-wrap input{color:#17343d;background:0 0;border:0;outline:0;flex:1;min-width:0}.icon-button{color:#789096;background:0 0;border:0;place-items:center;padding:5px;display:grid}.primary-button{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;height:54px;font-weight:800;display:flex;box-shadow:0 12px 28px #176b8733}.login-tip{text-align:center;color:#84959a;margin:0;font-size:13px;line-height:1.7}.app-shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.sidebar{background:#fff;border-right:1px solid #e1e9e9;flex-direction:column;height:100vh;padding:26px 18px;display:flex;position:sticky;top:0}.logo-mini{color:var(--blue);align-items:center;gap:11px;padding:0 10px 30px;font-weight:900;line-height:1.25;display:flex}.logo-mini svg{flex:none}.sidebar nav{flex-direction:column;gap:7px;display:flex}.sidebar nav a{color:#698087;border-radius:12px;align-items:center;gap:12px;padding:13px 14px;font-weight:650;display:flex}.sidebar nav a svg{width:20px}.sidebar nav a.active{color:var(--blue);background:#e8f4f5}.school-label{color:#8ca0a5;border-top:1px solid #edf1f1;margin-top:auto;padding:20px 10px 0;font-size:12px}.workspace{width:100%;max-width:1500px;margin:auto;padding:30px clamp(24px,4vw,58px) 56px}.topbar{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.topbar p{color:#85999e;margin:0 0 4px;font-size:14px}.topbar h1{margin:0;font-size:28px}.top-actions{align-items:center;gap:10px;display:flex}.top-actions button{color:#5f777d;background:#fff;border:1px solid #dbe5e5;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.avatar{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border-radius:13px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.hero-card{color:#fff;background:radial-gradient(circle at 80% 20%,#6fe3c766,#0000 26%),linear-gradient(130deg,#105a72,#1f8b83);border-radius:26px;min-height:230px;padding:38px 42px;position:relative;overflow:hidden;box-shadow:0 20px 40px #1e6b7329}.hero-card>div:first-child{z-index:2;position:relative}.hero-card span{background:#ffffff24;border-radius:99px;align-items:center;gap:7px;padding:7px 11px;font-size:13px;display:inline-flex}.hero-card h2{margin:18px 0 9px;font-size:30px}.hero-card p{opacity:.85;max-width:650px;margin-bottom:24px}.hero-card button{color:var(--blue);background:#fff;border:0;border-radius:12px;align-items:center;gap:8px;padding:12px 17px;font-weight:800;display:flex}.orb{background:#ffffff1c;border-radius:50%;place-items:center;width:145px;height:145px;display:grid;position:absolute;top:50%;right:8%;translate:0 -50%;box-shadow:0 0 0 30px #ffffff0d,0 0 0 60px #ffffff06}.orb svg{opacity:.9;width:58px;height:58px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0 34px;display:grid}.stats-grid article{background:#fff;border:1px solid #e2ebeb;border-radius:17px;padding:20px}.stats-grid span,.stats-grid small{color:#7e9297;display:block}.stats-grid strong{margin:9px 0 4px;font-size:28px;display:block}.stats-grid small{font-size:12px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.section-heading h2{margin:0 0 4px}.section-heading p{color:#83969b;margin:0}.section-heading button{color:var(--blue);background:0 0;border:0;align-items:center;gap:7px;font-weight:700;display:flex}.module-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.module-card{background:#fff;border:1px solid #e1eaea;border-radius:18px;align-items:center;gap:14px;padding:20px;transition:all .2s;display:flex;position:relative}.module-card:hover{translate:0 -2px;box-shadow:0 13px 25px #2d555a14}.module-card h3{margin:0 0 5px}.module-card p{color:#7a8e93;margin:0;font-size:13px}.module-icon{width:46px;height:46px;color:var(--blue);background:#e9f4f5;border-radius:14px;flex:none;place-items:center;display:grid}.module-arrow{color:#9aabad;width:18px;margin-left:auto}.module-card.orange .module-icon{color:#cf7726;background:#fff2e5}.module-card.red .module-icon{color:#bd4b57;background:#fdebec}.module-card.purple .module-icon{color:#7557b8;background:#f1edfb}.module-card.green .module-icon{color:#488c59;background:#eaf6ec}@media (width<=980px){.login-shell{grid-template-columns:1fr}.brand-panel{display:none}.mobile-school{display:block}.app-shell{grid-template-columns:78px 1fr}.sidebar{padding:22px 12px}.logo-mini span,.sidebar nav a:not(.active){font-size:0}.logo-mini{justify-content:center;padding-inline:0}.sidebar nav a{justify-content:center}.school-label{display:none}.module-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}}.top-actions .icon-link{color:#5f777d;background:#fff;border:1px solid #dbe5e5;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.simple-page{max-width:1120px;margin:auto;padding:42px 28px}.simple-header{align-items:center;gap:28px;margin-bottom:34px;display:flex}.simple-header>a{color:var(--blue);align-items:center;gap:7px;font-weight:750;display:flex}.simple-header svg{width:18px}.simple-header span{color:#83969b}.simple-header h1{margin:4px 0}.storage-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.storage-card{background:#fff;border:1px solid #e0e9e9;border-radius:22px;flex-direction:column;align-items:flex-start;padding:30px;display:flex}.storage-card.featured{border-color:#add5d2;box-shadow:0 15px 35px #1f8b8317}.storage-icon{width:52px;height:52px;color:var(--blue);background:#e8f4f5;border-radius:16px;place-items:center;display:grid}.storage-card h2{margin:20px 0 8px}.storage-card p{color:#6f858a;line-height:1.7}.storage-card code{overflow-wrap:anywhere;margin-top:8px;display:block}.storage-card .status{border-radius:99px;align-items:center;gap:7px;padding:7px 11px;font-size:13px;font-weight:750;display:flex}.status.ok{color:#347a50;background:#e7f6ed}.status.waiting{color:#9a671b;background:#fff3df}.status svg{width:16px}.primary-action{background:var(--blue);color:#fff;border:0;border-radius:12px;align-items:center;gap:8px;margin-top:24px;padding:12px 16px;font-weight:800;display:flex}.primary-action svg{width:17px}.storage-card small{color:#82969a;margin-top:18px}@media (width<=700px){.storage-grid{grid-template-columns:1fr}}.oauth-code{width:100%;margin-top:20px}.oauth-code label{color:#667e83;margin-bottom:8px;font-size:13px;display:block}.oauth-code>div{gap:8px;display:flex}.oauth-code input{border:1px solid #ccdbdc;border-radius:10px;flex:1;min-width:0;padding:11px}.oauth-code button{color:#fff;background:#18776f;border:0;border-radius:10px;padding:0 14px;font-weight:750}.oauth-code button:disabled{opacity:.45}.password-page{background:radial-gradient(circle at 20% 10%,#def3ef,#0000 30%),#f4f8f8;place-items:center;min-height:100vh;padding:24px;display:grid}.password-card{background:#fff;border:1px solid #dce8e7;border-radius:25px;width:min(100%,470px);padding:38px;box-shadow:0 20px 55px #234f531f}.password-icon{width:58px;height:58px;color:var(--blue);background:#e6f3f2;border-radius:18px;place-items:center;display:grid}.password-card>span{color:var(--teal);margin-top:22px;font-weight:800;display:block}.password-card h1{margin:7px 0 8px}.password-card>p{color:#72878c;line-height:1.65}.password-card form{gap:16px;margin-top:24px;display:grid}.password-card label{color:#536c72;font-size:14px;font-weight:750}.password-card input{width:100%;font:inherit;border:1px solid #cbdadb;border-radius:11px;margin-top:7px;padding:12px;display:block}.password-card button{background:var(--blue);color:#fff;border:0;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:13px;font-weight:850;display:flex}.password-card button svg{width:18px}@media (width<=640px){.login-panel{padding:28px 22px}.workspace{padding:22px 16px 40px}.app-shell{display:block}.sidebar{display:none}.topbar h1{font-size:23px}.hero-card{padding:28px 24px}.hero-card h2{font-size:25px}.orb{display:none}.stats-grid{grid-template-columns:1fr 1fr}.module-grid{grid-template-columns:1fr}.section-heading button{display:none}}.form-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;margin:-4px 0 2px;padding:10px 12px;font-size:13px}.primary-button:disabled{cursor:not-allowed;opacity:.62;transform:none}.module-card{color:inherit;text-decoration:none}.page-shell{background:#f4f8f8;min-height:100vh;padding:38px clamp(24px,5vw,72px)}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;max-width:1440px;margin:0 auto 24px;display:flex}.page-header h1{margin:12px 0 7px;font-size:32px}.page-header p{color:#789096;margin:0}.back-link{color:var(--blue);align-items:center;gap:6px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}.page-actions{gap:10px;display:flex}.page-actions button{border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 16px;font-weight:750;display:flex}.secondary-action{color:#345d66;background:#fff;border:1px solid #cadada}.solid-action{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border:0}.notice-card,.result-banner,.table-card{max-width:1440px;margin-left:auto;margin-right:auto}.notice-card{color:#256b64;background:#edf9f5;border:1px solid #cce5df;border-radius:15px;align-items:center;gap:14px;padding:17px 20px;display:flex}.notice-card div{flex-direction:column;gap:3px;display:flex}.notice-card span{color:#5a7975;font-size:13px}.result-banner{color:#2d5f91;background:#eef5ff;border:1px solid #d4e4f5;border-radius:12px;margin-top:14px;padding:13px 16px}.table-card{background:#fff;border:1px solid #e0e9e9;border-radius:18px;margin-top:18px;overflow:hidden}.table-toolbar{border-bottom:1px solid #e7eeee;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.table-toolbar>div{align-items:center;gap:9px;display:flex}.table-toolbar>div svg{color:var(--teal)}.table-toolbar>div span{color:#6f858a;background:#eef4f4;border-radius:99px;padding:3px 8px;font-size:12px}.table-toolbar form{color:#83979b;border:1px solid #d5e0e0;border-radius:10px;align-items:center;gap:8px;width:250px;height:38px;padding:0 11px;display:flex}.table-toolbar input{border:0;outline:0;flex:1;min-width:0}.student-table-wrap{overflow:auto}.student-table{border-collapse:collapse;width:100%;min-width:900px}.student-table th{text-align:left;color:#73878c;background:#fafcfc;padding:13px 18px;font-size:12px}.student-table td{color:#526b71;border-top:1px solid #edf1f1;padding:16px 18px;font-size:14px}.student-table tbody tr:hover{background:#fbfdfd}.status-pill{color:#3e8153;background:#eaf7ee;border-radius:99px;padding:5px 9px;font-size:12px;display:inline-block}.empty-cell{text-align:center!important;color:#8da0a4!important;padding:70px 20px!important}.empty-cell svg,.empty-cell b,.empty-cell span{margin:0 auto 8px;display:block}.empty-cell svg{color:#9db0b3;width:34px;height:34px}.empty-cell span{font-size:13px}.student-name-link{color:var(--blue);font-weight:800;text-decoration:none}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#102c337a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.form-modal{background:#fff;border-radius:22px;width:min(720px,100%);max-height:92vh;overflow:auto;box-shadow:0 30px 70px #0f2b314d}.form-modal header{border-bottom:1px solid #e9eeee;justify-content:space-between;align-items:flex-start;padding:24px 26px;display:flex}.form-modal h2{margin:0 0 5px}.form-modal header p{color:#84969b;margin:0}.form-modal header button{color:#61787e;background:#f1f5f5;border:0;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.form-modal form{padding:24px 26px}.form-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.form-grid label,.long-form label{flex-direction:column;gap:7px;display:flex}.form-grid label span,.long-form label span{font-size:13px;font-weight:750}.form-grid input,.form-grid select,.long-form input,.long-form textarea{background:#fff;border:1px solid #cfdddd;border-radius:11px;outline:0;width:100%;padding:11px 12px}.form-grid input:focus,.form-grid select:focus,.long-form input:focus,.long-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #2a8c821a}.form-modal footer{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.form-modal footer button,.save-row button{border-radius:11px;align-items:center;gap:8px;height:43px;padding:0 17px;font-weight:750;display:flex}.student-profile-header{justify-content:space-between;align-items:flex-end;max-width:1440px;margin:0 auto 24px;display:flex}.student-title{align-items:center;gap:15px;margin-top:18px;display:flex}.student-title h1{margin:0 0 5px;font-size:31px}.student-title p{color:#789095;margin:0}.large-avatar{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border-radius:17px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:900;display:grid}.detail-grid{grid-template-columns:340px 1fr;align-items:start;gap:18px;max-width:1440px;margin:auto;display:grid}.info-stack{flex-direction:column;gap:18px;display:flex}.detail-card{background:#fff;border:1px solid #e0e9e9;border-radius:18px;padding:21px}.detail-card h2{align-items:center;gap:9px;margin:0 0 18px;font-size:18px;display:flex}.detail-card h2 svg{color:var(--teal);width:20px}.detail-card dl{margin:0}.detail-card dl>div{border-top:1px solid #edf2f2;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.detail-card dt{color:#819499}.detail-card dd{margin:0;font-weight:700}.guardian-row{border-top:1px solid #edf2f2;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.guardian-row div{flex-direction:column;gap:3px;display:flex}.guardian-row span,.history-row span,.history-row small,.muted{color:#82959a;font-size:12px}.guardian-row strong{font-size:13px}.history-row{border-top:1px solid #edf2f2;flex-direction:column;gap:4px;padding:11px 0;display:flex}.card-heading{border-bottom:1px solid #e8eeee;justify-content:space-between;gap:20px;margin-bottom:20px;padding-bottom:17px;display:flex}.card-heading h2{margin-bottom:5px}.card-heading p{color:#819499;margin:0;font-size:13px}.card-heading>span{white-space:nowrap;color:var(--blue);font-size:13px;font-weight:750}.risk-checks{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px;display:grid}.risk-checks label{background:#fbfdfd;border:1px solid #dbe5e5;border-radius:11px;align-items:center;gap:9px;padding:12px;font-size:13px;font-weight:700;display:flex}.risk-checks input{accent-color:var(--teal);width:17px;height:17px}.long-form{grid-template-columns:1fr 1fr;gap:17px;display:grid}.long-form label:nth-child(5),.long-form label:nth-child(6){grid-column:1/-1}.long-form textarea{resize:vertical}.save-row{justify-content:flex-end;margin-top:20px;display:flex}.loading-card{text-align:center;color:#819499;background:#fff;border-radius:18px;max-width:800px;margin:30px auto;padding:70px}@media (width<=900px){.page-header{flex-direction:column;align-items:flex-start}.detail-grid{grid-template-columns:1fr}.risk-checks{grid-template-columns:repeat(2,1fr)}}.table-toolbar select,.service-mode-card select,.service-mode-card input{color:#45636a;background:#fff;border:1px solid #cfdddd;border-radius:10px;outline:0;padding:9px 11px}.student-table td:first-child small{color:#95a5a8;margin-top:4px;font-size:10px;display:block}.status-pill.home_visit{color:#5268a8;background:#eef2ff}.status-pill.paused{color:#737b7d;background:#f4f4f4}.service-mode-card{flex-direction:column;gap:10px;display:flex}.service-mode-card h2{margin-bottom:0}.service-mode-card p{margin:0 0 3px}.service-mode-card button{justify-content:center;padding:10px}.service-mode-card button:disabled{opacity:.5}@media (width<=600px){.page-shell{padding:24px 14px}.page-actions{flex-direction:column;width:100%}.page-actions button{justify-content:center}.form-grid,.long-form{grid-template-columns:1fr}.long-form label:nth-child(5),.long-form label:nth-child(6){grid-column:auto}.risk-checks{grid-template-columns:1fr 1fr}.student-profile-header{align-items:flex-start}.student-profile-header>.status-pill{display:none}.table-toolbar{flex-direction:column;align-items:flex-start;gap:12px}.table-toolbar form{width:100%}.table-toolbar>div{flex-wrap:wrap}}.attendance-new{border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 15px;font-weight:750;display:flex}.attendance-error{color:#a23d33;background:#fff3f1;border-color:#f1d1cc;max-width:1440px;margin-bottom:16px}.attendance-layout{grid-template-columns:1fr 1fr;align-items:start;gap:18px;max-width:1100px;margin:auto;display:grid}.attendance-create form{flex-direction:column;gap:17px;display:flex}.attendance-create label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.attendance-create select,.attendance-create input{background:#fff;border:1px solid #cedddd;border-radius:11px;height:44px;padding:0 12px}.attendance-create .solid-action{border-radius:11px;height:44px;font-weight:800}.attendance-empty{text-align:center;color:#7c9297;flex-direction:column;align-items:center;gap:8px;padding:38px 10px;display:flex}.attendance-empty svg{color:#8fa6aa;width:40px;height:40px}.attendance-empty a{color:var(--blue);margin-top:7px;font-weight:750}.history-card>button{text-align:left;background:0 0;border:0;border-top:1px solid #eaf0f0;justify-content:space-between;align-items:center;width:100%;padding:14px 2px;display:flex}.history-card>button div{flex-direction:column;gap:4px;display:flex}.history-card>button span{color:#81959a;font-size:12px}.history-card>button strong{color:#c37230;font-size:12px}.history-card>button strong.done{color:#43865a}.attendance-session{background:#fff;border:1px solid #dfe9e9;border-radius:20px;max-width:1200px;margin:auto;overflow:hidden}.attendance-summary{color:#fff;background:linear-gradient(135deg,#155e76,#22877e);justify-content:space-between;align-items:center;padding:25px 28px;display:flex}.attendance-summary>div:first-child>span{opacity:.8;font-size:13px}.attendance-summary h2{margin:7px 0}.attendance-summary p{opacity:.78;margin:0;font-size:13px}.attendance-kpis{gap:10px;display:flex}.attendance-kpis>div{background:#ffffff21;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;width:80px;height:70px;display:flex}.attendance-kpis strong{font-size:25px}.attendance-kpis span{opacity:.8;font-size:11px}.attendance-kpis .warn{background:#ffbe6438}.attendance-toolbar{border-bottom:1px solid #e5eded;align-items:center;gap:16px;padding:16px 20px;display:flex}.attendance-toolbar button{border-radius:10px;align-items:center;gap:7px;height:40px;padding:0 14px;font-weight:750;display:flex}.attendance-toolbar>span{text-align:center;color:#758b90;flex:1;font-size:13px}.attendance-list{padding:8px 20px 20px}.attendance-list article{border-bottom:1px solid #edf2f2;align-items:center;gap:12px;padding:14px 5px;display:flex}.mini-avatar{width:37px;height:37px;color:var(--blue);background:#e8f3f4;border-radius:11px;place-items:center;font-weight:850;display:grid}.attendance-list article>b{min-width:90px}.attendance-list article>div{gap:6px;margin-left:auto;display:flex}.attendance-list article button{color:#687e83;background:#fff;border:1px solid #d7e2e2;border-radius:9px;padding:7px 11px}.attendance-list article button.selected{border-color:var(--teal);color:#22776e;background:#e8f6f2;font-weight:750}.solid-action:disabled,.secondary-action:disabled{opacity:.55;cursor:not-allowed}@media (width<=760px){.attendance-layout{grid-template-columns:1fr}.attendance-toolbar{flex-wrap:wrap}.attendance-toolbar>span{flex-basis:100%;order:-1}.attendance-list article{flex-wrap:wrap;align-items:flex-start}.attendance-list article>div{width:100%;margin:4px 0 0;overflow:auto}.attendance-summary{padding:22px 18px}.attendance-kpis>div{width:64px}}.header-link{border-radius:12px;align-items:center;gap:8px;height:44px;padding:0 15px;font-weight:750;text-decoration:none;display:flex}.trend-alert{color:#8e5d19;background:#fff7e9;border:1px solid #f0d7aa;border-radius:15px;gap:14px;max-width:1200px;margin:0 auto 16px;padding:17px 20px;display:flex}.trend-alert svg{flex:none}.trend-alert b{margin-bottom:5px;display:block}.trend-alert p{margin:3px 0;font-size:13px}.observation-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);align-items:start;gap:18px;max-width:1200px;margin:auto;display:grid}.observation-form form{flex-direction:column;gap:18px;display:flex}.obs-two{grid-template-columns:1fr 1fr;gap:14px;display:grid}.obs-two label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.obs-two input,.obs-two select{background:#fff;border:1px solid #cfdddd;border-radius:10px;height:43px;padding:0 11px}.obs-flags{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.obs-flags label{border:1px solid #dde7e7;border-radius:10px;align-items:center;gap:7px;padding:10px 8px;font-size:12px;font-weight:700;display:flex}.obs-flags input,.obs-options input{accent-color:var(--teal)}.observation-text{grid-template-columns:1fr}.observation-text label{grid-column:auto!important}.obs-options{gap:22px;display:flex}.obs-options label{align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.obs-save{border-radius:11px;justify-content:center;align-items:center;gap:8px;height:44px;font-weight:800;display:flex}.observation-row{border-top:1px solid #eaf0f0;gap:11px;padding:13px 0;display:flex}.observation-row>span{border-radius:8px;place-items:center;min-width:55px;height:27px;font-size:11px;font-weight:750;display:grid}.observation-row>span.normal{color:#3d8053;background:#e9f6ed}.observation-row>span.abnormal{color:#ba662a;background:#fff0e4}.observation-row div{min-width:0}.observation-row p{color:#668087;margin:4px 0;font-size:13px}.observation-row small{color:#87999d;line-height:1.5;display:block}.recent-observations{max-height:760px;overflow:auto}@media (width<=900px){.observation-grid{grid-template-columns:1fr}.obs-flags{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.obs-two{grid-template-columns:1fr}.obs-flags{grid-template-columns:1fr 1fr}.obs-options{flex-direction:column;gap:10px}}.incident-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.62fr);align-items:start;gap:18px;max-width:1400px;margin:auto;display:grid}.incident-form form{flex-direction:column;gap:20px;display:flex}.incident-basic{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.incident-basic label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.incident-basic input,.incident-basic select,.abc-grid textarea{background:#fff;border:1px solid #cfdddd;border-radius:10px;padding:10px 11px}.incident-basic input,.incident-basic select{height:42px}.abc-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.abc-grid label{border-radius:13px;flex-direction:column;gap:6px;padding:14px;display:flex}.abc-grid label.a{background:#eef6ff;border:1px solid #cfe1f1}.abc-grid label.b{background:#fff3eb;border:1px solid #f0d7c6}.abc-grid label.c{background:#edf8f3;border:1px solid #cfe5da}.abc-grid label>b{font-size:14px}.abc-grid label>span{color:#70878d;min-height:34px;font-size:11px;line-height:1.45}.abc-grid textarea{resize:vertical}.incident-extra{grid-template-columns:1fr 1fr}.incident-extra label:nth-child(5){grid-column:1/-1}.ai-boundary{color:#65558c;background:#f3f0fb;border-radius:11px;align-items:center;gap:10px;padding:13px;font-size:12px;display:flex}.ai-boundary svg{flex:none}.incident-save{border-radius:11px;justify-content:center;align-items:center;gap:8px;height:44px;font-weight:800;display:flex}.incident-recent{max-height:850px;overflow:auto}.incident-row{border-top:1px solid #e9efef;align-items:flex-start;gap:10px;padding:13px 0;display:flex}.incident-row>div{min-width:0}.incident-row b{font-size:13px}.incident-row p{color:#657d83;white-space:nowrap;text-overflow:ellipsis;margin:5px 0;font-size:12px;overflow:hidden}.incident-row small{color:#87999d}.severity{border-radius:7px;flex:none;padding:5px 7px;font-size:10px;font-weight:800}.severity.low{color:#3f8255;background:#e9f6ed}.severity.medium{color:#a06b1e;background:#fff5df}.severity.high{color:#b9532e;background:#ffede4}.severity.critical{color:#b6343c;background:#fde8e8}@media (width<=1000px){.incident-layout{grid-template-columns:1fr}}@media (width<=700px){.incident-basic{grid-template-columns:1fr 1fr}.abc-grid,.incident-extra{grid-template-columns:1fr}.incident-extra label:nth-child(5){grid-column:auto}}@media (width<=480px){.incident-basic{grid-template-columns:1fr}}.incident-detail-head{justify-content:space-between;align-items:flex-end;max-width:1400px;margin:0 auto 24px;display:flex}.incident-detail-head h1{margin:15px 0 6px}.incident-detail-head p{color:#7d9297;margin:0}.detail-severity{padding:8px 12px;font-size:13px}.incident-detail-grid{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:18px;max-width:1400px;margin:auto;display:grid}.detail-main{flex-direction:column;gap:18px;display:flex}.abc-read{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.abc-read section{border-radius:13px;padding:16px}.abc-read section.a{background:#eef6ff;border:1px solid #cfe1f1}.abc-read section.b{background:#fff3eb;border:1px solid #f0d7c6}.abc-read section.c{background:#edf8f3;border:1px solid #cfe5da}.abc-read p{color:#526c73;margin:8px 0 0;font-size:13px;line-height:1.7}.event-timeline>div{gap:13px;padding-bottom:20px;display:flex;position:relative}.event-timeline>div:not(:last-child):before{content:"";background:#dce7e7;width:1px;position:absolute;top:31px;bottom:0;left:15px}.event-timeline>div>span{width:31px;height:31px;color:var(--teal);background:#e7f4f3;border-radius:50%;flex:none;place-items:center;font-weight:850;display:grid}.event-timeline section p{color:#6c8389;margin:5px 0 0;line-height:1.6}.review-form,.follow-form{flex-direction:column;gap:14px;display:flex}.review-form label,.follow-form label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.review-form textarea,.follow-form textarea{resize:vertical;border:1px solid #cedddd;border-radius:10px;padding:11px}.review-form button,.follow-form button{border-radius:10px;justify-content:center;align-items:center;gap:7px;height:42px;font-weight:800;display:flex}.follow-row{border-top:1px solid #e9efef;padding:12px 0}.follow-row b{font-size:13px;line-height:1.6}.follow-row p{color:#637b81;margin:6px 0;font-size:13px}.follow-row small{color:#8a9b9f}.incident-row{color:inherit;text-decoration:none}@media (width<=900px){.incident-detail-grid,.abc-read{grid-template-columns:1fr}}.emergency-create-button{border-radius:11px;align-items:center;gap:7px;height:44px;padding:0 16px;font-weight:800;display:flex}.plan-create{max-width:900px;margin:0 auto 18px}.plan-create form{flex-direction:column;gap:14px;display:flex}.plan-create form>div{grid-template-columns:1fr 1fr;gap:13px;display:grid}.plan-create label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.plan-create input,.plan-create select,.plan-create textarea{border:1px solid #cedddd;border-radius:10px;padding:10px 11px}.plan-create button{border-radius:10px;height:42px;font-weight:800}.plan-grid{grid-template-columns:repeat(3,1fr);gap:16px;max-width:1200px;margin:auto;display:grid}.plan-card>span{color:#a16427;background:#fff1df;border-radius:99px;padding:5px 8px;font-size:11px}.plan-card h2{margin:15px 0 7px}.plan-card>p{color:#758b90;min-height:38px;font-size:13px}.plan-card ol{color:#5d757b;min-height:85px;padding-left:20px;font-size:12px;line-height:1.7}.plan-card button{width:100%;height:40px;color:var(--teal);background:#e8f4f3;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;font-weight:800;display:flex}.emergency-run{background:#fff;border:1px solid #dfe9e9;border-radius:20px;max-width:950px;margin:auto;overflow:hidden}.emergency-run>header{color:#fff;background:linear-gradient(135deg,#8a3e31,#c4633e);align-items:center;gap:15px;padding:24px;display:flex}.emergency-run>header>svg{width:38px;height:38px}.emergency-run header span{opacity:.8;font-size:12px}.emergency-run header h2{margin:4px 0}.emergency-run header p{opacity:.8;margin:0;font-size:12px}.run-steps{padding:12px 22px}.run-steps article{border-bottom:1px solid #e8eeee;align-items:center;gap:13px;padding:16px 3px;display:flex}.run-steps article>span{color:#b45c34;background:#fff1e9;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:850;display:grid}.run-steps article.completed>span{color:#3e8553;background:#e4f5e9}.run-steps article>div{flex:1}.run-steps p{color:#617a80;margin:4px 0;font-size:13px}.run-steps small{color:#8a9a9e}.run-steps button{color:#526c72;background:#fff;border:1px solid #d4e0e0;border-radius:9px;padding:8px 10px}.run-steps button:disabled{color:#46825a;background:#edf6ef}.emergency-run>footer{background:#f8fafa;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.emergency-run footer button{border-radius:10px;height:42px;padding:0 15px;font-weight:800}@media (width<=900px){.plan-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.plan-grid,.plan-create form>div{grid-template-columns:1fr}.emergency-run>footer{flex-direction:column;align-items:flex-start;gap:12px}}.notify-targets{background:#fff;border:1px solid #dfe9e9;border-radius:15px;max-width:1200px;margin:0 auto 16px;padding:16px 18px}.notify-targets>b{margin-bottom:11px;display:block}.notify-targets>div{flex-wrap:wrap;gap:9px;display:flex}.notify-targets label{background:#f4f8f8;border-radius:9px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.notify-targets input{accent-color:var(--teal)}.emergency-history{max-width:1200px;margin:18px auto 0}.emergency-history>button{text-align:left;background:#fff;border:0;border-top:1px solid #e8eeee;justify-content:space-between;align-items:center;width:100%;padding:13px 2px;display:flex}.emergency-history>button>div{flex-direction:column;gap:4px;display:flex}.emergency-history span{color:#7f9398;font-size:12px}.emergency-history strong{color:#4a825b;font-size:12px}.report-draft{background:#f8fbfb;border:1px solid #d7e4e4;border-radius:13px;margin:0 22px 22px;padding:18px}.report-draft>b{font-size:16px}.report-draft p,.report-draft li{color:#5f777d;font-size:13px;line-height:1.7}.report-draft small{color:#8b6d43}.emergency-run>footer>.secondary-action{border-radius:10px;height:40px;padding:0 13px}.current-duty{color:#286e65;background:#eaf6f3;border:1px solid #cce3dc;border-radius:15px;gap:13px;max-width:1200px;margin:0 auto 18px;padding:18px 20px;display:flex}.current-duty svg{flex:none}.current-duty b{margin-bottom:5px;display:block}.current-duty p{margin:3px 0;font-size:13px}.duty-grid{grid-template-columns:1fr 1fr;align-items:start;gap:18px;max-width:1200px;margin:auto;display:grid}.duty-form form{flex-direction:column;gap:14px;display:flex}.duty-form form>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.duty-form label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.duty-form input,.duty-form select,.duty-form textarea{border:1px solid #cfdddd;border-radius:10px;padding:10px 11px}.duty-form fieldset{border:1px solid #d7e3e3;border-radius:11px;flex-wrap:wrap;gap:8px;padding:12px;display:flex}.duty-form legend{font-size:12px;font-weight:750}.duty-form fieldset label{background:#f2f7f7;border-radius:8px;flex-direction:row;align-items:center;padding:7px 9px;display:flex}.duty-form fieldset input{accent-color:var(--teal)}.duty-form button{border-radius:10px;height:42px;font-weight:800}.handover-list{max-width:1200px;margin:18px auto}.handover-list>article{border-top:1px solid #e7eeee;padding:16px 0}.handover-list article>header{justify-content:space-between;align-items:center;display:flex}.handover-list header div{flex-direction:column;gap:4px;display:flex}.handover-list header span{color:#82969a;font-size:12px}.handover-list header strong{color:#ad6a28;font-size:11px}.handover-list header strong.complete{color:#438256}.handover-list dl{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.handover-list dl>div{background:#f8fafa;border-radius:10px;padding:11px}.handover-list dt{color:#84969a;font-size:11px}.handover-list dd{margin:5px 0 0;font-size:13px}.handover-list dd.unfinished{color:#b05d31}.handover-list footer{justify-content:flex-end;gap:8px;display:flex}.handover-list footer button{background:#fff;border:1px solid #d3dfdf;border-radius:9px;padding:8px 11px}.handover-list footer button:disabled{color:#588166;background:#edf5ef}@media (width<=800px){.duty-grid,.handover-list dl,.duty-form form>div{grid-template-columns:1fr}}.med-alert{color:#8b591b;background:#fff6e8;border:1px solid #f0d1aa;border-radius:15px;gap:13px;max-width:1200px;margin:0 auto 18px;padding:17px 20px;display:flex}.med-alert svg{flex:none}.med-alert b{margin-bottom:5px;display:block}.med-alert p{margin:3px 0;font-size:13px}.med-layout{grid-template-columns:minmax(380px,.8fr) minmax(0,1.2fr);align-items:start;gap:18px;max-width:1300px;margin:auto;display:grid}.med-form form{flex-direction:column;gap:14px;display:flex}.med-form form>div{grid-template-columns:1fr 1fr;gap:12px;display:grid}.med-form label,.med-record-modal label{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.med-form input,.med-form select,.med-form textarea,.med-record-modal input,.med-record-modal select,.med-record-modal textarea{border:1px solid #cedddd;border-radius:10px;padding:10px 11px}.med-form .authorization-check{color:#39746b;background:#edf7f4;border-radius:10px;flex-direction:row;align-items:center;padding:11px}.authorization-check input{accent-color:var(--teal)}.med-form button{border-radius:10px;height:42px;font-weight:800}.med-orders{grid-template-columns:1fr 1fr;gap:14px;display:grid}.med-card>header{align-items:center;gap:11px;display:flex}.med-card>header>span{color:#b84c59;background:#fdebed;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.med-card h2{margin:0 0 4px;font-size:16px}.med-card header p{color:#758a90;margin:0;font-size:12px}.med-card dl>div{border-top:1px solid #eaf0f0;justify-content:space-between;gap:12px;padding:8px 0;font-size:12px;display:flex}.med-card dd{text-align:right;margin:0}.med-card>button{color:#2a786f;background:#eaf5f4;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;width:100%;height:38px;font-weight:800;display:flex}.med-record{background:#f3f7f7;border-radius:8px;align-items:center;gap:7px;margin-top:8px;padding:8px 9px;font-size:11px;display:flex}.med-record span{color:#7d9095}.med-record small{color:#b34d39;display:block}.med-record.abnormal_reaction{color:#ac4d30;background:#fff0eb}.med-record-modal{max-width:520px}.med-record-modal form{flex-direction:column;gap:13px;display:flex}.med-record-modal footer{margin-top:5px}@media (width<=980px){.med-layout{grid-template-columns:1fr}.med-orders{grid-template-columns:1fr 1fr}}@media (width<=620px){.med-form form>div,.med-orders{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.record-page{background:#f3f7f7;min-height:100vh;padding:36px clamp(20px,5vw,70px) 60px}.record-header{justify-content:space-between;align-items:flex-end;gap:24px;max-width:1400px;margin:0 auto 22px;display:flex}.record-header a{color:var(--blue);align-items:center;gap:6px;font-size:13px;font-weight:750;text-decoration:none;display:flex}.record-header a svg{width:17px}.record-header p{color:#2a8c82;margin:20px 0 5px;font-size:13px;font-weight:800}.record-header h1{margin:0 0 7px;font-size:32px}.record-header span{color:#758b91}.header-actions{gap:10px;display:flex}.header-actions button,.form-actions button{background:linear-gradient(135deg,var(--blue),var(--teal));color:#fff;border:0;border-radius:11px;align-items:center;gap:7px;height:44px;padding:0 16px;font-weight:800;display:flex}.header-actions button svg{width:18px}.header-actions .secondary{color:#28616d;background:#fff;border:1px solid #d2e0e0}.alert{border-radius:11px;max-width:1400px;margin:0 auto 15px;padding:13px 16px}.alert.error{color:#a34336;background:#fff1ef;border:1px solid #f0d0ca}.alert.success{color:#397652;background:#eaf7ef;border:1px solid #cbe4d4}.teaching-summary{grid-template-columns:repeat(3,1fr);gap:13px;max-width:1400px;margin:0 auto 18px;display:grid}.teaching-summary article{background:#fff;border:1px solid #e0e9e9;border-radius:15px;align-items:center;gap:13px;padding:18px;display:flex}.teaching-summary article>svg{width:25px;color:var(--teal)}.teaching-summary strong,.teaching-summary span{display:block}.teaching-summary strong{font-size:22px}.teaching-summary span{color:#7d9095;margin-top:3px;font-size:12px}.form-card{background:#fff;border:1px solid #dce7e7;border-radius:18px;max-width:1400px;margin:0 auto 18px;padding:22px}.form-card h2{margin:0 0 5px;font-size:19px}.form-card>p{color:#7b8f94;margin:0 0 18px;font-size:13px}.form-card .form-grid{margin-top:17px}.form-card .form-grid>label{font-size:13px;font-weight:750}.form-card .form-grid input,.form-card .form-grid select,.form-card .form-grid textarea{resize:vertical;border:1px solid #cfdddd;border-radius:10px;padding:10px 11px}.form-card .form-grid .wide{grid-column:1/-1}.form-actions{grid-column:1/-1;justify-content:flex-end;display:flex}.form-hint{color:#aa5c36!important}.share-choice{background:#f0f7f6;border:1px solid #d5e7e3;border-radius:11px;align-items:center;padding:13px;flex-direction:row!important}.share-choice>input{height:18px;accent-color:var(--teal);width:18px!important}.share-choice span{flex-direction:column;gap:4px;display:flex}.share-choice small{color:#6d8388;font-weight:400}.resource-toolbar{max-width:1400px;margin:0 auto 14px;overflow:auto}.type-tabs{gap:7px;min-width:max-content;display:flex}.type-tabs button{color:#647c82;background:#fff;border:1px solid #d6e2e2;border-radius:99px;padding:8px 12px;font-size:12px}.type-tabs button.active{color:#fff;background:#176b87;border-color:#176b87}.resource-grid{grid-template-columns:repeat(3,1fr);gap:14px;max-width:1400px;margin:auto;display:grid}.resource-card{background:#fff;border:1px solid #dfe9e9;border-radius:16px;gap:13px;min-height:155px;padding:18px;display:flex;position:relative}.resource-kind{color:#176b87;background:#e8f3f5;border-radius:12px;flex:none;place-items:center;width:43px;height:43px;display:grid}.resource-kind.html{color:#7357ac;background:#f0ebfa}.resource-body{flex:1;min-width:0}.resource-meta{color:#70878c;align-items:center;gap:7px;font-size:10px;display:flex}.resource-meta>span:first-child{background:#eef4f4;border-radius:99px;padding:4px 7px}.resource-meta .school,.resource-meta .private{align-items:center;gap:3px;display:flex}.resource-meta svg{width:11px;height:11px}.resource-meta .school{color:#27786e}.resource-meta .private{color:#8c7c69}.resource-card h3{margin:10px 0 6px;font-size:16px}.resource-card p{color:#687f85;margin:0 0 10px;font-size:12px;line-height:1.55}.resource-card small{color:#899a9e;font-size:11px}.icon-download{color:#27776f;background:#edf6f5;border:0;border-radius:9px;place-items:center;width:32px;height:32px;display:grid;position:absolute;bottom:12px;right:12px}.icon-download svg{width:16px}.resource-card details{margin-top:12px}.resource-card summary{cursor:pointer;color:#69548f;font-size:12px;font-weight:750}.resource-card iframe{background:#fff;border:1px solid #dce4e4;border-radius:9px;width:100%;height:220px;margin-top:9px}.empty-card{color:#82969a;text-align:center;background:#fff;border:1px dashed #cbdada;border-radius:17px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;min-height:260px;display:flex}.empty-card svg{width:40px;height:40px}.empty-card h3{color:#516d73;margin:12px 0 5px}.empty-card p{max-width:480px;margin:0;font-size:13px}@media (width<=1000px){.resource-grid{grid-template-columns:1fr 1fr}}@media (width<=680px){.record-page{padding:23px 14px 45px}.record-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%}.header-actions button{flex:1;justify-content:center}.teaching-summary,.resource-grid,.form-card .form-grid{grid-template-columns:1fr}.form-card .form-grid .wide,.form-actions{grid-column:auto}}.psych-behavior-link{background:#fff;border:1px solid #d8d1e8;border-radius:11px;height:44px;color:#66538e!important;padding:0 14px!important;font-size:13px!important}.psych-boundary{color:#65538c;background:#f2eef9;border:1px solid #ddd3ef;border-radius:14px;align-items:center;gap:12px;max-width:1400px;margin:0 auto 17px;padding:16px 18px;display:flex}.psych-boundary svg{flex:none}.psych-boundary b,.psych-boundary span{display:block}.psych-boundary span{color:#796d96;margin-top:4px;font-size:12px}.psych-tabs{gap:8px;max-width:1400px;margin:0 auto 17px;display:flex}.psych-tabs button{color:#657c82;background:#fff;border:1px solid #d9e3e3;border-radius:11px;align-items:center;gap:7px;height:43px;padding:0 14px;font-weight:750;display:flex}.psych-tabs button svg{width:18px}.psych-tabs button span{background:#edf3f3;border-radius:99px;padding:2px 6px;font-size:11px}.psych-tabs button.active{color:#fff;background:#65538c;border-color:#65538c}.psych-tabs button.active span{background:#ffffff29}.psych-form .parent-visible-field{background:#edf8f4;border:1px solid #cfe5dc;border-radius:11px;padding:12px}.psych-form .internal-field{background:#f7f5fa;border:1px solid #e2dced;border-radius:11px;padding:12px}.psych-list{flex-direction:column;gap:13px;max-width:1100px;margin:auto;display:flex}.psych-list>article{background:#fff;border:1px solid #dfe8e8;border-radius:16px;gap:16px;padding:19px;display:flex}.psych-date{color:#65538c;background:#f0ecf8;border-radius:12px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:54px;height:59px;display:flex}.psych-date strong{font-size:22px}.psych-date span{font-size:10px}.psych-content{flex:1;min-width:0}.psych-content>header{justify-content:space-between;gap:15px;display:flex}.psych-content h2{margin:0 0 0 8px;font-size:17px;display:inline}.psych-status{color:#3f8053;background:#e9f6ed;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:800;display:inline-block}.psych-status.ongoing{color:#4e6f9d;background:#eef3fc}.psych-status.paused,.psych-status.referred{color:#a76526;background:#fff2e5}.psych-content header button{color:#6b588e;background:#fff;border:1px solid #ded8e8;border-radius:9px;align-items:center;gap:5px;height:34px;font-size:11px;display:flex}.psych-content header button svg{width:14px}.psych-content>p{color:#71868b;margin:9px 0;font-size:12px}.parent-preview{color:#3f7468;background:#edf8f4;border-radius:9px;padding:11px 12px;font-size:12px}.parent-preview b,.parent-preview span{display:block}.parent-preview span{margin-top:4px;line-height:1.6}.psych-content details{margin:10px 0}.psych-content summary{cursor:pointer;color:#67568a;font-size:12px;font-weight:750}.psych-content dl{grid-template-columns:1fr 1fr;gap:8px;display:grid}.psych-content dl>div{background:#f7f6f9;border-radius:9px;padding:10px}.psych-content dt{color:#847996;font-size:10px}.psych-content dd{color:#586d72;margin:5px 0 0;font-size:12px;line-height:1.55}.psych-content>small{color:#8c9b9e}.activity-grid{grid-template-columns:repeat(3,1fr);gap:14px;max-width:1200px;margin:auto;display:grid}.activity-grid article>header{justify-content:space-between;align-items:center;display:flex}.activity-grid header span{color:#3e8052;background:#eaf6ed;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:800}.activity-grid header svg{color:#735e9b}.activity-grid article h2{margin:15px 0 6px;display:block}.activity-grid article>p{color:#70868b;font-size:12px}.activity-grid dl>div{display:block}.activity-grid dd{font-size:12px;line-height:1.55;text-align:left!important}.activity-grid article>small{color:#899a9e;font-size:11px}@media (width<=850px){.activity-grid{grid-template-columns:1fr 1fr}.psych-content dl{grid-template-columns:1fr}}@media (width<=600px){.psych-tabs{flex-direction:column}.psych-tabs button{justify-content:center}.activity-grid{grid-template-columns:1fr}.psych-list>article{gap:10px;padding:14px}.psych-date{width:45px}.psych-content>header{flex-direction:column}.psych-content header button{align-self:flex-start}.psych-behavior-link{flex:1;justify-content:center}}.visit-stats{grid-template-columns:repeat(3,1fr);gap:13px;max-width:1400px;margin:0 auto 18px;display:grid}.visit-stats article{background:#fff;border:1px solid #dfebe4;border-radius:15px;align-items:center;gap:13px;padding:17px;display:flex}.visit-stats svg{color:#47875a}.visit-stats strong,.visit-stats span{display:block}.visit-stats strong{font-size:22px}.visit-stats span{color:#7c9095;margin-top:3px;font-size:12px}.teacher-checks>span{flex-wrap:wrap;gap:7px;display:flex}.teacher-checks>span>label{background:#f2f7f4;border-radius:9px;align-items:center;gap:6px;padding:8px 10px;font-size:12px;display:flex;flex-direction:row!important}.teacher-checks input{accent-color:#4a8c5d;width:auto!important}.goal-field{background:#edf7ef;border-radius:11px;padding:13px}.visit-layout{grid-template-columns:290px 1fr;align-items:start;gap:16px;max-width:1400px;margin:auto;display:grid}.visit-plan-list,.visit-detail{background:#fff;border:1px solid #dee9e4;border-radius:17px}.visit-plan-list{padding:13px;position:sticky;top:15px}.visit-plan-list h2{align-items:center;gap:8px;margin:0;padding:4px 5px 13px;font-size:16px;display:flex}.visit-plan-list h2 svg{color:#4b8a5c;width:19px}.visit-plan-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #edf2ef;border-radius:10px;align-items:center;gap:10px;width:100%;padding:12px 9px;display:flex}.visit-plan-list>button.active{background:#edf7ef}.visit-plan-list>button>span{color:#478459;background:#e8f3eb;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;font-weight:850;display:grid}.visit-plan-list button div{flex:1;min-width:0}.visit-plan-list button b,.visit-plan-list button small{display:block}.visit-plan-list button small{color:#84969a;margin-top:3px;font-size:10px}.visit-plan-list button>strong{color:#4c865d;font-size:11px}.mini-empty{text-align:center;color:#8a9b9e;padding:30px 12px;font-size:12px}.visit-detail{min-height:520px;overflow:hidden}.visit-detail-head{border-bottom:1px solid #e7eeee;justify-content:space-between;align-items:center;gap:15px;padding:22px 24px;display:flex}.visit-detail-head span{color:#819499;font-size:11px}.visit-detail-head h2{margin:4px 0}.visit-detail-head p{color:#758a8f;margin:0;font-size:12px}.visit-detail-head>div:last-child{gap:8px;display:flex}.visit-detail-head button{color:#438057;background:#e9f5ec;border:0;border-radius:9px;align-items:center;gap:6px;height:38px;padding:0 11px;font-size:12px;font-weight:750;display:flex}.visit-detail-head button svg{width:16px}.visit-detail-head .summary-button{color:#526f99;background:#eef3fa}.visit-goal{color:#fff;background:linear-gradient(135deg,#397c51,#5a966a);border-radius:13px;margin:18px 22px;padding:17px}.visit-goal p{margin:8px 0;line-height:1.7}.visit-goal small{opacity:.8}.visit-form{background:#fbfdfb;border:1px solid #d9e6df;border-radius:14px;margin:18px 22px;padding:19px}.visit-form h3{margin:0 0 17px}.lesson-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:15px;display:grid}.lesson-grid>section{background:#fff;border:1px solid #d9e6df;border-radius:12px;padding:15px}.lesson-grid>section>span{color:#477e56;background:#e8f4eb;border-radius:99px;margin-bottom:13px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-block}.lesson-grid label,.summary-form>label{flex-direction:column;gap:6px;margin-bottom:11px;font-size:12px;font-weight:750;display:flex}.lesson-grid input,.lesson-grid textarea,.summary-form input,.summary-form textarea{resize:vertical;border:1px solid #cfdddd;border-radius:9px;padding:9px 10px}.visit-outcome{margin-top:14px}.visit-save{color:#fff;background:linear-gradient(135deg,#397b50,#5a9668);border:0;border-radius:10px;width:100%;height:42px;font-weight:800}.visit-timeline{padding:2px 22px 24px}.visit-timeline>article{border-top:1px solid #e9efeb;gap:12px;padding:16px 0;display:flex}.visit-timeline>article>span{color:#49805a;background:#e8f3ea;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-weight:850;display:grid}.visit-timeline>article>div{flex:1;min-width:0}.visit-timeline article header{justify-content:space-between;gap:10px;display:flex}.visit-timeline header small{color:#809398}.visit-lessons{grid-template-columns:1fr 1fr;gap:9px;margin-top:10px;display:grid}.visit-lessons section{background:#f6f9f7;border-radius:10px;padding:11px}.visit-lessons p{color:#637a6a;margin:6px 0;font-size:12px;line-height:1.55}.visit-lessons small{color:#83958a;font-size:11px}.family-feedback{color:#896326;background:#fff7e9;border-radius:9px;padding:9px 11px;font-size:12px}.visit-placeholder{color:#819499;flex-direction:column;justify-content:center;align-items:center;min-height:500px;display:flex}.visit-placeholder svg{color:#76a582;width:48px;height:48px}.visit-placeholder h2{margin:13px 0 5px}.visit-placeholder p{margin:0;font-size:13px}@media (width<=900px){.visit-layout{grid-template-columns:1fr}.visit-plan-list{display:flex;position:static;overflow:auto}.visit-plan-list h2{align-self:center;min-width:max-content}.visit-plan-list>button{border-top:0;min-width:210px}.lesson-grid{grid-template-columns:1fr}}@media (width<=620px){.visit-stats{grid-template-columns:1fr}.visit-detail-head{flex-direction:column;align-items:flex-start}.visit-detail-head>div:last-child{width:100%}.visit-detail-head button{flex:1;justify-content:center}.visit-lessons{grid-template-columns:1fr}.visit-form,.visit-goal{margin:14px}.visit-timeline{padding-inline:14px}.visit-timeline article header{flex-direction:column}}.hero-ai-link{width:max-content;color:var(--blue);background:#fff;border:0;border-radius:12px;align-items:center;gap:8px;padding:12px 17px;font-weight:800;text-decoration:none;display:flex}.ai-page{background:#f2f6f6;grid-template-columns:270px 1fr;height:100vh;display:grid;overflow:hidden}.ai-history{background:#fff;border-right:1px solid #dfe8e8;padding:22px 15px;overflow:auto}.ai-history>a{color:#176b87;align-items:center;gap:6px;padding:6px;font-size:13px;font-weight:750;text-decoration:none;display:flex}.ai-history>a svg{width:17px}.new-chat{color:#fff;background:linear-gradient(135deg,#176b87,#2a8c82);border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;width:100%;height:42px;margin:20px 0;font-weight:800;display:flex}.ai-history h2{color:#829499;margin:6px;font-size:12px}.ai-history>button:not(.new-chat){text-align:left;background:0 0;border:0;border-radius:10px;width:100%;padding:11px}.ai-history>button.active{background:#eaf4f4}.ai-history button span,.ai-history button small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.ai-history button span{font-size:13px;font-weight:750}.ai-history button small{color:#85979b;margin-top:4px;font-size:10px}.ai-workspace{flex-direction:column;min-width:0;height:100vh;display:flex}.ai-workspace>header{background:#fff;border-bottom:1px solid #e1e9e9;justify-content:space-between;align-items:center;gap:20px;padding:22px clamp(20px,4vw,50px) 17px;display:flex}.ai-workspace header>div:first-child>span{color:#2b8178;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.ai-workspace header span svg{width:16px}.ai-workspace h1{margin:5px 0;font-size:22px}.ai-options{gap:8px;display:flex}.ai-options label{border:1px solid #d8e2e2;border-radius:9px;align-items:center;gap:6px;padding:8px 10px;font-size:11px;font-weight:750;display:flex}.ai-options input{accent-color:#2a8c82}.ai-options svg{width:15px}.ai-safety{color:#67558d;background:#f1eef9;border-radius:10px;align-items:center;gap:8px;width:min(920px,100% - 30px);margin:12px auto 0;padding:10px 13px;font-size:11px;display:flex}.ai-safety svg{flex:none;width:17px}.chat-panel{flex:1;width:min(920px,100%);margin:auto;padding:22px 15px;overflow:auto}.chat-panel article{gap:10px;margin-bottom:18px;display:flex}.chat-panel article>span{color:#176b87;background:#dfecee;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;font-size:11px;font-weight:850;display:grid}.chat-panel article>span svg{width:17px}.chat-panel article>div{white-space:pre-wrap;background:#fff;border:1px solid #dfe8e8;border-radius:5px 15px 15px;max-width:82%;padding:12px 14px;font-size:14px;line-height:1.75}.chat-panel article.user{flex-direction:row-reverse}.chat-panel article.user>span{color:#fff;background:#2a8c82}.chat-panel article.user>div{background:#e6f3ef;border-color:#cce3db;border-radius:15px 5px 15px 15px}.thinking{opacity:.72}.ai-welcome{text-align:center;color:#778d92;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.ai-welcome>svg{color:#2a8c82;width:46px;height:46px}.ai-welcome h2{color:#315d66;margin:13px 0 6px}.ai-welcome p{max-width:590px;margin:0;font-size:13px;line-height:1.7}.ai-welcome>div{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;display:grid}.ai-welcome button{color:#557078;background:#fff;border:1px solid #d8e4e4;border-radius:10px;padding:10px 12px;font-size:12px}.ai-composer{background:#fff;border:1px solid #d9e4e4;border-radius:16px;width:min(920px,100% - 30px);margin:0 auto 18px;padding:12px;box-shadow:0 12px 30px #244c511a}.composer-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.composer-top select{color:#376771;background:#edf5f5;border:0;border-radius:8px;padding:6px 8px;font-size:11px}.record-time{color:#bd4d50;align-items:center;gap:5px;font-size:11px;display:flex}.record-time svg{width:14px}.composer-input{align-items:flex-end;gap:7px;display:flex}.composer-input textarea{resize:vertical;min-height:65px;max-height:160px;font:inherit;border:0;outline:0;flex:1;padding:8px;line-height:1.55}.composer-input button{border:0;border-radius:11px;flex:none;place-items:center;width:39px;height:39px;display:grid}.composer-input button svg{width:18px}.record-button{color:#58757c;background:#eef4f4}.record-button.recording{color:#ba4650;background:#fdeaea;animation:1.4s infinite pulse-record}.send-button{color:#fff;background:#176b87}.send-button:disabled{opacity:.45}.confirm-row{border-top:1px solid #edf1f1;justify-content:space-between;align-items:center;gap:15px;padding-top:9px;display:flex}.confirm-row span{color:#84969a;font-size:10px}.confirm-row button{color:#397c4e;background:#e9f5ed;border:0;border-radius:9px;align-items:center;gap:5px;height:34px;padding:0 11px;font-size:11px;font-weight:800;display:flex}.confirm-row button svg{width:15px}.confirm-row button:disabled{opacity:.65}@keyframes pulse-record{50%{box-shadow:0 0 0 6px #be444f1a}}@media (width<=760px){.ai-page{grid-template-columns:1fr}.ai-history{display:none}.ai-workspace>header{flex-direction:column;align-items:flex-start;padding:16px}.ai-options{width:100%}.ai-options label{flex:1;justify-content:center}.ai-workspace h1{font-size:18px}.ai-welcome>div{grid-template-columns:1fr}.confirm-row{flex-direction:column;align-items:flex-start}.confirm-row button{justify-content:center;width:100%}.ai-composer{margin-bottom:8px}.chat-panel article>div{max-width:88%}}.header-document-link{background:#fff;border:1px solid #d5e1e1;border-radius:11px;color:#176b87!important;height:44px!important;padding:0 14px!important;font-size:12px!important}.document-guide{color:#347166;background:#edf7f4;border:1px solid #cfe4dd;border-radius:14px;align-items:center;gap:11px;max-width:1400px;margin:0 auto 17px;padding:15px 18px;display:flex}.document-guide svg{flex:none}.document-guide b,.document-guide span{display:block}.document-guide span{color:#6a837e;margin-top:4px;font-size:12px}.document-layout{grid-template-columns:310px 1fr;align-items:start;gap:15px;max-width:1400px;margin:auto;display:grid}.template-list,.document-fill,.generated-history{background:#fff;border:1px solid #dde8e8;border-radius:17px}.template-list{padding:13px}.template-list h2{align-items:center;gap:7px;margin:5px 6px 14px;font-size:16px;display:flex}.template-list h2 svg{color:#176b87;width:18px}.template-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #edf1f1;border-radius:10px;align-items:center;gap:10px;width:100%;padding:12px 9px;display:flex}.template-list>button.active{background:#eaf4f4}.template-list>button>svg{color:#4d7d86;width:22px}.template-list button div{min-width:0}.template-list button b,.template-list button small{display:block}.template-list button small{color:#84969a;margin-top:4px;font-size:10px}.template-list>p,.generated-history>p{color:#84969a;text-align:center;padding:25px;font-size:12px}.document-fill{min-height:500px;padding:22px}.document-fill>header{border-bottom:1px solid #e8eeee;justify-content:space-between;align-items:flex-start;gap:15px;padding-bottom:16px;display:flex}.document-fill header span{color:#2a8c82;font-size:11px}.document-fill header h2{margin:4px 0}.document-fill header p{color:#7b9095;margin:0;font-size:12px}.document-fill header button{color:#4d727b;background:#fff;border:1px solid #d4e0e0;border-radius:9px;align-items:center;gap:5px;height:36px;font-size:11px;display:flex}.document-fill header button svg{width:15px}.document-title{flex-direction:column;gap:7px;margin:17px 0;font-size:12px;font-weight:750;display:flex}.document-title input{border:1px solid #cfdddd;border-radius:9px;height:40px;padding:0 10px}.field-replace-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-replace-list>label{background:#fbfdfd;border:1px solid #dde7e7;border-radius:12px;flex-direction:column;gap:7px;padding:13px;display:flex}.field-replace-list label>span{align-items:center;gap:8px;display:flex}.field-replace-list label b{color:#176b87;background:#e6f2f3;border-radius:7px;place-items:center;width:24px;height:24px;font-size:11px;display:grid}.field-replace-list label em{font-size:12px;font-style:normal;font-weight:750}.field-replace-list textarea{resize:vertical;border:1px solid #cfdddd;border-radius:9px;padding:9px 10px}.document-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.document-actions a,.document-actions button{border-radius:10px;align-items:center;gap:6px;height:41px;padding:0 13px;font-size:12px;font-weight:800;text-decoration:none;display:flex}.document-actions a{color:#68558e;background:#fff;border:1px solid #dbd5ea}.document-actions button{color:#fff;background:#176b87;border:0}.document-actions svg{width:16px}.document-placeholder{text-align:center;color:#819499;flex-direction:column;justify-content:center;align-items:center;min-height:450px;display:flex}.document-placeholder svg{color:#4c8792;width:48px;height:48px}.document-placeholder h2{margin:13px 0 5px}.document-placeholder p{margin:0;font-size:12px}.generated-history{max-width:1400px;margin:17px auto 0;padding:17px}.generated-history h2{margin:2px 0 12px;font-size:17px}.generated-history article{border-top:1px solid #e9eeee;align-items:center;gap:10px;padding:11px 3px;display:flex}.generated-history article>svg{color:#557d85}.generated-history article div{flex:1}.generated-history b,.generated-history small{display:block}.generated-history small{color:#84969a;margin-top:4px;font-size:10px}.generated-history button{color:#32737e;background:#eaf4f4;border:0;border-radius:8px;align-items:center;gap:4px;padding:7px 9px;font-size:11px;display:flex}.generated-history button svg{width:14px}.field-preview{background:#fff;border-radius:20px;width:min(700px,100%);max-height:90vh;overflow:auto}.field-preview>header{border-bottom:1px solid #e8eeee;justify-content:space-between;padding:20px 22px;display:flex}.field-preview h2{margin:0 0 4px}.field-preview header p{color:#819499;margin:0;font-size:12px}.field-preview header button{background:#edf2f2;border:0;border-radius:9px;width:34px;height:34px}.field-preview>div{padding:12px 22px}.field-preview>div>section{border-bottom:1px solid #edf1f1;grid-template-columns:150px 1fr;gap:12px;padding:11px 0;display:grid}.field-preview section b{color:#176b87}.field-preview section p{white-space:pre-wrap;margin:0;line-height:1.55}.field-preview footer{justify-content:flex-end;gap:8px;padding:16px 22px;display:flex}.field-preview footer button{border-radius:9px;height:40px;padding:0 13px;font-weight:750}@media (width<=850px){.document-layout{grid-template-columns:1fr}.template-list{display:flex;overflow:auto}.template-list h2{align-self:center;min-width:max-content}.template-list>button{border-top:0;min-width:220px}}@media (width<=620px){.field-replace-list{grid-template-columns:1fr}.document-fill{padding:15px}.document-fill>header,.document-actions{flex-direction:column}.document-actions a,.document-actions button{justify-content:center}.field-preview>div>section{grid-template-columns:1fr;gap:5px}}.parent-page{background:#f3f7f6;min-height:100vh}.parent-header{background:#fff;border-bottom:1px solid #e0e9e6;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(18px,5vw,70px);display:flex}.parent-brand{color:#25756a;align-items:center;gap:10px;display:flex}.parent-brand>svg{width:29px;height:29px}.parent-brand b,.parent-brand span{display:block}.parent-brand span{color:#839590;margin-top:2px;font-size:10px}.parent-header>div:last-child{color:#627a75;align-items:center;gap:13px;font-size:13px;display:flex}.parent-header button{color:#607a75;background:#f0f5f3;border:0;border-radius:9px;align-items:center;gap:5px;padding:8px 10px;display:flex}.parent-header button svg{width:15px}.parent-content{max-width:1150px;margin:auto;padding:26px 18px 60px}.parent-welcome{color:#fff;background:radial-gradient(circle at 88% 15%,#ffffff3b,#0000 26%),linear-gradient(135deg,#2d7b70,#5a9b76);border-radius:22px;min-height:180px;padding:30px 34px;position:relative;overflow:hidden}.parent-welcome>div{z-index:2;position:relative}.parent-welcome span{opacity:.8;font-size:12px}.parent-welcome h1{margin:9px 0;font-size:29px}.parent-welcome p{opacity:.8;max-width:650px;margin:0;font-size:13px;line-height:1.7}.parent-welcome>svg{opacity:.12;width:90px;height:90px;position:absolute;top:50%;right:8%;translate:0 -50%}.parent-welcome>select{color:#fff;background:#ffffff24;border:1px solid #ffffff4d;border-radius:9px;padding:7px;position:absolute;top:20px;right:25px}.parent-tabs{gap:9px;margin:17px 0;display:flex}.parent-tabs button{color:#647e78;background:#fff;border:1px solid #d9e4e0;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:7px;height:42px;font-weight:750;display:flex}.parent-tabs button svg{width:17px}.parent-tabs button.active{color:#fff;background:#2d7b70;border-color:#2d7b70}.parent-grid{grid-template-columns:1fr 1fr;align-items:start;gap:15px;display:grid}.parent-card{background:#fff;border:1px solid #dfe9e5;border-radius:16px;padding:18px}.parent-card>h2{align-items:center;gap:8px;margin:0 0 14px;font-size:17px;display:flex}.parent-card>h2 svg{color:#2d7b70;width:19px}.parent-record{border-top:1px solid #edf2f0;align-items:flex-start;gap:10px;padding:12px 2px;display:flex}.record-icon{color:#2d7b70;background:#eaf5f1;border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.record-icon svg{width:17px}.parent-record>div{min-width:0}.parent-record b{font-size:13px}.parent-record p{color:#607a74;margin:4px 0;font-size:12px;line-height:1.55}.parent-record small{color:#899b97;font-size:10px}.parent-empty{color:#899b97;text-align:center;padding:40px!important}.parent-medications{grid-template-columns:1fr 1fr;gap:15px;display:grid}.parent-medications .parent-card>header{align-items:center;gap:10px;display:flex}.parent-medications header>svg{color:#bc5360}.parent-medications h2{margin:0 0 4px}.parent-medications header p{color:#718882;margin:0;font-size:12px}.parent-instruction{color:#806b40;background:#f7f4ed;border-radius:9px;margin:14px 0;padding:11px;font-size:12px}.parent-medications h3{margin-top:18px;font-size:13px}.med-parent-status{color:#438057;background:#e8f5ec;border-radius:7px;flex:none;padding:5px 7px;font-size:10px;font-weight:800}.med-parent-status.missed,.med-parent-status.refused,.med-parent-status.abnormal_reaction{color:#ad5038;background:#ffede7}.parent-support{max-width:850px;margin:auto}.parent-boundary{color:#67558b;background:#f0edf8;border-radius:11px;align-items:center;gap:9px;margin-bottom:12px;padding:13px;font-size:12px;display:flex}.parent-boundary svg{flex:none;width:18px}.parent-support>.parent-card{gap:13px;margin-bottom:11px;display:flex}.support-date{color:#68558e;background:#eeeaf7;border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;width:49px;height:54px;display:flex}.support-date strong{font-size:19px}.support-date span{font-size:9px}.parent-support article>div:last-child{flex:1}.support-status{float:right;color:#3e7f51;background:#e9f5ed;border-radius:99px;padding:4px 7px;font-size:9px;font-weight:800}.parent-support h2{margin:2px 0 7px;font-size:16px}.parent-support p{color:#607871;margin:0 0 7px;font-size:12px;line-height:1.65}.parent-support small{color:#899a96;font-size:10px}@media (width<=700px){.parent-grid,.parent-medications{grid-template-columns:1fr}.parent-welcome{padding:26px 22px}.parent-welcome h1{font-size:24px}.parent-welcome>svg{display:none}.parent-tabs{overflow:auto}.parent-tabs button{min-width:120px}.parent-header>div:last-child>span{display:none}}.dashboard-all-link{color:var(--blue);background:0 0;border:0;align-items:center;gap:7px;font-weight:700;text-decoration:none;display:flex}.analytics-kpis{grid-template-columns:repeat(4,1fr);gap:13px;max-width:1400px;margin:0 auto 16px;display:grid}.analytics-kpis article{background:#fff;border:1px solid #dfe9e9;border-radius:15px;align-items:center;gap:13px;padding:18px;display:flex}.analytics-kpis article>svg{color:#176b87;width:26px}.analytics-kpis span,.analytics-kpis strong,.analytics-kpis small{display:block}.analytics-kpis span{color:#758a90;font-size:11px}.analytics-kpis strong{color:#203f47;margin:5px 0 3px;font-size:24px}.analytics-kpis small{color:#899a9e}.analytics-grid{grid-template-columns:1.25fr .75fr;gap:14px;max-width:1400px;margin:auto;display:grid}.analytics-card{background:#fff;border:1px solid #dfe9e9;border-radius:16px;padding:20px}.analytics-card h2{align-items:center;gap:8px;margin:0 0 18px;font-size:17px;display:flex}.analytics-card h2 svg{color:#2a8c82;width:19px}.analytics-bar{grid-template-columns:100px 1fr 30px;align-items:center;gap:9px;margin:12px 0;font-size:11px;display:grid}.analytics-bar>div{background:#edf2f2;border-radius:99px;height:9px;overflow:hidden}.analytics-bar i{background:linear-gradient(90deg,#e99a45,#d56f48);border-radius:99px;height:100%;display:block}.analytics-bar b{text-align:right}.analytics-empty{text-align:center;color:#85979b;padding:55px}.attendance-ring{--rate:0%;background:conic-gradient(#2a8c82 var(--rate),#e7efef 0);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:160px;height:160px;margin:10px auto;display:flex;position:relative}.attendance-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:15px}.attendance-ring strong,.attendance-ring span{z-index:1;position:relative}.attendance-ring strong{font-size:25px}.attendance-ring span{color:#7f9297;margin-top:4px;font-size:10px}.analytics-card>p{text-align:center;color:#71868b;font-size:12px}.work-metrics>div{grid-template-columns:repeat(4,1fr);gap:9px;display:grid}.work-metrics span{text-align:center;background:#f2f7f6;border-radius:11px;padding:17px 10px}.work-metrics span svg{color:#2a8c82;width:20px}.work-metrics b,.work-metrics small{display:block}.work-metrics b{margin:6px 0;font-size:22px}.work-metrics small{color:#7d9297;font-size:10px}.warning-metrics{text-align:center;background:#fff9ed;flex-direction:column;justify-content:center;display:flex}.warning-metrics strong{color:#c7782c;font-size:54px}.warning-metrics p{color:#856c4d;max-width:390px;margin:8px auto;line-height:1.7}.analytics-time{max-width:1400px;text-align:right!important;color:#8a9a9e!important;margin:13px auto!important;font-size:10px!important}@media (width<=900px){.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-grid{grid-template-columns:1fr}}@media (width<=570px){.analytics-kpis{grid-template-columns:1fr}.work-metrics>div{grid-template-columns:1fr 1fr}}.identity-update{border-top:1px solid #edf2f2;flex-direction:column;gap:9px;margin-top:15px;padding-top:15px;display:flex}.identity-update b{color:#45636a;font-size:13px}.identity-update input{color:#45636a;background:#fff;border:1px solid #cfdddd;border-radius:10px;outline:0;padding:9px 11px}.identity-update button{justify-content:center;padding:10px}.identity-update button:disabled{opacity:.5}.basics-editor>p{margin:-8px 0 14px;line-height:1.6}.basics-editor form{flex-direction:column;gap:10px;display:flex}.basics-editor label{flex-direction:column;gap:5px;display:flex}.basics-editor label span{color:#60777d;font-size:12px;font-weight:750}.basics-editor input,.basics-editor select{color:#45636a;background:#fff;border:1px solid #cfdddd;border-radius:10px;outline:0;padding:9px 11px}.basics-editor button{justify-content:center;margin-top:3px;padding:10px}.role-fieldset{border:1px solid #d7e3e3;border-radius:13px;padding:13px}.role-fieldset legend{padding:0 6px;font-size:13px;font-weight:800}.role-fieldset label,.staff-role-list label{flex-direction:row;align-items:center;gap:6px;margin:4px 12px 4px 0;font-size:12px;display:inline-flex}.role-fieldset input,.staff-role-list input{accent-color:#2a8c82}.staff-upload{color:#426168;cursor:pointer;background:#fff;border:1px solid #d2dfdf;border-radius:11px;align-items:center;gap:7px;padding:10px 14px;font-weight:750;display:inline-flex}.staff-upload svg{width:18px}.staff-summary{grid-template-columns:repeat(3,1fr);gap:12px;max-width:1400px;margin:18px auto;display:grid}.staff-summary article{background:#fff;border:1px solid #e0e9e9;border-radius:15px;align-items:center;gap:14px;padding:17px;display:flex}.staff-summary svg{color:#2a8c82}.staff-summary strong,.staff-summary span{display:block}.staff-summary strong{font-size:24px}.staff-summary span{color:#7b9095;font-size:12px}.staff-grid{grid-template-columns:repeat(2,1fr);gap:15px;max-width:1400px;margin:auto;display:grid}.staff-card{background:#fff;border:1px solid #e0e9e9;border-radius:17px;padding:18px}.staff-card.disabled{opacity:.66}.staff-card>header{border-bottom:1px solid #edf2f2;align-items:center;gap:11px;padding-bottom:13px;display:flex}.staff-card header h2,.staff-card header p{margin:0}.staff-card header p{color:#819499;font-size:12px}.staff-card header>span{color:#3e8153;background:#eaf7ee;border-radius:99px;margin-left:auto;padding:4px 8px;font-size:11px}.staff-avatar{color:#fff;background:linear-gradient(135deg,#367ab1,#2a8c82);border-radius:12px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.staff-role-list{padding:13px 0}.staff-actions{flex-wrap:wrap;gap:8px;display:flex}.staff-actions button{color:#426168;background:#fff;border:1px solid #d2dfdf;border-radius:9px;align-items:center;gap:5px;padding:8px 10px;display:flex}.staff-actions button svg{width:15px}.staff-actions .danger{color:#a84c4c;border-color:#ebcccc}.staff-card footer{color:#899a9e;margin-top:12px;font-size:11px}@media (width<=760px){.staff-grid,.staff-summary{grid-template-columns:1fr}}.assessment-page{max-width:1450px;margin:auto}.assessment-basics{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.assessment-basics label,.assessment-text{flex-direction:column;gap:7px;font-size:13px;font-weight:750;display:flex}.assessment-basics input,.assessment-basics select,.assessment-text textarea,.assessment-toolbar select{font:inherit;background:#fff;border:1px solid #cfdddd;border-radius:10px;padding:10px}.score-editor{grid-template-columns:1fr 1fr;gap:10px 20px;margin:20px 0;display:grid}.score-editor label{background:#fbfdfd;border:1px solid #e0e9e9;border-radius:12px;padding:12px}.score-editor label span{justify-content:space-between;display:flex}.score-editor em{color:#2a8c82;font-size:12px;font-style:normal}.score-editor input{accent-color:#2a8c82;width:100%}.assessment-toolbar{background:#fff;border:1px solid #dfe9e9;border-radius:14px;align-items:center;gap:20px;margin:17px 0;padding:13px 16px;display:flex}.assessment-toolbar label{align-items:center;gap:8px;font-weight:750;display:flex}.assessment-toolbar>div{gap:7px;display:flex;overflow:auto}.assessment-toolbar button{white-space:nowrap;color:#657e84;background:#fff;border:1px solid #d6e2e2;border-radius:9px;padding:8px 11px}.assessment-toolbar button.active{color:#fff;background:#176b87;border-color:#176b87}.assessment-layout{grid-template-columns:1.05fr .95fr;gap:16px;display:grid}.assessment-chart,.assessment-analysis{background:#fff;border:1px solid #dfe9e9;border-radius:18px;padding:21px}.assessment-chart>header,.assessment-analysis>header{border-bottom:1px solid #edf1f1;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:14px;display:flex}.assessment-chart h2,.assessment-analysis h2{margin:4px 0 0}.assessment-chart header span,.assessment-analysis header span{color:#2a8c82;font-size:11px;font-weight:800}.assessment-chart header>b{color:#3c8054;align-items:center;gap:5px;font-size:11px;display:flex}.assessment-chart header svg{width:16px}.assessment-chart article{grid-template-columns:88px 1fr 24px 70px;align-items:center;gap:9px;margin:15px 0;font-size:12px;display:grid}.assessment-chart article>div{background:#edf2f2;border-radius:99px;height:11px;overflow:hidden}.assessment-chart article i{background:linear-gradient(90deg,#23738a,#2a9a82);border-radius:99px;height:100%;display:block}.assessment-chart article em{color:#829499;font-size:10px;font-style:normal}.assessment-chart article em.up{color:#318057}.assessment-chart article em.down{color:#b26643}.assessment-chart footer{color:#7b8f94;border-top:1px solid #edf1f1;gap:7px;padding-top:14px;font-size:11px;line-height:1.6;display:flex}.assessment-chart footer svg{flex:none;width:17px}.assessment-analysis>header>svg{color:#7658ad}.assessment-options{align-items:center;gap:8px;margin-bottom:10px;display:flex}.assessment-options label{color:#607980;align-items:center;gap:5px;font-size:11px;display:flex}.assessment-options input{accent-color:#2a8c82}.assessment-options button,.confirm-assessment{color:#fff;background:#66509a;border:0;border-radius:9px;margin-left:auto;padding:9px 11px;font-weight:750}.assessment-analysis textarea{resize:vertical;width:100%;font:inherit;border:1px solid #cfdddd;border-radius:11px;padding:12px;line-height:1.7}.confirm-assessment{background:#2a8c82;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:10px;display:flex}.confirm-assessment:disabled,.assessment-options button:disabled{opacity:.5}.confirm-assessment svg{width:17px}@media (width<=850px){.assessment-layout,.assessment-basics,.score-editor{grid-template-columns:1fr}.assessment-toolbar{flex-direction:column;align-items:flex-start}.assessment-chart article{grid-template-columns:75px 1fr 20px}.assessment-chart article em{grid-column:2/5}}.classroom-work-page{max-width:1450px;margin:auto}.student-picker{border:1px solid #d4e1e1;border-radius:12px;padding:13px}.student-picker legend{font-weight:800}.student-picker>button{color:#176b87;background:#eaf4f4;border:0;border-radius:8px;padding:7px 10px}.student-picker>div{flex-wrap:wrap;gap:8px 18px;margin-top:11px;display:flex}.student-picker label{align-items:center;gap:6px;flex-direction:row!important;display:flex!important}.classroom-layout{grid-template-columns:300px 1fr;align-items:start;gap:15px;display:grid}.work-list,.completion-panel{background:#fff;border:1px solid #dfe9e9;border-radius:17px}.work-list{padding:13px}.work-list h2{align-items:center;gap:7px;margin:5px 7px 13px;font-size:17px;display:flex}.work-list h2 svg{color:#2a8c82;width:19px}.work-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #edf2f2;border-radius:10px;width:100%;padding:12px;display:block}.work-list>button.active{background:#eaf4f4}.work-list b,.work-list span,.work-list small{display:block}.work-list span{color:#667f85;margin:5px 0;font-size:11px}.work-list small{color:#8b9ca0;font-size:10px}.work-list>p{text-align:center;color:#85989c;padding:30px 10px}.completion-panel{min-height:420px;padding:20px}.completion-panel>header{border-bottom:1px solid #e9efef;justify-content:space-between;gap:16px;padding-bottom:15px;display:flex}.completion-panel header span{color:#2a8c82;font-size:11px;font-weight:800}.completion-panel header h2{margin:5px 0}.completion-panel header p{color:#72878c;margin:0;font-size:12px}.completion-panel header>svg{color:#2a8c82}.completion-head,.completion-row{grid-template-columns:90px 130px 130px 1fr;align-items:center;gap:9px;display:grid}.completion-head{color:#71878c;padding:14px 8px 8px;font-size:11px}.completion-row{border-top:1px solid #edf2f2;padding:9px 8px}.completion-row strong{font-size:13px}.completion-row select,.completion-row input{min-width:0;font:inherit;background:#fff;border:1px solid #cfdddd;border-radius:9px;padding:8px;font-size:12px}.save-completions{color:#fff;background:#176b87;border:0;border-radius:10px;margin:16px 0 0 auto;padding:11px 16px;font-weight:800;display:block}.save-completions:disabled{opacity:.5}@media (width<=850px){.classroom-layout{grid-template-columns:1fr}.work-list{display:flex;overflow:auto}.work-list h2{min-width:max-content}.work-list>button{border-top:0;min-width:210px}.completion-head{display:none}.completion-row{grid-template-columns:75px 1fr}.completion-row input{grid-column:1/3}}.term-documents-page{max-width:1500px;margin:auto}.document-create-options{gap:18px;display:flex}.document-create-options label{align-items:center;gap:6px;flex-direction:row!important;display:flex!important}.term-document-layout{grid-template-columns:330px 1fr;align-items:start;gap:16px;display:grid}.term-document-list,.term-editor{background:#fff;border:1px solid #dfe9e9;border-radius:18px}.term-document-list{padding:14px}.term-document-list>h2{align-items:center;gap:8px;margin:5px 7px 13px;font-size:18px;display:flex}.term-document-list>h2 svg{color:#2a8c82;width:20px}.term-type-counts{grid-template-columns:1fr;gap:5px;margin-bottom:10px;display:grid}.term-type-counts span{color:#607b81;background:#f3f7f7;border-radius:8px;justify-content:space-between;padding:7px 9px;font-size:11px;display:flex}.term-type-counts b{color:#176b87}.term-document-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #edf2f2;border-radius:11px;width:100%;padding:13px;display:block}.term-document-list>button.active{background:#e9f4f4}.term-document-list button span,.term-document-list button b,.term-document-list button small{display:block}.term-document-list button span{color:#2a8c82;font-size:10px}.term-document-list button b{margin:5px 0}.term-document-list button small{color:#84969a}.term-editor{min-height:660px;padding:22px}.term-editor>header{border-bottom:1px solid #e9efef;justify-content:space-between;align-items:flex-start;padding-bottom:15px;display:flex}.term-editor>header span{color:#2a8c82;font-size:11px;font-weight:800}.term-editor>header h2{margin:5px 0}.term-editor>header small{color:#7c9095}.term-editor>header>div:last-child{align-items:center;gap:8px;display:flex}.term-editor>header b{color:#3c8054;align-items:center;gap:5px;font-size:11px;display:flex}.term-editor>header button{color:#456c75;background:#fff;border:1px solid #d4e0e0;border-radius:9px;align-items:center;gap:5px;padding:8px 10px;display:flex}.term-editor svg{width:17px}.term-content{resize:vertical;color:#233f46;border:1px solid #cfdede;border-radius:12px;width:100%;min-height:470px;margin:15px 0 9px;padding:18px;font:15px/1.85 PingFang SC,Microsoft YaHei,sans-serif}.term-save-row{justify-content:flex-end;align-items:center;gap:8px;display:flex}.term-save-row span{color:#819499;margin-right:auto;font-size:11px}.term-save-row button{color:#176b87;background:#e9f3f3;border:0;border-radius:9px;align-items:center;gap:5px;padding:9px 11px;font-weight:750;display:flex}.term-save-row button.confirm{color:#fff;background:#2a8c82}.revision-chat{background:#faf9fd;border:1px solid #ddd7ec;border-radius:14px;margin-top:18px;padding:16px}.revision-chat>header{align-items:center;gap:9px;display:flex}.revision-chat>header>svg{color:#70589e}.revision-chat header b,.revision-chat header span{display:block}.revision-chat header span{color:#847b98;margin-top:3px;font-size:10px}.revision-chat textarea{resize:vertical;width:100%;font:inherit;border:1px solid #d9d3e6;border-radius:10px;margin:11px 0;padding:11px}.revision-chat footer{align-items:center;gap:12px;display:flex}.revision-chat footer label{color:#766e85;align-items:center;gap:5px;font-size:11px;display:flex}.revision-chat footer button{color:#fff;background:#6b5599;border:0;border-radius:9px;align-items:center;gap:5px;margin-left:auto;padding:9px 12px;font-weight:750;display:flex}.revision-history{border-top:1px solid #e8eeee;margin-top:13px;padding-top:13px}.revision-history summary{color:#55747b;cursor:pointer;align-items:center;gap:7px;font-weight:750;display:flex}.revision-history>div{border-bottom:1px solid #edf1f1;gap:12px;padding:9px;font-size:11px;display:flex}.revision-history>div b{color:#70858a;min-width:145px}.revision-history>div span{color:#4d676d}@media (width<=900px){.term-document-layout{grid-template-columns:1fr}.term-document-list{display:flex;overflow:auto}.term-document-list>h2,.term-type-counts{min-width:210px}.term-document-list>button{border-top:0;min-width:230px}.term-save-row{flex-wrap:wrap}.term-save-row span{width:100%}}@media (width<=600px){.term-editor{padding:14px}.term-editor>header{flex-direction:column;gap:10px}.revision-chat footer{flex-wrap:wrap}.revision-chat footer button{justify-content:center;width:100%}.term-save-row button{flex:1;justify-content:center}}.dashboard-heading-actions{gap:15px;display:flex}.reports-page{max-width:1500px;margin:auto}.report-schedules{background:#fff;border:1px solid #dfe9e9;border-radius:17px;margin:16px 0;padding:18px}.report-schedules>header{align-items:center;gap:10px;display:flex}.report-schedules h2,.report-schedules p{margin:0}.report-schedules p{color:#7b9095;margin-top:4px;font-size:11px}.report-schedules>header svg{color:#2a8c82}.report-schedules>div{grid-template-columns:1fr 1fr;gap:9px;margin-top:14px;display:grid}.report-schedules form{border:1px solid #e0e9e9;border-radius:11px;align-items:center;gap:10px;padding:11px;display:flex}.report-schedules form>b{margin-right:auto}.report-schedules label{align-items:center;gap:4px;font-size:11px;display:flex}.report-schedules input[type=number]{border:1px solid #d1dede;border-radius:7px;width:56px;padding:6px}.report-schedules button{color:#fff;background:#176b87;border:0;border-radius:8px;padding:7px 9px}.reports-layout{grid-template-columns:330px 1fr;align-items:start;gap:16px;display:grid}.report-list,.report-editor{background:#fff;border:1px solid #dfe9e9;border-radius:18px}.report-list{padding:14px}.report-list>h2{align-items:center;gap:7px;margin:5px 7px 12px;display:flex}.report-list>h2 svg{color:#2a8c82}.report-type-summary{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:10px;display:grid}.report-type-summary span{color:#6c8389;background:#f2f7f7;border-radius:9px;padding:9px;font-size:10px}.report-type-summary b{color:#176b87;font-size:17px;display:block}.report-list>button{text-align:left;background:#fff;border:0;border-top:1px solid #edf2f2;border-radius:10px;width:100%;padding:12px;display:block}.report-list>button.active{background:#e8f4f4}.report-list button span,.report-list button b,.report-list button small{display:block}.report-list button span{color:#2a8c82;font-size:10px}.report-list button b{margin:5px 0;line-height:1.45}.report-list button small{color:#87999d}.report-editor{min-height:650px;padding:22px}.report-editor>header{border-bottom:1px solid #e9efef;justify-content:space-between;padding-bottom:14px;display:flex}.report-editor>header span{color:#2a8c82;font-size:11px;font-weight:800}.report-editor>header h2{margin:5px 0}.report-editor>header small{color:#7a8f94}.report-editor>header>b{color:#398050;align-items:center;gap:5px;font-size:11px;display:flex}.report-editor>header svg{width:16px}.report-editor>textarea{resize:vertical;border:1px solid #cfdede;border-radius:12px;width:100%;min-height:450px;margin:15px 0 9px;padding:18px;font:15px/1.85 PingFang SC,Microsoft YaHei,sans-serif}.report-actions{justify-content:flex-end;gap:8px;display:flex}.report-actions button{color:#176b87;background:#e9f3f3;border:0;border-radius:9px;align-items:center;gap:5px;padding:9px 12px;font-weight:750;display:flex}.report-actions button:last-child{color:#fff;background:#2a8c82}.report-actions svg{width:16px}@media (width<=900px){.reports-layout{grid-template-columns:1fr}.report-list{display:flex;overflow:auto}.report-list>h2,.report-type-summary{min-width:180px}.report-list>button{border-top:0;min-width:235px}.report-schedules>div{grid-template-columns:1fr}}@media (width<=650px){.dashboard-heading-actions{flex-direction:column;gap:5px}.report-schedules form{flex-wrap:wrap;align-items:flex-start}.report-schedules form>b{width:100%}.report-editor{padding:14px}}.page-header,.record-header{align-items:flex-start}.page-actions,.header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;max-width:min(760px,62%);display:flex}.page-actions>a,.page-actions>button,.header-actions>a,.header-actions>button{white-space:nowrap;word-break:keep-all;border-radius:11px;flex:none;justify-content:center;align-items:center;gap:7px;min-width:max-content;height:42px;padding:0 14px;font-size:14px;font-weight:750;line-height:1.2;display:inline-flex}.page-actions>a,.header-actions>a{color:#176b87;background:#fff;border:1px solid #cadada;text-decoration:none}.header-actions>a svg,.page-actions>a svg{flex:none;width:17px;height:17px}.section-heading{flex-wrap:wrap;align-items:flex-start;gap:18px}.section-heading>div:first-child{flex:1;min-width:210px}.dashboard-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px 15px;display:flex}.dashboard-heading-actions>a{white-space:nowrap;word-break:keep-all;align-items:center;gap:6px;display:inline-flex}.sidebar a,.sidebar nav a,.school-label,.dashboard-heading-actions a,.section-heading a{text-decoration:none!important}.dashboard-heading-actions>a{color:#176b87;background:#fff;border:1px solid #d9e5e6;border-radius:9px;padding:7px 10px}@media (width<=1180px){.page-header,.record-header{flex-direction:column}.page-actions,.header-actions{justify-content:flex-start;width:100%;max-width:100%}.table-toolbar{flex-direction:column;align-items:stretch;gap:12px}.table-toolbar>div{flex-wrap:wrap;min-width:0;display:flex}.table-toolbar>div>b{white-space:nowrap;word-break:keep-all}.table-toolbar form{width:100%;max-width:none}.table-toolbar select{flex:none;min-width:128px}.timetable-toolbar{flex-direction:column;align-items:stretch}.timetable-toolbar>span{white-space:nowrap;margin-left:0}.timetable-toolbar select,.timetable-toolbar input{width:100%;min-width:0}}@media (width<=980px) and (width>=801px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding:22px 12px}.logo-mini{justify-content:flex-start;padding-inline:8px}.logo-mini span{font-size:13px;display:inline}.sidebar nav a,.sidebar nav a:not(.active),.sidebar nav a.active{white-space:nowrap;word-break:keep-all;justify-content:flex-start;padding:12px 10px;font-size:13px}.sidebar nav a svg{flex:none}}@media (width<=800px) and (width>=641px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding:20px 10px}.logo-mini span,.sidebar nav a,.sidebar nav a:not(.active),.sidebar nav a.active{font-size:0}.logo-mini,.sidebar nav a{justify-content:center;padding-inline:0}.sidebar nav a svg{flex:none}.school-label{display:none}}@media (width<=680px){.page-actions,.header-actions{grid-template-columns:1fr 1fr;display:grid}.page-actions>a,.page-actions>button,.header-actions>a,.header-actions>button{width:100%;min-width:0;height:auto;min-height:42px;padding:9px 10px}.dashboard-heading-actions{justify-content:flex-start}}@media (width<=420px){.page-actions,.header-actions{grid-template-columns:1fr}}.dashboard-work-grid,.dashboard-planning-grid{width:100%;min-width:0}.dashboard-planning-grid{grid-template-columns:minmax(0,1fr)}.dashboard-todos,.dashboard-timetable,.dashboard-calendar{width:100%;min-width:0}.mobile-nav-trigger,.mobile-nav-close,.mobile-nav-backdrop,.mobile-quick-trigger,.mobile-quick-backdrop,.mobile-quick-menu{display:none}.settings-links{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.settings-links>a{color:#24464f;background:#fff;border:1px solid #dfe9e9;border-radius:18px;align-items:center;gap:14px;padding:22px;text-decoration:none;display:flex;box-shadow:0 9px 24px #1f4c520f}.settings-links svg{color:#238b81}.settings-links h2,.settings-links p{margin:0}.settings-links p{color:#7a9095;margin-top:5px}.profile-card{background:#fff;border:1px solid #dfe9e9;border-radius:20px;max-width:720px;padding:26px}.profile-card form{gap:16px;display:grid}.profile-card label{gap:7px;font-weight:750;display:grid}.profile-card input{border:1px solid #cfdddd;border-radius:11px;height:46px;padding:0 13px}.profile-card form>button,.logout-action{color:#fff;background:#176b87;border:0;border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:12px 16px;font-weight:800;display:inline-flex}.profile-card footer{border-top:1px solid #edf2f2;justify-content:space-between;align-items:center;margin-top:24px;padding-top:18px;display:flex}.logout-action{background:#a74b4b}.success-text{color:#36805b}.dashboard-ai-entry{color:#194a58;background:linear-gradient(110deg,#fff,#edf8f7);border:1px solid #d9e7e7;border-radius:17px;align-items:center;gap:14px;margin:0 0 15px;padding:16px 19px;text-decoration:none;display:flex;box-shadow:0 10px 25px #1f5b6014}.dashboard-ai-entry>svg:first-child{color:#238b81;background:#dff2ef;border-radius:10px;width:34px;height:34px;padding:7px}.dashboard-ai-entry div{flex:1}.dashboard-ai-entry b,.dashboard-ai-entry span{display:block}.dashboard-ai-entry span{color:#6e858b;margin-top:3px;font-size:13px}.dashboard-ai-entry>svg:last-child{width:18px}.dashboard-todos>form{grid-template-columns:minmax(180px,1fr) 145px 145px auto!important}.dashboard-todos form select{background:#fff;border:1px solid #cfdddd;border-radius:10px;padding:10px}.dashboard-todos label span small{color:#2a8c82}.dashboard-todos form .todo-assignees{margin:0;position:relative}.dashboard-todos form .todo-assignees>summary{color:#284d56;white-space:nowrap;background:#fff;border:1px solid #cfdddd;border-radius:10px;align-items:center;height:100%;min-height:42px;padding:9px 12px;font-weight:700;display:flex}.dashboard-todos form .todo-assignees>div{z-index:30;background:#fff;border:1px solid #d4e1e1;border-radius:12px;grid-template-columns:1fr 1fr;gap:5px;width:260px;max-height:280px;padding:10px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 14px 34px #1f4c522e}.dashboard-todos form .todo-assignees label{color:#31525a;background:#f5f9f9;border:0;border-radius:8px;flex-direction:row;align-items:center;gap:7px;margin:0;padding:8px;font-size:12px;display:flex}.dashboard-todos form .todo-assignees label input{accent-color:#238b81;width:16px;min-width:16px;height:16px;padding:0}.schedule-matrix .today-column{box-shadow:inset 3px 0 #24998c,inset -3px 0 #24998c;background:#e7f6f3!important}.schedule-matrix>b.today-column{color:#176b87}.schedule-matrix>b small{color:#24998c;margin-top:2px;font-size:9px;display:block}.mini-month>button{text-align:left;min-height:92px;color:inherit;background:#fafcfc;border:1px solid #e4ebeb;border-radius:9px;flex-direction:column;align-items:flex-start;padding:8px;display:flex;position:relative}.mini-month>button strong{align-self:flex-end;font-size:12px}.mini-month>button em{color:#347665;background:#e7f4ef;border-radius:99px;padding:2px 6px;font-size:10px;font-style:normal}.mini-month>button.rest-day>em{color:#778589;background:#f0f2f3}.mini-month>button.has-duty>em{color:#91671d;background:#fff0d2}.mini-month>button small{color:#91671d;margin-top:5px;font-size:10px}.mini-month>button i{color:#5265a7;white-space:nowrap;text-overflow:ellipsis;background:#e8edff;border-radius:5px;max-width:100%;margin-top:4px;padding:2px 5px;font-size:10px;font-style:normal;display:block;overflow:hidden}.mini-month>button.today{outline:2px solid #176b87}.mini-month>button.today>strong{color:#176b87}.day-detail-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14353d75;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.day-detail-dialog{background:#fff;border-radius:20px;width:min(560px,96vw);padding:22px;box-shadow:0 24px 70px #102f3950}.day-detail-dialog header{justify-content:space-between;display:flex}.day-detail-dialog h2,.day-detail-dialog p{margin:0}.day-detail-dialog header p{color:#789096;margin-top:4px}.day-detail-dialog header button{background:#edf4f4;border:0;border-radius:9px}.day-detail-dialog>div{background:#f7fafa;border-radius:13px;margin-top:18px;padding:15px}.day-detail-dialog h3{margin:0 0 9px}.day-detail-dialog div a,.day-detail-dialog div p{color:#41636b;margin:7px 0;display:block}.day-detail-dialog footer{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.day-detail-dialog footer a{color:#176b87;background:#e9f4f4;border-radius:9px;padding:9px 12px;font-weight:750;text-decoration:none}.dashboard-link-stats>a{color:inherit;background:#fff;border:1px solid #e2ebeb;border-radius:17px;padding:20px;text-decoration:none;display:block}.dashboard-link-stats>a:hover{translate:0 -2px;box-shadow:0 10px 24px #1f4c5217}.dashboard-link-stats span,.dashboard-link-stats small{color:#7e9297;display:block}.dashboard-link-stats strong{margin:9px 0 4px;font-size:28px;display:block}.dashboard-link-stats small{font-size:12px}@media (width<=640px){.mobile-nav-trigger{color:#176b87;background:#fff;border:1px solid #dbe5e5;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.topbar{align-items:flex-start;gap:10px}.topbar>div:first-of-type{flex:1}.top-actions{gap:6px;position:relative}.top-actions .icon-link{display:none}.mobile-quick-trigger{flex:none;place-items:center;color:#176b87!important;background:#fff!important;border:1px solid #dbe5e5!important;border-radius:13px!important;width:42px!important;height:42px!important;display:grid!important}.mobile-quick-menu{z-index:1200;background:#fff;border:1px solid #d9e5e5;border-radius:14px;width:176px;padding:8px;display:grid;position:absolute;top:50px;right:0;box-shadow:0 18px 45px #173f4a2e}.mobile-quick-menu a{color:#244a53;border-radius:9px;align-items:center;gap:10px;padding:11px 12px;font-weight:750;text-decoration:none;display:flex}.mobile-quick-menu a:active,.mobile-quick-menu a.active{color:#087a72;background:#e8f4f3}.mobile-quick-menu svg{width:19px}.mobile-quick-backdrop{z-index:1199;background:0 0;border:0;display:block;position:fixed;inset:0}.sidebar{z-index:1201;width:min(290px,84vw);padding:22px 16px;transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:15px 0 45px #12394335;display:flex!important}.sidebar.mobile-open{transform:translate(0)}.mobile-nav-close{background:#edf5f4;border:0;border-radius:9px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:12px;right:12px}.mobile-nav-backdrop{z-index:1200;background:#102f3966;border:0;display:block;position:fixed;inset:0}.logo-mini span,.sidebar nav a,.sidebar nav a:not(.active),.sidebar nav a.active{font-size:14px!important}.logo-mini,.sidebar nav a{justify-content:flex-start!important;padding-inline:12px!important}.school-label{display:block!important}.settings-links{grid-template-columns:1fr}.dashboard-todos>form{grid-template-columns:1fr!important}.dashboard-todos form .todo-assignees>div{width:min(320px,100vw - 64px);left:0;right:auto}.dashboard-ai-entry{padding:13px}.dashboard-ai-entry span{font-size:12px}.attendance-hero{margin-top:0}.stats-grid{grid-template-columns:1fr 1fr}.profile-card footer{flex-direction:column;align-items:stretch;gap:12px}}.readonly-field{color:#42636a;background:#f6faf9;border:1px solid #cfdddd;border-radius:11px;align-items:center;min-height:46px;padding:0 13px;font-weight:600;display:flex}.profile-card .profile-password-action{color:#0f718d;border:1px solid #c9dce0;border-radius:11px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-weight:700;text-decoration:none;display:inline-flex}.profile-card .profile-password-action:hover{background:#edf8f8}.iep-create{max-width:1400px;margin:18px auto}.ai-options{background:#eef7f6;border-radius:12px;align-items:center;gap:14px;padding:12px;display:flex}.ai-options label{flex-direction:row;align-items:center}.ai-options button,.iep-goals header button,.iep-detail>header button{color:#fff;background:#287f79;border:0;border-radius:10px;align-items:center;gap:6px;padding:9px 12px;display:flex}.iep-goals{margin-top:20px}.iep-goals>header{justify-content:space-between;align-items:center;display:flex}.iep-goals>section{background:#fbfdfd;border:1px solid #dce7e7;border-radius:14px;margin-top:12px;padding:16px}.iep-layout{grid-template-columns:280px 1fr;gap:16px;max-width:1400px;margin:18px auto;display:grid}.iep-layout>aside{flex-direction:column;gap:8px;display:flex}.iep-layout>aside>button{text-align:left;color:#456269;background:#fff;border:1px solid #dce6e6;border-radius:12px;align-items:center;gap:10px;padding:13px;display:flex}.iep-layout>aside>button.active{background:#edf8f6;border-color:#2a8c82}.iep-layout aside span,.iep-layout aside small{display:block}.iep-layout aside small{color:#829599;margin-top:4px}.iep-detail{background:#fff;border:1px solid #e0e9e9;border-radius:17px;padding:20px}.iep-detail>header{justify-content:space-between;align-items:center;display:flex}.iep-detail>header h2,.iep-detail>header p{margin:3px 0}.iep-detail>header>div:last-child{gap:8px;display:flex}.iep-baseline{background:#f3f8f7;border-radius:12px;margin:16px 0;padding:15px}.iep-baseline p{margin:4px 0 12px;line-height:1.65}.iep-goal-list{gap:12px;display:grid}.iep-goal-list>article{border:1px solid #e0e8e8;border-radius:13px;padding:16px}.iep-goal-list article>header{align-items:center;gap:9px;display:flex}.iep-goal-list header span,.iep-goal-list header em{color:#39716c;background:#edf5f4;border-radius:99px;padding:4px 7px;font-size:11px;font-style:normal}.iep-goal-list header em{margin-left:auto}.iep-goal-list p{line-height:1.65}.goal-progress{background:#f6faf9;border-left:3px solid #2a8c82;flex-direction:column;gap:4px;margin-top:10px;padding:9px 11px;display:flex}.progress-form{margin-top:18px}.progress-form>button{color:#fff;background:#287f79;border:0;border-radius:10px;padding:10px 16px}@media (width<=800px){.iep-layout{grid-template-columns:1fr}.iep-detail>header{flex-direction:column;align-items:flex-start;gap:12px}.ai-options{flex-wrap:wrap;align-items:flex-start}}.growth-timeline{flex-direction:column;gap:0;max-width:1100px;margin:20px auto;display:flex}.growth-timeline>article{grid-template-columns:52px 1fr;gap:14px;display:grid;position:relative}.growth-timeline>article:before{content:"";background:#dce8e6;width:2px;position:absolute;top:45px;bottom:-5px;left:25px}.growth-timeline>article:last-child:before{display:none}.growth-timeline>article>div{color:#2a8c82;background:#eaf5f2;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.growth-timeline>article>div.milestone{color:#c47727;background:#fff0d9}.growth-timeline>article>section{background:#fff;border:1px solid #e0e9e9;border-radius:15px;margin-bottom:14px;padding:17px}.growth-timeline header{justify-content:space-between;gap:12px;display:flex}.growth-timeline header span,.growth-timeline small{color:#7f9297;font-size:12px}.growth-timeline p{color:#526b71;line-height:1.7}@media (width<=600px){.growth-timeline header{flex-direction:column}.growth-timeline>article{grid-template-columns:42px 1fr}.growth-timeline>article:before{left:20px}}.student-table th:last-child,.student-table td:last-child{text-align:center;width:58px}.student-more{position:relative}.student-more summary{color:#537078;cursor:pointer;background:#fff;border:1px solid #d8e5e5;border-radius:9px;place-items:center;width:34px;height:32px;margin:auto;list-style:none;display:grid}.student-more summary::-webkit-details-marker{display:none}.student-more summary svg{width:18px}.student-more[open] summary{color:#147c78;background:#e8f4f3}.student-more>div{z-index:8;background:#fff;border:1px solid #dce7e7;border-radius:10px;width:150px;padding:6px;position:absolute;top:38px;right:0;box-shadow:0 12px 28px #193d452e}.student-more>div a{color:#23464e;text-align:left;border-radius:7px;padding:9px 10px;text-decoration:none;display:block}.student-more>div a:hover{background:#edf6f5}.student-more>div a,.student-more>div button{color:#23464e;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:9px 10px;text-decoration:none;display:block}.student-more>div a:hover,.student-more>div button:hover{background:#edf6f5}.student-name-link{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.student-preview-loading{z-index:70;color:#fff;background:#173f46;border-radius:10px;padding:12px 18px;position:fixed;bottom:24px;right:24px;box-shadow:0 10px 28px #102c3340}.student-preview-backdrop{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10272d47;position:fixed;inset:0}.student-preview-drawer{background:#f6f9f9;width:min(64vw,760px);height:100%;padding:28px;animation:.2s ease-out student-drawer-in;position:absolute;top:0;right:0;overflow:auto;box-shadow:-18px 0 50px #102c3338}.student-preview-drawer>header{border-bottom:1px solid #d9e5e5;justify-content:space-between;align-items:center;padding-bottom:22px;display:flex}.student-preview-drawer>header>div{align-items:center;gap:14px;display:flex}.student-preview-drawer header small{color:#71878d;display:block}.student-preview-drawer h2{margin:3px 0 0;font-size:28px}.student-preview-drawer header>button{color:#48666d;background:#fff;border:1px solid #d4e1e1;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.preview-avatar{color:#fff;background:linear-gradient(135deg,#14758a,#27978b);border-radius:16px;place-items:center;width:54px;height:54px;font-size:24px;font-weight:800;display:grid;box-shadow:0 8px 20px #17758a38}.preview-status{justify-content:space-between;align-items:center;padding:18px 2px;display:flex}.student-preview-drawer>section{background:#fff;border:1px solid #dce7e7;border-radius:16px;margin-bottom:14px;padding:20px;box-shadow:0 8px 22px #1a3d450f}.student-preview-drawer section h3{align-items:center;gap:8px;margin:0 0 15px;display:flex}.student-preview-drawer section h3 svg{color:#188980;width:19px}.student-preview-drawer dl{margin:0}.student-preview-drawer dl>div{border-top:1px solid #edf2f2;grid-template-columns:125px 1fr;gap:12px;padding:11px 0;display:grid}.student-preview-drawer dl>div:first-child{border-top:0}.student-preview-drawer dt{color:#71878d}.student-preview-drawer dd{word-break:break-all;margin:0;font-weight:700}.student-preview-drawer section>article{border-top:1px solid #edf2f2;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.student-preview-drawer section>article:first-of-type{border-top:0}.student-preview-drawer article small{color:#7c9095;margin-top:4px;display:block}.student-preview-drawer .guardian-call-link{color:#08758a;flex-direction:column;align-items:flex-end;font-weight:800;text-decoration:none;display:flex}.student-preview-drawer .guardian-call-link:hover{text-decoration:underline}.preview-readonly-note{color:#527076;background:#edf5f4;border-radius:9px;margin:14px 0 0;padding:11px}.preview-profile-list,.preview-history{border-top:1px solid #e5eded;margin-top:18px;padding-top:15px}.preview-profile-list h4,.preview-history h4{margin:0 0 10px}.preview-profile-list article{background:#f9fbfb;border-radius:11px;border:1px solid #e2eaea!important;padding:12px!important;display:block!important}.preview-profile-list article+article{margin-top:9px}.preview-profile-list article p,.preview-history p{color:#48666d;margin:6px 0;line-height:1.55}.preview-profile-list article small{margin-top:8px}.preview-history p{border-bottom:1px solid #edf2f2;padding:8px 0;font-size:13px}@keyframes student-drawer-in{0%{translate:100%}to{translate:0}}.preview-all-records{border-top:1px solid #dfe9e9;margin-top:20px;padding-top:16px}.preview-all-records>h4{margin:0 0 12px}.preview-all-records details{background:#fafcfc;border:1px solid #dce7e7;border-radius:11px;margin:9px 0}.preview-all-records summary{color:#176b87;cursor:pointer;padding:12px;font-weight:800}.preview-all-records details>article{background:#fff;border-radius:9px;margin:0 10px 10px;border:1px solid #e4ecec!important;padding:12px!important;display:block!important}.preview-all-records article p{white-space:pre-wrap;word-break:break-word;color:#4c686f;margin:6px 0;font-size:12px;line-height:1.55}.preview-all-records details>p{color:#87999d;padding:0 12px 12px}@media (width<=760px){.student-preview-drawer{width:88vw;padding:20px}}.guardian-call-link{color:var(--blue);flex-direction:column;align-items:flex-end;gap:2px;font-weight:800;text-decoration:none;display:flex}.guardian-call-link small{color:#739096;font-size:11px;font-weight:600}.guardian-call-link:hover{text-decoration:underline}.guardian-add-form{border-top:1px solid #dce7e7;gap:9px;margin-top:16px;padding-top:16px;display:grid}.guardian-add-form input,.guardian-add-form select{background:#fff;border:1px solid #cfdddd;border-radius:10px;width:100%;padding:10px 11px}.guardian-add-form button{justify-content:center}.danger-action{color:#b44236;background:#fff5f3;border:1px solid #e4aaa4}.save-row{gap:10px}.student-record-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.student-record-actions button{cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 12px;font-weight:750;display:inline-flex}.archive-action{color:#28736f;border:1px solid #c9dada}.delete-student-action{color:#ad3c32;border:1px solid #efc2bd}.archive-modal{width:min(520px,100%)}.archive-modal form{gap:16px;display:grid}.archive-modal form>label{gap:7px;font-weight:750;display:grid}.archive-modal select,.archive-modal textarea{width:100%;font:inherit;background:#fff;border:1px solid #cfdddd;border-radius:11px;padding:11px 12px}@media (width<=760px){.student-profile-header{align-items:flex-start}.student-record-actions{justify-content:flex-start}}.extra-contacts{border-top:1px solid #e3ebeb;margin-top:18px;padding-top:16px}.extra-contacts>div{justify-content:space-between;align-items:center;display:flex}.extra-contacts button{color:#176b87;background:#fff;border:1px solid #cadada;border-radius:9px;padding:8px 10px;font-weight:750}.extra-contacts section{gap:10px;margin-top:10px;display:grid}.extra-contact{border:1px solid #d6e3e3;border-radius:11px;grid-template-columns:1fr 1fr 1fr auto;gap:8px;padding:10px;display:grid}.extra-contact input,.extra-contact select{background:#fff;border:1px solid #cfdddd;border-radius:9px;min-width:0;padding:9px}.extra-contact legend{padding:0 5px;font-weight:750}
