.metric{min-height:64px;padding:9px 11px;border-radius:10px}.metric strong{font-size:18px;margin-top:4px}.metric span{font-size:11px}.grid{gap:7px}.card{padding:14px;margin-bottom:10px}.outlinedSection{border:1px solid #c8d8ce}.stageBreakdown{font-weight:600}#stageToday .stageBreakdown tr:nth-child(2){background:#edf5eb}#stageToday .stageBreakdown tr:nth-child(3){background:#edf3fa}#stageToday .stageBreakdown tr:nth-child(4){background:#fcf3e6}#stageToday .stageBreakdown tr:last-child{background:#d9eadd;font-weight:800;border-top:2px solid #6c957b}html[data-theme=dark] #stageToday .stageBreakdown tr:nth-child(2){background:#263f2c}html[data-theme=dark] #stageToday .stageBreakdown tr:nth-child(3){background:#243746}html[data-theme=dark] #stageToday .stageBreakdown tr:nth-child(4){background:#403929}html[data-theme=dark] #stageToday .stageBreakdown tr:last-child{background:#31523e}#stageToday td{background:transparent!important}#todayParticipation details{padding:7px 0}#todayParticipation summary{cursor:pointer;font-weight:650;min-height:32px}#todayParticipation details details{border-top:1px solid #cbd8ce;margin-top:7px}.maximum{display:inline-block;font-size:17px;margin-left:8px;color:#607467}#legacyStageFields input,.dailyClassRow input{width:calc(100% - 70px);display:inline-block}.stageInputTitle{display:block;white-space:normal;overflow-wrap:anywhere;margin-bottom:7px}.btn:disabled{background:#dce1de!important;color:#869189!important;opacity:.65;cursor:default;box-shadow:none}.menuLink,.soundRow{font-weight:750}.menuLink span{width:28px;vertical-align:middle;margin-right:6px}.menuLink svg{width:24px;height:24px}.ratesCard{font-size:16px;font-weight:600}.ratesCard table{font-size:15px}.ratesCard label{font-size:15px}.ratesCard input{font-weight:650}input:disabled{opacity:.65}.calendarNav{display:flex;align-items:center;gap:8px}.calendarNav button{border:0;background:transparent;color:inherit;font-size:28px;min-width:38px;min-height:44px}.calendarCells{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin-top:10px;text-align:center}.calendarCells b{font-size:12px;padding:6px 0}.calendarCells button{position:relative;border:0;background:transparent;color:inherit;min-height:39px;border-radius:8px;font:inherit}.calendarCells .sunday{color:#c12c37!important;font-weight:750}.calendarCells .friday{color:#126342!important;font-weight:750}html[data-theme=dark] .calendarCells .friday{color:#62bf8e!important}.calendarCells .holidayDay{background:#fff0d5}.calendarCells small{position:absolute;bottom:0;left:45%;color:#c57815}dialog{max-width:calc(100vw - 28px);width:390px;border:0;border-radius:18px;padding:22px;background:#fff;color:#19372a;box-shadow:0 16px 60px #0005}dialog::backdrop{background:#0007}html[data-theme=dark] dialog{background:#192a22;color:#e7f1eb}.reportHeading{text-align:center}.reportHeading p{font-size:12px}.reportColumns{display:grid;grid-template-columns:minmax(0,3fr) minmax(220px,1fr);gap:16px;align-items:start;min-width:0}.reportColumns table{white-space:normal;font-size:10px;width:100%;table-layout:fixed}.mainReport{overflow:auto}.mainReport table{min-width:760px}.reportColumns td,.reportColumns th{border:1px solid #adbab1;padding:5px 3px;overflow-wrap:anywhere;text-align:center}.rateCaption{font-size:10px;line-height:1.45}.financialReport h3{font-size:13px}.reportTotal{font-weight:800;background:#e5eee7}.reportNote{font-size:10px}.reportSignature{margin-top:35px;font-size:12px}@media(max-width:650px){.reportColumns{display:block}.financialReport{margin-top:16px}.financialReport table{font-size:12px}.reportColumns .mainReport{width:100%}}@media print{@page{size:A4 landscape;margin:8mm}.reportColumns{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(0,1fr)!important;gap:8px}.mainReport{overflow:visible!important}.mainReport table{min-width:0!important}.reportColumns table{font-size:7px!important}.reportColumns th,.reportColumns td{padding:3px 2px}.reportColumns thead{display:table-header-group}.financialReport{margin-top:0}.financialReport h3{font-size:10px}.rateCaption{font-size:8px}.reportHeading h2{font-size:17px}.reportHeading h3{font-size:12px}.reportTotal{background:#eee!important}.reportColumns tr{break-inside:avoid}dialog{display:none!important}footer{display:none!important}}
.countWithMax{display:flex;align-items:center;gap:8px;margin-top:6px}.countWithMax input{flex:1;width:0;min-width:0}.countWithMax .maximum{flex:none;margin-left:0;min-width:45px}.dailyClassRow label{display:block}.dailyClassRow .hint{margin-top:5px}
@media print{html,body,main,#reports,#reportOutput{background:white!important;color:black!important}main{max-width:none!important;width:100%!important}#reportOutput{padding:0!important;margin:0!important}.reportColumns .financialReport th:first-child{width:34%}}
html[data-theme=dark] .maximum{color:#b7cbbf}

/* Three-stage reports and compact gender-wise class enrollment. */
.genderClassRow{grid-template-columns:minmax(78px,1.35fr) minmax(38px,.65fr) minmax(38px,.65fr) minmax(42px,.7fr) auto;gap:5px;align-items:end}
.genderClassRow label{font-size:10px;margin:2px 0;min-width:0}
.genderClassRow input{padding:7px 4px!important;font-size:12px}
.genderClassRow button{padding:8px 6px!important;min-height:35px!important;font-size:10px!important;white-space:nowrap}
.reportPeriodStats{display:flex;justify-content:space-between;gap:8px;font-size:10px;margin:4px 0 8px}
.reportColumns{grid-template-columns:minmax(0,3fr) minmax(0,1.1fr)}
.reportColumns .mainReport{min-width:0}
.reportColumns .mainReport table{width:100%;min-width:0!important;table-layout:fixed}
.financialReport table{font-size:9px}
.financialReport .reportSmallTable th:first-child{width:34%}
@media(max-width:400px){.genderClassRow{grid-template-columns:minmax(66px,1.25fr) minmax(32px,.62fr) minmax(32px,.62fr) minmax(36px,.7fr) auto;gap:3px}.genderClassRow input{font-size:11px;padding:7px 3px!important}.genderClassRow button{font-size:9px!important;padding:7px 4px!important}.genderClassRow label{font-size:9px}.reportPeriodStats{font-size:9px}}
@media(max-width:650px){.reportColumns{display:block}.reportColumns .mainReport{overflow:visible}.reportColumns .mainReport table{font-size:clamp(6px,1.8vw,10px)}.financialReport{margin-top:14px}}
@media print{@page{size:A4 landscape;margin:8mm}.reportColumns{display:grid!important;grid-template-columns:minmax(0,3fr) minmax(0,1.1fr)!important;gap:8px}.reportColumns .mainReport{overflow:visible!important}.reportColumns .mainReport table{min-width:0!important;font-size:7px!important}.reportColumns .mainReport td,.reportColumns .mainReport th{padding:3px 2px}.financialReport{margin-top:0!important}.financialReport table{font-size:7px!important}.reportPeriodStats{font-size:8px}}

/* Keep all five class enrollment controls on one compact row on phones. */
#enrollment .classSetupRow.genderClassRow{display:grid;grid-template-columns:minmax(48px,1.25fr) repeat(3,minmax(30px,.72fr)) minmax(48px,auto);gap:4px;align-items:end;width:100%;min-width:0}
#enrollment .classSetupRow.genderClassRow label{display:block;min-width:0;font-size:10px;white-space:nowrap;margin:2px 0}
#enrollment .classSetupRow.genderClassRow input{display:block;width:100%;min-width:0!important;height:34px;padding:6px 4px!important;font-size:11px}
#enrollment .classSetupRow.genderClassRow button{grid-column:auto;justify-self:stretch;align-self:end;width:100%;min-width:0;margin:0 0 1px;padding:6px 4px!important;min-height:34px!important;font-size:9px!important;white-space:nowrap}
@media(max-width:360px){#enrollment .classSetupRow.genderClassRow{grid-template-columns:minmax(43px,1.18fr) repeat(3,minmax(27px,.68fr)) minmax(45px,auto);gap:3px}#enrollment .classSetupRow.genderClassRow label{font-size:9px}#enrollment .classSetupRow.genderClassRow input{font-size:10px;padding:5px 3px!important}#enrollment .classSetupRow.genderClassRow button{font-size:8px!important;padding:5px 3px!important}}

/* Prominent school identity with a slow, low-contrast shimmer wave. */
header .schoolNameLine{width:calc(100% + 49px);margin-left:-49px;display:flex;justify-content:center}
@keyframes schoolNameWave{0%{transform:translateX(-150%) skewX(-20deg)}99.9%{transform:translateX(330%) skewX(-20deg)}100%{transform:translateX(330%) skewX(-20deg)}}
#schoolHeader{position:relative;left:auto;isolation:isolate;overflow:hidden;display:block;width:max-content;max-width:100%;margin-top:9px;padding:7px 9px;border:1px solid #a8d2bd;border-radius:11px;background-color:#104e3b;box-shadow:0 2px 8px #073f2f44,inset 0 1px 0 #ffffff25;color:#fff;opacity:1;font-size:clamp(12px,4vw,19px);font-weight:850;line-height:1.25;letter-spacing:0;overflow-wrap:anywhere;vertical-align:top}
#schoolHeader::after{content:"";position:absolute;z-index:-1;pointer-events:none;top:-25%;bottom:-25%;left:0;width:32%;border-radius:50%;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.14) 25%,rgba(255,255,255,.68) 50%,rgba(255,255,255,.14) 75%,transparent 100%);animation:schoolNameWave 2.2s linear infinite}
@media(prefers-reduced-motion:reduce){#schoolHeader::after{animation:none;display:none}}
/* Fit tables to their card instead of requiring horizontal scrolling. */
.scroll{overflow:visible;min-width:0;max-width:100%}table{width:100%;max-width:100%;table-layout:fixed;white-space:normal}th,td{white-space:normal;overflow-wrap:anywhere;word-break:normal;padding:8px 5px}table input{width:100%;min-width:0!important;padding:9px 5px}table button{max-width:100%;white-space:normal}.ratesCard table{font-size:13px}.ratesCard table th:first-child{width:30%}#rateHistory table{font-size:12px}#recent table{font-size:11px}.classSetupRow{grid-template-columns:minmax(0,1.3fr) minmax(64px,.8fr) auto;gap:7px;align-items:end}.classSetupRow label{min-width:0}.classSetupRow input{padding:10px 7px}.classSetupRow button{grid-column:auto;justify-self:stretch;margin:0 0 5px;padding:9px 7px;min-height:40px;font-size:11px}.mainReport table{min-width:0!important}.reportColumns{min-width:0}.financialReport{min-width:0}@media screen and (max-width:650px){.mainReport table{font-size:clamp(6px,1.8vw,10px)}.mainReport th,.mainReport td{padding:4px 1px}.financialReport table{font-size:11px}}@media(max-width:360px){.classSetupRow{gap:5px;grid-template-columns:minmax(0,1.2fr) minmax(58px,.8fr) auto}.classSetupRow button{font-size:10px;padding:8px 5px}.classSetupRow label{font-size:11px}th,td{padding:7px 3px}#recent table,#rateHistory table{font-size:10px}}

/* v1.8 enrollment disclosure */
.enrollmentToggle{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-bottom:0}
.enrollmentToggle svg{flex:none;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.enrollmentToggle[aria-expanded="true"] svg{transform:rotate(180deg)}
#enrollmentReveal{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s cubic-bezier(.22,.61,.36,1),opacity .3s ease}
#enrollmentReveal.open{grid-template-rows:1fr;opacity:1}
#enrollmentReveal>div{overflow:hidden;min-height:0}
@media(prefers-reduced-motion:reduce){#enrollmentReveal,.enrollmentToggle svg{transition:none}}
/* Compact class enrollment, with stages and history kept distinct. */
#enrollment .classGroup{padding:8px;margin:8px 0}#enrollment .classSetupRow{padding:4px 0;gap:6px}#enrollment .classSetupRow label{margin:2px 0;font-size:12px}#enrollment .classSetupRow input{margin-top:3px;padding:8px 6px}#enrollment .classGroup>.btn{margin:7px 0 0;padding:8px 12px}#enrollment .classSetupRow button{margin-bottom:2px;min-height:36px}#enrollment .hint{margin:8px 0}.holidayDisclosure>summary{font-weight:750;cursor:pointer}.holidayDisclosure>.card{margin:10px 0;padding:10px}.stageBreakdown tr.reportTotal{background:#dbe9df;font-weight:800}html[data-theme=dark] .stageBreakdown tr.reportTotal{background:#2d4938}.menuLink{font-weight:750}
#sundayLabel{color:#c62828;font-size:24px;font-weight:850;text-align:center;letter-spacing:1.5px;margin:24px 0 12px}html[data-theme=dark] #sundayLabel{color:#ff7777}.holidayPeriodRow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #cbd8ce}.holidayPeriodRow>div{min-width:0;font-size:13px;overflow-wrap:anywhere}.holidayPeriodRow strong{display:block;margin-bottom:5px}.holidayPeriodRow .btn{flex:none;margin:0;padding:9px 11px;font-size:12px}
.calendarCells .mealException{outline:2px solid #b87816;outline-offset:-2px}.calendarCells .mealException sup{position:absolute;right:3px;top:1px;font-weight:800}#enrollmentStatus{font-size:13px;line-height:1.5}#openingAllocation input{width:100%;box-sizing:border-box}
.dateDisplayWrap{position:relative;min-width:0}.dateDisplayWrap input[type=date]{color:transparent!important;width:100%;box-sizing:border-box}.dateDisplayWrap input[type=date]::-webkit-datetime-edit{opacity:0}.dateDisplayText{position:absolute;left:14px;top:50%;transform:translateY(-50%);pointer-events:none;color:inherit;font-size:inherit}.dateDisabled .dateDisplayText{opacity:.55}
#holidayDateLabel{color:#8b4513;font-size:21px;font-weight:800;text-align:center;line-height:1.45;margin:24px 0 12px;overflow-wrap:anywhere}html[data-theme=dark] #holidayDateLabel{color:#d8a16f}
.stageSwitchRow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;margin:8px 0;border-bottom:1px solid #cbd8ce}.stageSwitchRow>span{display:flex;flex-direction:column;gap:4px}.stageSwitchRow small{font-weight:400;color:#687970}.stageSwitchRow input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;flex:none;width:50px;height:27px;margin:0;border:0;border-radius:99px;background:#aab6ae;transition:background .2s ease;cursor:pointer}.stageSwitchRow input[type=checkbox]::before{content:"";position:absolute;left:2px;top:2px;width:23px;height:23px;border-radius:50%;background:white;box-shadow:0 1px 4px #0004;transition:transform .2s ease}.stageSwitchRow input[type=checkbox]:checked{background:#17644d}.stageSwitchRow input[type=checkbox]:checked::before{transform:translateX(23px)}.stageSwitchRow input[type=checkbox]:focus-visible{outline:3px solid #75bba0;outline-offset:2px}html[data-theme=dark] .stageSwitchRow small{color:#afc2b5}
#reportOutput .officeCaption{display:block;font-size:9px;font-style:italic;font-weight:400;margin-bottom:2px}
#reportOutput .reportHeading h2{margin:2px 0 3px;font-size:17px;font-weight:800}
#reportOutput .reportHeading h3{margin:4px 0 8px;font-size:13px}
#reportOutput .reportHeading p{margin:2px 0;font-size:10px}
#reportOutput .reportColumns{display:block;min-width:0}
#reportOutput .mainReport{width:100%;overflow-x:auto}
#reportOutput .mdmDailyReport{width:100%;min-width:820px;table-layout:fixed;border-collapse:separate;border-spacing:0;border:1px solid #7f9686;border-radius:9px;overflow:hidden;font-size:9px}
#reportOutput .mdmDailyReport .colSerial{width:3.5%}
#reportOutput .mdmDailyReport .colDate{width:7.5%}
#reportOutput .mdmDailyReport .colDay{width:9%}
#reportOutput .mdmDailyReport .colMeasure{width:7.3%}
#reportOutput .mdmDailyReport .colTotalRice{width:6.5%}
#reportOutput .mdmDailyReport .colTotalCost{width:7.8%}
#reportOutput .mdmDailyReport thead th{line-height:1.05;overflow-wrap:normal;word-break:keep-all}
#reportOutput .mdmDailyReport tbody td:nth-child(3){white-space:nowrap}
#reportOutput .reportRounded{border-collapse:separate;border-spacing:0;border:1.6px solid #263b2c;border-radius:8px;overflow:hidden}
#reportOutput .reportRounded th,#reportOutput .reportRounded td{border-right:1px solid #c5d0c8;border-bottom:1px solid #c5d0c8}
#reportOutput .reportRounded tr:first-child th{border-top:1px solid #c5d0c8}
#reportOutput .reportRounded tr th:first-child,#reportOutput .reportRounded tr td:first-child{border-left:1px solid #c5d0c8}
#reportOutput .reportRounded tr:last-child th,#reportOutput .reportRounded tr:last-child td{border-bottom:0}
#reportOutput .reportRounded tr th:last-child,#reportOutput .reportRounded tr td:last-child{border-right:0}
#reportOutput .reportRounded thead tr:first-child th:first-child,#reportOutput .reportRounded tbody tr:first-child th:first-child{border-top-left-radius:7px}
#reportOutput .reportRounded thead tr:first-child th:last-child,#reportOutput .reportRounded tbody tr:first-child th:last-child{border-top-right-radius:7px}
#reportOutput .sundayRow td{background:#fff0f0!important;color:#8f2630}
#reportOutput .rateRow th,#reportOutput .rateRow td{background:#e7f1e9!important;font-weight:700}
#reportOutput .reportSupplemental{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:12px;align-items:start;margin-top:12px}
#reportOutput .financialReport,#reportOutput .enrollmentReport{min-width:0}
#reportOutput .reportSmallTable{width:100%;font-size:9px;table-layout:fixed}
#reportOutput .reportSmallTable th:first-child{width:34%}
#reportOutput .reportSmallTable td,#reportOutput .reportSmallTable th{padding:5px 4px}
#reportOutput .enrollmentReport .reportSmallTable{font-size:8px}
#reportOutput .reportSignatures{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;gap:8px;margin-top:26px;padding-top:10px;font-size:10px;font-weight:600;break-inside:avoid;page-break-inside:avoid}
#reportOutput .reportSignatures span{display:block;white-space:nowrap}
#reportOutput .reportSignatures span:nth-child(1){text-align:left}
#reportOutput .reportSignatures span:nth-child(2){text-align:center}
#reportOutput .reportSignatures span:nth-child(3){text-align:right}
@media(max-width:650px){#reportOutput .reportSupplemental{grid-template-columns:1fr}#reportOutput .mdmDailyReport{font-size:7px}}
@media print{
 @page{size:A4 landscape;margin:7mm 7mm 20mm}
 #reportOutput .reportColumns{display:grid!important;grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr)!important;gap:8px;align-items:start}
 #reportOutput .reportSupplemental{display:block!important;margin-top:0}
 #reportOutput .financialReport,#reportOutput .enrollmentReport{width:100%;margin:0 0 6px}
 #reportOutput .reportSignatures{position:fixed;left:7mm;right:7mm;bottom:6mm;margin:0!important;padding:0!important}
 #reportOutput{padding-bottom:12mm!important}
 #reportOutput .reportHeading h2{font-size:16px}
 #reportOutput .reportHeading h3{font-size:11px}
 #reportOutput .reportHeading p{font-size:8px}
 #reportOutput .reportPeriodStats{margin:3px 0 5px;font-size:8px}
 #reportOutput .reportPeriodStats span{float:right}
 #reportOutput .mainReport{overflow:visible!important}
 #reportOutput .mdmDailyReport{width:100%!important;min-width:0!important;font-size:7px!important}
 #reportOutput .mdmDailyReport th,#reportOutput .mdmDailyReport td{padding:3px 2px!important;line-height:1.15}
 #reportOutput .reportSupplemental{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:8px;margin-top:7px}
 #reportOutput .reportSmallTable{font-size:7px!important}
 #reportOutput .reportSmallTable th,#reportOutput .reportSmallTable td{padding:3px 2px!important;line-height:1.15}
 #reportOutput .financialReport h3,#reportOutput .enrollmentReport h3{font-size:9px;margin:5px 0 3px}
 #reportOutput .reportNote{font-size:7px;line-height:1.2;margin:3px 0}
 #reportOutput .sundayRow td{background:#fde4e4!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .rateRow th,#reportOutput .rateRow td{background:#e5efe7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .reportTotal{background:#e8eee9!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .reportSignatures{margin-top:18px;padding-top:8px;grid-template-columns:1fr 1fr 1fr;font-size:9px}
 #reportOutput .reportSignatures span{white-space:nowrap}
 #reportOutput .mdmDailyReport thead{display:table-header-group}
 #reportOutput .mdmDailyReport tr{break-inside:avoid;page-break-inside:avoid}
 #reportOutput .reportSupplemental,#reportOutput .reportSignatures{break-inside:avoid;page-break-inside:avoid}
}

/* Enrollment form readability: stronger values while retaining the compact row. */
#enrollment .classSetupRow.genderClassRow label{font-size:11px;font-weight:750}
#enrollment .classSetupRow.genderClassRow input{font-size:14px;font-weight:750}
#enrollment .classSetupRow.genderClassRow button{font-size:11px!important;font-weight:800!important}
@media(max-width:360px){
 #enrollment .classSetupRow.genderClassRow label{font-size:10px;font-weight:750}
 #enrollment .classSetupRow.genderClassRow input{font-size:13px;font-weight:750}
 #enrollment .classSetupRow.genderClassRow button{font-size:10px!important;font-weight:800!important}
}

/* Keep the printable/exported statement on one landscape sheet. */
@media print{
 @page{size:A4 landscape;margin:7mm 7mm 19mm}
 #reportOutput .reportColumns{display:grid!important;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)!important;gap:7px!important;align-items:start}
 #reportOutput .reportSupplemental{display:block!important;margin:0!important}
 #reportOutput .mainReport{overflow:visible!important}
 #reportOutput .mdmDailyReport{width:100%!important;min-width:0!important;font-size:7px!important}
 #reportOutput .mdmDailyReport th,#reportOutput .mdmDailyReport td{padding:2px 1px!important;line-height:1.08}
 #reportOutput .reportSmallTable{font-size:7.5px!important}
 #reportOutput .reportSmallTable th,#reportOutput .reportSmallTable td{padding:2px 1px!important;line-height:1.08}
 #reportOutput .financialReport,#reportOutput .enrollmentReport{width:100%;margin:0 0 4px}
 #reportOutput .financialReport h3,#reportOutput .enrollmentReport h3{font-size:9px;margin:4px 0 3px}
 #reportOutput .reportNote{font-size:6.5px;line-height:1.08;margin:2px 0}
 #reportOutput .reportSignatures{position:fixed;left:7mm;right:7mm;bottom:5mm;margin:0!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr 1fr;font-size:8px}
 #reportOutput .reportSignatures span{white-space:nowrap}
 #reportOutput .sundayRow td{background:#fde4e4!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .rateRow th,#reportOutput .rateRow td{background:#e5efe7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .reportTotal{background:#e8eee9!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 #reportOutput .mdmDailyReport thead{display:table-header-group}
 #reportOutput .mdmDailyReport tr,#reportOutput .reportSupplemental,#reportOutput .reportSignatures{break-inside:avoid;page-break-inside:avoid}
}

#riceHeadBalances .riceBalanceTotal th{font-weight:850;background:#dcebe1;border-top:2px solid #8eaa98}html[data-theme="dark"] #riceHeadBalances .riceBalanceTotal th{background:#294334;border-color:#66816f}

/* Keep the app identity and primary navigation pinned while page content scrolls. */
.stickyShell{position:fixed;top:0;left:0;right:0;z-index:20;box-shadow:0 2px 8px #102f241c}
body{padding-top:var(--sticky-shell-height,0px)}
.stickyShell header{padding-top:7px;padding-bottom:5px}
.stickyShell #schoolHeader{margin-top:4px;padding-top:5px;padding-bottom:5px}
.stickyShell .tabs{position:relative;top:auto;z-index:auto;padding-top:5px;padding-bottom:5px;gap:6px}
.stickyShell .tabs button{min-height:40px;padding-top:7px;padding-bottom:7px}
@media print{body{padding-top:0!important}.stickyShell{display:none!important}}

/* Opening account tables: keep headers and totals legible in dark mode. */
@media screen {
 html[data-theme=dark] .openingBalanceTable th,
 html[data-theme=dark] .openingBalanceTable td{color:#edf6f0;border-color:#66816f}
 html[data-theme=dark] .openingRiceBox .openingBalanceTable thead th{background:#304c3a;color:#f3faf5;border-color:#769780}
 html[data-theme=dark] .openingFundsBox .openingBalanceTable thead th{background:#413b55;color:#f7f2ff;border-color:#8a80a4}
 html[data-theme=dark] .openingRiceBox .openingBalanceTable .openingTotal th,
 html[data-theme=dark] .openingRiceBox .openingBalanceTable .openingTotal td{background:#345640;color:#f3faf5;border-color:#769780}
 html[data-theme=dark] .openingFundsBox .openingBalanceTable .openingTotal th,
 html[data-theme=dark] .openingFundsBox .openingBalanceTable .openingTotal td{background:#4a4261;color:#f7f2ff;border-color:#8a80a4}
}

/* Fixed UI text does not enter text-selection mode. Editable fields retain copy/paste. */
body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
input,textarea,[contenteditable="true"]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}

/* Report tables use square cells and outside borders in preview and print. */
#reportOutput table,#reportOutput table th,#reportOutput table td{border-radius:0!important}
#reportOutput .reportColumns table{border:1.6px solid #263b2c!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
#reportOutput .reportColumns td{font-weight:600}
#reportOutput .reportColumns tr.reportTotal td,#reportOutput .reportColumns tr.effectiveChangeRow td{font-weight:750}
@media print{#reportOutput .reportColumns table{border-width:1.6px!important;border-color:#263b2c!important}}
@media screen{
 #reportExportOptions{color:#20332a}
 #reportExportOptions .hint{color:#526b5b}
 html[data-theme=dark] #reportExportOptions{background:#20382b;color:#edf6f0;border-color:#66816f}
 html[data-theme=dark] #reportExportOptions .hint{color:#bdcec2}
 html[data-theme=dark] .calendarCells .sunday{color:#ff939b!important}
 html[data-theme=dark] .calendarCells .holidayDay{background:#48391f;color:#f7e3bc}
 footer{color:#566d5d}
 .btn:disabled,.btn.dataSaved,.btn.dataSaved:disabled{background:#d7dcd9!important;color:#4c5750!important;opacity:1!important}
 html[data-theme=dark] .btn:disabled,html[data-theme=dark] .btn.dataSaved,html[data-theme=dark] .btn.dataSaved:disabled{background:#34443b!important;color:#c4d1c8!important;border-color:#66816f!important;opacity:1!important}
 input:disabled,select:disabled,textarea:disabled{opacity:1}
 html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#a8bdae;opacity:1}
}
@media screen{
 html:not([data-theme=dark]) .positive{color:#10743d!important}
 .calendarCells small{color:#8b550c}
 html[data-theme=dark] .calendarCells small{color:#f4c26b}
}
#reportOutput .reportSupplemental{display:block}
#reportOutput .reportPeople{margin-top:10px}
#reportOutput .reportPeople table{font-size:11px}
#reportOutput .reportPeople th,#reportOutput .reportPeople td{overflow-wrap:anywhere;padding:7px 5px}
@media print{#reportOutput .reportPeople{margin-top:4px}#reportOutput .reportPeople table{font-size:7px!important}}

/* Compact dashboard date and month badge. */
#dashDate{display:block;width:100%;max-width:100%;margin:0 0 8px;padding:6px 8px;border:1px solid #b8cebf;border-radius:8px;background:#edf5ef;color:#294b37;font-weight:750;font-size:12px;line-height:1.35;white-space:normal}
html[data-theme=dark] #dashDate{background:#243d2f;border-color:#688673;color:#edf6f0}

/* Keep the Overview date box and metric borders consistent. */
#metrics .metric{border:1px solid #b8cebf}
#metrics .metric>span{font-size:13px;line-height:1.3}
html[data-theme=dark] #metrics .metric{border-color:#688673}

#reportOutput .reportMealSummary{display:grid;gap:4px;margin:0 0 8px;font-size:11px;line-height:1.35;color:#1a291f}
#reportOutput .reportMealSummary strong{font-weight:750}
@media print{#reportOutput .reportMealSummary{font-size:7px;gap:2px;margin-bottom:4px}}

#school .schoolDetailsSaved input:disabled,#school .schoolDetailsSaved select:disabled{background:#e7ede8;color:#30483a;border-color:#a8bcad;opacity:1;-webkit-text-fill-color:#30483a}
html[data-theme=dark] #school .schoolDetailsSaved input:disabled,html[data-theme=dark] #school .schoolDetailsSaved select:disabled{background:#2c4034;color:#e1eee5;border-color:#6c8976;-webkit-text-fill-color:#e1eee5}

#reportOutput .reportMealSummary{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-family:'Times New Roman','MDM Report Serif',serif;margin:5px 0 9px}#reportOutput .reportMealSummary strong{font-family:inherit}#reportOutput .reportSignatures{padding-top:40px}

#reportOutput .riceAllocationReport{margin:10px 0;break-inside:avoid}#reportOutput .riceAllocationReport h3{font-size:12px;margin:0 0 5px}#reportOutput .riceAllocationReport table{width:100%;table-layout:fixed;border-collapse:collapse}#reportOutput .riceAllocationReport td,#reportOutput .riceAllocationReport th{border:1px solid #8da293;text-align:center;padding:5px 2px;font-size:11px}

#reportOutput .reportCredit{font-family:'Times New Roman','MDM Report Serif',serif;font-size:8px;line-height:1.2;font-style:italic;color:#000000;margin:3px 0 5px;text-align:left}
