:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#102033;background:radial-gradient(circle at top left,rgba(243,183,76,.35),transparent 28%),radial-gradient(circle at bottom right,rgba(17,138,178,.18),transparent 32%),linear-gradient(135deg,#f8fbff,#eef5f9)}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-x:hidden;line-height:1.5}#root{min-height:100vh}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{padding:32px 24px;background:linear-gradient(180deg,#0f2b46,#153d61);color:#f8fbff;border-right:1px solid rgba(255,255,255,.08);position:sticky;top:0;height:100vh;overflow-y:auto}.brand h1,.page h2,.panel h3,.data-card h3{margin:0}.brand h1{font-size:clamp(1.2rem,1.1rem + .9vw,1.5rem);line-height:1.15;overflow-wrap:anywhere}.school-brand-logo{width:92px;height:118px;object-fit:contain;display:block;margin-bottom:16px;border-radius:8px;background:#fff;border:1px solid rgba(255,255,255,.35);box-shadow:0 10px 24px #0813213d;padding:8px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;font-size:12px;color:#f3b74c}.muted{color:#617285}.sidebar .muted{color:#f8fbffb8}.nav{margin-top:32px;display:grid;gap:10px}.nav-group{display:grid;gap:8px}.nav-group-toggle{width:100%;border:0;color:inherit;cursor:pointer;text-align:left;display:flex;align-items:center;justify-content:space-between;font:inherit}.nav-link{padding:12px 14px;border-radius:14px;background:#ffffff0a;transition:background-color .2s ease,transform .2s ease}.nav-subgroup{display:grid;gap:8px;padding-left:14px}.sub-nav-link{padding:10px 14px;border-radius:12px;background:#ffffff08;font-size:13px;color:#f8fbffe0;transition:background-color .2s ease,transform .2s ease}.nav-chevron{display:inline-flex;transition:transform .2s ease}.nav-chevron.open{transform:rotate(90deg)}.nav-link:hover,.nav-link.active,.sub-nav-link:hover,.sub-nav-link.active{background:#f3b74c2e;transform:translate(4px)}.main-panel{min-height:100vh;padding:32px;display:flex;flex-direction:column;overflow-x:hidden;min-width:0}.main-panel-body{flex:1 1 auto;min-width:0}.dashboard-footer{margin-top:24px;margin-left:auto;display:flex;align-items:flex-end;justify-content:flex-end;gap:12px;flex-wrap:wrap;text-align:right;color:#617285}.dashboard-footer-text{margin:0;font-size:13px}.dashboard-footer-brand{width:min(130px,28vw);height:auto;display:block;opacity:.94}.settings-panel{max-width:980px}.settings-form{align-items:start}.settings-logo-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;align-items:center;width:100%}.settings-logo-preview{width:132px;height:172px;border:1px solid rgba(16,32,51,.12);border-radius:8px;background:#fff;display:grid;place-items:center;overflow:hidden;color:#617285;font-size:13px;font-weight:700}.settings-logo-preview img{width:100%;height:100%;object-fit:contain;padding:10px}.professional-report-card{max-width:820px;margin:0 auto;background:#fff;border:1px solid rgba(16,32,51,.14);border-radius:8px;overflow:hidden;color:#102033;box-shadow:0 18px 48px #10203314}.report-school-header{display:grid;grid-template-columns:116px minmax(0,1fr);gap:18px;align-items:center;padding:24px 26px;border-bottom:3px solid #153d61;background:#f8fbff}.report-logo-box{width:108px;height:128px;border:1px solid #9aa9b8;border-radius:8px;background:#fff;display:grid;place-items:center;overflow:hidden;color:#617285;font-size:12px;font-weight:700;text-align:center}.report-logo-box img{width:100%;height:100%;object-fit:contain;padding:8px 8px 14px}.report-school-details{text-align:center}.report-school-details h2{margin:0;font-size:24px;text-transform:uppercase;letter-spacing:0;color:#102033}.report-school-details p{margin:4px 0 0;color:#40566d;font-size:13px}.report-school-details strong{display:inline-block;margin-top:12px;padding:5px 16px;border:1px solid #153d61;border-radius:6px;text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:#153d61}.report-subhead{display:flex;justify-content:space-between;gap:12px;padding:12px 26px;background:#153d61;color:#fff;font-weight:700}.report-student-band{display:grid;grid-template-columns:minmax(0,1fr) 122px;gap:20px;padding:22px 26px;border-bottom:1px solid #d8e0e8}.report-student-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.report-info-item{border:1px solid #e0e7ef;border-radius:6px;padding:10px 12px;background:#fbfdff}.report-info-item p{margin:0 0 4px;color:#617285;font-size:11px;text-transform:uppercase;font-weight:700}.report-info-item strong{display:block;font-size:14px;color:#102033;overflow-wrap:anywhere}.report-photo-frame{width:112px;height:144px;border:1px solid #7b8c9d;border-radius:4px;background:#fff;display:grid;place-items:center;overflow:hidden;color:#617285;font-size:11px;font-weight:700;text-align:center;padding:8px}.report-photo-frame img{width:100%;height:100%;object-fit:cover;padding:0}.report-section{padding:22px 26px;border-bottom:1px solid #d8e0e8}.report-waiting-message{margin:22px 26px;padding:26px;border:1px dashed #9aa9b8;border-radius:8px;background:#f8fbff;color:#40566d;text-align:center;font-weight:700}.report-section h4{margin:0 0 14px;color:#153d61;text-transform:uppercase;font-size:13px;letter-spacing:.08em}.report-marks-table{width:100%;border-collapse:collapse;border:1px solid #d8e0e8}.report-marks-table th,.report-marks-table td{padding:10px 12px;border:1px solid #d8e0e8;text-align:center;font-size:13px}.report-marks-table th:first-child,.report-marks-table td:first-child{text-align:left}.report-marks-table th{background:#eef5f9;color:#29455d;text-transform:uppercase;font-size:11px}.report-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 26px;border-bottom:1px solid #d8e0e8}.report-summary-grid div{text-align:center;border:1px solid #d8e0e8;border-radius:6px;padding:12px;background:#fbfdff}.report-summary-grid p{margin:0 0 6px;color:#617285;font-size:12px;text-transform:uppercase;font-weight:700}.report-summary-grid strong{display:block;color:#153d61;font-size:26px;line-height:1.1}.report-summary-grid span{display:block;margin-top:3px;color:#617285;font-size:12px}.report-note{padding:20px 26px;border-bottom:1px solid #d8e0e8;background:#fffdf7}.report-note p{margin:0 0 6px;color:#617285;text-transform:uppercase;font-size:12px;font-weight:700}.report-note strong,.report-note span{display:block}.report-note strong{color:#102033;margin-bottom:8px}.report-note span{color:#40566d;line-height:1.6}.report-remarks-section{background:#fff}.report-signature-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:58px 26px 24px}.report-signature-row span{border-top:1px solid #102033;padding-top:8px;text-align:center;color:#40566d;font-size:12px;font-weight:700}.public-page{min-height:100vh;padding:32px;display:grid;gap:24px}.public-site-shell{min-height:100vh}.public-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 32px;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f8fbffd1;border-bottom:1px solid rgba(16,32,51,.08)}.public-brand{display:flex;gap:14px;align-items:center;min-width:0}.public-brand strong{display:block;font-size:1rem;color:#102033;overflow-wrap:anywhere}.public-brand-details{display:grid;gap:2px;margin-top:3px;max-width:420px;color:#617285;font-size:12px;line-height:1.25}.public-brand-details span{display:block;overflow-wrap:anywhere}.public-brand-logo{width:72px;height:84px;object-fit:contain;flex:0 0 auto;border-radius:8px;background:#fff;border:1px solid rgba(16,32,51,.08);padding:6px}.public-nav{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.public-nav-link{padding:10px 14px;border-radius:999px;color:#29455d;font-size:14px;transition:background-color .2s ease,color .2s ease}.public-nav-link:hover,.public-nav-link.active{background:#118ab21f;color:#0f4c5c}.public-topbar-actions{display:flex;align-items:center}.public-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:24px;align-items:start}.public-hero-copy,.public-summary-card,.public-home-gallery,.public-school-features,.public-montessori-feature,.public-compliance-note{background:#ffffffc7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(16,32,51,.08);border-radius:8px;box-shadow:0 20px 40px #10203314}.public-home-showcase{display:grid;gap:18px;min-width:0}.public-hero-copy{padding:32px;position:relative;overflow:hidden}.public-hero-copy:after{content:"";position:absolute;inset:auto -40px -60px auto;width:220px;height:220px;background:radial-gradient(circle,rgba(17,138,178,.14),transparent 70%);pointer-events:none}.public-hero-copy h1,.public-summary-card h2,.public-montessori-copy h2{margin:0;line-height:1.12;letter-spacing:0}.public-hero-copy h1{max-width:20ch;font-size:clamp(1.8rem,1.35rem + 1.6vw,3rem)}.public-hero-copy p:not(.eyebrow){margin:18px 0 0;max-width:60ch;color:#42576d;font-size:1rem}.public-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.public-summary-card{padding:28px;display:grid;align-content:space-between;gap:18px;background:linear-gradient(160deg,#0f2b46fa,#118ab2e0);color:#f8fbff}.public-summary-card .muted{color:#f8fbffcc}.public-summary-label{margin:0;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:#f3b74cfa}.public-summary-list{display:grid;gap:12px}.public-summary-list p{margin:0;padding-bottom:12px;border-bottom:1px solid rgba(248,251,255,.16);color:#f8fbffe6;font-weight:600}.public-summary-list p:last-child{padding-bottom:0;border-bottom:0}.public-home-gallery{overflow:hidden;min-height:460px;background:#102033;color:#fff}.public-home-gallery-frame{position:relative;min-height:100%;height:100%;isolation:isolate}.public-home-gallery-slide{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;animation:publicGalleryFade calc(var(--slide-count, 1) * 5s) infinite;animation-delay:calc(var(--slide-index, 0) * 5s)}.public-home-gallery-slide:only-child{opacity:1;animation:none}.public-home-gallery-slide img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block}.public-home-gallery-slide:after,.public-home-gallery-empty:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1020330a 32%,#102033d1);pointer-events:none}.public-home-gallery-slide figcaption,.public-home-gallery-empty{position:absolute;inset:auto 0 0;z-index:1;padding:22px;display:grid;gap:6px}.public-home-gallery-slide span,.public-home-gallery-empty span{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:700;color:#f3b74c}.public-home-gallery-slide strong,.public-home-gallery-empty strong{font-size:1.3rem;line-height:1.2}.public-home-gallery-empty{top:0;background:linear-gradient(135deg,#118ab22e,#f3b74c3d),repeating-linear-gradient(45deg,#ffffff14,#ffffff14 14px,#ffffff05 14px,#ffffff05 28px);align-content:end}@keyframes publicGalleryFade{0%,22%{opacity:1}30%,to{opacity:0}}.public-school-features{padding:24px;background:#fff}.public-school-features-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.public-school-features h2{margin:4px 0 0;color:#102033;font-size:clamp(1.2rem,1rem + .7vw,1.7rem);line-height:1.18}.public-school-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.public-school-feature-card{min-width:0;padding:18px;border:1px solid rgba(16,32,51,.1);border-radius:8px;background:#f8fbff}.public-school-feature-card span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-bottom:12px;border-radius:999px;background:#118ab21a;color:#0f6d8c;font-size:11px;font-weight:800;letter-spacing:.08em}.public-school-feature-card h3{margin:0;color:#102033;font-size:1rem;line-height:1.25}.public-school-feature-card p{margin:8px 0 0;color:#42576d;font-size:.94rem}.public-montessori-feature{overflow:hidden;display:grid;grid-template-rows:minmax(220px,1fr) auto;background:#fff}.public-montessori-feature img{width:100%;height:100%;min-height:240px;object-fit:cover;display:block}.public-montessori-copy{padding:24px;border-top:4px solid #f3b74c;background:#fff}.public-montessori-copy h2{margin-top:6px;color:#102033;font-size:clamp(1.35rem,1.12rem + .8vw,2rem)}.public-montessori-copy p:not(.public-summary-label){margin:12px 0 0;color:#42576d}.public-compliance-note{padding:18px 22px;border-left:6px solid #118ab2}.public-compliance-note p{margin:0;color:#29455d}.public-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.public-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-option-card{background:#ffffffc7;border:1px solid rgba(16,32,51,.08);border-radius:24px;box-shadow:0 20px 40px #10203314;padding:24px;display:grid;gap:18px}.public-option-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.public-option-index{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:999px;background:#118ab21a;color:#0f6d8c;font-size:12px;font-weight:700;letter-spacing:.08em}.public-option-card h3,.public-gallery-card h3,.public-timeline-card h3{margin:0;color:#102033;font-size:1.15rem}.public-option-card p,.public-gallery-card p,.public-timeline-card p{margin:0;color:#42576d}.public-option-subtitle{margin-top:2px!important;text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:#118ab2!important}.public-info-card h3{font-size:1.1rem;line-height:1.4}.public-section-panel{padding:28px}.public-rich-copy{display:grid;gap:14px}.public-rich-copy p{margin:0;color:#42576d}.public-timeline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-timeline-card,.public-gallery-card,.public-contact-card{min-width:0}.public-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.public-gallery-card{background:#ffffff8f;border:1px solid rgba(16,32,51,.08);border-radius:20px;padding:18px;display:grid;gap:14px}.public-gallery-placeholder{min-height:180px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#118ab229,#f3b74c38),repeating-linear-gradient(45deg,#ffffff59,#ffffff59 12px,#ffffff29 12px,#ffffff29 24px);color:#0f4c5c;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.public-gallery-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:18px;display:block}.public-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.public-site-admin-form{gap:20px}.content-editor-group,.content-editor-stack{display:grid;gap:16px}.content-editor-card{padding:18px;border-radius:18px;background:#f8fbffbd;border:1px solid rgba(16,32,51,.08);display:grid;gap:14px}.gallery-admin-card{grid-template-columns:220px 1fr;align-items:start}.gallery-admin-preview{min-width:0}.gallery-admin-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:16px;display:block}.gallery-admin-body{display:grid;gap:12px}.content-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.content-editor-grid label,.content-editor-card label{display:grid;gap:8px;font-size:14px;color:#42576d;font-weight:600}.content-editor-span{grid-column:1 / -1}.public-inline-link{color:#0f6d8c;font-weight:600;text-decoration:underline;text-underline-offset:3px}.disclosure-panel{scroll-margin-top:24px}.disclosure-document{padding:32px;display:grid;gap:28px}.disclosure-document-head{display:grid;gap:8px;text-align:center}.disclosure-document-head p,.disclosure-document-head h2,.disclosure-document-head h3{margin:0}.disclosure-document-head p{font-size:14px;font-weight:700;letter-spacing:.08em;color:#42576d}.disclosure-document-head h2{font-size:clamp(1.5rem,1.25rem + 1vw,2rem);color:#102033}.disclosure-document-head h3{font-size:1rem;font-weight:600;color:#42576d}.disclosure-document-actions{display:grid;justify-items:center;gap:12px;margin-top:12px}.disclosure-document-actions .muted{margin:0}.disclosure-section-title{margin:0 0 14px;font-size:1rem;color:#102033;letter-spacing:.02em}.disclosure-pdf-panel{display:grid;gap:18px}.disclosure-pdf-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.disclosure-pdf-header .muted{margin:0;max-width:62ch}.disclosure-pdf-frame{width:100%;min-height:960px;border:1px solid rgba(16,32,51,.1);border-radius:20px;background:#f8fbffb8}.disclosure-pdf-fallback{padding:20px}.disclosure-table-wrap{width:100%;overflow-x:auto}.disclosure-table{width:100%;min-width:760px;border-collapse:collapse}.disclosure-table th,.disclosure-table td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(16,32,51,.08)}.disclosure-table th{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#617285}.disclosure-table td:first-child,.disclosure-table th:first-child{width:88px}.disclosure-doc-link{color:#0f6d8c;font-weight:600;text-decoration:underline;text-underline-offset:3px}.disclosure-pending{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f3b74c2e;color:#8a5a00;font-size:12px;font-weight:700}.disclosure-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.disclosure-result-block h4{margin:0 0 12px;font-size:1rem;color:#102033}.disclosure-result-table th:first-child,.disclosure-result-table td:first-child{width:auto}.page{display:grid;gap:24px;min-width:0}.students-page{max-width:100%;overflow-x:hidden}.hero,.panel,.data-card{background:#ffffffb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(16,32,51,.08);border-radius:24px;box-shadow:0 20px 40px #10203314}.hero,.panel{padding:24px}.hero h2,.page-header h2,.page-title{margin:0;font-size:clamp(1.45rem,1.15rem + 1.1vw,2rem);line-height:1.15;letter-spacing:-.02em;overflow-wrap:anywhere}.page-subtitle,.hero-copy{margin:8px 0 0;max-width:60ch;color:#42576d;font-size:.96rem;line-height:1.55}.page-subtitle{max-width:54ch}.page-subtitle,.hero-copy,.panel-head .muted{display:none}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.data-card{padding:22px}.data-card h3{font-size:clamp(1.45rem,1.15rem + .9vw,1.95rem);line-height:1.15;overflow-wrap:anywhere}.card-label,.card-helper,.endpoint-url{margin:0}.card-label{color:#617285;font-size:14px;margin-bottom:8px}.card-helper{color:#617285;margin-top:10px;line-height:1.45}.panel-head,.page-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;min-width:0}.page-header>div:first-child,.panel-head>div:first-child{min-width:0}.toolbar{display:flex;gap:12px;flex-wrap:wrap}.toolbar>*{min-width:0}.student-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.student-form label{display:grid;gap:8px;font-size:14px;color:#42576d;min-width:0}.photo-preview-wrap{display:flex;align-items:center}.photo-preview{width:120px;height:150px;object-fit:cover;border-radius:16px;border:1px solid rgba(16,32,51,.12);background:#fffc}.student-form-span{grid-column:1 / -1}.student-form .search-input{min-width:0;width:100%}.students-form{grid-template-columns:repeat(2,minmax(0,1fr))}.students-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.students-page .panel,.students-page .page-header,.students-page .card-grid,.students-page .student-list,.students-page .student-card,.students-page .student-card-head,.students-page .student-card-title,.students-page .student-meta-grid,.students-page .student-footer,.students-page .toolbar,.students-page form{min-width:0}.students-page .panel{max-width:100%;overflow-x:hidden}.students-page .page-header>div:first-child,.students-page .panel-head>div:first-child{min-width:0}.students-page .page-header h2,.students-page .panel h3,.students-page .muted,.students-page .student-card h3,.students-page .student-card p{overflow-wrap:anywhere}.students-page .panel-head .toolbar,.students-page .page-header .toolbar{min-width:0;flex-wrap:wrap}.students-page .panel-head .search-input,.students-page .page-header .search-input{min-width:0;width:min(100%,280px)}.student-directory-toolbar{flex-wrap:wrap}.student-directory-toolbar .search-input{min-width:180px}.student-directory-table-wrap{max-width:100%}.student-directory-table{min-width:920px}.student-directory-table td,.student-directory-table th{white-space:nowrap}.student-directory-table td:last-child,.student-directory-table th:last-child{width:1%}.student-directory-name strong{display:inline-block;min-width:180px}.student-directory-actions{display:flex;gap:8px;flex-wrap:nowrap}.student-directory-actions .secondary-button,.student-directory-actions .danger-button{padding:8px 12px;white-space:nowrap}.form-section-title{margin-top:8px;padding-top:12px;border-top:1px solid rgba(16,32,51,.08);font-size:14px;font-weight:700;color:#102033}.required-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.required-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f3b74c2e;color:#8a5a00;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.form-textarea{min-height:110px;resize:vertical}.checkbox-row{display:flex!important;align-items:center;gap:10px;padding-top:30px}.search-input{min-width:260px;width:100%;padding:12px 14px;border-radius:14px;border:1px solid rgba(16,32,51,.16);background:#fffc;color:#102033}.primary-button{padding:12px 18px;border:0;border-radius:14px;background:#118ab2;color:#fff;font-weight:600;cursor:pointer}.secondary-button{padding:12px 18px;border-radius:14px;border:1px solid rgba(16,32,51,.16);background:#ffffffbf;color:#102033;font-weight:600;cursor:pointer}.danger-button{padding:12px 18px;border-radius:14px;border:1px solid rgba(192,57,43,.24);background:#c0392b1a;color:#922b21;font-weight:600;cursor:pointer}.success-button{padding:12px 18px;border-radius:14px;border:1px solid rgba(25,135,84,.24);background:#1987541f;color:#166534;font-weight:600;cursor:pointer}.warning-button{padding:12px 18px;border-radius:14px;border:1px solid rgba(243,183,76,.32);background:#f3b74c29;color:#7a4b00;font-weight:600;cursor:pointer}.compact-button{padding:8px 12px;border-radius:10px;font-size:13px}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.success-button:disabled,.warning-button:disabled{opacity:.6;cursor:not-allowed}.status-pill{padding:10px 14px;border-radius:999px;background:#102033;color:#f8fbff;font-size:14px;white-space:nowrap}.endpoint-list{display:grid;gap:14px}.dashboard-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.endpoint-card{padding:16px;border-radius:18px;background:#1020330a}.student-list,.teacher-list,.fee-list,.attendance-list,.exam-list,.academics-list{display:grid;gap:16px}.academics-list-scroll{max-height:360px;overflow-y:auto;overflow-x:hidden;padding-right:6px;scrollbar-gutter:stable;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.student-card,.teacher-card,.fee-card,.attendance-card,.exam-card,.academics-item{padding:20px;border-radius:20px;background:#1020330a;border:1px solid rgba(16,32,51,.06)}.academics-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.academics-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.academics-form label{display:grid;gap:8px;font-size:14px;color:#42576d;min-width:0}.form-label{display:block;margin-bottom:8px;color:#42576d;font-size:14px;font-weight:600}.inline-field{display:grid;gap:6px;margin-top:8px;color:#42576d;font-size:13px;font-weight:600}.inline-field .search-input{width:120px;min-width:0;padding:8px 10px}.multi-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px}.checkbox-row.multi-check-item{min-height:42px;padding:10px 12px;border:1px solid rgba(16,32,51,.1);border-radius:8px;background:#ffffffb8}.accounts-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.accounts-form-field{min-width:0}.accounts-form .search-input,.academics-form .search-input{min-width:0;width:100%}.report-selector-form{grid-template-columns:minmax(140px,.75fr) minmax(180px,1fr) minmax(220px,1.15fr);align-items:end;max-width:860px}.academics-form-span{grid-column:1 / -1}.academics-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.academics-item h4,.academics-item p{margin:0}.academics-item-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.report-access-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.report-access-status.allowed{background:#1987541f;color:#166534}.report-access-status.blocked{background:#c0392b1a;color:#922b21}.report-access-reason{display:block;margin-top:6px;color:#6c7a89}.student-photo-row-input{min-width:220px;max-width:260px;padding:8px 10px}.student-card-head,.teacher-card-head,.fee-card-head,.attendance-card-head,.exam-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}.student-meta-grid,.teacher-meta-grid,.fee-summary-grid,.attendance-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.student-meta-grid,.teacher-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}.student-meta-grid p,.student-footer p,.teacher-meta-grid p,.teacher-address{margin:0}.student-footer{display:grid;gap:8px}.student-card-title{display:flex;gap:14px;align-items:flex-start}.student-avatar{width:64px;height:82px;object-fit:cover;border-radius:12px;border:1px solid rgba(16,32,51,.12);background:#fffc}.student-actions{margin-top:16px;display:flex;justify-content:flex-end}.assignment-section{display:grid;gap:10px;margin-bottom:16px}.assignment-section h4{margin:0;font-size:14px;color:#102033}.exam-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.exam-section-head h4{margin:0}.chip-row{display:flex;flex-wrap:wrap;gap:10px}.assignment-chip{padding:8px 12px;border-radius:999px;background:#118ab21f;color:#0f4c5c;font-size:13px;font-weight:600}.teacher-address{margin-top:4px}.amount-box{padding:16px;border-radius:18px;background:#ffffffb3;border:1px solid rgba(16,32,51,.06)}.amount-box h4{margin:0;font-size:20px}.payment-list,.attendance-records,.schedule-list,.result-list{display:grid;gap:10px}.payment-row,.attendance-record-row,.schedule-row,.result-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 14px;border-radius:16px;background:#ffffffb3}.payment-row p{margin:4px 0 0}.payment-date{color:#617285;white-space:nowrap}.billing-summary{display:grid;gap:12px;margin:14px 0 18px;padding:14px;border:1px solid rgba(17,138,178,.16);border-radius:8px;background:#f8fbffdb}.billing-summary-head,.billing-line{display:flex;align-items:center;justify-content:space-between;gap:12px}.billing-summary-head div{display:grid;gap:2px}.billing-summary-head span,.billing-line span{color:#617285;font-size:13px}.billing-lines{display:grid;gap:8px}.billing-line{min-height:42px;padding:8px 10px;border-radius:8px;background:#fff;border:1px solid rgba(16,32,51,.08)}.billing-line span{min-width:0;overflow-wrap:anywhere}.billing-line strong{white-space:nowrap}.fee-search-input{width:min(100%,280px)}.fee-view-select{width:170px}.attendance-status{font-weight:700;color:#102033}.result-meta{display:flex;align-items:center;gap:10px}.badge{padding:8px 12px;border-radius:999px;font-size:13px;font-weight:700}.badge-active{background:#19875424;color:#166534}.badge-inactive{background:#c0392b24;color:#922b21}.badge-warning{background:#b47e0429;color:#8a5b00}.scroll-panel{max-height:480px;overflow-y:auto;padding-right:6px}.bus-status-card{display:grid;gap:14px;padding:16px 18px;border-radius:18px;background:#ffffffc2;border:1px solid rgba(16,32,51,.08)}.bus-status-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;flex-wrap:wrap}.bus-status-head h4{margin:0 0 4px;color:#102033}.month-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(136px,1fr));gap:10px}.month-status-chip{display:grid;gap:4px;padding:12px 14px;border-radius:14px;border:1px solid rgba(16,32,51,.08);background:#f6f8fbe6;color:#42576d}.month-status-chip strong{color:#102033;font-size:13px}.month-status-chip span{font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.month-status-chip.paid{background:#1987541a;border-color:#19875433}.month-status-chip.paid span{color:#166534}.month-status-chip.partial{background:#b47e041c;border-color:#b47e0433}.month-status-chip.partial span{color:#8a5b00}.month-status-chip.unpaid{background:#c0392b17;border-color:#c0392b2e}.month-status-chip.unpaid span{color:#922b21}.endpoint-url{color:#102033;word-break:break-all}.table-wrap{overflow-x:auto}.resource-table{width:100%;border-collapse:collapse}.resource-table th,.resource-table td{text-align:left;padding:14px 12px;border-bottom:1px solid rgba(16,32,51,.08);vertical-align:top}.resource-table th{color:#617285;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.empty-state,.error-text{padding:18px;border-radius:16px}.empty-state{background:#1020330a}.error-text{color:#922b21;background:#c0392b1a}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:24px 20px}.main-panel{padding:24px 20px}.nav{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.card-grid,.academics-layout,.academics-form{grid-template-columns:1fr}.panel-head,.page-header{flex-direction:column;align-items:flex-start}.student-meta-grid,.teacher-meta-grid,.fee-summary-grid,.attendance-summary-grid,.dashboard-meta-grid,.student-form,.students-form,.students-card-grid{grid-template-columns:1fr}.payment-row,.attendance-record-row,.schedule-row,.result-row{align-items:flex-start;flex-direction:column}.search-input{min-width:100%}.toolbar>*{width:100%}.status-pill{width:100%;text-align:center}.user-table-actions,.user-table-inline,.student-directory-actions{flex-wrap:wrap}}.login-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at top left,rgba(243,183,76,.35),transparent 28%),radial-gradient(circle at bottom right,rgba(17,138,178,.18),transparent 32%),linear-gradient(135deg,#f8fbff,#eef5f9);padding:20px}.login-box{width:100%;max-width:420px;position:relative;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(16,32,51,.08);border-radius:24px;box-shadow:0 20px 60px #1020331f;padding:40px 40px 96px}.login-header{text-align:center;margin-bottom:32px}.login-header h1{margin:0 0 12px;font-size:clamp(1.5rem,1.25rem + 1vw,1.9rem);color:#102033}.login-header p{margin:0;color:#617285;font-size:16px}.login-box form{display:grid;gap:20px;margin-bottom:24px}.form-group{display:grid;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#102033}.form-group input{padding:12px 14px;border-radius:14px;border:1px solid rgba(16,32,51,.16);background:#fffc;color:#102033;font-size:14px;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:#118ab2;box-shadow:0 0 0 3px #118ab21a}.form-group input:disabled{background:#1020330a;cursor:not-allowed;opacity:.6}.login-button{padding:12px 18px;border:0;border-radius:14px;background:linear-gradient(135deg,#118ab2,#0f4c5c);color:#fff;font-weight:600;font-size:15px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #118ab240}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;margin:0;color:#617285;font-size:13px}.login-brand-mark{position:absolute;right:20px;bottom:18px;display:flex;justify-content:flex-end;pointer-events:none}.login-brand-image{width:min(140px,36vw);height:auto;display:block;opacity:.92}.school-login-logo{width:88px;min-height:112px;margin:0 auto 16px;border:1px solid rgba(16,32,51,.1);border-radius:8px;background:#fff;display:grid;place-items:center;overflow:visible}.school-login-logo img{width:100%;max-height:112px;object-fit:contain;padding:8px}.error-message{padding:12px 14px;margin-bottom:20px;border-radius:12px;background:#c0392b1a;color:#922b21;font-size:14px;border:1px solid rgba(192,57,43,.24)}.user-info{margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.user-name{margin:0;font-weight:600;color:#f8fbff;font-size:14px}.user-role{margin:4px 0 0;color:#f8fbffb8;font-size:12px;text-transform:capitalize}.nav-footer{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1)}.logout-button{width:100%;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.2);background:#c0392b26;color:#f8fbff;font-weight:600;font-size:14px;cursor:pointer;transition:background-color .2s ease}.logout-button:hover{background:#c0392b40}.loading-container{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(circle at top left,rgba(243,183,76,.35),transparent 28%),radial-gradient(circle at bottom right,rgba(17,138,178,.18),transparent 32%),linear-gradient(135deg,#f8fbff,#eef5f9)}.loading-container-inline{min-height:min(50vh,360px);border-radius:24px;border:1px solid rgba(16,32,51,.08)}.spinner{width:40px;height:40px;border:4px solid rgba(16,32,51,.1);border-top-color:#118ab2;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.loading-container p{color:#617285;font-size:16px}@media (max-width: 640px){.sidebar{padding:20px 14px}.main-panel{padding:18px 14px}.dashboard-footer{gap:10px}.dashboard-footer-brand{width:min(110px,34vw)}.settings-logo-card,.report-school-header,.report-student-band{grid-template-columns:1fr}.report-logo-box,.report-photo-frame{margin:0 auto}.report-student-grid,.report-summary-grid,.report-signature-row{grid-template-columns:1fr}.report-subhead{flex-direction:column;text-align:center}.public-topbar{padding:14px}.public-brand-logo{width:60px;height:70px}.public-page{padding:18px 14px}.public-hero-copy,.public-summary-card,.public-home-gallery,.public-school-features,.public-montessori-feature,.public-compliance-note{border-radius:8px}.disclosure-document{padding:20px 16px}.public-hero-copy{padding:24px 20px}.public-summary-card{padding:22px 20px}.public-home-gallery,.public-home-gallery-slide img{min-height:280px}.public-montessori-feature{grid-template-rows:auto auto}.public-montessori-feature img{min-height:190px;aspect-ratio:4 / 3}.public-montessori-copy,.public-school-features{padding:20px}.public-school-features-head{display:grid;gap:4px;margin-bottom:14px}.public-school-features-grid{grid-template-columns:1fr}.login-box{padding:32px 20px 88px}.login-header h1{font-size:24px}.login-brand-mark{right:16px;bottom:16px}.login-brand-image{width:min(120px,38vw)}.public-hero,.public-card-grid,.card-grid,.public-option-grid,.public-school-features-grid,.public-timeline-grid,.public-gallery-grid,.public-contact-grid,.content-editor-grid,.gallery-admin-card,.disclosure-results-grid{grid-template-columns:1fr}.hero,.panel,.data-card{border-radius:18px}}@media (max-width: 960px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.main-panel{min-height:auto}.public-hero{grid-template-columns:1fr}.public-topbar{position:static;align-items:flex-start;flex-direction:column}.public-nav{justify-content:flex-start}.public-card-grid,.public-option-grid,.public-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.user-form{display:grid;gap:24px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-row label{display:grid;gap:8px;font-size:14px;color:#42576d;font-weight:600}.form-row input,.form-row select{padding:12px 14px;border-radius:12px;border:1px solid rgba(16,32,51,.16);background:#fffc;color:#102033;font-size:14px;font-family:inherit;transition:border-color .2s ease}.form-row input:focus,.form-row select:focus{outline:none;border-color:#118ab2;box-shadow:0 0 0 3px #118ab21a}.form-row input:disabled,.form-row select:disabled{background:#1020330a;cursor:not-allowed;opacity:.6}.success-message{padding:12px 14px;margin-bottom:20px;border-radius:12px;background:#1987541a;color:#166534;font-size:14px;border:1px solid rgba(25,135,84,.24);animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.users-table-wrap{overflow-x:auto;margin-top:18px;max-width:100%}.user-directory-table-wrap{max-height:min(620px,70vh);overflow:auto;-webkit-overflow-scrolling:touch}.user-directory-table-wrap .users-table th{position:sticky;top:0;z-index:1}.users-table{width:100%;border-collapse:collapse;font-size:14px;min-width:860px}.users-table th,.users-table td{text-align:left;padding:14px 12px;border-bottom:1px solid rgba(16,32,51,.08);vertical-align:center}.users-table th{color:#617285;text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:600;background:#10203305}.users-table td{color:#42576d;white-space:nowrap}.fee-status-table{min-width:1180px}.fee-status-bucket{display:grid;gap:5px;min-width:118px}.fee-status-bucket small{display:block;color:#617285;font-size:12px;line-height:1.25}.role-badge{display:inline-block;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:600;text-transform:capitalize;background:#118ab21f;color:#0f4c5c}.status-active{color:#166534;font-weight:600}.status-inactive{color:#922b21;font-weight:600}.user-table-inline,.user-table-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:nowrap}.user-table-actions .secondary-button,.user-table-actions .danger-button,.user-table-actions .primary-button,.user-table-inline .secondary-button{padding:8px 12px;font-size:12px}.mark-entry-table-section{display:grid;gap:12px;min-width:0}.mark-entry-section-title{margin:0;font-size:14px;font-weight:700;color:#102033}.mark-entry-table-wrap{max-width:100%;min-width:0;overflow:auto;max-height:min(65vh,560px);border-radius:18px;border:1px solid rgba(16,32,51,.12);background:#ffffffb8;box-shadow:inset 0 1px #fff9}.mark-entry-table{width:100%;min-width:max-content;border-collapse:separate;border-spacing:0;font-size:13px}.mark-entry-table th,.mark-entry-table td{padding:12px 14px;border-bottom:1px solid rgba(16,32,51,.08);vertical-align:middle;background-color:inherit}.mark-entry-table thead th{position:sticky;top:0;z-index:3;background:#10203305;color:#617285;text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:700;white-space:normal;overflow-wrap:anywhere}.mark-entry-row:nth-child(2n){background:#10203304}.mark-entry-student-col,.mark-entry-student-cell{width:260px;min-width:260px;text-align:left;border-right:1px solid rgba(16,32,51,.08)}.mark-entry-subject-col,.mark-entry-mark-cell{min-width:130px;text-align:center}.sticky-col{position:sticky;left:0;z-index:2;background-color:inherit;box-shadow:1px 0 #10203314}.mark-entry-table thead .sticky-col{z-index:4}.mark-entry-input{width:96px;padding:8px 10px;border:1px solid rgba(16,32,51,.16);border-radius:12px;background:#fffc;color:#102033;font-family:inherit;font-size:13px;text-align:center;transition:border-color .2s ease,box-shadow .2s ease}.mark-entry-input:focus{outline:none;border-color:#118ab2;box-shadow:0 0 0 3px #118ab21f}.mark-entry-input:disabled{background:#1020330a;cursor:not-allowed;opacity:.65}.mark-exempt-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;margin-bottom:6px;color:#617285;font-size:12px;font-weight:700}.mark-status-select{width:82px;margin-bottom:6px;padding:6px 8px;border:1px solid rgba(16,32,51,.16);border-radius:8px;background:#ffffffe0;color:#102033;font:inherit;font-size:12px;font-weight:700}.mark-consolidated-section{margin-top:24px}.mark-consolidated-print{background:#fff;border:1px solid rgba(16,32,51,.12);border-radius:8px;overflow:hidden;color:#102033}.mark-consolidated-head{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;align-items:center;padding:18px 20px;border-bottom:2px solid #153d61;background:#f8fbff;text-align:center}.mark-consolidated-logo{width:74px;height:86px;border:1px solid #9aa9b8;border-radius:6px;display:grid;place-items:center;background:#fff;color:#617285;font-size:11px;font-weight:700;overflow:hidden}.mark-consolidated-logo img{width:100%;height:100%;object-fit:contain;padding:6px}.mark-consolidated-head h2{margin:0;font-size:22px;text-transform:uppercase}.mark-consolidated-head p{margin:4px 0 0;color:#40566d;font-size:12px}.mark-consolidated-head strong{display:inline-block;margin-top:8px;color:#153d61;text-transform:uppercase;font-size:12px}.mark-consolidated-meta{display:flex;justify-content:space-between;gap:16px;padding:10px 20px;background:#153d61;color:#fff;font-size:13px}.mark-consolidated-table-wrap{overflow:auto}.mark-consolidated-table{width:100%;border-collapse:collapse;font-size:14px}.mark-consolidated-table th,.mark-consolidated-table td{border:1px solid #d8e0e8;padding:7px 8px;text-align:center;vertical-align:middle}.mark-consolidated-table th{background:#eef5f9;color:#29455d;text-transform:uppercase;font-size:12px}.mark-consolidated-table tr.mark-consolidated-rank-1 td{background:#fff2b8}.mark-consolidated-table tr.mark-consolidated-rank-2 td{background:#d9ecff}.mark-consolidated-table tr.mark-consolidated-rank-3 td{background:#dff5df}.mark-consolidated-rank-cell{font-weight:800}.mark-consolidated-rank-1 .mark-consolidated-rank-cell{color:#8a5a00}.mark-consolidated-rank-2 .mark-consolidated-rank-cell{color:#12538d}.mark-consolidated-rank-3 .mark-consolidated-rank-cell{color:#23713a}.mark-consolidated-table th span{display:block;margin-top:2px;color:#617285;font-size:10px}.mark-consolidated-name{text-align:left!important;font-weight:700;white-space:nowrap}.mark-consolidated-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding:42px 36px 18px}.mark-consolidated-footer span{border-top:1px solid #102033;padding-top:8px;text-align:center;color:#40566d;font-size:12px;font-weight:700}.subject-wise-mark-page .mark-consolidated-section{display:none}.subject-wise-selector-panel{margin-bottom:18px}.subject-wise-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.subject-wise-list{display:grid;gap:10px}.subject-wise-row{display:grid;grid-template-columns:minmax(220px,1fr) 130px 76px 130px;gap:12px;align-items:end;padding:14px;border:1px solid rgba(16,32,51,.08);border-radius:8px;background:#ffffffbd}.subject-wise-student{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:center;min-width:0}.subject-wise-student>span{display:grid;place-items:center;width:32px;height:32px;border-radius:999px;background:#118ab21f;color:#0f4c5c;font-size:13px;font-weight:700}.subject-wise-student strong,.subject-wise-student small{display:block;overflow-wrap:anywhere}.subject-wise-student small{margin-top:2px;color:#617285;font-size:12px}.subject-wise-row label{display:grid;gap:6px;min-width:0;color:#42576d;font-size:13px}.subject-wise-exempt{justify-items:center}.subject-wise-exempt input{width:22px;height:22px}.subject-wise-status,.subject-wise-mark-input{min-width:0}.subject-wise-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid rgba(16,32,51,.1)}@media (max-width: 960px){.mark-entry-student-col,.mark-entry-student-cell{width:220px;min-width:220px}.mark-entry-subject-col,.mark-entry-mark-cell{min-width:120px}.mark-entry-table th,.mark-entry-table td{padding:10px 12px}.mark-entry-input{width:88px;padding:8px}.subject-wise-filter-grid,.subject-wise-row{grid-template-columns:1fr}.subject-wise-exempt{justify-items:start}}.nav-divider{height:1px;background:#ffffff1a;margin:16px 0}.nav-section-title{margin:12px 0 8px;padding:0 14px;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#f8fbff99;font-weight:700}@media (max-width: 960px){.form-row{grid-template-columns:1fr}.users-table{font-size:12px}.users-table th,.users-table td{padding:10px 8px}}.bulk-upload-form{display:grid;gap:24px}.file-help-text{padding:16px;background:#118ab20f;border-radius:12px;border-left:4px solid #118ab2;font-size:13px;color:#42576d;line-height:1.6}.file-help-text p{margin:8px 0}.file-help-text code{display:block;margin:8px 0;padding:8px 12px;background:#1020330a;border-radius:6px;font-family:Courier New,monospace;font-size:12px;overflow-x:auto}.bulk-results{padding:16px;background:#10203305;border-radius:12px;border:1px solid rgba(16,32,51,.1);margin-bottom:24px}.results-summary{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(16,32,51,.08)}.results-summary h4{margin:0 0 12px;color:#102033;font-size:14px;font-weight:600}.results-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.stat{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#ffffff80;border-radius:8px;border:1px solid rgba(16,32,51,.08)}.stat-label{font-size:12px;color:#617285;font-weight:500}.stat-value{display:inline-block;padding:4px 8px;background:#118ab21a;border-radius:6px;color:#0f4c5c;font-weight:700;font-size:16px}.stat.success .stat-value{background:#1987541a;color:#166534}.stat.error .stat-value{background:#b222221a;color:#922b21}.results-section{margin-top:16px}.results-section h4{margin:0 0 12px;color:#102033;font-size:14px;font-weight:600}.results-list{list-style:none;padding:0;margin:0;max-height:300px;overflow-y:auto}.results-list li{padding:8px 12px;margin-bottom:6px;border-radius:6px;font-size:13px;line-height:1.4}.success-item{background:#19875414;color:#166534;border-left:3px solid #28a745}.error-item{background:#b2222214;color:#922b21;border-left:3px solid #dc3545}.annual-consolidation-table th,.annual-consolidation-table td{padding:10px 8px}.annual-consolidation-table th:nth-child(1),.annual-consolidation-table td:nth-child(1){width:54px}.annual-consolidation-table th:nth-child(2),.annual-consolidation-table td:nth-child(2){width:230px;white-space:normal}.annual-consolidation-table th:nth-child(3),.annual-consolidation-table td:nth-child(3),.annual-consolidation-table th:nth-child(4),.annual-consolidation-table td:nth-child(4),.annual-consolidation-table th:nth-child(5),.annual-consolidation-table td:nth-child(5),.annual-consolidation-table th:nth-child(6),.annual-consolidation-table td:nth-child(6),.annual-consolidation-table th:nth-child(7),.annual-consolidation-table td:nth-child(7),.annual-consolidation-table th:nth-child(8),.annual-consolidation-table td:nth-child(8),.annual-consolidation-table th:nth-child(9),.annual-consolidation-table td:nth-child(9){width:74px}.annual-consolidation-table th:nth-child(10),.annual-consolidation-table td:nth-child(10){width:80px}.search-input.annual-consolidation-mark-input{min-width:54px;width:54px;padding:10px 8px;text-align:center}.report-remark-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-remark-card{padding:14px;border-radius:16px;border:1px solid rgba(16,32,51,.08);background:#ffffffc7}.report-remark-card h4,.report-remark-card p{margin:0}.report-remark-card h4{margin-bottom:8px;font-size:13px;color:#102033}.report-remark-card p{font-size:14px;line-height:1.5;color:#42576d;white-space:pre-wrap}.report-remark-card-positive{background:#19875412}.report-remark-card-negative{background:#c0392b12}@media (max-width: 960px){.disclosure-pdf-header{flex-direction:column}.disclosure-pdf-frame{min-height:70vh}.report-remark-grid{grid-template-columns:1fr}}.daily-update-list{display:grid;gap:16px}.daily-update-card{padding:20px;border-radius:20px;background:#1020330a;border:1px solid rgba(16,32,51,.08)}.daily-update-head,.daily-update-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.daily-update-head h4,.daily-update-head p,.daily-update-block h5,.daily-update-block p,.daily-update-footer p{margin:0}.daily-update-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.daily-update-block{padding:14px;border-radius:16px;background:#ffffffb8;border:1px solid rgba(16,32,51,.08)}.daily-update-block h5{margin-bottom:8px;font-size:13px;color:#102033}.daily-update-block p{color:#42576d;line-height:1.5;white-space:pre-wrap}.daily-update-block-full{grid-column:1 / -1}.daily-update-actions{display:flex;gap:10px;flex-wrap:wrap}.ledger-list-scroll{max-height:420px;overflow-y:auto;padding-right:6px;scrollbar-gutter:stable;overscroll-behavior:contain}.ledger-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width: 960px){.daily-update-grid{grid-template-columns:1fr}.daily-update-head,.daily-update-footer{flex-direction:column}}@media (max-width: 640px){.app-shell,.main-panel,.main-panel-body,.page,.hero,.panel,.data-card,.student-card,.teacher-card,.fee-card,.attendance-card,.exam-card,.academics-item{min-width:0;max-width:100%}.public-card-grid,.public-option-grid,.public-school-features-grid,.public-timeline-grid,.public-gallery-grid,.public-contact-grid,.content-editor-grid,.disclosure-results-grid,.card-grid,.student-form,.students-form,.students-card-grid,.academics-layout,.academics-form,.accounts-form,.report-selector-form,.report-remark-grid,.daily-update-grid,.settings-form,.settings-logo-card,.report-school-header,.report-student-band,.report-student-grid,.report-summary-grid,.report-signature-row,.mark-consolidated-head,.mark-consolidated-meta,.mark-consolidated-footer,.gallery-admin-card{grid-template-columns:minmax(0,1fr)}.page-header,.panel-head,.student-card-head,.teacher-card-head,.fee-card-head,.attendance-card-head,.exam-card-head,.exam-section-head,.academics-item,.billing-summary-head,.billing-line,.bus-status-head,.daily-update-head,.daily-update-footer{align-items:stretch;flex-direction:column}.toolbar,.chip-row,.academics-item-actions,.student-directory-actions,.user-table-actions,.user-table-inline{width:100%;flex-wrap:wrap}.toolbar>*,.student-directory-toolbar .search-input,.fee-search-input,.fee-view-select,.search-input,.form-group input,.primary-button,.secondary-button,.danger-button,.success-button,.warning-button{min-width:0;width:100%;max-width:100%}.report-section,.users-table-wrap,.table-wrap,.student-directory-table-wrap,.mark-entry-table-wrap,.mark-consolidated-table-wrap,.disclosure-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.report-marks-table{min-width:560px}.professional-report-card,.mark-consolidated-print{overflow:hidden}.public-nav,.nav{grid-template-columns:minmax(0,1fr);width:100%}.public-nav a,.nav-link,.sub-nav-link{overflow-wrap:anywhere}}@media print{@page{size:A4 portrait;margin:5mm}@page mark-consolidated-page{size:A4 landscape;margin:8mm}html,body{background:#fff!important;width:auto;min-height:auto}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}.sidebar,.dashboard-footer,.page-header,.card-grid,.print-hide{display:none!important}.app-shell,.main-panel,.main-panel-body,.page{display:block!important;min-height:auto!important;padding:0!important;margin:0!important}.panel{border:0!important;box-shadow:none!important;padding:0!important;background:#fff!important}.panel-head{display:none!important}.professional-report-card{max-width:none;width:200mm;margin:0;border:1px solid #111827;border-radius:0;box-shadow:none;page-break-inside:avoid;break-inside:avoid;overflow:hidden}.report-school-header{grid-template-columns:64px minmax(0,1fr);gap:8px;padding:5mm 6mm 3mm;border-bottom-width:2px}.report-logo-box{width:58px;height:66px}.report-logo-box img{padding:5px 5px 8px}.report-school-details h2{font-size:16px;line-height:1.15}.report-school-details p{margin-top:2px;font-size:10px;line-height:1.25}.report-school-details strong{margin-top:4px;padding:3px 10px;font-size:9px}.report-subhead{padding:4px 6mm;font-size:10px}.report-student-band{grid-template-columns:minmax(0,1fr) 64px;gap:8px;padding:3.5mm 6mm}.report-student-grid{gap:6px}.report-info-item{padding:5px 7px}.report-info-item p{margin-bottom:2px;font-size:8px}.report-info-item strong{font-size:10px}.report-photo-frame{width:58px;height:74px;padding:4px;font-size:8px}.report-section{padding:3.5mm 6mm}.report-section h4{margin-bottom:6px;font-size:9px}.report-marks-table th,.report-marks-table td{padding:3px 5px;font-size:9px;line-height:1.1}.report-marks-table th{font-size:8px}.report-summary-grid{gap:5px;padding:3.5mm 6mm}.report-summary-grid div{padding:5px}.report-summary-grid p{margin-bottom:3px;font-size:8px}.report-summary-grid strong{font-size:14px}.report-summary-grid span{margin-top:1px;font-size:8px}.report-note{padding:3mm 6mm}.report-note p{margin-bottom:3px;font-size:8px}.report-note strong{margin-bottom:2px;font-size:10px}.report-note span{font-size:9px;line-height:1.25}.report-signature-row{gap:14px;padding:8mm 6mm 3mm}.report-signature-row span{padding-top:5px;font-size:9px}.report-school-header,.report-student-band,.report-section,.report-waiting-message,.report-summary-grid,.report-note,.report-signature-row{break-inside:avoid}body.print-mark-consolidated .page>:not(.mark-consolidated-section){display:none!important}body.print-mark-consolidated .mark-consolidated-section{display:block!important;padding:0!important;margin:0!important;border:0!important}body.print-mark-consolidated .mark-consolidated-print{page:mark-consolidated-page;width:281mm;margin:0;border:1px solid #111827;border-radius:0;box-shadow:none;overflow:visible;break-inside:avoid}body.print-mark-consolidated .mark-consolidated-head{grid-template-columns:48px minmax(0,1fr);gap:8px;padding:4mm 5mm 3mm;border-bottom-width:1px}body.print-mark-consolidated .mark-consolidated-logo{width:42px;height:50px}body.print-mark-consolidated .mark-consolidated-logo img{padding:3px}body.print-mark-consolidated .mark-consolidated-head h2{font-size:14px;line-height:1.1}body.print-mark-consolidated .mark-consolidated-head p{margin-top:2px;font-size:8px;line-height:1.2}body.print-mark-consolidated .mark-consolidated-head strong{margin-top:3px;font-size:8px}body.print-mark-consolidated .mark-consolidated-meta{padding:3px 5mm;font-size:8px}body.print-mark-consolidated .mark-consolidated-table{font-size:8.5px;table-layout:auto}body.print-mark-consolidated .mark-consolidated-table th,body.print-mark-consolidated .mark-consolidated-table td{padding:2px 3px;line-height:1.1}body.print-mark-consolidated .mark-consolidated-table th{font-size:8px}body.print-mark-consolidated .mark-consolidated-table th span{margin-top:1px;font-size:7px}body.print-mark-consolidated .mark-consolidated-name{white-space:normal;min-width:30mm}body.print-mark-consolidated .mark-consolidated-footer{gap:36px;padding:10mm 18mm 3mm}body.print-mark-consolidated .mark-consolidated-footer span{padding-top:4px;font-size:8px}}.attendance-register-wrap{overflow-x:auto;max-width:100%}.users-table.attendance-register{table-layout:fixed;width:100%;min-width:0;font-size:12px}.attendance-register th,.attendance-register td{padding:4px 1px;text-align:center}.attendance-register th{letter-spacing:0;font-size:11px}.attendance-register .attendance-name-col{width:150px;text-align:left;padding-left:8px;white-space:normal;overflow:hidden;text-overflow:ellipsis}.attendance-register .attendance-total-col{width:64px;white-space:nowrap}.attendance-register select.attendance-cell{width:100%;min-width:0;padding:3px 0;border-radius:4px;font-size:12px;font-weight:600;text-align:center;text-align-last:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer}.attendance-register select.attendance-cell:disabled{cursor:not-allowed;opacity:.5}.attendance-register select.attendance-cell[data-status=Absent]{background:#fde2e2;color:#b42318}.attendance-register select.attendance-cell[data-status=Holiday]{background:#e8ecf1;color:#617285}
