@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Quicksand:wght@400;700&display=swap";.app-footer{z-index:2;border-top:calc(.05vw * var(--scale)) solid var(--border-light);background:var(--teacher-page-bg);width:100%;margin-top:auto;position:relative;overflow:hidden}.app-footer__inner{z-index:1;text-align:center;padding:calc(1.67vw * var(--scale)) calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale));position:relative}.app-footer__tagline{margin:0 0 calc(.31vw * var(--scale));font-family:Quicksand,Inter,sans-serif;font-size:calc(.94vw * var(--scale));color:#3f484c;font-weight:700}.app-footer__credit,.app-footer__rights{margin:0 0 calc(.21vw * var(--scale));font-family:Quicksand,Inter,sans-serif;font-size:calc(.63vw * var(--scale));color:#3f484c;letter-spacing:.12em;text-transform:uppercase;opacity:.6;font-weight:400}.app-footer__rights{margin-bottom:calc(.83vw * var(--scale))}.app-footer__credit a{color:inherit;text-underline-offset:2px;font-weight:700;text-decoration:underline}.app-footer__credit a:hover{opacity:.7}.app-footer__links{justify-content:center;align-items:center;gap:calc(1.04vw * var(--scale));flex-wrap:wrap;display:flex}.app-footer__links a{font-family:Quicksand,Inter,sans-serif;font-size:calc(.83vw * var(--scale));color:#3f484c;font-weight:700;text-decoration:none}.app-footer__links a:hover{text-decoration:underline}@media (width<=768px){.app-footer__tagline,.app-footer__links a{font-size:max(calc(.94vw * var(--scale)), 13px)}.app-footer__credit,.app-footer__rights{font-size:max(calc(.63vw * var(--scale)), 10px)}}.app-header{height:var(--header-height);min-height:56px;padding:0 calc(1.67vw * var(--scale));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:calc(.05vw * var(--scale)) solid var(--border-light);box-shadow:0 calc(.1vw * var(--scale)) calc(.21vw * var(--scale)) #00000008;background:#fffc;flex-shrink:0;align-items:center;display:flex}.app-header__title{font-size:calc(1.04vw * var(--scale));color:var(--teacher-primary);margin:0;font-weight:700;line-height:1.4}.app-header__actions{align-items:center;gap:12px;margin-left:auto;display:flex}@media (width<=768px){.app-header__title{font-size:max(calc(1.04vw * var(--scale)), 16px)}}.sidebar{z-index:10;width:var(--sidebar-width);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:calc(.05vw * var(--scale)) solid var(--border-light);height:100vh;box-shadow:calc(.1vw * var(--scale)) 0 calc(.42vw * var(--scale)) #0000000a;background:#fffc;flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar__brand{align-items:center;gap:calc(.52vw * var(--scale));padding:calc(.73vw * var(--scale)) calc(.83vw * var(--scale));min-height:calc(3.75vw * var(--scale));display:flex;overflow:hidden}.sidebar__logo{width:clamp(26px, calc(2.71vw * var(--scale)), 52px);height:clamp(26px, calc(2.71vw * var(--scale)), 52px);object-fit:contain;flex-shrink:0}.sidebar__brand-copy{flex-direction:column;min-width:0;display:flex}.sidebar__brand-title{font-size:clamp(14px, calc(.94vw * var(--scale)), 18px);color:var(--teacher-primary);letter-spacing:-.03em;white-space:nowrap;text-overflow:ellipsis;font-weight:700;line-height:1.2;overflow:hidden}.sidebar__brand-subtitle{font-size:clamp(10px, calc(.55vw * var(--scale)), 11px);color:var(--teacher-muted);letter-spacing:.05em;white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1.33;overflow:hidden}.sidebar__nav{gap:calc(.31vw * var(--scale));padding:calc(.63vw * var(--scale)) calc(.83vw * var(--scale)) 0;flex-direction:column;flex:1;min-width:0;display:flex;overflow-y:auto}.sidebar__link{align-items:center;gap:calc(.63vw * var(--scale));padding:calc(.63vw * var(--scale)) calc(.73vw * var(--scale));border-radius:calc(.63vw * var(--scale));font-size:calc(.9vw * var(--scale));color:var(--teacher-muted);min-width:0;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar__link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar__link:hover{color:var(--teacher-text);background:#f3f4f6}.sidebar__link--active{background:var(--teacher-primary-soft);color:var(--teacher-primary);border-right:calc(.21vw * var(--scale)) solid var(--teacher-primary);padding-right:calc(.52vw * var(--scale));border-radius:0;font-weight:700}.sidebar__link-icon{font-size:calc(.9vw * var(--scale));flex-shrink:0}.sidebar__footer{padding:calc(.83vw * var(--scale)) calc(.83vw * var(--scale));border-top:calc(.05vw * var(--scale)) solid var(--border-light);gap:calc(.31vw * var(--scale));flex-direction:column;min-width:0;display:flex}.sidebar__footer-link{align-items:center;gap:calc(.52vw * var(--scale));width:100%;padding:calc(.52vw * var(--scale)) calc(.63vw * var(--scale));border-radius:calc(.52vw * var(--scale));font-family:inherit;font-size:calc(.9vw * var(--scale));color:var(--teacher-muted);cursor:pointer;background:0 0;border:none;min-width:0;font-weight:600;text-decoration:none;transition:background .15s;display:flex}.sidebar__footer-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sidebar__footer-link:hover{color:var(--teacher-text);background:#f3f4f6}@media (width<=768px){.sidebar__link,.sidebar__footer-link{font-size:max(calc(.9vw * var(--scale)), 13px)}.sidebar__brand-title{font-size:max(calc(.94vw * var(--scale)), 15px)}}.teacher-layout{background:var(--teacher-page-bg);min-height:100vh;font-family:Inter,system-ui,sans-serif;display:flex;overflow-x:hidden}.teacher-layout__main{margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));flex-direction:column;min-width:0;min-height:100vh;display:flex}.teacher-layout__content{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow-x:auto}.teacher-layout__page{box-sizing:border-box;flex:1;width:100%;min-width:0;max-width:100%}.teacher-layout__page>[class$=-page]{padding:clamp(16px, calc(1.25vw * var(--scale)), 24px) clamp(20px, calc(1.67vw * var(--scale)), 32px) 16px!important}.teacher-layout__page .ant-table-thead>tr>th,.teacher-layout__page .ant-table-tbody>tr>td{padding-top:clamp(8px, calc(.58vw * var(--scale)), 11px)!important;padding-bottom:clamp(8px, calc(.58vw * var(--scale)), 11px)!important}.teacher-layout__content>*{box-sizing:border-box;max-width:100%}@media (width<=768px){.teacher-layout__main{width:100%;margin-left:0}.sidebar{transform:translate(-100%)}}.certification-page{padding:calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;position:relative}.certification-page__header{margin-bottom:calc(1.67vw * var(--scale))}.certification-page__title.ant-typography{letter-spacing:-.02em;margin:0 0 calc(.21vw * var(--scale))!important;font-size:calc(1.88vw * var(--scale))!important;color:var(--teacher-primary)!important;font-weight:700!important;line-height:1.22!important}.certification-page__subtitle{max-width:calc(31.25vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--teacher-muted);line-height:1.5;display:block}.certification-page__overall-card{min-width:calc(18.44vw * var(--scale));border-color:var(--teacher-border-light)!important;border-radius:var(--card-radius)!important;background:#f3f4f5!important}.certification-page__overall-card .ant-card-body{padding:calc(.89vw * var(--scale)) calc(1.3vw * var(--scale))!important}.certification-page__overall-copy{flex-shrink:0}.certification-page__overall-label{font-size:calc(.63vw * var(--scale));letter-spacing:.06em;line-height:1.33;display:block}.certification-page__overall-value.ant-typography{font-size:calc(1.04vw * var(--scale))!important;color:var(--teacher-primary)!important;margin:0!important;font-weight:700!important;line-height:1.4!important}.certification-page__overall-bar{min-width:calc(11.72vw * var(--scale));flex:1;margin:0}.certification-page__modules.ant-collapse{gap:calc(.83vw * var(--scale));background:0 0;border:none;flex-direction:column;display:flex}.certification-page__modules .ant-collapse-item{background:var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);overflow:hidden;border:calc(.05vw * var(--scale)) solid var(--teacher-border-light)!important;border-radius:var(--card-radius)!important}.certification-page__modules .ant-collapse-item-active>.ant-collapse-header{border-bottom:calc(.05vw * var(--scale)) solid var(--teacher-border-light);background:#004ac60d}.certification-page__modules .ant-collapse-header{padding:calc(1.25vw * var(--scale))!important;align-items:center!important}.certification-page__modules .ant-collapse-content-box{padding:calc(1.25vw * var(--scale))!important}.certification-page__module-label{width:100%;padding-right:calc(1.25vw * var(--scale))}.certification-page__module-main{flex:1;min-width:0}.certification-page__module-icon{width:calc(2.5vw * var(--scale));height:calc(2.5vw * var(--scale));border-radius:var(--card-radius);background:var(--teacher-primary);color:#fff;min-width:40px;min-height:40px;font-size:calc(.83vw * var(--scale));box-shadow:0 calc(.21vw * var(--scale)) calc(.31vw * var(--scale)) #0000001a;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.certification-page__module-copy{min-width:0}.certification-page__module-title.ant-typography{margin:0 0 calc(.21vw * var(--scale))!important;font-size:calc(1.04vw * var(--scale))!important;color:var(--teacher-text)!important;font-weight:600!important;line-height:1.4!important}.certification-page__video-pill{padding:calc(.1vw * var(--scale)) calc(.63vw * var(--scale));letter-spacing:.06em;border:none;border-radius:9999px;margin:0;font-weight:700;line-height:1.33;font-size:calc(.63vw * var(--scale))!important;color:var(--teacher-primary)!important;background:#004ac61a!important}.certification-page__meta-duration{font-size:calc(.63vw * var(--scale));letter-spacing:.06em}.certification-page__module-aside{flex-shrink:0}.certification-page__module-progress{align-items:flex-end;gap:calc(.21vw * var(--scale));flex-direction:column;display:flex}.certification-page__module-progress-label{font-size:calc(.63vw * var(--scale));letter-spacing:.06em}.certification-page__module-progress-bar{width:calc(10vw * var(--scale));min-width:120px;margin:0}.certification-page__module-progress-value{font-size:calc(.63vw * var(--scale));letter-spacing:.06em;font-weight:700;color:var(--teacher-success)!important}.certification-page__lesson{height:100%;box-shadow:0 calc(.05vw * var(--scale)) calc(.05vw * var(--scale)) #0000000d;border-color:var(--teacher-border-light)!important;border-radius:var(--card-radius)!important}.certification-page__lesson .ant-card-body{min-height:calc(9.38vw * var(--scale));flex-direction:column;display:flex;padding:calc(.83vw * var(--scale))!important}.certification-page__lesson--inactive{opacity:.9}.certification-page__lesson-title.ant-typography{min-height:calc(2.5vw * var(--scale));margin:0 0 calc(.63vw * var(--scale))!important;font-size:calc(.83vw * var(--scale))!important;color:var(--teacher-text)!important;font-weight:700!important;line-height:1.25!important}.certification-page__lesson--inactive .certification-page__lesson-title.ant-typography{color:var(--teacher-muted)!important}.certification-page__lesson-progress-head{margin-bottom:calc(.42vw * var(--scale));font-size:calc(.63vw * var(--scale));letter-spacing:.06em}.certification-page__lesson-progress{margin-bottom:calc(.83vw * var(--scale))}.certification-page__lesson-btn{letter-spacing:.06em;margin-top:auto;height:auto!important;padding:calc(.42vw * var(--scale)) calc(.63vw * var(--scale))!important;font-size:calc(.63vw * var(--scale))!important;font-weight:700!important}.certification-page__lesson-btn--continue{background:var(--teacher-primary)!important;border-color:var(--teacher-primary)!important}.certification-page__lesson-btn--start{color:#737686!important;border-color:var(--teacher-border)!important;background:var(--teacher-card-bg)!important}@media (width<=1100px){.certification-page__header{flex-direction:column;align-items:flex-start!important}.certification-page__overall-card{width:100%;min-width:0}.certification-page__module-label{flex-direction:column;align-items:flex-start!important}.certification-page__module-progress{align-items:flex-start}}@media (width<=768px){.certification-page__title.ant-typography{font-size:max(calc(1.88vw * var(--scale)), 26px)!important}.certification-page__subtitle{font-size:max(calc(.83vw * var(--scale)), 14px);max-width:none}.certification-page__overall-value.ant-typography{font-size:max(calc(1.04vw * var(--scale)), 18px)!important}.certification-page__module-title.ant-typography{font-size:max(calc(1.04vw * var(--scale)), 16px)!important}.certification-page__lesson-title.ant-typography,.certification-page__lesson-btn{font-size:max(calc(.83vw * var(--scale)), 14px)!important}}.dashboard-page{padding:calc(1.77vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;max-width:100%;margin:0 auto;position:relative}.dashboard-page--loading{justify-content:center;align-items:center;min-height:320px;display:flex}.dashboard-page__welcome{justify-content:space-between;align-items:flex-end;gap:calc(1.25vw * var(--scale));margin-bottom:calc(1.67vw * var(--scale));display:flex}.dashboard-page__welcome-copy{flex:1;min-width:0}.dashboard-page__welcome-title{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.88vw * var(--scale));color:var(--teacher-primary);letter-spacing:-.02em;font-weight:700;line-height:1.22}.dashboard-page__welcome-title span{white-space:nowrap}.dashboard-page__welcome-subtitle{max-width:calc(35.94vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--teacher-muted);margin:0;line-height:1.5}.dashboard-page__date{align-items:center;gap:calc(.63vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--teacher-muted);white-space:nowrap;flex-shrink:0;display:flex}.dashboard-page__date-controls{flex-shrink:0;align-items:center;display:flex}.dashboard-page__date-picker{min-width:clamp(220px, calc(16vw * var(--scale)), 280px)}.dashboard-page__date-picker.ant-picker{border-color:var(--teacher-border);padding:clamp(6px, calc(.42vw * var(--scale)), 8px) clamp(12px, calc(.83vw * var(--scale)), 16px);border-radius:9999px}.dashboard-page__range-select{min-width:clamp(128px, calc(9vw * var(--scale)), 150px)}.dashboard-page__range-select .ant-select-selector{background:var(--teacher-track-bg)!important;color:var(--teacher-label)!important;padding-inline:clamp(12px, calc(.83vw * var(--scale)), 16px)!important;border:none!important;border-radius:9999px!important;font-weight:700!important}.dashboard-page__card-meta{margin:calc(.21vw * var(--scale)) 0 0;font-size:clamp(12px, calc(.73vw * var(--scale)), 14px);color:var(--teacher-muted)}.dashboard-page__chart-empty{min-height:clamp(180px, calc(13.13vw * var(--scale)), 252px);padding:calc(1.04vw * var(--scale));border-radius:calc(.83vw * var(--scale));background:var(--teacher-track-bg);text-align:center;justify-content:center;align-items:center;display:flex}.dashboard-page__chart-empty p{max-width:320px;font-size:clamp(13px, calc(.83vw * var(--scale)), 15px);color:var(--teacher-muted);margin:0;line-height:1.5}.dashboard-page__date .anticon{font-size:calc(.94vw * var(--scale));color:var(--teacher-primary)}.dashboard-page__grid{gap:var(--grid-gap);grid-template-columns:minmax(0,1.68fr) minmax(0,1fr);grid-template-areas:"activity attendance""quick milestones""info milestones";align-items:stretch;display:grid}.dashboard-page__card{background:var(--teacher-card-bg);border:calc(.05vw * var(--scale)) solid var(--teacher-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow-sm)}.dashboard-page__card--activity{padding:calc(1.3vw * var(--scale));border-radius:var(--card-radius-lg);box-shadow:var(--card-shadow);border-color:#fff;grid-area:activity}.dashboard-page__card--attendance{gap:calc(.83vw * var(--scale));padding:calc(1.3vw * var(--scale));border-radius:var(--card-radius-lg);box-shadow:var(--card-shadow);border-color:#fff;flex-direction:column;grid-area:attendance;display:flex}.dashboard-page__card--milestones{padding:calc(1.25vw * var(--scale));flex-direction:column;grid-area:milestones;min-height:100%;display:flex}.dashboard-page__card-head{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));margin-bottom:calc(1.67vw * var(--scale));display:flex}.dashboard-page__card-title{font-size:calc(1.25vw * var(--scale));color:var(--teacher-text-alt);margin:0;font-weight:700;line-height:1.33}.dashboard-page__card-title--section{margin-bottom:calc(1.25vw * var(--scale));color:var(--teacher-text);font-weight:600;line-height:1.17}.dashboard-page__filter-pill{align-items:center;gap:clamp(6px, calc(.42vw * var(--scale)), 8px);padding:clamp(6px, calc(.42vw * var(--scale)), 8px) clamp(12px, calc(.83vw * var(--scale)), 16px);background:var(--teacher-track-bg);font-family:inherit;font-size:clamp(12px, calc(.73vw * var(--scale)), 14px);color:var(--teacher-label);cursor:pointer;white-space:nowrap;border:none;border-radius:9999px;font-weight:700;display:inline-flex}.dashboard-page__chart{justify-content:space-between;align-items:flex-end;gap:clamp(2px, calc(.21vw * var(--scale)), 4px);height:clamp(180px, calc(13.13vw * var(--scale)), 252px);padding:0 clamp(6px, calc(.42vw * var(--scale)), 8px) clamp(12px, calc(.83vw * var(--scale)), 16px);display:flex}.dashboard-page__chart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:0;height:100%;display:flex}.dashboard-page__chart-value{margin-bottom:clamp(2px, calc(.21vw * var(--scale)), 4px);font-size:clamp(9px, calc(.52vw * var(--scale)), 10px);color:var(--teacher-label);font-weight:700;line-height:1.5}.dashboard-page__chart-bar{width:100%;max-width:clamp(36px, calc(2.81vw * var(--scale)), 54px);min-height:clamp(6px, calc(.42vw * var(--scale)), 8px);background:var(--teacher-bar);border-radius:9999px 9999px 0 0}.dashboard-page__chart-day{margin-top:clamp(6px, calc(.42vw * var(--scale)), 8px);font-size:clamp(9px, calc(.52vw * var(--scale)), 10px);color:var(--teacher-subtle);font-weight:700;line-height:1.5}.dashboard-page__attendance-head{align-items:center;gap:clamp(16px, calc(1.25vw * var(--scale)), 24px);display:flex}.dashboard-page__attendance-icon{width:clamp(68px, calc(4.38vw * var(--scale)), 84px);height:clamp(82px, calc(5.31vw * var(--scale)), 102px);background:var(--teacher-bar);color:var(--teacher-primary-dark);font-size:clamp(32px, calc(2.19vw * var(--scale)), 42px);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-page__attendance-label{margin:0 0 clamp(6px, calc(.42vw * var(--scale)), 8px);font-size:clamp(16px, calc(1.25vw * var(--scale)), 24px);color:var(--teacher-label);font-weight:700;line-height:1.2}.dashboard-page__attendance-value{font-size:clamp(18px, calc(1.25vw * var(--scale)), 24px);color:var(--teacher-text-alt);margin:0;font-weight:700;line-height:1.33}.dashboard-page__attendance-progress-head{justify-content:space-between;align-items:center;gap:clamp(8px, calc(.63vw * var(--scale)), 12px);margin-bottom:clamp(6px, calc(.42vw * var(--scale)), 8px);font-size:clamp(12px, calc(.68vw * var(--scale)), 13px);color:var(--teacher-label);display:flex}.dashboard-page__attendance-progress-head strong{font-size:clamp(11px, calc(.63vw * var(--scale)), 12px);color:var(--teacher-primary-dark)}.dashboard-page__progress-track{height:clamp(6px, calc(.42vw * var(--scale)), 8px);background:var(--teacher-track-bg);border-radius:9999px;overflow:hidden}.dashboard-page__progress-track--thin{height:clamp(3px, calc(.21vw * var(--scale)), 4px);background:var(--teacher-progress-track)}.dashboard-page__progress-fill{border-radius:9999px;height:100%}.dashboard-page__progress-fill--blue{background:var(--teacher-primary-dark)}.dashboard-page__progress-fill--green{background:var(--teacher-success)}.dashboard-page__progress-fill--purple{background:var(--teacher-purple)}.dashboard-page__action-btn{box-shadow:var(--card-shadow-sm);height:auto!important;min-height:clamp(34px, calc(2.08vw * var(--scale)), 40px)!important;padding:clamp(6px, calc(.42vw * var(--scale)), 8px) clamp(12px, calc(.83vw * var(--scale)), 16px)!important;border-radius:clamp(24px, calc(1.67vw * var(--scale)), 32px)!important;background:var(--teacher-primary-dark)!important;border-color:var(--teacher-primary-dark)!important;font-size:clamp(12px, calc(.73vw * var(--scale)), 14px)!important}.dashboard-page__quick-grid{gap:var(--grid-gap);grid-area:quick;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-page__quick-card{min-height:clamp(120px, calc(8.23vw * var(--scale)), 158px);justify-content:center;align-items:center;gap:clamp(12px, calc(.83vw * var(--scale)), 16px);padding:clamp(18px, calc(1.3vw * var(--scale)), 24px);border:calc(.05vw * var(--scale)) solid var(--teacher-border);border-radius:var(--card-radius);background:var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);font-family:inherit;font-size:clamp(13px, calc(.83vw * var(--scale)), 16px);letter-spacing:.1em;text-align:center;color:var(--teacher-text);cursor:pointer;flex-direction:column;font-weight:400;line-height:1.5;transition:transform .15s,box-shadow .15s;display:flex}.dashboard-page__quick-card:hover{box-shadow:var(--card-shadow);transform:translateY(-1px)}.dashboard-page__quick-icon{font-size:clamp(22px, calc(1.46vw * var(--scale)), 28px);color:var(--teacher-primary)}.dashboard-page__milestones{gap:clamp(16px, calc(1.25vw * var(--scale)), 24px);margin-bottom:clamp(16px, calc(1.25vw * var(--scale)), 24px);flex-direction:column;flex:1;display:flex}.dashboard-page__milestone{gap:clamp(12px, calc(.83vw * var(--scale)), 16px);align-items:flex-start;display:flex}.dashboard-page__milestone--muted{opacity:.7}.dashboard-page__milestone-icon{width:clamp(40px, calc(2.5vw * var(--scale)), 48px);height:clamp(42px, calc(2.6vw * var(--scale)), 50px);font-size:clamp(15px, calc(.94vw * var(--scale)), 18px);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-page__milestone-icon--green{background:var(--teacher-success-soft);color:var(--teacher-success)}.dashboard-page__milestone-icon--purple{background:var(--teacher-purple-soft);color:var(--teacher-purple)}.dashboard-page__milestone-copy{flex:1;min-width:0}.dashboard-page__milestone-copy h4{margin:0 0 clamp(2px, calc(.21vw * var(--scale)), 4px);font-size:clamp(16px, calc(1.04vw * var(--scale)), 20px);color:var(--teacher-text);font-weight:700;line-height:1.2}.dashboard-page__milestone-copy p{margin:0 0 clamp(6px, calc(.42vw * var(--scale)), 8px);font-size:clamp(12px, calc(.73vw * var(--scale)), 14px);color:var(--teacher-muted);line-height:1.3}.dashboard-page__outline-btn{width:100%;margin-top:auto;height:clamp(42px, calc(2.6vw * var(--scale)), 50px)!important;color:var(--teacher-primary)!important;font-size:clamp(14px, calc(.83vw * var(--scale)), 16px)!important;border-radius:clamp(6px, calc(.42vw * var(--scale)), 8px)!important;border-color:#004ac633!important}.dashboard-page__info-grid{gap:var(--grid-gap);grid-area:info;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-page__info-card{justify-content:space-between;align-items:center;gap:clamp(12px, calc(.83vw * var(--scale)), 16px);min-height:clamp(88px, calc(5.52vw * var(--scale)), 106px);width:100%;padding:clamp(18px, calc(1.3vw * var(--scale)), 25px);border:calc(.05vw * var(--scale)) solid var(--teacher-border);border-radius:var(--card-radius);background:var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);text-align:left;cursor:pointer;font-family:inherit;transition:border-color .2s,box-shadow .2s;display:flex}.dashboard-page__info-card:hover{border-color:#004ac659;box-shadow:0 8px 20px #004ac614}.dashboard-page__info-card h4{margin:0 0 clamp(2px, calc(.21vw * var(--scale)), 4px);font-size:clamp(16px, calc(1.04vw * var(--scale)), 20px);color:var(--teacher-text);font-weight:600;line-height:1.4}.dashboard-page__info-card p{font-size:clamp(14px, calc(.83vw * var(--scale)), 16px);color:var(--teacher-muted);margin:0;line-height:1.5}.dashboard-page__info-arrow{width:clamp(24px, calc(1.46vw * var(--scale)), 28px);height:clamp(24px, calc(1.46vw * var(--scale)), 28px);background:var(--teacher-progress-track);color:var(--teacher-muted);font-size:clamp(10px, calc(.63vw * var(--scale)), 12px);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}@media (width<=1100px){.dashboard-page__grid{grid-template-columns:1fr;grid-template-areas:"activity""attendance""quick""milestones""info"}.dashboard-page__card--milestones{min-height:auto}.dashboard-page__welcome-subtitle{max-width:100%}}@media (width<=768px){.dashboard-page__welcome{flex-direction:column;align-items:flex-start}.dashboard-page__date-controls,.dashboard-page__date-picker{width:100%}.dashboard-page__welcome-title{font-size:max(calc(1.88vw * var(--scale)), 26px)}.dashboard-page__welcome-subtitle,.dashboard-page__date{font-size:max(calc(.83vw * var(--scale)), 14px);max-width:100%}.dashboard-page__date{white-space:normal}.dashboard-page__card-title{font-size:max(calc(1.25vw * var(--scale)), 18px)}.dashboard-page__quick-grid,.dashboard-page__info-grid{grid-template-columns:1fr}.dashboard-page__chart{scrollbar-width:thin;overflow-x:auto}.dashboard-page__chart-col{min-width:max(calc(2.81vw * var(--scale)), 36px)}.dashboard-page__attendance-head{flex-wrap:wrap}}.forgot-password-modal__input-icon{color:#006d77}.login-page{--scale:1;--form-scale:.88;--teal:#006d77;--yellow:#ffb703;--yellow-dark:#e6a600;--border-blue:#a0d8ef;--text-dark:#333;--text-muted:#4a4a4a;--text-light:#6b7280;--icon-blue:#7ec8e3;--bg:#f5f7f9;background:var(--bg);flex-direction:column;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.login-page__bokeh{filter:blur(calc(3.125vw * var(--scale)));pointer-events:none;opacity:.65;border-radius:50%;position:absolute}.login-page__bokeh--purple{width:calc(2.6vw * var(--scale));height:calc(2.6vw * var(--scale));top:calc(9.64vw * var(--scale));left:calc(10vw * var(--scale));background:#d4c4ff}.login-page__bokeh--yellow{width:calc(1.56vw * var(--scale));height:calc(1.56vw * var(--scale));top:calc(12.24vw * var(--scale));left:calc(72.71vw * var(--scale));background:#ffe9a0}.login-page__bokeh--blue{width:calc(2.08vw * var(--scale));height:calc(2.08vw * var(--scale));top:calc(41.35vw * var(--scale));left:calc(14.64vw * var(--scale));background:#a8dff5}.login-page__navbar{z-index:2;border-bottom:calc(.05vw * var(--scale)) solid #e8edf0;width:100%;min-height:56px;box-shadow:0 calc(.1vw * var(--scale)) calc(.42vw * var(--scale)) #0000000a;position:relative;height:calc(4.17vw * var(--scale))!important;background:#fff!important;padding:0!important;line-height:1!important}.login-page__navbar-inner{align-items:center;gap:calc(.63vw * var(--scale));height:100%;padding:calc(.42vw * var(--scale)) calc(.83vw * var(--scale));display:flex}.login-page__logo-icon{width:calc(2.4vw * var(--scale));height:calc(2.4vw * var(--scale));object-fit:contain;flex-shrink:0;min-width:28px;min-height:28px}.login-page__brand{font-size:calc(1.46vw * var(--scale));color:var(--teal);letter-spacing:-.03em;white-space:nowrap;font-weight:700;line-height:1}.login-page__main{z-index:1;width:100%;max-width:calc(52vw * var(--scale));padding:0 calc(2vw * var(--scale));flex-direction:column;flex:1;justify-content:center;align-items:center;margin:0 auto;display:flex;position:relative}.login-page__hero{text-align:center;margin-bottom:calc(1.88vw * var(--scale));width:100%}.login-page__mascot-wrap{margin-bottom:calc(.73vw * var(--scale));display:inline-block}.login-page__mascot-row{justify-content:center;align-items:center;gap:calc(.73vw * var(--scale));margin-bottom:calc(.73vw * var(--scale));display:inline-flex}.login-page__speech-bubble{padding:calc(.42vw * var(--scale)) calc(.83vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--border-blue);border-radius:calc(1.04vw * var(--scale));font-size:calc(.94vw * var(--scale));color:var(--teal);white-space:nowrap;box-shadow:0 calc(.1vw * var(--scale)) calc(.31vw * var(--scale)) #006d7714;background:#fff;align-items:center;font-weight:700;display:inline-flex}.login-page__mascot{width:calc(14.58vw * var(--scale));object-fit:contain;max-width:280px;height:auto}.login-page__title{letter-spacing:-.02em;margin:0 auto calc(.42vw * var(--scale))!important;font-size:calc(2.6vw * var(--scale))!important;color:var(--teal)!important;font-weight:800!important;line-height:1.15!important}.login-page__subtitle{max-width:calc(40vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--text-muted);margin:0 auto;font-weight:600;line-height:1.45;display:block}.login-page__card{width:calc(34vw * var(--scale));max-width:652px;border:calc(.1vw * var(--scale) * var(--form-scale)) solid var(--border-blue)!important;border-radius:calc(1.04vw * var(--scale) * var(--form-scale))!important;box-shadow:0 calc(.21vw * var(--scale) * var(--form-scale)) calc(1.25vw * var(--scale) * var(--form-scale)) #006d7714!important;background:#fff!important}.login-page__card .ant-card-body{padding:calc(1.46vw * var(--scale) * var(--form-scale)) calc(1.67vw * var(--scale) * var(--form-scale)) calc(1.56vw * var(--scale) * var(--form-scale))}.login-page__form .ant-form-item{margin-bottom:calc(.94vw * var(--scale) * var(--form-scale))}.login-page__form .ant-form-item-label{padding-bottom:calc(.31vw * var(--scale) * var(--form-scale))!important}.login-page__form .ant-form-item-label>label{font-size:calc(.83vw * var(--scale) * var(--form-scale));color:var(--text-dark);height:auto;font-weight:700}.login-page__form .ant-input-affix-wrapper,.login-page__form .ant-input{font-size:calc(.94vw * var(--scale) * var(--form-scale));color:var(--text-dark);border:calc(.1vw * var(--scale) * var(--form-scale)) solid #e0e0e0;border-radius:calc(1.67vw * var(--scale) * var(--form-scale));height:calc(2.92vw * var(--scale) * var(--form-scale));min-height:42px;padding:0 calc(.94vw * var(--scale) * var(--form-scale));background:#fff;font-weight:500}.login-page__form .ant-input-affix-wrapper{padding:0 calc(.94vw * var(--scale) * var(--form-scale)) 0 calc(.73vw * var(--scale) * var(--form-scale))}.login-page__form .ant-input-affix-wrapper .ant-input{height:auto;min-height:0;font-size:calc(.94vw * var(--scale) * var(--form-scale));background:0 0;border:none;padding:0}.login-page__form .ant-input-affix-wrapper:focus,.login-page__form .ant-input-affix-wrapper-focused,.login-page__form .ant-input-affix-wrapper:hover{border-color:var(--border-blue);box-shadow:0 0 0 calc(.1vw * var(--scale)) #a0d8ef66}.login-page__form .ant-input-password .ant-input-suffix{color:var(--text-light);font-size:calc(.94vw * var(--scale) * var(--form-scale))}.login-page__form .ant-input::placeholder{color:#9ca3af;font-weight:500}.login-page__input-icon{color:var(--icon-blue);font-size:calc(.94vw * var(--scale) * var(--form-scale));margin-right:calc(.31vw * var(--scale) * var(--form-scale))}.login-page__forgot-wrap{margin:calc(-.21vw * var(--scale) * var(--form-scale)) 0 calc(.73vw * var(--scale) * var(--form-scale));justify-content:flex-end;display:flex}.login-page__forgot{cursor:pointer;font:inherit;font-size:calc(.83vw * var(--scale) * var(--form-scale));color:var(--teal);background:0 0;border:none;padding:0;font-weight:600;text-decoration:none}.login-page__forgot:hover{text-decoration:underline}.login-page__back-wrap{margin-top:calc(.73vw * var(--scale) * var(--form-scale));justify-content:center;display:flex}.login-page__back{align-items:center;gap:calc(.42vw * var(--scale));font-size:calc(.94vw * var(--scale) * var(--form-scale));color:var(--teal);font-weight:700;text-decoration:none;display:inline-flex}.login-page__back:hover{text-decoration:underline}.login-page__btn-primary--teal-text,.login-page__btn-primary--teal-text:hover:not(:disabled){color:var(--teal)!important}.login-page__alert{margin-bottom:calc(.73vw * var(--scale) * var(--form-scale));border-radius:calc(.63vw * var(--scale) * var(--form-scale));font-size:calc(.83vw * var(--scale) * var(--form-scale))}.login-page__submit-item{margin-top:calc(.1vw * var(--scale) * var(--form-scale));margin-bottom:0!important}.login-page__btn-primary{box-shadow:0 calc(.21vw * var(--scale) * var(--form-scale)) 0 var(--yellow-dark);background:var(--yellow)!important;border-color:var(--yellow)!important;color:#fff!important;font-size:calc(1.04vw * var(--scale) * var(--form-scale))!important;height:calc(2.92vw * var(--scale) * var(--form-scale))!important;border-radius:calc(1.67vw * var(--scale) * var(--form-scale))!important;min-height:42px!important;font-weight:800!important}.login-page__btn-primary:hover:not(:disabled){color:#fff!important;background:#ffc233!important;border-color:#ffc233!important}.login-page__btn-primary:active:not(:disabled){transform:translateY(calc(.1vw * var(--scale)));box-shadow:0 calc(.1vw * var(--scale)) 0 var(--yellow-dark)}@media (width<=768px){.login-page{--scale:.88;--form-scale:.92}.login-page__main{max-width:100%;padding:0 calc(4vw * var(--scale))}.login-page__brand{font-size:max(calc(1.46vw * var(--scale)), 15px)}.login-page__title{font-size:max(calc(2.6vw * var(--scale)), 22px)!important}.login-page__subtitle{font-size:max(calc(1.25vw * var(--scale)), 16px);max-width:92%}.login-page__card{width:min(100%,480px)}.login-page__form .ant-form-item-label>label,.login-page__form .ant-input-affix-wrapper,.login-page__form .ant-input,.login-page__forgot,.login-page__btn-primary{font-size:max(calc(.94vw * var(--scale)), 13px)}}.convert-lead-modal{--modal-control-height:44px;--modal-label-size:14px;--modal-input-size:15px;--modal-title-size:18px}.convert-lead-modal .ant-modal-content{border-radius:12px;padding:24px 28px 20px}.convert-lead-modal .ant-modal-header{margin-bottom:8px;padding:0}.convert-lead-modal .ant-modal-title{font-size:var(--modal-title-size);color:var(--teacher-text);font-weight:700;line-height:1.4}.convert-lead-modal__instructions{background:#f0f7ff;border:1px solid #d6e4ff;border-radius:8px;margin:0 0 16px;padding:12px 14px}.convert-lead-modal__instructions strong{color:var(--teacher-text);margin-bottom:4px;font-size:13px;display:block}.convert-lead-modal__instructions p{color:var(--teacher-muted);margin:0;font-size:13px;line-height:1.5}.convert-lead-modal__subtitle{color:var(--teacher-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.convert-lead-modal .ant-modal-body{padding:0}.convert-lead-modal__footer{border-top:1px solid #c3c6d759;margin-top:8px;padding-top:16px}.convert-lead-modal__form .ant-form-item{margin-bottom:18px}.convert-lead-modal__notes-item{margin-bottom:0!important}.convert-lead-modal__form .ant-form-item-label>label{height:auto;font-size:var(--modal-label-size);color:var(--teacher-muted);font-weight:500;line-height:1.4}.convert-lead-modal__form .ant-input,.convert-lead-modal__form .ant-input-affix-wrapper,.convert-lead-modal__form .ant-picker,.convert-lead-modal__form .ant-input-textarea textarea{font-size:var(--modal-input-size)!important;border-radius:8px!important}.convert-lead-modal__form .ant-input-lg,.convert-lead-modal__form .ant-input-affix-wrapper-lg,.convert-lead-modal__form .ant-picker-large{min-height:var(--modal-control-height)}.convert-lead-modal__form .ant-input-affix-wrapper-lg{align-items:center;padding-block:0;display:inline-flex}.convert-lead-modal__form .ant-input-affix-wrapper-lg>input.ant-input{font-size:var(--modal-input-size)!important}.convert-lead-modal__form .ant-input-password-icon{color:var(--teacher-muted);font-size:16px}.convert-lead-modal__datepicker{width:100%}.convert-lead-modal__form .ant-picker-large{width:100%;padding-inline:14px}.convert-lead-modal__form .ant-picker-large .ant-picker-input>input{font-size:var(--modal-input-size)!important}.convert-lead-modal__form .ant-input-textarea textarea{resize:vertical;min-height:112px;padding:12px 14px;line-height:1.5}.convert-lead-modal__input--readonly,.convert-lead-modal__input--readonly.ant-input{cursor:default;color:var(--teacher-text)!important;background:#f3f4f6!important}.convert-lead-modal__cancel-btn{min-width:100px;height:var(--modal-control-height)!important;font-size:var(--modal-input-size)!important;color:#434655!important;background:#fff!important;border-color:#c3c6d7!important;border-radius:8px!important;padding:0 20px!important}.convert-lead-modal__submit-btn{min-width:168px;box-shadow:0 4px 6px #004ac633;height:var(--modal-control-height)!important;font-size:var(--modal-input-size)!important;color:#fff!important;background:#004ac6!important;border-color:#004ac6!important;border-radius:8px!important;padding:0 20px!important;font-weight:600!important}.convert-lead-modal__submit-btn:hover,.convert-lead-modal__submit-btn:focus{color:#fff!important;background:#0059b8!important;border-color:#0059b8!important}.convert-lead-modal__submit-btn.ant-btn-loading,.convert-lead-modal__submit-btn:disabled{opacity:.85;color:#fff!important}@media (width<=640px){.convert-lead-modal .ant-modal-content{padding:20px 20px 16px}.convert-lead-modal__footer{flex-direction:column-reverse}.convert-lead-modal__cancel-btn,.convert-lead-modal__submit-btn{width:100%}}.leads-page{width:100%;padding:calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale));box-sizing:border-box;flex:1}.leads-page__header{margin-bottom:calc(1.25vw * var(--scale))}.leads-page__header h2{color:var(--teacher-text);margin:0 0 4px}.leads-page__toolbar{margin-bottom:16px}.leads-page__toolbar .ant-input{min-width:280px}.leads-page .ant-table-cell{white-space:nowrap}.placeholder-page{padding:calc(2.5vw * var(--scale)) calc(2.08vw * var(--scale));flex:1}.placeholder-page h1{margin:0 0 calc(.63vw * var(--scale));font-size:calc(1.67vw * var(--scale));color:var(--teacher-primary);font-weight:700}.placeholder-page p{max-width:calc(29.17vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--teacher-muted);margin:0;line-height:1.5}@media (width<=768px){.placeholder-page h1{font-size:max(calc(1.67vw * var(--scale)), 24px)}.placeholder-page p{max-width:100%;font-size:max(calc(.83vw * var(--scale)), 14px)}}.edit-teacher-profile-modal{--modal-control-height:44px;--modal-label-size:14px;--modal-input-size:15px;--modal-title-size:18px}.edit-teacher-profile-modal .ant-modal-content{border-radius:12px;padding:24px 28px 20px}.edit-teacher-profile-modal .ant-modal-header{margin-bottom:8px;padding:0}.edit-teacher-profile-modal .ant-modal-title{font-size:var(--modal-title-size);color:var(--teacher-text);font-weight:700}.edit-teacher-profile-modal__subtitle{color:var(--teacher-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.edit-teacher-profile-modal .ant-modal-body{padding:0}.edit-teacher-profile-modal .ant-modal-footer{border-top:1px solid var(--teacher-border-light);margin-top:8px;padding:16px 0 0}.edit-teacher-profile-modal__form .ant-form-item{margin-bottom:18px}.edit-teacher-profile-modal__form .ant-form-item-label>label{font-size:var(--modal-label-size);color:var(--teacher-muted);font-weight:500}.edit-teacher-profile-modal__form .ant-input,.edit-teacher-profile-modal__form .ant-input-textarea textarea{font-size:var(--modal-input-size)!important;border-radius:8px!important}.edit-teacher-profile-modal__input--readonly,.edit-teacher-profile-modal__input--readonly.ant-input{cursor:default;color:var(--teacher-text)!important;background:#f3f4f6!important}.edit-teacher-profile-modal__cancel-btn,.edit-teacher-profile-modal__submit-btn{min-width:120px;height:var(--modal-control-height)!important;border-radius:8px!important}.edit-teacher-profile-modal__submit-btn{background:var(--teacher-primary)!important;border-color:var(--teacher-primary)!important}.teacher-transactions-modal .ant-modal-content{border-radius:12px;padding:24px 28px 20px}.teacher-transactions-modal__header{border:1px solid var(--teacher-border);background:linear-gradient(135deg,#d7e2ff73,#fff);border-radius:12px;margin-bottom:18px;padding:16px 18px}.teacher-transactions-modal__name.ant-typography{margin:0 0 4px!important;font-size:20px!important}.teacher-transactions-modal__meta{color:var(--teacher-subtle);font-size:13px}.teacher-transactions-modal__list{flex-direction:column;gap:12px;display:flex}.teacher-transactions-modal__item{border:1px solid var(--teacher-border);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.teacher-transactions-modal__item-main{align-items:flex-start;gap:12px;display:flex}.teacher-transactions-modal__item-icon{background:var(--teacher-bar);width:40px;height:40px;color:var(--teacher-primary);border:1px solid #1171e3;border-radius:9999px;justify-content:center;align-items:center;display:inline-flex}.teacher-transactions-modal__item-main strong{color:var(--teacher-text-alt);margin-bottom:4px;font-size:15px;display:block}.teacher-transactions-modal__item-meta{color:var(--teacher-subtle);font-size:12px;display:block}.teacher-transactions-modal__item-side{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.teacher-transactions-modal__status{border:none;border-radius:9999px;margin:0}.teacher-transactions-modal__status--paid{background:var(--teacher-success-soft)!important;color:#005236!important}.teacher-transactions-modal__status--due-soon{color:#a16207!important;background:#fff4d6!important}.teacher-transactions-modal__status--pending{color:#b42318!important;background:#fde8e8!important}.profile-page{padding:calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;position:relative}.profile-page--loading{justify-content:center;align-items:center;min-height:320px;display:flex}.profile-page__hero{margin-bottom:calc(1.25vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--teacher-border-light);border-radius:var(--card-radius);background:var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);position:relative;overflow:hidden}.profile-page__hero-gradient{height:calc(10.05vw * var(--scale));background:linear-gradient(90deg, var(--teacher-primary), var(--teacher-purple));opacity:.1;position:absolute;inset:0 0 auto}.profile-page__hero-content{justify-content:space-between;align-items:center;gap:calc(1.67vw * var(--scale));padding:calc(1.72vw * var(--scale));display:flex;position:relative}.profile-page__hero-main{flex:1;min-width:0}.profile-page__hero-name{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.88vw * var(--scale));color:var(--teacher-text);letter-spacing:-.02em;font-weight:700;line-height:1.22}.profile-page__hero-meta{gap:calc(.21vw * var(--scale)) calc(1.67vw * var(--scale));grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-page__hero-meta span{align-items:center;gap:calc(.21vw * var(--scale));font-size:calc(.73vw * var(--scale));color:var(--teacher-muted);line-height:1.43;display:inline-flex}.profile-page__hero-meta .anticon{color:var(--teacher-primary);font-size:calc(.78vw * var(--scale))}.profile-page__hero-actions{gap:calc(.63vw * var(--scale));flex-direction:column;flex-shrink:0;display:flex}.profile-page__btn-primary{letter-spacing:.05em;height:auto!important;padding:calc(.63vw * var(--scale)) calc(2.44vw * var(--scale))!important;border-radius:calc(.42vw * var(--scale))!important;background:var(--teacher-primary)!important;border-color:var(--teacher-primary)!important;font-size:calc(.63vw * var(--scale))!important}.profile-page__btn-outline{letter-spacing:.05em;height:auto!important;padding:calc(.68vw * var(--scale)) calc(1.3vw * var(--scale))!important;color:var(--teacher-muted)!important;font-size:calc(.63vw * var(--scale))!important;border-color:#737686!important}.profile-page__grid{gap:var(--grid-gap);grid-template-columns:minmax(0,2.05fr) minmax(280px,1fr);align-items:start;display:grid}.profile-page__main-column,.profile-page__side-column{gap:var(--grid-gap);flex-direction:column;min-width:0;display:flex}.profile-page__card{border:calc(.05vw * var(--scale)) solid var(--teacher-border-light);border-radius:var(--card-radius);background:var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);overflow:hidden}.profile-page__card-header{padding:calc(1.25vw * var(--scale)) calc(1.25vw * var(--scale)) calc(1.3vw * var(--scale));border-bottom:calc(.05vw * var(--scale)) solid var(--teacher-border-light)}.profile-page__card-header h3,.profile-page__transactions-header h3{font-size:calc(1.04vw * var(--scale));color:var(--teacher-text);margin:0;font-weight:600;line-height:1.4}.profile-page__card-header--inline{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));display:flex}.profile-page__card-body{padding:calc(1.25vw * var(--scale))}.profile-page__info-grid{gap:calc(1.67vw * var(--scale));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-page__field{gap:calc(.23vw * var(--scale));flex-direction:column;display:flex}.profile-page__field--wide{grid-column:1/-1}.profile-page__field-label{font-size:calc(.63vw * var(--scale));letter-spacing:.05em;color:#737686;font-weight:500}.profile-page__field-value{font-size:calc(.83vw * var(--scale));color:var(--teacher-text);line-height:1.5}.profile-page__certificate{gap:calc(1.67vw * var(--scale));padding:calc(1.3vw * var(--scale));border:calc(.05vw * var(--scale)) solid var(--teacher-border-light);border-radius:calc(.83vw * var(--scale));background:#f3f4f580;align-items:center;display:flex}.profile-page__certificate-badge{width:calc(8.33vw * var(--scale));height:calc(8.33vw * var(--scale));min-width:calc(8.33vw * var(--scale));border-radius:calc(.83vw * var(--scale));color:#fff;font-size:calc(2.92vw * var(--scale));box-shadow:0 calc(.52vw * var(--scale)) calc(.78vw * var(--scale)) #0000001a;background:linear-gradient(135deg,#2563eb,#6063ee);justify-content:center;align-items:center;display:flex}.profile-page__certificate-copy{flex:1;min-width:0}.profile-page__certificate-copy h4{margin:0 0 calc(.21vw * var(--scale));font-size:calc(1.25vw * var(--scale));color:var(--teacher-text);font-weight:600;line-height:1.33}.profile-page__certificate-copy>p{margin:0 0 calc(.83vw * var(--scale));font-size:calc(.73vw * var(--scale));color:var(--teacher-muted);line-height:1.43}.profile-page__certificate-progress-head{justify-content:space-between;align-items:flex-end;gap:calc(.83vw * var(--scale));margin-bottom:calc(.21vw * var(--scale));display:flex}.profile-page__certificate-progress-head strong{font-size:calc(.63vw * var(--scale));color:var(--teacher-primary);letter-spacing:.05em}.profile-page__certificate-progress-head span{font-size:calc(.63vw * var(--scale));color:#737686;letter-spacing:.05em}.profile-page__progress-track{height:calc(.42vw * var(--scale));background:var(--teacher-progress-track);border-radius:9999px;overflow:hidden}.profile-page__progress-track--thick{height:calc(.63vw * var(--scale));margin-bottom:calc(.83vw * var(--scale))}.profile-page__progress-fill{border-radius:9999px;height:100%}.profile-page__progress-fill--gradient{background:linear-gradient(90deg, var(--teacher-primary), var(--teacher-purple));box-shadow:0 0 calc(.42vw * var(--scale)) #004ac64d}.profile-page__certificate-btn{letter-spacing:.05em;box-shadow:0 calc(.21vw * var(--scale)) calc(.31vw * var(--scale)) #0000001a;height:auto!important;padding:calc(.63vw * var(--scale)) calc(1.67vw * var(--scale))!important;background:linear-gradient(90deg, var(--teacher-primary), var(--teacher-purple))!important;font-size:calc(.63vw * var(--scale))!important;border:none!important;border-radius:9999px!important}.profile-page__support-list{flex-direction:column;display:flex}.profile-page__support-item{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));width:100%;padding:calc(.83vw * var(--scale));text-align:left;cursor:pointer;background:0 0;border:none;font-family:inherit;display:flex}.profile-page__support-item--bordered{border-top:calc(.05vw * var(--scale)) solid var(--teacher-border-light)}.profile-page__support-copy{align-items:flex-start;gap:calc(.63vw * var(--scale));min-width:0;display:flex}.profile-page__support-copy .anticon{margin-top:calc(.1vw * var(--scale));color:var(--teacher-primary);font-size:calc(.94vw * var(--scale))}.profile-page__support-copy strong{font-size:calc(.73vw * var(--scale));color:var(--teacher-text);font-weight:400;display:block}.profile-page__support-copy p{margin:calc(.1vw * var(--scale)) 0 0;font-size:calc(.52vw * var(--scale));color:var(--teacher-muted);line-height:1.5}.profile-page__support-item>.anticon{color:var(--teacher-muted);font-size:calc(.63vw * var(--scale))}.profile-page__card--payment{padding:calc(1.3vw * var(--scale))}.profile-page__card--payment .profile-page__card-header{padding:0 0 calc(.73vw * var(--scale));border-bottom:none}.profile-page__status-pill{align-items:center;gap:calc(.21vw * var(--scale));padding:calc(.21vw * var(--scale)) calc(.42vw * var(--scale));font-size:calc(.63vw * var(--scale));color:var(--teacher-success);letter-spacing:.05em;background:#0062421a;border-radius:9999px;font-weight:500;display:inline-flex}.profile-page__status-pill--paid{background:var(--teacher-success-soft);color:#005236}.profile-page__status-pill--pending{color:#b42318;background:#fde8e8}.profile-page__status-pill--due-soon{color:#a16207;background:#fff4d6}.profile-page__status-pill--paid .profile-page__status-dot{background:var(--teacher-success)}.profile-page__status-pill--pending .profile-page__status-dot{background:#b42318}.profile-page__status-pill--due-soon .profile-page__status-dot{background:#a16207}.profile-page__status-dot{width:calc(.42vw * var(--scale));height:calc(.42vw * var(--scale));background:var(--teacher-success);border-radius:50%}.profile-page__payment-method{align-items:center;gap:calc(.83vw * var(--scale));margin-bottom:calc(.83vw * var(--scale));padding:calc(.83vw * var(--scale));border-radius:var(--card-radius);background:var(--teacher-progress-track);display:flex}.profile-page__payment-icon{width:calc(2.5vw * var(--scale));height:calc(2.5vw * var(--scale));border-radius:calc(.42vw * var(--scale));color:var(--teacher-primary);font-size:calc(1.04vw * var(--scale));box-shadow:var(--card-shadow-sm);background:#fff;justify-content:center;align-items:center;display:flex}.profile-page__payment-method strong,.profile-page__payment-stats strong{font-size:calc(.73vw * var(--scale));color:var(--teacher-text);display:block}.profile-page__payment-method p{font-size:calc(.63vw * var(--scale));color:var(--teacher-muted);letter-spacing:.05em;margin:0}.profile-page__payment-stats{gap:calc(.63vw * var(--scale));margin-bottom:calc(.63vw * var(--scale));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-page__payment-stats>div{padding:calc(.83vw * var(--scale));border-radius:var(--card-radius);background:var(--teacher-progress-track)}.profile-page__link-btn{justify-content:center;align-items:center;gap:calc(.21vw * var(--scale));width:100%;padding:calc(.63vw * var(--scale));border-radius:calc(.42vw * var(--scale));font-family:inherit;font-size:calc(.63vw * var(--scale));color:var(--teacher-primary);letter-spacing:.05em;cursor:pointer;background:0 0;border:none;font-weight:500;display:inline-flex}.profile-page__card--transactions{padding:calc(1.04vw * var(--scale)) calc(.83vw * var(--scale));border-width:calc(.1vw * var(--scale));border-radius:calc(2.5vw * var(--scale));border-color:#c1c6d6}.profile-page__transactions-header{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));margin-bottom:calc(.83vw * var(--scale));padding:0 calc(.42vw * var(--scale));display:flex}.profile-page__view-all{font-family:inherit;font-size:calc(.73vw * var(--scale));color:var(--teacher-primary-dark);cursor:pointer;background:0 0;border:none}.profile-page__transactions-list{flex-direction:column;display:flex}.profile-page__transaction-row{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));padding:calc(.94vw * var(--scale)) calc(.42vw * var(--scale));border-bottom:calc(.05vw * var(--scale)) solid #c1c6d6;display:flex}.profile-page__transaction-row:last-child{border-bottom:none}.profile-page__transaction-main{align-items:center;gap:calc(.63vw * var(--scale));min-width:0;display:flex}.profile-page__transaction-icon{width:calc(2.4vw * var(--scale));height:calc(2.08vw * var(--scale));border:calc(.05vw * var(--scale)) solid #1171e3;background:var(--teacher-bar);color:var(--teacher-primary);font-size:calc(.94vw * var(--scale));border-radius:9999px;justify-content:center;align-items:center;display:flex}.profile-page__transaction-main strong{font-size:calc(.73vw * var(--scale));color:var(--teacher-text-alt);font-weight:400;display:block}.profile-page__transaction-main p{font-size:calc(.52vw * var(--scale));color:var(--teacher-label);margin:0}.profile-page__transaction-amount{font-size:calc(.73vw * var(--scale));color:var(--teacher-text-alt);font-weight:400}.profile-page__empty-copy{padding:calc(.83vw * var(--scale)) calc(.42vw * var(--scale));font-size:calc(.83vw * var(--scale));color:var(--teacher-subtle);margin:0}.profile-page__renewal-card{gap:calc(.94vw * var(--scale));padding:calc(1.04vw * var(--scale)) calc(1.15vw * var(--scale));border:calc(.1vw * var(--scale)) solid #c1c6d6;border-radius:calc(2.5vw * var(--scale));background:linear-gradient(135deg, #1171e314, #fffffff5), var(--teacher-card-bg);box-shadow:var(--card-shadow-sm);flex-direction:column;display:flex}.profile-page__renewal-card--paid{background:linear-gradient(135deg, #6ffbbe2e, #fffffffa), var(--teacher-card-bg);border-color:#0062422e}.profile-page__renewal-card--pending{background:linear-gradient(135deg, #fde8e88c, #fffffffa), var(--teacher-card-bg);border-color:#b423182e}.profile-page__renewal-card--due-soon{background:linear-gradient(135deg, #fff4d6a6, #fffffffa), var(--teacher-card-bg);border-color:#a162072e}.profile-page__renewal-card-top{align-items:flex-start;gap:calc(.94vw * var(--scale));display:flex}.profile-page__renewal-icon{width:calc(3.33vw * var(--scale));height:calc(3.39vw * var(--scale));border-radius:calc(.83vw * var(--scale));color:#fff;min-width:52px;min-height:52px;font-size:calc(1.46vw * var(--scale));background:linear-gradient(#1171e3 0%,#004ac6 100%);justify-content:center;align-items:center;display:flex;box-shadow:0 8px 18px #004ac62e}.profile-page__renewal-body{flex:1;min-width:0}.profile-page__renewal-heading{justify-content:space-between;align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(.42vw * var(--scale));display:flex}.profile-page__renewal-heading h4{font-size:calc(1.15vw * var(--scale));color:var(--teacher-text-alt);margin:0;font-weight:700}.profile-page__renewal-badge{padding:calc(.1vw * var(--scale)) calc(.52vw * var(--scale));font-size:calc(.62vw * var(--scale));letter-spacing:.04em;text-transform:uppercase;border-radius:9999px;align-items:center;font-weight:700;display:inline-flex}.profile-page__renewal-badge--paid{background:var(--teacher-success-soft);color:#005236}.profile-page__renewal-badge--pending{color:#b42318;background:#fde8e8}.profile-page__renewal-badge--due-soon{color:#a16207;background:#fff4d6}.profile-page__renewal-amount-row{align-items:center;gap:calc(.63vw * var(--scale));margin-bottom:calc(.31vw * var(--scale));flex-wrap:wrap;display:flex}.profile-page__renewal-amount{font-size:calc(1.35vw * var(--scale));color:var(--teacher-text-alt);margin:0;font-weight:800;line-height:1.1}.profile-page__renewal-autopay-pill{padding:calc(.1vw * var(--scale)) calc(.52vw * var(--scale));font-size:calc(.68vw * var(--scale));color:var(--teacher-text);background:#eceef1;border-radius:9999px;align-items:center;font-weight:600;display:inline-flex}.profile-page__renewal-due{margin:0 0 calc(.21vw * var(--scale));font-size:calc(.9vw * var(--scale));color:var(--teacher-primary-dark);font-weight:600}.profile-page__renewal-meta{margin:0 0 calc(.21vw * var(--scale));font-size:calc(.78vw * var(--scale));color:var(--teacher-label);line-height:1.45}.profile-page__renewal-reference{font-size:calc(.73vw * var(--scale));color:var(--teacher-subtle);margin:0}.profile-page__renewal-actions{justify-content:space-between;align-items:center;gap:calc(.83vw * var(--scale));padding-top:calc(.42vw * var(--scale));border-top:1px solid #c1c6d6a6;display:flex}.profile-page__autopay{align-items:center;gap:calc(.42vw * var(--scale));padding:calc(.21vw * var(--scale)) calc(.42vw * var(--scale));border-radius:calc(.31vw * var(--scale));font-size:calc(.73vw * var(--scale));color:var(--teacher-text);background:#eceef1;display:inline-flex}.profile-page__manage-btn{background:var(--teacher-primary-dark)!important;border-color:var(--teacher-primary-dark)!important;font-size:calc(.73vw * var(--scale))!important;border-radius:9999px!important}@media (width<=1100px){.profile-page__grid{grid-template-columns:1fr}.profile-page__hero-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-page__certificate{flex-direction:column;align-items:flex-start}}@media (width<=768px){.profile-page__hero-content{flex-direction:column;align-items:flex-start}.profile-page__hero-meta,.profile-page__info-grid,.profile-page__payment-stats{grid-template-columns:1fr}.profile-page__hero-name{font-size:max(calc(1.88vw * var(--scale)), 26px)}.profile-page__card-header h3,.profile-page__transactions-header h3{font-size:max(calc(1.04vw * var(--scale)), 16px)}.profile-page__field-value,.profile-page__hero-meta span{font-size:max(calc(.83vw * var(--scale)), 14px)}.profile-page__renewal-card-top{flex-direction:column}.profile-page__renewal-icon{width:calc(12vw * var(--scale));height:calc(12vw * var(--scale))}.profile-page__renewal-actions{flex-direction:column;align-items:stretch}.profile-page__manage-btn{width:100%}}.add-student-modal{--modal-control-height:44px;--modal-label-size:14px;--modal-input-size:15px;--modal-title-size:18px}.add-student-modal .ant-modal-content{border-radius:12px;padding:24px 28px 20px}.add-student-modal .ant-modal-header{margin-bottom:8px;padding:0}.add-student-modal .ant-modal-title{font-size:var(--modal-title-size);color:var(--teacher-text);font-weight:700;line-height:1.4}.add-student-modal__instructions{background:#f0f7ff;border:1px solid #d6e4ff;border-radius:8px;margin:0 0 16px;padding:12px 14px}.add-student-modal__instructions strong{color:var(--teacher-text);margin-bottom:4px;font-size:13px;display:block}.add-student-modal__instructions p{color:var(--teacher-muted);margin:0;font-size:13px;line-height:1.5}.add-student-modal__subtitle{color:var(--teacher-muted);margin:0 0 20px;font-size:14px;line-height:1.5}.add-student-modal .ant-modal-body{padding:0}.add-student-modal__footer{border-top:1px solid #c3c6d759;margin-top:8px;padding-top:16px}.add-student-modal__form .ant-form-item{margin-bottom:18px}.add-student-modal__notes-item{margin-bottom:0!important}.add-student-modal__form .ant-form-item-label>label{height:auto;font-size:var(--modal-label-size);color:var(--teacher-muted);font-weight:500;line-height:1.4}.add-student-modal__form .ant-input,.add-student-modal__form .ant-input-affix-wrapper,.add-student-modal__form .ant-select-selector,.add-student-modal__form .ant-picker,.add-student-modal__form .ant-input-textarea textarea{font-size:var(--modal-input-size)!important;border-radius:8px!important}.add-student-modal__form .ant-input-lg,.add-student-modal__form .ant-input-affix-wrapper-lg,.add-student-modal__form .ant-select-lg .ant-select-selector,.add-student-modal__form .ant-picker-large{min-height:var(--modal-control-height)}.add-student-modal__form .ant-input-affix-wrapper-lg{align-items:center;padding-block:0;display:inline-flex}.add-student-modal__form .ant-input-affix-wrapper-lg>input.ant-input{font-size:var(--modal-input-size)!important}.add-student-modal__form .ant-input-password-icon{color:var(--teacher-muted);font-size:16px}.add-student-modal__datepicker{width:100%}.add-student-modal__form .ant-picker-large{width:100%;padding-inline:14px}.add-student-modal__form .ant-picker-large .ant-picker-input>input{font-size:var(--modal-input-size)!important}.add-student-modal__form .ant-select-lg .ant-select-selection-item,.add-student-modal__form .ant-select-lg .ant-select-selection-placeholder{line-height:calc(var(--modal-control-height) - 2px)!important;font-size:var(--modal-input-size)!important}.add-student-modal__form .ant-input-textarea textarea{resize:vertical;min-height:112px;padding:12px 14px;line-height:1.5}.add-student-modal__cancel-btn{min-width:100px;height:var(--modal-control-height)!important;font-size:var(--modal-input-size)!important;color:#434655!important;background:#fff!important;border-color:#c3c6d7!important;border-radius:8px!important;padding:0 20px!important}.add-student-modal__submit-btn{min-width:168px;box-shadow:0 4px 6px #004ac633;height:var(--modal-control-height)!important;font-size:var(--modal-input-size)!important;color:#fff!important;background:#004ac6!important;border-color:#004ac6!important;border-radius:8px!important;padding:0 20px!important;font-weight:600!important}.add-student-modal__submit-btn:hover,.add-student-modal__submit-btn:focus{color:#fff!important;background:#0059b8!important;border-color:#0059b8!important}.add-student-modal__submit-btn.ant-btn-loading,.add-student-modal__submit-btn:disabled{opacity:.85;color:#fff!important}@media (width<=640px){.add-student-modal .ant-modal-content{padding:20px 20px 16px}.add-student-modal__footer{flex-direction:column-reverse}.add-student-modal__cancel-btn,.add-student-modal__submit-btn{width:100%}}.student-transactions-modal{--modal-title-size:18px}.student-transactions-modal .ant-modal-content{border-radius:12px;padding:24px 28px 20px}.student-transactions-modal .ant-modal-header{margin-bottom:16px;padding:0}.student-transactions-modal .ant-modal-title{font-size:var(--modal-title-size);color:var(--teacher-text);font-weight:700}.student-transactions-modal .ant-modal-body{padding:0}.student-transactions-modal .ant-modal-footer{border-top:1px solid var(--teacher-border-light);margin-top:16px;padding:16px 0 0}.student-transactions-modal__student-header{border:1px solid var(--teacher-border);background:linear-gradient(135deg,#d7e2ff73,#fff);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;padding:16px 18px;display:flex}.student-transactions-modal__student-name.ant-typography{color:var(--teacher-text-alt)!important;margin:0 0 4px!important;font-size:20px!important;font-weight:700!important}.student-transactions-modal__student-meta{color:var(--teacher-subtle);font-size:13px;display:block}.student-transactions-modal__summary-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.student-transactions-modal__summary-card{border:1px solid var(--teacher-border);background:#fff;border-radius:10px;padding:14px 16px}.student-transactions-modal__summary-label{letter-spacing:.04em;text-transform:uppercase;color:var(--teacher-subtle);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.student-transactions-modal__summary-value{color:var(--teacher-text-alt);font-size:16px;line-height:1.3;display:block}.student-transactions-modal__list-section{border:1px solid var(--teacher-border);background:#fff;border-radius:12px;overflow:hidden}.student-transactions-modal__list-header{border-bottom:1px solid var(--teacher-border);background:#fafbfc;padding:14px 18px}.student-transactions-modal__list-title.ant-typography{color:var(--teacher-text-alt)!important;margin:0!important;font-size:15px!important;font-weight:700!important}.student-transactions-modal__list-meta{color:var(--teacher-subtle);font-size:12px}.student-transactions-modal__transaction-list{flex-direction:column;gap:0;max-height:360px;display:flex;overflow-y:auto}.student-transactions-modal__transaction-card{border-bottom:1px solid var(--teacher-border);padding:16px 18px}.student-transactions-modal__transaction-card:last-child{border-bottom:none}.student-transactions-modal__transaction-top{margin-bottom:14px}.student-transactions-modal__transaction-main{align-items:flex-start;gap:12px;min-width:0;display:flex}.student-transactions-modal__transaction-icon{background:var(--teacher-bar);width:40px;height:40px;color:var(--teacher-primary);border:1px solid #1171e3;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.student-transactions-modal__transaction-title{color:var(--teacher-text-alt);margin-bottom:4px;font-size:15px;font-weight:600;display:block}.student-transactions-modal__transaction-meta{color:var(--teacher-subtle);font-size:12px;display:block}.student-transactions-modal__transaction-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.student-transactions-modal__transaction-amount{color:var(--teacher-text-alt);font-size:16px;font-weight:700}.student-transactions-modal__status{letter-spacing:.04em;border:none;border-radius:9999px;margin:0;padding:2px 10px;font-size:11px;font-weight:700}.student-transactions-modal__status--paid{background:var(--teacher-success-soft)!important;color:#005236!important}.student-transactions-modal__status--due-soon{color:#a16207!important;background:#fff4d6!important}.student-transactions-modal__status--pending{color:#b42318!important;background:#fde8e8!important}.student-transactions-modal__details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.student-transactions-modal__detail-label{letter-spacing:.04em;text-transform:uppercase;color:var(--teacher-subtle);margin-bottom:4px;font-size:11px;font-weight:600;display:block}.student-transactions-modal__detail-value{color:var(--teacher-text-alt);align-items:center;gap:6px;font-size:13px;display:flex}.student-transactions-modal__detail-value .anticon{color:var(--teacher-primary)}.student-transactions-modal__loading,.student-transactions-modal__empty{padding:40px 18px}.student-transactions-modal__close-btn{border-radius:8px;min-width:120px}@media (width<=768px){.student-transactions-modal__summary-row,.student-transactions-modal__details-grid{grid-template-columns:1fr}.student-transactions-modal__student-header,.student-transactions-modal__transaction-top{flex-direction:column}.student-transactions-modal__transaction-side{align-items:flex-start}}.students-page{padding:calc(1.67vw * var(--scale)) calc(2.08vw * var(--scale)) calc(1.04vw * var(--scale));box-sizing:border-box;flex:1;width:100%;position:relative}.students-page__header{margin-bottom:calc(1.25vw * var(--scale))}.students-page__title.ant-typography{letter-spacing:-.02em;margin:0 0 calc(.21vw * var(--scale))!important;font-size:calc(1.88vw * var(--scale))!important;color:var(--teacher-text)!important;font-weight:700!important;line-height:1.22!important}.students-page__subtitle{font-size:calc(.83vw * var(--scale));color:var(--teacher-muted);line-height:1.5;display:block}.students-page__add-btn{box-shadow:0 calc(.21vw * var(--scale)) calc(.31vw * var(--scale)) #004ac633;height:auto!important;padding:calc(.52vw * var(--scale)) calc(1.25vw * var(--scale))!important;border-radius:calc(.42vw * var(--scale))!important;background:var(--teacher-primary)!important;border-color:var(--teacher-primary)!important;font-size:calc(.83vw * var(--scale))!important}.students-page__table-card{margin-bottom:calc(1.25vw * var(--scale));box-shadow:var(--card-shadow-sm);border:calc(.05vw * var(--scale)) solid var(--teacher-border-light)!important;border-radius:var(--card-radius)!important;background:var(--teacher-card-bg)!important}.students-page__table-card .ant-card-body{padding:0}.students-page__table{--table-cell-font-size:max(13px, calc(.73vw * var(--scale)));width:100%}.students-page__table .ant-table-container,.students-page__table .ant-table-content{overflow-x:auto!important}.students-page__table .ant-table-cell{white-space:nowrap}.students-page__table .ant-table-thead>tr>th{letter-spacing:.06em;white-space:nowrap;padding:calc(.83vw * var(--scale)) calc(1.25vw * var(--scale))!important;font-size:calc(.63vw * var(--scale))!important;color:#737686!important;background:#f8f9fb!important;font-weight:600!important}.students-page__table .ant-table-tbody>tr>td{font-size:var(--table-cell-font-size);color:var(--teacher-muted);vertical-align:middle;padding:calc(.83vw * var(--scale)) calc(1.25vw * var(--scale))!important}.students-page__table .ant-table-tbody>tr>td .ant-typography,.students-page__table .ant-table-tbody>tr>td .students-page__id-text,.students-page__table .ant-table-tbody>tr>td .students-page__fees-meta,.students-page__table .ant-table-tbody>tr>td .students-page__level-tag,.students-page__table .ant-table-tbody>tr>td .students-page__status-tag,.students-page__table .ant-table-tbody>tr>td .students-page__approval-tag,.students-page__table .ant-table-tbody>tr>td .students-page__account-btn,.students-page__table .ant-table-tbody>tr>td .students-page__payment-select{line-height:1.43;font-size:var(--table-cell-font-size)!important}.students-page__table .ant-table-tbody>tr>td .ant-typography strong{color:var(--teacher-text);font-weight:600}.students-page__id-text{color:var(--teacher-muted)}.students-page__fees-cell{text-align:right;width:100%}.students-page__fees-meta{line-height:1.4}.students-page__level-tag{padding:calc(.21vw * var(--scale)) calc(.42vw * var(--scale));border:none;border-radius:9999px;margin:0;font-weight:700;background:var(--teacher-bar)!important;color:#004591!important}.students-page__account-btn{justify-content:center;align-items:center;gap:calc(.31vw * var(--scale));min-width:max(128px, calc(7.29vw * var(--scale)));white-space:nowrap;line-height:1.2;height:max(36px, calc(2.08vw * var(--scale)))!important;padding:0 calc(.94vw * var(--scale))!important;border-radius:calc(1.67vw * var(--scale))!important;box-shadow:none!important;background:0 0!important;display:inline-flex!important}.students-page__account-btn--pause{color:#a16207!important;border-color:#a16207!important}.students-page__account-btn--resume{color:#15803d!important;border-color:#15803d!important}.students-page__approval-tag.ant-tag{min-height:max(36px, calc(2.08vw * var(--scale)));padding:0 calc(.83vw * var(--scale));letter-spacing:.04em;border:none;border-radius:9999px;justify-content:center;align-items:center;margin:0;font-weight:700;line-height:1;display:inline-flex;font-size:var(--table-cell-font-size)!important}.students-page__approval-tag--approved{color:#166534!important;background:#dcfce7!important}.students-page__approval-tag--rejected{color:#991b1b!important;background:#fee2e2!important}.students-page__approval-tag--pending{color:#a16207!important;background:#fef3c7!important}.students-page__payment-select.ant-select{min-width:max(128px, calc(7.29vw * var(--scale)))!important;width:max(128px, calc(7.29vw * var(--scale)))!important;height:max(36px, calc(2.08vw * var(--scale)))!important}.students-page__payment-select .ant-select-selector{height:max(36px, calc(2.08vw * var(--scale)))!important;min-height:max(36px, calc(2.08vw * var(--scale)))!important;padding:0 calc(.94vw * var(--scale))!important;border-radius:calc(1.67vw * var(--scale))!important;box-shadow:none!important;background:#fff!important;border:1.5px solid #c3c6d7!important;align-items:center!important;display:flex!important}.students-page__payment-select.students-page__payment-select--paid .ant-select-selector{color:#166534!important;background:#f0fdf4!important;border-color:#86efac!important}.students-page__payment-select.students-page__payment-select--due-soon .ant-select-selector{color:#a16207!important;background:#fffbeb!important;border-color:#fcd34d!important}.students-page__payment-select.students-page__payment-select--pending .ant-select-selector{color:#c2410c!important;background:#fff7ed!important;border-color:#fdba74!important}.students-page__payment-select .ant-select-selection-item,.students-page__payment-select .ant-select-selection-placeholder{font-size:var(--table-cell-font-size)!important;align-items:center!important;font-weight:700!important;line-height:1.2!important;display:flex!important}.students-page__payment-select .ant-select-arrow{opacity:.75;font-size:max(12px, calc(.73vw * var(--scale)))!important;color:inherit!important;inset-inline-end:12px!important}.students-page__status-tag{padding:calc(.21vw * var(--scale)) calc(.63vw * var(--scale));letter-spacing:.02em;border:none;border-radius:9999px;margin:0;font-weight:700}.students-page__status-tag--paid{background:var(--teacher-success-soft)!important;color:#005236!important}.students-page__status-tag--pending{color:#a16207!important;background:#fff4d6!important}.students-page__txn-btn{width:max(36px, calc(2.08vw * var(--scale)))!important;height:max(36px, calc(2.08vw * var(--scale)))!important;min-width:max(36px, calc(2.08vw * var(--scale)))!important;border-radius:calc(.63vw * var(--scale))!important;color:var(--teacher-purple)!important;font-size:max(14px, calc(.94vw * var(--scale)))!important;border-color:#4648d433!important;padding:0!important}@media (width<=768px){.students-page__header{flex-direction:column;align-items:flex-start!important}.students-page__title.ant-typography{font-size:max(calc(1.88vw * var(--scale)), 26px)!important}.students-page__subtitle{font-size:max(calc(.83vw * var(--scale)), 14px)}}.roster-toolbar{margin-bottom:calc(1.25vw * var(--scale));box-shadow:var(--card-shadow-sm);--roster-toolbar-height:44px;--roster-toolbar-font-size:14px;--roster-toolbar-radius:8px;border:calc(.05vw * var(--scale)) solid var(--teacher-border-light)!important;border-radius:var(--card-radius)!important;background:var(--teacher-card-bg)!important}.roster-toolbar .ant-card-body{overflow-x:auto;padding:calc(1.04vw * var(--scale)) calc(1.25vw * var(--scale))!important}.roster-toolbar__row{width:100%;min-width:max-content}.roster-toolbar__row.ant-flex{align-items:center;flex-wrap:nowrap!important}.roster-toolbar__search{flex:auto;min-width:220px;max-width:none}.roster-toolbar__search.ant-input-affix-wrapper{height:var(--roster-toolbar-height);border-radius:var(--roster-toolbar-radius);font-size:var(--roster-toolbar-font-size);padding:0 12px}.roster-toolbar__search .ant-input{height:100%;line-height:1.4;font-size:var(--roster-toolbar-font-size)!important}.roster-toolbar__search .ant-input-prefix{color:#6b7280;margin-inline-end:10px;font-size:15px}.roster-toolbar__select{flex:none;min-width:200px;width:200px!important}.roster-toolbar__select.ant-select-single{height:var(--roster-toolbar-height)}.roster-toolbar__select .ant-select-selector{height:var(--roster-toolbar-height)!important;border-radius:var(--roster-toolbar-radius)!important;font-size:var(--roster-toolbar-font-size)!important;align-items:center!important;padding:0 12px!important}.roster-toolbar__select .ant-select-selection-item,.roster-toolbar__select .ant-select-selection-placeholder{line-height:calc(var(--roster-toolbar-height) - 2px)!important;font-size:var(--roster-toolbar-font-size)!important}.roster-toolbar__select .ant-select-arrow{color:var(--teacher-muted);font-size:12px}.roster-toolbar__export-btn{white-space:nowrap;flex:none;align-items:center;gap:8px;font-weight:500;height:var(--roster-toolbar-height)!important;border-radius:var(--roster-toolbar-radius)!important;color:var(--teacher-primary)!important;font-size:var(--roster-toolbar-font-size)!important;border-color:#004ac633!important;padding:0 16px!important;display:inline-flex!important}.roster-toolbar__export-btn .anticon{font-size:15px}.student-detail-page{max-width:1180px;margin:0 auto;padding-bottom:32px}.student-detail-page__back{color:#004ac6;padding-left:0}.student-detail-page__header{gap:16px;margin:10px 0 22px}.student-detail-page__header h2{color:#171a24;margin:0 0 4px}.student-detail-page__card{border:1px solid #e4e7ef;box-shadow:0 5px 18px #19233c0d}.student-detail-page__card .ant-card-head{border-bottom-color:#edf0f5;min-height:48px;padding:0 18px}.student-detail-page__card .ant-card-body{padding:18px}.student-detail-page__analytics .ant-statistic-title{color:#737686;font-size:12px}.student-detail-page__analytics .ant-statistic-content{color:#004ac6;font-size:22px}.student-detail-page__chart{border-bottom:1px solid #e4e7ef;align-items:end;gap:6px;height:120px;margin-top:18px;padding:12px 4px 0;display:flex}.student-detail-page__chart-column{color:#8a90a2;flex-direction:column;flex:1;justify-content:end;align-items:center;gap:5px;min-width:8px;height:100%;font-size:10px;display:flex}.student-detail-page__chart-bar{background:linear-gradient(#4f86e8,#004ac6);border-radius:5px 5px 0 0;width:100%;max-width:18px;min-height:4px}@media (width<=640px){.student-detail-page__header{flex-direction:column;align-items:flex-start!important}}:root,.app-shell{--scale:1;--teacher-primary:#004ac6;--teacher-primary-dark:#0059b8;--teacher-primary-soft:#2563eb1a;--teacher-text:#191c1d;--teacher-text-alt:#191c1e;--teacher-muted:#434655;--teacher-label:#414753;--teacher-subtle:#727785;--teacher-border:#c3c6d7;--teacher-border-light:#c3c6d733;--teacher-page-bg:#f8f9fa;--teacher-card-bg:#fff;--teacher-track-bg:#f2f4f7;--teacher-bar:#d7e2ff;--teacher-success:#006242;--teacher-success-soft:#6ffbbe;--teacher-purple:#4648d4;--teacher-purple-soft:#e1e0ff;--teacher-progress-track:#edeeef;--border-light:#e8edf0;--bg-white:#fff;--sidebar-width:calc(15vw * var(--scale));--header-height:clamp(56px, calc(4.17vw * var(--scale)), 80px);--content-max-width:min(100%, calc(75vw * var(--scale)));--content-padding-x:calc(2.08vw * var(--scale));--card-radius:calc(.63vw * var(--scale));--card-radius-lg:calc(1.67vw * var(--scale));--card-shadow:0 calc(.42vw * var(--scale)) calc(.63vw * var(--scale)) #0059b814;--card-shadow-sm:0 calc(.05vw * var(--scale)) calc(.1vw * var(--scale)) #0000000d;--grid-gap:calc(1.25vw * var(--scale))}.app-modal .ant-modal-header{margin-bottom:0;padding-bottom:16px}.app-modal .ant-modal-body{padding:8px 24px 24px}.app-modal__intro{color:#4a4a4a;margin:0 0 20px;font-size:14px;line-height:1.6}.app-modal-form .ant-form-item{margin-bottom:20px}.app-modal-form .ant-form-item-label{padding-bottom:8px!important}.app-modal-form .ant-form-item-label>label{color:#191c1e;height:auto;font-size:14px;font-weight:600}.app-modal-form .ant-input,.app-modal-form .ant-input-affix-wrapper{border-radius:10px!important;height:44px!important;min-height:44px!important;padding:0 12px!important;font-size:14px!important}.app-modal-form__alert{margin:0 0 20px}.app-modal-form__section{margin-bottom:20px}.app-modal-form__actions{border-top:1px solid #e8edf0;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.app-modal-form__actions .ant-btn{height:40px!important;min-height:40px!important;padding:0 18px!important}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-loading{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}
