*{box-sizing:border-box;margin:0;padding:0}body{color:#1e293b;background:#f5f6fa;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.global-loader{z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffb3;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.ant-layout-sider{box-shadow:2px 0 8px #0000000f}@media (width>=768px){.app-shell{height:100vh;overflow:hidden}.app-main{min-width:0;height:100vh}.page-content{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:auto}.page-content>.page{flex:auto;min-height:0}.page-body{flex:auto;min-height:0;overflow:auto}.page-body>.fill-card,.fill-card>.ant-card-body{flex-direction:column;flex:auto;min-height:0;display:flex}.fill-card .fill-tabs{flex:auto;min-height:0}.fill-tabs>.ant-tabs-content-holder{min-height:0;overflow:auto}.page-body>.staff-cols{flex:1 1 0;min-height:0}.staff-col{min-height:0}.staff-col-list{flex:1 1 0;min-height:0;overflow:auto}}@media (width>=861px){.page-body>.subj-layout{flex:1 1 0;grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0}.subj-layout>.subj-classes{align-self:start;max-height:100%}.subj-layout>.subj-panel{flex-direction:column;min-height:0;display:flex}.subj-panel>.ant-card-body{flex-direction:column;flex:auto;min-height:0;display:flex}.subj-panel>.ant-card-body>*{flex-shrink:0}.subj-panel>.ant-card-body>.subj-panel-body{flex:1 1 0;min-height:0;overflow:auto}}.page-body>*{flex-shrink:0}.page-content{padding:24px}.page-filters{background:color-mix(in srgb, var(--brand-accent) 7%, #fff);border:1px solid color-mix(in srgb, var(--brand-accent) 22%, transparent);border-left:4px solid var(--brand-accent);border-radius:14px}.page-filters label>span:first-child{color:var(--brand-text)}.ant-card{border-radius:12px;box-shadow:0 1px 4px #0000000f}.stat-card{border:none;border-radius:12px;box-shadow:0 1px 4px #00000014}.stat-card .ant-statistic-title{color:#64748b;font-size:13px}.stat-card .ant-statistic-content-value{font-size:28px;font-weight:600}.ant-table-thead>tr>th{color:#374151;font-weight:600;background:#f8fafc!important}.login-page{background:linear-gradient(135deg, var(--brand-ink) 0%, var(--brand-accent) 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{border-radius:16px;width:420px;box-shadow:0 20px 60px #0003}.login-logo{text-align:center;margin-bottom:32px}.login-logo h1{color:var(--brand-text);margin-top:12px;font-size:24px;font-weight:700}.login-logo p{color:#64748b;font-size:14px}.app-header{background:#fff;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex;box-shadow:0 1px 4px #0000000f}.header-school-name{color:var(--brand-text);font-size:16px;font-weight:600}@media (width<=768px){.page-content{padding:16px}.login-card{width:90%}}@media (width<=992px){.login-wrapper{min-height:auto;flex-direction:column!important}}:root{--brand-ink:#0e4d64;--brand-text:#0e4d64;--brand-ink-soft:#16627e;--brand-deep:#083545;--brand-accent:#0f7490;--brand-highlight:#22b8cf}@keyframes loginFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes loginRingPulse{0%{opacity:.55;transform:scale(1)}70%{opacity:0;transform:scale(1.35)}to{opacity:0;transform:scale(1.35)}}@keyframes loginBlobFloat{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-16px,20px)scale(1.06)}}.login-container{background:radial-gradient(circle at 15% 15%,#eaf2ff 0%,#f4f8ff 45%,#eef2fb 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-wrapper{width:100%;max-width:1100px;min-height:620px;box-shadow:0 24px 70px color-mix(in srgb, var(--brand-ink) 22%, transparent), 0 4px 16px color-mix(in srgb, var(--brand-ink) 8%, transparent);background:#fff;border-radius:24px;animation:.55s cubic-bezier(.16,1,.3,1) both loginFadeUp;display:flex;overflow:hidden}.login-sidebar{background:linear-gradient(160deg, var(--brand-deep) 0%, var(--brand-ink) 45%, var(--brand-highlight) 100%);color:#fff;justify-content:center;align-items:center;width:40%;padding:60px 44px;display:flex;position:relative;overflow:hidden}.login-blob{filter:blur(50px);pointer-events:none;border-radius:50%;animation:9s ease-in-out infinite loginBlobFloat;position:absolute}.login-blob-1{background:#38bdf859;width:260px;height:260px;top:-80px;right:-60px}.login-blob-2{background:color-mix(in srgb, var(--brand-accent) 45%, transparent);width:220px;height:220px;animation-delay:-3s;bottom:-70px;left:-60px}.login-blob-3{background:#ffffff1f;width:160px;height:160px;animation-delay:-6s;bottom:30%;right:-40px}.login-logo-section{z-index:1;text-align:center;position:relative}.login-logo-circle{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff24;border:1px solid #ffffff47;border-radius:50%;justify-content:center;align-items:center;width:132px;height:132px;margin:0 auto 24px;display:flex;position:relative;box-shadow:0 8px 30px #00000040}.login-logo-circle:after{content:"";border:1.5px solid #ffffff80;border-radius:50%;animation:2.6s ease-out infinite loginRingPulse;position:absolute;inset:0}.login-logo-emoji{font-size:42px}.login-logo-img{object-fit:contain;background:#fff;border-radius:50%;width:112px;height:112px;padding:10px}@media (width<=992px){.login-logo-circle{width:104px;height:104px;margin-bottom:18px}.login-logo-img{width:88px;height:88px;padding:8px}}.login-logo-title{color:#fff;letter-spacing:.03em;text-shadow:0 2px 16px #0003;margin:0;font-weight:800}.login-logo-subtitle{color:#bae6fd;letter-spacing:.01em;margin-top:6px;font-size:16px;display:block}.login-version{letter-spacing:.02em;color:#ffffff80;margin-top:4px;font-size:11px;display:block}.login-feature-pills{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:28px;display:flex}.login-pill{color:#e6edff;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;display:inline-flex}.login-form-section{background:#fff;flex:1;justify-content:center;align-items:center;padding:40px 60px;display:flex}.login-auth-card{border-radius:20px;width:100%;max-width:420px;padding:20px}.login-form-head{text-align:center;margin-bottom:32px}.login-form-icon{background:linear-gradient(135deg, var(--brand-ink), var(--brand-accent));color:#fff;width:52px;height:52px;box-shadow:0 8px 20px color-mix(in srgb, var(--brand-accent) 28%, transparent);border-radius:14px;justify-content:center;align-items:center;margin:0 auto 16px;font-size:24px;display:flex}.login-school-logo{object-fit:contain;background:#fff;border:1px solid #e7ecf3;border-radius:18px;width:88px;height:88px;margin:0 auto 14px;padding:6px;display:block;box-shadow:0 6px 18px #0f172a14}.login-school-title.ant-typography{color:var(--brand-text);overflow-wrap:anywhere;margin:0;line-height:1.25}.login-company{border-top:1px solid #ffffff2e;margin-top:36px;padding-top:20px}.login-company-name.ant-typography{color:#fff;margin-bottom:10px;font-size:13px;font-weight:600;display:block}.login-company .login-support-links a{color:#bae6fd}.login-company .login-support-links a:hover{color:#fff}.login-input{background-color:#f8fafc;border:1px solid #e7ecf3;border-radius:10px;height:52px;transition:border-color .15s,box-shadow .15s}.login-input:hover{border-color:#cbd8ec}.login-input.ant-input-affix-wrapper-focused,.login-input.ant-input-affix-wrapper:focus-within{border-color:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-accent) 12%, transparent)}.login-submit-btn{background:linear-gradient(135deg, var(--brand-ink), var(--brand-accent));height:52px;box-shadow:0 10px 24px color-mix(in srgb, var(--brand-ink) 25%, transparent);border:none;border-radius:10px;font-size:16px;font-weight:600;transition:transform .15s,box-shadow .15s,filter .15s}.login-submit-btn:hover,.login-submit-btn:focus{filter:brightness(1.08);box-shadow:0 14px 28px color-mix(in srgb, var(--brand-ink) 32%, transparent);transform:translateY(-1px)}.login-help{text-align:center;margin-top:20px}.login-register{border-top:1px solid #f1f5f9;margin-top:14px;padding-top:14px}.login-support{text-align:center;border-top:1px solid #f1f5f9;margin-top:18px;padding-top:16px;display:none}.login-support-title.ant-typography{margin-bottom:8px;font-size:12.5px;display:block}.login-support-links{flex-wrap:wrap;justify-content:center;gap:6px 16px;display:flex}.login-support-links a{color:var(--brand-text);white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:inline-flex}.login-support-links a:hover{color:var(--brand-accent)}@media (width<=992px){.login-wrapper{flex-direction:column;min-height:auto}.login-sidebar{width:100%;min-height:260px;padding:44px 30px}.login-form-section{padding:40px 20px}.login-auth-card{padding:10px}.login-feature-pills{margin-top:20px}}@media (width<=600px){.login-container{align-items:flex-start;min-height:100dvh;padding:12px}.login-wrapper{border-radius:18px;margin:auto 0}.login-sidebar{min-height:0;padding:18px 20px}.login-logo-section{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.login-logo-circle{flex-shrink:0;width:52px;height:52px;margin:0}.login-logo-img{width:44px;height:44px;padding:4px}.login-logo-title.ant-typography{font-size:24px;line-height:1.1}.login-logo-subtitle{margin-top:2px;font-size:13px}.login-feature-pills,.login-form-icon,.login-company{display:none}.login-support{display:block}.login-school-logo{border-radius:14px;width:56px;height:56px;margin-bottom:8px;padding:4px}.login-school-title.ant-typography{font-size:19px}.login-form-section{padding:20px 16px 16px}.login-auth-card{padding:0}.login-auth-card .ant-card-body{padding:4px}.login-input,.login-submit-btn{height:48px}.login-form-subtitle{display:none}.login-form-head{margin-bottom:14px}.login-auth-card .ant-form-item{margin-bottom:16px}.login-help{margin-top:12px}.login-register,.login-support{margin-top:10px;padding-top:10px}.login-support-title.ant-typography{margin-bottom:4px}.login-support-links{gap:2px 14px}}@media (prefers-reduced-motion:reduce){.login-wrapper,.login-blob,.login-logo-circle:after{animation:none}}.super-admin-layout{min-height:100vh}.super-admin-sider{z-index:100;width:240px;height:100vh;position:fixed;top:0;bottom:0;left:0;background:var(--brand-ink)!important}.super-admin-logo{background:var(--brand-ink);border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;height:64px;padding:0 24px;display:flex}.super-admin-logo-icon{font-size:26px}.super-admin-logo-text{color:#fff;letter-spacing:.5px;font-size:18px;font-weight:700}.super-admin-menu{margin-top:8px;background:var(--brand-ink)!important;border-right:none!important}.super-admin-header{z-index:99;justify-content:space-between;align-items:center;height:70px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000000f;background:#fff!important;padding:0 32px!important}.super-admin-header-title{color:var(--brand-text);margin:0;font-size:19px;font-weight:600}.super-admin-user{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:4px 8px;transition:all .2s;display:flex}.super-admin-user:hover{background:#f8fafc}.super-admin-avatar{font-weight:600;background:var(--brand-accent)!important}.super-admin-content{background:#f8fafc;min-height:calc(100vh - 70px);margin-left:240px;padding:24px}@media (width<=992px){.super-admin-sider{height:auto;position:relative;width:100%!important}.super-admin-content{margin-left:0!important}.super-admin-header{padding:0 16px!important}}.register-school-container{background:#f8fafc;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.register-school-card{background:#fff;border:1px solid #f1f5f9;border-radius:20px;width:100%;max-width:560px;padding:40px 36px;box-shadow:0 10px 30px #0000000f}.register-school-header{text-align:center;margin-bottom:32px}.register-school-icon{background:#fff;border:1px solid #e2e8f0;border-radius:18px;justify-content:center;align-items:center;width:72px;height:72px;margin:0 auto 16px;padding:8px;display:flex;box-shadow:0 1px 2px #1018280a}.register-school-icon img{object-fit:contain;width:100%;height:100%}.register-school-steps{margin-bottom:32px}.register-school-form .ant-form-item-label>label{color:#374151;font-weight:500}.register-school-form .ant-input,.register-school-form .ant-input-number,.register-school-form .ant-select-selector{background:#f8fafc;border-radius:10px;height:48px}.register-school-form .ant-input:focus,.register-school-form .ant-select-selector:focus{border-color:var(--brand-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-ink) 10%, transparent)}.register-school-form-compact .ant-form-item{margin-bottom:14px}.register-school-form-compact .ant-input,.register-school-form-compact .ant-input-number,.register-school-form-compact .ant-select-selector{height:38px}.register-school-form-compact .ant-input-number .ant-input-number-input{height:36px}.institution-toggle.ant-segmented{background:#f1f5f9;border-radius:10px;padding:4px}.institution-toggle .ant-segmented-item{border-radius:8px;font-weight:500}.institution-toggle .ant-segmented-item-label{height:38px;line-height:38px}.institution-toggle .ant-segmented-item-selected{background:var(--brand-ink);color:#fff;font-weight:600}.institution-toggle .ant-segmented-thumb{background:var(--brand-ink)}.admin-info-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px;display:flex}.register-school-buttons{gap:12px;margin-top:24px;display:flex}.register-school-buttons .ant-btn{border-radius:10px;height:48px;font-weight:600}.register-school-buttons .ant-btn-primary{background:var(--brand-ink);border:none}.register-school-buttons .ant-btn-primary:hover{background:var(--brand-ink-soft)!important}.success-step{text-align:center;padding:20px 0}.success-icon{color:#fff;background:#16a34a;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;font-size:36px;display:flex}.portal-url-box{text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:24px 0;padding:16px;display:flex}.portal-url-text{min-width:0}.portal-url-box .ant-typography{color:var(--brand-text);font-size:15px;font-weight:600}.success-buttons{justify-content:center;gap:12px;margin-top:20px;display:flex}.success-buttons .ant-btn{border-radius:10px;height:48px;padding:0 28px;font-weight:600}@media (width<=576px){.register-school-card{padding:28px 20px}.register-school-buttons{flex-direction:column}}.custom-segmented .ant-segmented-item-selected{font-weight:600;color:#fff!important;background-color:#1e40af!important}.custom-segmented .ant-segmented-thumb{background-color:#1e40af!important}.btn-file{font-weight:500}.btn-file.btn-file-xlsx:not(:disabled){color:#1d7044;background:#ecfdf3;border-color:#abefc6}.btn-file.btn-file-xlsx:not(:disabled):hover{color:#15603a!important;background:#d1fadf!important;border-color:#75e0a7!important}.btn-file.btn-file-pdf:not(:disabled){color:#c0392b;background:#fef3f2;border-color:#fecdca}.btn-file.btn-file-pdf:not(:disabled):hover{color:#a02c20!important;background:#fee4e2!important;border-color:#fda29b!important}.btn-file.btn-file-xlsx:not(:disabled):active{background:#a6f4c5!important}.btn-file.btn-file-pdf:not(:disabled):active{background:#fecdca!important}.ant-btn.ant-btn-variant-solid:disabled{color:#475569!important;box-shadow:none!important;background:#e2e8f0!important;border-color:#e2e8f0!important}.sider-school{text-decoration:none;transition:background .15s}.sider-school:hover{background:#ffffff0f}.sider-school:focus-visible{outline-offset:-2px;outline:2px solid #f37a04}.sider-menu{scrollbar-width:none}.sider-menu::-webkit-scrollbar{display:none}.row-unmarked>td{background:#fffbeb!important}.ant-btn.btn-approve:not(:disabled){color:#166534;height:26px;box-shadow:none;background:#f0fdf4;border-color:#bbf7d0;border-radius:999px;padding:0 12px;font-size:12.5px;font-weight:600}.ant-btn.btn-approve:not(:disabled):hover{color:#fff!important;background:#16a34a!important;border-color:#16a34a!important}.ant-btn.btn-approve:not(:disabled):active{background:#15803d!important;border-color:#15803d!important}.student-doc-row{background:#f8fafc;border:1px solid #eef2f7;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.ant-select-item-option.doc-type-add-option{border-top:1px dashed color-mix(in srgb, var(--brand-accent) 45%, transparent);background:color-mix(in srgb, var(--brand-accent) 8%, #fff);color:var(--brand-accent);border-radius:0 0 6px 6px;margin-top:4px;font-weight:500}.ant-select-item-option.doc-type-add-option.ant-select-item-option-active{background:color-mix(in srgb, var(--brand-accent) 16%, #fff)}.doc-type-add-option .anticon{margin-right:4px}.ant-table-expanded-row>.ant-table-cell:has(>.fee-payments){background:color-mix(in srgb, var(--brand-accent) 5%, #f8fafc)!important;padding:10px 16px 14px 48px!important}.fee-payments{border-left:3px solid var(--brand-accent);background:#fff;border-radius:0 10px 10px 0;overflow:hidden;box-shadow:0 1px 3px #0f172a14}.fee-payments-title{letter-spacing:.04em;text-transform:uppercase;color:var(--brand-accent);background:color-mix(in srgb, var(--brand-accent) 9%, #fff);align-items:center;gap:8px;padding:8px 14px;font-size:11.5px;font-weight:700;display:flex}.fee-payments-count{background:var(--brand-accent);color:#fff;text-align:center;border-radius:10px;min-width:20px;padding:0 6px;font-size:11px;line-height:18px}.fee-payments-table .ant-table-thead>tr>th{color:#94a3b8;font-size:11.5px;font-weight:600;background:#fff!important;padding-top:6px!important;padding-bottom:6px!important}.fee-payments-table .ant-table-tbody>tr:last-child>td{border-bottom:none}.fee-payments-table .ant-table-thead>tr>th:before{display:none}.ant-btn.btn-soft:not(:disabled){background:color-mix(in srgb, var(--brand-accent) 10%, #fff);border-color:color-mix(in srgb, var(--brand-accent) 55%, transparent);color:var(--brand-accent);font-weight:600}.ant-btn.btn-soft:not(:disabled):hover{background:color-mix(in srgb, var(--brand-accent) 16%, #fff);border-color:var(--brand-accent);color:var(--brand-accent)}.pl-statement{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto}.pl-statement table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;min-width:640px}.pl-statement th,.pl-statement td{text-align:right;white-space:nowrap;color:var(--brand-text);padding:8px 16px}.pl-statement th:first-child,.pl-statement td:first-child{text-align:left;white-space:normal}.pl-statement thead th{color:#475569;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:12.5px;font-weight:600}.pl-statement .pl-sub{color:#94a3b8;font-size:11px;font-weight:400}.pl-statement .pl-group td{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;padding-top:14px;font-size:11px;font-weight:700}.pl-statement .pl-head td{font-weight:600}.pl-statement .pl-line td:first-child{color:#334155;padding-left:34px}.pl-statement .pl-line td{font-size:13.5px}.pl-statement .pl-empty,.pl-statement .pl-dash{font-style:normal;color:#94a3b8!important}.pl-statement .pl-subtotal td{border-top:1px solid #e2e8f0;font-weight:600}.pl-statement .pl-total td{background:#f8fafc;border-top:1px solid #cbd5e1;border-bottom:1px solid #cbd5e1;font-weight:700}.pl-statement .pl-net td{border-top:2px solid;font-size:15px;font-weight:800}.pl-statement .pl-net-up td{background:#f0fdf4}.pl-statement .pl-net-down td{background:#fef2f2}.row-future td{background:#fafbfc!important}.idcard-themes{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:12px;display:grid}.idcard-theme{cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:8px;padding:10px 8px 8px;transition:border-color .15s,box-shadow .15s;display:flex}.idcard-theme:hover{border-color:#cbd5e1}.idcard-theme-on{border-color:var(--brand-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-accent) 18%, transparent)}.idcard-theme-label{color:var(--brand-text);font-size:12.5px;font-weight:600}.idcard-theme-on .idcard-theme-label .anticon{color:var(--brand-accent)}.idcard-mini{background:#fff;border-radius:6px;flex-direction:column;width:62px;height:98px;display:flex;overflow:hidden;box-shadow:0 1px 4px #0f172a2e}.idcard-mini-photo{background:#e2e8f0;border:1.5px solid;border-radius:3px;width:20px;height:25px;margin:7px auto 6px;display:block}.idcard-mini-line{background:#cbd5e1;border-radius:2px;height:3px;margin:0 0 4px 8px;display:block}.signed-in-dot{vertical-align:1px;background:#16a34a;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}.timetable-grid{grid-template-columns:minmax(160px,1.4fr) minmax(140px,1fr) minmax(220px,1.4fr) 32px;align-items:center;gap:8px;display:grid}.timetable-head{color:#64748b;font-size:12px;font-weight:600}@media (width<=700px){.timetable-grid{grid-template-columns:1fr 1fr}}.admit-choices{border-bottom:1px solid #f1f5f9;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-bottom:16px;padding-bottom:16px;display:grid}.admit-choices label{flex-direction:column;gap:4px;display:flex}.subj-layout{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=860px){.subj-layout{grid-template-columns:1fr}}.subj-classes{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;max-height:calc(100vh - 260px);padding:10px;display:flex;overflow-y:auto}.subj-classes-head{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-text);background:color-mix(in srgb, var(--brand-accent) 9%, #fff);border-bottom:1px solid color-mix(in srgb, var(--brand-accent) 22%, transparent);z-index:1;border-radius:12px 12px 0 0;margin:-10px -10px 6px;padding:10px 16px;font-size:11px;font-weight:700;position:sticky;top:-10px}.subj-class{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px 12px;display:flex}.subj-class:hover{background:#f8fafc}.subj-class-on,.subj-class-on:hover{background:var(--brand-ink);border-color:var(--brand-ink);box-shadow:0 1px 3px #0f172a2e}.subj-class-on .subj-class-name{color:#fff}.subj-class-on .subj-class-count{color:#bbf7d0}.subj-class-on .subj-class-none{color:#fde68a}.subj-class-name{color:var(--brand-text);font-weight:600}.subj-class-count{color:#15803d;font-size:12px}.subj-class-none{color:#b45309;font-size:12px}.subj-panel-head{background:color-mix(in srgb, var(--brand-accent) 7%, #fff);border-bottom:1px solid color-mix(in srgb, var(--brand-accent) 22%, transparent);border-left:4px solid var(--brand-accent);border-radius:12px 12px 0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.subj-row{--subj:#2563eb;border:1px solid #e2e8f0;border-left:4px solid var(--subj);background:linear-gradient(90deg, color-mix(in srgb, var(--subj) 5%, #fff), #fff 38%);border-radius:12px;padding:12px 14px}.subj-row:nth-child(6n+2){--subj:#0d9488}.subj-row:nth-child(6n+3){--subj:#7c3aed}.subj-row:nth-child(6n+4){--subj:#d97706}.subj-row:nth-child(6n+5){--subj:#db2777}.subj-row:nth-child(6n+6){--subj:#16a34a}.subj-split{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.subj-part{color:#334155;background:#e2e8f0;border-radius:20px;padding:2px 10px;font-size:12.5px}.subj-part[data-part=theory]{color:#1d4ed8;background:#dbeafe}.subj-part[data-part=internal]{color:#b45309;background:#fef3c7}.subj-part[data-part=practical]{color:#047857;background:#d1fae5}.subj-part[data-part=viva],.subj-part[data-part=project]{color:#6d28d9;background:#ede9fe}.subj-total{color:#475569;font-size:12.5px}.subj-total b{color:var(--brand-text);font-size:13.5px}.subj-pass{color:#15803d;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:20px;padding:1px 9px;font-size:12px;font-weight:600}.ant-tag.subj-tag-noteacher{color:#b45309;background:#fef3c7;border:none;border-radius:20px;margin:0}.ant-tag.subj-tag-optional{color:#6d28d9;background:#ede9fe;border:none;border-radius:20px;margin:0}.ant-tag.subj-tag-new{background:color-mix(in srgb, var(--brand-accent) 12%, #fff);color:var(--brand-accent);border:none;border-radius:20px;margin-left:4px}.subj-empty{text-align:center;border:1px dashed #cbd5e1;border-radius:12px;padding:28px 16px}.subj-picks{border:1px solid #e2e8f0;border-radius:10px;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px 12px;max-height:220px;padding:12px;display:grid;overflow-y:auto}.subj-copy-list{margin:8px 0 0;padding-left:18px}.subj-copy-list span{color:#64748b;font-size:12.5px}.subj-list-row{border:1px solid #f1f5f9;border-radius:10px;align-items:center;gap:4px;padding:8px 10px;display:flex}.marks-presets{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.marks-preset{color:#475569;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:999px;align-items:center;gap:4px;padding:5px 14px;font-size:13px;transition:border-color .15s,background .15s,color .15s;display:inline-flex}.marks-preset:hover{border-color:var(--brand-accent);color:var(--brand-accent)}.marks-preset b{color:inherit}.marks-preset-on,.marks-preset-on:hover{border-color:var(--brand-ink);background:var(--brand-ink);color:#fff;box-shadow:0 2px 6px color-mix(in srgb, var(--brand-ink) 30%, transparent)}.marks-preset-on:before{content:"✓";margin-right:4px;font-weight:700}.marks-preset-plus{opacity:.6;margin:0 5px}.marks-preset-custom{cursor:default;font-weight:600}.ct-head{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.ct-list{flex-direction:column;display:flex}.ct-row{border-bottom:1px solid #f1f5f9;grid-template-columns:minmax(0,1.2fr) minmax(220px,1fr) 120px;align-items:center;gap:14px;padding:12px 18px;display:grid}.ct-row:last-child{border-bottom:none}.ct-row-open{background:#fffbeb;box-shadow:inset 3px 0 #f59e0b}@media (width<=760px){.ct-row{grid-template-columns:1fr;gap:8px}}.ct-class{flex-direction:column;gap:2px;min-width:0;display:flex}.ct-status{font-size:12px}.ct-status-ok{color:#15803d}.ct-status-open{color:#b45309;font-weight:600}.ct-cover{background:color-mix(in srgb, var(--brand-accent) 10%, #fff);width:fit-content;color:var(--brand-accent);border-radius:999px;align-items:center;gap:4px;margin-top:4px;padding:0 0 0 8px;font-size:12px;display:inline-flex}.ct-actions{justify-content:flex-end;display:flex}.ant-segmented .ant-segmented-item.ct-needs{color:#b91c1c;font-weight:600}.ant-segmented .ant-segmented-item.ct-needs.ant-segmented-item-selected{color:#fff;background:#dc2626}.ant-segmented .ant-segmented-item.ct-needs:hover:not(.ant-segmented-item-selected){color:#991b1b;background:#fee2e2}.btn-call{color:#14532d;background:#f0fdf4;border:1px solid #86efac;border-radius:999px;align-items:center;gap:10px;padding:6px 16px 6px 6px;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.btn-call:hover{color:#14532d;background:#dcfce7;border-color:#22c55e;box-shadow:0 2px 8px #16a34a2e}.btn-call-icon{color:#fff;background:#16a34a;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;display:inline-flex}.btn-call-text{flex-direction:column;line-height:1.15;display:flex}.btn-call-label{letter-spacing:.02em;color:#15803d;font-size:11px;font-weight:600}.btn-call-number{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.ant-btn.btn-back:not(:disabled){background:color-mix(in srgb, var(--brand-accent) 12%, #fff);border-color:color-mix(in srgb, var(--brand-accent) 55%, transparent);color:var(--brand-accent);font-weight:600}.ant-btn.btn-back:not(:disabled):hover{background:color-mix(in srgb, var(--brand-accent) 20%, #fff);border-color:var(--brand-accent);color:var(--brand-accent)}.admit-mini{background:#fff;border-radius:5px;flex-direction:column;width:118px;height:80px;display:flex;overflow:hidden;box-shadow:0 1px 4px #0f172a2e}.admit-mini-line{background:#cbd5e1;border-radius:2px;height:3px;display:block}.admit-mini-photo{background:#e2e8f0;border:1.5px solid;border-radius:2px;flex-shrink:0;width:16px;height:20px;display:block}.idcard-themes.idcard-themes-wide{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.choice-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.choice-card{--tone:var(--brand-accent);text-align:left;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.choice-card:hover{border-color:color-mix(in srgb, var(--tone) 55%, transparent);background:color-mix(in srgb, var(--tone) 4%, #fff)}.choice-card-on,.choice-card-on:hover{border-color:var(--tone);background:color-mix(in srgb, var(--tone) 10%, #fff);box-shadow:0 0 0 3px color-mix(in srgb, var(--tone) 16%, transparent)}.choice-card-icon{background:color-mix(in srgb, var(--tone) 14%, #fff);width:36px;height:36px;color:var(--tone);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.choice-card-on .choice-card-icon{background:var(--tone);color:#fff}.choice-card-text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.choice-card-title{color:var(--brand-text);font-weight:600}.choice-card-on .choice-card-title{color:color-mix(in srgb, var(--tone) 80%, #000)}.choice-card-note{color:#64748b;font-size:12px}.choice-card-tick{color:var(--tone);font-size:14px;position:absolute;top:8px;right:8px}.two-cards{grid-template-columns:minmax(0,11fr) minmax(0,13fr);align-items:start;gap:14px;display:grid}@media (width<=767px){.two-cards{grid-template-columns:minmax(0,1fr)}}.settings-top{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr) minmax(0,.8fr);align-items:stretch;gap:14px;display:grid}.settings-top-two{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}@media (width<=1199px){.settings-top,.settings-top-two{grid-template-columns:minmax(0,1fr)}}.staff-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.staff-cols-one{grid-template-columns:minmax(0,1fr)}.staff-col{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.staff-col-head{background:color-mix(in srgb, var(--brand-accent) 7%, #fff);border-bottom:1px solid color-mix(in srgb, var(--brand-accent) 22%, transparent);flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;display:flex}.staff-col-count{background:var(--brand-accent);color:#fff;border-radius:20px;padding:1px 9px;font-size:12px;font-weight:700}.staff-col-list{flex-direction:column;gap:8px;padding:12px;display:flex}.staff-col-list>*{flex-shrink:0}.staff-admin-strip{flex-direction:row;align-items:stretch}.staff-admin-strip>.staff-col-head{border-bottom:none;border-right:1px solid color-mix(in srgb, var(--brand-accent) 22%, transparent)}.staff-admins{flex:auto;grid-template-columns:repeat(auto-fill,minmax(min(100%,560px),1fr));gap:8px;min-width:0;padding:8px;display:grid}@media (width<=767px){.staff-admin-strip{flex-direction:column}}@media (width<=991px){.staff-cols{grid-template-columns:minmax(0,1fr)}}
