:root{--bg:#f5f7fb;--card:#fff;--text:#172033;--muted:#657089;--line:#dfe5ef;--accent:#5b3df5;--accent2:#00a6a6;--danger:#c62828;--shadow:0 12px 35px rgba(31,42,70,.08)}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.site-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px max(18px,calc((100vw - 1180px)/2));background:#101b38;color:#fff;position:sticky;top:0;z-index:20}.brand{text-decoration:none;font-weight:800;letter-spacing:.2px}.user-chip{font-size:12px;background:rgba(255,255,255,.12);padding:7px 10px;border-radius:999px}.page-shell{max-width:1180px;margin:0 auto;padding:24px 18px 50px}.hero{background:linear-gradient(135deg,#3421c9,#7a4df7 56%,#00a6a6);border-radius:26px;color:white;padding:42px;box-shadow:var(--shadow)}.hero h1{font-size:clamp(30px,5vw,58px);line-height:1.02;margin:8px 0 15px}.hero p{max-width:700px}.phones{font-weight:700}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:800;letter-spacing:1.7px;opacity:.8}.action-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px;margin-top:20px}.action-card{display:flex;flex-direction:column;gap:9px;text-decoration:none;background:#fff;border:1px solid var(--line);padding:25px;border-radius:20px;box-shadow:var(--shadow);min-height:130px;justify-content:center}.action-card.primary{background:#fff2c7;border:2px solid #f0b829;transform:translateY(-2px)}.action-card strong{font-size:19px}.action-card span,.muted{color:var(--muted)}.panel,.auth-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow);margin-bottom:20px}.auth-card{max-width:480px;margin:70px auto}.center{text-align:center}.btn{appearance:none;border:0;background:#e9edf6;color:#18243c;padding:11px 16px;border-radius:12px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px}.primary-btn{background:var(--accent);color:#fff}.secondary-btn{background:#edf0f6}.danger-btn{background:#ffe3e3;color:#9b1c1c}.button-row{display:flex;gap:10px;flex-wrap:wrap}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin:10px 0 18px}.section-head h1{margin:4px 0 4px}.version-chip{background:#e9e4ff;color:#4329bf;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.progress{height:9px;background:#e7ebf4;border-radius:999px;overflow:hidden}.progress-bar{height:100%;width:14.28%;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:.2s}.step-dots{display:flex;overflow:auto;gap:8px;padding:13px 0 18px}.step-dots span{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#eef1f7;font-size:12px}.form-step{display:none}.form-step.active{display:block}.form-step h2{margin-top:0}.field-row,label{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-weight:650}.field-row small{color:var(--muted);font-weight:400}input,select,textarea{width:100%;border:1px solid #cfd7e5;border-radius:11px;padding:12px 13px;font:inherit;background:#fff;color:var(--text)}textarea{min-height:90px;resize:vertical}.req{color:#c82333}.radio-row{display:flex;gap:10px;flex-wrap:wrap}.radio-row label,.consent{flex-direction:row;align-items:flex-start;font-weight:500}.radio-row input,.consent input,.check-card input{width:auto;margin-top:3px}.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.check-card{background:#f7f8fc;border:1px solid var(--line);padding:13px;border-radius:12px;flex-direction:row;align-items:center}.upload-box{border:1px dashed #b8c1d2;padding:14px;border-radius:14px}.file-preview{padding:10px 0;color:var(--muted)}.two-col,.two-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-nav{display:flex;justify-content:space-between;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.nav-right{display:flex;gap:8px;flex-wrap:wrap}.rules-box{max-height:340px;overflow:auto;background:#fafbfe;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:17px}.rules-box li{margin-bottom:9px;line-height:1.45}.privacy-note,.alert{padding:12px 14px;border-radius:12px;background:#eef6ff;color:#325a7b}.alert.danger{background:#ffe6e6;color:#8a1717}.review-box{display:grid;gap:8px}.review-item{display:grid;grid-template-columns:190px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #edf0f5}.review-item b{font-size:13px}.application-no{display:inline-block;font-size:24px;font-weight:900;background:#eef0ff;padding:12px 18px;border-radius:14px;margin:8px}.success-mark{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#e3f8e8;color:#16853e;font-size:34px;margin:0 auto}.admin-nav{display:flex;align-items:center;gap:7px;overflow:auto;padding:6px 0 15px}.admin-nav a,.admin-nav button{white-space:nowrap;text-decoration:none;border:0;background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:10px;cursor:pointer}.admin-nav form{margin-left:auto}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:18px}.stats>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.stats b{display:block;font-size:28px}.stats span{font-size:12px;color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;text-transform:uppercase;color:var(--muted)}.empty{padding:30px;text-align:center;background:#fafbfe;border-radius:14px;color:var(--muted)}.filter-bar{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin-bottom:15px}.details{display:grid;grid-template-columns:180px 1fr;gap:8px 14px}.details dt{font-weight:800}.details dd{margin:0}.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.doc-card{display:flex;flex-direction:column;gap:5px;border:1px solid var(--line);border-radius:12px;padding:14px;text-decoration:none}.doc-card span,.doc-card small{color:var(--muted)}hr{border:0;border-top:1px solid var(--line);margin:22px 0}.note{border-top:1px solid var(--line);padding:12px 0}.note small{display:block;color:var(--muted)}.grid-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.inline-editor,.rule-editor,.trash-row{display:grid;align-items:center;gap:10px;border-top:1px solid var(--line);padding:12px 0}.inline-editor{grid-template-columns:150px 1.5fr 1.5fr 90px auto auto auto}.rule-editor{grid-template-columns:35px 1fr 90px auto auto}.field-meta{display:flex;flex-direction:column}.field-meta small{color:var(--muted)}.trash-row{grid-template-columns:1fr auto}.trash-row>div{display:flex;flex-direction:column;gap:4px}.footer{text-align:center;color:var(--muted);font-size:12px;padding:25px}.error-icon{width:55px;height:55px;border-radius:50%;background:#ffe1e1;color:#ad1d1d;display:grid;place-items:center;font-size:30px;font-weight:900;margin:auto}
@media(max-width:900px){.action-grid{grid-template-columns:1fr 1fr}.action-card.primary{grid-column:1/-1}.stats{grid-template-columns:repeat(2,1fr)}.two-panel,.two-col,.grid-form{grid-template-columns:1fr}.doc-grid{grid-template-columns:1fr 1fr}.inline-editor{grid-template-columns:1fr}.rule-editor{grid-template-columns:28px 1fr}.rule-editor input,.rule-editor label,.rule-editor button{grid-column:2}.subject-grid{grid-template-columns:1fr 1fr}.filter-bar{grid-template-columns:1fr}.hero{padding:28px}}
@media(max-width:600px){.page-shell{padding:15px 12px 35px}.site-header{padding:12px}.brand{font-size:13px}.user-chip{display:none}.hero{border-radius:18px}.action-grid{grid-template-columns:1fr}.action-card.primary{grid-column:auto}.panel{padding:17px;border-radius:15px}.subject-grid,.doc-grid{grid-template-columns:1fr}.form-nav{align-items:stretch}.nav-right{flex-direction:column}.form-nav>.btn,.nav-right .btn{width:100%}.details{grid-template-columns:1fr}.details dd{padding-bottom:9px}.review-item{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.section-head{flex-direction:column}.trash-row{grid-template-columns:1fr}.button-row{width:100%}}

/* v1.1 simplified single-page admission form */
.single-form{max-width:980px;margin:0 auto}.admission-heading{border-bottom:1px solid var(--line);padding-bottom:18px}.form-section{padding:8px 0 28px;border-bottom:1px solid var(--line);margin-bottom:26px}.form-section-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}.form-section-title>span{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:#eae6ff;color:#4b31d1;font-weight:900}.form-section-title h2{margin:0 0 3px;font-size:22px}.form-section-title p{margin:0;color:var(--muted);font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.documents-grid>.field-row{min-width:0}.radio-choice{border:1px solid var(--line);border-radius:11px;padding:10px 13px;margin:0;background:#fff;cursor:pointer}.radio-choice:has(input:checked){border-color:#6c52ed;background:#f2efff}.upload-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.file-pick{margin:0}.file-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.file-preview img{display:block;max-width:220px;max-height:170px;object-fit:contain;border:1px solid var(--line);border-radius:10px;margin-top:9px;background:#fff}.file-name{overflow-wrap:anywhere}.pdf-badge{display:inline-block;margin-top:9px;padding:7px 10px;border-radius:8px;background:#f1f3f8;font-weight:700}.rules-scroll{max-height:430px;overflow:auto;border:1px solid #cfd7e5;border-radius:14px;background:#fafbfe;padding:18px 20px;scrollbar-gutter:stable}.rules-scroll li{margin:0 0 11px;line-height:1.55}.rules-version{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:13px}.rules-version span{color:var(--muted)}.rules-end-marker{text-align:center;margin:20px 0 14px;padding:10px;border-top:2px dashed var(--line);border-bottom:2px dashed var(--line);font-size:12px;font-weight:900;letter-spacing:.8px;text-transform:uppercase;color:var(--muted)}.agreement-box{background:#fff;border:1px solid #cdd5e4;border-radius:13px;padding:16px}.important-consent{font-weight:800}.signature-grid{margin-top:14px}.submit-section{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#f8f9fd;border:1px solid var(--line);border-radius:16px;padding:20px}.submit-section h2{margin:0 0 5px}.submit-section p{margin:0;color:var(--muted);font-size:14px}.submit-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.submit-main{min-width:260px}.field-invalid input,.field-invalid select,.field-invalid textarea,.field-invalid .radio-choice,.field-invalid.agreement-box{border-color:#c62828}.validation-msg{color:#b42318;font-size:12px;margin-top:-8px;margin-bottom:8px}.draft-modal{position:fixed;inset:0;background:rgba(10,18,38,.58);z-index:100;display:grid;place-items:center;padding:18px}.draft-card{width:min(560px,100%);background:#fff;border-radius:18px;padding:22px;box-shadow:0 22px 70px rgba(0,0,0,.25)}.draft-card h3{margin-top:0}.draft-card input{margin:10px 0}.copy-status{display:block;color:var(--muted);margin-top:8px}.rules-consent-section .consent{margin-bottom:12px}
@media(max-width:760px){.form-grid{grid-template-columns:1fr}.submit-section{align-items:stretch;flex-direction:column}.submit-actions{width:100%;flex-direction:column}.submit-actions .btn,.submit-main{width:100%;min-width:0}.rules-scroll{max-height:390px;padding:15px}.signature-grid{grid-template-columns:1fr}.radio-row{gap:8px}.radio-choice{flex:1 1 120px}.single-form{padding:15px}}
.form-builder-add textarea,.field-editor-card textarea{min-height:92px}.field-editor-card{border:1px solid var(--line);border-radius:15px;padding:16px;margin:14px 0;background:#fbfcff}.field-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.field-editor-head>div:first-child{display:flex;flex-direction:column;gap:3px}.field-editor-head small{color:var(--muted)}.compact-check{flex-direction:row;align-items:center;margin:0;font-size:13px}.compact-check input{width:auto}.field-editor-actions{display:flex;justify-content:flex-end;margin-top:10px}@media(max-width:700px){.field-editor-head{flex-direction:column}.field-editor-actions .btn{width:100%}}
.manager-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.manager-title h2{margin-bottom:3px}.sortable-list{display:flex;flex-direction:column;gap:10px}.sortable-item{display:grid;grid-template-columns:34px 38px 1fr;align-items:center;gap:10px;border:1px solid var(--line);background:#fbfcff;border-radius:14px;padding:12px}.sortable-item.dragging{opacity:.45}.drag-handle{font-size:22px;cursor:grab;color:#6b7890;user-select:none;text-align:center}.auto-number{font-weight:800}.simple-rule-editor{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px}.simple-rule-editor textarea{margin:0;min-height:68px}.simple-field-main{display:grid;grid-template-columns:1.4fr .7fr 1.2fr;gap:8px}.simple-field-main textarea{min-height:46px}.simple-field-actions{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.simple-add-grid{display:grid;grid-template-columns:1.2fr .8fr 1.5fr auto auto;gap:10px;align-items:end}.simple-add-grid label{margin:0}.simple-add-grid textarea{min-height:46px}.subject-add{display:flex;gap:10px;margin-bottom:14px}.subject-add input{max-width:430px}.compact-sortable .sortable-item{padding:9px 12px}.subject-manager-row{grid-template-columns:34px 38px 1fr auto}.admission-only{margin:50px auto;max-width:1100px}.admission-only h1{font-size:clamp(30px,4vw,48px);margin:7px 0 10px}@media(max-width:800px){.manager-title{align-items:stretch;flex-direction:column}.simple-add-grid{grid-template-columns:1fr}.simple-rule-editor{grid-template-columns:1fr}.simple-field-main{grid-template-columns:1fr}.subject-manager-row{grid-template-columns:30px 32px 1fr}.subject-manager-row form{grid-column:3}.sortable-item.field-simple{grid-template-columns:30px 32px 1fr}.admission-only{margin:25px 0}.admission-callout.admission-only{grid-template-columns:1fr}}

/* v1.3.1 signature and print-action refinements */
.signature-upload .file-preview img{max-width:320px;max-height:120px;background:#fff;object-fit:contain}.admission-actions{display:flex;gap:10px;flex-wrap:wrap}.dashboard-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.dashboard-actions .btn{min-width:150px}.pdf-actions{display:flex;gap:8px;flex-wrap:wrap}.pdf-actions .btn{white-space:nowrap}@media(max-width:700px){.admission-actions,.dashboard-actions,.pdf-actions{flex-direction:column}.admission-actions .btn,.dashboard-actions .btn,.pdf-actions .btn{width:100%}}

/* v1.4.0 warm academic palette, portals, fees and faculty */
:root{--bg:#fbf7ef;--card:#fffdf8;--text:#102f2b;--muted:#68756e;--line:#dfddd3;--accent:#165b4f;--accent2:#2f8d76;--orange:#ef764d;--cream:#fff7e7;--pale:#eef5cc;--yellow:#f4c95d;--shadow:0 14px 35px rgba(33,70,61,.09)}
body{background:var(--bg);color:var(--text)}
.site-header{background:#154f45;color:#fff;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px}.brand-mark{background:#f3c95d;color:#154f45}.brand b{color:#d9efe8}.public-login-nav{display:flex;gap:8px;margin-left:auto}.public-login-nav a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.35);padding:9px 13px;border-radius:10px;font-weight:800;font-size:13px}.public-login-nav a:hover{background:rgba(255,255,255,.12)}
.footer{max-width:none;display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;background:#f5efe3;border-top:1px solid var(--line);padding:24px;color:#49645d}.footer div{display:flex;flex-direction:column;gap:3px}.footer-admin{color:#154f45;text-decoration:none;font-weight:800;border:1px solid #c8c7bc;background:#fff;padding:9px 13px;border-radius:10px}
.eyebrow{color:#2b7564}.primary-btn{background:#165b4f}.orange-btn{background:var(--orange);color:#fff}.light-btn{background:#fff;color:#154f45}.text-link{display:inline-block;margin-top:16px;color:#165b4f;font-weight:700}
.home-admission-card{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;background:#fffdf8;border:1px solid var(--line);border-radius:24px;padding:34px 38px;box-shadow:var(--shadow);margin:18px 0 34px;border-top:7px solid #165b4f}.home-admission-card h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,5vw,54px);line-height:1.03;margin:8px 0 10px;color:#173b35}.home-admission-card p{font-size:16px;color:var(--muted)}.home-admission-btn{display:flex;align-items:center;gap:20px;min-width:290px;justify-content:space-between;background:var(--orange);color:#fff;text-decoration:none;padding:18px 21px;border-radius:14px;font-weight:900;box-shadow:0 12px 25px rgba(239,118,77,.24)}.home-admission-btn b{font-size:24px}
.home-section{background:#fffdf8;border:1px solid var(--line);border-radius:22px;padding:26px;margin:22px 0;box-shadow:var(--shadow)}.home-section-head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:18px}.home-section-head h2{font-family:Georgia,'Times New Roman',serif;font-size:30px;margin:4px 0}.home-section-head p{color:var(--muted);margin:4px 0}
.teacher-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.teacher-card{background:#fff;border:1px solid var(--line);border-radius:17px;overflow:hidden;min-width:0}.teacher-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#e5eee8}.teacher-placeholder{display:grid;place-items:center;font-size:30px;font-weight:900;color:#165b4f}.teacher-card-body{padding:16px}.teacher-card h3{font-family:Georgia,'Times New Roman',serif;font-size:22px;margin:0 0 4px}.teacher-designation{margin:0 0 10px;color:#65736d}.teacher-bio{font-size:13px;color:var(--muted);line-height:1.45}.subject-tags{display:flex;gap:6px;flex-wrap:wrap}.subject-tags span,.subject-tag-single{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef5cc;color:#315a35;border:1px solid #dce8a8;font-size:12px;font-weight:800;cursor:default;user-select:none}
.portal-hero,.admin-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#165b4f;color:#fff;border-radius:22px;padding:28px 30px;margin-bottom:22px}.portal-hero h1,.admin-hero h1{font-family:Georgia,'Times New Roman',serif;font-size:40px;margin:5px 0}.portal-hero p,.admin-hero p{margin:0;color:#d8ebe6}.portal-hero .eyebrow,.admin-hero .eyebrow{color:#f4c95d}.admin-hero-badge{padding:9px 12px;border-radius:999px;background:#f4c95d;color:#244d43;font-weight:900;font-size:12px}
.fee-finder-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}.fee-finder-form label{margin:0}.fee-result{margin-top:18px;padding:20px;border-radius:16px;background:#f1f6d4;border:1px solid #d5df9c}.fee-result h3{margin:0 0 8px;font-family:Georgia,'Times New Roman',serif}.fee-result .fee-amount{font-size:32px;font-weight:900;color:#165b4f}.fee-match{padding:14px 0;border-bottom:1px solid #d5df9c}.fee-match:last-child{border-bottom:0}.fee-match p{margin:6px 0;color:#55635d}.profile-summary{display:grid;grid-template-columns:160px 1fr;gap:20px;align-items:center}.teacher-photo.large{aspect-ratio:1;border-radius:18px}.notice-card{margin-top:18px;background:#fff6df;border:1px solid #ead8ad;border-radius:14px;padding:15px;color:#69582d}
.admin-nav a,.admin-nav button{background:#fffdf8;border-color:#d9d6ca}.admin-nav a:hover{background:#eef5cc}.dashboard-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}.metric-card{display:flex;flex-direction:column;min-height:150px;padding:20px;border-radius:17px;text-decoration:none;border:1px solid var(--line);box-shadow:var(--shadow)}.metric-card span{font-weight:900}.metric-card b{font-family:Georgia,'Times New Roman',serif;font-size:38px;margin:8px 0}.metric-card small{margin-top:auto}.metric-card.green{background:#165b4f;color:#fff}.metric-card.cream{background:#fff3df}.metric-card.orange{background:#f9d8c8}.metric-card.teal{background:#d8eee7}.metric-card.yellow{background:#f7e7a9}.metric-card.soft{background:#eef5cc}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.quick-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quick-action{display:flex;flex-direction:column;gap:4px;text-decoration:none;border:1px solid var(--line);background:#fff9ef;padding:15px;border-radius:14px}.quick-action b{color:#165b4f}.quick-action span{font-size:12px;color:var(--muted)}.dashboard-alerts .alert-line{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.dashboard-alerts .alert-line b{font-size:25px;color:#ef764d}.status-pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef5cc;font-size:11px;font-weight:800;text-transform:capitalize}
.fee-admin-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:10px;align-items:end}.fee-admin-grid .wide{grid-column:1/-2}.fee-admin-row{grid-template-columns:34px 38px 1fr}.fee-admin-row form{display:grid;grid-template-columns:1fr 1fr 1fr 145px 1.4fr auto auto auto auto;gap:8px;align-items:center}.fee-admin-row textarea{min-height:46px}.money-input{position:relative}.money-input span{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-weight:900}.money-input input{padding-left:28px}
.teacher-add-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.teacher-add-grid .wide{grid-column:1/-1}.subject-checks{display:flex;gap:7px;flex-wrap:wrap;border:1px solid #cfd7e5;border-radius:11px;padding:10px;background:#fff}.subject-checks label{flex-direction:row;margin:0;padding:5px 8px;border-radius:999px;background:#f2f6e4;font-size:12px}.subject-checks input{width:auto}.teacher-admin-row{grid-template-columns:34px 38px 70px 1fr}.teacher-mini-photo{width:64px;height:64px;border-radius:12px;object-fit:cover;background:#e4eee9}.teacher-mini-photo.placeholder{display:grid;place-items:center;font-weight:900;color:#165b4f}.teacher-admin-row form{display:grid;grid-template-columns:1fr 1fr 150px 1fr 190px 1.5fr 1.5fr auto auto auto;gap:8px;align-items:center}.teacher-admin-row textarea{min-height:54px}.subject-checks.compact{max-height:110px;overflow:auto}.account-grid{display:grid;grid-template-columns:1fr 1fr 180px 1fr auto;gap:10px;align-items:end}
.portal-auth{border-top:6px solid #165b4f}.portal-auth h1{font-family:Georgia,'Times New Roman',serif}
@media(max-width:1000px){.teacher-card-grid{grid-template-columns:repeat(2,1fr)}.fee-finder-form{grid-template-columns:1fr 1fr}.fee-finder-form .btn{grid-column:1/-1}.dashboard-metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.fee-admin-row form,.teacher-admin-row form{grid-template-columns:1fr 1fr}.fee-admin-grid,.teacher-add-grid,.account-grid{grid-template-columns:1fr 1fr}.fee-admin-grid .wide,.teacher-add-grid .wide{grid-column:1/-1}}
@media(max-width:700px){.site-header{align-items:flex-start}.brand{max-width:250px}.public-login-nav{order:3;width:100%}.public-login-nav a{flex:1;text-align:center}.home-admission-card{grid-template-columns:1fr;padding:25px 20px}.home-admission-btn{min-width:0;width:100%}.teacher-card-grid{grid-template-columns:1fr}.portal-hero,.admin-hero{align-items:flex-start;flex-direction:column}.portal-hero h1,.admin-hero h1{font-size:32px}.fee-finder-form,.dashboard-metrics,.quick-action-grid,.fee-admin-grid,.teacher-add-grid,.account-grid{grid-template-columns:1fr}.fee-admin-grid .wide,.teacher-add-grid .wide{grid-column:auto}.fee-admin-row,.teacher-admin-row{grid-template-columns:30px 32px 1fr}.teacher-admin-row .teacher-mini-photo{grid-column:3}.fee-admin-row form,.teacher-admin-row form{grid-column:3;grid-template-columns:1fr}.profile-summary{grid-template-columns:1fr}.profile-summary .teacher-photo{max-width:190px}.footer{justify-content:space-between}.user-chip{display:none}}

/* v1.5.0 public landing, finance dashboard and payment summaries */
.public-hero-clean{position:relative;overflow:hidden;background:linear-gradient(135deg,#104c42 0%,#176252 68%,#214f46 100%);color:#fff;border-radius:22px;padding:18px 32px;margin:14px 0 20px;box-shadow:var(--shadow)}
.public-hero-clean:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:rgba(244,201,93,.12);right:-55px;top:-72px}.public-hero-clean .eyebrow{color:#f4c95d}.public-hero-clean h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(30px,4.2vw,46px);line-height:1;margin:5px 0 7px;max-width:720px}.public-hero-clean h1 em{font-style:normal;color:#f4c95d}.public-hero-clean p{max-width:720px;color:#dcebe7;font-size:14px;margin:5px 0}.hero-pills{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.hero-pills span{border:1px solid rgba(255,255,255,.28);padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800}.hero-cta{width:max-content;min-width:270px;margin-top:5px;background:#ef764d;min-height:44px;padding:10px 16px}.public-fee-card{border-top:6px solid #ef764d}.fee-pop{box-shadow:0 16px 34px rgba(33,70,61,.12);border-left:6px solid #165b4f}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.why-grid>div{background:#f8f3e8;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;flex-direction:column;gap:6px}.why-grid b{font-family:Georgia,'Times New Roman',serif;font-size:20px;color:#165b4f}.why-grid span{font-size:13px;color:var(--muted)}
.finance-strip,.finance-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:0 0 20px}.finance-card{display:flex;flex-direction:column;gap:8px;border-radius:16px;padding:18px;border:1px solid var(--line);text-decoration:none;box-shadow:var(--shadow);min-width:0}.finance-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.4px}.finance-card b{font-family:Georgia,'Times New Roman',serif;font-size:28px;overflow-wrap:anywhere}.finance-card.green{background:#165b4f;color:#fff}.finance-card.cream{background:#fff3df}.finance-card.orange{background:#f9d8c8}.finance-card.yellow{background:#f7e7a9}.finance-card.teal{background:#d8eee7}.finance-entry-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.finance-entry-form .wide{grid-column:1/-1}.teacher-pay-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.teacher-pay-grid>div{background:#f8f3e8;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;flex-direction:column;gap:8px}.teacher-pay-grid span{font-size:12px;text-transform:uppercase;font-weight:900;color:var(--muted)}.teacher-pay-grid b{font-family:Georgia,'Times New Roman',serif;font-size:30px;color:#165b4f}
@media(max-width:1000px){.finance-strip,.finance-metrics{grid-template-columns:repeat(2,1fr)}.why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.public-hero-clean{padding:16px 18px}.hero-cta{min-width:0;width:100%}.finance-strip,.finance-metrics,.teacher-pay-grid,.finance-entry-form,.why-grid{grid-template-columns:1fr}.finance-entry-form .wide{grid-column:auto}}

/* v1.5.2 runtime health and diagnostics */
.health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 20px}.health-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff}.health-card span{font-size:12px;font-weight:900;text-transform:uppercase;color:var(--muted)}.health-card b{font-family:Georgia,'Times New Roman',serif;font-size:24px}.health-card small{overflow-wrap:anywhere;color:var(--muted)}.health-card.ok{border-left:6px solid #2f7d5b;background:#f2f8f1}.health-card.bad{border-left:6px solid #c62828;background:#fff2f2}@media(max-width:900px){.health-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.health-grid{grid-template-columns:1fr}}

/* v1.5.4 finance split panels, lecture logs and study materials */
.account-split-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch;margin-bottom:20px}.compact-finance-panel,.account-summary-panel{margin-bottom:0}.compact-finance-panel .finance-entry-form{grid-template-columns:1fr 1fr}.account-summary-panel{background:#fffdf8}.summary-stack{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.summary-stack>div{background:#f8f3e8;border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px}.summary-stack span{font-size:11px;font-weight:900;text-transform:uppercase;color:var(--muted)}.summary-stack b{font-family:Georgia,'Times New Roman',serif;font-size:24px;color:#165b4f}.lecture-form,.material-upload-form{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}.lecture-form .wide,.material-upload-form .wide{grid-column:1/-1}.lecture-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.lecture-card{display:grid;grid-template-columns:130px 1fr;gap:15px;background:#fffdf8;border:1px solid var(--line);border-radius:16px;padding:16px}.lecture-date{display:flex;flex-direction:column;gap:5px;border-right:1px solid var(--line);padding-right:12px}.lecture-date b{color:#165b4f}.lecture-date span{font-size:12px;color:var(--muted)}.lecture-card h3{margin:0 0 3px;font-family:Georgia,'Times New Roman',serif;color:#165b4f}.lecture-card p{margin:0 0 9px}.lecture-card small{display:block;margin-top:8px;color:var(--muted)}.material-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.material-card{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fffdf8;border:1px solid var(--line);border-radius:16px;padding:18px}.material-card h3{font-family:Georgia,'Times New Roman',serif;color:#165b4f;margin:5px 0}.material-card p{margin:4px 0}.material-card small{color:var(--muted)}.material-type{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f7e7a9;color:#5c4b14;font-size:11px;font-weight:900;text-transform:uppercase}.material-card .btn{flex:0 0 auto}.home-section{margin-bottom:22px}.home-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}.home-section-head h2{margin:4px 0}.home-section-head p{margin:0;color:var(--muted)}
@media(max-width:1000px){.account-split-row{grid-template-columns:1fr}.lecture-form,.material-upload-form{grid-template-columns:1fr 1fr}.lecture-form .wide,.material-upload-form .wide{grid-column:1/-1}.lecture-card-grid,.material-card-grid{grid-template-columns:1fr}}
@media(max-width:700px){.compact-finance-panel .finance-entry-form,.summary-stack,.lecture-form,.material-upload-form{grid-template-columns:1fr}.lecture-form .wide,.material-upload-form .wide{grid-column:auto}.lecture-card{grid-template-columns:1fr}.lecture-date{border-right:0;border-bottom:1px solid var(--line);padding:0 0 10px}.material-card{align-items:stretch;flex-direction:column}.material-card .btn{width:100%}}
