/* Full-page application reset: break out of the active WordPress theme container. */
html:has(body.sms2-modern-active){margin-top:0!important;padding-top:0!important}
body.sms2-modern-active #wpadminbar{display:none!important;height:0!important;visibility:hidden!important}

body.sms2-modern-active{margin:0!important;padding:0!important;background:#eef1f3!important;overflow-x:hidden!important}
body.sms2-modern-active #page,body.sms2-modern-active .site,body.sms2-modern-active .site-content,body.sms2-modern-active .content-area,body.sms2-modern-active .site-main,body.sms2-modern-active main,body.sms2-modern-active .entry-content,body.sms2-modern-active article,body.sms2-modern-active .wp-site-blocks{max-width:none!important;width:100%!important;margin:0!important;padding-left:0!important;padding-right:0!important}
body.sms2-modern-active>header,body.sms2-modern-active>.site-header,body.sms2-modern-active .site-header,body.sms2-modern-active .main-navigation,body.sms2-modern-active .wp-block-navigation,body.sms2-modern-active .wp-block-template-part header,body.sms2-modern-active .top-header,body.sms2-modern-active .header-area,body.sms2-modern-active .navbar{display:none!important}
body.sms2-modern-active>footer,body.sms2-modern-active>.site-footer,body.sms2-modern-active .site-footer,body.sms2-modern-active .wp-block-template-part footer{display:none!important}
body.sms2-modern-active .sms-app{position:relative!important;left:50%!important;transform:translateX(-50%)!important;width:100vw!important;max-width:100vw!important;margin:0!important}
body.sms2-modern-active .sms-app *{box-sizing:border-box}
:root{--sms-blue:#0b4778;--sms-blue2:#063d69;--sms-teal:#087f73;--sms-green:#008b63;--sms-red:#e53935;--sms-ink:#193754;--sms-muted:#6d7d90;--sms-bg:#eef1f3;--sms-card:#fff;--sms-line:#e2e8ed;--sms-shadow:0 8px 26px rgba(24,50,75,.08);--sms-radius:16px}
html,body{overflow-x:hidden}.sms-app{width:100vw;min-height:100dvh;margin-left:calc(50% - 50vw);background:var(--sms-bg);display:flex;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--sms-ink)}
.sms-sidebar{width:285px;flex:0 0 285px;background:linear-gradient(180deg,#073f6b 0%,#06365b 100%);color:#fff;position:sticky;top:0;height:auto;min-height:100dvh;padding:24px 15px;display:flex;flex-direction:column;z-index:100;align-self:stretch}.sms-logo{font-size:22px;font-weight:800;letter-spacing:.4px;padding:7px 14px 2px}.sms-logo span{color:#49c5aa}.sms-role{font-size:10px;letter-spacing:1.4px;color:#bcd8ea;padding:4px 14px 22px}.sms-sidebar nav{display:flex;flex-direction:column;gap:5px;overflow:auto;padding-right:3px}.sms-sidebar nav a{display:flex;align-items:center;min-height:44px;color:#dceaf3;text-decoration:none;padding:11px 14px;border-radius:11px;font-size:14px;transition:.18s}.sms-sidebar nav a:hover,.sms-sidebar nav a.active{background:rgba(255,255,255,.15);color:#fff}.sms-sidebar nav a.active{box-shadow:inset 3px 0 0 #50c9ae}.sms-logout{margin-top:auto;padding-top:12px}.sms-logout button{width:100%;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);color:#fff;border-radius:11px;padding:12px;cursor:pointer;font-weight:700}
.sms-main{flex:1;min-width:0;width:calc(100% - 285px)}.sms-mobile-head{display:none}.sms-content{width:100%;padding:24px 30px 40px}.sms-top-search{width:100%;margin-bottom:22px;display:flex;justify-content:flex-end}.sms-header-search{display:flex;align-items:center;justify-content:flex-end;gap:8px;width:auto;max-width:470px;background:transparent}.sms-search-label{font-size:11px;font-weight:800;color:#566b80;white-space:nowrap}.sms-header-search input{width:260px;border:1px solid var(--sms-line);background:#fff;border-radius:11px;padding:13px 14px;outline:none;font-size:13px}.sms-header-search button,.sms-search button,.sms-search-large button{border:0;background:linear-gradient(135deg,var(--sms-blue),var(--sms-teal));color:#fff;border-radius:11px;padding:12px 17px;cursor:pointer;font-weight:800;font-size:12px}
.sms-dashboard{width:100%;max-width:none}.sms-hero{width:100%;min-height:155px;border-radius:18px;background:linear-gradient(105deg,#0b4778 0%,#0a6d76 55%,#087d72 100%);color:#fff;padding:28px 34px;display:flex;justify-content:space-between;align-items:center;gap:25px;box-shadow:var(--sms-shadow);margin-bottom:22px}.sms-badge{display:inline-block;background:rgba(255,255,255,.14);border-radius:20px;padding:7px 12px;font-size:10px;letter-spacing:.3px}.sms-hero h2{margin:14px 0 4px;font-size:27px;font-weight:500}.sms-hero p{margin:0;color:#d4eff0;font-size:12px}.sms-clock{background:rgba(0,60,60,.25);padding:15px 18px;border-radius:12px;font-size:12px;white-space:nowrap}.sms-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;width:100%}.sms-stat{background:var(--sms-card);border-radius:16px;padding:25px;box-shadow:var(--sms-shadow);min-height:125px}.sms-stat:nth-child(7){grid-column:1}.sms-stat span{display:block;font-size:11px;font-weight:800;color:#5f6f84;margin-bottom:11px}.sms-stat strong{display:block;color:#1e3148;font-size:30px;line-height:1.05}.sms-stat.green strong{color:var(--sms-green)}.sms-stat.red strong{color:var(--sms-red)}.sms-stat.blue strong{color:#0965ae}.sms-stat small{display:block;color:#6f7d8d;font-size:10px;margin-top:8px}
.sms-admission-layout{display:block;width:100%}.sms-admission-card{width:100%;margin-bottom:20px}.sms-admission-card .sms-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.sms-admission-notes{width:100%;border:2px solid #ef2b2b;background:#fff}.sms-admission-notes h2{margin-bottom:12px}.sms-admission-notes p{margin:7px 0;color:#53677c;line-height:1.65}.sms-card{background:#fff;border-radius:16px;box-shadow:var(--sms-shadow);padding:24px;margin-bottom:20px;width:100%}.sms-card h2{margin:0 0 17px;font-size:20px;color:#234565}.sms-grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.sms-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sms-toolbar h2{margin:0}.sms-btn{display:inline-block;text-decoration:none;border:0;border-radius:10px;padding:10px 15px;font-size:12px;font-weight:800;cursor:pointer}.sms-primary{background:linear-gradient(135deg,#0b4d7e,#087f73);color:#fff}.sms-small{padding:6px 9px;background:#eef5fa;color:#164c70}.sms-small.danger,.danger{background:#ffeded;color:#c52222}.sms-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.sms-table{width:100%;border-collapse:collapse;font-size:12px}.sms-table th,.sms-table td{padding:12px 10px;border-bottom:1px solid #edf0f3;text-align:left;vertical-align:middle}.sms-table th{font-size:10px;color:#617289;text-transform:uppercase;letter-spacing:.4px;background:#fafbfc}.sms-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;display:inline-flex;align-items:center;justify-content:center}.sms-placeholder{background:#e7f1f5;color:#0a6073;font-weight:800}.sms-status{padding:5px 9px;border-radius:20px;font-size:10px}.sms-status.ok{background:#e5f7ee;color:#00835b}.sms-status.off{background:#f2f2f2;color:#777}.sms-form label{display:flex;flex-direction:column;gap:6px;color:#53677c;font-size:11px;font-weight:700}.sms-form input,.sms-form select,.sms-form textarea{width:100%;border:1px solid #dfe6ec;background:#fff;border-radius:10px;padding:11px 12px;font:inherit;color:#23384e;outline:none}.sms-form textarea{min-height:85px;resize:vertical}.sms-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:16px}.sms-full{grid-column:1/-1}.sms-check{display:flex!important;flex-direction:row!important;align-items:center;gap:7px!important;font-weight:500!important}.sms-check input{width:auto}.sms-assignment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#f7f9fb;border:1px solid #edf0f3;padding:12px;border-radius:12px;margin-bottom:16px}.sms-filter{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:10px;align-items:end}.sms-filter label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#53677c}.sms-filter input,.sms-filter select{border:1px solid #dfe6ec;border-radius:10px;padding:10px;background:#fff}.sms-radio{display:flex;gap:6px;align-items:center;font-size:11px}.sms-radio input{width:auto}.sms-inline{display:inline}.sms-inline button{margin:0}.sms-alert{border-radius:11px;padding:13px 15px;margin-bottom:16px;font-size:12px}.sms-success{background:#e9f9f0;color:#08754e}.sms-danger{background:#fff0f0;color:#c21f1f}.sms-total{margin-top:12px;text-align:right;font-size:14px}.sms-profile-head{display:flex;align-items:center;gap:16px}.sms-profile-photo{width:100px;height:100px;border-radius:18px;object-fit:cover}.sms-profile-head h2{margin:0 0 5px}.sms-profile-head p{margin:0;color:#6c7d90;font-size:12px}.sms-profile-head .sms-btn{margin-left:auto}.sms-profile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px}.sms-profile-grid div{background:#f7f9fb;border-radius:11px;padding:12px}.sms-profile-grid b,.sms-profile-grid span{display:block}.sms-profile-grid b{font-size:10px;color:#748499;text-transform:uppercase}.sms-profile-grid span{margin-top:4px;font-size:12px}.sms-search-large{display:flex;gap:10px}.sms-search-large input{flex:1;min-width:0;border:1px solid var(--sms-line);background:#fff;border-radius:10px;padding:11px 13px}.sms-report{background:#fff;border-radius:15px;box-shadow:var(--sms-shadow);padding:30px;max-width:1100px;margin:0 auto}.sms-report-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--sms-line);padding-bottom:18px}.sms-report-head h2{margin:10px 0 3px}.sms-report-head p{margin:0;color:#68798b}.sms-report-photo{width:90px;height:90px;object-fit:cover;border-radius:14px}.sms-profile-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:18px 0}.sms-profile-strip div{background:#f6f8fa;border-radius:9px;padding:10px;font-size:11px}.sms-profile-strip b{display:block;font-size:9px;color:#6c7c8f;text-transform:uppercase;margin-bottom:4px}.sms-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.sms-result-grid div{padding:14px;border-radius:11px;background:#f6f8fa}.sms-result-grid span,.sms-result-grid strong{display:block}.sms-result-grid span{font-size:10px;color:#6c7c8f}.sms-result-grid strong{font-size:18px;margin-top:4px}.sms-green{color:#008b63}.sms-red{color:#e53935}.sms-mark{max-width:120px}.sms-mobile-head{height:62px;background:#fff;align-items:center;gap:12px;padding:0 16px;box-shadow:0 2px 8px rgba(0,0,0,.05);position:sticky;top:0;z-index:105}.sms-menu-btn{border:0;background:#edf3f7;border-radius:9px;width:40px;height:40px;font-size:21px;color:#0c4778;cursor:pointer}.sms-login-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;background:transparent;padding:35px 15px}.sms-login-card{width:100%;max-width:480px;background:#fff;border-radius:20px;padding:36px;box-shadow:0 15px 45px rgba(22,52,77,.12)}.sms-brand{font-size:11px;font-weight:900;letter-spacing:1.5px;color:#087d72}.sms-login-card h1{margin:12px 0 4px;font-size:30px;color:#123c61}.sms-muted{color:#748397;font-size:13px}.sms-login-card .sms-form{display:grid;gap:15px;margin-top:20px}.sms-login-card .sms-btn{width:100%;padding:13px}.sms-check{font-size:11px!important}
@media(max-width:1100px){.sms-sidebar{width:245px;flex-basis:245px}.sms-main{width:calc(100% - 245px)}.sms-content{padding:20px}.sms-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sms-stat:nth-child(7){grid-column:auto}.sms-grid-2{grid-template-columns:1fr}.sms-filter{grid-template-columns:repeat(2,1fr)}.sms-profile-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sms-app{width:100%;margin-left:0;display:block}.sms-sidebar{position:fixed;left:-290px;top:0;width:290px;max-width:88vw;height:100dvh;transition:left .22s ease;box-shadow:12px 0 35px rgba(0,0,0,.16)}.sms-sidebar.open{left:0}.sms-sidebar:after{content:"";position:fixed;left:100%;top:0;width:100vw;height:100vh;background:rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:.2s}.sms-sidebar.open:after{opacity:1;pointer-events:auto}.sms-main{width:100%}.sms-mobile-head{display:flex}.sms-content{padding:12px 12px 28px}.sms-top-search{margin-bottom:14px}.sms-top-search{justify-content:flex-end}.sms-header-search{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;width:min(100%,430px);max-width:100%}.sms-search-label{grid-column:1/-1}.sms-header-search input{width:100%;min-width:0}.sms-header-search button{width:auto}.sms-hero{padding:21px;min-height:auto;flex-direction:column;align-items:flex-start;gap:15px}.sms-hero h2{font-size:22px}.sms-clock{align-self:stretch;text-align:center}.sms-stat-grid{grid-template-columns:1fr;gap:12px}.sms-stat{min-height:auto;padding:20px}.sms-card{padding:17px;border-radius:14px}.sms-form-grid{grid-template-columns:1fr}.sms-admission-card .sms-form-grid{grid-template-columns:1fr}.sms-admission-notes{margin-top:0}.sms-assignment-grid{grid-template-columns:1fr 1fr}.sms-filter{grid-template-columns:1fr}.sms-profile-head{align-items:flex-start;flex-wrap:wrap}.sms-profile-head .sms-btn{margin-left:0}.sms-profile-grid{grid-template-columns:1fr}.sms-search-large{flex-direction:column}.sms-report{padding:18px}.sms-profile-strip{grid-template-columns:1fr 1fr}.sms-result-grid{grid-template-columns:1fr}.sms-table{min-width:700px}.sms-login-wrap{padding:18px 0}.sms-login-card{padding:25px 20px}}
@media(min-width:761px){.sms-mobile-head{display:none!important}}
@media print{body *{visibility:hidden}.sms-report,.sms-report *{visibility:visible}.sms-report{position:absolute;left:0;top:0;width:100%;box-shadow:none}.no-print{display:none!important}.sms-sidebar,.sms-top-search,.sms-mobile-head{display:none!important}}


/* Premium login + true standalone app mode */
body.sms2-modern-active{background:linear-gradient(135deg,#eef5f7 0%,#f5f7fb 52%,#edf5f4 100%)!important}
body.sms2-modern-active #wpadminbar{display:none!important}
.sms-login-wrap{position:relative;min-height:100vh;overflow:hidden;padding:48px 22px;background:radial-gradient(circle at 8% 10%,rgba(15,112,132,.12),transparent 28%),radial-gradient(circle at 92% 88%,rgba(8,126,111,.13),transparent 30%),linear-gradient(135deg,#eef6f8 0%,#f7f9fc 52%,#eaf6f3 100%);display:flex;align-items:center;justify-content:center}
.sms-login-card{position:relative;z-index:2;max-width:520px;padding:34px 36px 25px;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:rgba(255,255,255,.95);box-shadow:0 28px 70px rgba(14,56,81,.16),0 3px 12px rgba(14,56,81,.06);backdrop-filter:blur(12px);overflow:hidden}
.sms-login-card:before{content:"";position:absolute;left:0;top:0;right:0;height:6px;background:linear-gradient(90deg,#0b4778,#087f73,#49c5aa)}
.sms-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.sms-login-logo{width:48px;height:48px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0b4778,#087f73);color:#fff;font-weight:900;font-size:17px;box-shadow:0 9px 20px rgba(8,111,115,.22)}.sms-login-logo span{color:#62e0c1}.sms-login-brand b{display:block;color:#173d5d;font-size:13px;letter-spacing:.8px}.sms-login-brand small{display:block;color:#8191a1;font-size:8px;letter-spacing:1.5px;margin-top:3px}.sms-login-welcome .sms-brand{font-size:10px;letter-spacing:1.8px;color:#078174;font-weight:900}.sms-login-welcome h1{margin:8px 0 5px;font-size:36px;line-height:1.1;color:#123f62;letter-spacing:-.8px}.sms-login-welcome h1 span{font-size:28px}.sms-login-welcome .sms-muted{font-size:13px;line-height:1.6;margin:0;color:#718294}.sms-login-pills{display:flex;gap:7px;margin:20px 0 23px}.sms-login-pills span{font-size:9px;font-weight:900;letter-spacing:1px;color:#567087;background:#edf5f8;border:1px solid #e2edf1;border-radius:30px;padding:7px 10px}.sms-login-card .sms-form{gap:15px;margin-top:0}.sms-login-card .sms-form>label>span{display:block;margin-bottom:7px;font-size:11px;font-weight:800;color:#536a7e}.sms-input-wrap{position:relative}.sms-input-wrap i{position:absolute;left:13px;top:50%;transform:translateY(-50%);font-style:normal;font-size:14px;opacity:.75}.sms-login-card .sms-form input[type=text],.sms-login-card .sms-form input[type=password]{height:50px;border:1px solid #dce6eb;border-radius:13px;padding:0 14px 0 42px;background:#fbfdfe;transition:.18s;font-size:13px}.sms-login-card .sms-form input:focus{border-color:#159383;box-shadow:0 0 0 4px rgba(21,147,131,.10);background:#fff}.sms-login-row{display:flex;align-items:center;justify-content:space-between}.sms-login-card .sms-check{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;color:#65798b!important}.sms-login-card .sms-check input{width:17px!important;height:17px!important;accent-color:#087f73}.sms-login-help{font-size:10px;color:#8392a1}.sms-login-btn{height:52px!important;border-radius:14px!important;display:flex!important;align-items:center;justify-content:center;gap:12px;font-size:12px!important;letter-spacing:.5px;background:linear-gradient(135deg,#0b4778 0%,#087f73 65%,#099b82 100%)!important;box-shadow:0 12px 25px rgba(8,111,115,.22);transition:transform .15s,box-shadow .15s}.sms-login-btn:hover{transform:translateY(-1px);box-shadow:0 15px 30px rgba(8,111,115,.27)}.sms-login-btn b{font-size:19px;line-height:1}.sms-login-footer{display:flex;justify-content:center;gap:8px;margin-top:21px;padding-top:16px;border-top:1px solid #edf1f4;color:#8795a3;font-size:9px}.sms-login-bg-shape{position:absolute;border-radius:50%;pointer-events:none}.sms-shape-one{width:360px;height:360px;left:-160px;top:-120px;background:linear-gradient(135deg,rgba(11,71,120,.18),rgba(8,127,115,.03))}.sms-shape-two{width:430px;height:430px;right:-210px;bottom:-180px;background:linear-gradient(135deg,rgba(73,197,170,.16),rgba(11,71,120,.03))}
@media(max-width:760px){.sms-login-wrap{min-height:100vh;padding:28px 14px}.sms-login-card{max-width:100%;padding:28px 20px 21px;border-radius:23px}.sms-login-brand{margin-bottom:23px}.sms-login-welcome h1{font-size:31px}.sms-login-pills{margin:17px 0 20px}.sms-login-pills span{padding:6px 8px;font-size:8px}.sms-login-footer{font-size:8px}.sms-login-help{display:none}}

.sms-live-search-wrap{position:relative;flex:1;min-width:0}.sms-live-search-wrap>input{width:100%}.sms-student-suggestions{position:absolute;z-index:9999;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid #dce5ef;border-radius:12px;box-shadow:0 14px 35px rgba(30,55,90,.16);overflow:hidden;max-height:340px;overflow-y:auto}.sms-suggest-item{display:flex;flex-direction:column;gap:3px;padding:11px 14px;text-decoration:none;border-bottom:1px solid #eef2f6}.sms-suggest-item:last-child{border-bottom:0}.sms-suggest-item:hover{background:#f5f8fc}.sms-suggest-name{font-weight:700;color:#18324b}.sms-suggest-meta{font-size:12px;color:#718398}.sms-suggest-empty{padding:12px 14px;color:#718398;font-size:13px}.sms-search-large .sms-live-search-wrap{width:100%}
@media(max-width:760px){.sms-student-suggestions{max-height:280px}.sms-header-search{flex-wrap:nowrap}.sms-header-search .sms-live-search-wrap{width:auto;order:initial}.sms-header-search .sms-search-label{order:initial}.sms-header-search button{order:initial}.sms-header-search input{width:100%}}

.sms-stat-wrap{min-width:0}.sms-stat-link{display:block;color:inherit;text-decoration:none;height:100%;border-radius:16px}.sms-stat-link .sms-stat{height:100%;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}.sms-stat-link:hover .sms-stat{transform:translateY(-2px);box-shadow:0 12px 30px rgba(24,50,75,.13)}.sms-stat-link:focus-visible{outline:3px solid rgba(8,127,115,.35);outline-offset:3px}

.sms-fee-student-picker{display:grid;gap:8px;margin-bottom:16px}
.sms-fee-student-picker>label{margin:0!important;font-size:11px;font-weight:700;color:#53677c}
.sms-fee-student-picker .sms-live-search-wrap{width:100%;position:relative}
.sms-fee-student-picker .sms-fee-student-search{width:100%;border:1px solid #dfe6ec;background:#fff;border-radius:10px;padding:11px 12px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.4;color:#23384e;outline:none}
.sms-fee-student-picker .sms-fee-student-search:focus{border-color:#159383;box-shadow:0 0 0 4px rgba(21,147,131,.10)}
.sms-fee-suggestions{top:calc(100% + 5px)}
.sms-fee-suggest-item{width:100%;border:0;background:#fff;text-align:left;cursor:pointer;font:inherit}
.sms-fee-selected{display:grid;gap:6px}
.sms-fee-selected span{font-size:11px;font-weight:700;color:#53677c}
.sms-fee-selected input{width:100%;border:1px solid #dfe6ec;background:#f7f9fb;color:#23384e;border-radius:10px;padding:11px 12px;font-family:inherit;font-size:13px;font-weight:400;line-height:1.4;outline:none;cursor:not-allowed}
.sms-fee-selected-meta{font-size:11px;color:#718398;min-height:16px}

.sms-fee-student-picker{position:relative;margin-bottom:14px}.sms-live-search-wrap{position:relative}.sms-student-suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);background:#fff;border:1px solid #dfe6ec;border-radius:10px;box-shadow:0 12px 28px rgba(24,50,75,.12);z-index:200;overflow:hidden}.sms-suggest-item{display:block;width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #eef2f5;padding:11px 12px;cursor:pointer;text-decoration:none;color:#193754}.sms-suggest-item:hover{background:#f5f9fb}.sms-suggest-name{display:block;font-weight:800;font-size:12px}.sms-suggest-meta{display:block;margin-top:3px;color:#6d7d90;font-size:10px}.sms-suggest-empty{padding:12px;color:#6d7d90;font-size:11px}.sms-fee-selected{margin-top:10px}.sms-fee-selected label{margin:0}.sms-fee-selected input[readonly]{background:#f7f9fb;cursor:not-allowed}.sms-fee-selected>span{display:block;margin-bottom:6px;color:#53677c;font-size:11px;font-weight:700}.sms-fee-selected-meta{font-size:10px;color:#6d7d90;margin-top:5px}.sms-subject-assignment-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:280px;overflow:auto}.sms-form-help{margin:8px 0 14px}.sms-attendance-percent-card{border-left:4px solid #087f73}.sms-attendance-percent-panel{margin-top:15px;padding-top:15px;border-top:1px solid var(--sms-line)}.sms-attendance-report .sms-toolbar,.sms-attendance-details .sms-toolbar{align-items:center}.sms-attendance-report .sms-table th,.sms-attendance-report .sms-table td{text-align:center}.sms-attendance-report .sms-table th:nth-child(1),.sms-attendance-report .sms-table td:nth-child(1),.sms-attendance-report .sms-table th:nth-child(2),.sms-attendance-report .sms-table td:nth-child(2){text-align:left}.sms-attendance-details{max-width:850px}.sms-print-btn{white-space:nowrap}@media print{body.sms2-modern-active{background:#fff!important}.sms-sidebar,.sms-mobile-head,.sms-top-search,.sms-attendance-percent-card,.sms-card:not(.sms-attendance-report):not(.sms-attendance-details){display:none!important}.sms-main{width:100%!important}.sms-content{padding:0!important}.sms-attendance-report,.sms-attendance-details{box-shadow:none!important;border:0!important;margin:0!important;max-width:none!important}.sms-print-btn{display:none!important}.sms-attendance-report .sms-table{font-size:10px}.sms-attendance-report .sms-table th,.sms-attendance-report .sms-table td{padding:7px}.sms-app{display:block!important;min-height:0!important}}
@media(max-width:760px){.sms-subject-assignment-grid{grid-template-columns:1fr}.sms-attendance-report .sms-table{min-width:760px}}

@media print{
  body.sms2-modern-active{background:#fff!important}
  body.sms2-modern-active .sms-sidebar,
  body.sms2-modern-active .sms-top-search,
  body.sms2-modern-active .sms-mobile-head,
  body.sms2-modern-active .no-print{display:none!important}
  body.sms2-modern-active .sms-main{width:100%!important}
  body.sms2-modern-active .sms-content{padding:0!important}
  body.sms2-modern-active .sms-card,
  body.sms2-modern-active .sms-report,
  body.sms2-modern-active .sms-receipt{box-shadow:none!important;border:1px solid #ddd!important}
}
.sms-receipt{max-width:900px;margin:0 auto}


/* v12.10 print fix */
@media print{
  body.gsm-printing *{visibility:hidden!important}
  body.gsm-printing .gsm-print-target,
  body.gsm-printing .gsm-print-target *{visibility:visible!important}
  body.gsm-printing .gsm-print-target{
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    box-shadow:none!important;
    border:0!important;
    background:#fff!important;
  }
  body.gsm-printing .gsm-print-target .no-print{display:none!important}
  body.gsm-printing .sms-sidebar,
  body.gsm-printing .sms-top-search,
  body.gsm-printing .sms-mobile-head,
  body.gsm-printing #wpadminbar{display:none!important}
  body.gsm-printing .sms-main{width:100%!important;margin:0!important}
  body.gsm-printing .sms-content{padding:0!important;margin:0!important}
  body.gsm-printing .sms-table{width:100%!important}
}

/* v12.11: class-first Students page */
.sms-class-picker{margin-top:8px;padding:18px;border:1px solid #e3e9ef;border-radius:14px;background:#fbfcfd}
.sms-section-title{font-size:18px;font-weight:700;color:#123f68;margin-bottom:12px}
.sms-class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.sms-class-option{display:flex;flex-direction:column;gap:5px;text-decoration:none;border:1px solid #d9e3eb;border-radius:12px;padding:15px 16px;background:#fff;transition:.15s ease}
.sms-class-option:hover{border-color:#148c8b;transform:translateY(-1px);box-shadow:0 4px 14px rgba(20,60,90,.08)}
.sms-class-option.is-selected{border-color:#148c8b;box-shadow:0 0 0 2px rgba(20,140,139,.12);background:#f4fbfb}
.sms-class-option-name{font-size:16px;font-weight:700;color:#123f68}
.sms-class-option-count{font-size:12px;color:#718096}
.sms-class-student-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:22px 0 12px}
.sms-class-student-header .sms-section-title{margin:0}
.sms-muted{font-size:13px;color:#718096}
.sms-student-list-search{display:flex;gap:10px;margin:0 0 15px}
.sms-student-list-search input{flex:1;min-width:0}
.sms-empty-state{padding:18px;color:#718096}
@media(max-width:700px){
  .sms-class-student-header{align-items:flex-start;flex-direction:column}
  .sms-student-list-search{flex-direction:column}
}

/* v12.13 print fix: current-page printing, no about:blank popup */
@media print {
  html, body {
    background: #fff !important;
  }
  body.gsm-printing .sms-app {
    display: block !important;
    min-height: 0 !important;
  }
  body.gsm-printing .gsm-print-target {
    visibility: visible !important;
  }
}


/* v12.14 responsive hardening: keep every dashboard page usable on phones. */
@media (max-width:760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
  body.sms2-modern-active .sms-app{width:100%!important;max-width:100%!important;min-width:0!important;transform:none!important;left:auto!important}
  body.sms2-modern-active .sms-main{width:100%!important;max-width:100%!important;min-width:0!important}
  body.sms2-modern-active .sms-content{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}
  body.sms2-modern-active .sms-card{width:100%!important;max-width:100%!important;min-width:0!important}
  body.sms2-modern-active .sms-toolbar{flex-wrap:wrap;gap:10px}
  body.sms2-modern-active .sms-toolbar .sms-search{width:100%;max-width:100%}
  body.sms2-modern-active .sms-table-wrap{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important}
  body.sms2-modern-active .sms-table{width:max-content!important;min-width:100%!important}
  body.sms2-modern-active .sms-table th,
  body.sms2-modern-active .sms-table td{white-space:nowrap}
  body.sms2-modern-active .sms-form-grid,
  body.sms2-modern-active .sms-filter,
  body.sms2-modern-active .sms-grid-2,
  body.sms2-modern-active .sms-profile-grid{min-width:0!important;max-width:100%!important}
  body.sms2-modern-active input,
  body.sms2-modern-active select,
  body.sms2-modern-active textarea,
  body.sms2-modern-active button{max-width:100%}
}

/* Payment History specifically: horizontal scrolling instead of cutting the right side. */
@media (max-width:760px){
  body.sms2-modern-active .sms-table-wrap:has(.sms-table td:nth-child(8)){
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:thin;
  }
  body.sms2-modern-active .sms-table-wrap:has(.sms-table td:nth-child(8)) .sms-table{
    min-width:920px!important;
  }
}

/* v12.14 print: no popup, no blank page, no dashboard chrome. */
@page{margin:10mm}
@media print{
  html,body{width:100%!important;min-width:0!important;background:#fff!important}
  body.gsm-printing .sms-app,
  body.gsm-printing .sms-main,
  body.gsm-printing .sms-content{display:block!important;position:static!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:0!important;transform:none!important}
  body.gsm-printing *{visibility:hidden!important}
  body.gsm-printing .gsm-print-target,
  body.gsm-printing .gsm-print-target *{visibility:visible!important}
  body.gsm-printing .gsm-print-target{
    display:block!important;
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    box-shadow:none!important;
    border:0!important;
    background:#fff!important;
  }
  body.gsm-printing .gsm-print-target .sms-table-wrap{
    overflow:visible!important;
    width:100%!important;
  }
  body.gsm-printing .gsm-print-target .sms-table{
    width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
  }
  body.gsm-printing .sms-sidebar,
  body.gsm-printing .sms-top-search,
  body.gsm-printing .sms-mobile-head,
  body.gsm-printing .no-print,
  body.gsm-printing #wpadminbar{display:none!important}
  body.gsm-printing .sms-main{width:100%!important}
}


/* v12.15: dedicated print layer. The live dashboard stays out of the
   print tree, eliminating blank/white receipt previews on Chrome. */
#gsmPrintLayer{display:none}
@media print{
  html,body{background:#fff!important}
  body.gsm-printing-v15 > *:not(#wpadminbar):not(#gsmPrintLayer){display:none!important}
  body.gsm-printing-v15 #wpadminbar{display:none!important}
  body.gsm-printing-v15 #gsmPrintLayer{
    display:block!important;
    position:static!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    background:#fff!important;
    color:#111!important;
  }
  body.gsm-printing-v15 #gsmPrintLayer .sms-receipt,
  body.gsm-printing-v15 #gsmPrintLayer .sms-report,
  body.gsm-printing-v15 #gsmPrintLayer .sms-attendance-report,
  body.gsm-printing-v15 #gsmPrintLayer .sms-attendance-details{
    display:block!important;
    visibility:visible!important;
    position:static!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    background:#fff!important;
  }
  body.gsm-printing-v15 #gsmPrintLayer *{
    visibility:visible!important;
  }
  body.gsm-printing-v15 #gsmPrintLayer .no-print{display:none!important}
  body.gsm-printing-v15 #gsmPrintLayer .sms-table-wrap{
    overflow:visible!important;
    width:100%!important;
  }
  body.gsm-printing-v15 #gsmPrintLayer .sms-table{
    width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
  }
}
