:root{--rems-primary:#4f46e5;--rems-secondary:#0ea5e9;--rems-accent:#f59e0b;--rems-bg:#f5f7ff;--rems-dark:#121a35}*{box-sizing:border-box}.rems-app{min-height:100vh;background:linear-gradient(135deg,#f7f9ff,#eef3ff);display:flex;font-family:Inter,Arial,sans-serif;color:#1f2937}.rems-sidebar{width:255px;background:linear-gradient(180deg,#121a35,#1a2450 55%,#162044);color:#fff;position:fixed;left:0;top:0;bottom:0;z-index:9999;box-shadow:14px 0 38px rgba(25,35,80,.18)}.rems-brand{display:flex;gap:12px;align-items:center;padding:22px 18px;border-bottom:1px solid rgba(255,255,255,.09)}.rems-brand-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,#6d63ff,#15b8ff);display:grid;place-items:center;font-weight:900;font-size:22px;box-shadow:inset 2px 2px 3px rgba(255,255,255,.32),0 8px 18px rgba(0,0,0,.3)}.rems-brand b{display:block}.rems-brand small{opacity:.7}.rems-sidebar nav{padding:16px 10px}.rems-sidebar nav a{display:flex;align-items:center;gap:11px;color:#dce3ff;text-decoration:none;padding:11px 12px;border-radius:12px;margin:3px 0;font-size:14px;transition:.2s}.rems-sidebar nav a:hover,.rems-sidebar nav a.active{background:linear-gradient(90deg,#584cff,#1599ff);color:white;transform:translateX(3px);box-shadow:0 8px 20px rgba(54,82,255,.28)}.rems-sidebar nav i{width:24px;text-align:center;font-style:normal}.rems-sidebar-foot{position:absolute;left:0;right:0;bottom:14px;text-align:center;font-size:11px;opacity:.55}.rems-main{margin-left:255px;width:calc(100% - 255px)}.rems-topbar{height:64px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:20;box-shadow:0 7px 24px rgba(40,55,110,.08)}.rems-topbar a{text-decoration:none}.rems-mobile-toggle{display:none;margin-right:10px}.rems-content{padding:26px}.rems-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.rems-title h1{margin:0;font-size:28px;color:#17204a}.rems-title p{margin:5px 0 0;color:#6b7280}.rems-btn{display:inline-block;border:0;border-radius:11px;background:linear-gradient(145deg,#4f46e5,#149fea);color:#fff!important;padding:11px 17px;font-weight:700;text-decoration:none;cursor:pointer;box-shadow:0 8px 18px rgba(79,70,229,.28)}.rems-mini{display:inline-block;padding:5px 9px;border-radius:8px;background:#eef2ff;text-decoration:none}.rems-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:20px}.rems-stat{min-height:135px;color:#fff;border-radius:18px;padding:20px;position:relative;overflow:hidden;box-shadow:0 15px 30px rgba(26,40,94,.17),inset 0 1px 1px rgba(255,255,255,.3);transform:perspective(800px) rotateX(1deg)}.rems-stat:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-35px;top:-35px;background:rgba(255,255,255,.16)}.rems-stat span,.rems-stat em{display:block}.rems-stat b{display:block;font-size:26px;margin:11px 0}.rems-stat em{font-style:normal;opacity:.82;font-size:12px}.c1{background:linear-gradient(135deg,#5b4bf5,#8b5cf6)}.c2{background:linear-gradient(135deg,#0ea5e9,#22c55e)}.c3{background:linear-gradient(135deg,#0f766e,#14b8a6)}.c4{background:linear-gradient(135deg,#f97316,#ef4444)}.rems-panel,.rems-report-card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 12px 30px rgba(37,51,107,.08);border:1px solid #edf0fa;margin-bottom:20px}.rems-panel h3{margin-top:0;color:#182151}.rems-grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rems-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rems-module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.rems-module-grid>div{background:linear-gradient(145deg,#f8faff,#edf2ff);border:1px solid #e4e8fa;padding:14px;border-radius:13px;text-align:center;font-weight:700;color:#334155;box-shadow:inset 2px 2px 4px #fff,3px 5px 12px rgba(51,65,85,.06)}.rems-form{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.rems-form.four{grid-template-columns:repeat(4,1fr)}.rems-form label{font-size:12px;font-weight:700;color:#44506c}.rems-form input,.rems-form select,.rems-form textarea{width:100%;margin-top:6px;border:1px solid #dce2f2;border-radius:10px;padding:10px 11px;background:#fbfcff;min-height:42px;outline:none}.rems-form textarea{min-height:90px}.rems-form input:focus,.rems-form select:focus,.rems-form textarea:focus{border-color:#665cf6;box-shadow:0 0 0 3px rgba(79,70,229,.09)}.rems-form .wide{grid-column:1/-1}.rems-table-wrap{overflow:auto}.rems-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.rems-table th{background:#182151;color:#fff;padding:11px;text-align:left;white-space:nowrap}.rems-table th:first-child{border-radius:10px 0 0 0}.rems-table th:last-child{border-radius:0 10px 0 0}.rems-table td{padding:10px;border-bottom:1px solid #edf0f7}.rems-table tr:nth-child(even) td{background:#fafbff}.rems-empty,.rems-alert{padding:18px;border-radius:12px;background:#fff7ed;color:#9a3412}.rems-muted{color:#6b7280}.rems-login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 20%,#775cff,transparent 35%),radial-gradient(circle at 80% 70%,#11bdf3,transparent 32%),linear-gradient(135deg,#111a3d,#253b83);font-family:Inter,Arial,sans-serif}.rems-login-card{width:min(430px,94vw);background:rgba(255,255,255,.96);border-radius:24px;padding:32px;box-shadow:0 28px 65px rgba(0,0,0,.28);text-align:center}.rems-logo-badge{width:72px;height:72px;border-radius:22px;margin:-5px auto 15px;display:grid;place-items:center;font-size:34px;background:linear-gradient(145deg,#fff,#dfe7ff);box-shadow:8px 8px 18px #cbd2e6,-8px -8px 18px #fff}.rems-login-card h1{font-size:24px;color:#182151;margin:8px 0}.rems-login-card p{color:#6b7280}.rems-login-card label{text-align:left;display:block;font-weight:700;font-size:13px}.rems-login-card input[type=text],.rems-login-card input[type=password]{width:100%;padding:12px;border:1px solid #d9dfef;border-radius:11px;margin:6px 0 13px}.rems-login-card input[type=submit]{width:100%;padding:12px;border:0;border-radius:11px;background:linear-gradient(145deg,#4f46e5,#0ea5e9);color:#fff;font-weight:800}.rems-powered{margin-top:18px;font-size:12px;color:#7b8196}.rems-center{text-align:center;padding:50px}.rems-report-card b{font-size:18px;color:#19234f}.rems-report-card p{color:#6b7280;min-height:42px}@media(max-width:1100px){.rems-cards{grid-template-columns:repeat(2,1fr)}.rems-form.four{grid-template-columns:repeat(2,1fr)}.rems-module-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:780px){.rems-sidebar{transform:translateX(-100%);transition:.25s}.rems-sidebar.open{transform:translateX(0)}.rems-main{margin-left:0;width:100%}.rems-mobile-toggle{display:inline-block;cursor:pointer}.rems-content{padding:14px}.rems-grid2,.rems-grid3,.rems-cards,.rems-form,.rems-form.four{grid-template-columns:1fr}.rems-module-grid{grid-template-columns:repeat(2,1fr)}.rems-title{align-items:flex-start;gap:10px}.rems-title h1{font-size:22px}}@media print{.rems-sidebar,.rems-topbar,.rems-btn{display:none!important}.rems-main{margin:0;width:100%}.rems-content{padding:0}.rems-panel{box-shadow:none;border:0}.rems-form{display:none}}
.rems-sidebar{overflow-y:auto}.rems-sidebar nav{padding-bottom:70px}.rems-cards.six{grid-template-columns:repeat(3,1fr)}.c5{background:linear-gradient(135deg,#be123c,#e11d48)}.c6{background:linear-gradient(135deg,#7c3aed,#db2777)}.rems-pill{display:inline-block;margin-left:10px;background:#eef2ff;color:#4338ca;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}.rems-success{padding:13px 16px;border-radius:12px;background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;margin-bottom:18px;font-weight:700}.rems-lock{min-height:100vh;display:grid;place-items:center;align-content:center;gap:10px;text-align:center;padding:30px;background:linear-gradient(135deg,#111827,#312e81);color:#fff;font-family:Inter,Arial,sans-serif}.rems-lock>div{font-size:62px}.rems-lock h2{margin:0;font-size:30px}.rems-lock p{max-width:580px;opacity:.82}.rems-module-grid small{font-weight:500;color:#64748b}.rems-panel input[type=file]{max-width:100%;padding:12px;background:#f8faff;border:1px dashed #c7d2fe;border-radius:12px}@media(max-width:1100px){.rems-cards.six{grid-template-columns:repeat(2,1fr)}}@media(max-width:780px){.rems-cards.six{grid-template-columns:1fr}.rems-pill{display:none}}

/* v2.1 public portal */
html,body.rems-standalone-body{margin:0!important;padding:0!important;min-height:100%;background:#eef2ff}.rems-standalone-body #wpadminbar{display:none!important}.rems-login-wide{width:min(520px,94vw)}.rems-login-sub{margin-bottom:18px}.rems-login-head{font-weight:900;color:#182151;background:#eef2ff;border:1px solid #dbe4ff;border-radius:12px;padding:10px;margin:16px 0}.rems-public-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px}.rems-reg-btn,.rems-admin-btn{display:block;text-decoration:none!important;padding:13px 14px;border-radius:12px;font-weight:900;box-shadow:0 8px 18px rgba(30,41,90,.12)}.rems-reg-btn{background:linear-gradient(145deg,#ecfdf5,#d1fae5);color:#047857!important;border:1px solid #a7f3d0}.rems-admin-btn{background:linear-gradient(145deg,#fff7ed,#ffedd5);color:#c2410c!important;border:1px solid #fed7aa}.rems-btn-light{background:#fff!important;color:#4338ca!important;border:1px solid #c7d2fe;box-shadow:none}.rems-public-page{min-height:100vh;padding:28px;display:grid;place-items:center;background:radial-gradient(circle at 10% 15%,rgba(99,102,241,.18),transparent 32%),radial-gradient(circle at 90% 80%,rgba(14,165,233,.18),transparent 34%),linear-gradient(135deg,#eef2ff,#f8fbff);font-family:Inter,Arial,sans-serif}.rems-public-shell{width:min(1050px,96vw);background:#fff;border-radius:24px;padding:28px;box-shadow:0 25px 70px rgba(32,45,100,.16);border:1px solid #e5e7ff}.rems-public-title{display:flex;align-items:center;gap:15px;margin-bottom:22px}.rems-public-title>span{width:64px;height:64px;border-radius:19px;display:grid;place-items:center;font-size:30px;background:linear-gradient(145deg,#eef2ff,#dbeafe);box-shadow:7px 7px 17px #d7dbea,-7px -7px 17px #fff}.rems-public-title h1{margin:0;color:#17204a;font-size:28px}.rems-public-title p{margin:5px 0 0;color:#64748b}.rems-reg-form{background:linear-gradient(145deg,#fbfcff,#f3f6ff);padding:20px;border-radius:18px;border:1px solid #e7ebfb}.rems-reg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.rems-reg-grid label{font-size:12px;font-weight:800;color:#475569}.rems-reg-grid input,.rems-reg-grid select{display:block;width:100%;margin-top:6px;padding:12px;border-radius:10px;border:1px solid #dbe2f2;background:white;outline:0}.rems-reg-grid input:focus,.rems-reg-grid select:focus{border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.10)}.rems-submit-wide{width:100%;margin-top:18px}.rems-public-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.rems-public-bottom a{text-decoration:none;color:#4338ca;font-weight:800}.rems-registration-success{text-align:center;max-width:700px;background:#fff;border-radius:24px;padding:40px;box-shadow:0 25px 60px rgba(31,41,90,.15);font-family:Inter,Arial,sans-serif}.rems-registration-success{font-size:38px}.rems-registration-success h2{font-size:28px;color:#166534}.rems-registration-success p{font-size:15px;color:#64748b;line-height:1.7}.rems-admin-login-wrap{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 20% 15%,#7c3aed55,transparent 30%),radial-gradient(circle at 85% 85%,#0ea5e955,transparent 30%),linear-gradient(145deg,#111827,#1e293b);font-family:Inter,Arial,sans-serif}.rems-admin-login-card{width:min(460px,94vw);padding:34px;background:#fff;border-radius:24px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.35)}.rems-admin-shield{width:74px;height:74px;margin:auto;display:grid;place-items:center;border-radius:22px;font-size:34px;background:linear-gradient(145deg,#f3e8ff,#dbeafe);box-shadow:8px 8px 18px #d6d8e2,-8px -8px 18px #fff}.rems-admin-login-card h1{margin:15px 0 6px;color:#111827}.rems-admin-login-card>p{margin:0 0 20px;color:#64748b}.rems-admin-login-card label{text-align:left;display:block;font-size:12px;font-weight:800;color:#475569}.rems-admin-login-card input[type=text],.rems-admin-login-card input[type=password]{width:100%;padding:12px;margin:6px 0 13px;border:1px solid #dbe2f2;border-radius:11px}.rems-admin-login-card input[type=submit]{width:100%;padding:12px;border:0;border-radius:11px;background:linear-gradient(145deg,#7c3aed,#2563eb);color:#fff;font-weight:900;cursor:pointer}.rems-public-card{font-family:Inter,Arial,sans-serif;background:#fff;min-height:100vh;display:grid;place-items:center;align-content:center;gap:12px}.rems-sidebar nav a{min-height:42px}.rems-sidebar nav{overflow:visible}
@media(max-width:700px){.rems-reg-grid{grid-template-columns:1fr}.rems-public-page{padding:12px}.rems-public-shell{padding:18px}.rems-public-title h1{font-size:22px}.rems-public-bottom{flex-direction:column}.rems-login-card,.rems-admin-login-card{padding:24px}}

/* v2.2.1 registration redesign - green commercial style */
.rems-reg-page-v221{background:linear-gradient(135deg,#effaf5,#f7fbf9)!important;padding:28px!important;place-items:center!important}
.rems-reg-shell-v221{width:min(1180px,96vw);background:#fff;border-radius:17px;overflow:hidden;box-shadow:0 18px 44px rgba(6,95,70,.13);border:1px solid #d9eee5;font-family:Arial,Helvetica,sans-serif}
.rems-reg-header-v221{display:flex;align-items:center;gap:18px;padding:20px 28px;background:linear-gradient(135deg,#07865f,#0aa174);color:#fff}
.rems-reg-icon-v221{width:68px;height:68px;border-radius:16px;background:#f3fffa;display:grid;place-items:center;font-size:34px;box-shadow:0 7px 15px rgba(0,0,0,.12)}
.rems-reg-header-v221 h1{margin:0 0 5px;font-size:30px;line-height:1.15;color:#fff;font-weight:800}
.rems-reg-header-v221 p{margin:0;color:#eefcf7;font-size:17px}
.rems-reg-form-v221{padding:28px 28px 12px;background:#fff}
.rems-reg-grid-v221{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}
.rems-reg-grid-v221 label{display:block;font-size:13px;font-weight:800;color:#17231f}
.rems-reg-grid-v221 label>span{color:#e11d48;margin-left:2px}
.rems-reg-grid-v221 input,.rems-reg-grid-v221 select{box-sizing:border-box;width:100%;height:46px;margin-top:7px;border:1px solid #c7ddd4;border-radius:9px;padding:0 13px;background:#fff;color:#111827;outline:0;font-size:14px;transition:.18s}
.rems-reg-grid-v221 input::placeholder{color:#8a9691}
.rems-reg-grid-v221 input:focus,.rems-reg-grid-v221 select:focus{border-color:#08966c;box-shadow:0 0 0 3px rgba(8,150,108,.10)}
.rems-password-box{position:relative;margin-top:7px}
.rems-password-box input{margin-top:0!important;padding-right:48px!important}
.rems-eye{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:36px;height:34px;border:0;background:transparent;color:#18372d;font-size:19px;cursor:pointer;border-radius:8px}
.rems-eye:hover{background:#eaf8f2}
.rems-reg-info-v221{display:flex;align-items:center;gap:13px;margin-top:20px;padding:13px 16px;border-radius:9px;background:#eaf8f2;border:1px solid #b9e0d1;color:#087151;font-size:13px;line-height:1.45}
.rems-reg-shield-v221{flex:0 0 auto;width:34px;height:34px;border-radius:50% 50% 48% 48%;display:grid;place-items:center;background:#0a9a6c;color:#fff;font-size:20px;font-weight:900;box-shadow:0 4px 10px rgba(10,154,108,.2)}
.rems-reg-submit-v221{width:100%;margin-top:16px;height:51px;border:0;border-radius:8px;background:linear-gradient(135deg,#087c58,#07966a);color:#fff;font-size:17px;font-weight:900;cursor:pointer;box-shadow:0 8px 16px rgba(5,128,90,.17);transition:.18s}
.rems-reg-submit-v221:hover{transform:translateY(-1px);filter:brightness(1.03)}
.rems-reg-or-v221{display:flex;align-items:center;gap:12px;margin:3px 28px 16px;color:#5f6f69;font-size:12px;font-weight:800}
.rems-reg-or-v221:before,.rems-reg-or-v221:after{content:"";height:1px;background:#d8e6e0;flex:1}
.rems-reg-or-v221 span{width:38px;height:38px;border:1px solid #d8e6e0;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 3px 9px rgba(15,23,42,.05)}
.rems-reg-actions-v221{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 28px 28px}
.rems-reg-actions-v221 a{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid #0a956b;border-radius:8px;text-decoration:none!important;color:#07865f!important;background:#fff;font-weight:900;font-size:15px;transition:.18s}
.rems-reg-actions-v221 a:hover{background:#effaf5;box-shadow:0 5px 14px rgba(7,134,95,.1)}
.rems-reg-footer-v221{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 28px;background:linear-gradient(135deg,#ffde64,#ffe889);color:#17231f;font-size:14px}
.rems-reg-footer-v221>div{display:flex;flex-direction:column;gap:3px}
.rems-reg-footer-v221 strong{font-size:15px}.rems-reg-footer-v221 small{font-size:12px}.rems-reg-footer-right-v221{text-align:right}
.rems-reg-primary-link{display:inline-block;margin-top:12px;padding:12px 18px;border-radius:8px;background:#07865f;color:#fff!important;text-decoration:none!important;font-size:14px}
@media(max-width:760px){.rems-reg-page-v221{padding:10px!important}.rems-reg-shell-v221{width:100%;border-radius:13px}.rems-reg-header-v221{padding:17px;gap:12px}.rems-reg-icon-v221{width:52px;height:52px;font-size:27px}.rems-reg-header-v221 h1{font-size:21px}.rems-reg-header-v221 p{font-size:13px;line-height:1.35}.rems-reg-form-v221{padding:18px 16px 10px}.rems-reg-grid-v221{grid-template-columns:1fr;gap:13px}.rems-reg-actions-v221{grid-template-columns:1fr;gap:10px;padding:0 16px 18px}.rems-reg-or-v221{margin-left:16px;margin-right:16px}.rems-reg-footer-v221{padding:13px 16px;align-items:flex-start;flex-direction:column}.rems-reg-footer-right-v221{text-align:left}.rems-reg-info-v221{align-items:flex-start}}

/* v2.2.2 registration request fields */
.rems-reg-grid-v221 textarea{box-sizing:border-box;width:100%;min-height:92px;margin-top:7px;border:1px solid #c7ddd4;border-radius:9px;padding:12px 13px;background:#fff;color:#111827;outline:0;font-size:14px;resize:vertical;font-family:inherit;transition:.18s}
.rems-reg-grid-v221 textarea:focus{border-color:#08966c;box-shadow:0 0 0 3px rgba(8,150,108,.10)}
.rems-reg-wide-v222{grid-column:1/-1}.rems-reg-actions-simple-v222{padding-top:20px}
.rems-reg-shell-v221{box-shadow:0 12px 24px rgba(6,95,70,.12),0 28px 70px rgba(6,95,70,.13)}
.rems-reg-form-v221{background:linear-gradient(180deg,#ffffff 0%,#fbfffd 100%)}
.rems-reg-grid-v221 input,.rems-reg-grid-v221 select,.rems-reg-grid-v221 textarea{box-shadow:inset 0 1px 2px rgba(15,23,42,.035),0 3px 9px rgba(6,95,70,.035)}
.rems-reg-submit-v221{box-shadow:0 7px 0 #056c4d,0 15px 25px rgba(5,128,90,.20);margin-bottom:7px}
.rems-reg-submit-v221:active{transform:translateY(4px);box-shadow:0 3px 0 #056c4d,0 8px 16px rgba(5,128,90,.18)}
@media(max-width:760px){.rems-reg-wide-v222{grid-column:auto}}
.rems-wp-admin-wrap{margin:0 20px 0 0;padding:20px}.rems-wp-admin-wrap .rems-title{margin-top:0}.rems-notify{display:inline-flex;align-items:center;gap:5px;text-decoration:none;background:#fff3cd;border:1px solid #ffe08a;border-radius:999px;padding:5px 10px;color:#8a5b00}.rems-pending-banner{display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#fff7d6,#fff);border:1px solid #f5c542;border-radius:16px;padding:14px 18px;margin:0 0 18px;box-shadow:0 8px 20px rgba(0,0,0,.06)}.rems-pending-banner>span{font-size:28px}.rems-pending-banner>div{flex:1}.rems-pending-banner small{display:block;margin-top:3px}.rems-school-control{border:1px solid #dbe5df;border-radius:16px;padding:16px;margin:14px 0;background:#fff;box-shadow:0 7px 18px rgba(0,0,0,.05)}.rems-school-control.is-pending{border-left:5px solid #f59e0b;background:linear-gradient(90deg,#fffaf0,#fff)}.rems-school-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.rems-school-head b{font-size:18px}.rems-school-head small{display:block;color:#667085;margin-top:3px}.rems-status{font-weight:800;font-size:11px;border-radius:999px;padding:6px 10px}.rems-status.inactive{background:#fff0d5;color:#9a5c00}.rems-status.active{background:#def7e7;color:#087a3c}.rems-school-details{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 16px;padding:14px 0;color:#344054}.rems-school-details .wide{grid-column:1/-1}.rems-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid #edf2ef;padding-top:14px}.rems-control-grid form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}.rems-control-grid input,.rems-control-grid select{min-height:40px;border:1px solid #cfdad4;border-radius:8px;padding:6px 10px}@media(max-width:900px){.rems-school-details{grid-template-columns:1fr 1fr}.rems-control-grid{grid-template-columns:1fr}.rems-control-grid form{grid-template-columns:1fr}.rems-pending-banner{align-items:flex-start;flex-wrap:wrap}}

/* v2.2.6 sidebar: remove top brand block and start menus at the top */
.rems-sidebar .rems-brand{display:none!important}.rems-sidebar nav.rems-nav-top{padding:8px 10px 70px!important;margin:0!important}.rems-sidebar nav.rems-nav-top a:first-child{margin-top:0!important}

/* v2.3.0 management workflow, lookup and document UI */
.rems-edit-details{margin:14px 0;border:1px solid #dce8e2;border-radius:12px;background:#f9fcfb;overflow:hidden}.rems-edit-details summary{cursor:pointer;padding:12px 15px;font-weight:800;color:#075e46;background:#eef9f4}.rems-edit-details .rems-form{padding:16px}.rems-delete-form{text-align:right;margin-top:12px}.rems-delete-btn{border:1px solid #fecaca;background:#fff1f2;color:#be123c;padding:9px 13px;border-radius:9px;font-weight:800;cursor:pointer}.rems-lookup{border-left:5px solid #0a956b!important;background:linear-gradient(135deg,#f0fdf7,#fff)!important}.rems-lookup-row{display:grid;grid-template-columns:1fr auto;gap:10px}.rems-lookup-row input{min-height:44px;border:1px solid #bad9cc;border-radius:10px;padding:8px 12px;font-size:15px}.rems-lookup-result{margin-top:12px;padding:11px 13px;border-radius:10px;background:#fff;border:1px dashed #c8ddd4;color:#475467}.rems-auto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 16px;color:#344054}.rems-pdfbar{display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(135deg,#fff8e7,#fff)!important;border-color:#f6d58a!important}.rems-payment-form input[readonly]{background:#f1f5f9;color:#475569}.rems-wp-admin-wrap .rems-cards{grid-template-columns:repeat(2,minmax(180px,1fr))}.rems-wp-admin-wrap .rems-stat{min-height:110px}
@media(max-width:780px){.rems-lookup-row{grid-template-columns:1fr}.rems-auto-grid{grid-template-columns:1fr}.rems-pdfbar{align-items:flex-start;flex-direction:column}}


/* v2.3.2 compact premium dashboard */
.rems-content{padding:18px 22px 0}
.rems-dashboard-stats{margin-top:0}
.rems-dashboard-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:4px 0 20px}
.rems-chart-card{background:linear-gradient(145deg,#ffffff,#f5f7ff);border:1px solid #e6eaf7;border-radius:18px;padding:16px 18px;box-shadow:0 16px 32px rgba(25,38,86,.10),inset 0 1px 0 rgba(255,255,255,.9);transform:perspective(1000px) rotateX(.5deg)}
.rems-chart-card h3{margin:0 0 6px;color:#17204a;font-size:16px}
.rems-chart-wide{grid-column:1/-1}
.rems-chart{display:block;width:100%;height:270px;filter:drop-shadow(0 10px 14px rgba(28,45,100,.12))}
.rems-chart-wide .rems-chart{height:300px}
.rems-chart-legend{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;font-size:11px;font-weight:800;color:#5a647d;margin-top:2px}
.rems-chart-legend span:before{content:'●';font-size:15px;margin-right:5px}.rems-chart-legend span:nth-child(1):before{color:#10b981}.rems-chart-legend span:nth-child(2):before{color:#f43f5e}.rems-chart-legend span:nth-child(3):before{color:#8b5cf6}
.rems-page-footer{text-align:center;padding:13px 10px 15px;margin-top:12px;border-top:1px solid #e8ecf7;color:#69738a;font-size:12px;font-weight:700;background:rgba(255,255,255,.72)}
.rems-sidebar nav.rems-nav-top{padding:6px 8px 62px!important}
.rems-sidebar nav a{min-height:34px!important;padding:5px 9px!important;margin:1px 0!important;gap:8px!important;border-radius:9px!important;font-size:12px!important}
.rems-sidebar nav i{width:27px!important;min-width:27px!important;font-size:18px!important;line-height:22px!important;filter:saturate(1.55) brightness(1.18) drop-shadow(0 1px 2px rgba(0,0,0,.35));text-shadow:0 0 6px rgba(255,255,255,.18)}
.rems-sidebar nav a span{line-height:1.15}
.rems-sidebar nav a:hover,.rems-sidebar nav a.active{transform:translateX(2px)!important}
@media(max-width:1100px){.rems-dashboard-charts{grid-template-columns:1fr}.rems-chart-wide{grid-column:auto}}
@media(max-width:780px){.rems-content{padding:12px 12px 0}.rems-chart{height:240px}.rems-chart-wide .rems-chart{height:260px}}
@media print{.rems-page-footer{display:block!important}}

/* v2.3.3 ultra-compact sidebar menu spacing */
.rems-sidebar nav.rems-nav-top{padding:3px 7px 56px!important}
.rems-sidebar nav a{
  min-height:27px!important;
  padding:2px 7px!important;
  margin:0!important;
  gap:6px!important;
  border-radius:7px!important;
  font-size:11.5px!important;
  line-height:1!important;
}
.rems-sidebar nav i{
  width:25px!important;
  min-width:25px!important;
  font-size:17px!important;
  line-height:20px!important;
}
.rems-sidebar nav a span{line-height:1!important;margin:0!important;padding:0!important}
.rems-sidebar nav a + a{margin-top:0!important}

/* v2.3.4 typography, brighter icons and responsive polish */
.rems-app,
.rems-login-wrap,
.rems-public-page,
.rems-lock,
.rems-wp-admin-wrap,
.rems-wp-admin-wrap input,
.rems-wp-admin-wrap select,
.rems-wp-admin-wrap textarea,
.rems-wp-admin-wrap button,
.rems-wp-admin-wrap table{
  font-family:Arial, Helvetica, sans-serif!important;
}

/* Compact but clearer sidebar typography */
.rems-sidebar nav.rems-nav-top{
  padding:3px 6px 54px!important;
}
.rems-sidebar nav a{
  min-height:30px!important;
  padding:2px 7px!important;
  margin:0!important;
  gap:7px!important;
  border-radius:8px!important;
  font-family:Arial, Helvetica, sans-serif!important;
  font-size:13.5px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  line-height:1.05!important;
  color:#f4f7ff!important;
}
.rems-sidebar nav a span{
  line-height:1.05!important;
  font-weight:600!important;
  text-shadow:0 1px 1px rgba(0,0,0,.25);
}
.rems-sidebar nav i{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:24px!important;
  min-width:24px!important;
  height:24px!important;
  font-size:19px!important;
  line-height:24px!important;
  border-radius:6px!important;
  background:rgba(255,255,255,.10)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 1px 3px rgba(0,0,0,.22)!important;
  filter:saturate(1.8) brightness(1.28) contrast(1.05) drop-shadow(0 1px 1px rgba(0,0,0,.30))!important;
  text-shadow:0 0 5px rgba(255,255,255,.35)!important;
}
.rems-sidebar nav a:hover i,
.rems-sidebar nav a.active i{
  background:rgba(255,255,255,.20)!important;
  filter:saturate(2) brightness(1.38) contrast(1.08) drop-shadow(0 1px 2px rgba(0,0,0,.30))!important;
}
.rems-sidebar nav a:hover,.rems-sidebar nav a.active{
  color:#fff!important;
  transform:translateX(1px)!important;
}

/* General form/table readability */
.rems-form label,.rems-reg-grid-v221 label{font-family:Arial,Helvetica,sans-serif!important;font-weight:600!important}
.rems-form input,.rems-form select,.rems-form textarea,
.rems-reg-grid-v221 input,.rems-reg-grid-v221 select,.rems-reg-grid-v221 textarea{
  font-family:Arial,Helvetica,sans-serif!important;
}
.rems-table{font-family:Arial,Helvetica,sans-serif!important}
.rems-table th{font-weight:700}

/* Safer responsive behaviour across dashboard/modules */
.rems-main,.rems-content,.rems-panel,.rems-chart-card,.rems-table-wrap{min-width:0}
.rems-content img,.rems-panel img{max-width:100%;height:auto}
.rems-chart{max-width:100%}
.rems-table-wrap{-webkit-overflow-scrolling:touch;max-width:100%}

@media(max-width:980px){
  .rems-form.four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rems-school-details{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .rems-dashboard-charts{grid-template-columns:1fr!important}
  .rems-chart-wide{grid-column:auto!important}
}

@media(max-width:780px){
  .rems-sidebar{width:min(286px,88vw)!important;box-shadow:18px 0 40px rgba(9,18,48,.34)}
  .rems-sidebar nav.rems-nav-top{padding:5px 7px 54px!important}
  .rems-sidebar nav a{min-height:32px!important;font-size:14px!important;padding:3px 8px!important;gap:8px!important}
  .rems-sidebar nav i{width:25px!important;min-width:25px!important;height:25px!important;font-size:20px!important}
  .rems-mobile-toggle{font-family:Arial,Helvetica,sans-serif!important;font-size:23px!important;font-weight:700!important;line-height:1!important;padding:5px 8px;border-radius:8px;background:#eef2ff;color:#263b86}
  .rems-topbar{height:auto;min-height:56px;padding:8px 12px!important;gap:8px;flex-wrap:wrap}
  .rems-topbar>div{min-width:0}
  .rems-topbar>div:last-child{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .rems-content{padding:10px 10px 0!important}
  .rems-panel,.rems-report-card,.rems-chart-card{padding:13px!important;border-radius:13px!important}
  .rems-cards,.rems-cards.six,.rems-grid2,.rems-grid3,.rems-form,.rems-form.four,.rems-control-grid,.rems-school-details{grid-template-columns:1fr!important}
  .rems-stat{min-height:105px!important;padding:15px!important}
  .rems-chart{height:220px!important}
  .rems-chart-wide .rems-chart{height:240px!important}
  .rems-table{min-width:680px}
  .rems-form input,.rems-form select,.rems-form textarea{font-size:16px!important;max-width:100%}
  .rems-title{flex-direction:column!important;align-items:flex-start!important}
  .rems-title h1{font-size:20px!important}
  .rems-pending-banner{padding:12px!important}
}

@media(max-width:420px){
  .rems-sidebar{width:90vw!important}
  .rems-sidebar nav a{font-size:13.5px!important}
  .rems-content{padding-left:8px!important;padding-right:8px!important}
  .rems-topbar .rems-pill{display:none!important}
  .rems-chart{height:205px!important}
  .rems-public-page{padding:7px!important}
  .rems-reg-header-v221 h1{font-size:19px!important}
}
