@import url("https://fonts.googleapis.com/css2?family=Noto+Naskh+Arabic:wght@400;500;600;700&family=Roboto:wght@400;500;700;800&display=swap");:root{--green-950:#002f24;--green-900:#003f2f;--green-800:#00583f;--green-700:#087046;--green-100:#dff5e9;--green-50:#f3fbf6;--ink:#101817;--muted:#66736f;--line:#dfe8e3;--panel:#fff;--shadow:0 18px 48px rgba(0,63,47,.1);--font-sans:"Roboto","Noto Sans","Segoe UI",sans-serif}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{color:var(--ink);background:#f8fbf9;font-family:var(--font-sans);font-size:14px;font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}html[lang=ar] body,html[lang=ur] body{font-family:"Noto Naskh Arabic",var(--font-sans)}button,input,select{font:inherit}button{cursor:pointer}.next-app-shell,.next-auth-shell{min-height:100vh}.next-auth-shell{display:grid;place-items:center;padding:34px 18px;background-color:#f5fcf8;background-image:url("data:image/svg+xml,%3Csvg width='180' height='180' viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23007046' stroke-opacity='.055' stroke-width='1.5'%3E%3Cpath d='M0 94c34-40 70-40 108 0 22 22 46 22 72 0'/%3E%3Cpath d='M0 118c34-40 70-40 108 0 22 22 46 22 72 0'/%3E%3Cpath d='M0 142c34-40 70-40 108 0 22 22 46 22 72 0'/%3E%3Cpath d='M90 0c-40 34-40 70 0 108 22 22 22 46 0 72'/%3E%3Cpath d='M114 0c-40 34-40 70 0 108 22 22 22 46 0 72'/%3E%3Cpath d='M138 0c-40 34-40 70 0 108 22 22 22 46 0 72'/%3E%3C/g%3E%3Cg fill='none' stroke='%23007046' stroke-opacity='.045' stroke-width='1.6'%3E%3Cpath d='M32 26h28v20H32zM36 30h20M36 36h20M46 26v20'/%3E%3Cpath d='M30 132 48 122l18 10-18 10-18-10zM38 137v10c7 4 14 4 21 0v-10'/%3E%3Cpath d='M126 36 144 26l18 10-18 10-18-10zM134 41v10c7 4 14 4 21 0v-10'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(135deg,#f8fff9,#eefaf2 48%,#f9fffb);background-size:220px 220px,auto}.next-auth-card{min-height:645px;display:flex;flex-direction:column;padding:34px 30px 26px;border:1px solid rgba(222,233,226,.95);border-radius:8px;background:hsla(0,0%,100%,.94);box-shadow:var(--shadow)}.next-auth-brand{text-align:center}.next-auth-logo{width:62px;height:62px;margin:0 auto;fill:none;stroke:var(--green-800);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.next-auth-brand h1{font-size:42px;font-weight:800;line-height:1}.next-auth-brand p{margin:6px 0 0}.next-auth-form{display:grid;grid-gap:9px;gap:9px;margin-top:24px}.next-auth-form label{margin-top:10px;color:#1f2b29;font-size:13px;font-weight:700}.next-auth-alert{min-height:76px;display:grid;grid-template-columns:22px 1fr;grid-gap:10px;gap:10px;align-items:start;border:1px solid #f4c8c2;border-radius:6px;background:#fff0ee;color:#bb2f23;padding:14px 15px}.next-auth-alert span{width:19px;height:19px;display:grid;place-items:center;margin-top:1px;border-radius:50%;background:#bb2f23;color:#fff;font-size:13px;font-weight:800}.next-auth-alert p{margin:0;font-size:14px;line-height:1.55}.next-input-shell{position:relative}.next-input-shell svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#283734}.next-input-shell input{width:100%;height:46px;border:1px solid #cfd9d5;border-radius:6px;background:#fff;color:var(--ink);outline:0;padding:0 14px 0 44px;font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.next-input-shell input:focus{border-color:#5e937c;box-shadow:0 0 0 4px rgba(0,112,70,.12)}.next-auth-options{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px;color:#52625e;font-size:13px}.next-auth-options label{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:500}.next-auth-options input{width:16px;height:16px;accent-color:var(--green-800)}.next-auth-options a{color:var(--green-800);font-weight:700;text-underline-offset:2px}.next-primary-button{height:50px;border:0;border-radius:6px;margin-top:8px;background:linear-gradient(180deg,#006442,#004f36);color:#fff;font-size:14px;font-weight:800;box-shadow:0 10px 22px rgba(0,88,63,.22)}.next-primary-button:disabled{cursor:wait;opacity:.72}.next-help-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:12px;gap:12px;margin-top:auto;padding-top:28px;color:#798782;font-size:13px}.next-help-row span{height:1px;background:var(--line)}.next-help-row p{margin:0}.next-help-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px;margin-top:16px}.next-help-actions a{color:var(--green-800);font-size:13px;font-weight:700;text-align:center;text-decoration:none}.next-modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:rgba(15,25,22,.56);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.next-session-modal{width:min(92vw,392px);border-radius:8px;background:#fff;box-shadow:0 24px 68px rgba(10,18,16,.28);padding:34px 32px 26px;text-align:center}.next-session-modal h2{margin:0 0 16px;font-size:18px}.next-session-modal p{margin:0;color:#3f4b47;font-size:13px;line-height:1.55}.next-session-modal div{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.next-session-modal button{min-width:84px;height:38px;border:1px solid #d6dedb;border-radius:6px;background:#fff;color:#263532;font-size:13px;font-weight:700}.next-session-modal button:last-child{border-color:var(--green-800);background:var(--green-800);color:#fff}.next-app-shell{background:#f8faf9;display:grid;grid-template-rows:64px minmax(0,1fr);height:100vh;overflow:hidden}.next-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:60;height:64px;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);background:hsla(0,0%,100%,.98);box-shadow:0 2px 12px rgba(18,36,31,.05);padding:0 24px 0 18px}.next-app-brand,.next-brand-area,.next-topbar,.next-topbar-actions,.next-user-chip{display:flex;align-items:center}.next-brand-area{gap:16px}.next-icon-button{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#253331}.next-app-brand{gap:8px;color:var(--green-950);text-decoration:none}.next-topbar-logo{fill:none;stroke:var(--green-800);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}.next-app-brand strong{font-size:18px;font-weight:800;letter-spacing:-.01em}.next-topbar-actions{gap:18px}.next-live-clock{min-width:104px;color:#697774;text-align:right;font-size:11px;font-weight:400;line-height:1.2}.next-live-clock span,.next-live-clock time{display:block;font-weight:400}.next-live-clock span{margin-top:2px;color:#87938f;font-size:10px}.next-notification{position:relative}.next-notification span{min-width:17px;height:17px;position:absolute;top:3px;right:2px;display:grid;place-items:center;border-radius:999px;background:#1a9a5b;color:#fff;font-size:10px;font-weight:800}.next-user-chip{gap:10px}.next-user-chip>span{width:38px;height:38px;display:grid;place-items:center;border:1px solid #cfd9d5;border-radius:50%;background:linear-gradient(135deg,#f4d2b5,#6b4c38);color:#fff;font-size:12px;font-weight:800;overflow:hidden}.next-user-chip>span img{width:100%;height:100%;object-fit:cover;border-radius:50%}.next-user-chip small,.next-user-chip strong{display:block}.next-user-chip strong{color:var(--ink);font-size:13px;font-weight:800}.next-user-chip small{color:#6c7875;font-size:12px}.next-logout-button{height:38px;display:inline-flex;align-items:center;gap:8px;border:0;border-radius:8px;background:transparent;color:#1f2d2a;font-size:13px;font-weight:700}.next-logout-button span{display:inline}.next-workspace{display:grid;grid-template-columns:260px minmax(0,1fr)}.next-sidebar,.next-workspace{height:calc(100vh - 64px);min-height:0}.next-sidebar{overflow-y:auto;padding:14px 14px 22px;position:-webkit-sticky;position:sticky;scrollbar-width:none;top:64px;background:radial-gradient(circle at 80% 12%,rgba(64,179,117,.18),transparent 28%),linear-gradient(180deg,#004a39,#00372c 54%,#002e26);color:#fff}.next-sidebar::-webkit-scrollbar{display:none}.next-sidebar-collapsed .next-workspace{grid-template-columns:1fr}.next-sidebar-collapsed .next-sidebar{display:none}.next-menu-search{position:-webkit-sticky;position:sticky;top:0;z-index:3;margin:-2px 0 12px;padding:2px 0 8px;background:#004a39}.next-menu-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#d7eee4;pointer-events:none}.next-menu-search input{width:100%;height:42px;border:1px solid hsla(0,0%,100%,.22);border-radius:6px;background:#00372c;color:#fff;outline:0;padding:0 76px 0 38px;font-size:13px}.next-menu-search input::placeholder{color:hsla(0,0%,100%,.76)}.next-menu-search kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:hsla(0,0%,100%,.78);font:500 11px Segoe UI,Roboto,Arial,sans-serif}.next-menu-group,.next-menu-tree,.next-submenu{display:grid}.next-menu-tree{gap:4px}.next-menu-group{gap:2px}.next-menu-item{width:100%;min-height:39px;display:flex;align-items:center;gap:10px;border:0;border-radius:6px;background:transparent;color:hsla(0,0%,100%,.94);padding:8px 9px;text-align:left;font-size:13px;font-weight:500}.next-menu-item.active,.next-menu-item:hover{background:hsla(0,0%,100%,.12)}.next-menu-item.active{font-weight:600}.next-menu-item span{flex:1 1}.next-menu-item svg{flex:0 0 auto}.next-menu-chevron{transition:transform .15s ease}.next-menu-item[aria-expanded=false] .next-menu-chevron{transform:rotate(-90deg)}.next-menu-empty{border:1px solid hsla(0,0%,100%,.18);border-radius:6px;color:hsla(0,0%,100%,.78);padding:12px;font-size:13px;font-weight:500}.next-submenu{margin:0 0 4px 26px;border-left:1px solid hsla(0,0%,100%,.14);padding-left:8px;gap:2px}.next-submenu .next-menu-item{min-height:34px;color:hsla(0,0%,100%,.82);font-size:12px;font-weight:500}.next-content-panel{min-width:0;min-height:0;overflow-y:auto;--panel-pad-top:10px;padding:10px 24px 28px;background:linear-gradient(hsla(0,0%,100%,.78),hsla(0,0%,100%,.88)),url("data:image/svg+xml,%3Csvg width='220' height='220' viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23007046' stroke-opacity='.045' stroke-width='1.5'%3E%3Cpath d='M0 110c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M0 138c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M0 166c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M110 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3Cpath d='M138 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3Cpath d='M166 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3C/g%3E%3C/svg%3E"),#fbfdfc;background-size:auto,260px 260px,auto}.next-content-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px;position:-webkit-sticky;position:sticky;top:calc(-1 * var(--panel-pad-top, 0px));z-index:30;margin-inline:-24px;padding:8px 24px;background:rgba(251,253,252,.94);-webkit-backdrop-filter:saturate(1.15) blur(6px);backdrop-filter:saturate(1.15) blur(6px);border-bottom:1px solid rgba(0,96,73,.12);box-shadow:0 10px 22px -14px rgba(0,63,47,.22)}.next-content-heading.no-sticky{position:static;margin-inline:0;padding:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:0;box-shadow:none;margin-bottom:8px}.next-content-heading h2{margin:0;font-size:22px;font-weight:800;line-height:1.2;letter-spacing:-.01em}.next-content-heading p{margin:2px 0 0;color:#6a7773;font-size:13px}.next-content-tools{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.academic-year-switcher,.language-switcher{min-width:176px;min-height:42px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d8e6df;border-radius:8px;background:hsla(0,0%,100%,.96);color:#20312d;padding:0 10px 0 12px;box-shadow:0 10px 26px rgba(0,63,47,.08)}.academic-year-switcher span,.language-switcher span{display:inline-flex;align-items:center;gap:7px;color:var(--green-800);font-size:12px;font-weight:800;white-space:nowrap}.academic-year-switcher select,.language-switcher select{min-width:88px;border:0;background:transparent;color:var(--ink);outline:0;font-size:13px;font-weight:700;cursor:pointer}.language-switcher.compact{min-width:148px;min-height:36px;margin:14px auto 0;box-shadow:0 8px 20px rgba(0,63,47,.07)}.next-content-heading>.next-content-tools{align-self:start}html[dir=rtl] body{direction:rtl;text-align:right}html[dir=rtl] .next-workspace{grid-template-columns:minmax(0,1fr) 260px}html[dir=rtl] .next-sidebar{grid-column:2;grid-row:1}html[dir=rtl] .next-content-panel{grid-column:1;grid-row:1}html[dir=rtl] .next-sidebar-collapsed .next-workspace{grid-template-columns:1fr}html[dir=rtl] .next-menu-search svg{right:12px;left:auto}html[dir=rtl] .next-menu-search input{padding:0 38px 0 76px}html[dir=rtl] .next-menu-search kbd{right:auto;left:10px}html[dir=rtl] .next-menu-item{text-align:right}html[dir=rtl] .next-menu-item[aria-expanded=false] .next-menu-chevron{transform:rotate(90deg)}html[dir=rtl] .next-submenu{margin:0 26px 4px 0;border-right:1px solid hsla(0,0%,100%,.14);border-left:0;padding-right:8px;padding-left:0}html[dir=rtl] .profile-details,html[dir=rtl] .profile-topbar,html[dir=rtl] .student-create-grid input,html[dir=rtl] .student-create-grid select,html[dir=rtl] .student-edit-grid input,html[dir=rtl] .student-edit-grid select,html[dir=rtl] .student-results-table td,html[dir=rtl] .student-results-table th,html[dir=rtl] .student-search-form input,html[dir=rtl] .student-search-form select{text-align:right}html[dir=rtl] .profile-quality,html[dir=rtl] .school-logo-stack,html[dir=rtl] .student-status-box{justify-items:flex-end;text-align:right}.next-date-button{min-width:150px;height:42px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid var(--line);border-radius:6px;background:hsla(0,0%,100%,.94);color:#273431;font-size:13px;font-weight:700;box-shadow:0 4px 14px rgba(18,36,31,.04)}.next-dashboard-content{display:grid;grid-gap:20px;gap:20px}.next-data-empty{grid-column:1/-1;min-height:92px;display:grid;place-items:center;border:1px dashed #cfe0d8;border-radius:8px;background:hsla(0,0%,100%,.72);color:var(--muted);padding:16px;text-align:center;font-size:13px;font-weight:500}.next-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.next-dashboard-panel,.next-stat-card{border:1px solid #edf2ef;border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 10px 28px rgba(19,37,32,.08)}.next-stat-card{min-height:132px;padding:20px 18px 18px}.next-stat-card div{display:flex;align-items:flex-start;justify-content:space-between}.next-stat-card p{margin:0;color:#1d2926;font-size:13px;font-weight:750}.next-stat-card strong{display:block;margin-top:10px;color:#111817;font-size:26px;font-weight:800;line-height:1.1}.next-stat-card small{display:block;margin-top:14px;color:#0b9a5a;font-size:12px;font-weight:800}.next-stat-card small.down{color:#f02f25}.next-stat-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:8px}.next-stat-icon svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.next-stat-icon.mint{background:#dff8ed;color:#009c6b}.next-stat-icon.blue{background:#eef2ff;color:#4f68ff}.next-stat-icon.purple{background:#f1eaff;color:#7451f8}.next-stat-icon.orange{background:#fff0d8;color:#fa8b18}.next-dashboard-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,.78fr);grid-gap:16px;gap:16px}.next-dashboard-panel{padding:18px}.next-panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.next-panel-title-row h3{margin:0;font-size:15px;font-weight:800}.next-panel-title-row a,.next-panel-title-row button{border:0;background:transparent;color:var(--green-800);font-size:12px;font-weight:800;text-decoration:none}.next-chart{width:100%;min-height:240px}.chart-grid{fill:none;stroke:#e7eeeb;stroke-width:1}.chart-area{fill:rgba(27,138,82,.1)}.chart-line{fill:none;stroke:#1b8a52;stroke-width:3}.chart-dot{fill:#1b8a52;stroke:#fff;stroke-width:2}.next-announcements{display:grid;grid-gap:12px;gap:12px}.next-announcement{display:grid;grid-template-columns:24px 1fr auto;grid-gap:10px;gap:10px;align-items:start;border-bottom:1px solid #edf2ef;padding:7px 0 10px}.next-announcement:last-child{border-bottom:0}.next-announcement svg{color:#d8a41b}.next-announcement strong{display:block;color:#182321;font-size:13px}.next-announcement p{margin:5px 0 0;color:#5f6e69;font-size:12px;line-height:1.35}.next-announcement time{color:#6e7a76;font-size:11px;white-space:nowrap}.dashboard-sections{display:grid;grid-gap:20px;gap:20px}.dashboard-section{border:1px solid rgba(0,0,0,.04);border-radius:14px;background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.035);padding:24px;border-left:4px solid var(--green-600,#1b8a52)}.dashboard-section.finance{border-left-color:var(--green-600,#1b8a52)}.dashboard-section.hr{border-left-color:#4f68ff}.dashboard-section-header{display:flex;gap:12px;margin-bottom:20px}.dashboard-section-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;flex-shrink:0}.dashboard-section.finance .dashboard-section-icon{background:#dff8ed;color:#009c6b}.dashboard-section.hr .dashboard-section-icon{background:#eef2ff;color:#4f68ff}.dashboard-section-header h3{margin:0;font-size:16px;font-weight:800;color:var(--ink);flex:1 1}.dashboard-section-header small{color:var(--muted);font-size:12px;font-weight:600}.dashboard-mini-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px}.dashboard-mini-stat{display:flex;align-items:center;gap:14px;border:1px solid rgba(0,0,0,.03);border-radius:12px;background:#fafcfb;padding:16px;transition:transform .2s ease,box-shadow .2s ease}.dashboard-mini-stat:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.05)}.dashboard-mini-stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;flex-shrink:0}.dashboard-mini-stat-icon.mint{background:#dff8ed;color:#009c6b}.dashboard-mini-stat-icon.blue{background:#eef2ff;color:#4f68ff}.dashboard-mini-stat-icon.orange{background:#fff0d8;color:#fa8b18}.dashboard-mini-stat-icon.red{background:#ffecec;color:#e53e3e}.dashboard-mini-stat-text strong{display:block;color:var(--ink);font-size:20px;font-weight:800;line-height:1.1}.dashboard-mini-stat-text span{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:600}.dashboard-recent-table{margin-top:20px}.dashboard-recent-table h4{margin:0 0 12px;color:var(--ink);font-size:14px;font-weight:700}.dashboard-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.dashboard-table th{background:#f5f8f6;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;text-align:left;border-bottom:1px solid #edf2ef}.dashboard-table th:first-child{border-radius:8px 0 0 0}.dashboard-table th:last-child{border-radius:0 8px 0 0}.dashboard-table td{color:var(--ink);padding:10px 12px;border-bottom:1px solid #f0f3f1;font-weight:500}.dashboard-table tr:last-child td{border-bottom:0}.dashboard-table tr:hover td{background:#fafcfb}.dashboard-table .amount{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dashboard-table .amount.income{color:#009c6b}.dashboard-table .amount.expense{color:#e53e3e}.dashboard-table .type-badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700}.dashboard-table .type-badge.income{background:#dff8ed;color:#009c6b}.dashboard-table .type-badge.expense{background:#ffecec;color:#e53e3e}.dashboard-no-data{text-align:center;color:var(--muted);font-size:13px;font-weight:500;padding:24px 16px}.next-module-card{border:1px solid #edf2ef;border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 10px 28px rgba(19,37,32,.08);padding:22px}.next-module-card h3{margin:0 0 10px;font-size:18px;font-weight:800;letter-spacing:-.01em}.next-module-card p{margin:6px 0 0;color:var(--muted);line-height:1.5}.students-screen{display:grid;grid-gap:12px;gap:12px}.students-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:46px}.students-toolbar span{color:var(--green-800);font-size:12px;font-weight:700}.students-toolbar p{margin:2px 0 0;color:var(--muted);font-size:13px}.students-academic-context{width:-moz-fit-content;width:fit-content;display:inline-flex;margin-top:7px;border:1px solid #caeadb;border-radius:999px;background:#f2fbf7;color:var(--green-800);padding:4px 9px;font-size:11px;font-weight:800}.add-student-button{white-space:nowrap}.student-search-card{border:1px solid #edf2ef;border-radius:8px;background:hsla(0,0%,100%,.96);box-shadow:0 10px 28px rgba(19,37,32,.08);padding:20px 22px}.student-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.student-section-title.compact{margin-bottom:12px}.student-section-title h3{margin:0;color:var(--ink);font-size:18px;font-weight:800;letter-spacing:-.01em}.student-section-title.compact h3{font-size:15px}.student-section-title p{margin:5px 0 0;color:var(--muted);font-size:13px}.student-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;grid-gap:14px;gap:14px;align-items:flex-end}.student-create-grid label,.student-edit-grid label,.student-search-form label{display:grid;grid-gap:7px;gap:7px}.student-create-grid span,.student-edit-grid span,.student-search-form span{color:#1d2926;font-size:12px;font-weight:700}.student-create-grid input,.student-create-grid select,.student-edit-grid input,.student-edit-grid select,.student-search-form input,.student-search-form select{width:100%;height:42px;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.student-create-grid input:focus,.student-create-grid select:focus,.student-edit-grid input:focus,.student-edit-grid select:focus,.student-search-form input:focus,.student-search-form select:focus{border-color:#5e937c;box-shadow:0 0 0 4px rgba(0,112,70,.1)}.student-search-actions{display:flex;gap:10px}.student-close-button,.student-edit-button,.student-primary-button,.student-secondary-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;font-size:13px;font-weight:700}.student-primary-button{border:1px solid var(--green-800);background:linear-gradient(180deg,#006442,#004f36);color:#fff;padding:0 18px;box-shadow:0 8px 18px rgba(0,88,63,.16)}.student-primary-button:disabled{cursor:wait;opacity:.7}.student-secondary-button{border:1px solid #d8e2de;background:#fff;color:#263532;padding:0 16px}.student-transliterate-button{width:-moz-fit-content;width:fit-content;min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #b9e9cf;border-radius:999px;background:#f1fbf6;color:var(--green-800);padding:0 10px;font-size:11px;font-weight:800;line-height:1;cursor:pointer}.student-transliterate-button:disabled{cursor:wait;opacity:.62}.student-header-transliterate-button,.student-page-transliterate-button{min-height:34px;border-radius:7px;padding:0 12px;font-size:12px}.student-alert{margin-top:16px;border:1px solid #f4c8c2;border-radius:6px;background:#fff0ee;color:#bb2f23;padding:12px 14px;font-size:13px;font-weight:700}.student-lov-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:18px}.student-lov-list button{min-height:76px;display:grid;grid-gap:4px;gap:4px;justify-items:start;border:1px solid #e2ebe7;border-radius:8px;background:#fbfdfc;color:var(--ink);padding:13px;text-align:left}.student-lov-list button:hover{border-color:#b9e9cf;background:#f2fbf6}.student-lov-list span{color:var(--green-800);font-size:12px;font-weight:800}.student-lov-list strong{font-size:13px;font-weight:700}.student-lov-list small{color:var(--muted);font-size:12px}.student-modal-backdrop{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:rgba(12,24,21,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.student-modal{width:min(980px,96vw);max-height:min(88vh,820px);overflow:auto;border:1px solid #e0e8e4;border-radius:8px;background:#fff;box-shadow:0 24px 68px rgba(10,18,16,.3)}.student-create-modal{width:min(1080px,96vw)}.student-create-modal form{margin:0}.student-modal-footer,.student-modal-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px}.student-modal-header{position:-webkit-sticky;position:sticky;top:0;z-index:1;border-bottom:1px solid #edf2ef;background:hsla(0,0%,100%,.98)}.student-modal-header span{color:var(--green-800);font-size:12px;font-weight:800}.student-modal-header h3{margin:2px 0 0;color:var(--green-950);font-size:18px;font-weight:800;line-height:1.15;letter-spacing:-.01em}.student-modal-header p{margin:2px 0 0;color:var(--muted);font-size:12px}.student-modal-header-actions{display:flex;align-items:center;gap:8px}.student-ocr-upload{min-height:40px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;overflow:hidden;border:1px solid #b9e9cf;border-radius:6px;background:#e9f8ef;color:var(--green-800);cursor:pointer;font-size:13px;font-weight:800;padding:0 14px}.student-ocr-upload.loading{cursor:wait;opacity:.75}.student-ocr-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.student-ocr-upload input:disabled{cursor:wait}.student-ocr-progress{margin:14px 22px 0;display:inline-flex;align-items:center;gap:9px;border:1px solid #b9e9cf;border-radius:6px;background:#f0fbf5;color:var(--green-800);padding:11px 13px;font-size:13px;font-weight:700}.student-ocr-spinner{width:16px;height:16px;flex:0 0 auto;border:2px solid rgba(0,112,70,.2);border-top:2px solid var(--green-800);border-radius:50%;animation:student-ocr-spin .75s linear infinite}.student-ocr-message{margin:14px 22px 0;border-radius:6px;padding:11px 13px;font-size:13px;font-weight:700}.student-ocr-message.success{border:1px solid #bce8d2;background:#f0fbf5;color:var(--green-800)}.student-ocr-message.warning{border:1px solid #f5c5be;background:#fff1ee;color:#b42318}.student-ocr-message.error{border:1px solid #f4c8c2;background:#fff0ee;color:#bb2f23}@keyframes student-ocr-spin{to{transform:rotate(1turn)}}.student-edit-button{border:1px solid #b9e9cf;background:#e9f8ef;color:var(--green-800);min-height:34px;padding:0 11px;font-size:12px}.student-close-button{width:34px;min-height:34px;border:1px solid #d8e2de;background:#fff;color:#263532;padding:0}.student-modal-hero{display:grid;grid-template-columns:minmax(0,1fr) 170px;grid-gap:18px;gap:18px;align-items:center;margin:22px;border:1px solid #e0e8e4;border-radius:8px;background:linear-gradient(135deg,#fbfffd,#f5fbf8);padding:18px}.student-modal-summary{display:flex;align-items:center;gap:16px;min-width:0}.student-avatar,.student-avatar-fallback{width:112px;height:112px;flex:0 0 auto;border:1px solid #cce8d9;border-radius:8px;background:#e9f8ef;object-fit:cover}.student-avatar-fallback{display:grid;place-items:center;color:var(--green-800);font-size:28px;font-weight:800}.student-modal-summary p{margin:0;color:var(--green-800);font-size:13px;font-weight:800}.student-modal-summary h4{margin:5px 0 4px;color:var(--green-950);font-size:clamp(24px,3vw,36px);font-weight:800;line-height:1.1}.student-modal-summary span{color:var(--muted);font-size:14px;font-weight:600}.student-status-box{min-height:118px;display:grid;place-items:center;align-content:center;grid-gap:5px;gap:5px;border:1px solid #cfebdb;border-radius:8px;background:#f3fbf6;color:var(--green-800);text-align:center}.student-status-box strong{color:var(--green-950);font-size:15px;font-weight:800}.student-status-box span{color:var(--muted);font-size:12px}.student-create-section{display:grid;grid-template-columns:178px minmax(0,1fr);grid-gap:18px;gap:18px;margin:22px}.student-photo-upload{position:relative;width:178px;height:178px;display:grid;place-items:center;overflow:hidden;border:1px dashed #9bd8b9;border-radius:8px;background:#f1fbf6;color:var(--green-800);cursor:pointer;text-align:center}.student-photo-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.student-photo-upload span{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:16px;font-size:13px;font-weight:700;line-height:1.35}.student-photo-upload img{width:100%;height:100%;object-fit:cover}.student-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.student-create-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.student-create-grid .wide{grid-column:span 2}.student-create-guardian-section{margin:0 22px 20px;border:1px solid #edf2ef;border-radius:8px;background:#fbfdfc;padding:16px}.student-create-guardian-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.student-create-guardian-card{border:1px solid #e0e8e4;border-radius:8px;background:#fff;padding:14px}.student-guardian-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.student-create-guardian-card h4{margin:0 0 4px;color:var(--green-950);font-size:14px;font-weight:800}.student-guardian-card-heading p{margin:0;color:var(--muted);font-size:11px;font-weight:700}.guardian-photo-upload{position:relative;width:72px;height:72px;display:grid;place-items:center;flex:0 0 72px;overflow:hidden;border:1px dashed #9bd8b9;border-radius:10px;background:#f1fbf6;color:var(--green-800);cursor:pointer;text-align:center}.guardian-photo-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.guardian-photo-upload span{display:grid;justify-items:center;grid-gap:4px;gap:4px;font-size:11px;font-weight:800}.guardian-photo-upload img{width:100%;height:100%;object-fit:cover}.student-header-qr-card{min-width:156px;min-height:48px;display:grid;grid-template-columns:38px 1fr;grid-column-gap:8px;column-gap:8px;align-items:center;border:1px solid #cfebdb;border-radius:10px;background:#f3fbf6;color:var(--green-800);padding:5px 8px}.student-header-qr-card img{width:36px;height:36px;border-radius:6px;background:#fff}.student-header-qr-card svg{justify-self:center}.student-header-qr-card strong{display:block;color:var(--green-950);font-size:11px;font-weight:800;line-height:1.05}.student-header-qr-card span{display:block;margin-top:2px;color:var(--muted);font-size:9px;font-weight:600;line-height:1.15}.student-qr-thumb{position:relative;display:inline-flex;padding:0;border:0;background:transparent;cursor:pointer;border-radius:6px}.student-qr-enlarge-badge{position:absolute;inset:0;display:grid;place-items:center;border-radius:6px;background:rgba(0,63,47,.55);color:#fff;opacity:0;transition:opacity .15s ease}.student-header-qr-card.enlargeable .student-qr-thumb:focus-visible .student-qr-enlarge-badge,.student-header-qr-card.enlargeable .student-qr-thumb:hover .student-qr-enlarge-badge{opacity:1}@media (hover:none){.student-qr-enlarge-badge{opacity:1}}.student-qr-modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(12,24,21,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.student-qr-modal{width:min(420px,calc(100vw - 32px));background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 60px rgba(6,59,47,.24)}.student-qr-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid #e6efeb;background:linear-gradient(135deg,#f6fbf8,#fff)}.student-qr-modal-eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--green-800);font-size:11px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.student-qr-modal-head h3{margin:5px 0 0;color:var(--green-950);font-size:17px;font-weight:900}.student-qr-modal-close{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border:1px solid #d7e3de;border-radius:10px;background:#fff;color:var(--green-800);cursor:pointer}.student-qr-modal-close:hover{background:#f1f7f4}.student-qr-modal-body{display:grid;justify-items:center;grid-gap:8px;gap:8px;padding:24px 24px 12px}.student-qr-modal-body img{width:min(280px,68vw);height:auto;border:1px solid #e6efeb;border-radius:14px;background:#fff;padding:12px}.student-qr-modal-body p{margin:6px 0 0;color:var(--green-950);font-size:14px;font-weight:850;text-align:center}.student-qr-modal-body span{color:#61736f;font-size:12.5px;font-weight:700}.student-qr-modal-foot{display:flex;justify-content:flex-end;padding:14px 20px 18px}.student-detail-grid,.student-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px;margin:0 22px 20px}.student-edit-stack{display:grid;grid-gap:18px;gap:18px}.student-edit-student-section{display:grid;grid-template-columns:150px minmax(0,1fr);grid-gap:18px;gap:18px;margin:22px 22px 0}.student-edit-student-section .student-edit-grid{margin:0}.student-photo-upload.edit-photo{width:150px;height:150px}.student-info-tile{min-height:94px;display:grid;grid-template-columns:40px 1fr;grid-gap:12px;gap:12px;border:1px solid #edf2ef;border-radius:8px;background:#fbfdfc;padding:15px}.student-edit-grid .wide,.student-info-tile.wide{grid-column:span 2}.student-info-tile>span{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;background:var(--green-100);color:var(--green-800)}.student-info-tile p{margin:0 0 6px;color:var(--muted);font-size:12px;font-weight:700}.student-info-tile strong{color:var(--ink);font-size:14px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}.student-guardian-details-section{margin:0 22px 20px;border:1px solid #edf2ef;border-radius:8px;background:#fbfdfc;padding:16px}.student-guardian-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.student-guardian-detail-card{display:grid;grid-template-columns:74px minmax(0,1fr);grid-gap:14px;gap:14px;border:1px solid #e0e8e4;border-radius:10px;background:#fff;padding:14px}.guardian-detail-photo{width:72px;height:72px;border-radius:12px;object-fit:cover;border:1px solid #cfe9dc;background:#f1fbf6}.guardian-detail-photo.fallback{display:grid;place-items:center;color:var(--green-800)}.student-guardian-detail-card span{display:inline-block;margin-bottom:4px;color:var(--green-800);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.student-guardian-detail-card h4{margin:0;color:var(--green-950);font-size:16px;font-weight:900}.student-guardian-detail-card p{margin:4px 0 12px;color:var(--muted);font-size:12px;font-weight:700}.student-guardian-detail-card dl{display:grid;grid-gap:8px;gap:8px;margin:0}.student-guardian-detail-card dl div{display:grid;grid-template-columns:82px minmax(0,1fr);grid-gap:8px;gap:8px}.student-guardian-detail-card dt{color:var(--muted);font-size:11px;font-weight:800}.student-guardian-detail-card dd{min-width:0;margin:0;color:var(--ink);font-size:12px;font-weight:700;overflow-wrap:anywhere}.student-academic-section{margin:0 22px 20px;border:1px solid #edf2ef;border-radius:8px;background:#fbfdfc;padding:16px}.student-record-table{display:grid;grid-gap:0;gap:0;overflow:hidden;border:1px solid #e6efea;border-radius:8px;background:#fff}.student-record-row{display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(4,minmax(90px,.7fr));grid-gap:12px;gap:12px;align-items:center;border-bottom:1px solid #edf2ef;padding:12px 14px;color:#1c2b28;font-size:13px}.student-record-row:last-child{border-bottom:0}.student-record-row.head{background:#f3fbf6;color:var(--green-800);font-size:12px;font-weight:800}.student-record-empty{padding:18px;color:var(--muted);font-size:13px}.student-fees-chips{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:16px}.student-fees-chip{min-width:0;border:1px solid #e2ede8;border-radius:10px;background:#fff;padding:10px 12px}.student-fees-chip span{display:block;color:#60736d;font-size:10.5px;font-weight:850;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-fees-chip strong{display:block;margin-top:4px;color:var(--green-950);font-size:15px;font-weight:850}.student-fees-chip.good{border-color:#cfe8da;background:#f5fbf7}.student-fees-chip.good strong{color:#0b7a4f}.student-fees-chip.warn{border-color:#f3d9a4;background:#fff9ed}.student-fees-chip.warn strong{color:#9c6200}.student-fees-chip.bad{border-color:#f2c4bc;background:#fff4f2}.student-fees-chip.bad strong{color:#b42318}.student-fees-subhead{margin:16px 0 8px;color:var(--green-900);font-size:13px;font-weight:850}.student-record-row.fees-pay-row{grid-template-columns:minmax(90px,.8fr) minmax(120px,1.2fr) minmax(90px,.8fr) minmax(80px,.7fr) minmax(80px,.7fr)}.student-record-row.student-fees-conc-row{grid-template-columns:minmax(160px,1.5fr) repeat(2,minmax(90px,.7fr))}@media (max-width:760px){.student-fees-chips{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:520px){.student-fees-chips{grid-template-columns:repeat(2,minmax(0,1fr))}}.student-modal-footer{justify-content:flex-end;border-top:1px solid #edf2ef;background:#fff}.student-create-grid label.invalid input,.student-create-grid label.invalid select,.student-search-form label.invalid input,.student-search-form label.invalid select{border-color:#e34c3f}.student-field-error{display:inline-flex;align-items:flex-start;gap:5px;color:#7f3b35;font-size:11px;font-weight:500;line-height:1.25}.student-field-error svg{flex:0 0 auto;margin-top:1px;fill:#bb2f23;color:#bb2f23}.student-results-panel{display:grid;grid-gap:14px;gap:14px;margin-top:20px}.student-results-table-wrap{overflow-x:auto;border:1px solid #e1eae6;border-radius:8px;background:#fff}.student-results-table{width:100%;min-width:980px;border-collapse:collapse}.student-results-table td,.student-results-table th{border-bottom:1px solid #edf2ef;padding:13px 14px;text-align:left;vertical-align:middle}.student-results-table th{background:#fbfdfc;color:#182321;font-size:13px;font-weight:700}.student-results-table td{color:#1d2926;font-size:13px;font-weight:500}.student-results-table tbody tr:last-child td{border-bottom:0}.student-no-data{height:84px;color:var(--muted)!important;font-size:14px!important}.student-view-button{min-height:34px;display:inline-flex;align-items:center;gap:7px;border:1px solid #b9e9cf;border-radius:6px;background:#f0fbf5;color:var(--green-800);padding:0 10px;font-size:12px;font-weight:700}.student-results-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.student-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#273431;font-size:13px}.student-pagination input{width:72px;height:36px;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:var(--ink);padding:0 10px}.student-pagination button{width:34px;height:34px;display:grid;place-items:center;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:var(--green-800)}.student-pagination button:disabled{cursor:not-allowed;color:#a6b2ae;background:#f7faf8}.student-results-footer .student-page-transliterate-button{margin-left:auto;white-space:nowrap}.student-modal{position:relative}.student-modal-header{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.student-modal-identity{min-width:0;display:flex;align-items:center;gap:11px}.student-modal-identity .student-avatar,.student-modal-identity .student-avatar-fallback{width:52px;height:52px;border-radius:8px}.student-modal-identity .student-avatar-fallback{font-size:17px}.student-modal-identity span{color:var(--green-800);font-size:12px;font-weight:800}.student-modal-identity h3{margin:2px 0 0;color:var(--green-950);font-size:20px;font-weight:800;line-height:1.15}.student-modal-identity p{margin:2px 0 0;color:var(--muted);font-size:12px;font-weight:600}.student-header-status{min-width:124px;min-height:40px;display:grid;grid-template-columns:18px 1fr;grid-column-gap:7px;column-gap:7px;align-items:center;border:1px solid #cfebdb;border-radius:8px;background:#f3fbf6;color:var(--green-800);padding:5px 8px}.student-header-status svg{grid-row:span 2}.student-header-status strong{color:var(--green-950);font-size:11px;font-weight:800;line-height:1}.student-header-status span{color:var(--muted);font-size:9px;font-weight:500;line-height:1.1}.student-detail-grid,.student-edit-grid{margin-top:18px}.student-confirm-backdrop{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:18px;background:rgba(12,24,21,.42)}.student-confirm-dialog{width:min(420px,92vw);border:1px solid #e0e8e4;border-radius:8px;background:#fff;box-shadow:0 24px 68px rgba(10,18,16,.3);padding:24px}.student-confirm-dialog h4{margin:0 0 10px;color:var(--green-950);font-size:18px;font-weight:800}.student-confirm-dialog p{margin:0;color:#3f4b47;font-size:14px}.student-confirm-dialog div{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.school-profile-shell{display:grid;grid-template-columns:288px minmax(0,1fr)}.school-profile-shell,.school-profile-standalone{min-height:100vh;background:linear-gradient(hsla(0,0%,100%,.82),hsla(0,0%,100%,.92)),url("data:image/svg+xml,%3Csvg width='220' height='220' viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23007046' stroke-opacity='.045' stroke-width='1.5'%3E%3Cpath d='M0 110c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M0 138c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M0 166c42-50 86-50 132 0 28 28 57 28 88 0'/%3E%3Cpath d='M110 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3Cpath d='M138 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3Cpath d='M166 0c-50 42-50 86 0 132 28 28 28 57 0 88'/%3E%3C/g%3E%3C/svg%3E"),#fbfdfc;background-size:auto,260px 260px,auto}.profile-sidebar{min-height:100vh;padding:22px 18px;color:#fff;background:radial-gradient(circle at 80% 12%,rgba(64,179,117,.18),transparent 28%),linear-gradient(180deg,#004a39,#00372c 54%,#002e26)}.sidebar-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.sidebar-brand img{width:40px;height:40px}.sidebar-brand span,.sidebar-brand strong{display:block}.sidebar-brand strong{font-size:18px;font-weight:700}.sidebar-brand span{margin-top:2px;color:hsla(0,0%,100%,.74);font-size:12px}.profile-nav{display:grid;grid-gap:6px;gap:6px}.profile-nav button{width:100%;min-height:42px;display:grid;grid-template-columns:18px 1fr 16px;align-items:center;grid-gap:10px;gap:10px;border:0;border-radius:7px;background:transparent;color:hsla(0,0%,100%,.9);padding:9px 10px;text-align:left;font-size:13px;font-weight:600}.profile-nav button.active,.profile-nav button:hover{background:hsla(0,0%,100%,.13)}.profile-content{min-width:0;padding:28px clamp(20px,4vw,48px) 44px;background:radial-gradient(circle at 90% 10%,rgba(27,138,82,.07) 0,transparent 45%),radial-gradient(circle at 10% 90%,rgba(79,104,255,.05) 0,transparent 45%),#f8fbf9;min-height:100%}.embedded-profile-content{padding:0;background:transparent}.profile-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.profile-topbar h1,.profile-topbar p{margin:0}.profile-topbar p{color:var(--green-800);font-size:13px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.profile-topbar h1{margin-top:6px;font-size:26px;font-weight:800;line-height:1.2;color:var(--green-950)}.mobile-menu{display:none;width:40px;height:40px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.status-pill{min-height:34px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--panel);color:var(--muted);padding:0 13px;font-size:13px;font-weight:600}.status-pill.active{border-color:#b9e9cf;background:#e9f8ef;color:var(--green-800);box-shadow:0 2px 8px rgba(27,138,82,.08)}.profile-alert{margin-bottom:18px;border:1px solid #b9e9cf;border-radius:7px;background:#f0fbf5;color:var(--green-800);padding:12px 14px;font-size:13px;font-weight:600}.profile-alert.error{border-color:#f4c8c2;background:#fff0ee;color:#bb2f23}.dismissible-alert{display:flex;align-items:center;justify-content:space-between;gap:12px}.alert-message{min-width:0;display:inline-flex;align-items:center;gap:9px;overflow-wrap:anywhere}.alert-dismiss-button{width:30px;height:30px;flex:0 0 auto;display:inline-grid;place-items:center;border:1px solid;border-radius:999px;background:hsla(0,0%,100%,.72);color:inherit;cursor:pointer;font-size:18px;font-weight:800;line-height:1}.alert-dismiss-button:hover{background:#fff}.profile-hero{display:grid;grid-template-columns:minmax(0,1fr) 132px;align-items:center;grid-gap:24px;gap:24px;border:1px solid rgba(0,0,0,.04);border-radius:18px;background:linear-gradient(135deg,#fff,#fcfdfd);box-shadow:0 10px 26px rgba(0,0,0,.03);padding:24px 28px;position:relative;overflow:hidden}.profile-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(to bottom,var(--green-600,#1b8a52),#4f68ff)}.school-logo-stack{display:grid;justify-items:center;grid-gap:12px;gap:12px}.school-logo-panel{width:116px;height:116px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.055);overflow:hidden}.school-logo-panel img{width:100%;height:100%;object-fit:cover;border-radius:50%}.school-logo-panel span{color:var(--muted);padding:10px;text-align:center;font-size:12px;line-height:1.35}.school-title-block span{color:var(--green-800);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.school-title-block h2{margin:6px 0 8px;font-size:clamp(19px,1.9vw,24px);font-weight:850;line-height:1.18;color:var(--green-950)}.school-title-block p{max-width:760px;margin:0;color:#4a5a54;font-size:13px;line-height:1.55}.school-affiliation-line{display:inline-block;margin:6px 0 8px;padding:4px 14px;background:#e9f8ef;color:var(--green-800)!important;font-size:12px!important;font-weight:750;border-radius:20px;border:1px solid rgba(27,138,82,.12);box-shadow:0 2px 6px rgba(27,138,82,.04)}.school-title-block .school-address-line{margin-top:10px;color:var(--muted);font-size:13px;font-weight:500}.profile-quality{display:none}.profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px;margin-top:20px}.info-panel{min-height:92px;display:grid;grid-template-columns:40px 1fr;grid-gap:14px;gap:14px;border:1px solid rgba(0,0,0,.03);border-radius:14px;background:#fff;padding:16px;box-shadow:0 6px 18px rgba(0,0,0,.02);transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s ease}.info-panel:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.055)}.info-panel>div{min-width:0}.info-panel>span{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#eff9f4,#e1f5eb);color:var(--green-800);box-shadow:inset 0 2px 4px rgba(0,0,0,.015)}.info-panel p,.info-panel small,.info-panel strong{display:block}.info-panel p{margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.info-panel strong{color:var(--ink);font-size:14px;font-weight:700;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.info-panel small{margin-top:8px;color:var(--muted);font-size:12px;line-height:1.4}.profile-details{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);grid-gap:20px;gap:20px;margin-top:20px}.profile-details article{border:1px solid rgba(0,0,0,.03);border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.035);padding:28px}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px;color:var(--green-800);border-bottom:1px solid #f0f4f2;padding-bottom:14px}.section-heading h3{margin:0;color:var(--ink);font-size:17px;font-weight:850}.section-heading svg{color:var(--green-600)}.profile-section-heading{justify-content:space-between}.profile-section-title{display:inline-flex;align-items:center;gap:12px}.profile-edit-details-button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(0,96,73,.25);border-radius:9px;background:rgba(0,96,73,.06);color:var(--green-800);font-size:12.5px;font-weight:800;padding:7px 13px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.profile-edit-details-button:hover{background:rgba(0,96,73,.12);border-color:rgba(0,96,73,.4)}.profile-edit-modal{width:min(760px,96vw)}.profile-edit-form{padding:0 22px 20px;margin:0}.profile-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px 16px;gap:14px 16px}.profile-edit-field{display:grid;grid-gap:6px;gap:6px;min-width:0}.profile-edit-field.wide{grid-column:1/-1}.profile-edit-field span{font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--green-800)}.profile-edit-field input,.profile-edit-field select,.profile-edit-field textarea{border:1px solid #d8e6df;border-radius:9px;padding:10px 12px;font-size:13.5px;color:var(--ink);background:#fff;outline:none;width:100%;resize:vertical;font-family:inherit}.profile-edit-field select{cursor:pointer;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.profile-edit-field input:focus,.profile-edit-field select:focus,.profile-edit-field textarea:focus{border-color:var(--green-700);box-shadow:0 0 0 3px rgba(0,96,73,.12)}.profile-edit-field.locked input{background:#f2f5f4;color:#7a8783;cursor:not-allowed}.profile-edit-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.profile-edit-cancel,.profile-edit-save{display:inline-flex;align-items:center;gap:7px;border-radius:10px;font-size:13px;font-weight:800;padding:10px 18px;cursor:pointer;border:1px solid transparent}.profile-edit-cancel{background:#fff;border-color:#d8e6df;color:#53655f}.profile-edit-cancel:hover{background:#f4f7f6}.profile-edit-save{background:linear-gradient(135deg,var(--green-800),var(--green-700));color:#fff}.profile-edit-cancel:disabled{opacity:.6;cursor:not-allowed}.profile-edit-save:disabled{background:#e4eae7;color:#9aa8a2;cursor:not-allowed}@media (max-width:620px){.profile-edit-grid{grid-template-columns:1fr}}dl{grid-gap:0;gap:0;margin:0}dl,dl div{display:grid}dl div{grid-template-columns:170px minmax(0,1fr);grid-gap:16px;gap:16px;padding:13px 0;border-bottom:1px dashed #e8eee9}dl div:last-child{border-bottom:0}dd,dt{margin:0}dt{color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase;letter-spacing:.02em}dd{color:var(--ink);font-size:14px;font-weight:600;overflow-wrap:anywhere}.snapshot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.snapshot{border:1px solid rgba(0,0,0,.02);border-radius:16px;background:linear-gradient(135deg,#f8fbf9,#f3f9f6);padding:20px;transition:transform .25s cubic-bezier(.4,0,.2,1),background .25s ease,box-shadow .25s ease;box-shadow:inset 0 2px 4px rgba(0,0,0,.01)}.snapshot:hover{transform:translateY(-3px);background:linear-gradient(135deg,#f0f9f4,#e6f5ed);box-shadow:0 8px 24px rgba(27,138,82,.07)}.snapshot span,.snapshot strong{display:block}.snapshot strong{color:var(--green-950);font-size:21px;font-weight:800}.snapshot span{margin-top:6px;color:var(--muted)}.snapshot span,.website-link{font-size:13px;font-weight:600}.website-link{min-height:42px;display:inline-flex;align-items:center;gap:8px;margin-top:18px;border:1px solid #b9e9cf;border-radius:7px;background:#e9f8ef;color:var(--green-800);padding:0 14px;text-decoration:none}@media (max-width:1120px){.next-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.next-dashboard-grid{grid-template-columns:1fr}.dashboard-mini-stats,.student-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-search-actions{justify-content:flex-end}.student-create-grid,.student-create-guardian-grid,.student-detail-grid,.student-edit-grid,.student-guardian-detail-grid,.student-lov-list{grid-template-columns:repeat(2,minmax(0,1fr))}.student-create-section{grid-template-columns:150px minmax(0,1fr)}.student-photo-upload{width:150px;height:150px}.student-modal-hero{grid-template-columns:1fr}.student-status-box{place-items:start;padding:16px;text-align:left}.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-hero{gap:32px}.profile-details,.profile-hero{grid-template-columns:1fr}.profile-quality{padding:12px}.profile-quality,.school-logo-stack{justify-items:center}}@media (max-width:840px){.next-sidebar-collapsed .next-workspace,.next-workspace{grid-template-columns:1fr}.next-sidebar{position:fixed;inset:64px auto 0 0;width:min(86vw,260px);z-index:50;box-shadow:18px 0 34px rgba(3,36,29,.28)}html[dir=rtl] .next-sidebar{inset:64px 0 0 auto;box-shadow:-18px 0 34px rgba(3,36,29,.28)}.next-sidebar-collapsed .next-sidebar{display:none}.school-profile-shell{grid-template-columns:1fr}.profile-sidebar{display:none}.mobile-menu{display:grid}.profile-topbar{align-items:center}.profile-topbar>div{flex:1 1}}@media (max-width:620px){.next-auth-shell{align-items:start;padding:12px}.next-auth-card{min-height:calc(100vh - 24px);padding:28px 18px 22px}.next-auth-brand h1{font-size:32px}.next-topbar{height:58px;padding:0 12px}.next-sidebar{inset:58px auto 0 0}.next-brand-area{gap:10px;min-width:108px;flex:0 0 auto}.next-topbar-actions{flex:1 1;min-width:0;gap:8px;flex-wrap:nowrap;justify-content:flex-end;overflow:hidden}.next-app-brand strong{display:inline-block;font-size:14px;font-weight:800}.next-notification{transform:scale(.88);transform-origin:center}.next-user-chip{gap:8px}.next-user-chip>span{width:32px;height:32px;font-size:11px;flex:0 0 auto}.next-user-chip div{max-width:88px}.next-live-clock{display:block;min-width:66px;text-align:center;font-size:9px;line-height:1.15}.next-live-clock span{margin-top:1px;font-size:8px}.next-logout-button{height:34px;padding:0 11px;border:1px solid #d6dedb;border-radius:999px;background:#fff;font-size:11px;flex:0 0 auto}.next-logout-button span{display:inline}.next-user-chip small,.next-user-chip strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.next-user-chip strong{font-size:11px}.next-user-chip small{font-size:10px}.next-content-panel{--panel-pad-top:10px;padding:10px 12px 22px}.next-content-heading{display:grid;margin-bottom:12px;margin-inline:-12px;padding-inline:12px}.next-content-heading.no-sticky{margin-inline:0;padding-inline:0}.next-content-heading>.next-content-tools{width:min(100%,480px);justify-content:flex-start}.next-content-heading>.next-content-tools .academic-year-switcher,.next-content-heading>.next-content-tools .language-switcher{flex:1 1 210px}.academic-year-switcher,.language-switcher{min-width:0}.next-date-button{width:-moz-fit-content;width:fit-content}.next-stats-grid{grid-template-columns:1fr;gap:12px}.next-announcement{grid-template-columns:24px 1fr}.next-announcement time{grid-column:2}.dashboard-mini-stats{grid-template-columns:1fr}.dashboard-section{padding:16px}.dashboard-mini-stat-text strong{font-size:17px}.dashboard-recent-table{overflow-x:auto}.student-search-card{padding:16px}.student-results-footer{align-items:flex-start;flex-direction:column}.student-results-footer .student-page-transliterate-button{margin-left:0}.student-create-grid,.student-create-grid.compact,.student-create-guardian-grid,.student-create-section,.student-detail-grid,.student-edit-grid,.student-edit-student-section,.student-guardian-detail-grid,.student-lov-list,.student-search-form{grid-template-columns:1fr}.students-toolbar{display:grid}.add-student-button{width:100%}.student-search-actions{display:grid;grid-template-columns:1fr 1fr}.student-modal-backdrop{align-items:flex-end;padding:10px}.student-modal{width:100%;max-height:92vh}.student-modal-footer,.student-modal-header{padding:14px}.student-modal-header{align-items:flex-start;flex-wrap:wrap}.student-modal-header-actions{width:100%;flex-wrap:wrap;justify-content:flex-start}.student-header-qr-card{width:min(100%,220px);min-width:0}.student-academic-section,.student-create-guardian-section,.student-create-section,.student-detail-grid,.student-edit-grid,.student-guardian-details-section,.student-modal-hero{margin-left:14px;margin-right:14px}.student-photo-upload,.student-photo-upload.edit-photo{width:132px;height:132px}.student-modal-summary{align-items:flex-start}.student-avatar,.student-avatar-fallback{width:86px;height:86px}.student-create-grid .wide,.student-edit-grid .wide,.student-info-tile.wide{grid-column:auto}.student-record-table{overflow-x:auto}.student-record-row{min-width:620px}.profile-content{padding:18px 12px 28px}.embedded-profile-content{padding:0}.profile-topbar{flex-wrap:wrap}.status-pill{width:100%;justify-content:center}.profile-hero{display:flex;flex-direction:column-reverse;align-items:center;text-align:center;padding:24px 16px;gap:20px}.school-title-block h2{font-size:24px;margin:12px 0 10px}.school-title-block p{margin:0 auto}.school-logo-panel{width:104px;height:104px}.school-logo-panel img{width:76px;height:76px}.profile-grid,.snapshot-grid,dl div{grid-template-columns:1fr}dl div{gap:5px}}@media (min-width:620px) and (max-width:670px){.next-topbar{padding:0 10px 0 12px;gap:10px}.next-brand-area{gap:8px;min-width:100px}.next-topbar-actions{gap:7px;min-width:0}.next-topbar-logo{width:28px;height:28px}.next-app-brand strong{font-size:16px}.next-live-clock{min-width:58px;font-size:8px}.next-live-clock span{font-size:7px}.next-notification{transform:scale(.8)}.next-user-chip{gap:6px}.next-user-chip>span{width:30px;height:30px;font-size:10px}.next-user-chip div{max-width:72px}.next-user-chip strong{font-size:11px}.next-user-chip small{font-size:9px}.next-logout-button{height:32px;padding:0 9px;font-size:10px}.next-logout-button svg{width:15px;height:15px}}.application-rule-screen{display:grid;grid-gap:14px;gap:14px}.application-rule-loading{min-height:180px;display:grid;place-items:center;border:1px solid #edf2ef;border-radius:8px;background:hsla(0,0%,100%,.96);color:var(--muted);font-weight:700}.rule-alert{display:inline-flex;align-items:center;gap:9px;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:700}.rule-alert.error{border:1px solid #ffc9c2;background:#fff1ef;color:#b92318}.rule-alert.success{border:1px solid #bbebd0;background:#effbf4;color:var(--green-800)}.rule-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.audit-rule-card,.role-rule-card,.rule-policy-card,.rule-summary-card{border:1px solid #edf2ef;border-radius:10px;background:hsla(0,0%,100%,.96);box-shadow:0 10px 28px rgba(19,37,32,.08)}.rule-summary-card{min-height:132px;position:relative;display:grid;grid-gap:6px;gap:6px;padding:18px 18px 16px;overflow:hidden}.rule-summary-card:after{content:"";position:absolute;right:-18px;bottom:-28px;width:92px;height:92px;border-radius:50%;background:rgba(0,112,70,.06)}.rule-summary-card span{color:#53645f;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.rule-summary-card strong{color:var(--green-950);font-size:24px;font-weight:800;line-height:1.12}.rule-summary-card p{margin:0;color:var(--muted);font-size:13px}.rule-summary-card.closed strong{color:#b92318}.rule-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--green-100);color:var(--green-800)}.audit-rule-card,.role-rule-card,.rule-policy-card{padding:20px}.rule-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}.rule-card-heading.slim{margin-bottom:12px}.rule-card-heading span{color:var(--green-800);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.rule-card-heading h3{margin:2px 0 0;color:var(--ink);font-size:17px;font-weight:800;letter-spacing:-.01em}.rule-card-heading p{margin:5px 0 0;color:var(--muted);font-size:13px}.rule-form-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-gap:14px;gap:14px;margin-bottom:16px}.rule-form-grid label{display:grid;grid-gap:7px;gap:7px}.rule-form-grid span{color:#1d2926;font-size:12px;font-weight:700}.rule-form-grid input{width:100%;height:42px;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.rule-form-grid input:focus{border-color:#5e937c;box-shadow:0 0 0 4px rgba(0,112,70,.1)}.rule-toggle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:12px}.rule-toggle-grid.compact{margin-top:0}.rule-toggle{min-height:92px;position:relative;display:flex;align-items:flex-start;gap:12px;border:1px solid #dfe9e4;border-radius:9px;background:#fbfdfc;padding:14px}.rule-toggle input{position:absolute;opacity:0;pointer-events:none}.rule-toggle-control{width:38px;height:22px;flex:0 0 auto;position:relative;border-radius:999px;background:#cddad5;transition:background .15s ease}.rule-toggle-control:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transition:transform .15s ease}.rule-toggle input:checked+.rule-toggle-control{background:var(--green-800)}.rule-toggle input:checked+.rule-toggle-control:after{transform:translateX(16px)}.rule-toggle-copy{display:grid;grid-gap:4px;gap:4px}.rule-toggle-copy strong{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-size:13px;font-weight:800}.rule-toggle-copy small{color:var(--muted);font-size:12px;line-height:1.45}.audit-list,.role-rule-list{display:grid;grid-gap:10px;gap:10px}.role-rule-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(280px,1.8fr) auto;grid-gap:14px;gap:14px;align-items:center;border:1px solid #e3ece7;border-radius:8px;background:#fbfdfc;padding:12px}.role-rule-title{display:grid;grid-gap:2px;gap:2px}.role-rule-title strong{color:var(--ink);font-size:13px;font-weight:800}.role-rule-title span{color:var(--muted);font-size:12px;font-weight:700}.role-rule-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px 14px;gap:8px 14px}.role-rule-options label{display:inline-flex;align-items:center;gap:8px;color:#2a3834;font-size:12px;font-weight:700}.role-rule-options input{width:16px;height:16px;accent-color:var(--green-800)}.audit-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border:1px solid #e3ece7;border-radius:8px;background:#fbfdfc;padding:12px 14px}.audit-row div{display:grid;grid-gap:3px;gap:3px}.audit-row strong{color:var(--ink);font-size:13px;font-weight:800}.audit-row span{color:var(--muted);font-size:12px}.audit-row small{color:var(--green-800);font-size:11px;font-weight:800;text-align:right}.audit-empty{border:1px dashed #cfe0d8;border-radius:8px;background:#fbfdfc;color:var(--muted);padding:18px;text-align:center;font-size:13px;font-weight:700}@media (max-width:1180px){.role-rule-row,.rule-summary-grid,.rule-toggle-grid{grid-template-columns:1fr}}@media (max-width:720px){.audit-row,.rule-card-heading{flex-direction:column}.role-rule-options,.rule-form-grid{grid-template-columns:1fr}.audit-rule-card,.role-rule-card,.rule-policy-card{padding:16px}}.audit-search-form{display:grid;grid-template-columns:minmax(286px,1fr) minmax(286px,1fr) minmax(190px,.75fr) auto;grid-gap:12px;gap:12px;align-items:flex-end;margin:0 0 14px}.audit-search-form label{display:grid;grid-gap:7px;gap:7px}.audit-search-form label span{color:#1d2926;font-size:12px;font-weight:800}.audit-search-form input{width:100%;height:42px;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-size:13px;transition:border-color .15s ease,box-shadow .15s ease}.audit-search-form input:focus{border-color:#5e937c;box-shadow:0 0 0 4px rgba(0,112,70,.1)}.audit-date-time-inputs{display:grid;grid-template-columns:minmax(150px,170px) 112px;grid-gap:8px;gap:8px}.audit-date-time-inputs .dmy-date-field.compact,.audit-date-time-inputs .dmy-date-picker-shell{width:100%;max-width:170px}.audit-date-time-inputs .dmy-date-text-input{width:100%}.audit-search-actions{display:inline-flex;gap:10px;justify-content:flex-end}.audit-table-shell{overflow-x:auto;border:1px solid #e3ece7;border-radius:9px;background:#fff}.audit-table{width:100%;min-width:820px;border-collapse:collapse}.audit-table td,.audit-table th{padding:13px 16px;border-bottom:1px solid #edf2ef;text-align:left;vertical-align:top;font-size:13px}.audit-table th{background:#f4fbf7;color:var(--green-900);font-size:12px;font-weight:900;letter-spacing:.01em}.audit-table tbody tr:last-child td{border-bottom:0}.audit-table td span,.audit-table td strong{display:block}.audit-table td strong{color:var(--ink);font-size:13px;font-weight:800}.audit-table td span{margin-top:3px;color:var(--muted);font-size:12px}.audit-empty-cell{color:var(--muted);font-weight:800;text-align:center!important}.audit-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:#2d3a36;font-size:13px;font-weight:700}.audit-pagination>div{display:inline-flex;gap:8px}.audit-pagination button{min-width:38px;height:36px;border:1px solid #d7e1dd;border-radius:7px;background:#fff;color:var(--green-800);cursor:pointer;font-size:14px;font-weight:900}.audit-pagination button:disabled{background:#f4f7f5;color:#9aa9a3;cursor:not-allowed}@media (max-width:1180px){.audit-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-search-actions{grid-column:1/-1}}@media (max-width:720px){.audit-search-form{grid-template-columns:1fr}.audit-search-actions{justify-content:stretch}.audit-search-actions button{flex:1 1}.audit-pagination{align-items:flex-start;flex-direction:column}}.ops-module{display:grid;grid-gap:18px;gap:18px}.ops-alert,.ops-loading{min-height:52px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:14px 16px;color:#3d4b47;font-weight:700}.ops-alert.success{border-color:#bce7cf;background:#effaf4;color:#006442}.ops-alert.error{border-color:#f2b9b2;background:#fff0ee;color:#b42318}.ops-stats-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));grid-gap:14px;gap:14px}.ops-card,.ops-stat{border:1px solid var(--line);border-radius:12px;background:hsla(0,0%,100%,.96);box-shadow:0 14px 34px rgba(0,63,47,.06)}.ops-stat{min-height:124px;padding:18px}.ops-stat span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--green-100);color:var(--green-800)}.ops-stat.warn span{background:#fff0d9;color:#c56a00}.ops-stat p{margin:14px 0 6px;color:#51615d;font-size:13px;font-weight:700}.ops-stat strong{color:var(--ink);font-size:22px;font-weight:800}.ops-grid{display:grid;grid-gap:18px;gap:18px}.ops-grid.two{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.ops-card{min-width:0;padding:20px}.ops-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.ops-card-head h3{margin:0;color:var(--green-950);font-size:17px;font-weight:800;letter-spacing:-.01em}.ops-card-head p{margin:4px 0 0;color:#60706c;font-size:13px}.ops-card-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.finance-report-header-tools{display:flex;align-items:flex-end;justify-content:flex-end;gap:12px;margin:-8px 0 18px}.finance-report-range{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.finance-report-range label{display:grid;grid-gap:5px;gap:5px;color:#40514d;font-size:12px;font-weight:700}.finance-report-range input{width:155px;height:40px;border:1px solid #cfd9d5;border-radius:9px;background:#fff;color:var(--ink);padding:0 11px;font-size:13px;outline:0}.finance-report-range input:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.report-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.report-range-pill{min-height:34px;display:inline-flex;align-items:center;border:1px solid #cfe5da;border-radius:999px;background:#f3fbf6;color:var(--green-900);padding:0 12px;font-size:12px;font-weight:800;white-space:nowrap}.report-download-menu{position:relative;display:inline-flex}.report-download-menu:after{content:"";position:absolute;top:100%;right:0;left:0;height:8px}.report-download-status{min-height:34px;display:inline-flex;align-items:center;border:1px solid #cfe5da;border-radius:999px;background:#f3fbf6;color:var(--green-900);padding:0 12px;font-size:12px;font-weight:800;white-space:nowrap}.report-download-status.error{border-color:rgba(220,38,38,.28);background:#fff5f5;color:#b42318}.report-download-status.dismissible{gap:.55rem;padding-right:.45rem}.report-download-status.dismissible button{border:0;background:transparent;color:inherit;cursor:pointer;font-size:.95rem;font-weight:800;line-height:1;padding:.15rem .25rem}.report-download-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #bfe4d2;border-radius:9px;background:linear-gradient(180deg,#007047,#005c3c);color:#fff;padding:0 14px;font-size:13px;font-weight:800;box-shadow:0 10px 20px rgba(0,88,63,.14)}.report-download-button:disabled{cursor:wait;opacity:.78}.report-download-menu.compact .report-download-button{min-height:34px;padding:0 11px;font-size:12px}.report-download-options{position:absolute;top:calc(100% + 6px);right:0;z-index:25;min-width:142px;display:grid;overflow:hidden;border:1px solid #d7e6de;border-radius:10px;background:#fff;box-shadow:0 18px 36px rgba(0,63,47,.16);opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .14s ease,transform .14s ease}.report-download-menu.open .report-download-options,.report-download-menu:focus-within .report-download-options,.report-download-menu:hover .report-download-options{opacity:1;pointer-events:auto;transform:translateY(0)}.report-download-options button{border:0;border-bottom:1px solid #edf4f0;background:#fff;color:var(--green-950);padding:10px 12px;text-align:left;font-size:12px;font-weight:800}.report-download-options button:last-child{border-bottom:0}.report-download-options button:focus,.report-download-options button:hover{background:#f3fbf6}.ops-form,.ops-inline-form{display:grid;grid-gap:10px;gap:10px}.ops-form{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-inline-form{grid-template-columns:minmax(0,1fr) minmax(130px,.6fr) auto;margin-bottom:12px}.ops-form input,.ops-form select,.ops-inline-form input,.ops-toolbar input{width:100%;height:42px;border:1px solid #cfd9d5;border-radius:8px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-size:13px}.ops-form input:focus,.ops-form select:focus,.ops-inline-form input:focus,.ops-toolbar input:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.ops-mini,.ops-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;background:var(--green-800);color:#fff;font-weight:800}.ops-primary{height:42px;padding:0 18px}.ops-mini{min-height:34px;padding:7px 12px;font-size:12px}.ops-mini.muted{border:1px solid #d7e3de;background:#fff;color:var(--green-800)}.ops-mini.danger{border:1px solid rgba(192,67,45,.28);background:#fff6f4;color:#c0432d}.ops-mini.danger:hover{background:#fdeae6}.ops-primary.danger{background:#c0432d}.fees-reversal-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.fees-reversal-modal{max-width:560px}.fees-reversal-student-row{grid-column:1/-1;border:1px solid #d9ebe2;border-radius:14px;background:linear-gradient(180deg,#f8fffb,#f2fbf6);padding:14px 16px}.fees-reversal-student-row span{display:block;color:#60736d;font-size:11px;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.fees-reversal-student-row strong{display:block;margin-top:5px;color:var(--green-950);font-size:15px;font-weight:850;line-height:1.3}.fees-reversal-meta-row{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 2fr;grid-gap:12px;gap:12px;align-items:end}.fees-reversal-meta-card{min-width:0;border:1px solid #d9ebe2;border-radius:14px;background:linear-gradient(180deg,#f8fffb,#f2fbf6);padding:10px 12px;height:60px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.fees-reversal-meta-card span{display:block;color:#60736d;font-size:11px;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.fees-reversal-meta-card strong{display:block;margin-top:4px;color:var(--green-950);font-size:14px;font-weight:850;line-height:1.2}.fees-reversal-modal .fees-field.wide{grid-column:1/-1}.ops-row-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.ops-table-shell{overflow:auto;border:1px solid var(--line);border-radius:10px}.ops-table{width:100%;min-width:620px;border-collapse:collapse;font-size:13px}.ops-table td,.ops-table th{border-bottom:1px solid #edf2ef;padding:12px 13px;text-align:left;vertical-align:middle}.ops-table th{background:#f0f8f4;color:var(--green-950);font-weight:800}.ops-table tr:last-child td{border-bottom:0}.ops-paged-table{display:grid;grid-gap:12px;gap:12px}.ops-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#40514d;font-size:12px;font-weight:700}.ops-pagination-actions{display:inline-flex;align-items:center;gap:8px}.ops-pagination-actions button{min-width:36px;height:34px;border:1px solid #d4e3dc;border-radius:9px;background:#fff;color:var(--green-900);font-size:12px;font-weight:900}.ops-pagination-actions button:not(:disabled):focus,.ops-pagination-actions button:not(:disabled):hover{background:#eef9f3;border-color:#a9d3bf}.ops-pagination-actions button:disabled{color:#a6b4ae;background:#f6faf8;cursor:not-allowed}.dmy-date-field{display:grid;grid-gap:5px;gap:5px;min-width:0;color:#40514d;font-size:12px;font-weight:700}.dmy-date-field.compact{display:inline-flex;width:100%;max-width:170px}.dmy-date-field .dmy-date-text-input{box-sizing:border-box;width:100%;min-width:0;height:40px;border:1px solid #cfd9d5;border-radius:9px;background:#fff;color:var(--ink);padding:0 11px;font-size:13px;outline:0}.dmy-date-field .dmy-date-text-input:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.dmy-date-picker-shell{position:relative;display:inline-flex;align-items:center;width:min(100%,170px);min-width:132px}.dmy-date-picker-shell .dmy-date-text-input{padding-right:38px}.dmy-date-picker-button{position:absolute;top:50%;right:6px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:8px;background:#eef8f3;color:var(--green-800);cursor:pointer}.dmy-date-picker-button:hover{background:#dff3e9}.native-date-picker-input{position:absolute;right:0;bottom:0;width:1px!important;height:1px!important;border:0!important;padding:0!important;opacity:0;pointer-events:none}.ops-toolbar.compact{display:inline-flex;align-items:center;gap:8px;margin-bottom:12px;color:var(--green-800)}@media (max-width:1180px){.ops-stats-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}.ops-grid.two{grid-template-columns:1fr}}@media (max-width:720px){.ops-form,.ops-inline-form,.ops-stats-grid{grid-template-columns:1fr}.ops-card{padding:16px}}.ops-language-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:hsla(0,0%,100%,.92);color:#566b64;font-size:12px;font-weight:700}.ops-language-tools span{max-width:560px}html[dir=rtl] .ops-language-tools{justify-content:flex-start}@media (max-width:720px){.ops-language-tools{justify-content:flex-start}}.fees-workspace{display:grid;grid-gap:18px;gap:18px}.fees-receipt-status-row{display:flex;flex-wrap:wrap;gap:10px}.fees-hero{display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:18px;gap:18px;align-items:stretch;border:1px solid #d8e7df;border-radius:20px;padding:22px;background:radial-gradient(circle at 12% 20%,rgba(0,103,72,.1),transparent 26%),linear-gradient(135deg,#f3fbf6,#fff 55%,#edf8f2);box-shadow:0 18px 40px rgba(0,63,47,.07)}.fees-hero-copy{display:grid;align-content:center;grid-gap:10px;gap:10px}.fees-eyebrow{width:max-content;display:inline-flex;align-items:center;gap:8px;border:1px solid #c8ead9;border-radius:999px;background:#f0fbf5;color:var(--green-800);padding:7px 11px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.fees-hero-copy h2{margin:0;color:var(--green-950);font-size:clamp(24px,2.3vw,34px);line-height:1.08;letter-spacing:-.03em}.fees-hero-copy p,.fees-hero-summary p,.fees-scan-result p,.fees-selected-box p{margin:0;color:#5f716b;line-height:1.45}.fees-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.fees-chip-row span{border:1px solid #d8e7df;border-radius:999px;background:hsla(0,0%,100%,.86);color:#0a6146;padding:7px 10px;font-weight:800}.fees-hero-summary{display:grid;align-content:center;grid-gap:6px;gap:6px;border:1px solid #d8e7df;border-radius:16px;background:hsla(0,0%,100%,.82);padding:18px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.72)}.fees-due-pill span,.fees-hero-summary span,.fees-scan-result span,.fees-selected-box span,.fees-table-top span{color:#60736d;font-weight:800}.fees-hero-summary strong{color:var(--green-950);font-size:22px;line-height:1.1}.fees-hero-month{display:flex}.fees-hero-month input{width:100%;height:42px;border:1px solid #bfe0cf;border-radius:10px;background:#fff;color:var(--green-950);padding:0 12px;font-size:17px;font-weight:850;outline:0;cursor:pointer}.fees-hero-month input:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.fees-stats .ops-stat{min-height:120px}.fees-grid{display:grid;grid-gap:18px;gap:18px}.fees-top-grid{grid-template-columns:minmax(0,1.16fr) minmax(320px,.84fr)}.fees-collection-grid{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr)}.fees-bottom-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)}.fees-control-grid,.fees-qr-form{display:grid;grid-gap:12px;gap:12px;align-items:flex-end}.fees-control-grid{grid-template-columns:minmax(170px,1fr) minmax(180px,1fr) 110px auto}.fees-overdue-filter{grid-template-columns:minmax(110px,.7fr) minmax(110px,.7fr) minmax(130px,.8fr) minmax(90px,.55fr) auto}.fees-overdue-channel-row{display:grid;grid-gap:12px;gap:12px;align-items:flex-end;grid-template-columns:minmax(100px,.45fr) minmax(0,1fr)}.fees-qr-form{grid-template-columns:minmax(0,1fr) auto}.fees-field{display:grid;grid-gap:6px;gap:6px;min-width:0;color:#0b3028;font-weight:850}.fees-field span{color:#102c26}.fees-field input,.fees-field select{width:100%;min-width:0;height:42px;border:1px solid #cfded8;border-radius:10px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-weight:650}.fees-field input:focus,.fees-field select:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.fees-payment-form .fees-field.wide{grid-column:1/-1}.fees-denom-panel{grid-column:1/-1;display:flex;flex-direction:column;gap:10px;border:1px dashed rgba(0,107,79,.32);border-radius:14px;background:#f7fbf9;padding:12px 14px}.fees-denom-head{display:flex;flex-direction:column;gap:2px}.fees-denom-head strong{color:var(--green-950);font-size:13px;font-weight:800}.fees-denom-head small{color:#60736d;font-size:12px;line-height:1.4}.fees-denom-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));grid-gap:8px;gap:8px}.fees-denom-cell{display:flex;flex-direction:column;gap:4px;border:1px solid #d8e7df;border-radius:10px;background:#fff;padding:8px}.fees-denom-cell span{color:var(--green-800);font-size:12px;font-weight:900}.fees-denom-cell input{width:100%;min-height:34px;border:1px solid #d8e7df;border-radius:8px;padding:0 8px;font-size:14px;font-weight:700;color:#23423a;text-align:center}.fees-denom-cell small{color:#60736d;font-size:11px;font-weight:700;text-align:center;white-space:nowrap}.fees-denom-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px}.fees-denom-summary>div{display:flex;flex-direction:column;gap:2px;border:1px solid #d8e7df;border-radius:10px;background:#fff;padding:8px 10px}.fees-denom-summary span{color:#60736d;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.fees-denom-summary strong{color:var(--green-950);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.fees-denom-summary>div.net{background:var(--green-800);border-color:var(--green-800)}.fees-denom-summary>div.net span,.fees-denom-summary>div.net strong{color:#fff}.fees-denom-summary>div.neg{border-color:#e5b9b3;background:#fdf2f0}.fees-denom-summary>div.neg span,.fees-denom-summary>div.neg strong{color:#b23a2f}@media (max-width:640px){.fees-denom-summary{grid-template-columns:1fr}}.fees-scan-result,.fees-selected-box{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #cfe8da;border-radius:14px;background:#f5fbf7;padding:13px 14px}.fees-scan-result{margin-top:14px}.fees-scan-dues{display:grid;grid-gap:8px;gap:8px;margin-top:10px;border:1px solid #d9ebe2;border-radius:14px;background:#fff;padding:10px}.fees-scan-due-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:10px;gap:10px;border-bottom:1px solid #edf4f0;padding:7px 2px}.fees-scan-due-row:last-of-type{border-bottom:0}.fees-scan-due-row span{color:var(--green-950);font-size:13px;font-weight:800}.fees-scan-due-row strong{color:var(--green-950);font-size:14px}.fees-scan-due-row small{color:#60736d;font-size:12px;font-weight:700}.fees-scan-result strong,.fees-selected-box strong{display:block;color:var(--green-950);font-size:18px;line-height:1.25}.fees-due-pill{min-width:112px;border-radius:12px;background:#006b4b;color:#fff;padding:10px 12px;text-align:right}.fees-due-pill span,.fees-due-pill strong{color:#fff}.fees-due-pill strong{display:block;margin-top:3px;font-size:18px}.fees-arrears-pill{display:block;margin-top:5px;font-style:normal;font-size:11px;font-weight:800;color:#ffe08a}.fees-check{align-self:center}.fees-head-form .ops-primary,.fees-payment-form .ops-primary{align-self:flex-end}.fees-head-inline-form{display:grid;grid-gap:12px;gap:12px;margin-bottom:18px;padding:16px;background:#f7faf8;border:1px solid #e3eae6;border-radius:12px}.fees-head-inline-row-fields{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(150px,1.4fr) minmax(100px,.8fr) minmax(110px,.9fr) minmax(90px,.8fr)}.fees-head-inline-row-actions{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.fees-head-inline-checkbox{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:#0b3028;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.fees-head-inline-checkbox input[type=checkbox]{width:16px;height:16px;margin:0;cursor:pointer;accent-color:var(--green-700)}.fees-head-inline-buttons{display:flex;gap:8px;align-items:center}.fees-head-inline-buttons button{height:38px!important;padding:0 16px!important;font-size:13px!important;font-weight:800!important;display:inline-flex;align-items:center;justify-content:center;border-radius:8px!important;white-space:nowrap}.fees-head-inline-buttons button.ops-mini.muted{border:1px solid #c8d5d0!important;background:#fff!important;color:var(--green-800)!important}.ops-form input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--green-700)}.fees-table-top{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.fees-status{display:inline-flex;align-items:center;justify-content:center;min-width:72px;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900;text-transform:uppercase}.fees-status.paid{background:#e8f8ef;color:#007a4f}.fees-status.partial{background:#fff7df;color:#9c6200}.fees-status.due{background:#eef6ff;color:#175b99}.fees-status.cancelled,.fees-status.overdue{background:#ffecec;color:#b42318}html[dir=rtl] .fees-due-pill{text-align:left}.ops-message-backdrop{align-items:center;background:rgba(5,24,19,.38);display:flex;inset:0;justify-content:center;padding:18px;position:fixed;z-index:2000}.ops-message-modal{background:#fff;border:1px solid #dbe9e2;border-radius:18px;box-shadow:0 28px 80px rgba(0,45,34,.22);display:grid;grid-gap:12px;gap:12px;max-width:480px;padding:24px;position:relative;text-align:center;width:min(480px,100%)}.ops-message-close{background:#f7fbf9;border:1px solid #d9ebe2;border-radius:999px;color:var(--green-950);cursor:pointer;font-size:16px;font-weight:900;height:32px;line-height:1;position:absolute;right:14px;top:14px;width:32px}.ops-message-close,.ops-message-icon{align-items:center;display:inline-flex;justify-content:center}.ops-message-icon{background:#eaf8f1;border-radius:14px;color:var(--green-800);height:52px;justify-self:center;width:52px}.ops-message-modal.error .ops-message-icon{background:#fff2f0;color:#b42318}.ops-message-modal.success .ops-message-icon{background:#e8f8ef;color:#006045}.ops-message-modal.warning .ops-message-icon{background:#fff7ed;color:#b45309}.ops-message-copy h3{color:var(--green-950);font-size:18px;font-weight:900;margin:0}.ops-message-copy p{color:#53655f;font-size:13px;line-height:1.5;margin:6px 0 0;white-space:pre-wrap}.ops-message-modal .ops-primary{justify-self:center;min-width:112px}.fees-workspace{gap:14px;font-size:13px}.fees-workspace .ops-card{border-radius:14px;padding:16px 18px}.fees-workspace .ops-card-head{gap:10px;margin-bottom:12px}.fees-workspace .ops-card-head h3{font-size:15px;line-height:1.2;letter-spacing:-.015em}.fees-workspace .ops-card-head p{margin-top:3px;font-size:13px;line-height:1.45}.fees-hero{grid-template-columns:minmax(0,1fr) 235px;gap:14px;border-radius:18px;padding:17px 18px;box-shadow:0 14px 30px rgba(0,63,47,.055)}.fees-hero-copy{gap:8px}.fees-eyebrow{padding:6px 10px;font-size:11px}.fees-hero-copy h2{font-size:clamp(21px,1.8vw,28px);line-height:1.12;letter-spacing:-.025em}.fees-hero-copy p,.fees-hero-summary p,.fees-scan-result p,.fees-selected-box p{font-size:13px}.fees-chip-row span{padding:6px 9px;font-size:12px}.fees-hero-summary{padding:15px}.fees-due-pill span,.fees-hero-summary span,.fees-scan-result span,.fees-selected-box span,.fees-table-top span{font-size:12px}.fees-hero-summary strong{font-size:20px}.fees-stats{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;position:relative;z-index:1}.fees-stats .ops-stat{min-height:92px;border-radius:14px;padding:14px}.fees-stats .ops-stat span{width:34px;height:34px;border-radius:9px}.fees-stats .ops-stat p{margin:10px 0 4px;font-size:12px;line-height:1.25}.fees-stats .ops-stat strong{font-size:21px;line-height:1.12}.fees-control-grid,.fees-grid,.fees-qr-form{gap:10px}.fees-optional-picker{margin-top:14px;display:grid;grid-gap:12px;gap:12px}.fees-bank-stmt-import{margin-top:10px;display:grid;grid-gap:8px;gap:8px;justify-items:start}.fees-bank-stmt-import textarea{width:100%;border:1px solid #d8e6df;border-radius:9px;padding:9px 11px;font-size:12.5px;font-family:inherit;resize:vertical}.fees-bank-stmt-import textarea:focus{outline:none;border-color:var(--green-700);box-shadow:0 0 0 3px rgba(0,96,73,.12)}.fees-job-progress{margin-top:14px;display:grid;grid-gap:8px;gap:8px;border:1px solid #e4ece8;border-radius:12px;padding:12px 14px;background:#fbfdfc}.fees-job-progress-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px}.fees-job-progress-head strong{color:var(--green-800);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.fees-job-progress-head span{color:#53655f;flex:1 1}.fees-job-progress-bar{height:8px;border-radius:999px;background:rgba(0,96,73,.1);overflow:hidden}.fees-job-progress-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--green-800),var(--green-700));transition:width .4s ease}.fees-job-progress.failed .fees-job-progress-bar span{background:#c0392b}.fees-optional-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:12.5px;font-weight:700;color:var(--green-800)}.fees-optional-toolbar-actions{display:inline-flex;gap:8px}.fees-optional-list{display:grid;grid-gap:6px;gap:6px;max-height:340px;overflow-y:auto;border:1px solid #e4ece8;border-radius:12px;padding:8px;background:#fbfdfc}.fees-optional-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;grid-gap:4px 10px;gap:4px 10px;padding:8px 10px;border-radius:9px;cursor:pointer}.fees-optional-row:hover{background:rgba(0,96,73,.05)}.fees-optional-row input{grid-row:1/span 2;width:16px;height:16px;cursor:pointer}.fees-optional-name{font-size:13.5px;font-weight:700;color:var(--ink)}.fees-optional-meta{font-size:11.5px;color:#6a7773}.fees-field{gap:5px;font-size:12px}.fees-field input,.fees-field select{height:38px;border-radius:9px;padding:0 11px;font-size:13px}.fees-workspace .ops-primary{height:38px;padding:0 14px;font-size:13px}.fees-workspace .ops-mini{min-height:30px;padding:5px 10px;font-size:12px}.fees-helper-note{margin:8px 0 0;color:#6a7a75;font-size:12px;line-height:1.45}.fees-receipt-status-row{align-items:center;gap:8px;justify-content:flex-start}.fees-admin-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.fees-concession-form,.fees-structure-form{margin-bottom:12px}.fees-structure-form .wide{grid-column:1/-1;min-width:0}.fees-line-builder{align-items:flex-end;border:1px dashed rgba(0,96,73,.18);border-radius:12px;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(190px,1.25fr) minmax(110px,.72fr) minmax(130px,.75fr) minmax(92px,.52fr);padding:10px}.fees-line-builder .fees-field{min-width:0}.fees-line-builder .ops-mini{grid-column:1/-1;justify-self:start}.fees-line-list{display:flex;flex-wrap:wrap;gap:8px}.fees-line-list span{align-items:center;background:#f4fbf7;border:1px solid #d8e7df;border-radius:999px;color:var(--green-900);display:inline-flex;font-size:12px;font-weight:800;gap:8px;padding:6px 8px 6px 10px}.fees-line-list button{background:transparent;border:0;color:inherit;cursor:pointer;font-weight:900;line-height:1}.fees-reminder-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin:10px 0}.fees-reminder-actions span{color:#60736d;font-size:12px;font-weight:800}.fees-reminder-preview{background:#f6fbf8;border:1px solid #dcebe4;border-radius:12px;display:grid;grid-gap:6px;gap:6px;margin-top:10px;padding:12px}.fees-reminder-preview strong{color:var(--green-950);font-size:13px}.fees-reminder-preview p{color:#4f625c;font-size:12px;line-height:1.45;margin:0}.fees-demand-filter-grid,.fees-generate-grid{align-items:flex-end;display:grid;grid-gap:10px;gap:10px;margin-bottom:10px}.fees-demand-filter-grid{grid-template-columns:minmax(280px,1.7fr) minmax(170px,.9fr) minmax(150px,.75fr) minmax(145px,.7fr) auto}.fees-generate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fees-generate-actions{align-items:center;display:flex;gap:8px;grid-column:1/-1}.fees-workspace .ops-mini.danger,.fees-workspace .ops-primary.danger{background:#fff2f0;border:1px solid #ffc9c1;color:#b42318}.fees-workspace .ops-mini.danger:focus,.fees-workspace .ops-mini.danger:hover,.fees-workspace .ops-primary.danger:focus,.fees-workspace .ops-primary.danger:hover{background:#ffe5e0;border-color:#ffaaa0}.fees-confirm-backdrop{z-index:200}.fees-confirm-modal{max-width:560px}.fees-confirm-body{padding-top:0}.fees-confirm-list{border:1px solid #e2ede7;border-radius:12px;overflow:hidden}.fees-confirm-list div{align-items:center;display:grid;grid-template-columns:150px minmax(0,1fr);padding:10px 12px}.fees-confirm-list div+div{border-top:1px solid #eef4f0}.fees-confirm-list dt{color:#62746e;font-size:12px;font-weight:800}.fees-confirm-list dd{color:var(--green-950);font-size:13px;font-weight:800}@media (max-width:1180px){.fees-bottom-grid,.fees-collection-grid,.fees-hero,.fees-top-grid{grid-template-columns:1fr}.fees-hero-summary{max-width:none}.fees-control-grid,.fees-demand-filter-grid,.fees-generate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fees-overdue-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.fees-overdue-channel-row{grid-template-columns:minmax(0,.5fr) minmax(0,1fr)}.fees-head-inline-row-fields,.fees-line-builder{grid-template-columns:repeat(2,minmax(0,1fr))}.fees-head-inline-row-actions{flex-direction:column;align-items:flex-start;gap:12px}}@media (max-width:720px){.fees-workspace{gap:14px}.fees-hero{padding:16px;border-radius:16px}.fees-eyebrow{width:100%;justify-content:center}.fees-chip-row span{flex:1 1 100%;text-align:center}.fees-control-grid,.fees-demand-filter-grid,.fees-generate-grid,.fees-head-form,.fees-head-inline-row-fields,.fees-line-builder,.fees-overdue-channel-row,.fees-overdue-filter,.fees-payment-form,.fees-qr-form{grid-template-columns:1fr}.fees-head-inline-row-actions{gap:12px}.fees-head-inline-row-actions,.fees-scan-result,.fees-selected-box,.fees-table-top{flex-direction:column;align-items:flex-start}.fees-due-pill{width:100%;text-align:left}html[dir=rtl] .fees-due-pill{text-align:right}}@media (max-width:760px){.next-app-shell,body,html{max-width:100%;overflow-x:hidden}.next-app-shell{grid-template-rows:56px minmax(0,1fr)}.next-topbar{height:56px;gap:6px;padding:0 10px}.next-brand-area{min-width:0;flex:0 0 auto;gap:6px}.next-icon-button{width:34px;height:34px;border-radius:9px}.next-icon-button svg{width:19px;height:19px}.next-topbar-logo{width:30px;height:30px}.next-app-brand{gap:4px}.next-app-brand strong{display:inline-block;font-size:14px;font-weight:800}.next-topbar-actions{flex:1 1 auto;min-width:0;gap:6px;overflow:visible}.next-live-clock{min-width:52px;max-width:58px;font-size:8px;line-height:1.1}.next-live-clock span{font-size:7px}.next-notification{flex:0 0 auto;transform:none}.next-notification span{min-width:15px;height:15px;top:2px;right:1px;font-size:9px}.next-user-chip{flex:0 0 auto;gap:0}.next-user-chip>span{width:32px;height:32px;font-size:10px}.next-user-chip div{display:none}.next-logout-button{width:34px;height:34px;flex:0 0 34px;justify-content:center;padding:0;border:1px solid #d6dedb;border-radius:999px;background:#fff}.next-logout-button svg{width:18px;height:18px}.next-logout-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.next-sidebar-collapsed .next-workspace,.next-workspace{height:calc(100vh - 56px);min-height:0;grid-template-columns:minmax(0,1fr)}.next-sidebar{height:calc(100vh - 56px);inset:56px auto 0 0;min-height:0;width:min(84vw,260px);max-width:calc(100vw - 34px)}html[dir=rtl] .next-sidebar{inset:56px 0 0 auto}.next-content-panel{min-width:0;width:100%;--panel-pad-top:8px;padding:8px 10px 18px;overflow-x:hidden;font-size:13px}.next-content-heading{display:grid;grid-gap:10px;gap:10px;margin-bottom:10px}.next-content-heading h2{font-size:20px}.next-content-heading p{font-size:12px}.next-stat-card{min-height:auto;padding:16px 14px 14px}.next-stat-card p{font-size:12px}.next-stat-card strong{font-size:22px;margin-top:8px}.next-stat-card small{margin-top:10px;font-size:11px}.next-content-heading>.next-content-tools{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:8px;gap:8px;align-items:stretch}.next-content-heading>.next-content-tools .academic-year-switcher,.next-content-heading>.next-content-tools .language-switcher{width:100%;min-width:0;max-width:100%;min-height:40px;gap:6px;padding:0 8px;overflow:hidden;box-shadow:0 7px 18px rgba(0,63,47,.07)}.next-content-heading>.next-content-tools .academic-year-switcher span,.next-content-heading>.next-content-tools .language-switcher span{flex:0 0 auto;max-width:22px;overflow:hidden;gap:0;color:var(--green-800);font-size:0}.next-content-heading>.next-content-tools .academic-year-switcher span svg,.next-content-heading>.next-content-tools .language-switcher span svg{width:17px;height:17px}.next-content-heading>.next-content-tools .academic-year-switcher select,.next-content-heading>.next-content-tools .language-switcher select{min-width:0;width:100%;max-width:100%;font-size:12px}.next-dashboard-grid,.next-stats-grid,.ops-grid.two,.ops-stats-grid,.profile-grid,.snapshot-grid{grid-template-columns:1fr}.next-dashboard-panel,.next-stat-card,.ops-card{border-radius:12px}.next-chart{min-width:560px}.next-dashboard-panel:has(.next-chart){overflow-x:auto}.ops-table-shell,.student-record-table,.student-results-card{max-width:100%;overflow-x:auto}.next-panel-title-row h3{font-size:14px}.next-panel-title-row a,.next-panel-title-row button{font-size:11px}.next-dashboard-panel{padding:14px}.next-announcement strong{font-size:12px}.next-announcement p{font-size:11px}.next-announcement time{font-size:10px}.student-section-title h3{font-size:16px}.student-section-title.compact h3{font-size:14px}.student-create-grid span,.student-edit-grid span,.student-search-form span{font-size:11px}.student-create-grid input,.student-create-grid select,.student-edit-grid input,.student-edit-grid select,.student-search-form input,.student-search-form select{height:40px;font-size:13px}.student-close-button,.student-edit-button,.student-primary-button,.student-secondary-button{min-height:36px;font-size:12px}.student-modal-header h3{font-size:16px}.student-modal-header p,.student-modal-header span{font-size:11px}.ops-card-head h3{font-size:15px}.ops-card-head p,.ops-stat p{font-size:12px}.ops-stat strong{font-size:20px}.ops-table{font-size:12px}.ops-table th{font-size:11px}.ops-primary{height:40px;font-size:13px}.ops-mini{min-height:32px;font-size:11px}.rule-summary-card strong{font-size:22px}.rule-card-heading h3{font-size:15px}.student-detail-card strong{font-size:14px}.student-detail-card p{font-size:12px}.staff-profile-topbar h3{font-size:18px}.staff-add-button,.student-add-button{min-height:40px;font-size:12px;padding:0 14px}.student-document-row{font-size:12px}.student-document-row.head{font-size:11px}.student-document-toolbar h3{font-size:16px}.fees-hero-copy h2{font-size:clamp(18px,5vw,22px)}.fees-hero-summary strong,.fees-stats .ops-stat strong{font-size:18px}.fees-workspace .ops-card-head h3{font-size:14px}}@media (max-width:420px){.next-topbar{padding:0 8px}.next-brand-area{gap:4px}.next-topbar-logo{width:28px;height:28px}.next-live-clock{display:none}.next-content-heading>.next-content-tools{grid-template-columns:1fr}.next-content-heading>.next-content-tools .academic-year-switcher,.next-content-heading>.next-content-tools .language-switcher{justify-content:flex-start}}.next-session-modal.next-idle-modal{width:min(92vw,430px);padding:30px 30px 24px}.next-idle-countdown{display:grid!important;justify-content:center!important;grid-gap:2px!important;gap:2px!important;margin:22px auto 0!important;width:132px;min-height:92px;place-items:center;border:1px solid #b8e2cf;border-radius:18px;background:linear-gradient(180deg,#eefaf4,#fff);color:var(--green-900)}.next-idle-countdown strong{font-size:36px;line-height:1}.next-idle-countdown span{color:#5e6b67;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.next-session-modal .next-idle-actions{display:flex;justify-content:center;margin-top:22px}.next-session-modal .next-idle-actions button{min-width:190px;border-color:var(--green-800);background:var(--green-800);color:#fff}.staff-profile-panel,.users-panel-shell{display:grid;grid-gap:16px;gap:16px}.staff-search-card,.user-search-card{margin-top:0}.staff-profile-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.staff-profile-topbar>div{min-width:0}.staff-profile-topbar span{color:var(--green-800);font-size:13px;font-weight:800}.staff-profile-topbar h3{margin:4px 0;color:var(--green-950);font-size:20px;font-weight:800;letter-spacing:-.01em}.staff-profile-topbar p{margin:0;color:var(--muted);font-size:13px}.staff-create-modal,.staff-detail-modal,.user-detail-modal{width:min(1120px,96vw)}.compact-profile-header{padding-block:12px}.student-icon-button{width:38px;min-height:38px;display:inline-grid;place-items:center;border:1px solid #d8e2de;border-radius:8px;background:#fff;color:#263532}.student-status-pill,.users-status-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #b9e9cf;border-radius:999px;background:#f0fbf5;color:var(--green-800);padding:7px 11px;font-size:12px;font-weight:800;white-space:nowrap}.users-status-pill.disabled,.users-status-pill.inactive,.users-status-pill.locked{border-color:#f0c9c3;background:#fff2ef;color:#a93528}.student-details-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.student-detail-card{min-width:0;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;grid-gap:14px;gap:14px;border:1px solid #e1eae6;border-radius:8px;background:#fff;padding:16px}.student-detail-card.wide{grid-column:span 2}.student-detail-card>span{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:#dff5ea;color:var(--green-800)}.student-detail-card p{margin:0 0 6px;color:var(--muted);font-size:13px;font-weight:800}.student-detail-card strong{display:block;min-width:0;overflow-wrap:anywhere;color:#071513;font-size:15px;font-weight:800;line-height:1.35}.user-documents-panel,.user-role-strip{border:1px solid #e1eae6;border-radius:8px;background:#fbfdfc;padding:16px}.user-role-strip{display:grid;grid-gap:6px;gap:6px;margin-top:14px}.user-role-strip span{color:var(--green-800);font-size:12px;font-weight:800;text-transform:uppercase}.user-role-strip strong{color:#071513;font-size:14px}.user-documents-panel{margin-top:14px}.staff-modal-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.staff-modal-form label{display:grid;grid-gap:8px;gap:8px;color:#071513;font-size:13px;font-weight:800}.staff-modal-form input,.staff-modal-form select{min-height:42px;border:1px solid #d7e1dd;border-radius:6px;background:#fff;color:#071513;padding:0 12px;font-size:13px}.staff-modal-form .wide{grid-column:span 2}.staff-modal-form footer.wide{grid-column:1/-1}@media (max-width:900px){.staff-modal-form,.student-details-grid{grid-template-columns:1fr}.staff-modal-form .wide,.student-detail-card.wide{grid-column:auto}.staff-profile-topbar{align-items:stretch;flex-direction:column}}@media (max-width:640px){.student-detail-card{grid-template-columns:40px minmax(0,1fr);padding:13px}.student-detail-card>span{width:40px;height:40px}.student-modal-header-actions{align-items:stretch;flex-direction:column}.student-status-pill{border-radius:8px}}.staff-add-button,.student-add-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--green-800);border-radius:8px;background:linear-gradient(180deg,#00724c,#005f40);color:#fff;padding:0 18px;font-size:13px;font-weight:800;box-shadow:0 12px 24px rgba(0,88,63,.18)}.staff-add-button:hover,.student-add-button:hover{transform:translateY(-1px);box-shadow:0 16px 28px rgba(0,88,63,.22)}.student-error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #ffb8ae;border-radius:8px;background:#fff1ef;color:#b42318;padding:12px 14px;font-size:13px;font-weight:800}.student-error-banner button{width:30px;height:30px;display:grid;place-items:center;border:1px solid #f3b5ad;border-radius:6px;background:#fff;color:#9f271b;font-weight:900}.student-modal-body{padding:22px}.staff-create-modal{border-radius:14px}.staff-create-modal .student-modal-header{padding:18px 22px}.staff-create-modal .student-modal-identity .student-avatar-fallback{background:#e6f7ee;color:var(--green-800)}.staff-modal-form{padding:22px;align-items:start}.staff-modal-form label{min-width:0}.staff-modal-form input,.staff-modal-form select{min-height:44px;border-radius:8px;font-size:14px}.student-results-table td strong{display:block;line-height:1.3}.student-results-table td strong+span{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:600}@media (max-width:720px){.staff-add-button,.staff-profile-topbar .student-add-button{width:100%}.staff-modal-form,.student-modal-body{padding:16px}}.role-access-panel-shell{display:flex;flex-direction:column;gap:1.25rem}.role-access-modal{max-width:min(1180px,calc(100vw - 28px))}.role-access-search{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 10px 0 12px;border-radius:999px;border:1px solid rgba(0,96,72,.22);background:#fff;color:#5c6f69}.role-access-search:focus-within{border-color:var(--color-primary,#006b4f);box-shadow:0 0 0 3px rgba(0,107,79,.12)}.role-access-search input{border:0;outline:none;background:transparent;min-width:190px;font-size:13px;font-weight:600;color:#23423a}.role-access-search input::placeholder{color:#8aa199;font-weight:500}.role-access-search input::-webkit-search-cancel-button{display:none}.role-access-search button{display:grid;place-items:center;width:22px;height:22px;border:0;border-radius:50%;background:#edf3f0;color:#48605a;cursor:pointer}.role-access-search button:hover{background:#dce9e3}.role-access-actions .student-status-pill.save{background:var(--color-primary,#006b4f);color:#fff;border-color:var(--color-primary,#006b4f)}.role-access-actions .student-secondary-button.compact{min-height:42px;padding:0 1rem}.role-access-body{gap:1rem}.role-access-help-card,.role-access-loading,.role-access-locked-note{border:1px solid rgba(0,107,79,.16);border-radius:16px;background:rgba(240,253,248,.72);color:#073b2f;display:flex;align-items:flex-start;gap:.75rem;padding:.95rem 1rem}.role-access-help-card strong,.role-access-locked-note span{font-weight:800}.role-access-help-card p{color:#52645f;margin:.25rem 0 0}.role-access-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:12px;background:#edf3f0;border:1px solid rgba(0,96,72,.1);width:-moz-fit-content;width:fit-content}.role-access-tabs button{border:0;border-radius:9px;padding:8px 16px;background:transparent;color:#4a6660;font-size:13px;font-weight:800;cursor:pointer;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.role-access-tabs button.active{background:#fff;color:#006047;box-shadow:0 4px 12px rgba(0,77,55,.08)}.role-access-action-card{border:1px solid rgba(0,54,43,.1);border-radius:16px;background:#fff;overflow:hidden}.role-access-action-card.locked{background:rgba(248,250,252,.75)}.role-access-action-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:.85rem 1.1rem;border-bottom:1px solid rgba(0,54,43,.08);background:rgba(240,253,248,.5)}.role-access-action-card>header strong{color:#061f1a;font-size:.98rem;display:block}.role-access-action-card>header span{color:#52645f;font-size:.82rem}.role-access-action-card>header small{color:#006047;font-weight:900;font-size:.8rem;white-space:nowrap}.role-access-action-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:8px 14px;gap:8px 14px;padding:1rem 1.1rem}.role-access-limit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px 16px;gap:12px 16px;padding:1rem 1.1rem}.role-access-limit{display:grid;grid-gap:5px;gap:5px}.role-access-limit span{color:#445a54;font-size:.82rem;font-weight:700}.role-access-limit input{height:38px;border:1px solid #cfded8;border-radius:9px;padding:0 11px;font-size:13px;font-weight:650;outline:0}.role-access-limit input:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.role-access-empty{color:#52645f;text-align:center;padding:1.5rem;border:1px dashed rgba(0,54,43,.15);border-radius:14px}.role-access-group{border:1px solid rgba(0,54,43,.1);border-radius:18px;background:#fff;overflow:hidden}.role-access-group>header{align-items:center;background:linear-gradient(135deg,rgba(236,253,245,.92),hsla(0,0%,100%,.9));border-bottom:1px solid rgba(0,54,43,.08);display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.15rem}.role-access-group>header span{color:#006b4f;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.role-access-group>header h4{color:#061f1a;font-size:1.05rem;margin:.15rem 0 0}.role-access-group>header small{color:#52645f;font-weight:800}.role-access-matrix{display:grid}.role-access-row{align-items:center;border-bottom:1px solid rgba(0,54,43,.08);display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) auto;padding:1rem 1.15rem}.role-access-row:last-child{border-bottom:0}.role-access-row.locked{background:rgba(248,250,252,.75)}.role-access-menu-copy{display:grid;grid-gap:.28rem;gap:.28rem}.role-access-menu-copy strong{color:#061f1a;font-size:1rem}.role-access-menu-copy span{color:#52645f;line-height:1.4}.role-access-menu-copy em{color:#9a5b00;font-size:.82rem;font-style:normal;font-weight:800}.role-access-toggle-grid{display:grid;grid-gap:.6rem;gap:.6rem;grid-template-columns:repeat(2,minmax(96px,auto))}.role-access-toggle{align-items:center;border:1px solid rgba(0,54,43,.14);border-radius:999px;color:#33443f;cursor:pointer;display:inline-flex;gap:.55rem;justify-content:center;min-height:40px;padding:.35rem .85rem;transition:background .2s ease,border-color .2s ease,color .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.role-access-toggle input{position:absolute;opacity:0;pointer-events:none}.role-access-toggle>span{background:#cbd8d3;border-radius:999px;height:18px;position:relative;width:34px}.role-access-toggle>span:after{background:#fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.18);content:"";height:14px;left:2px;position:absolute;top:2px;transition:transform .2s ease;width:14px}.role-access-toggle.on{background:rgba(0,107,79,.08);border-color:rgba(0,107,79,.3);color:#006b4f}.role-access-toggle.on>span{background:#006b4f}.role-access-toggle.on>span:after{transform:translateX(16px)}.role-access-toggle.disabled{cursor:not-allowed;opacity:.62}@media (max-width:760px){.role-access-modal{max-width:calc(100vw - 14px)}.role-access-row{align-items:stretch;grid-template-columns:1fr}.role-access-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-access-actions{width:100%}.role-access-actions .student-icon-button,.role-access-actions .student-secondary-button.compact,.role-access-actions .student-status-pill{flex:1 1}.role-access-search{width:100%;order:-1}.role-access-search input{min-width:0;flex:1 1}}@media (max-width:720px){.finance-report-header-tools{align-items:stretch;flex-direction:column;margin-top:0}.finance-report-range{display:grid;grid-template-columns:1fr}.finance-report-range input,.report-download-button,.report-download-menu{width:100%}.ops-card-head{flex-direction:column}.ops-card-head-actions,.report-card-actions{width:100%;justify-content:flex-start}.report-range-pill{width:100%;justify-content:center}}.student-documents-section{margin:0 22px 18px;border:1px solid #e0e8e4;border-radius:8px;background:#fff;padding:18px}.student-document-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.student-document-toolbar h3{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--green-950);font-size:18px;font-weight:800}.student-document-toolbar p{margin:4px 0 0;color:var(--muted);font-size:13px}.student-document-toolbar>span{flex:0 0 auto;border:1px solid #cde8dc;border-radius:999px;background:#f3fbf7;color:var(--green-800);font-size:12px;font-weight:800;padding:7px 10px}.student-document-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:flex-end;border:1px dashed #cde8dc;border-radius:8px;background:#fbfffd;padding:14px}.student-document-form label{display:grid;grid-gap:6px;gap:6px;color:var(--green-950);font-size:12px;font-weight:800}.student-document-form input,.student-document-form select{width:100%;min-height:42px;border:1px solid #cfe2da;border-radius:7px;background:#fff;color:#152522;font-size:13px;font-weight:700;padding:0 12px}.student-document-file-input{grid-column:span 2}.student-document-check{min-height:42px;display:flex!important;grid-template-columns:18px 1fr;align-items:center;gap:8px!important;border:1px solid #d7e7df;border-radius:7px;background:#fff;padding:0 12px}.student-document-check input{width:16px;min-height:16px;padding:0}.student-document-form .student-primary-button{min-height:42px;justify-content:center}.student-document-message{margin-top:12px;border-radius:7px;padding:10px 12px;font-size:13px;font-weight:800}.student-document-message.info{border:1px solid #cfe4dc;background:#f5fbf8;color:#31584d}.student-document-message.success{border:1px solid #bce8d2;background:#f0fbf5;color:var(--green-800)}.student-document-message.warning{border:1px solid #f4d9aa;background:#fff8ec;color:#9a5b05}.student-document-message.error{border:1px solid #f4c8c2;background:#fff0ee;color:#bb2f23}.student-document-table{margin-top:14px;overflow-x:auto;border:1px solid #e2ebe7;border-radius:8px}.student-document-row{min-width:1040px;display:grid;grid-template-columns:140px minmax(190px,1.25fr) 180px 110px 100px 150px 260px;align-items:center;grid-gap:10px;gap:10px;border-top:1px solid #edf2ef;padding:12px 14px;color:#152522;font-size:13px}.student-document-row.head{border-top:0;background:#eef7f2;color:var(--green-950);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.student-document-row strong{display:block;color:var(--green-950);font-size:13px;font-weight:800}.student-document-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:700}.student-document-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;text-transform:uppercase}.student-document-status.active{background:#e8f8ef;color:var(--green-800)}.student-document-status.expired{background:#fff3dd;color:#98600a}.student-document-status.deleted{background:#ffe9e7;color:#b42318}.student-document-actions{display:flex;flex-wrap:wrap;gap:7px}.student-doc-replace-action,.student-document-actions button{min-height:30px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #cde8dc;border-radius:6px;background:#fff;color:var(--green-800);cursor:pointer;font-size:11px;font-weight:900;padding:0 9px}.student-document-actions button.danger{border-color:#f4c8c2;background:#fff6f4;color:#b42318}.student-doc-replace-action{position:relative;overflow:hidden}.student-doc-replace-action input{position:absolute;inset:0;opacity:0;cursor:pointer}.student-document-preview-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:rgba(7,29,24,.45);padding:24px}.student-document-preview-dialog{width:min(900px,94vw);max-height:88vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid #d9e8e0;border-radius:10px;background:#fff;box-shadow:0 24px 80px rgba(0,55,42,.22)}.student-document-preview-dialog footer,.student-document-preview-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #edf2ef}.student-document-preview-dialog footer{justify-content:flex-end;border-top:1px solid #edf2ef;border-bottom:0}.student-document-preview-dialog header span{color:var(--green-800);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.student-document-preview-dialog header h4{margin:3px 0 0;color:var(--green-950);font-size:18px;font-weight:800}.student-document-preview-body{min-height:360px;overflow:auto;background:#f7fbf9;padding:14px}.student-document-preview-body iframe,.student-document-preview-body img{width:100%;min-height:520px;border:0;border-radius:8px;background:#fff;object-fit:contain}.student-document-preview-body img{max-height:70vh;min-height:0}@media (max-width:1100px){.student-document-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.student-document-toolbar{flex-direction:column}.student-document-form{grid-template-columns:1fr}.student-document-file-input{grid-column:auto}}.ops-doc-actions{flex-wrap:wrap;gap:6px}.ops-doc-actions,.ops-file-input{display:inline-flex;align-items:center}.ops-file-input{position:relative;min-height:44px;justify-content:center;gap:8px;overflow:hidden;border:1px dashed rgba(0,105,70,.3);border-radius:12px;background:#f4fbf7;color:var(--green-900);font-size:13px;font-weight:800;cursor:pointer;padding:0 14px}.ops-file-input input{position:absolute;inset:0;opacity:0;cursor:pointer}.ops-checkbox-inline{display:inline-flex;min-height:44px;align-items:center;gap:8px;border:1px solid rgba(0,105,70,.16);border-radius:12px;background:#fff;color:var(--green-900);font-size:13px;font-weight:800;padding:0 14px}.ops-checkbox-inline input{width:auto;min-height:auto}.ops-muted-text{color:var(--muted);font-size:12px;font-weight:800}.ops-replace-action{position:relative;overflow:hidden;cursor:pointer}.ops-replace-action input{position:absolute;inset:0;opacity:0;cursor:pointer}.ops-mini.danger{border-color:rgba(185,28,28,.28);background:#fff1f2;color:#b91c1c}.ops-mini.danger:focus,.ops-mini.danger:hover{border-color:rgba(185,28,28,.45);background:#ffe4e6}.attendance-shell{display:flex;flex-direction:column;gap:16px;color:#062f28}.attendance-hero{display:flex;justify-content:space-between;gap:24px;padding:22px 26px;border:1px solid rgba(0,96,72,.08);border-radius:16px;background:linear-gradient(135deg,#f4faf7,#fff);box-shadow:0 4px 16px rgba(5,66,48,.04);position:relative;overflow:hidden}.attendance-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#006047,#3bb28a)}.attendance-eyebrow,.attendance-pill-row span,.attendance-year-card span{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;border:1px solid rgba(0,96,72,.12);background:hsla(0,0%,100%,.85);color:#006047;font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;padding:5px 10px;border-radius:6px}.attendance-hero h2{max-width:680px;margin:10px 0 6px;color:#013c32;font-size:clamp(1.1rem,1.6vw,1.45rem);font-weight:800;line-height:1.25;letter-spacing:-.02em}.attendance-hero p{max-width:720px;margin:0;color:#5f726f;font-size:13px;line-height:1.55}.attendance-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.attendance-year-card{min-width:180px;align-self:center;flex-direction:column;border-radius:14px;padding:16px 22px;background:linear-gradient(135deg,#0a5f46,#0c7350 60%,#0f8259);border:1px solid hsla(0,0%,100%,.18);box-shadow:0 6px 18px rgba(6,59,47,.18);color:#fff}.attendance-year-card,.attendance-year-card-header{display:flex;align-items:center;justify-content:center;gap:6px}.attendance-year-icon{color:hsla(0,0%,100%,.7);flex-shrink:0}.attendance-year-card-header small{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:hsla(0,0%,100%,.7)}.attendance-year-card strong{display:block;color:#fff;font-size:1.35rem;font-weight:850;letter-spacing:-.01em;margin:2px 0}.attendance-year-badge{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:hsla(0,0%,100%,.12);color:#5dfcca;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 12px;border-radius:6px;border:1px solid hsla(0,0%,100%,.1)}.attendance-year-badge-dot{width:6px;height:6px;border-radius:50%;background:#5dfcca}.attendance-tabs{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:4px;border-radius:12px;background:#edf3f0;border:1px solid rgba(0,96,72,.08)}.attendance-tabs button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:10px;padding:9px 16px;background:transparent;color:#4a6660;font-size:13px;font-weight:750;cursor:pointer;transition:all .2s ease}.attendance-tabs button.active{background:#fff;color:#006047;box-shadow:0 4px 12px rgba(0,77,55,.08)}.attendance-grid-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);grid-gap:14px;gap:14px}.attendance-card{padding:20px;border:1px solid rgba(0,74,55,.07);border-radius:14px;background:#fff;box-shadow:0 4px 16px rgba(7,59,47,.03)}.attendance-card-full,.attendance-card-wide{min-width:0}.attendance-card-full{grid-column:1/-1}.attendance-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:16px}.attendance-card-head.compact{margin-bottom:8px}.attendance-card-head h3{margin:0 0 4px;color:#003d32;font-size:15px;font-weight:800;letter-spacing:-.01em}.attendance-card-head p{margin:0;color:#617370;font-size:13px;line-height:1.45}.attendance-primary-button,.attendance-soft-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:750;cursor:pointer;transition:all .2s ease;white-space:nowrap}.attendance-primary-button{color:#fff;background:linear-gradient(135deg,#006047,#008362);box-shadow:0 4px 12px rgba(0,96,72,.15)}.attendance-primary-button:hover{box-shadow:0 6px 18px rgba(0,96,72,.22);transform:translateY(-1px)}.attendance-soft-button{color:#006047;background:#eef7f2;border:1px solid rgba(0,96,72,.1)}.attendance-soft-button:hover{background:#e4f2ec}.attendance-primary-button:disabled,.attendance-soft-button:disabled{cursor:not-allowed;opacity:.5;transform:none}.attendance-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.attendance-form-grid.view{grid-template-columns:repeat(5,minmax(0,1fr))}.attendance-form-grid label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}.attendance-form-grid input,.attendance-form-grid select,.attendance-table input,.attendance-table select{width:100%;min-height:40px;border:1px solid rgba(0,96,72,.14);border-radius:10px;background:#fff;color:#092d28;font:inherit;font-size:13px;font-weight:600;padding:0 12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.attendance-form-grid input:focus,.attendance-form-grid select:focus,.attendance-table input:focus,.attendance-table select:focus{border-color:rgba(0,119,87,.4);box-shadow:0 0 0 3px rgba(0,119,87,.08)}.attendance-span-two{grid-column:span 2}.attendance-schedule-card{background:radial-gradient(circle at top right,rgba(255,200,120,.12),transparent 40%),#fff}.attendance-schedule-list{display:grid;grid-gap:10px;gap:10px;padding:14px;border-radius:12px;background:#f8fbf9;border:1px solid rgba(0,96,72,.08)}.attendance-schedule-list span{display:flex;align-items:center;gap:6px;color:#61736f;font-size:12px;font-weight:700}.attendance-schedule-list strong{color:#003d32;font-size:14px;font-weight:800}.attendance-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:6px 0 14px}.attendance-metric{display:grid;grid-gap:4px;gap:4px;min-height:72px;border-radius:12px;padding:14px 16px;background:#fafcfb;border:1px solid rgba(0,96,72,.06);border-left:3px solid #ccd9d4}.attendance-metric span{color:#657774;font-size:12px;font-weight:750}.attendance-metric strong{color:#003d32;font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.attendance-metric.present{background:#f0faf4;border-left-color:#009c6b}.attendance-metric.absent{background:#fef5f4;border-left-color:#e53e3e}.attendance-metric.other{background:#fefbf3;border-left-color:#fa8b18}.attendance-table-wrap{overflow:auto;border:1px solid rgba(0,96,72,.08);border-radius:12px}.attendance-table{width:100%;min-width:760px;border-collapse:collapse;background:#fff}.attendance-table th{text-align:left;padding:11px 14px;background:#f5f8f6;color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #edf2ef}.attendance-table td{padding:11px 14px;border-top:1px solid #f0f3f1;color:#183b35;font-size:13px;font-weight:500;vertical-align:middle}.attendance-table tr:hover td{background:#fafcfb}.attendance-table td small{display:block;margin-top:2px;color:#8a9b96;font-size:11px}.attendance-toggle{display:inline-flex;padding:3px;border-radius:8px;background:#f0f5f2;border:1px solid rgba(0,96,72,.08);gap:2px}.attendance-toggle button{border:0;border-radius:6px;padding:6px 12px;color:#6b7e79;background:transparent;font-size:12px;font-weight:750;cursor:pointer;transition:all .15s ease}.attendance-toggle button.active.present{color:#fff;background:#006047;box-shadow:0 2px 6px rgba(0,96,72,.2)}.attendance-toggle button.active.absent{color:#fff;background:#d63031;box-shadow:0 2px 6px rgba(214,48,49,.2)}.attendance-status{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:750;color:#4a6660;background:#edf3f0}.attendance-status.present{color:#006047;background:#dff6eb}.attendance-status.absent{color:#b42318;background:#ffe5e2}.attendance-status.half-day,.attendance-status.late{color:#b45309;background:#fff2d6}.attendance-status.leave{color:#1f4e79;background:#e2f0ff}.attendance-empty-row{text-align:center;color:#6b7d78!important;padding:24px!important;font-size:13px}.attendance-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;color:#5d706b;font-size:12px;font-weight:700}.attendance-pagination div{display:inline-flex;align-items:center;gap:8px}.attendance-pagination button{width:34px;height:34px;border:1px solid rgba(0,96,72,.1);border-radius:8px;color:#006047;background:#fff;cursor:pointer;transition:all .15s ease}.attendance-pagination button:hover:not(:disabled){background:#f0f7f3}.attendance-pagination button:disabled{opacity:.35;cursor:not-allowed}.attendance-empty-state,.attendance-message-modal{display:grid;justify-items:center;grid-gap:10px;gap:10px;max-width:440px;margin:32px auto;padding:24px;border-radius:16px;background:#fff;border:1px solid rgba(0,96,72,.08);text-align:center;color:#063c32}.attendance-message-modal{position:relative;box-shadow:0 16px 48px rgba(0,0,0,.16)}.attendance-message-modal.error svg{color:#b42318}.attendance-message-modal.success svg{color:#006047}.attendance-message-modal.warning svg{color:#b45309}.attendance-empty-state h3,.attendance-message-modal h3{margin:0;font-size:16px}.attendance-empty-state p,.attendance-message-modal p{margin:0;color:#61736f;font-size:13px;line-height:1.5}.attendance-modal-close{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid rgba(0,96,72,.08);border-radius:8px;background:#fff;color:#123c35;cursor:pointer;transition:background .15s ease}.attendance-modal-close:hover{background:#f0f7f3}@media (max-width:1180px){.attendance-grid-layout,.attendance-hero{grid-template-columns:1fr;flex-direction:column}.attendance-form-grid,.attendance-form-grid.view,.attendance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.attendance-hero{padding:16px;border-radius:12px}.attendance-hero h2{font-size:1rem}.attendance-year-card{min-width:unset;width:100%;align-self:stretch;box-sizing:border-box}.attendance-card{padding:14px;border-radius:12px}.attendance-tabs{width:100%}.attendance-tabs button{flex:1 1;justify-content:center}.attendance-card-head{flex-direction:column;gap:10px}.attendance-pagination{flex-direction:column;align-items:stretch;gap:8px}.attendance-primary-button,.attendance-soft-button{width:100%;justify-content:center}.attendance-form-grid,.attendance-form-grid.view,.attendance-summary-grid{grid-template-columns:1fr}.attendance-span-two{grid-column:span 1}.attendance-metric{min-height:auto;padding:12px 14px}.attendance-metric strong{font-size:1.2rem}}.attendance-schedule-actions{display:grid;grid-gap:8px;gap:8px}.attendance-schedule-actions button{display:grid;grid-gap:3px;gap:3px;width:100%;border:1px solid rgba(0,96,72,.1);border-radius:10px;padding:10px 12px;background:#fff;color:#063c32;font-size:13px;text-align:left;cursor:pointer;transition:all .2s ease}.attendance-schedule-actions button:hover{border-color:rgba(0,96,72,.25);box-shadow:0 4px 12px rgba(0,96,72,.06);transform:translateY(-1px)}.attendance-schedule-actions small,.attendance-schedule-empty{color:#657774;font-size:12px;font-weight:700}.staff-schedule-panel{display:grid;grid-gap:18px;gap:18px}.staff-schedule-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d9ebe2;border-radius:14px;background:linear-gradient(135deg,rgba(241,250,245,.98),hsla(0,0%,100%,.96));box-shadow:0 18px 36px rgba(0,73,53,.07);padding:20px 22px}.staff-schedule-hero span{color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.staff-schedule-hero h3{margin:6px 0;color:var(--green-950);font-size:23px;font-weight:900;letter-spacing:-.03em}.staff-schedule-hero p{max-width:780px;margin:0;color:#53645f;font-size:13px;line-height:1.55}.staff-schedule-summary{min-width:360px;display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));grid-gap:10px;gap:10px}.staff-schedule-summary span{display:grid;grid-gap:4px;gap:4px;border:1px solid #cce3d8;border-radius:12px;background:#fff;padding:12px 14px;color:#60706c;font-size:11px;font-weight:800;letter-spacing:0;text-transform:none}.staff-schedule-summary strong{color:var(--green-950);font-size:19px;line-height:1}.staff-schedule-grid.ops-grid.two{grid-template-columns:minmax(360px,.86fr) minmax(520px,1.14fr)}.staff-schedule-filters,.staff-schedule-form{display:grid;grid-gap:12px;gap:12px}.staff-schedule-form{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-schedule-filters label,.staff-schedule-form label{min-width:0;display:grid;grid-gap:6px;gap:6px}.staff-schedule-form label.wide{grid-column:1/-1}.staff-schedule-filters label>span,.staff-schedule-form label>span{color:#22322e;font-size:11px;font-weight:900}.staff-schedule-filters select,.staff-schedule-form input,.staff-schedule-form select,.staff-schedule-form textarea{width:100%;min-height:40px;border:1px solid #cbdcd5;border-radius:9px;background:#fff;color:var(--ink);font-size:13px;font-weight:700;outline:0;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease}.staff-schedule-form textarea{min-height:82px;padding:10px 12px;resize:vertical}.staff-schedule-filters select:focus,.staff-schedule-form input:focus,.staff-schedule-form select:focus,.staff-schedule-form textarea:focus{border-color:#5e937c;box-shadow:0 0 0 4px rgba(0,112,70,.1)}.staff-schedule-form select:disabled{background:#f4f8f6;color:#7d8c87}.staff-schedule-active{display:inline-flex!important;grid-template-columns:auto 1fr;align-items:center;gap:9px!important;color:#2d3b37;font-size:12px;font-weight:800}.staff-schedule-active input{width:17px;min-height:17px;accent-color:var(--green-800);padding:0}.staff-schedule-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end}.staff-schedule-filters{grid-template-columns:minmax(150px,1fr) minmax(120px,.8fr) minmax(120px,.8fr) auto;align-items:flex-end;margin-bottom:14px}.staff-schedule-staff-cell{display:grid;grid-gap:3px;gap:3px;min-width:150px}.staff-schedule-staff-cell strong{color:var(--green-950);font-size:13px;font-weight:900}.staff-schedule-staff-cell small{color:#6a7975;font-size:11px;font-weight:800}.staff-schedule-type{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef8f2;color:var(--green-800);padding:5px 9px;font-size:11px;font-weight:900}.staff-schedule-type.admin,.staff-schedule-type.duty{background:#fff4df;color:#9a5b00}.staff-schedule-type.exam,.staff-schedule-type.other,.staff-schedule-type.support{background:#eef3ff;color:#28578f}@media (max-width:1180px){.staff-schedule-hero{align-items:stretch;flex-direction:column}.staff-schedule-summary{min-width:0;width:100%}.staff-schedule-grid.ops-grid.two{grid-template-columns:1fr}}@media (max-width:720px){.staff-schedule-filters,.staff-schedule-form,.staff-schedule-hero{grid-template-columns:1fr}.staff-schedule-summary{grid-template-columns:1fr 1fr}.staff-schedule-actions{align-items:stretch;flex-direction:column}.staff-schedule-actions button,.staff-schedule-filters button{width:100%}}.modern-staff-profile-container{display:grid;grid-gap:20px;gap:20px;animation:fadeIn .35s ease-out}.modern-profile-header-card{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:16px;padding:24px;box-shadow:0 4px 20px rgba(0,0,0,.02);position:relative;overflow:hidden}.modern-profile-header-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(to bottom,var(--green-600,#1b8a52),#4f68ff)}.compact-back-btn{margin-bottom:16px;font-size:13px;font-weight:700;padding:6px 12px;width:-moz-fit-content;width:fit-content}.modern-profile-hero{display:flex;align-items:center;gap:24px}.large-avatar{width:90px;height:90px;font-size:32px;font-weight:800;color:var(--green-800);background:linear-gradient(135deg,#e9f8ef,#d1f1e1);border:3px solid #fff;box-shadow:0 6px 18px rgba(0,96,72,.1);display:grid;place-items:center;border-radius:50%}.modern-hero-details h2{margin:6px 0 4px;font-size:22px;font-weight:850;color:var(--green-950)}.profile-badge{display:inline-block;padding:3px 10px;background:#eef2ff;color:#4f68ff;font-size:11px;font-weight:750;border-radius:20px;text-transform:uppercase;letter-spacing:.04em}.profile-subtitle{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--muted)}.profile-meta-row{display:flex;gap:16px;font-size:13px;color:var(--ink)}.profile-meta-row strong{color:var(--muted)}.modern-profile-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:20px;gap:20px}.profile-card-col{display:grid;grid-gap:20px;gap:20px;align-content:start}.profile-card{background:#fff;border:1px solid rgba(0,0,0,.03);border-radius:16px;padding:24px;box-shadow:0 6px 20px rgba(0,0,0,.02)}.profile-card .card-header{display:flex;align-items:center;gap:10px;border-bottom:1px solid #f0f3f1;padding-bottom:12px;margin-bottom:16px;color:var(--green-700)}.profile-card .card-header h4{margin:0;font-size:15px;font-weight:800;color:var(--ink)}.modern-dl{display:grid;grid-gap:0;gap:0;margin:0}.modern-dl div{display:grid;grid-template-columns:150px 1fr;grid-gap:12px;gap:12px;padding:11px 0;border-bottom:1px dashed #e8eee9}.modern-dl div:last-child{border-bottom:0}.modern-dl dt{color:var(--muted);font-size:12px;font-weight:750;text-transform:uppercase}.modern-dl dd{color:var(--ink);font-size:13px;font-weight:600}.modern-documents-list{display:grid;grid-gap:10px;gap:10px}.no-documents-placeholder{display:grid;place-items:center;padding:32px 16px;color:var(--muted);text-align:center}.no-documents-placeholder p{margin:8px 0 0;font-size:13px;font-weight:600}.modern-document-item{display:grid;grid-template-columns:32px 1fr auto;align-items:center;grid-gap:12px;gap:12px;padding:12px;background:#f8faf9;border:1px solid rgba(0,0,0,.02);border-radius:10px;transition:background .2s ease}.modern-document-item:hover{background:#f1f5f3}.modern-document-item .doc-icon{width:32px;height:32px;display:grid;place-items:center;background:#fff;border-radius:8px;color:var(--green-600);border:1px solid rgba(0,0,0,.03)}.modern-document-item .doc-meta h5{margin:0;font-size:13px;font-weight:750;color:var(--ink)}.modern-document-item .doc-meta p{margin:2px 0 0;font-size:11px;color:var(--muted);font-weight:600}.modern-document-item .doc-actions{display:flex;gap:6px}.modern-document-item .icon-btn{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;border:1px solid rgba(0,0,0,.04);background:#fff;color:var(--muted);cursor:pointer;transition:all .2s ease}.modern-document-item .icon-btn:hover{color:var(--green-700);border-color:var(--green-300);background:#e9f8ef}.no-file-badge{font-size:11px;font-weight:750;color:var(--muted);background:#f0f3f1;padding:3px 8px;border-radius:4px}.reports-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:20px;gap:20px;margin-top:20px}.reports-column{display:grid;grid-gap:20px;gap:20px;align-content:start}.reports-card{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:16px;padding:24px;box-shadow:0 6px 20px rgba(0,0,0,.02)}.reports-card-header{display:flex;align-items:center;gap:10px;border-bottom:1px solid #f0f3f1;padding-bottom:12px;margin-bottom:18px;color:var(--green-700)}.reports-card-header h4{margin:0;font-size:15px;font-weight:800;color:var(--ink)}.composition-chart-wrapper{display:grid;grid-gap:16px;gap:16px}.composition-row{display:grid;grid-gap:6px;gap:6px}.composition-info{display:flex;justify-content:space-between;font-size:13px}.composition-info strong{color:var(--ink);font-weight:750}.composition-info span{color:var(--muted);font-weight:600}.composition-bar-bg{height:8px;background:#f0f4f2;border-radius:4px;overflow:hidden}.composition-bar-fill{height:100%;background:linear-gradient(90deg,var(--green-500,#22c55e),var(--green-700,#15803d));border-radius:4px}.composition-bar-fill.dept-fill{background:linear-gradient(90deg,#4f68ff,#3b50df)}.compact-table-wrap{overflow-x:auto}.compact-table-wrap table{width:100%;border-collapse:collapse}.compact-table-wrap th{background:#f8faf9;text-transform:uppercase;font-size:11px;font-weight:750;color:var(--muted);padding:8px 12px;text-align:left;border-bottom:1px solid #edf2ef}.compact-table-wrap td{padding:10px 12px;font-size:13px;border-bottom:1px solid #f3f6f4;vertical-align:middle}.compact-table-wrap tr:last-child td{border-bottom:0}@media (max-width:1120px){.modern-profile-grid,.reports-dashboard-grid{grid-template-columns:1fr}}@media (max-width:720px){.modern-profile-hero{flex-direction:column;text-align:center;gap:16px}.profile-meta-row{flex-direction:column;gap:6px;align-items:center}.modern-dl div{grid-template-columns:1fr;gap:4px}}.modern-users-shell{gap:18px}.user-profile-hero-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;border:1px solid rgba(0,96,72,.1);border-radius:16px;padding:18px 20px;background:radial-gradient(circle at top right,rgba(0,132,95,.12),transparent 34%),linear-gradient(135deg,#f3fbf7,#fff 62%);box-shadow:0 12px 30px rgba(6,59,47,.06)}.user-detail-hero-identity,.user-dialog-actions,.user-profile-chip-row,.user-profile-hero-actions,.user-profile-hero-main{display:flex;align-items:center;gap:12px}.user-profile-avatar{width:60px;height:60px;flex:0 0 auto;display:grid;place-items:center;border-radius:16px;border:1px solid rgba(0,96,72,.14);background:linear-gradient(135deg,#dff7eb,#fff);color:var(--green-950);font-size:20px;font-weight:900;box-shadow:0 8px 18px rgba(0,96,72,.07)}.user-profile-avatar.large{width:68px;height:68px;border-radius:20px}.user-detail-hero span,.user-profile-eyebrow,.user-profile-section-heading span{display:inline-flex;align-items:center;gap:6px;color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.user-detail-hero h3,.user-profile-hero-card h3{margin:5px 0 3px;color:var(--green-950);font-size:clamp(1.15rem,1.6vw,1.5rem);font-weight:900;letter-spacing:-.03em}.user-detail-hero p,.user-profile-hero-card p,.user-profile-section-heading p{margin:0;color:#61736f;font-size:13px;line-height:1.5}.user-profile-chip-row{flex-wrap:wrap;margin-top:12px}.user-profile-chip-row span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(0,96,72,.12);border-radius:999px;padding:6px 10px;background:#fff;color:#24453e;font-size:12px;font-weight:800}.user-profile-hero-actions{justify-content:flex-end;align-self:start;flex-wrap:wrap}.user-important-dates>div,.user-profile-metric-row{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.user-profile-insights{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.user-important-dates article,.user-profile-insight-card{min-height:92px;display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(0,96,72,.08);border-radius:14px;padding:14px 16px;background:hsla(0,0%,100%,.88)}.user-important-dates span,.user-profile-insight-card span{color:#64756f;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.user-important-dates strong,.user-profile-insight-card strong{color:var(--green-950);font-size:17px;font-weight:900;letter-spacing:-.01em}.user-profile-insight-card small{color:#71837d;font-size:12px;font-weight:700}.user-profile-insight-card{position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.user-profile-insight-card:hover{transform:translateY(-2px);border-color:rgba(0,96,72,.18);box-shadow:0 12px 24px rgba(6,59,47,.08)}.user-profile-insight-card.accent-good{border-color:rgba(0,150,102,.32)}.user-profile-insight-card.accent-warn{border-color:rgba(214,158,46,.34)}.user-profile-insight-card.accent-alert{border-color:rgba(214,84,61,.34)}.user-profile-insight-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:rgba(0,96,72,.22)}.user-profile-insight-card.accent-good:before{background:#009666}.user-profile-insight-card.accent-warn:before{background:#d69e2e}.user-profile-insight-card.accent-alert:before{background:#d6543d}.user-insight-label{display:inline-flex!important;align-items:center;gap:7px}.user-insight-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(0,96,72,.1);color:var(--green-800)}.user-profile-highlights{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:14px;gap:14px}.user-highlight-card{display:flex;flex-direction:column;gap:12px;border:1px solid rgba(0,96,72,.1);border-radius:16px;padding:16px 18px;background:hsla(0,0%,100%,.92)}.user-highlight-card header{display:flex;align-items:center;gap:10px}.user-highlight-card header h4{margin:0;color:var(--green-950);font-size:14px;font-weight:900}.user-highlight-card header p{margin:2px 0 0;color:#71837d;font-size:11px;font-weight:700}.user-highlight-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:11px;color:#fff}.user-highlight-icon.holidays{background:linear-gradient(135deg,#d69e2e,#b9821a)}.user-highlight-icon.leaves{background:linear-gradient(135deg,#0a8f66,#066b4c)}.user-highlight-card ul{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.user-highlight-card li{display:flex;align-items:center;gap:12px;border:1px solid rgba(0,96,72,.08);border-radius:12px;padding:9px 12px;background:#fff}.user-highlight-empty{justify-content:center;color:#71837d;font-size:12px;font-weight:700;background:rgba(0,96,72,.03)!important;border-style:dashed!important}.user-highlight-day{display:grid;place-items:center;width:44px;flex:0 0 auto;border-radius:10px;padding:5px 0;background:rgba(0,96,72,.07);line-height:1.05}.user-highlight-day strong{color:var(--green-950);font-size:17px;font-weight:900}.user-highlight-day small{color:#5d716b;font-size:10px;font-weight:800;text-transform:uppercase}.user-highlight-body{flex:1 1 auto;min-width:0;display:grid;grid-gap:2px;gap:2px}.user-highlight-body strong{color:var(--green-950);font-size:13px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-highlight-body small{color:#71837d;font-size:11px;font-weight:700}.user-highlight-badge{background:rgba(214,158,46,.14);color:#97700f;white-space:nowrap}.user-highlight-badge,.user-leave-status{flex:0 0 auto;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:850}.user-leave-status{text-transform:capitalize;background:rgba(0,96,72,.1);color:#1f5a47}.user-leave-status.approved{background:rgba(0,150,102,.15);color:#0a7a55}.user-leave-status.pending{background:rgba(214,158,46,.16);color:#97700f}.holiday-hero-card .user-profile-avatar{color:var(--green-800)}.holiday-board{display:grid;grid-gap:14px;gap:14px;border:1px solid rgba(0,96,72,.1);border-radius:18px;padding:20px 22px;background:hsla(0,0%,100%,.92);box-shadow:0 10px 26px rgba(6,59,47,.04)}.holiday-board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.holiday-board-head p{margin:4px 0 0;color:#71837d;font-size:12.5px;font-weight:700}.holiday-loading{margin:0;color:#71837d;font-size:13px;font-weight:700}.holiday-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:12px;gap:12px}.holiday-grid.muted{opacity:.92}.holiday-card{display:flex;align-items:stretch;gap:14px;border:1px solid rgba(0,96,72,.1);border-radius:14px;padding:14px;background:#fff;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.holiday-card:hover{transform:translateY(-2px);border-color:rgba(0,96,72,.18);box-shadow:0 12px 24px rgba(6,59,47,.08)}.holiday-card.is-past{background:#fbfdfc}.holiday-card-date{display:grid;place-content:center;text-align:center;width:56px;flex:0 0 auto;border-radius:12px;padding:8px 0;background:rgba(0,96,72,.08);color:var(--green-950);line-height:1.05}.holiday-card-date strong{font-size:22px;font-weight:900}.holiday-card-date small{font-size:11px;font-weight:800;text-transform:uppercase;color:#5d716b}.holiday-card-body{flex:1 1 auto;min-width:0;display:grid;grid-gap:4px;gap:4px;align-content:start}.holiday-card-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.holiday-card-title-row strong{color:var(--green-950);font-size:14.5px;font-weight:850}.holiday-card-meta{margin:0;color:#61736f;font-size:12px;font-weight:700}.holiday-card-desc{margin:2px 0 0;color:#71837d;font-size:12px;font-weight:600;line-height:1.45}.holiday-card-side{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px;flex:0 0 auto}.holiday-countdown{border-radius:999px;padding:4px 10px;background:rgba(214,158,46,.14);color:#97700f;font-size:11px;font-weight:850;white-space:nowrap}.holiday-card-actions{display:flex;gap:6px}.holiday-icon-button{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(0,96,72,.16);border-radius:9px;background:#fff;color:var(--green-800);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.holiday-icon-button:hover{background:rgba(0,96,72,.07)}.holiday-icon-button.danger{color:#c0432d;border-color:rgba(192,67,45,.28)}.holiday-icon-button.danger:hover{background:rgba(192,67,45,.08)}.holiday-type-badge{border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:850;letter-spacing:.02em;text-transform:uppercase;background:rgba(0,96,72,.1);color:#1f5a47}.holiday-card-date.type-national,.holiday-type-badge.type-national{background:rgba(37,99,235,.13);color:#1d4ed8}.holiday-card-date.type-festival,.holiday-type-badge.type-festival{background:rgba(219,39,119,.13);color:#be1d6c}.holiday-card-date.type-religious,.holiday-type-badge.type-religious{background:rgba(124,58,237,.13);color:#6d28d9}.holiday-card-date.type-school_event,.holiday-type-badge.type-school_event{background:rgba(0,150,102,.14);color:#0a7a55}.holiday-card-date.type-exam_break,.holiday-type-badge.type-exam_break{background:rgba(214,84,61,.14);color:#c0432d}.holiday-card-date.type-other,.holiday-type-badge.type-other{background:rgba(100,116,139,.16);color:#475569}.holiday-gov-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:3px 9px;font-size:10.5px;font-weight:850;letter-spacing:.02em;text-transform:uppercase;background:rgba(6,107,76,.12);color:#066b4c;border:1px solid rgba(6,107,76,.2)}.holiday-info-note{display:flex;align-items:center;gap:10px;border:1px solid #d6e7df;border-radius:12px;padding:12px 14px;background:#f7fbf9;color:#31584d;font-size:13px;font-weight:750}.holiday-editor-modal{max-width:640px}.holiday-editor-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.holiday-editor-field,.holiday-editor-wide{display:grid;grid-gap:6px;gap:6px;color:#243d37;font-size:12px;font-weight:900}.holiday-editor-wide{grid-column:1/-1}.holiday-editor-body input,.holiday-editor-body select,.holiday-editor-body textarea{width:100%;min-height:42px;border:1px solid #cbdcd5;border-radius:10px;background:#fff;color:var(--ink);font-size:14px;font-weight:700;padding:9px 12px;outline:0;font-family:inherit}.holiday-editor-body textarea{resize:vertical}.holiday-editor-checkbox{grid-column:1/-1;display:inline-flex;align-items:center;gap:8px;color:#243d37;font-size:13px;font-weight:800}.holiday-editor-checkbox input{width:16px;height:16px;min-height:0;accent-color:var(--green-800)}.holiday-danger-button{background:#c0432d;border-color:#c0432d}@media (max-width:760px){.holiday-editor-body{grid-template-columns:1fr}}.teacher-dashboard{display:grid;grid-gap:18px;gap:18px}.teacher-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;border:1px solid rgba(0,96,72,.12);border-radius:18px;padding:18px 22px;background:radial-gradient(circle at top right,hsla(0,0%,100%,.16),transparent 45%),linear-gradient(135deg,#0a5f46,#0c7350 60%,#0f8259);color:#fff;box-shadow:0 14px 32px rgba(6,59,47,.16)}.teacher-hero-main{display:flex;align-items:center;gap:14px}.teacher-hero-avatar{width:52px;height:52px;flex:0 0 auto;display:grid;place-items:center;border-radius:15px;background:hsla(0,0%,100%,.16);border:1px solid hsla(0,0%,100%,.28);font-size:18px;font-weight:900;color:#fff;overflow:hidden}.teacher-hero-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.teacher-hero-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:hsla(0,0%,100%,.85)}.teacher-hero-text h2{margin:4px 0 3px;font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:900;letter-spacing:-.02em}.teacher-hero-text p{margin:0;color:hsla(0,0%,100%,.82);font-size:12.5px;font-weight:600}.teacher-hero-date{display:flex;align-items:center;gap:10px;border-radius:12px;padding:10px 14px;background:hsla(0,0%,100%,.14);border:1px solid hsla(0,0%,100%,.22)}.teacher-hero-date strong{display:block;font-size:13px;font-weight:850}.teacher-hero-date span{font-size:11.5px;color:hsla(0,0%,100%,.8);font-weight:700}.teacher-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:14px;gap:14px}.teacher-stat-card{display:flex;align-items:center;gap:13px;border:1px solid rgba(0,96,72,.1);border-radius:14px;padding:14px 16px;background:#fff;box-shadow:0 8px 22px rgba(6,59,47,.045);transition:transform .15s ease,box-shadow .15s ease}.teacher-stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 26px rgba(6,59,47,.09)}.teacher-stat-icon{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border-radius:12px;color:#fff}.teacher-stat-card.tone-green .teacher-stat-icon{background:#0a8f66}.teacher-stat-card.tone-blue .teacher-stat-icon{background:#2f6df6}.teacher-stat-card.tone-violet .teacher-stat-icon{background:#7c3aed}.teacher-stat-card.tone-amber .teacher-stat-icon{background:#e08a1e}.teacher-stat-text{display:grid;grid-gap:1px;gap:1px;min-width:0}.teacher-stat-text>span{color:#64756f;font-size:12px;font-weight:800}.teacher-stat-text strong{color:var(--green-950);font-size:21px;font-weight:900;line-height:1.12;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.teacher-stat-text small{color:#71837d;font-size:11.5px;font-weight:650}.teacher-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.teacher-panel{border:1px solid rgba(0,96,72,.1);border-radius:18px;padding:18px 20px;background:#fff;box-shadow:0 10px 26px rgba(6,59,47,.04)}.teacher-panel+.teacher-panel{margin-top:16px}.teacher-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.teacher-panel-head h3{margin:4px 0 0;color:var(--green-950);font-size:17px;font-weight:900}.teacher-panel-eyebrow{color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.teacher-panel-eyebrow,.teacher-progress-pill{display:inline-flex;align-items:center;gap:6px}.teacher-progress-pill{border-radius:999px;padding:5px 11px;background:rgba(0,150,102,.12);color:#0a7a55;font-size:12px;font-weight:850}.teacher-progress-track{height:8px;border-radius:999px;background:rgba(0,96,72,.1);margin:12px 0 4px;overflow:hidden}.teacher-progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0a8f66,#12a874);transition:width .3s ease}.teacher-schedule-list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.teacher-schedule-item{display:flex;align-items:center;gap:14px;border:1px solid rgba(0,96,72,.08);border-radius:14px;padding:12px 14px;background:#fbfefc}.teacher-schedule-time{display:grid;place-items:center;width:62px;flex:0 0 auto;border-radius:12px;padding:8px 0;background:rgba(0,96,72,.08);line-height:1.1}.teacher-schedule-time strong{color:var(--green-950);font-size:15px;font-weight:900}.teacher-schedule-time span{color:#5d716b;font-size:11px;font-weight:700}.teacher-schedule-body{flex:1 1 auto;min-width:0;display:grid;grid-gap:2px;gap:2px}.teacher-schedule-body strong{color:var(--green-950);font-size:14px;font-weight:850}.teacher-schedule-body span{color:#71837d;font-size:12px;font-weight:650}.teacher-schedule-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:0 0 auto}.teacher-mark-badge{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:850;white-space:nowrap}.teacher-mark-badge.done{background:rgba(0,150,102,.15);color:#0a7a55}.teacher-mark-badge.pending{background:rgba(214,158,46,.16);color:#97700f}.teacher-mark-button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(0,96,72,.2);border-radius:9px;padding:5px 10px;background:#fff;color:var(--green-800);font-size:12px;font-weight:800;cursor:pointer;transition:background .15s ease}.teacher-mark-button:hover{background:rgba(0,96,72,.07)}.teacher-empty,.teacher-empty-text{color:#71837d;font-size:13px;font-weight:650}.teacher-empty{display:grid;justify-items:center;text-align:center;grid-gap:6px;gap:6px;padding:28px 16px}.teacher-empty-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:rgba(0,96,72,.09);color:var(--green-800)}.teacher-empty h4{margin:4px 0 0;color:var(--green-950);font-size:15px;font-weight:850}.teacher-empty-text{margin:10px 0 0}.teacher-week{margin-top:18px;border-top:1px dashed rgba(0,96,72,.14);padding-top:14px}.teacher-week-bars{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:8px;gap:8px;margin-top:10px}.teacher-week-bar{display:grid;justify-items:center;grid-gap:5px;gap:5px}.teacher-week-bar-track{display:flex;align-items:flex-end;justify-content:center;width:100%;height:70px;border-radius:8px;background:rgba(0,96,72,.06);overflow:hidden}.teacher-week-bar-fill{width:60%;min-height:3px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#12a874,#066b4c)}.teacher-week-bar small{color:#64756f;font-size:10.5px;font-weight:800;text-transform:uppercase}.teacher-week-bar b{color:var(--green-950);font-size:12px;font-weight:900}.teacher-side-column{display:grid;grid-gap:16px;gap:16px;align-content:start}.teacher-side-column .teacher-panel+.teacher-panel{margin-top:0}.teacher-attendance-card{display:grid;justify-items:center;text-align:center;grid-gap:10px;gap:10px}.teacher-donut{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;margin-top:4px}.teacher-donut-hole{width:96px;height:96px;border-radius:50%;background:#fff;display:grid;place-items:center;align-content:center;box-shadow:inset 0 0 0 1px rgba(0,96,72,.08)}.teacher-donut-hole strong{color:var(--green-950);font-size:24px;font-weight:900;line-height:1}.teacher-donut-hole span{color:#71837d;font-size:11px;font-weight:800;text-transform:uppercase}.teacher-attendance-note{margin:2px 0 0;color:#61736f;font-size:12.5px;font-weight:700}.teacher-agenda{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:9px;gap:9px}.teacher-agenda li{display:flex;align-items:center;gap:11px;border:1px solid rgba(0,96,72,.08);border-radius:12px;padding:9px 12px;background:#fff}.teacher-agenda-icon{display:grid;place-items:center;width:32px;height:32px;flex:0 0 auto;border-radius:10px;color:#fff}.teacher-agenda-icon.holiday{background:linear-gradient(135deg,#d69e2e,#b9821a)}.teacher-agenda-icon.leave{background:linear-gradient(135deg,#0a8f66,#066b4c)}.teacher-agenda-body{flex:1 1 auto;min-width:0;display:grid;grid-gap:1px;gap:1px}.teacher-agenda-body strong{color:var(--green-950);font-size:13px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-agenda-body span{color:#71837d;font-size:11.5px;font-weight:650}.teacher-agenda-count{flex:0 0 auto;border-radius:999px;padding:4px 9px;background:rgba(0,96,72,.09);color:#1f5a47;font-size:11px;font-weight:850;white-space:nowrap}.teacher-profile-rows{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.teacher-profile-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px dashed rgba(0,96,72,.1);padding-bottom:8px}.teacher-profile-row:last-child{border-bottom:0;padding-bottom:0}.teacher-profile-row>span{display:inline-flex;align-items:center;gap:5px;color:#64756f;font-size:12px;font-weight:750}.teacher-profile-row strong{color:var(--green-950);font-size:13px;font-weight:800;text-align:right}@media (max-width:1040px){.teacher-grid{grid-template-columns:1fr}}.role-hero-treasurer{background:radial-gradient(circle at top right,hsla(0,0%,100%,.16),transparent 45%),linear-gradient(135deg,#0b5a52,#0c6f63 60%,#0f8574)}.role-hero-head{background:radial-gradient(circle at top right,hsla(0,0%,100%,.16),transparent 45%),linear-gradient(135deg,#274b8f,#2f5fb0 60%,#3a6fc4)}.role-main-column{display:grid;grid-gap:16px;gap:16px;align-content:start}.role-main-column .teacher-panel+.teacher-panel{margin-top:0}.role-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:10px;gap:10px;margin-top:12px}.role-mini-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.role-mini-stat{display:flex;align-items:center;gap:10px;border:1px solid rgba(0,96,72,.08);border-radius:12px;padding:10px 12px;background:#fbfefc}.role-mini-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:10px;color:#fff}.role-mini-icon svg{color:#fff;stroke:#fff}.role-mini-icon.green{background:#22b98a}.role-mini-icon.blue{background:#5b93f2}.role-mini-icon.violet{background:#9d7bf0}.role-mini-icon.amber{background:#efb057}.role-mini-icon.red{background:#ea7a63}.role-mini-stat>div{display:grid;grid-gap:1px;gap:1px;min-width:0}.role-mini-stat strong{color:var(--green-950);font-size:16px;font-weight:900;line-height:1.15}.role-mini-stat span{color:#64756f;font-size:11.5px;font-weight:700}.role-table-wrap{margin-top:12px;overflow-x:auto}.role-table{width:100%;border-collapse:collapse}.role-table th{text-align:left;color:#64756f;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.03em;padding:6px 10px;border-bottom:1px solid rgba(0,96,72,.1)}.role-table td{padding:9px 10px;font-size:12.5px;font-weight:700;color:#243d37;border-bottom:1px solid rgba(0,96,72,.06)}.role-table .right{text-align:right}.role-dir{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:850}.role-dir.in{background:rgba(0,150,102,.14);color:#0a7a55}.role-dir.out{background:rgba(214,84,61,.14);color:#c0432d}.role-amount.in{color:#0a7a55;font-weight:900}.role-amount.out{color:#c0432d;font-weight:900}.role-approval-total{display:flex;align-items:baseline;gap:8px;margin-top:10px;color:var(--green-950);font-size:34px;font-weight:900}.role-approval-total small{color:#71837d;font-size:12px;font-weight:700}.role-approval-list{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:8px;gap:8px}.role-approval-list li{display:flex;align-items:center;gap:10px;border:1px solid rgba(0,96,72,.08);border-radius:12px;padding:9px 12px;background:#fff}.role-approval-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:rgba(214,158,46,.14);color:#97700f;flex:0 0 auto}.role-approval-label{flex:1 1 auto;color:#243d37;font-size:13px;font-weight:750}.role-approval-list b{color:var(--green-950);font-size:15px;font-weight:900}.role-attendance-row{display:flex;align-items:center;gap:20px;margin-top:8px;flex-wrap:wrap}.role-attendance-legend{display:grid;grid-gap:8px;gap:8px;flex:1 1 160px}.role-legend-row{display:flex;align-items:center;gap:8px}.role-legend-dot{width:11px;height:11px;border-radius:50%;flex:0 0 auto}.role-legend-label{flex:1 1 auto;color:#4a5c56;font-size:13px;font-weight:750}.role-legend-row b{color:var(--green-950);font-size:15px;font-weight:900}.role-activity{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.role-activity li{display:flex;align-items:flex-start;gap:10px}.role-activity-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex:0 0 auto;background:#0a8f66}.role-activity-dot.amber{background:#d69e2e}.role-activity-body{flex:1 1 auto;min-width:0;display:grid;grid-gap:1px;gap:1px}.role-activity-body strong{color:var(--green-950);font-size:12.5px;font-weight:850}.role-activity-body span{color:#71837d;font-size:11.5px;font-weight:650;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.role-activity time{color:#93a29d;font-size:10.5px;font-weight:700;white-space:nowrap;flex:0 0 auto}.role-chart{width:100%;height:auto;margin-top:8px}.user-profile-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.user-profile-section-heading h3{margin:4px 0 6px;color:var(--green-950);font-size:20px;font-weight:900}.modern-user-results,.modern-user-search-card{box-shadow:0 10px 26px rgba(6,59,47,.04)}.modern-user-search-head{display:grid;grid-gap:4px;gap:4px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px dashed rgba(0,96,72,.14)}.modern-user-search-eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.modern-user-search-head p{margin:0;color:#71837d;font-size:12.5px;font-weight:700}.user-search-empty-state{display:grid;justify-items:center;grid-gap:8px;gap:8px;text-align:center;border:1px dashed rgba(0,96,72,.2);border-radius:18px;padding:44px 24px;background:radial-gradient(circle at top,rgba(0,132,95,.06),transparent 60%),hsla(0,0%,100%,.7)}.user-search-empty-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:rgba(0,96,72,.09);color:var(--green-800)}.user-search-empty-state h4{margin:4px 0 0;color:var(--green-950);font-size:17px;font-weight:900}.user-search-empty-state p{margin:0;max-width:420px;color:#71837d;font-size:13px;font-weight:600;line-height:1.5}.student-success-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #bce8d2;border-radius:12px;padding:12px 14px;background:#f0fbf5;color:var(--green-800);font-size:13px;font-weight:850}.student-success-banner button{border:0;background:transparent;color:inherit;font-weight:900;cursor:pointer}.modern-user-detail-modal{max-width:1160px}.user-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 28px;border-bottom:1px solid #e6efeb;background:linear-gradient(135deg,#f6fbf8,#fff)}.modern-user-profile-body{display:grid;grid-gap:16px;gap:16px}.user-privacy-note{display:flex;align-items:center;gap:10px;border:1px solid #d6e7df;border-radius:12px;padding:12px 14px;background:#f7fbf9;color:#31584d;font-size:13px;font-weight:800}.modern-user-role-strip{display:grid;grid-gap:6px;gap:6px;border:1px solid #dcebe4;border-radius:14px;padding:16px;background:#fff}.user-important-dates{display:grid;grid-gap:12px;gap:12px}.user-important-dates h4{margin:0;color:var(--green-950);font-size:16px;font-weight:900}.user-password-dialog{position:relative;display:grid;grid-gap:12px;gap:12px;width:min(460px,calc(100vw - 28px));text-align:left}.staff-onboarding-body label,.user-password-dialog label{display:grid;grid-gap:6px;gap:6px;color:#243d37;font-size:12px;font-weight:900}.staff-onboarding-body input,.staff-onboarding-body select,.user-password-dialog input{width:100%;min-height:42px;border:1px solid #cbdcd5;border-radius:10px;background:#fff;color:var(--ink);font-size:14px;font-weight:700;padding:0 12px;outline:0}.user-dialog-close{position:absolute;top:14px;right:14px}.user-dialog-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#e4f5eb;color:var(--green-800)}.staff-onboarding-modal{max-width:760px}.staff-onboarding-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.staff-onboarding-roles{grid-column:1/-1;display:grid;grid-gap:10px;gap:10px}.staff-onboarding-roles>span{color:#243d37;font-size:12px;font-weight:900}.staff-onboarding-roles>div{display:flex;flex-wrap:wrap;gap:8px}.staff-onboarding-roles label{display:inline-flex;align-items:center;gap:8px;border:1px solid #d6e7df;border-radius:999px;padding:8px 12px;background:#f7fbf9;color:#173d34;font-size:12px;font-weight:850}.staff-onboarding-roles input{width:15px;height:15px;accent-color:var(--green-800)}@media (max-width:980px){.user-detail-hero,.user-profile-hero-card,.user-profile-section-heading{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.staff-onboarding-body,.user-important-dates>div,.user-profile-insights,.user-profile-metric-row{grid-template-columns:1fr}.user-profile-hero-actions{justify-content:stretch}.user-profile-hero-actions button,.user-profile-section-heading button{width:100%;justify-content:center}}.dashboard-mini-stat,.dashboard-section,.dashboard-sections,.next-dashboard-content,.next-stat-card,.next-stats-grid{min-width:0}.dashboard-sections{gap:18px}.dashboard-section{position:relative;isolation:isolate;overflow:hidden;border:1px solid rgba(207,225,218,.88);border-left:0;border-radius:20px;background:radial-gradient(circle at top right,rgba(209,250,229,.36),transparent 32%),linear-gradient(180deg,#fff,#fbfefd);box-shadow:0 18px 42px rgba(15,61,52,.07);padding:24px 28px}.dashboard-section:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;border-radius:20px 0 0 20px;background:linear-gradient(180deg,#059669,#047857);z-index:0}.dashboard-section.hr:before{background:linear-gradient(180deg,#2563eb,#0891b2)}.dashboard-section>*{position:relative;z-index:1}.dashboard-section-header{align-items:center;border-bottom:1px solid rgba(220,235,228,.76);padding-bottom:16px;margin-bottom:16px}.dashboard-section-header h3{letter-spacing:-.03em}.dashboard-section-icon{box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.7)}.dashboard-mini-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.dashboard-mini-stat{min-width:0;border:1px solid rgba(218,234,227,.96);background:hsla(0,0%,100%,.86);box-shadow:0 10px 24px rgba(15,61,52,.05);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dashboard-mini-stat-text{min-width:0}.dashboard-mini-stat-text strong,.next-stat-card strong{max-width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere;word-break:break-word}.dashboard-mini-stat-text strong{font-size:clamp(18px,1.45vw,22px);letter-spacing:-.035em}.dashboard-mini-stat-text span,.next-stat-card small{line-height:1.25}.dashboard-recent-table{overflow-x:auto;border-radius:14px;-webkit-overflow-scrolling:touch}.dashboard-table{min-width:620px}@media (max-width:900px){.next-content-heading{gap:14px}.next-content-tools{flex-wrap:wrap}.next-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.next-stat-card{padding:16px}.next-stat-card strong{font-size:clamp(24px,5vw,32px);letter-spacing:-.04em}.dashboard-section{padding:20px}.dashboard-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){body,html{max-width:100%}.next-shell,body,html{overflow-x:hidden}.next-content-panel{width:100%;min-width:0;--panel-pad-top:12px;padding:12px 10px 24px;overflow-x:hidden}.next-dashboard-content{gap:16px}.next-content-heading h2{font-size:clamp(20px,5vw,24px);letter-spacing:-.04em}.next-content-heading p{font-size:13px;line-height:1.45}.next-content-tools{display:grid;grid-template-columns:1fr;width:100%;grid-gap:10px;gap:10px}.next-content-tools>*{width:100%;min-width:0}.next-stats-grid{grid-template-columns:1fr;gap:12px}.next-stat-card{display:grid;grid-gap:12px;gap:12px;padding:16px;overflow:hidden}.next-stat-card div{gap:10px;min-width:0}.next-stat-card p{font-size:13px}.next-stat-card strong{font-size:clamp(22px,8vw,28px);letter-spacing:-.045em}.next-stat-card small{font-size:12px}.dashboard-sections{gap:14px}.dashboard-section{border-radius:16px;padding:16px 14px}.dashboard-section:before{width:4px}.dashboard-section-header{align-items:flex-start;gap:10px;padding-bottom:12px;margin-bottom:12px}.dashboard-section-header h3{font-size:15px}.dashboard-section-header small{margin-left:auto;font-size:11px}.dashboard-mini-stat-icon,.dashboard-section-icon{width:38px;height:38px;border-radius:12px}.dashboard-mini-stats{grid-template-columns:1fr;gap:10px}.dashboard-mini-stat{padding:12px;gap:12px}.dashboard-mini-stat-text strong{font-size:clamp(17px,6vw,20px)}.dashboard-mini-stat-text span{font-size:12px}.dashboard-recent-table{margin-top:4px}.dashboard-table{min-width:560px}.next-dashboard-grid{grid-template-columns:1fr}}@media (max-width:420px){.next-content-panel{padding-inline:8px}.dashboard-section{padding:14px 12px}.dashboard-mini-stat-text strong{font-size:17px}.dashboard-table{min-width:520px}}.role-dashboard,.role-dashboard .role-main-column,.role-dashboard .role-mini-grid,.role-dashboard .role-mini-stat,.role-dashboard .role-mini-stat>div,.role-dashboard .teacher-grid,.role-dashboard .teacher-hero,.role-dashboard .teacher-hero-main,.role-dashboard .teacher-hero-text,.role-dashboard .teacher-panel,.role-dashboard .teacher-side-column,.role-dashboard .teacher-stat-card,.role-dashboard .teacher-stat-grid,.role-dashboard .teacher-stat-text{min-width:0;max-width:100%;box-sizing:border-box}.role-dashboard{width:100%;overflow-x:hidden}.role-dashboard .teacher-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.role-dashboard .role-mini-stat,.role-dashboard .teacher-stat-card{overflow:hidden}.role-dashboard .role-mini-stat span,.role-dashboard .role-mini-stat strong,.role-dashboard .teacher-stat-text small,.role-dashboard .teacher-stat-text strong{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.role-dashboard .role-overview-panel{position:relative;overflow:hidden;border:1px solid rgba(207,225,218,.9);border-left:0;border-radius:20px;padding:24px 28px;background:radial-gradient(circle at top right,rgba(220,252,231,.38),transparent 34%),linear-gradient(180deg,#fff,#fbfefd);box-shadow:0 18px 42px rgba(15,61,52,.07)}.role-dashboard .role-overview-panel:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#059669,#047857)}.role-dashboard .role-staff-panel:before{background:linear-gradient(180deg,#2563eb,#0891b2)}.role-dashboard .role-overview-panel>*{position:relative;z-index:1}.role-dashboard .role-overview-panel .teacher-panel-head{border-bottom:1px solid rgba(220,235,228,.76);padding-bottom:14px;margin-bottom:14px}.role-dashboard .role-overview-panel .role-mini-grid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px}.role-dashboard .role-overview-panel .role-mini-stat{min-height:78px;padding:14px 16px;border-color:rgba(218,234,227,.96);background:hsla(0,0%,100%,.88);box-shadow:0 10px 24px rgba(15,61,52,.05)}.role-dashboard .role-overview-panel .role-mini-icon{width:40px;height:40px;border-radius:13px}.role-dashboard .role-overview-panel .role-mini-stat strong{font-size:clamp(18px,1.5vw,22px);line-height:1.1;letter-spacing:-.035em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.role-dashboard .role-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.role-dashboard .role-table{min-width:620px}@media (max-width:1180px){.role-dashboard .teacher-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.role-dashboard{gap:14px}.role-dashboard .teacher-hero{width:100%;flex-direction:column;align-items:stretch;gap:14px;border-radius:18px;padding:18px 16px}.role-dashboard .teacher-hero-main{width:100%;align-items:flex-start;gap:12px}.role-dashboard .teacher-hero-avatar{width:54px;height:54px;border-radius:16px;font-size:18px}.role-dashboard .teacher-hero-text h2{font-size:clamp(21px,6vw,26px);line-height:1.12;overflow-wrap:anywhere;word-break:break-word}.role-dashboard .teacher-hero-text p{font-size:12.5px;line-height:1.35}.role-dashboard .teacher-hero-date{width:100%;padding:11px 12px}.role-dashboard .teacher-hero-date strong{font-size:13px;line-height:1.3}.role-dashboard .teacher-stat-grid{grid-template-columns:1fr!important;gap:12px;width:100%}.role-dashboard .teacher-stat-card{width:100%;padding:14px 16px;gap:12px;border-radius:16px}.role-dashboard .teacher-stat-icon{width:42px;height:42px;border-radius:13px}.role-dashboard .teacher-stat-text>span{font-size:12px}.role-dashboard .teacher-stat-text strong{font-size:clamp(22px,7vw,28px);line-height:1.08}.role-dashboard .teacher-stat-text small{font-size:11.5px;line-height:1.25}.role-dashboard .role-main-column,.role-dashboard .teacher-grid,.role-dashboard .teacher-side-column{grid-template-columns:1fr!important;gap:14px;width:100%}.role-dashboard .role-overview-panel,.role-dashboard .teacher-panel{width:100%;border-radius:16px;padding:16px 14px}.role-dashboard .role-overview-panel:before{width:4px}.role-dashboard .role-overview-panel .teacher-panel-head,.role-dashboard .teacher-panel-head{align-items:flex-start;gap:10px;padding-bottom:12px;margin-bottom:12px}.role-dashboard .teacher-panel-head h3{font-size:17px;line-height:1.2}.role-dashboard .teacher-panel-eyebrow{font-size:10.5px;line-height:1.2}.role-dashboard .role-mini-grid,.role-dashboard .role-mini-grid.two,.role-dashboard .role-overview-panel .role-mini-grid{grid-template-columns:1fr!important;gap:10px;width:100%}.role-dashboard .role-mini-stat,.role-dashboard .role-overview-panel .role-mini-stat{width:100%;min-height:68px;padding:12px;gap:12px}.role-dashboard .role-mini-icon,.role-dashboard .role-overview-panel .role-mini-icon{width:38px;height:38px;border-radius:12px}.role-dashboard .role-mini-stat strong,.role-dashboard .role-overview-panel .role-mini-stat strong{font-size:clamp(17px,6vw,20px)}.role-dashboard .role-mini-stat span{font-size:11.5px;line-height:1.25}.role-dashboard .role-table{min-width:560px}}@media (max-width:420px){.role-dashboard .teacher-hero{border-radius:16px;padding:16px 14px}.role-dashboard .teacher-hero-main{flex-direction:column}.role-dashboard .teacher-hero-avatar{width:50px;height:50px}.role-dashboard .role-overview-panel,.role-dashboard .teacher-panel,.role-dashboard .teacher-stat-card{padding:13px 12px}.role-dashboard .role-table{min-width:520px}}@media (max-width:980px){.role-dashboard .role-mini-grid,.role-dashboard .role-mini-grid.two,.role-dashboard .role-overview-panel .role-mini-grid,.role-dashboard .teacher-stat-grid,.teacher-dashboard:not(.role-dashboard) .teacher-stat-grid{grid-template-columns:1fr!important;width:100%}.role-dashboard .role-overview-panel,.role-dashboard .teacher-panel,.teacher-dashboard:not(.role-dashboard) .teacher-panel{max-width:100%;overflow-x:hidden}}.next-idle-backdrop{position:fixed;inset:0;z-index:2147483000;width:100vw;min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:rgba(7,18,15,.72);backdrop-filter:blur(5px) saturate(.9);-webkit-backdrop-filter:blur(5px) saturate(.9);overscroll-behavior:contain}.next-idle-backdrop:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at center,hsla(0,0%,100%,.08),transparent 34%),linear-gradient(180deg,rgba(1,56,43,.12),rgba(0,0,0,.28))}.next-idle-backdrop .next-session-modal{position:relative;z-index:1;width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow-y:auto;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.44)}body:has(.next-idle-backdrop),html:has(.next-idle-backdrop){overflow:hidden}@media (max-width:620px){.next-idle-backdrop{align-items:center;padding:14px}.next-idle-backdrop .next-session-modal.next-idle-modal{width:min(100%,390px);padding:24px 20px 20px;border-radius:16px}.next-idle-backdrop .next-session-modal h2{font-size:17px}.next-idle-backdrop .next-session-modal p{font-size:12.5px}.next-idle-backdrop .next-idle-countdown{width:118px;min-height:84px}.next-idle-backdrop .next-idle-countdown strong{font-size:32px}.next-idle-backdrop .next-idle-actions button{width:100%;min-width:0}}.fees-collect-backdrop{z-index:180;padding:clamp(12px,3vw,28px)}.fees-collect-modal{width:min(860px,calc(100vw - 28px));max-height:min(92dvh,860px)}.fees-collect-body{display:grid;grid-gap:18px;gap:18px;padding:18px 22px 22px}.fees-collect-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.fees-collect-summary-grid div{min-width:0;border:1px solid #d9ebe2;border-radius:14px;background:linear-gradient(180deg,#f8fffb,#f2fbf6);padding:12px}.fees-collect-summary-grid span{display:block;color:#60736d;font-size:11px;font-weight:850;letter-spacing:.02em;text-transform:uppercase}.fees-collect-summary-grid strong{display:block;margin-top:5px;overflow-wrap:anywhere;color:var(--green-950);font-size:14px;font-weight:850;line-height:1.3}.fees-payment-modal-form{margin:0}.fees-payment-modal-form .ops-primary{width:min(260px,100%)}.fees-student-cell{display:grid;grid-gap:2px;gap:2px;min-width:0}.fees-student-cell strong{color:var(--green-950);font-size:13px;font-weight:800}.fees-student-cell small{color:#60736d;font-size:11.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:260px}.fees-total-balance{color:var(--green-950);font-size:14px;font-weight:850;white-space:nowrap}.fees-dues-picker{margin:14px 0 0;border:1px solid #d9ebe2;border-radius:14px;background:#fbfffd;overflow:hidden}.fees-dues-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid #e4f0ea;background:#f2fbf6}.fees-dues-picker-head strong{color:var(--green-950);font-size:13px;font-weight:850}.fees-dues-selectall{display:inline-flex;align-items:center;gap:7px;color:var(--green-800);font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}.fees-dues-row input,.fees-dues-selectall input{width:17px;height:17px;accent-color:var(--green-700);cursor:pointer}.fees-dues-picker-list{display:grid;grid-gap:2px;gap:2px;max-height:240px;overflow-y:auto;padding:6px}.fees-dues-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:12px;gap:12px;padding:9px 10px;border-radius:10px;cursor:pointer}.fees-dues-row:hover{background:#f2fbf6}.fees-dues-row.checked{background:#eafaf1}.fees-dues-head{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--green-950);font-size:13px;font-weight:750}.fees-dues-due{color:#60736d;font-size:11px;font-weight:700;white-space:nowrap}.fees-dues-amount{color:var(--green-950);font-size:13px;font-weight:850;white-space:nowrap}.fees-dues-picker-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #e4f0ea;background:#f7fdfa;color:#4c5f59;font-size:12px;font-weight:800}.fees-dues-picker-foot strong{color:var(--green-800)}@media (max-width:520px){.fees-dues-row{grid-template-columns:auto minmax(0,1fr) auto}.fees-dues-due{display:none}}.fees-command-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.fees-counter-launch{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:10px;background:linear-gradient(180deg,#0a7d51,#04603c);color:#fff;font-size:13px;font-weight:850;cursor:pointer;box-shadow:0 10px 22px rgba(0,88,63,.18)}.fees-counter-launch:hover{filter:brightness(1.05)}.counter-mode-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;background:rgba(5,24,19,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);overflow-y:auto}.counter-mode-shell{width:min(720px,100%);display:grid;grid-gap:16px;gap:16px;border-radius:18px;background:#fff;padding:20px;box-shadow:0 30px 70px rgba(0,40,28,.35)}.counter-mode-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.counter-mode-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#eafaf1;color:#0a7d51;padding:4px 11px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.counter-mode-title h3{margin:8px 0 3px;color:var(--green-950);font-size:19px;font-weight:850}.counter-mode-title p{margin:0;color:#60736d;font-size:13px}.counter-mode-head-right{display:flex;align-items:flex-start;gap:12px}.counter-mode-tally{display:flex;gap:10px}.counter-mode-tally div{min-width:84px;border:1px solid #dbeee5;border-radius:12px;background:#f5fbf7;padding:8px 12px;text-align:right}.counter-mode-tally span{display:block;color:#60736d;font-size:10px;font-weight:850;text-transform:uppercase}.counter-mode-tally strong{display:block;margin-top:2px;color:var(--green-900);font-size:16px;font-weight:850}.counter-mode-close{border:0;background:#f1f5f3;border-radius:10px;width:40px;height:40px;display:grid;place-items:center;color:#445;cursor:pointer}.counter-mode-scan{display:flex;align-items:center;gap:12px;border:2px solid #0a7d51;border-radius:14px;background:#f7fdfa;padding:10px 14px;color:#0a7d51}.counter-mode-scan input{flex:1 1;min-width:0;height:44px;border:0;background:transparent;outline:0;color:var(--ink);font-size:16px;font-weight:700}.counter-mode-scan .ops-primary{height:44px;flex:0 0 auto}.counter-mode-note{margin:0;border-radius:10px;background:#f3fbf6;border:1px solid #d9ebe2;padding:10px 12px;color:#0b5c40;font-size:13px;font-weight:700}.counter-mode-body{display:grid;grid-gap:14px;gap:14px}.counter-mode-student{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #e3efe9;border-radius:14px;background:#fbfffd;padding:14px 16px}.counter-mode-student strong{display:block;color:var(--green-950);font-size:17px;font-weight:850}.counter-mode-student span{display:block;margin-top:3px;color:#60736d;font-size:12.5px;font-weight:700}.counter-mode-due-pill{flex:0 0 auto;min-width:130px;border-radius:12px;background:#006b4b;color:#fff;padding:10px 14px;text-align:right}.counter-mode-due-pill span{font-size:11px;font-weight:800;opacity:.85}.counter-mode-due-pill strong{display:block;margin-top:2px;font-size:20px;font-weight:850}.counter-mode-due-pill em{display:block;margin-top:4px;font-style:normal;font-size:11px;font-weight:800;color:#ffe08a}.counter-mode-dues{display:grid;grid-gap:4px;gap:4px;max-height:220px;overflow-y:auto;border:1px solid #e3efe9;border-radius:12px;padding:6px}.counter-mode-due{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;grid-gap:12px;gap:12px;padding:10px;border-radius:9px;cursor:pointer}.counter-mode-due:hover{background:#f2fbf6}.counter-mode-due.checked{background:#eafaf1}.counter-mode-due input{width:18px;height:18px;accent-color:var(--green-700)}.counter-mode-due span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--green-950);font-size:14px;font-weight:700}.counter-mode-due small{color:#60736d;font-size:11.5px;font-weight:700;white-space:nowrap}.counter-mode-due strong{color:var(--green-950);font-size:14px;font-weight:850;white-space:nowrap}.counter-mode-collect{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;border-top:1px solid #eef4f0;padding-top:14px}.counter-mode-collect-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px}.counter-mode-collect-btn{height:50px;flex:1 1;font-size:15px}.counter-mode-idle{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:34px 16px;color:#9db8ae;text-align:center}.counter-mode-idle p{margin:0;max-width:420px;color:#60736d;font-size:13.5px;font-weight:600}@media (max-width:620px){.counter-mode-head,.counter-mode-student{flex-direction:column;align-items:stretch}.counter-mode-collect{grid-template-columns:1fr}.counter-mode-collect-actions{flex-direction:column}.counter-mode-collect-btn{width:100%}}@media (max-width:760px){.fees-collect-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.fees-collect-body{padding:14px}.fees-collect-summary-grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.fees-collect-summary-grid{grid-template-columns:1fr}.fees-payment-modal-form .ops-primary{width:100%}}.student-academic-readonly-note{margin:14px 30px 0;padding:12px 14px;border:1px solid rgba(217,119,6,.24);border-radius:14px;background:#fff7ed;color:#8a4b08;font-size:.9rem;font-weight:700}.academic-settings-card{margin-top:20px;padding:22px;border:1px solid rgba(0,95,73,.14);border-radius:18px;background:linear-gradient(135deg,rgba(236,253,245,.88),hsla(0,0%,100%,.96));box-shadow:0 14px 36px rgba(15,23,42,.07)}.academic-settings-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.academic-rollover-card p,.academic-settings-header p,.academic-settings-header span,.academic-year-list-head span,.academic-year-row span{color:#5b6b66;font-size:.9rem}.academic-settings-header>div>span{display:inline-flex;align-items:center;gap:7px;color:#00664f;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.academic-settings-header h3{margin:6px 0 5px;color:#003d32;font-size:1.2rem;letter-spacing:-.01em}.academic-current-pill{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:10px 14px;border-radius:999px;background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18);font-size:.9rem}.academic-message{margin-bottom:18px;padding:12px 14px;border-radius:14px;font-weight:700;font-size:.92rem}.academic-message.success{background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18)}.academic-message.error{background:#fff1f2;color:#b91c1c;border:1px solid rgba(185,28,28,.22)}.academic-message.info,.academic-message.warning{background:#fffbeb;color:#92400e;border:1px solid rgba(217,119,6,.22)}.academic-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);grid-gap:18px;gap:18px;align-items:stretch}.academic-rollover-card,.academic-year-form{padding:20px;border-radius:20px;background:hsla(0,0%,100%,.92);border:1px solid rgba(0,95,73,.14)}.academic-year-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.academic-rollover-card h4,.academic-year-form h4{grid-column:1/-1;margin:0;color:#003d32;font-size:1rem}.academic-rollover-card label,.academic-year-form label{display:grid;grid-gap:7px;gap:7px;color:#003d32;font-size:.86rem;font-weight:800}.academic-rollover-card select,.academic-year-form input,.academic-year-form select{width:100%;min-height:42px;border-radius:10px;border:1px solid rgba(0,95,73,.18);background:#fff;color:#10251f;padding:0 12px;font-size:.88rem;font-weight:700}.academic-year-form .dmy-date-field{width:100%}.academic-actions-row button,.academic-primary-button,.academic-row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:10px;min-height:40px;padding:0 14px;font-size:.85rem;font-weight:800;cursor:pointer}.academic-primary-button{grid-column:1/-1;background:#00664f;color:#fff}.academic-actions-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.academic-actions-row button,.academic-row-actions button{background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18)}.academic-actions-row button.danger-soft,.academic-row-actions button:last-child{background:#fff7ed;color:#b45309;border-color:rgba(217,119,6,.22)}.academic-rollover-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:16px}.student-allyears-panel{margin-top:16px;display:grid;grid-gap:10px;gap:10px}.student-allyears-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.student-allyears-head strong{font-size:13px;color:var(--green-800)}.student-allyears-head button{background:#fff;border:1px solid #d8e6df;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;color:#53655f;cursor:pointer}.student-allyears-history-row td{background:#f6faf8;padding:6px 12px}.student-allyears-history-line{font-size:12.5px;color:#3c4f49}.academic-mapping-list{margin-top:14px;display:grid;grid-gap:8px;gap:8px}.academic-mapping-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.academic-mapping-head>span{font-size:12.5px;font-weight:800;color:var(--green-800)}.academic-mapping-head button{background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.academic-mapping-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;grid-gap:8px;gap:8px}.academic-mapping-row select{border:1px solid #d8e6df;border-radius:8px;padding:8px 10px;font-size:12.5px;min-width:0}.academic-mapping-row button{border:1px solid rgba(217,119,6,.22);background:#fff7ed;color:#b45309;border-radius:8px;width:28px;height:28px;cursor:pointer;font-weight:800}.academic-mapping-hint{margin:2px 0 0;font-size:12px;color:#6a7773}.academic-review-card{margin-top:18px;border:1px solid #e4ece8;border-radius:14px;padding:16px;background:#fbfdfc;display:grid;grid-gap:12px;gap:12px}.academic-review-controls{display:inline-flex;gap:8px;align-items:center}.academic-review-controls select{border:1px solid #d8e6df;border-radius:8px;padding:7px 10px;font-size:12.5px}.academic-review-controls button{background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}.academic-review-list{display:grid;grid-gap:8px;gap:8px}.academic-review-row{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(110px,.9fr) minmax(120px,1fr) minmax(120px,1fr) auto;align-items:center;grid-gap:8px;gap:8px;border:1px solid #e4ece8;border-radius:10px;padding:8px 10px;background:#fff}.academic-review-student{display:grid}.academic-review-student strong{font-size:13px}.academic-review-student span{font-size:11.5px;color:#6a7773}.academic-review-row input,.academic-review-row select{border:1px solid #d8e6df;border-radius:8px;padding:7px 9px;font-size:12.5px;min-width:0}.academic-review-row button{background:#ecfdf5;color:#00664f;border:1px solid rgba(0,95,73,.18);border-radius:8px;padding:7px 12px;font-size:12px;font-weight:700;cursor:pointer}@media (max-width:760px){.academic-mapping-row,.academic-review-row{grid-template-columns:1fr}}.cd-panel{display:grid;grid-gap:16px;gap:16px;margin-top:4px}.cd-hero-summary{gap:9px}.cd-toggle{display:inline-flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #cfe3d8;border-radius:12px;background:#fff;color:var(--green-950);font-size:13px;font-weight:800;cursor:pointer}.cd-toggle input{width:17px;height:17px;accent-color:var(--green-800);cursor:pointer}.cd-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.cd-addbar{display:grid;grid-gap:14px;gap:14px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px 18px;box-shadow:0 10px 26px rgba(0,63,47,.05)}.cd-addbar-head{display:grid;grid-gap:3px;gap:3px}.cd-addbar-title{display:inline-flex;align-items:center;gap:8px;color:var(--green-950);font-size:14px;font-weight:850}.cd-addbar-head p{margin:0;color:#60736d;font-size:12.5px}.cd-addbar-fields{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:end}.cd-field{display:grid;grid-gap:6px;gap:6px;min-width:0;color:#102c26;font-size:12px;font-weight:800}.cd-field input,.cd-field select{width:100%;min-width:0;height:42px;border:1px solid #cfded8;border-radius:10px;background:#fff;color:var(--ink);padding:0 12px;font-size:13px;font-weight:600;outline:0}.cd-field input:focus,.cd-field select:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.cd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 14px;border:1px solid #d3e5dc;border-radius:10px;background:#fff;color:var(--green-800);font-size:12.5px;font-weight:750;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease}.cd-btn:hover:not(:disabled){background:#f0faf5;border-color:#b6d8c8}.cd-btn.primary{height:42px;padding:0 18px;background:var(--green-800);border-color:var(--green-800);color:#fff;font-weight:800}.cd-btn.primary:hover:not(:disabled){background:var(--green-900);border-color:var(--green-900)}.cd-btn.subtle{color:#64756f}.cd-btn:disabled{opacity:.55;cursor:not-allowed}.cd-icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid #d3e5dc;border-radius:9px;background:#fff;color:var(--green-800);cursor:pointer;transition:background .15s ease,border-color .15s ease}.cd-icon-btn:hover:not(:disabled){background:#f0faf5;border-color:#b6d8c8}.cd-icon-btn:disabled{opacity:.4;cursor:not-allowed}.cd-icon-btn.danger{color:#c0453a;border-color:#eccfca}.cd-icon-btn.danger:hover:not(:disabled){background:#fdf2f0;border-color:#e5b9b3}.cd-reorder{display:inline-flex;gap:4px}.cd-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;background:#eaf6ef;color:#0a6146;border:1px solid #cfe7db;font-size:11px;font-weight:800}.cd-badge.muted{background:#f1f3f2;color:#6a7a74;border-color:#dfe5e2}.cd-class-list{display:grid;grid-gap:12px;gap:12px}.cd-class-card{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(0,63,47,.045)}.cd-class-card.is-inactive{opacity:.68}.cd-class-head{display:flex;align-items:center;gap:12px;padding:13px 16px;background:linear-gradient(180deg,#f7fcf9,#fff);border-bottom:1px solid #eef4f1}.cd-class-card.collapsed .cd-class-head{border-bottom:0}.cd-chevron{display:inline-grid;place-items:center;width:30px;height:30px;flex:none;border:1px solid #dbeae2;border-radius:8px;background:#fff;color:var(--green-800);cursor:pointer}.cd-class-title{display:grid;grid-gap:5px;gap:5px;flex:1 1;min-width:0}.cd-class-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cd-class-name>svg{color:var(--green-800);flex:none}.cd-class-name strong{font-size:15.5px;color:var(--green-950);font-weight:850;letter-spacing:-.01em}.cd-class-meta{gap:14px;flex-wrap:wrap;font-size:12px;color:#64756f;font-weight:650}.cd-class-meta,.cd-class-meta span{display:inline-flex;align-items:center}.cd-class-meta span{gap:5px}.cd-class-meta svg{color:var(--green-800);opacity:.75}.cd-class-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cd-div-list{display:grid;grid-gap:8px;gap:8px;padding:12px 16px 14px}.cd-div-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e8efeb;border-radius:11px;background:#fbfdfc}.cd-div-row.is-inactive{opacity:.66}.cd-div-info{display:grid;grid-gap:3px;gap:3px;flex:1 1;min-width:0}.cd-div-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cd-div-badge{display:inline-grid;place-items:center;min-width:26px;height:24px;padding:0 8px;border-radius:7px;background:var(--green-100);color:var(--green-800);font-size:13px;font-weight:850}.cd-div-meta{font-size:12px;color:#64756f;font-weight:600}.cd-div-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.cd-div-empty,.cd-empty{margin:0;padding:14px;border:1px dashed #cfe0d8;border-radius:11px;background:#f7fbf9;color:#64756f;font-size:12.5px;text-align:center}.cd-empty{padding:26px 20px}@media (max-width:760px){.cd-addbar-fields,.cd-stats{grid-template-columns:1fr}.cd-btn.primary{width:100%}.cd-class-head{flex-wrap:wrap}.cd-class-actions{width:100%;justify-content:flex-start}.cd-div-row{flex-wrap:wrap}.cd-div-actions{width:100%;justify-content:flex-start}}.academic-rollover-result{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid rgba(0,95,73,.12);color:#42534e;font-size:.88rem}.academic-year-list{margin-top:20px;border-radius:20px;overflow:hidden;border:1px solid rgba(0,95,73,.13);background:#fff}.academic-year-list-head,.academic-year-row{display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(260px,auto);grid-gap:14px;gap:14px;align-items:center;padding:15px 17px}.academic-year-list-head{background:#eef8f4;color:#003d32}.academic-year-row+.academic-year-row{border-top:1px solid rgba(0,95,73,.09)}.academic-year-row>div:first-child{display:grid;grid-gap:4px;gap:4px}.academic-settings-screen .academic-settings-card{margin-top:0}.academic-year-edit-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"summary status" "editor editor" "actions actions";gap:14px 16px;align-items:center}.academic-year-edit-row .academic-year-summary{grid-area:summary}.academic-year-edit-row .academic-status{grid-area:status;justify-self:flex-end}.academic-year-edit-row .academic-year-date-editor{grid-area:editor}.academic-year-edit-row .academic-row-actions{grid-area:actions;justify-content:flex-start}.academic-year-date-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;align-items:flex-end}.academic-inline-date,.academic-year-date-editor label{display:grid;grid-gap:6px;gap:6px;color:#003d32;font-size:.78rem;font-weight:800}.academic-year-date-editor .dmy-date-picker-shell,.academic-year-date-editor input{min-height:42px;border-radius:12px}.academic-year-date-editor input{width:100%;border:1px solid rgba(0,95,73,.18);background:#fff;color:#10251f;padding:0 11px;font-size:.88rem;font-weight:750}.academic-year-date-editor .dmy-date-text-input:disabled,.academic-year-date-editor input:disabled{background:#f8fafc;color:#64748b}.academic-status{display:inline-flex;justify-content:center;min-width:96px;padding:8px 10px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.76rem;font-weight:900}.academic-status.current{background:#dcfce7;color:#047857}.academic-status.draft{background:#eff6ff;color:#2563eb}.academic-status.closed{background:#f8fafc;color:#64748b}.academic-row-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media (max-width:900px){.academic-settings-card{padding:18px;border-radius:20px}.academic-rollover-selects,.academic-settings-grid,.academic-settings-header,.academic-year-date-editor,.academic-year-edit-row,.academic-year-form,.academic-year-list-head,.academic-year-row{grid-template-columns:1fr}.academic-year-edit-row{grid-template-areas:"summary" "status" "editor" "actions"}.academic-year-edit-row .academic-status{justify-self:start}.academic-settings-header{display:grid}.academic-current-pill,.academic-row-actions{justify-content:flex-start}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.next-auth-shell{height:100dvh;padding:clamp(8px,2vh,18px);overflow:hidden}.next-auth-card{width:min(100%,430px);min-height:0;max-height:calc(100dvh - 16px);padding:clamp(14px,2.3vh,26px) clamp(18px,3vw,28px) clamp(12px,2vh,22px);overflow:hidden}.next-auth-logo{width:clamp(150px,25vh,220px);height:auto;display:block;margin:0 auto clamp(4px,1vh,10px);fill:initial;stroke:initial}.next-auth-form{gap:clamp(6px,.9vh,9px);margin-top:clamp(10px,1.8vh,20px)}.next-auth-form label{margin-top:clamp(3px,.8vh,7px)}.next-auth-alert{min-height:0;padding:clamp(9px,1.4vh,12px) 12px}.next-auth-alert p{line-height:1.35}.next-input-shell input{height:clamp(39px,5.2vh,46px)}.next-input-shell.has-password-toggle input{padding-right:50px}.next-password-toggle{width:34px;height:34px;position:absolute;top:50%;right:8px;display:grid;place-items:center;transform:translateY(-50%);border:0;border-radius:9px;background:transparent;color:#43524f;transition:background .15s ease,color .15s ease}.next-password-toggle:focus-visible,.next-password-toggle:hover{background:#eef8f3;color:var(--green-800);outline:0}.next-password-toggle svg{position:static;transform:none;color:currentColor}html[dir=rtl] .next-password-toggle{right:auto;left:8px}html[dir=rtl] .next-input-shell.has-password-toggle input{padding-right:44px;padding-left:50px}.next-primary-button{height:clamp(42px,5.8vh,48px);margin-top:clamp(3px,.8vh,6px)}.next-help-row{padding-top:clamp(8px,1.8vh,18px)}.next-help-actions{gap:12px;margin-top:clamp(6px,1.2vh,12px)}.next-topbar-logo{width:32px;height:32px;object-fit:contain;display:block;fill:initial;stroke:initial}@media (max-height:700px){.next-auth-card{padding:12px 18px}.next-auth-logo{width:clamp(122px,23vh,168px)}.next-auth-form{gap:5px;margin-top:8px}.next-auth-form label{margin-top:2px;font-size:12px}.next-input-shell input{height:38px}.next-primary-button{height:40px}.next-help-row{padding-top:8px}.next-help-actions{margin-top:6px}}@media (max-height:620px){.next-help-actions,.next-help-row{display:none}.next-auth-card{padding:10px 14px}.next-auth-logo{width:clamp(108px,22vh,138px)}.next-auth-alert{grid-template-columns:18px 1fr;gap:8px;padding:7px 9px}.next-auth-alert p{font-size:12px}}@media (max-width:620px){.next-auth-shell{align-items:center;padding:8px}.next-auth-card{width:100%;max-height:calc(100dvh - 16px);padding:12px;border-radius:10px}.next-auth-logo{width:min(178px,60vw)}.next-auth-form{gap:6px;margin-top:10px}.next-auth-form label{margin-top:3px;font-size:12px}.next-input-shell input{height:40px;font-size:12px}.next-auth-options{gap:8px;font-size:12px}.next-help-row{padding-top:8px;font-size:12px}.next-help-actions{gap:8px;margin-top:8px}}.next-auth-brand .language-switcher.compact{min-height:clamp(32px,4.8vh,36px);margin-top:clamp(5px,1.1vh,10px)}@media (max-height:700px){.next-auth-brand .language-switcher.compact{min-height:32px;margin-top:5px}}.next-auth-shell{height:auto;min-height:100dvh;align-items:center;padding:clamp(16px,3vh,30px) 18px;overflow-x:hidden;overflow-y:auto}.next-auth-card{width:min(100%,440px);min-height:min(760px,calc(100dvh - 32px));max-height:none;padding:clamp(22px,3vh,34px) 30px clamp(20px,2.8vh,30px);overflow:visible}.next-auth-logo{width:clamp(58px,8vh,76px);height:clamp(58px,8vh,76px);object-fit:contain;margin:0 auto 8px}.next-auth-brand h1{margin:0;color:var(--green-950);font-size:clamp(38px,5.2vh,48px);font-weight:850;line-height:.98;letter-spacing:-.035em}.next-auth-brand p{margin:9px 0 0;color:#3b504b;font-size:14px;line-height:1.35}.next-auth-brand .language-switcher.compact{margin-top:clamp(16px,2.2vh,22px)}.next-auth-form{margin-top:clamp(18px,2.6vh,28px)}@media (max-height:780px){.next-auth-card{min-height:auto;padding:20px 26px}.next-auth-logo{width:56px;height:56px;margin-bottom:6px}.next-auth-brand h1{font-size:38px}.next-auth-brand p{margin-top:6px;font-size:13px}.next-auth-brand .language-switcher.compact{margin-top:14px}.next-auth-form{margin-top:16px}}@media (max-width:620px){.next-auth-shell{padding:10px}.next-auth-card{min-height:auto;padding:18px 16px}.next-auth-logo{width:52px;height:52px}.next-auth-brand h1{font-size:clamp(32px,9vw,38px)}.next-auth-brand p{font-size:12.5px}}.academic-action-backdrop{position:fixed;inset:0;z-index:240;display:grid;place-items:center;padding:18px;background:rgba(8,24,20,.58);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.academic-action-modal{position:relative;width:min(520px,calc(100vw - 28px));border:1px solid rgba(0,95,73,.14);border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.28);padding:24px}.academic-action-close{position:absolute;top:14px;right:14px;width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce8e2;border-radius:10px;background:#fff;color:#233530;font-size:12px;font-weight:900}.academic-action-eyebrow{display:inline-flex;margin-bottom:10px;color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.academic-action-modal h4{max-width:420px;margin:0;color:var(--green-950);font-size:1.25rem;line-height:1.25}.academic-action-modal p{margin:10px 0 18px;color:#53635e;font-size:.92rem;line-height:1.55}.academic-action-remark{display:grid;grid-gap:8px;gap:8px;color:#173d34;font-size:.85rem;font-weight:850}.academic-action-remark textarea{width:100%;min-height:112px;resize:vertical;border:1px solid rgba(0,95,73,.18);border-radius:14px;background:#fbfefd;color:#10251f;padding:12px;font:inherit;line-height:1.45;outline:0}.academic-action-remark textarea:focus{border-color:#1d8a66;box-shadow:0 0 0 4px rgba(0,112,70,.12)}.academic-action-error{margin-top:12px;border:1px solid rgba(185,28,28,.2);border-radius:12px;background:#fff1f2;color:#b91c1c;padding:10px 12px;font-size:.86rem;font-weight:800}.academic-action-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.academic-action-buttons.center{justify-content:center}.profile-image-notice-modal .academic-action-buttons.center .academic-action-yes{min-width:120px}.academic-action-buttons button{min-width:98px;min-height:40px;border-radius:11px;padding:0 16px;font-weight:850}.academic-action-no{border:1px solid #d8e6df;background:#fff;color:#263a35}.academic-action-yes{border:1px solid #b45309;background:#b45309;color:#fff}.academic-action-buttons button:disabled{cursor:wait;opacity:.72}@media (max-width:520px){.academic-action-modal{padding:20px 16px 16px;border-radius:18px}.academic-action-buttons{flex-direction:column-reverse}.academic-action-buttons button{width:100%}}.role-access-search-form{grid-template-columns:minmax(135px,.85fr) minmax(180px,1.05fr) minmax(145px,.85fr) minmax(145px,.85fr) auto;gap:10px;align-items:flex-end}.role-access-search-form label{min-width:0;gap:6px}.role-access-search-form input,.role-access-search-form select{height:40px;border-radius:8px;padding-inline:10px;font-size:12.5px}.role-access-search-form .student-search-actions{flex-wrap:nowrap;gap:8px;align-items:flex-end;justify-content:flex-end}.role-access-search-form .student-primary-button,.role-access-search-form .student-secondary-button{min-height:40px;padding-inline:14px;white-space:nowrap}.role-access-search-form .student-secondary-button{padding-inline:12px}@media (max-width:1180px){.role-access-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.role-access-search-form .student-search-actions{justify-content:flex-start}}@media (max-width:640px){.role-access-search-form{grid-template-columns:1fr}.role-access-search-form .student-primary-button,.role-access-search-form .student-search-actions,.role-access-search-form .student-secondary-button{width:100%}}.profile-image-editable{position:relative}.school-logo-stack.profile-image-editable{width:-moz-fit-content;width:fit-content;justify-self:center}.profile-image-edit-button{position:absolute;right:4px;bottom:6px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid #fff;background:var(--green-800);color:#fff;cursor:pointer;box-shadow:0 4px 12px rgba(0,63,47,.28);opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease,background .15s ease;z-index:3}.profile-image-editable:focus-within .profile-image-edit-button,.profile-image-editable:hover .profile-image-edit-button,.user-profile-photo-editable:focus-within .profile-image-edit-button,.user-profile-photo-editable:hover .profile-image-edit-button{opacity:1;transform:translateY(0)}.profile-image-edit-button:hover{background:var(--green-950)}.profile-image-edit-button:disabled{opacity:.55;cursor:default}@media (hover:none){.profile-image-edit-button{opacity:1;transform:none}}.user-profile-photo-editable{position:relative;flex:0 0 auto;width:-moz-fit-content;width:fit-content}.user-profile-avatar.profile-photo{width:96px;height:96px;border-radius:20px;overflow:hidden;padding:0}.user-profile-avatar.profile-photo.has-image{background:#fff;border-color:rgba(0,96,72,.2)}.user-profile-avatar.profile-photo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.user-profile-photo-editable.large .user-profile-avatar.profile-photo{width:112px;height:112px;border-radius:22px}.user-image-edit-button{right:6px;bottom:6px}@media (max-width:620px){.user-profile-avatar.profile-photo{width:84px;height:84px}.user-profile-photo-editable.large .user-profile-avatar.profile-photo{width:100px;height:100px}}.fees-command-sentinel{height:1px;margin-bottom:-1px;pointer-events:none}.fees-command-center{align-items:center;background:linear-gradient(135deg,rgba(0,96,73,.1),rgba(32,186,132,.05)),#fff;border:1px solid rgba(0,96,73,.18);border-radius:16px;box-shadow:0 12px 28px rgba(0,63,47,.11);display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) auto;isolation:isolate;margin-bottom:12px;min-height:74px;overflow:hidden;padding:12px 14px;position:-webkit-sticky;position:sticky;top:calc(-1 * var(--panel-pad-top, 0px));z-index:40}.fees-command-center.is-pinned{margin-inline:-24px;padding-inline:24px;border-radius:0 0 16px 16px;box-shadow:0 16px 30px rgba(0,63,47,.16)}.fees-command-kicker{color:var(--green-800);display:inline-flex;font-size:11px;font-weight:900;letter-spacing:.08em;margin-bottom:3px;text-transform:uppercase}.fees-command-center h3{color:var(--green-950);font-size:clamp(17px,1.25vw,21px);letter-spacing:-.025em;line-height:1.15;margin:0}.fees-command-center p{color:#53655f;font-size:12.5px;line-height:1.45;margin:4px 0 0;max-width:760px}.fees-mode-switch{background:rgba(0,96,73,.07);border:1px solid rgba(0,96,73,.1);border-radius:15px;display:inline-flex;gap:6px;padding:6px}.fees-mode-button{align-items:center;background:transparent;border:0;border-radius:12px;color:#49645d;cursor:pointer;display:inline-flex;font-size:13px;font-weight:900;gap:7px;min-height:38px;padding:0 13px;transition:background .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease;white-space:nowrap}.fees-mode-button:focus-visible,.fees-mode-button:hover{background:hsla(0,0%,100%,.72);color:var(--green-900);outline:none;transform:translateY(-1px)}.fees-mode-button.active{background:#fff;box-shadow:0 10px 22px rgba(0,63,47,.11);color:var(--green-950)}.fees-action-board{background:radial-gradient(circle at 12% 0,rgba(0,96,73,.08),transparent 34%),linear-gradient(135deg,hsla(0,0%,100%,.98),rgba(247,252,249,.94));border:1px solid rgba(0,96,73,.12);border-radius:18px;box-shadow:0 18px 38px rgba(0,63,47,.06);display:grid;grid-gap:16px;gap:16px;margin-top:14px;padding:18px}.fees-action-board-head{display:grid;grid-gap:4px;gap:4px;max-width:820px}.fees-action-board-head span{color:var(--green-800);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.fees-action-board-head h3{color:var(--green-950);font-size:clamp(18px,1.35vw,22px);letter-spacing:-.025em;line-height:1.15;margin:0}.fees-action-board-head p{color:#5f716b;font-size:13px;line-height:1.45;margin:0}.fees-action-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.fees-action-card{align-items:flex-start;background:#fff;border:1px solid #dbeee5;border-radius:16px;box-shadow:0 12px 26px rgba(0,63,47,.045);color:var(--green-950);cursor:pointer;display:grid;grid-gap:10px;gap:10px;grid-template-columns:42px minmax(0,1fr);min-height:126px;padding:15px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.fees-action-card:focus-visible,.fees-action-card:hover{border-color:rgba(0,96,73,.36);box-shadow:0 18px 34px rgba(0,96,73,.12);outline:none;transform:translateY(-2px)}.fees-action-icon{align-items:center;background:linear-gradient(135deg,#dff7ec,#f2fbf7);border-radius:13px;color:var(--green-900);display:inline-flex;height:42px;justify-content:center;width:42px}.fees-action-copy{display:grid;grid-gap:4px;gap:4px;min-width:0}.fees-action-copy strong{color:var(--green-950);font-size:14px;line-height:1.2}.fees-action-copy small{color:#64746f;font-size:12px;line-height:1.4}.fees-action-meta{align-self:end;background:#f2faf6;border:1px solid #d9eee4;border-radius:999px;color:#4d665f;font-size:11px;font-weight:900;grid-column:1/-1;justify-self:start;max-width:100%;overflow:hidden;padding:5px 9px;text-overflow:ellipsis;white-space:nowrap}.fees-action-flow{align-items:center;background:rgba(0,96,73,.06);border:1px dashed rgba(0,96,73,.18);border-radius:14px;display:flex;flex-wrap:wrap;gap:9px;padding:10px}.fees-action-flow span{align-items:center;color:#4f675f;display:inline-flex;font-size:12px;font-weight:800;gap:7px}.fees-action-flow strong{align-items:center;background:var(--green-900);border-radius:999px;color:#fff;display:inline-flex;font-size:11px;height:22px;justify-content:center;width:22px}.fees-action-backdrop{z-index:160}.fees-action-modal{display:flex;flex-direction:column;max-height:calc(100vh - 72px);max-width:min(1080px,calc(100vw - 44px));overflow:hidden;width:100%}.fees-action-modal-body{overflow:auto;padding:22px 26px 26px}.fees-action-modal-body>.ops-card{border:0;box-shadow:none;padding:0}.fees-action-modal-body>.ops-card>.ops-card-head{display:none}.fees-action-modal-body .simple-table-wrapper{max-height:min(52vh,460px);overflow:auto}.fees-action-modal-body .ops-doc-actions{align-items:stretch;display:grid;grid-gap:7px;gap:7px;min-width:112px}.fees-modal-form,.fees-modal-list{width:100%;max-width:820px;margin-inline:auto}.fees-structure-details-grid{display:grid;grid-template-columns:1fr 1fr 2fr;grid-gap:12px 14px;gap:12px 14px;align-items:end}.fees-structure-lines-preview{margin-top:2px}.fees-structure-actions{display:inline-flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.fees-structure-delete-backdrop{z-index:1900}.fees-structure-delete-modal{max-width:460px}.fees-structure-delete-text{margin:0;color:var(--green-950);font-size:14px;line-height:1.55}.fees-structure-delete-footer{justify-content:flex-end;gap:10px}.fees-modal-form{display:grid;grid-gap:20px;gap:20px}.fees-form-section{display:grid;grid-gap:12px;gap:12px}.fees-form-section-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px}.fees-form-section-head span{color:var(--green-950);font-size:13px;font-weight:900;letter-spacing:.01em}.fees-form-section-head small{color:#6a7a75;font-size:12px;font-weight:600}.fees-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 14px;gap:12px 14px}.fees-form-grid .fees-field.wide{grid-column:1/-1}.fees-action-modal .fees-line-builder{align-items:end;background:#f7fbf9;border:1px solid #e2efe8;border-radius:14px;gap:10px 12px;grid-template-columns:minmax(150px,1.5fr) minmax(88px,.7fr) minmax(118px,.9fr) minmax(74px,.5fr) auto;padding:14px}.fees-action-modal .fees-line-builder .ops-mini.fees-add-line{grid-column:auto;justify-self:stretch;align-self:end;height:40px;white-space:nowrap}.fees-line-empty{margin:2px 0 0;color:#6a7a75;font-size:12.5px}.fees-effective-row{display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr);grid-gap:12px 16px;gap:12px 16px;align-items:center}.fees-effective-row .fees-helper-note{margin:0}@media (max-width:720px){.fees-effective-row{grid-template-columns:1fr}}.fees-modal-footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid #e9f1ed;padding-top:16px}.fees-modal-footer .ops-primary{min-width:200px}.fees-modal-list{margin-top:22px;padding-top:18px;border-top:1px solid #e9f1ed}@media (max-width:1180px){.fees-action-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.fees-action-modal{max-width:calc(100vw - 28px)}}@media (max-width:720px){.fees-command-center.is-pinned{margin-inline:-10px;padding-inline:10px}.fees-action-board{border-radius:16px;padding:14px}.fees-action-grid{grid-template-columns:1fr}.fees-action-card{min-height:0;padding:13px}.fees-action-flow{align-items:stretch;display:grid}.fees-action-flow span{justify-content:flex-start}.fees-action-modal{max-height:calc(100vh - 28px);max-width:calc(100vw - 16px)}.fees-action-modal .compact-profile-header,.fees-action-modal-body{padding:16px}.fees-action-modal-body .ops-doc-actions{min-width:0}.fees-form-grid,.fees-structure-details-grid{grid-template-columns:1fr}.fees-action-modal .fees-line-builder{grid-template-columns:1fr 1fr}.fees-action-modal .fees-line-builder .fees-field:first-child,.fees-action-modal .fees-line-builder .ops-mini.fees-add-line{grid-column:1/-1}.fees-modal-footer .ops-primary{width:100%;min-width:0}}.fees-collection-desk-grid{grid-template-columns:minmax(360px,.9fr) minmax(480px,1.1fr)}.fees-counter-panel{display:grid;grid-gap:14px;gap:14px}.fees-counter-steps{display:grid;grid-gap:10px;gap:10px}.fees-counter-step{align-items:flex-start;background:linear-gradient(135deg,#f7fcf9,#fff);border:1px solid #dfeee6;border-radius:14px;display:grid;grid-gap:11px;gap:11px;grid-template-columns:34px minmax(0,1fr);padding:12px}.fees-counter-step>span{align-items:center;background:var(--green-900);border-radius:11px;color:#fff;display:inline-flex;font-size:13px;font-weight:900;height:34px;justify-content:center;width:34px}.fees-counter-step strong{color:var(--green-950);display:block;font-size:13px;line-height:1.2}.fees-counter-actions p,.fees-counter-step p{color:#60736d;font-size:12px;line-height:1.45;margin:4px 0 0}.fees-counter-actions{align-items:center;border-top:1px solid #e3eee8;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-top:12px}.fees-counter-actions .ops-primary{box-shadow:0 12px 24px rgba(0,96,73,.14)}.fees-bottom-grid .ops-card:last-child .simple-table-wrapper,.fees-collection-desk-grid .ops-card:last-child .simple-table-wrapper{max-height:430px;overflow:auto}.fees-bottom-grid .ops-card:last-child .ops-doc-actions,.fees-collection-desk-grid .ops-card:last-child .ops-doc-actions{align-items:stretch;display:grid;grid-gap:7px;gap:7px;min-width:110px}.fees-workspace .simple-table-wrapper{border-radius:13px}@media (max-width:1180px){.fees-collection-desk-grid,.fees-command-center{grid-template-columns:1fr}.fees-mode-switch{justify-content:stretch;width:100%}.fees-mode-button{flex:1 1;justify-content:center}}@media (max-width:720px){.fees-command-center{border-radius:16px;min-height:0;padding:12px}.fees-mode-switch{display:grid;grid-template-columns:1fr}.fees-counter-actions,.fees-counter-actions .ops-primary{width:100%}.fees-counter-step{grid-template-columns:30px minmax(0,1fr);padding:10px}.fees-counter-step>span{height:30px;width:30px}.fees-bottom-grid .ops-card:last-child .ops-doc-actions,.fees-collection-desk-grid .ops-card:last-child .ops-doc-actions{min-width:0}}.fees-hero.maintenance{background:radial-gradient(circle at 92% 12%,rgba(16,121,96,.12),transparent 28%),linear-gradient(135deg,rgba(245,252,248,.96),hsla(0,0%,100%,.98))}.fees-hero.maintenance .fees-hero-summary{border-color:rgba(16,121,96,.18);box-shadow:inset 0 0 0 1px rgba(16,121,96,.04)}.pay-workspace{display:grid;grid-gap:18px;gap:18px}.pay-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.pay-stat{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:14px;background:hsla(0,0%,100%,.96);box-shadow:0 14px 34px rgba(0,63,47,.06);padding:16px 18px}.pay-stat,.pay-stat>div{min-width:0}.pay-stat-icon{flex:0 0 auto;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--green-100);color:var(--green-800)}.pay-stat.warn .pay-stat-icon{background:#fff0d9;color:#c56a00}.pay-stat.danger .pay-stat-icon{background:#ffecec;color:#b42318}.pay-stat p{margin:0 0 3px;color:#51615d;font-size:12px;font-weight:800;line-height:1.3}.pay-stat strong{display:block;color:var(--ink);font-size:20px;font-weight:800;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pay-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-gap:18px;gap:18px;align-items:start}.pay-count-chip{min-height:30px;display:inline-flex;align-items:center;border:1px solid #cfe5da;border-radius:999px;background:#f3fbf6;color:var(--green-900);padding:0 12px;font-size:12px;font-weight:800;white-space:nowrap}.pay-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.pay-field{display:grid;grid-gap:6px;gap:6px;min-width:0;align-content:start}.pay-field>span{color:#33463f;font-size:12px;font-weight:800}.pay-field.wide,.pay-fieldset.wide,.pay-form-actions,.pay-form-hint,.pay-summary.wide{grid-column:1/-1}.pay-field input,.pay-field select{width:100%;min-width:0;height:42px;border:1px solid #cfded8;border-radius:10px;background:#fff;color:var(--ink);outline:0;padding:0 12px;font-size:13px;font-weight:650}.pay-field input:focus,.pay-field select:focus{border-color:#6da58c;box-shadow:0 0 0 3px rgba(0,112,70,.12)}.pay-field .dmy-date-field.compact{max-width:none}.pay-field .dmy-date-picker-shell{width:100%;max-width:none}.pay-field .dmy-date-text-input{height:42px;border-color:#cfded8;border-radius:10px;font-weight:650}.pay-fieldset{display:grid;grid-gap:12px;gap:12px;border:1px solid #e3ece7;border-radius:12px;background:#f8fbf9;padding:14px}.pay-fieldset-head strong{display:block;color:var(--green-950);font-size:13px;font-weight:800}.pay-fieldset-head small{display:block;margin-top:2px;color:#60706c;font-size:12px;line-height:1.45}.pay-fieldset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.pay-component-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) auto auto;align-items:center;grid-gap:10px;gap:10px}.pay-direction{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:900;text-transform:uppercase;white-space:nowrap}.pay-direction.earning{background:#e8f8ef;color:#007a4f}.pay-direction.deduction{background:#ffecec;color:#b42318}.pay-icon-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(192,67,45,.28);border-radius:9px;background:#fff6f4;color:#c0432d;cursor:pointer}.pay-icon-btn:hover{background:#fdeae6}.pay-add-row{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border:1px dashed #a9c9ba;border-radius:10px;background:#fff;color:var(--green-800);font-size:13px;font-weight:800;cursor:pointer}.pay-add-row:hover{background:#f3fbf6;border-color:#6da58c}.pay-summary{display:grid;grid-template-columns:1fr 1fr 1.2fr;border:1px solid #d8e9df;border-radius:12px;overflow:hidden}.pay-summary>div{display:grid;grid-gap:2px;gap:2px;background:#fff;-webkit-border-end:1px solid #e6f0ea;border-inline-end:1px solid #e6f0ea;padding:12px 14px;min-width:0}.pay-summary>div:last-child{-webkit-border-end:0;border-inline-end:0}.pay-summary span{color:#60706c;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.pay-summary strong{color:var(--green-950);font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pay-summary .neg strong{color:#b42318}.pay-summary .net{background:linear-gradient(180deg,#007047,#005c3c)}.pay-summary .net span,.pay-summary .net strong{color:#fff}.pay-form-hint{display:flex;align-items:center;gap:6px;margin:0;color:#60706c;font-size:12px;line-height:1.45}.pay-form-actions{display:flex;justify-content:flex-end;margin-top:2px}.pay-table-shell{overflow-x:auto}.pay-table{width:100%;min-width:640px;border-collapse:separate;border-spacing:0;font-size:13px}.pay-table td:first-child,.pay-table th:first-child{position:-webkit-sticky;position:sticky;inset-inline-start:0;z-index:1}.pay-table td:first-child{background:#fff}.pay-table tbody tr:hover td:first-child{background:#fafdfb}.pay-table th{text-align:start;background:#f4f9f6;color:#48605a;border-bottom:1px solid #e3ece7;padding:10px 12px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.pay-table th:first-child{border-start-start-radius:10px;border-end-start-radius:10px}.pay-table th:last-child{border-start-end-radius:10px;border-end-end-radius:10px}.pay-table td{border-bottom:1px solid #eef4f0;padding:12px;color:#3d4b47;font-weight:650;vertical-align:middle}.pay-table tbody tr:last-child td{border-bottom:0}.pay-table tbody tr:hover td{background:#fafdfb}.pay-td-num,.pay-th-num{text-align:end}.pay-amount{color:var(--green-950);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.pay-cell-sub{display:block;margin-top:2px;color:#60736d;font-size:11.5px;font-weight:700;white-space:nowrap}.pay-staff{display:flex;align-items:center;gap:10px;min-width:0}.pay-staff strong{color:var(--ink);font-size:13px;font-weight:800;white-space:nowrap}.pay-avatar{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--green-100);color:var(--green-800);font-size:12px;font-weight:900}.pay-chip-list{display:flex;flex-wrap:wrap;gap:6px}.pay-chip{border:1px solid #d7e6de;border-radius:999px;background:#f6fbf8;color:var(--green-900);padding:3px 9px;font-size:11px;font-weight:800;white-space:nowrap}.pay-chip.deduction{border-color:#f2c9c2;background:#fff5f3;color:#b42318}.pay-muted{color:#8ba39a;font-weight:700}.pay-empty{display:grid;justify-items:center;grid-gap:6px;gap:6px;padding:30px 14px;text-align:center}.pay-empty svg{color:#9db8ae}.pay-empty strong{color:var(--green-950);font-size:14px;font-weight:800}.pay-empty p{margin:0;max-width:380px;color:#60736d;font-size:12.5px;line-height:1.5}.pay-lock-list{list-style:none;display:grid;grid-gap:10px;gap:10px;margin:16px 0 0;padding:0}.pay-lock-list li{display:flex;align-items:center;gap:12px;border:1px solid #edf3f0;border-radius:12px;background:#fbfdfc;padding:10px 12px}.pay-lock-list li>div{flex:1 1;min-width:0}.pay-lock-list li strong{display:block;color:var(--green-950);font-size:13px;font-weight:800}.pay-lock-list li small{display:block;margin-top:2px;color:#60736d;font-size:12px;font-weight:700}.pay-lock-icon{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fff0d9;color:#c56a00}.pay-lock-empty{justify-content:flex-start;gap:8px;border-color:#d9ebe2!important;background:#f4faf6!important;color:#4f6a60;font-size:13px;font-weight:700}.pay-count-chip.warn{border-color:#f3d9a4;background:#fff7e6;color:#9c6200}.pay-exceptions-clear{display:flex;align-items:center;gap:8px;margin:0;border:1px solid #cfe8da;border-radius:12px;background:#f5fbf7;color:#0b5c40;padding:12px 14px;font-size:13px;font-weight:700}.pay-exceptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.pay-exception-group{min-width:0;border:1px solid #f0e4cc;border-radius:12px;background:#fffdf7;padding:12px 14px}.pay-exception-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.pay-exception-head strong{color:#7a5200;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.pay-exception-head span{min-width:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fff0d9;color:#9c6200;padding:2px 8px;font-size:11px;font-weight:900}.pay-exception-group ul{list-style:none;display:grid;grid-gap:6px;gap:6px;margin:0;padding:0}.pay-exception-group li{display:grid;grid-gap:1px;gap:1px;border-bottom:1px solid #f5eeda;padding-bottom:6px}.pay-exception-group li:last-child{border-bottom:0;padding-bottom:0}.pay-exception-group li strong{color:var(--ink);font-size:12.5px;font-weight:800}.pay-exception-group li small{color:#715e37;font-size:11.5px;font-weight:700}.pay-exception-more{color:#9c6200!important;font-size:11.5px;font-weight:800}@media (max-width:1180px){.pay-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.pay-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:720px){.pay-exceptions,.pay-fieldset-grid,.pay-form,.pay-stats{grid-template-columns:minmax(0,1fr)}.pay-summary{grid-template-columns:1fr}.pay-summary>div{-webkit-border-end:0;border-inline-end:0;border-bottom:1px solid #e6f0ea}.pay-summary>div:last-child{border-bottom:0}.pay-component-row{grid-template-columns:minmax(0,1fr) auto auto}.pay-component-row select{grid-column:1/-1}.pay-form-actions .ops-primary{width:100%}}.attendance-report-shell{display:grid;grid-gap:18px;gap:18px}.attendance-report-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px;border:1px solid rgba(0,88,63,.14);border-radius:8px;background:linear-gradient(135deg,rgba(0,88,63,.06),hsla(0,0%,100%,.9) 48%),#fff;box-shadow:0 16px 36px rgba(0,63,47,.08)}.attendance-report-hero span{display:inline-flex;align-items:center;gap:7px;color:var(--green-800);font-size:12px;font-weight:800;text-transform:uppercase}.attendance-report-hero h3{margin:8px 0 4px;color:var(--green-950);font-size:26px;line-height:1.15}.attendance-report-hero p{max-width:720px;margin:0;color:#5e6c67;font-size:14px}.attendance-report-hero button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:6px;background:var(--green-800);color:#fff;padding:0 16px;font-weight:800}.attendance-report-filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:12px;gap:12px;padding:16px;border:1px solid #dfe8e3;border-radius:8px;background:hsla(0,0%,100%,.96)}.attendance-report-field,.attendance-report-filters .dmy-date-field{display:grid;grid-gap:7px;gap:7px}.attendance-report-field span,.attendance-report-filters .dmy-date-field>span{color:#30413d;font-size:12px;font-weight:800}.attendance-report-field input,.attendance-report-field select,.attendance-report-filters input{width:100%;min-height:42px;border:1px solid #cfdcd6;border-radius:6px;background:#fff;color:var(--ink);padding:0 12px;outline:0}.attendance-report-field input:focus,.attendance-report-field select:focus,.attendance-report-filters input:focus{border-color:#6ca68d;box-shadow:0 0 0 3px rgba(0,112,70,.1)}.attendance-report-insights,.attendance-report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.attendance-report-insight,.attendance-report-kpi,.attendance-report-panel{border:1px solid #dfe8e3;border-radius:8px;background:#fff;box-shadow:0 14px 34px rgba(0,63,47,.07)}.attendance-report-insight{min-height:116px;display:grid;grid-template-columns:70px 1fr;grid-gap:14px;gap:14px;padding:16px;border-left:4px solid #4f8f77}.attendance-report-insight.warning{border-left-color:#c9821a}.attendance-report-insight.danger{border-left-color:#c24133}.attendance-report-insight.success{border-left-color:#13895e}.attendance-report-insight>strong{align-self:start;color:var(--green-950);font-size:20px;line-height:1}.attendance-report-insight h4,.attendance-report-insight p{margin:0}.attendance-report-insight h4{color:#17211f;font-size:14px}.attendance-report-insight p{margin-top:6px;color:#60706b;font-size:12px;line-height:1.45}.attendance-report-kpi{display:grid;grid-template-columns:42px 1fr;grid-gap:13px;gap:13px;padding:17px}.attendance-report-kpi>span{width:40px;height:40px;display:grid;place-items:center;border-radius:8px;background:#edf8f2;color:var(--green-800)}.attendance-report-kpi.warning>span{background:#fff6df;color:#a56012}.attendance-report-kpi.danger>span{background:#fff0ee;color:#bb2f23}.attendance-report-kpi p,.attendance-report-kpi small{margin:0;color:#66736f}.attendance-report-kpi strong{display:block;color:#111b19;font-size:26px;line-height:1.1}.attendance-report-kpi small{display:block;margin-top:4px;font-size:12px}.attendance-report-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.attendance-report-panel{min-width:0;padding:18px}.attendance-report-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.attendance-report-panel-head h4{display:flex;align-items:center;gap:8px;margin:0;color:#14211e;font-size:16px}.attendance-report-panel-head span{color:#60706b;font-size:12px;font-weight:800;white-space:nowrap}.attendance-report-bars{display:grid;grid-gap:12px;gap:12px}.attendance-report-bar-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,1.2fr) 54px;align-items:center;grid-gap:12px;gap:12px}.attendance-report-bar-row strong,.attendance-report-matrix strong,.attendance-report-table strong{display:block;color:#17211f;font-size:13px}.attendance-report-bar-row small,.attendance-report-matrix small,.attendance-report-table small{display:block;color:#73817c;font-size:11px}.attendance-report-bar-row b{text-align:right;color:#17211f;font-size:13px}.attendance-report-bar-track,.attendance-report-months div div{height:9px;overflow:hidden;border-radius:999px;background:#e8f0ec}.attendance-report-bar-track span,.attendance-report-months div div span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#087046,#22a36f)}.attendance-report-months{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.attendance-report-months>div{display:grid;grid-gap:7px;gap:7px;padding:13px;border:1px solid #e3ece7;border-radius:8px;background:#fbfdfc}.attendance-report-months small,.attendance-report-months span{color:#64736e;font-size:12px}.attendance-report-months strong{color:var(--green-950);font-size:20px}.attendance-report-daily{min-height:188px;display:grid;grid-template-columns:repeat(14,minmax(18px,1fr));grid-gap:8px;gap:8px;align-items:end}.attendance-report-daily>div{height:168px;display:grid;grid-template-rows:1fr auto;grid-gap:7px;gap:7px;align-items:end}.attendance-report-daily>div>span{display:block;min-height:10px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#0b7b54,#9bd8bb)}.attendance-report-daily small{color:#6a7873;text-align:center;font-size:11px}.attendance-report-matrix-wrap,.attendance-report-table-wrap{overflow:auto;border:1px solid #e3ece7;border-radius:8px}.attendance-report-matrix,.attendance-report-table{width:100%;min-width:620px;border-collapse:collapse}.attendance-report-matrix td,.attendance-report-matrix th,.attendance-report-table td,.attendance-report-table th{border-bottom:1px solid #edf2ef;padding:10px 12px;text-align:left;vertical-align:middle}.attendance-report-matrix th,.attendance-report-table th{background:#f5faf7;color:#50625d;font-size:11px;font-weight:800;text-transform:uppercase}.attendance-report-rate{display:inline-flex;min-width:62px;justify-content:center;border-radius:999px;padding:4px 8px;background:#edf8f2;color:var(--green-800);font-size:12px;font-weight:800}.attendance-report-rate.warning{background:#fff6df;color:#9b5d09}.attendance-report-rate.danger{background:#fff0ee;color:#b42318}.attendance-report-matrix{min-width:1040px}.attendance-report-matrix td:not(:first-child),.attendance-report-matrix th:not(:first-child){min-width:34px;padding:8px 6px;text-align:center}.attendance-report-code{width:25px;height:25px;display:inline-grid;place-items:center;border-radius:6px;background:#f0f4f2;color:#55645f;font-size:10px;font-weight:900}.attendance-report-code.present{background:#e6f7ed;color:#087046}.attendance-report-code.absent{background:#fff0ee;color:#b42318}.attendance-report-code.leave{background:#fff7e8;color:#9b5d09}.attendance-report-code.holiday{background:#ebf1ff;color:#315ba8}.attendance-report-alert,.attendance-report-empty,.attendance-report-loading{min-height:92px;display:flex;align-items:center;justify-content:center;gap:9px;border:1px dashed #cfdcd6;border-radius:8px;background:#fbfdfc;color:#62716c;text-align:center;font-weight:700}.attendance-report-alert{min-height:58px;border-style:solid;border-color:#f1b7af;background:#fff5f3;color:#a83227}.spinning{animation:attendance-report-spin .9s linear infinite}@keyframes attendance-report-spin{to{transform:rotate(1turn)}}@media (max-width:1180px){.attendance-report-filters,.attendance-report-insights,.attendance-report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-report-grid.two{grid-template-columns:1fr}}@media (max-width:720px){.attendance-report-hero{flex-direction:column;padding:18px}.attendance-report-hero h3{font-size:21px}.attendance-report-bar-row,.attendance-report-filters,.attendance-report-insights,.attendance-report-kpis,.attendance-report-months{grid-template-columns:1fr}.attendance-report-bar-row b{text-align:left}}