﻿:root{--ink:#172838;--muted:#71808d;--teal:#087f78;--teal-dark:#05665f;--border:#e5eaf0;--bg:#f5f7fa}
*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;font-size:14px}a{text-decoration:none;color:var(--teal)}button,input{font:inherit}.muted{color:var(--muted)}.brand{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:700;color:inherit;letter-spacing:-.8px}.brand-light{font-weight:400;margin-left:-6px}.brand-icon{width:37px;height:37px;display:grid;place-items:center;background:var(--teal);color:#fff;border-radius:10px;font-size:18px;margin-right:4px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.8px;margin-bottom:16px;color:var(--teal)}.login-shell{min-height:100vh;display:grid;grid-template-columns:46% 54%}.login-intro{padding:48px 10%;background:#102f35;color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}.login-intro:after{content:"";position:absolute;width:550px;height:550px;right:-400px;bottom:80px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 70px #ffffff04,0 0 0 140px #ffffff03;pointer-events:none}.intro-copy{margin:auto 0;padding:60px 0;z-index:1}.intro-copy .eyebrow{color:#79cfc6}.intro-copy h1{font-size:clamp(32px,3.6vw,52px);line-height:1.15;letter-spacing:-1.7px;font-weight:600;margin:20px 0}.intro-copy>p{line-height:1.8;font-size:15px;color:#afc7ca;max-width:350px;margin-bottom:38px}.intro-feature{display:flex;gap:18px;align-items:center;margin:24px 0}.intro-feature>i{display:grid;place-items:center;border:1px solid #ffffff18;background:#ffffff05;border-radius:11px;width:44px;height:44px;color:#89d6cf;font-size:18px}.intro-feature strong,.intro-feature span{display:block}.intro-feature strong{font-size:14px;font-weight:600}.intro-feature span{color:#9ebbbf;font-size:12px;margin-top:4px}.intro-footer{font-size:9px;letter-spacing:1.5px;color:#79999d;display:flex;justify-content:space-between;z-index:1}.login-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;padding:48px 9%;min-height:100vh}.login-card{width:100%;max-width:390px;margin:auto 0}.access-label{display:inline-flex;gap:7px;align-items:center;color:var(--teal);background:#edf7f5;font-size:10px;font-weight:700;letter-spacing:1px;padding:7px 10px;border-radius:5px}.login-card h2{font-size:32px;font-weight:650;letter-spacing:-1px;margin:24px 0 10px}.form-label{font-size:13px;font-weight:600;margin-bottom:9px}.form-control{min-height:48px;border-color:#dbe2e8;border-radius:7px;font-size:14px;padding:12px 14px}.form-control:focus{border-color:var(--teal);box-shadow:0 0 0 3px #087f781b}.form-control::placeholder{color:#a1aab2}.password-field{position:relative}.password-field input{padding-right:48px}.password-toggle{position:absolute;right:9px;top:8px;border:0;background:none;color:#7f8d99;width:33px;height:33px;border-radius:5px}.btn-primary{background:var(--teal);border-color:var(--teal);border-radius:7px;padding:13px 18px;font-size:14px;font-weight:600}.btn-primary:hover,.btn-primary:focus{background:var(--teal-dark);border-color:var(--teal-dark)}.login-note{font-size:12px;color:#7a8993;line-height:1.7;margin-top:22px;display:flex;gap:8px}.login-note i{margin-top:4px}.security-note{border-top:1px solid var(--border);margin-top:34px;padding-top:21px;text-align:center;color:#88969e;font-size:11px}.security-note i{color:var(--teal);margin-right:5px}.login-footer{width:100%;max-width:390px;padding-top:36px;font-size:10px;color:#9aa4ad;display:flex;justify-content:space-between;gap:15px}.field-error{font-size:12px;color:#b42318;display:block;margin-top:5px}
.admin-body{background:var(--bg)}.admin-shell{display:flex;min-height:100vh}.sidebar{width:252px;flex-shrink:0;background:#fff;border-right:1px solid var(--border);padding:31px 22px;display:flex;flex-direction:column}.sidebar .brand{font-size:21px}.nav-caption{margin:47px 14px 13px;color:#9aa5b0;font-size:10px;font-weight:650;letter-spacing:1.5px}.nav-link{display:flex;align-items:center;gap:13px;border-radius:7px;color:#74818e;font-weight:550;padding:13px 15px;margin-bottom:6px}.nav-link i{width:17px;font-size:15px}.nav-link.active{color:var(--teal);background:#eaf6f3}.nav-link:hover{color:var(--teal);background:#f2f8f6}.sidebar-bottom{margin-top:auto;padding-top:80px}.role-chip{display:flex;gap:7px;align-items:center;background:#f8fafb;border:1px solid var(--border);padding:11px;border-radius:6px;font-size:11px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#16a085;flex-shrink:0}.sidebar-bottom p{font-size:10px;color:#91a0ad;line-height:1.8;padding:19px 8px 0}.sidebar-bottom p span{font-size:9px;letter-spacing:1px}.main-area{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:84px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:#fff;gap:16px}.breadcrumb-label{font-size:12px;color:#7e8c99}.breadcrumb-label span{color:#b6bfc8;margin:0 13px}.account-info{display:flex;align-items:center;gap:12px}.avatar{width:34px;height:34px;border-radius:50%;background:#e9f2f1;color:var(--teal);display:grid;place-items:center;font-size:12px}.account-info strong{display:block;font-size:12px;font-weight:600}.account-info small{font-size:10px;color:#94a0ab}.account-info .btn{font-size:11px;margin-left:10px;border-color:#dce2e7;color:#72808d;padding:7px 12px}.page-content{padding:38px 40px;max-width:1500px;width:100%;margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.page-heading .eyebrow{font-size:10px;margin-bottom:10px}.page-heading h1{font-size:29px;font-weight:650;letter-spacing:-1px;margin:0 0 10px}.page-heading p{font-size:13px;margin:0;line-height:1.7}.date-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:#fff;padding:10px 13px;border-radius:6px;color:#7a8792;font-size:11px;white-space:nowrap}.metric-card,.detail-card{border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:0 3px 10px #18283802}.metric-card{padding:25px 27px;height:100%}.metric-top{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#778491;font-size:13px}.metric-icon{width:44px;height:44px;background:#eaf6f3;color:var(--teal);border-radius:10px;display:grid;place-items:center;font-size:18px}.metric-number{font-size:48px;line-height:1.2;letter-spacing:-1.6px;font-weight:650;margin:12px 0 21px}.metric-footer{display:flex;align-items:center;gap:6px;font-size:11px;color:#8b98a4;padding-top:17px;border-top:1px solid #f1f3f6}.metric-tag{margin-left:auto;font-size:8px;letter-spacing:1px;color:#9ba7b1}.welcome-card{border:1px solid #dcece8;border-radius:11px;height:100%;padding:27px 30px;background:linear-gradient(115deg,#edf7f3,#f5faf7)}.welcome-card .access-label{padding:0;background:transparent;font-size:9px}.welcome-card h2{font-size:22px;font-weight:600;letter-spacing:-.5px;margin:20px 0 12px}.welcome-card p{font-size:12px;line-height:1.8;color:#7c918b;max-width:370px}.welcome-card a{font-weight:650;font-size:12px;display:inline-flex;gap:18px;align-items:center;margin-top:11px}.detail-card{padding:27px 30px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.section-heading h2{font-size:16px;font-weight:600;margin:0 0 7px}.section-heading p{font-size:12px;margin:0}.active-badge{background:#edf8f1;border:1px solid #daf0e2;color:#49906b;padding:5px 9px;border-radius:5px;font-size:10px}.account-grid{display:grid;grid-template-columns:1fr 1.5fr 1fr;margin:28px 0;gap:22px}.account-grid>div{border-right:1px solid var(--border)}.account-grid>div:last-child{border:0}.account-grid span{display:block;font-size:9px;letter-spacing:1px;color:#95a2ad;margin-bottom:11px}.account-grid strong{font-size:12px;font-weight:550}.account-footnote{padding-top:17px;border-top:1px solid var(--border);font-size:11px;color:#93a0ac}.account-footnote i{margin-right:7px;color:#7cad9e}.admin-footer{display:flex;justify-content:space-between;padding:20px 40px;font-size:10px;color:#a0aab4;margin-top:auto}.table-card{padding:0;overflow:hidden}.history-table{font-size:12px}.history-table th{font-weight:600;background:#fafcfd;color:#83929e;padding:17px 24px;border-color:var(--border);white-space:nowrap}.history-table td{padding:18px 24px;color:#617381;border-color:#f0f3f6}.menu-toggle{display:none;background:none;border:0;color:var(--ink)}.error-body{background:var(--bg);display:grid;min-height:100vh;place-items:center;padding:30px}.error-card{max-width:550px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:40px}.error-card h1{font-size:25px}.error-card p{color:var(--muted);line-height:1.7}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #50b5ab;outline-offset:3px}
@media(min-width:1500px){.login-intro{padding-left:13%;padding-right:13%}}@media(max-width:1100px){.sidebar{width:220px;padding:27px 17px}.page-content{padding:30px 25px}.topbar{padding:0 25px}.date-chip{display:none}.welcome-card{padding:25px}.account-grid{grid-template-columns:1fr 1.5fr}.account-grid>div{border:0}}@media(max-width:767px){.login-shell{display:block}.login-intro{min-height:auto;padding:25px}.intro-copy{padding:26px 0 0}.intro-copy h1{font-size:32px}.intro-copy>p,.intro-feature,.intro-footer{display:none}.intro-copy .eyebrow{margin-bottom:8px}.login-panel{padding:38px 25px;min-height:auto}.login-footer{padding-top:50px}.sidebar{display:none;position:absolute;top:72px;left:0;bottom:0;z-index:10;min-height:calc(100vh - 72px);box-shadow:8px 0 18px #18283812}.sidebar.is-open{display:flex}.menu-toggle{display:block}.topbar{height:72px;padding:0 20px}.breadcrumb-label{display:none}.account-info{margin-left:auto;gap:8px}.account-info .btn{margin-left:5px}.page-content{padding:27px 20px}.page-heading h1{font-size:27px}.page-heading p{font-size:12px}.account-grid{grid-template-columns:1fr;gap:22px}.detail-card{padding:23px}.account-footnote{line-height:1.8}.admin-footer{padding:20px}.admin-footer span{display:none}.history-table td,.history-table th{padding:15px}.table-card{padding:0}.welcome-card h2{font-size:21px}}
/* Institute registration and coaching workspace */
.portal-switch{font-size:12px;margin-top:24px;text-align:center}
.registration-body{background:var(--bg)}.registration-header{max-width:1220px;margin:auto;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.registration-header>a:last-child{font-size:12px;font-weight:600}
.registration-shell{max-width:1160px;margin:10px auto 60px;display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:38px;padding:0 30px;align-items:start}
.registration-intro{padding:38px 0;position:sticky;top:30px}.registration-intro h1{font-size:36px;line-height:1.2;letter-spacing:-1.2px;font-weight:650;margin:20px 0}.registration-intro>p{color:var(--muted);line-height:1.9;font-size:14px}.registration-intro .intro-feature>i{background:#e8f3f0;color:var(--teal);border-color:#dfeee8}.registration-intro .intro-feature span{color:var(--muted)}.registration-intro>a{display:inline-block;font-size:12px;margin-top:18px}
.registration-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:34px;box-shadow:0 12px 35px #17283805}
.registration-card h2{font-size:25px;letter-spacing:-.6px;font-weight:650;margin:20px 0 10px}.registration-card>p{font-size:12px;line-height:1.8}.form-section-title{font-size:11px;letter-spacing:1px;color:var(--teal);border-top:1px solid var(--border);margin:25px 0 18px;padding-top:22px}.registration-card small{font-size:10px}.registration-card .security-note{margin-top:18px}
.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0}.profile-grid span{display:block;font-size:9px;letter-spacing:1px;color:#95a2ad;margin-bottom:10px}.profile-grid strong{font-size:13px;font-weight:550;overflow-wrap:anywhere;white-space:pre-line}
.activity-heading{padding:25px 27px 10px}.activity-heading h2{font-size:16px;font-weight:600}.activity-heading p{font-size:11px}
@media(max-width:1000px){.registration-shell{grid-template-columns:1fr;gap:10px;max-width:750px}.registration-intro{position:static;padding:15px 0}.registration-intro .intro-feature{display:none}.registration-intro h1{font-size:29px}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.registration-header{padding:22px;align-items:flex-start;flex-direction:column}.registration-shell{padding:0 20px}.registration-card{padding:24px}.registration-intro h1{font-size:27px}.profile-grid{grid-template-columns:1fr}.registration-header .brand{font-size:21px}}

.login-note{flex-wrap:wrap}
.branch-actions{display:flex;gap:12px;margin-top:24px}.branch-toolbar{display:flex;align-items:flex-end;gap:16px;padding:24px;flex-wrap:wrap}.branch-toolbar>div:first-child{flex:1;min-width:200px}.branch-toolbar>div:nth-child(2){min-width:150px}.branch-toolbar .btn{min-height:48px}.inactive-badge{background:#f1f3f6;color:#77818b;padding:5px 9px;border:1px solid #e1e6eb;border-radius:5px;font-size:10px}.branch-pager td{padding:10px}.branch-pager a,.branch-pager span{padding:6px 10px;display:inline-block;border-radius:5px}.branch-pager span{background:#eaf6f3;color:var(--teal)}
@media(max-width:600px){.branch-toolbar{padding:20px}.page-heading{flex-wrap:wrap}.branch-actions{flex-wrap:wrap}}

.home-return{align-self:flex-start;font-size:12px;margin-bottom:24px;display:inline-flex;align-items:center;gap:8px}
.activation-key-value{font-family:Consolas,monospace;min-width:260px;max-width:340px;overflow-wrap:anywhere;user-select:all}
.institute-profile{min-width:230px;max-width:330px}.institute-profile>strong{display:block;color:var(--ink)}.institute-profile>small,.institute-subtext{display:block;font-size:11px;color:var(--muted);margin-top:5px}.institute-profile details{margin-top:10px;font-size:11px}.institute-profile summary{cursor:pointer;color:var(--teal)}.institute-details{display:grid;gap:6px;margin-top:10px;overflow-wrap:anywhere}.institute-details span{line-height:1.6}
.brand>.brand-wordmark{white-space:nowrap;font-size:22px;letter-spacing:-.7px}.sidebar .brand>.brand-wordmark{font-size:20px}/* Student Master follows the supplied personal, guardian and education mockups. */
.student-sections{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 24px}.student-sections a{background:#edf5fa;border:1px solid #dce9f1;border-radius:8px;padding:12px 18px;font-size:13px}.student-section-title{font-size:20px;font-weight:650;background:#f0f5fa;border-bottom:1px solid #dfe8ef;margin:-12px -12px 24px;padding:16px;border-radius:7px}.student-editor h3{font-size:16px;font-weight:600}.student-address{height:100%;border:1px solid #dfe8ef;border-radius:8px;padding:20px}.student-address h3{margin-bottom:16px}.student-generated{background:#eef1f5;color:#647083;border:1px solid #d9e0e7;padding:13px;border-radius:7px;min-height:48px}.student-contact,.student-qualification{border:1px solid #dfe8ef;border-radius:8px;padding:20px;margin-bottom:20px}.student-contact>.section-heading,.student-qualification>.section-heading{background:#eef5fb;border-bottom:1px solid #dfe8ef;margin:-20px -20px 20px;padding:12px 20px}.student-contact:nth-child(2)>.section-heading{background:#fff0f5}.student-contact:nth-child(3)>.section-heading{background:#eaf8f3}.student-preferences{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px;font-size:12px}.student-section-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:24px}.student-subheading{margin:30px 0 14px}.student-photo-preview{display:block;width:100%;max-width:140px;height:150px;object-fit:cover;border-radius:8px;margin-bottom:12px}.student-photo small{display:block;margin-top:8px}.student-editor section{scroll-margin-top:20px}.student-editor input[type=checkbox]{margin-right:5px}
@media(max-width:767px){.student-contact,.student-qualification,.student-address{padding:16px}.student-contact>.section-heading,.student-qualification>.section-heading{margin:-16px -16px 16px;padding:12px 16px}.student-sections a{width:100%}.student-editor .section-heading{flex-wrap:wrap;gap:10px}}
.student-contact-mother>.section-heading{background:#fff0f5}.student-contact-guardian>.section-heading{background:#eaf8f3}.student-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;max-width:140px;height:150px;background:#edf3fa;border:1px solid #dfe8ef;border-radius:8px;margin-bottom:12px;color:#a8bbd3;font-size:64px}
.student-photo-card{display:flex;align-items:center;gap:18px;max-width:540px;padding:14px 16px;margin:0 0 22px;background:#f6f9fc;border:1px solid #e0e8ef;border-radius:10px}.student-photo-visual{flex:0 0 72px}.student-photo-card .student-photo-placeholder,.student-photo-card .student-photo-preview{width:72px;height:80px;max-width:none;margin:0;border-radius:8px;font-size:32px;object-fit:cover}.student-photo-controls{flex:1;min-width:0}.student-photo-controls .form-label{margin-bottom:6px}.student-photo-controls .form-control{min-height:36px;font-size:12px;padding:6px 9px}.student-photo-controls small{display:block;font-size:11px;margin-top:6px}.student-photo-controls>div,.student-photo-controls>span{font-size:11px}.student-photo-controls input[type=checkbox]{margin-right:5px}
@media(max-width:480px){.student-photo-card{gap:12px;padding:12px;max-width:100%}.student-photo-visual{flex-basis:58px}.student-photo-card .student-photo-placeholder,.student-photo-card .student-photo-preview{width:58px;height:68px;font-size:28px}}
.student-details-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px;margin:0 0 22px;background:#f0f5fa;border-radius:8px}.student-details-header .student-section-title{padding:0;margin:0;border:0;background:transparent}.student-details-header .student-photo-card{flex:0 1 500px;margin:0;background:#fff;padding:10px 12px}.student-details-header .student-photo-visual{flex-basis:64px}.student-details-header .student-photo-placeholder,.student-details-header .student-photo-preview{width:64px;height:72px}
@media(max-width:767px){.student-details-header{display:block;padding:12px}.student-details-header .student-section-title{margin-bottom:14px}.student-details-header .student-photo-card{max-width:100%;width:100%;padding:10px}}

.captcha-image-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.captcha-image-row img{border:1px solid #d8e2ec;border-radius:8px;max-width:100%;height:auto}.registration-captcha .form-control{max-width:360px;text-transform:uppercase}

.report-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.report-profile{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px}.report-identity{min-width:0;overflow-wrap:anywhere}.report-identity h2{font-size:28px;margin:8px 0 12px}.report-identity p{margin-bottom:14px}.report-institute{font-size:13px;color:var(--muted);margin-top:12px}.report-photo{flex:0 0 120px}.report-photo-image{object-fit:contain;border-radius:10px;background:#f3f6fa;border:1px solid var(--border)}.report-photo-empty{width:120px;height:150px;background:#f3f6fa;border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;color:var(--muted);font-size:11px;text-align:center;padding:12px}.report-photo-empty i{font-size:32px}.report-section{padding:26px}.report-section h2{font-size:17px;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--border)}.report-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 28px;margin:0}.report-field dt{font-size:11px;color:var(--muted);font-weight:500;margin-bottom:6px}.report-field dd{font-size:13px;line-height:1.7;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.report-document{display:inline-block;margin-top:22px;font-size:13px;overflow-wrap:anywhere}
@media(max-width:1100px){.report-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.report-fields{grid-template-columns:1fr;gap:18px}.report-profile,.report-section{padding:20px}.report-identity h2{font-size:22px}.report-profile{align-items:flex-start;gap:14px}.report-photo{flex-basis:90px}.report-photo-image,.report-photo-empty{width:90px!important;height:112px!important}.report-actions{flex-wrap:wrap}}
@media print{.sidebar,.topbar,.admin-footer,.report-navigation,.report-actions{display:none!important}.admin-shell,.main-area{display:block;width:100%;margin:0;padding:0}.page-content{padding:0!important}.admin-body{background:white}.student-report .detail-card{box-shadow:none;border:1px solid #ccc;border-radius:0;margin-bottom:16px!important}.report-profile{break-inside:avoid}.report-section h2{break-after:avoid}.report-field{break-inside:avoid}.report-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px}.report-field dd{font-size:11px}.report-field dt{font-size:10px}.report-section{padding:18px}.report-photo-image,.report-photo-empty{width:120px!important;height:150px!important}a.report-document{color:#222;text-decoration:none}@page{size:A4;margin:14mm}}
.manual-roster{min-width:900px}.manual-roster .form-select{min-width:150px}.manual-roster .form-control{min-width:200px}

.mapping-student{display:flex;gap:18px;align-items:center;background:#f2f8f6;border:1px solid #dfebe6;border-radius:8px;padding:20px}.mapping-student h3{font-size:18px;margin:0 0 8px}.mapping-student-details{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px}.mapping-student-photo{width:80px;height:96px;object-fit:contain;border-radius:6px;background:white}.mapping-fees{min-width:780px}.mapping-fees .form-control{min-width:100px}.mapping-fees .form-select{min-width:115px}.mapping-schedule{min-width:550px}.mapping-schedule .form-control{min-width:130px}.mapping-summary h2{font-size:17px}.mapping-summary dl{margin-top:22px}.mapping-summary dl>div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0f3;padding:13px 0;font-size:12px}.mapping-summary dt{font-weight:500}.mapping-summary dd{margin:0;font-weight:600;white-space:nowrap}.mapping-summary .mapping-final{color:#087f75;background:#eef8f5;padding:14px 10px}.mapping-summary{position:sticky;top:20px;padding:22px 18px}@media(max-width:600px){.mapping-student{align-items:flex-start;padding:16px}.mapping-student-details{display:grid;gap:8px}.mapping-student-photo{width:64px;height:80px}}

#mappingEditor[hidden],#mappingFeeWorkspace[hidden],#studentSummary[hidden],#studentResults[hidden],#studentPhoto[hidden],#saveMapping[hidden]{display:none!important}.mapping-student-picker{position:relative}.mapping-suggestions{list-style:none;padding:5px;margin:0;position:absolute;left:0;right:0;z-index:20;background:white;border:1px solid #dfe5ea;border-radius:6px;max-height:280px;overflow:auto;box-shadow:0 8px 20px #0001}.mapping-suggestions button{display:block;width:100%;text-align:left;border:0;background:white;padding:12px 14px;font-size:13px;color:#314550}.mapping-suggestions button:hover,.mapping-suggestions button.active{background:#eef8f5;color:#087f75}
@media print {body:has(#batchReport) .sidebar,body:has(#batchReport) .topbar,body:has(#batchReport) .admin-footer,#batchReport .report-filters,#batchReport .report-pagination,#reportPrint {display:none!important} body:has(#batchReport) .main-area {margin:0!important} #batchReport .table-responsive {overflow:visible} #batchReport .detail-card {break-inside:auto} #batchReport table {font-size:10px} }
.report-filter-dialog {width:min(900px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:24px;border:1px solid #dce5ec;border-radius:16px;color:#132b3b;background:#fff;box-shadow:0 24px 80px rgba(15,35,50,.25);overflow:auto;}
.report-filter-dialog::backdrop {background:rgba(15,35,50,.48);}
.report-filter-header {display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;}
.report-filter-header h2 {margin:0 0 6px;font-size:24px;}
.report-filter-footer {display:flex;justify-content:flex-end;border-top:1px solid #e0e7ee;margin-top:24px;padding-top:16px;}
@media(max-width:575px) {.report-filter-dialog {padding:20px;max-height:calc(100dvh - 24px);} .report-filter-header h2 {font-size:21px;}}
@media print {#batchReport .report-actions {display:none!important}}
#fcSuggestions[hidden],#fcWorkspace[hidden],#fcStudent[hidden],#fcMessage[hidden] {display:none!important} @media print {body:has(.fee-receipt) .sidebar,body:has(.fee-receipt) .topbar,body:has(.fee-receipt) .admin-footer,.fee-receipt .receipt-actions {display:none!important} body:has(.fee-receipt) .main-area {margin:0!important}}

/* Institute workspace menu groups */
.coaching-sidebar .nav-caption{margin-top:32px}
.coaching-sidebar .nav-group{margin:8px 0;border-top:1px solid #eef2f4;padding-top:8px}
.coaching-sidebar .nav-group summary{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:13px 14px;border-radius:7px;color:#536674;font-weight:650;font-size:13px}
.coaching-sidebar .nav-group summary::-webkit-details-marker{display:none}
.coaching-sidebar .nav-group summary>i:first-child{width:17px;text-align:center}
.coaching-sidebar .nav-group summary:hover{background:#f2f8f6;color:var(--teal)}
.coaching-sidebar .nav-group.active summary{color:var(--teal)}
.coaching-sidebar .nav-chevron{margin-left:auto;font-size:10px;transition:transform .15s}
.coaching-sidebar .nav-group[open] .nav-chevron{transform:rotate(180deg)}
.coaching-sidebar .nav-group-links{padding:4px 0 2px 9px}
.coaching-sidebar .nav-group .nav-link{padding:10px 10px;gap:9px;margin-bottom:3px;font-size:12px;line-height:1.5}
.coaching-sidebar .nav-group summary:focus-visible{outline:3px solid #50b5ab;outline-offset:2px}
.coaching-sidebar .sidebar-bottom{padding-top:32px}
@media(max-width:767px){.coaching-sidebar{position:fixed;overflow-y:auto;overscroll-behavior:contain;min-height:0}.coaching-sidebar .brand{flex-shrink:0}}

/* Institute-owned workspace branding; scoped away from the public and Super Admin pages. */
.coaching-sidebar .institute-brand{gap:11px;align-items:center;min-width:0;width:100%}.coaching-sidebar .institute-brand-logo{width:46px;height:46px;flex:0 0 46px;object-fit:contain;border:1px solid #e4eaf1;border-radius:9px;background:#fff;padding:3px}.coaching-sidebar .institute-brand-name{font-size:16px;line-height:1.35;letter-spacing:-.3px;white-space:normal;overflow-wrap:anywhere;min-width:0;font-weight:700}.workspace-heading{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.workspace-heading-logo{width:39px;height:39px;flex-shrink:0;object-fit:contain;background:#fff;border:1px solid #e6ecf3;border-radius:8px;padding:3px}.workspace-heading>div{min-width:0}.workspace-heading strong{display:block;color:#233e5b;font-size:14px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.workspace-heading small{display:block;color:#91a0af;font-size:10px;margin-top:2px}.coaching-sidebar .sidebar-bottom p{overflow-wrap:anywhere}.coaching-sidebar~.main-area .admin-footer{overflow-wrap:anywhere}
@media(max-width:767px){.workspace-heading{gap:8px}.workspace-heading-logo{width:31px;height:31px}.workspace-heading strong{font-size:12px}.workspace-heading small{font-size:9px}.topbar:has(.workspace-heading){gap:10px}.topbar:has(.workspace-heading) .account-info{gap:7px}.topbar:has(.workspace-heading) .account-info .avatar{display:none}.topbar:has(.workspace-heading) .account-info .btn{margin-left:0;padding:6px 8px}.topbar:has(.workspace-heading) .account-info>div{max-width:90px;overflow:hidden}.topbar:has(.workspace-heading) .account-info strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:420px){.topbar:has(.workspace-heading) .account-info>div{display:none}.workspace-heading strong{max-width:150px}}

.session-clock{display:flex;align-items:center;gap:7px;flex-shrink:0;border:1px solid #dce6f0;background:#f6f9fd;padding:8px 10px;border-radius:7px;font-size:10px;color:#52708f;white-space:nowrap}.session-clock-value{font-size:12px;font-variant-numeric:tabular-nums;color:#264765;letter-spacing:.4px}.session-clock.is-warning{background:#fff7e8;border-color:#ebd39c;color:#946120}.session-clock.is-warning .session-clock-value{color:#946120}.session-clock.check-pending{border-style:dashed}
@media(max-width:1000px){.session-clock-label{display:none}.session-clock{padding:7px;gap:6px}.session-clock-value{font-size:11px}}
@media(max-width:767px){.topbar:has(.session-clock){gap:8px;flex-wrap:wrap;height:auto;min-height:72px;padding-top:10px;padding-bottom:10px}.topbar:has(.session-clock) .workspace-heading{flex-basis:calc(100% - 40px);flex-grow:1;min-width:0}.topbar:has(.session-clock) .workspace-heading strong{max-width:none}.topbar:has(.session-clock) .session-clock{margin-left:38px}.topbar:has(.session-clock) .account-info{margin-left:auto}.topbar:has(.session-clock) .account-info>div{display:block;max-width:110px}.topbar:has(.session-clock) .session-clock-label{display:inline}}
