.appLayout{background:#f5f6fa;flex-direction:column;width:100%;height:100dvh;display:flex;position:fixed;inset:0;overflow:hidden}.appLayout__topbar{z-index:60;flex-shrink:0;width:100%;display:none;position:sticky;top:0}.appLayout,.appLayout__body,.appLayout__main{width:100%}.appLayout__body{flex:1;width:100%;display:flex;overflow:hidden}.appLayout__main{-webkit-overflow-scrolling:touch;background:#f5f6fa;flex:1;min-width:0;overflow:hidden auto}.appLayout__content{padding:32px}.appLayout__backdrop{display:none}.appSidebar{background:#1e293b;flex-direction:column;flex-shrink:0;width:240px;display:flex;overflow:hidden}.appSidebar__brand{color:#fff;border-bottom:1px solid #ffffff26;padding:20px;font-size:22px;font-weight:700}.appSidebar__nav{flex:1;min-height:0;padding:16px;overflow-y:auto}.appSidebar__link{color:#e2e8f0;border-radius:14px;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;transition:all .2s;display:flex}.appSidebar__label{flex:1}.appSidebar__badge{color:#92400e;background:#fef3c7;border-radius:999px;margin-left:auto;padding:4px 8px;font-size:11px;font-weight:800;line-height:1}.appSidebar__link:hover{color:#fff;background:#334155}.appSidebar__link--active{color:#3b82f6;background:#334155}.appSidebar__footer{padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid #ffffff26;flex-shrink:0}.appSidebar__user{color:#9ca3af;margin-bottom:10px;font-size:14px}.appSidebar__logout{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;display:flex}.appSidebar__logout:hover{color:#fff;background:#334155}.appTopbar{z-index:1;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;height:72px;padding:0 20px;display:flex;position:relative;box-shadow:0 2px 12px #0f172a14}.appTopbar__left{align-items:center;gap:10px;display:flex}.appTopbar__logo{height:68px;display:block}@media (width<=768px){.appTopbar__logo{display:none}}.appTopbar__center{position:absolute;left:50%;transform:translate(-50%)}.appTopbar__start{align-items:center;gap:12px;display:flex}.appTopbar__title{color:#111827;font-size:18px;font-weight:700}.appTopbar__actions{align-items:center;gap:12px;display:flex}.appTopbar__impersonation{color:#3730a3;background:#eef2ff;border-radius:999px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.appTopbar__impersonationLabel{white-space:nowrap}.appTopbar__returnButton{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.appTopbar__actions--desktop{display:flex}.appTopbar__welcome{color:#4b5563}.appTopbar__menuButton,.appTopbar__logout{cursor:pointer;border:none;border-radius:10px;padding:8px 14px}.appTopbar__menuButton{color:#111827;background:#e5e7eb;display:none}.appTopbar__logout{color:#fff;background:linear-gradient(135deg,#7c3aed,#9333ea)}@media (width<=768px){.appLayout__topbar{display:block}.appLayout{height:calc(100dvh - 72px)}}@media (width<=900px){.appLayout__topbar{display:block}.appLayout{height:auto;min-height:100dvh;padding-top:0;position:relative;overflow:visible}.appLayout__body{display:block;overflow-y:visible}.appLayout__main{min-height:calc(100dvh - 72px);overflow-y:visible}.appLayout__content{padding:16px;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px))}.appTopbar{padding:0 16px}.appTopbar__actions--desktop{display:none}.appTopbar__menuButton{justify-content:center;align-items:center;font-size:18px;display:inline-flex}.appTopbar__title{font-size:16px}.appSidebar{z-index:40;-webkit-overflow-scrolling:touch;width:min(280px,84vw);height:auto;max-height:none;padding-bottom:env(safe-area-inset-bottom,0px);transition:transform .25s;position:fixed;top:72px;bottom:0;left:0;overflow:hidden auto;transform:translate(-100%);box-shadow:0 20px 40px #0f172a3d}.appSidebar__link{color:#ffffffd9;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:all .2s;display:flex}.appSidebar__icon{opacity:.9;flex-shrink:0}.appSidebar--open{transform:translate(0)}.appLayout__backdrop{z-index:30;background:#0f172a6b;border:none;display:block;position:fixed;inset:0}}@media (width<=540px){.appTopbar__title{font-size:15px}.appSidebar__user{font-size:13px}.appSidebar__logout{padding:9px;font-size:14px}}.appSidebar__nav::-webkit-scrollbar{width:4px}.appSidebar__nav::-webkit-scrollbar-track{background:0 0}.appSidebar__nav::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:10px}.appSidebar__nav::-webkit-scrollbar-thumb:hover{background:#fff9}.appSidebar__nav{scrollbar-width:thin;scrollbar-color:#fff6 transparent}.top-nav__brand{color:#7c3aed;align-items:center;gap:8px;font-size:1.5rem;font-weight:600;text-decoration:none;display:flex}.sidebar-brand{color:#fff;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.sidebar-brand__logo{object-fit:contain;width:36px;height:36px}.top-nav__brandImage{width:38px;height:38px}.dashboard-page{gap:22px;min-width:0;display:grid}.dashboard-hero h1{margin:0;font-size:30px}.dashboard-hero p,.dashboard-muted,.dashboard-empty,.dashboard-cardHeader p,.dashboard-listMeta{color:#64748b}.dashboard-chip{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.dashboard-admissionMenu{position:relative}.dashboard-admissionButton{color:#fff;cursor:pointer;background:#334155;border:none;border-radius:14px;align-items:center;gap:8px;padding:12px 16px;font-weight:700;display:inline-flex;box-shadow:0 12px 24px #4f46e52e}.dashboard-admissionDropdown{z-index:20;background:#fff;border:1px solid #e5e7eb;border-radius:16px;min-width:180px;padding:8px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 34px #0f172a24}.dashboard-admissionDropdownItem{text-align:left;color:#0f172a;cursor:pointer;background:0 0;border:none;border-radius:10px;width:100%;padding:11px 12px;font-weight:600}.dashboard-admissionDropdownItem:hover{background:#f8fafc}.dashboard-platformReturn{color:#3730a3;background:#eef2ff;border-radius:999px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.dashboard-platformReturnLabel{white-space:nowrap}.dashboard-platformReturnButton{color:#fff;cursor:pointer;background:#1e293b;border:none;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.dashboard-inlinePanel{gap:16px;display:grid}.dashboard-inlinePanelHeader{background:#fff;border:1px solid #e5e7eb;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 22px;display:flex;box-shadow:0 10px 30px #0f172a0f}.dashboard-inlinePanelHeader h2{margin:0}.dashboard-inlinePanelHeader p{color:#64748b;margin:8px 0 0}.dashboard-inlinePanelClose{color:#111827;cursor:pointer;background:#f3f4f6;border:none;border-radius:12px;padding:10px 14px;font-weight:700}.dashboard-inlineMessage{border-radius:14px;padding:14px 16px;font-weight:600}.dashboard-inlineMessage.success{color:#166534;background:#ecfdf5}.dashboard-inlineMessage.error{color:#b91c1c;background:#fef2f2}.dashboard-tenantPanel{gap:18px;padding:20px 22px;display:grid}.dashboard-tenantMeta{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.dashboard-tenantMetaItem{background:#f8fafc;border-radius:14px;gap:4px;padding:14px 16px;display:grid}.dashboard-tenantUrlRow{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dashboard-tenantUrlBox{gap:6px;display:grid}.dashboard-tenantUrlBox a{color:#0f172a;word-break:break-all;font-weight:700}.dashboard-tenantActions{flex-wrap:wrap;gap:12px;display:flex}.dashboard-tenantActions .dashboard-admissionButton{text-decoration:none}.dashboard-platformFormPanel{padding:20px 22px}.dashboard-platformForm{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.dashboard-platformForm label{color:#0f172a;gap:6px;font-size:14px;font-weight:600;display:grid}.dashboard-platformForm input,.dashboard-platformForm select{width:100%;font:inherit;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px}.dashboard-platformForm input:focus,.dashboard-platformForm select:focus{border-color:#2563eb;outline:2px solid #2563eb33}.dashboard-platformSecondaryButton{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:14px;align-items:center;gap:8px;padding:11px 15px;font-weight:700;display:inline-flex}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}@media (width>=1200px){.dashboard-stats--studentParent{grid-template-columns:repeat(4,minmax(280px,1fr))}.dashboard-stats--studentParent .dashboard-statCard{padding:20px}.dashboard-stats--studentParent .dashboard-statValue{font-size:clamp(1.8rem,2.4vw,2.3rem)}.dashboard-stats--studentParent .dashboard-statSubvalue{font-size:13px}}@media (width>=1400px){.dashboard-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-statCard{padding:16px}.dashboard-statValue{font-size:clamp(1.45rem,2vw,1.9rem)}.dashboard-statSubvalue{font-size:12px}}.dashboard-statCard,.dashboard-panel{background:#fff;border:1px solid #e5e7eb;border-radius:20px;box-shadow:0 12px 30px #0f172a0f}.dashboard-statCard{min-width:0;padding:18px;position:relative;overflow:hidden}.dashboard-statHeader{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dashboard-statCard:before{content:"";background:var(--accent-color,#1d4ed8);width:4px;position:absolute;inset:0 auto 0 0}.dashboard-statLabel{color:#64748b;font-size:13px;font-weight:700}.dashboard-statIcon{background:var(--accent-soft,#2563eb1a);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.dashboard-statValue{color:#0f172a;overflow-wrap:anywhere;margin-top:10px;font-size:clamp(1.75rem,3vw,1.25rem);font-weight:800}.dashboard-statSubvalue{color:#64748b;margin-top:8px;font-size:13px}.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.dashboard-insights{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:18px;display:grid}.dashboard-chartCard,.dashboard-chartCardWide{min-width:0}.dashboard-chartCardFull{grid-column:1/-1}.dashboard-chartMeta{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.dashboard-chartPill{color:#5b6474;background:#f8fafc;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:700}.dashboard-chartPill.positive{color:#15803d;background:#ecfdf5}.dashboard-chartPill.negative{color:#dc2626;background:#fff1f2}.dashboard-chartArea{min-width:0;position:relative}.teacher-dashboard__hero{align-items:stretch}.teacher-dashboard__heroCopy{align-content:start;gap:10px;max-width:700px;display:grid}.teacher-dashboard__attendanceCard{gap:16px;min-width:min(360px,100%);padding:22px;display:grid}.teacher-dashboard__attendanceHeader{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.teacher-dashboard__status{margin-top:8px;font-size:1.8rem;font-weight:800}.teacher-dashboard__status--idle{color:#9f1239}.teacher-dashboard__status--in{color:#15803d}.teacher-dashboard__status--out{color:#b45309}.teacher-dashboard__locationHint{color:#1d4ed8;background:#eff6ff;border-radius:999px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;font-weight:700;display:inline-flex}.teacher-dashboard__timer{justify-content:center;align-items:center;gap:10px;display:flex}.teacher-dashboard__timer div{text-align:center;color:#0f172a;background:#f8fafc;border-radius:18px;min-width:84px;padding:16px 12px;font-size:2.1rem;font-weight:800}.teacher-dashboard__timer span{color:#475569;font-size:2rem;font-weight:800}.teacher-dashboard__attendanceMeta{color:#64748b;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;display:flex}.teacher-dashboard__attendanceActions{flex-wrap:wrap;gap:12px;display:flex}.teacher-dashboard__primaryButton,.teacher-dashboard__secondaryButton{cursor:pointer;border:none;border-radius:14px;padding:14px 18px;font-weight:700}.teacher-dashboard__primaryButton{color:#fff;background:linear-gradient(135deg,#16a34a,#22c55e)}.teacher-dashboard__secondaryButton{color:#9a3412;background:#fff7ed;border:1px solid #fdba74}.teacher-dashboard__primaryButton:disabled,.teacher-dashboard__secondaryButton:disabled{cursor:not-allowed;opacity:.6}.teacher-dashboard__insights{grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.teacher-dashboard__barChart{min-height:320px}.teacher-dashboard__pendingList{gap:14px;display:grid}.teacher-dashboard__pendingItem{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;grid-template-columns:auto 1fr;gap:12px;padding:16px;display:grid}.teacher-dashboard__pendingItem strong{color:#0f172a;display:block}.teacher-dashboard__pendingItem p{color:#64748b;margin:6px 0 0}@media (width<=960px){.teacher-dashboard__insights{grid-template-columns:1fr}.teacher-dashboard__timer div{min-width:68px;font-size:1.7rem}}.dashboard-chartAreaLarge{height:300px}.dashboard-chartAreaDonut{height:260px}.dashboard-chartAreaBottom{height:280px}.dashboard-doughnutWrap{gap:18px;display:grid}.dashboard-doughnutCenter{pointer-events:none;justify-items:center;gap:2px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.dashboard-doughnutCenter strong{color:#0f172a;font-size:2rem;line-height:1}.dashboard-doughnutCenter span{color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.dashboard-chartSummary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.dashboard-chartSummaryCard{border-radius:16px;gap:6px;padding:14px 16px;display:grid}.dashboard-chartSummaryCard span{font-size:13px;font-weight:700}.dashboard-chartSummaryCard strong{color:#0f172a;font-size:1.6rem}.dashboard-chartSummaryCard.success{color:#15803d;background:#ecfdf5}.dashboard-chartSummaryCard.danger{color:#dc2626;background:#fff1f2}.dashboard-chartSummaryCard.info{color:#1d4ed8;background:#eff6ff}.dashboard-distributionGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.dashboard-distributionCard{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;min-width:0;padding:18px;overflow:hidden}.dashboard-distributionCard h3{color:#0f172a;margin:0 0 16px}.dashboard-distributionCard canvas{max-width:100%!important}.dashboard-chartFootnotes{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.dashboard-chartFootnotes span{color:#475569;background:#f8fafc;border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}.dashboard-stack{gap:18px;min-width:0;display:grid}.dashboard-panel{min-width:0;padding:20px}.dashboard-cardHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.dashboard-cardHeader h2{margin:0}.dashboard-list{gap:12px;display:grid}.dashboard-listItem{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.dashboard-adminTeacherAttendanceMeta{flex-shrink:0;align-content:center;justify-items:end;gap:8px;display:grid}.dashboard-listTitle{color:#0f172a;font-weight:700}.dashboard-listTitle--result{text-transform:uppercase;letter-spacing:.02em}.dashboard-listMeta{overflow-wrap:anywhere;margin-top:4px;font-size:13px}.dashboard-resultDate{color:#1d4ed8;margin-bottom:6px;font-size:13px;font-weight:700}.dashboard-priority{border-radius:999px;align-items:center;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.dashboard-priority.high{color:#be123c;background:#fff1f2}.dashboard-priority.medium{color:#b45309;background:#fffbeb}.dashboard-priority.low{color:#166534;background:#ecfdf5}.dashboard-tableWrap{-webkit-overflow-scrolling:touch;min-width:0;overflow-x:auto}.dashboard-table{border-collapse:collapse;width:100%;min-width:0}.dashboard-table th,.dashboard-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:14px 12px}.dashboard-table th{color:#64748b;background:#f8fafc;font-size:13px}.dashboard-badge{color:#3730a3;background:#eef2ff;border-radius:999px;align-items:center;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.dashboard-badge.pending{color:#b45309;background:#fffbeb}.dashboard-badge.partial{color:#1d4ed8;background:#eff6ff}.dashboard-badge.paid{color:#166534;background:#ecfdf5}.dashboard-resultScore{color:#0f172a;font-weight:700}.dashboard-empty{padding:18px 0}.dashboard-resultActions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.dashboard-resultNewWrap{align-items:center;gap:6px;display:inline-flex}.dashboard-resultPdfIcon{color:#ef4444;flex-shrink:0}.dashboard-badge.new{color:#166534;background:#ecfdf5}.dashboard-badge.newBatch{color:#be123c;background:#fff1f2}.dashboard-actionLink{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:none;border-radius:12px;padding:9px 12px;font-weight:700}.dashboard-actionLink.secondary{color:#334155;background:#f8fafc}.dashboard-actionLink--text{color:#1d4ed8;text-underline-offset:2px;background:0 0;border-radius:0;padding:0;text-decoration:underline}.dashboard-actionLink--reminder{white-space:nowrap;font-weight:700}@media (width<=1180px){.dashboard-insights,.dashboard-grid,.dashboard-distributionGrid{grid-template-columns:1fr}}@media (width<=720px){.dashboard-page{gap:16px}.dashboard-hero h1{font-size:2rem}.dashboard-chip{text-align:center;justify-content:center;width:100%}.dashboard-admissionMenu{width:100%}.dashboard-admissionButton{justify-content:center;width:100%}.dashboard-admissionDropdown{min-width:0;left:0;right:0}.dashboard-stats{grid-template-columns:1fr}.dashboard-panel{border-radius:18px;padding:16px}.dashboard-listItem{flex-direction:column}.dashboard-priority,.dashboard-resultActions{width:100%}.dashboard-resultActions{justify-content:flex-start}.dashboard-chartMeta{justify-content:flex-start;width:100%}.dashboard-chartAreaLarge{height:250px}.dashboard-chartAreaDonut,.dashboard-chartAreaBottom{height:220px}.dashboard-distributionCard{padding:14px}.dashboard-distributionCard h3{margin-bottom:12px;font-size:1rem}.dashboard-chartSummary{grid-template-columns:1fr}}@media (width<=560px){.dashboard-chartAreaBottom{height:180px}.dashboard-chartFootnotes{grid-template-columns:1fr;display:grid}}@media (width<=640px){.dashboard-tableWrap{margin:0 -4px;padding:0 4px 6px}.dashboard-table{min-width:620px}}@media (width<=480px){.dashboard-hero h1{font-size:1.75rem}.dashboard-statCard{padding:16px}.dashboard-actionLink{justify-content:center;width:100%}}.dashboard-greeting{color:#111827;margin:0;font-size:28px;font-weight:700}.dashboard-username{color:#374151;margin-top:4px;font-size:20px;font-weight:600}.dashboard-subtext{color:#6b7280;margin-top:4px;font-size:14px}.dashboard-description{color:#4b5563;max-width:500px;margin-top:10px;font-size:14px;line-height:1.5}.dashboard-hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.dashboard-hero-left{flex-direction:column;display:flex}@media (width>=1200px){.dashboard-stats--studentParent{grid-template-columns:repeat(4,minmax(260px,1fr))}}@media (width>=1400px){.dashboard-stats:not(.dashboard-stats--studentParent){grid-template-columns:repeat(4,minmax(0,1fr))}}.dataTableWrap{-webkit-overflow-scrolling:touch;min-width:0}.dataTable{border-collapse:collapse;width:100%;min-width:0}@media (width<=1100px){.dataTable{min-width:760px}}.dataTable__row{cursor:pointer}.dataTable__row:hover{background:#f8fafc!important}.dataTable__subtle{color:#64748b;margin-top:4px;font-size:13px}.dataTable__strong{font-weight:700}.dataTableStatusPill{text-transform:capitalize;border-radius:999px;align-items:center;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.dataTableStatusPill--active,.dataTableStatusPill--ready{color:#166534;background:#dcfce7}.dataTableStatusPill--inactive,.dataTableStatusPill--pending{color:#b45309;background:#fef3c7}.dataTableStatusPill--left,.dataTableStatusPill--error{color:#b91c1c;background:#fee2e2}.dataTableActionMenu{align-items:center;gap:8px;display:inline-flex;position:relative}.dataTableViewButton{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:none;border-radius:8px;padding:8px 10px}.dataTableActionTrigger{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px}.dataTableActionTrigger:hover{background:#f3f4f6}.dataTableActionDropdown{z-index:20;background:#fff;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;min-width:150px;display:flex;position:absolute;top:34px;right:0;overflow:hidden;box-shadow:0 10px 25px #00000014}.dataTableActionDropdown button{text-align:left;cursor:pointer;background:0 0;border:none;padding:10px 14px;font-size:14px}.dataTableActionDropdown button:hover{background:#f9fafb}.dataTableActionDropdown button:last-child[data-danger=true]{color:#b91c1c}.dataTableSelectButton{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:none;border-radius:8px;padding:8px 12px;font-weight:700}.dataTableSelectButton--selected{color:#fff;background:#1d4ed8}.studentStatusPill{text-transform:capitalize;border-radius:999px;align-items:center;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.studentStatusPill--active{color:#166534;background:#dcfce7}.studentStatusPill--inactive{color:#b45309;background:#fef3c7}.formGrid{grid-template-columns:1fr;gap:16px;display:grid}@media (width>=768px){.formGrid{grid-template-columns:repeat(2,1fr)}}@media (width>=1024px){.formGrid{grid-template-columns:repeat(3,1fr)}}.teachersPage{gap:20px;min-width:0;display:grid}.teachersPage__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.teachersPage__hero{flex:420px;min-width:0}.teachersPage__title{margin:0;font-size:28px;line-height:1.1}.teachersPage__subtitle{color:#6b7280;max-width:72ch;margin-top:8px;margin-bottom:0}.teachersPage__primaryAction{flex:none}.teachersPage__stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;display:grid}.teacherStatCard{min-width:0}.teacherListCard{overflow:hidden}.teacherListTableWrap{padding:0}.teacherListTable{min-width:760px}@media (width<=768px){.teachersPage__header{align-items:stretch}.teachersPage__hero,.teachersPage__primaryAction{flex-basis:100%}.teachersPage__title{font-size:24px}.teachersPage__primaryAction{justify-content:center;width:100%}.teachersPage__stats{grid-template-columns:1fr}.teacherListCard{border-radius:16px;padding:14px}}.exams-page{gap:20px;display:grid}.exams-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.exams-header h1{margin:0;font-size:28px}.exams-header p,.exams-cardHeader p,.exams-muted,.exams-subtle,.exams-empty{color:#6b7280}.exams-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;min-width:0;padding:22px;overflow:hidden;box-shadow:0 12px 32px #0f172a0f}.exams-cardHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.exams-cardHeader h2{margin:0}.exams-message{border-radius:16px;padding:16px 18px;font-weight:600}.exams-messageSuccess{color:#166534;background:#f0fdf4}.exams-messageError{color:#b91c1c;background:#fef2f2}.exams-form{gap:16px;display:grid}.exams-formGrid{gap:14px;display:grid}.exams-formGrid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.exams-formGrid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.exams-formGrid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.exams-field{color:#374151;font-size:14px;font-weight:600;display:grid}.exams-field span{margin-bottom:6px;display:inline-block}.exams-field input,.exams-field select,.exams-field textarea,.exams-table input,.exams-table select{border:1px solid #d1d5db;border-radius:12px;outline:none;width:90%;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.exams-field textarea{resize:vertical}.exams-field input:focus,.exams-field select:focus,.exams-field textarea:focus,.exams-table input:focus,.exams-table select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.exams-formActions,.exams-inlineActions,.exams-resultsToolbar,.exams-badgeGroup,.exams-resultsFooter,.exams-selectedInfo{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.exams-button{cursor:pointer;border:none;border-radius:12px;padding:12px 16px;font-weight:700;transition:transform .15s,opacity .2s,background .2s}.exams-button:hover{transform:translateY(-1px)}.exams-button:disabled{opacity:.65;cursor:not-allowed;transform:none}.exams-buttonPrimary{color:#fff;background:#334155}.exams-buttonSecondary{color:#1e3a8a;background:#eff6ff}.exams-buttonDanger{color:#be123c;background:#fff1f2}.exams-tableWrap{overflow-x:auto}.exams-table{border-collapse:collapse;width:100%;min-width:860px}.exams-table th,.exams-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:14px}.exams-table th{color:#6b7280;background:#f8fafc;font-size:13px}.exams-table tbody tr.is-selected{background:#eff6ff}.exams-tableResults{min-width:1080px}.exams-resultsCard{gap:18px}.exams-filterGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.exams-selectedInfo{color:#334155;background:#f8fafc;border-radius:14px;margin-bottom:18px;padding:14px 16px}.exams-selectedInfo strong{color:#0f172a}.exams-tabs{background:#f3f4f6;border-radius:14px;gap:8px;margin-bottom:18px;padding:6px;display:inline-flex}.exams-tab{color:#4b5563;cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 14px;font-weight:700}.exams-tab.is-active{color:#1d4ed8;background:#fff;box-shadow:0 6px 18px #0f172a14}.exams-uploadPanel{gap:14px;display:grid}.exams-uploadBox{color:#1e3a8a;background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px dashed #93c5fd;border-radius:16px;gap:8px;width:fit-content;padding:18px;font-weight:700;display:grid}.exams-uploadBox input{color:#111827}.exams-uploadHint{color:#6b7280;font-size:14px}.exams-resultsFooter{justify-content:flex-end;margin-top:18px}.exams-feedbackBadge{color:#3730a3;background:#eef2ff;border-radius:999px;align-items:center;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.exams-dataPill{color:#334155;background:#f8fafc;border-radius:999px;align-items:center;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.exams-dataPill.is-pass{color:#166534;background:#ecfdf5}.exams-dataPill.is-fail{color:#b91c1c;background:#fef2f2}.exams-badge{color:#334155;background:#f8fafc;border-radius:999px;align-items:center;padding:8px 12px;font-size:13px;font-weight:700;display:inline-flex}@media (width<=960px){.exams-filterGrid,.exams-formGrid--two,.exams-formGrid--three,.exams-formGrid--four{grid-template-columns:1fr}}.portal-login{background:radial-gradient(circle at 0 0,#7c3aed3d,#0000 28%),radial-gradient(circle at 100% 100%,#8b5cf647,#0000 32%),linear-gradient(#f5f3ff 0%,#fff 52%);min-height:100vh;padding:32px 20px}.portal-login__shell{grid-template-columns:minmax(0,1.08fr) minmax(360px,460px);align-items:stretch;gap:28px;width:min(1180px,100%);min-height:calc(100vh - 64px);margin:0 auto;display:grid}.portal-login__intro{flex-direction:column;justify-content:center;padding:32px 12px 32px 8px;display:flex}.portal-login__backLink{color:#5b21b6;align-items:center;gap:8px;width:fit-content;margin-bottom:28px;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-flex}.portal-login__brand{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:30px;display:flex}.portal-login__brandRow{align-items:center;gap:12px;display:inline-flex}.portal-login__brandImage{object-fit:contain;width:auto;height:68px}.portal-login__brandText{color:#7c3aed;letter-spacing:-.04em;font-family:Syne,sans-serif;font-size:clamp(1.45rem,3vw,1.9rem);font-weight:800}.portal-login__brandHighlight{color:#fd6900}.portal-login__brandSubtitle{color:#6b7280;font-size:.92rem;line-height:1.6}.portal-login__eyebrow{color:#6d28d9;letter-spacing:.06em;text-transform:uppercase;background:#ede9fe;border:1px solid #c4b5fd;border-radius:999px;align-items:center;width:fit-content;margin-bottom:20px;padding:7px 14px;font-size:.78rem;font-weight:800;display:inline-flex}.portal-login__intro h1{color:#1e1033;letter-spacing:-.06em;max-width:640px;font-family:Syne,sans-serif;font-size:clamp(2.6rem,3.7vw,4.35rem);line-height:1.04}.portal-login__intro>p{color:#6b7280;max-width:620px;margin-top:20px;font-size:1.02rem;line-height:1.8}.portal-login__highlights{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.portal-login__highlights div{background:#ffffffd1;border:1px solid #e9d5ff;border-radius:18px;padding:18px 18px 17px;box-shadow:0 16px 40px #5b21b614}.portal-login__highlights strong{color:#1e1033;margin-bottom:7px;font-size:.95rem;display:block}.portal-login__highlights span{color:#6b7280;font-size:.82rem;line-height:1.65}.portal-login__panel{flex-direction:column;justify-content:center;align-items:center;display:flex}.portal-login__card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #e5e7ebf2;border-radius:28px;width:min(100%,440px);padding:34px 32px 30px;box-shadow:0 26px 70px #1118271f}.portal-login__badge{border-radius:999px;align-items:center;gap:10px;margin-bottom:18px;padding:8px 16px 8px 10px;font-size:.8rem;font-weight:800;display:inline-flex}.portal-login__badge--admin{color:#6d28d9;background:#ede9fe}.portal-login__badge--parent{color:#166534;background:#dcfce7}.portal-login__badge--teacher{color:#1d4ed8;background:#dbeafe}.portal-login__badge--student{color:#be185d;background:#fce7f3}.portal-login__badgeIcon{background:#ffffffc2;border-radius:999px;place-items:center;width:28px;height:28px;display:grid}.portal-login__card h2{color:#1e1033;letter-spacing:-.05em;font-family:Syne,sans-serif;font-size:2rem}.portal-login__desc{color:#4b5563;margin-top:6px;font-size:.98rem;font-weight:700}.portal-login__hint{color:#6b7280;margin-top:8px;margin-bottom:24px;font-size:.86rem;line-height:1.7}.portal-login__form{gap:16px;display:grid}.portal-login__field label{color:#1f2937;margin-bottom:8px;font-size:.84rem;font-weight:800;display:block}.portal-login__field input{width:100%;font:inherit;color:#1f2937;box-sizing:border-box;background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.portal-login__field input:focus{outline:none;font-size:14px;transition:border .2s}.password-fieldWrap{width:100%;position:relative}.input-field--password{padding-right:48px}.password-toggle{color:#6b7280;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.password-toggle:hover{color:#6d28d9}.input-field:focus{border-color:#7c3aed;box-shadow:0 0 0 4px #7c3aed1a}.portal-login__fieldRow{justify-content:space-between;align-items:center;gap:12px;display:flex}.portal-login__passwordWrap{position:relative}.portal-login__passwordWrap input{padding-right:54px}.portal-login__passwordToggle{color:#6b7280;cursor:pointer;background:0 0;border:0;place-items:center;padding:4px;display:grid;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.portal-login__error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;padding:11px 14px;font-size:.84rem}.portal-login__submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c3aed,#9333ea);border:0;border-radius:16px;width:100%;padding:15px 18px;font-size:.96rem;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;box-shadow:0 14px 28px #7c3aed47}.portal-login__submit:hover{transform:translateY(-1px);box-shadow:0 18px 34px #7c3aed57}.portal-login__submit:disabled{opacity:.72;cursor:not-allowed;box-shadow:none;transform:none}.portal-login__footer{text-align:center;border-top:1px solid #ede9fe;margin-top:12px;padding-top:20px}.portal-login__footer>span{color:#6b7280;margin-bottom:12px;font-size:.8rem;display:block}.portal-login__roleLinks{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.portal-login__roleLinks a{color:#6b7280;background:#f5f3ff;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:700;text-decoration:none}.portal-login__roleLinks a.active{color:#fff;background:#7c3aed}.portal-login__footerBackLink{color:#5b21b6;justify-content:center;align-items:center;gap:8px;width:fit-content;margin:14px auto 0;font-size:.84rem;font-weight:700;text-decoration:none;display:none}@media (width<=980px){.portal-login__shell{grid-template-columns:1fr;min-height:auto}.portal-login__intro{order:2;padding:12px 0 8px}.portal-login__highlights{grid-template-columns:1fr}.portal-login__panel{order:1;justify-content:flex-start}}@media (width<=640px){.portal-login__intro{display:none}.portal-login__footerBackLink{display:inline-flex}.portal-login__card{border-radius:24px;padding:24px 20px 22px}.portal-login__brandImage{width:36px;height:36px}.portal-login__brandText{align-items:center;font-size:1.3rem;display:flex}.portal-login__brandSubtitle{font-size:.86rem}.portal-login__intro h1{font-size:2.35rem}.portal-login__fieldRow{flex-direction:column;align-items:flex-start}}.portal-login__forgotWrap{justify-content:flex-end;display:flex}.portal-login__forgot{color:#6d28d9;cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:700}.portal-login__forgot:hover{text-decoration:underline}.mobile-only{display:none}@media (width<=640px){.mobile-only{display:flex}.portal-login__topBar{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.portal-login__backInline{color:#5b21b6;white-space:nowrap;align-items:center;text-decoration:none;display:flex}.portal-login__cardHeader{justify-content:center;margin-bottom:16px}.portal-login__badge{white-space:nowrap;margin-bottom:0}.portal-login__card>.portal-login__badge{display:none}}.catalogPage,.catalogModule{gap:20px;display:grid}.catalogHero{background:linear-gradient(135deg,#f5efe1 0%,#e4f0e8 100%);border:1px solid #1a363614;border-radius:20px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.catalogHero h1{color:#17313a;margin:0 0 8px;font-size:2rem}.catalogHero p{color:#46606a;margin:0}.catalogHero--course{background:linear-gradient(135deg,#eef4ff 0%,#f8f3ff 100%)}.catalogHero--dark{background:linear-gradient(135deg,#191c23 0%,#101217 100%);border-color:#ffffff14}.catalogHero--dark h1,.catalogHero--dark p{color:#f8fafc}.catalogHero--batch{background:#fff;border:1px solid #0f172a14}.catalogHero__action--batch{color:#fff;box-shadow:none;background:#111827}.catalogHero__action{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:999px;align-items:center;gap:10px;padding:14px 20px;font-weight:700;display:inline-flex;box-shadow:0 16px 34px -24px #6366f1e6}.catalogHero__action--course{background:#2563eb;box-shadow:0 16px 34px -24px #2563ebe6}.catalogHero__action--dark{color:#111827;box-shadow:none;background:#fff}.catalogStats,.catalogStatsGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.catalogStats__card,.catalogStatCard{background:#fff;border:1px solid #0f172a14;border-radius:18px;align-items:flex-start;gap:14px;padding:18px;display:flex;box-shadow:0 16px 40px -30px #0f172a73}.catalogStats__icon,.catalogStatCard__icon{color:#4f46e5;background:#4f46e51f;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.catalogStats__content span,.catalogStatCard span{color:#607482;font-size:.9rem;font-weight:600}.catalogStats__content strong,.catalogStatCard strong{color:#17313a;margin-top:4px;font-size:1.8rem;line-height:1;display:block}.catalogStats__content small{color:#7b8d99}.catalogStatCard--green .catalogStatCard__icon{color:#059669;background:#05966924}.catalogStatCard--amber .catalogStatCard__icon{color:#d97706;background:#d9770624}.catalogStatCard--blue .catalogStatCard__icon{color:#2563eb;background:#2563eb24}.catalogStatCard--pink .catalogStatCard__icon{color:#db2777;background:#db277724}.catalogStatCard--violet .catalogStatCard__icon{color:#7c3aed;background:#7c3aed24}.catalogStatCard--dark{box-shadow:none;background:#1a1d24;border-color:#ffffff0f}.catalogStatCard--dark span,.catalogStatCard--dark strong{color:#f8fafc}.catalogStatCard--batch{background:#fff;border-color:#0f172a14;box-shadow:0 16px 40px -30px #0f172a73}.catalogStatCard--batch span,.catalogStatCard--batch strong{color:#17313a}.catalogPage__alert{border-radius:14px;padding:12px 16px;font-weight:600}.catalogPage__alert--error{color:#b42318;background:#fff1f2;border:1px solid #fecdd3}.catalogPage__alert--success{color:#027a48;background:#ecfdf3;border:1px solid #abefc6}.catalogPage__loading{background:#fff;border:1px solid #0f172a14;border-radius:16px;padding:18px}.catalogPage__loading--dark{color:#f8fafc;background:#1a1d24;border-color:#ffffff0f}.catalogPage__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.catalogCard{background:#fff;border:1px solid #0f172a14;border-radius:20px;gap:18px;padding:20px;display:grid}.catalogModule--dark .catalogCard{background:#1a1d24;border-color:#ffffff0f}.catalogModule--batch .catalogCard{background:#fff;border-color:#0f172a14}.catalogModule--dark .catalogCard__header h2,.catalogModule--dark .catalogCard__header p,.catalogModule--dark .catalogTable__row,.catalogModule--dark .catalogTable__head,.catalogModule--dark .catalogList__item strong,.catalogModule--dark .catalogList__item span,.catalogModule--dark .catalogList__item small,.catalogModule--dark .catalogForm label{color:#f8fafc}.catalogModule--dark .catalogList__item,.catalogModule--dark .catalogTable__row{background:#20242d;border-color:#ffffff0f}.catalogModule--dark .catalogForm input,.catalogModule--dark .catalogForm select,.catalogModule--dark .catalogForm textarea{color:#f8fafc;background:#11151c;border-color:#ffffff1f}.catalogModule--dark .catalogButton--secondary{color:#f8fafc;background:#2f3440}.catalogModule--dark .catalogLinkButton{color:#facc15}.catalogModule--batch .catalogLinkButton{color:#111827}.catalogTableCard{background:#fff;border:1px solid #0f172a14;border-radius:20px;overflow:hidden}.catalogModule--dark .catalogTableCard{background:#1a1d24;border-color:#ffffff0f}.catalogModule--batch .catalogTableCard{background:#fff;border-color:#0f172a14}.catalogCard--wide{grid-column:1/-1}.catalogCard__header h2{color:#17313a;margin:0 0 6px}.catalogCard__header p{color:#5d7180;margin:0}.catalogForm{gap:14px;display:grid}.catalogForm--grid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalogForm label{color:#314854;gap:6px;font-size:.92rem;font-weight:600;display:grid}.catalogForm input,.catalogForm select,.catalogForm textarea{width:90%;font:inherit;background:#fbfdff;border:1px solid #d0d9e3;border-radius:12px;padding:11px 12px}.catalogForm textarea{resize:vertical}.catalogForm__actions{gap:10px;display:flex}.catalogForm__actions--full{grid-column:1/-1}.catalogButton{color:#fff;cursor:pointer;background:#17313a;border:none;border-radius:12px;padding:11px 16px;font-weight:700}.catalogButton:disabled{opacity:.7;cursor:wait}.catalogButton--secondary{color:#17313a;background:#edf2f7}.catalogList{gap:10px;display:grid}.catalogList__item{background:#f8fafc;border:1px solid #0f172a0f;border-radius:14px;justify-content:space-between;align-items:flex-start;gap:14px;padding:14px;display:flex}.catalogList__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.catalogList__item div{gap:4px;display:grid}.catalogList__item strong{color:#17313a}.catalogList__item span,.catalogList__item small{color:#607482}.catalogLinkButton{color:#0f766e;cursor:pointer;background:0 0;border:none;font-weight:700}.catalogTable{gap:10px;display:grid}.catalogTable__head,.catalogTable__row{grid-template-columns:1.3fr 1fr 1.2fr .9fr 1fr .8fr .8fr .7fr;align-items:center;gap:12px;display:grid}.catalogTable__head{color:#607482;text-transform:uppercase;padding:0 6px;font-size:.86rem;font-weight:700}.catalogTable__row{color:#17313a;background:#f8fafc;border:1px solid #0f172a0f;border-radius:14px;padding:14px}@media (width<=1080px){.catalogStats,.catalogStatsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogHero{flex-direction:column;align-items:flex-start}.catalogPage__grid{grid-template-columns:1fr}.catalogForm--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalogTable__head,.catalogTable__row{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=720px){.catalogStats,.catalogStatsGrid{grid-template-columns:1fr}.catalogHero__action{justify-content:center;width:100%}.catalogForm--grid{grid-template-columns:1fr}.catalogTable__head{display:none}.catalogTable__row{grid-template-columns:1fr 1fr}.catalogList__item{flex-direction:column}.catalogList__actions{justify-content:flex-start;width:100%}}.catalogTableV2{gap:0;min-width:960px;display:inline-grid}.catalogBatchTableWrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.catalogBatchBoard{background:#fff;border:1px solid #0f172a14;border-radius:28px;overflow:hidden;box-shadow:0 18px 48px -30px #0f172a1f}.catalogBatchBoard__toolbar{border-bottom:1px solid #0f172a14;justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.catalogBatchBoard__filters{align-items:center;gap:10px;display:flex}.catalogBatchFilterBtn{color:#475569;cursor:pointer;background:#fff;border:1px solid #0f172a26;border-radius:999px;padding:10px 14px;font-size:.85rem;font-weight:700;transition:all .2s}.catalogBatchFilterBtn:hover,.catalogBatchFilterBtn.active{color:#3730a3;background:#4f46e514;border-color:#4f46e540}.catalogBatchBoard__filterSelect{display:none}.catalogBatchBoard__filterSelect label{color:#475569;align-items:center;gap:10px;font-size:.95rem;display:flex}.catalogBatchBoard__filterSelect select{color:#111827;cursor:pointer;background:#fff;border:1px solid #0f172a26;border-radius:12px;padding:10px 12px}.catalogBatchBoard__title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.catalogBatchBoard__title h2{color:#17313a;margin:0;font-size:1.9rem}.catalogBatchBoard__chip{color:#475569;background:#0f172a0f;border-radius:999px;align-items:center;padding:6px 12px;font-size:.84rem;font-weight:700;display:inline-flex}.catalogBatchBoard__add{color:#111827;cursor:pointer;background:#fff;border:none;border-radius:14px;align-items:center;gap:8px;padding:12px 18px;font-weight:700;display:inline-flex}.catalogTableV2__head,.catalogTableV2__row{white-space:nowrap;grid-template-columns:.7fr 2.5fr 2fr 1.4fr 2fr 2fr 1fr 1.5fr;align-items:center;column-gap:24px;padding:18px 24px;display:grid}.catalogTableV2__head{text-transform:uppercase;opacity:.75;color:#475569;background:#f8fafc;border-bottom:1px solid #0f172a14;font-size:12px}.catalogTableV2__row{background:#fff;border-bottom:1px solid #0f172a14;border-radius:0;transition:all .25s}.catalogTableV2__row:hover{background:#f9fafb;transform:none}.catalogTableV2__name{align-items:center;gap:12px;display:flex}.catalogTableV2__icon{background:#232733;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.catalogTableV2__row strong{color:#0f172a;font-size:15px}.catalogTableV2__row p{opacity:.65;color:#475569;margin-top:2px;font-size:12px}.catalogTableV2__row div,.catalogTableV2__row span{color:#475569}.catalogTableV2__timing span{align-items:center;gap:6px;display:flex}.catalogTableV2__timing p{opacity:.6;font-size:12px}.catalogTableV2__capacity{align-items:center;gap:10px;display:flex}.progressBar{background:#2a2f3a;border-radius:10px;width:110px;height:6px;overflow:hidden}.progressBar__fill{background:linear-gradient(90deg,#22c55e,#16a34a);height:100%;box-shadow:0 0 8px #22c55e99}.catalogTableV2__capacity span{color:#9ca3af;font-size:13px}.statusBadge{text-transform:capitalize;border-radius:999px;justify-content:center;align-items:center;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.statusBadge--active{color:#047857;background:#10b98129}.statusBadge--inactive{color:#b91c1c;background:#f8717129}.statusBadge--upcoming{color:#92400e;background:#f59e0b29}.catalogActionBtn{color:#0f172a;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 10px;font-size:.95rem;transition:background .2s,color .2s}.catalogActionBtn:hover{background:#0f172a0d}.catalogActionBtn--danger{color:#dc2626}.catalogActionBtns{justify-content:flex-start;gap:10px;display:flex}@media (width<=1080px){.catalogBatchBoard__toolbar{flex-direction:row;align-items:flex-start}}@media (width<=720px){.catalogBatchBoard__filters{display:none}.catalogBatchBoard__filterSelect{width:100%;display:block}.catalogBatchBoard__filterSelect label,.catalogBatchBoard__filterSelect select{width:100%}.catalogBatchBoard__add{justify-content:center;width:100%}}.catalogTable{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;margin-top:20px;overflow:hidden;box-shadow:0 2px 8px #0000000a}.catalogTable thead{background:#f8fafc}.catalogTable th{text-align:left;color:#64748b;text-transform:uppercase;letter-spacing:.04em;padding:14px 16px;font-size:13px;font-weight:600}.catalogTable td{color:#1e293b;border-top:1px solid #f1f5f9;padding:14px 16px;font-size:14px}.catalogTable tbody tr{transition:background .2s}.catalogTable tbody tr:hover{background:#f9fafb}.catalogTable td:first-child{color:#0f172a;font-weight:600}.catalogStatus{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.catalogStatus--active{color:#166534;background:#dcfce7}.catalogStatus--inactive{color:#92400e;background:#fef3c7}.catalogDescription{color:#64748b;max-width:300px;font-size:13px}.catalogActions{gap:10px;display:flex}.catalogLinkButton{color:#4f46e5;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:13px;font-weight:500;transition:all .2s}.catalogLinkButton:hover{color:#4338ca;background:#eef2ff}.catalogDataTable{border-collapse:collapse;width:100%}.catalogDataTable thead{background:#f8fafc}.catalogModule--dark .catalogDataTable thead,.catalogModule--batch .catalogDataTable thead{background:#20242d}.catalogDataTable th,.catalogDataTable td{text-align:left;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:16px 18px}.catalogModule--dark .catalogDataTable th,.catalogModule--dark .catalogDataTable td{color:#f8fafc;border-bottom-color:#ffffff0f}.catalogModule--batch .catalogDataTable th,.catalogModule--batch .catalogDataTable td{color:#1e293b;border-bottom-color:#f1f5f9}.catalogDataTable th{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}.catalogDataTable tbody tr:hover{background:#f9fafb}.catalogModule--dark .catalogDataTable tbody tr:hover{background:#20242d}.catalogModule--batch .catalogDataTable tbody tr:hover{background:#f9fafb}.catalogDataTable td:first-child{font-weight:600}.catalogActions{flex-wrap:nowrap;align-items:center}@media (width<=720px){.catalogDataTable{white-space:nowrap;display:block;overflow-x:auto}}.client-landing{color:#1f2937;background:#fff}.client-shell{width:min(1180px,100% - 32px);margin:0 auto}.client-section{padding:88px 0}.client-section--muted{background:linear-gradient(#f8fbff 0%,#eef4ff 100%)}.client-sectionIntro{text-align:center;max-width:720px;margin:0 auto 44px}.client-sectionIntro h2{color:#0f172a;margin:0 0 14px;font-size:clamp(2rem,3vw,3rem);font-weight:800}.client-sectionIntro p{color:#64748b;line-height:1.7}.client-chip,.client-badge{border-radius:999px;justify-content:center;align-items:center;font-size:.84rem;font-weight:700;display:inline-flex}.client-chip{color:#1d4ed8;background:#dbeafe;margin-bottom:18px;padding:9px 14px}.client-chip--light{color:#eff6ff;background:#ffffff24;border:1px solid #fff3}.client-badge{color:#1e3a8a;background:#dbeafe;padding:8px 12px}.client-badge--soft{color:#0f766e;background:#ccfbf1}.client-grid{gap:24px;display:grid}.client-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.client-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.client-grid--compact{grid-template-columns:repeat(2,minmax(280px,420px));justify-content:center}.client-card{background:#fff;border:1px solid #e2e8f0;border-radius:28px;overflow:hidden;box-shadow:0 18px 45px #0f172a14}.client-button{cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-weight:700;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s;display:inline-flex}.client-button:hover{transform:translateY(-1px)}.client-button--primary{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#2563eb 0%,#0f52ba 100%)}.client-button--secondary{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe;width:100%}.client-button--ghost{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.client-button--light{color:#0f3d91;background:#fff}.client-button--outlineLight{color:#fff;background:0 0;border-color:#ffffff59}.client-button--block{width:100%}.client-nav{z-index:50;padding:14px 0;transition:background .2s,box-shadow .2s,-webkit-backdrop-filter .2s,backdrop-filter .2s;position:fixed;inset:0 0 auto}.client-nav--scrolled{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;box-shadow:0 10px 30px #0f172a14}.client-nav__inner{justify-content:space-between;align-items:center;gap:20px;display:flex}.client-nav__brand{cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:inline-flex}.client-nav__brandMark,.client-footer__logoMark{color:#fff;border-radius:14px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.client-nav__brandMark img,.client-footer__logoMark img{object-fit:contain;width:24px;height:24px}.client-nav__brandText{color:#fff;white-space:nowrap;font-size:1.2rem;font-weight:800;display:grid}.client-nav__brandText small{white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;font-size:.72rem;font-weight:600}.client-nav--scrolled .client-nav__brandText,.client-nav--scrolled .client-nav__link,.client-nav--scrolled .client-nav__menuButton{color:#0f172a;white-space:nowrap}.client-nav--scrolled .client-nav__brandText small{color:#64748b;white-space:nowrap}.client-nav__desktop{align-items:center;gap:28px;display:flex}.client-nav__mobileTop,.client-nav__mobileBar{display:none}.client-nav__links,.client-nav__actions{align-items:center;gap:14px;display:flex}.client-nav__featurePills,.client-nav__mobileHighlights{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.client-nav__featurePill{color:#fff7d6;white-space:nowrap;background:#ffd60a29;border:1px solid #fff3;border-radius:999px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:.82rem;font-weight:700;display:inline-flex}.client-nav__link,.client-nav__menuButton{color:#ffffffeb;cursor:pointer;background:0 0;border:0}.client-nav__link{white-space:nowrap;font-weight:600}.client-nav--scrolled .client-nav__featurePill{color:#92400e;background:#fef3c7;border-color:#fde68a}.client-nav__menuButton{display:none}.client-language{position:relative}.client-language__trigger,.client-nav__mobileSelect{color:#0f172a;background:#fffffff2;border:1px solid #cbd5e1;border-radius:14px;align-items:center;gap:8px;min-height:44px;padding:0 14px;display:inline-flex}.client-language__menu{background:#fff;border:1px solid #dbeafe;border-radius:18px;min-width:180px;padding:12px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 45px #0f172a24}.client-language__label{color:#64748b;margin-bottom:8px;font-size:.8rem;font-weight:700}.client-language__option{text-align:left;color:#0f172a;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:10px 12px;display:block}.client-language__option.active,.client-language__option:hover{color:#1d4ed8;background:#eff6ff}.client-language__caret{transition:transform .2s}.client-language__caret.open{transform:rotate(180deg)}.client-nav__mobile{display:none}.client-hero{background:linear-gradient(135deg,#153363 0%,#1d4ed8 50%,#0284c7 100%);padding:88px 0 72px;position:relative;overflow:hidden}.client-hero__backdrop{background:radial-gradient(circle at 100% 0,#ffffff2e,#0000 28%),radial-gradient(circle at 0 100%,#38bdf833,#0000 30%);position:absolute;inset:0}.client-hero__content{grid-template-columns:1.1fr .9fr;align-items:start;gap:36px;display:grid;position:relative}.client-hero__copy{align-content:start;display:grid}.client-hero__title{color:#fff;margin:0 0 18px;font-size:clamp(2.6rem,5vw,4.8rem);font-weight:900;line-height:.98}.client-hero__title span{color:#bfdbfe}.client-hero__text{color:#ffffffd1;max-width:620px;font-size:1.05rem;line-height:1.8}.client-hero__actions{flex-wrap:wrap;gap:14px;margin:26px 0 28px;display:flex}.client-hero__facilityRibbon{color:#fff3b0;letter-spacing:.02em;background:#facc1524;border:1px solid #facc1561;border-radius:999px;justify-self:start;align-items:center;margin:4px 0 16px;padding:10px 16px;font-size:.92rem;font-weight:800;display:inline-flex}.client-hero__facilities{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.client-heroFacility{color:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff29;border-radius:20px;align-items:flex-start;gap:12px;padding:16px;display:flex}.client-heroFacility__icon{color:#fff3b0;background:#facc1524;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.client-heroFacility strong{color:#fff;margin-bottom:6px;font-size:1rem;line-height:1.2;display:block}.client-heroFacility p{color:#ffffffc7;margin:0;font-size:.88rem;line-height:1.45}.client-hero__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:8px;display:grid}.client-statCard{color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #ffffff24;border-radius:22px;gap:8px;padding:16px 18px;display:grid}.client-statCard strong{color:#fff;font-size:1.1rem}.client-statCard span{font-size:.84rem;line-height:1.4}.client-hero__imageWrap{background:#ffffff1f;border-radius:28px;padding:14px;position:relative;box-shadow:0 24px 50px #0f172a47}.client-hero__image{object-fit:cover;border-radius:22px;width:100%;height:500px;display:block}.client-hero__floating{background:#fff;border-radius:20px;gap:4px;padding:16px 18px;display:grid;position:absolute;box-shadow:0 16px 30px #0f172a2e}.client-hero__floating strong{color:#0f172a}.client-hero__floating span{color:#64748b;font-size:.9rem}.client-hero__floating--left{bottom:34px;left:-16px}.client-hero__floating--right{top:36px;right:-16px}.client-batchCard{padding:28px}.client-batchCard__top,.client-batchCard__footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.client-batchCard__category{color:#2563eb;margin-bottom:10px;font-size:.85rem;font-weight:700;display:inline-block}.client-batchCard h3,.client-courseCard h3,.client-facultyCard h3,.client-contactInfo h3,.client-success h3,.client-footer h3{color:#0f172a;margin:0}.client-batchCard__meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0;display:grid}.client-batchCard__meta div,.client-courseCard__meta span,.client-facultyCard__meta span{color:#334155;background:#f8fafc;border-radius:16px;align-items:center;gap:8px;padding:12px 14px;display:inline-flex}.client-batchCard__faculty{color:#64748b;margin:0 0 24px}.client-batchCard__seats{color:#1d4ed8;font-weight:700}.client-courseCard__image,.client-facultyCard__image{width:100%;display:block}.client-courseCard__image{object-fit:cover;height:220px}.client-courseCard__body,.client-facultyCard__body{gap:14px;padding:24px;display:grid}.client-courseCard__body p,.client-facultyCard__body p,.client-footer p,.client-contactInfo p,.client-success p{color:#64748b;line-height:1.7}.client-courseCard__meta{flex-wrap:wrap;gap:10px;display:flex}.client-facultyCard__image{height:320px}.client-facultyCard__body strong{color:#2563eb}.client-facultyCard__actions{gap:10px;display:flex}.client-iconButton{color:#1e3a8a;cursor:pointer;background:#eff6ff;border:1px solid #dbeafe;border-radius:14px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:42px;display:inline-flex}.client-contact{grid-template-columns:.95fr 1.05fr;gap:28px;display:grid}.client-contact__details,.client-contact__formCard{background:#fff;border:1px solid #e2e8f0;border-radius:30px;padding:30px;box-shadow:0 18px 45px #0f172a14}.client-contact__details{gap:18px;display:grid}.client-contact__cta{background:linear-gradient(#fff 0%,#f8fbff 100%);align-content:start;gap:20px;display:grid}.client-contact__cta h3{color:#0f172a;margin:0}.client-contact__cta p{color:#64748b;line-height:1.75}.client-contact__ctaList{gap:14px;display:grid}.client-contact__ctaList div{background:#eff6ff;border-radius:18px;gap:6px;padding:16px 18px;display:grid}.client-contact__ctaList strong{color:#0f172a}.client-contact__ctaList span{color:#475569}.client-contact__ctaActions{gap:12px;display:grid}.client-contactInfo{gap:14px;display:flex}.client-contactInfo__icon{color:#1d4ed8;background:#dbeafe;border-radius:16px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.client-contact__map{border-radius:22px;min-height:280px;overflow:hidden}.client-contact__map iframe{border:0;width:100%;height:100%}.client-form{gap:20px;display:grid}.client-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.client-form label{gap:8px;display:grid}.client-form span,.client-nav__mobileLabel{color:#334155;font-weight:700}.client-form input,.client-form select,.client-form textarea{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:14px;width:100%;min-height:48px;padding:12px 14px}.client-form textarea{resize:vertical}.client-success{text-align:center;place-items:center;gap:14px;min-height:100%;display:grid}.client-success svg{color:#16a34a}.client-footer{color:#cbd5e1;background:#0f172a;padding:74px 0 30px}.client-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;display:grid}.client-footer__logo{align-items:center;gap:12px;margin-bottom:18px;display:inline-flex}.client-footer__logo strong,.client-footer h3{color:#fff}.client-footer__socials,.client-footer__legal{flex-wrap:wrap;gap:10px;display:flex}.client-footer__social{color:#e2e8f0;background:#ffffff14;border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.client-footer__links{gap:10px;display:grid}.client-footer__links button,.client-footer__legal button{text-align:left;color:#cbd5e1;cursor:pointer;background:0 0;border:0;padding:0}.client-footer__bottom{border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:16px;margin-top:34px;padding-top:24px;display:flex}@media (width<=1080px){.client-hero__content,.client-contact,.client-footer__grid,.client-grid--four{grid-template-columns:1fr}.client-grid--three,.client-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.client-hero__facilities{grid-template-columns:1fr}.client-hero__visual{width:100%;max-width:640px;margin:0 auto}}@media (width<=900px){.client-nav__desktop{display:none}.client-nav{padding:10px 0}.client-nav__inner{display:none}.client-nav__mobile{display:block}.client-nav__mobileBar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-between;align-items:center;gap:14px;display:flex}.client-nav__brand--mobile{min-width:0}.client-nav__brand--mobile .client-nav__brandMark{width:48px;height:48px}.client-nav__brand--mobile .client-nav__brandMark img{width:54px;height:54px}.client-nav__brand--mobile .client-nav__brandText{white-space:normal;font-size:.96rem;line-height:1.1}.client-nav__brand--mobile .client-nav__brandText small{font-size:.64rem}.client-nav__mobileLogin{flex-shrink:0;min-height:40px;padding:0 14px}}@media (width<=720px){.client-section{padding:72px 0}.client-hero{padding:118px 0 56px}.client-hero__stats,.client-grid--two,.client-grid--three,.client-grid--compact,.client-batchCard__meta,.client-form__grid{grid-template-columns:1fr}.client-hero__floating--left,.client-hero__floating--right{margin-top:14px;position:static}.client-hero__image{height:380px}.client-batchCard,.client-contact__details,.client-contact__formCard{padding:22px}.client-nav__mobileBar{padding:10px 12px}.client-nav__brand--mobile{gap:10px}.client-nav__brand--mobile .client-nav__brandMark{width:42px;height:42px}.client-nav__brand--mobile .client-nav__brandMark img{width:30px;height:30px}.client-nav__brand--mobile .client-nav__brandText{font-size:.88rem}.client-nav__mobileLogin{min-width:auto;padding:0 12px;font-size:.84rem}.client-footer__bottom,.client-batchCard__top,.client-batchCard__footer,.client-facultyCard__actions{flex-direction:column;align-items:stretch}}.client-footer__bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.client-footer__powered{opacity:.8;font-size:16px}.client-footer__powered a{color:#fd6900;font-weight:500;text-decoration:none}.marketing-page{--purple:#7c3aed;--purple2:#6d28d9;--violet:#8b5cf6;--light:#ede9fe;--white:#fff;--gray:#f5f3ff;--dark:#1e1033;--text:#374151;--muted:#6b7280;--border:#e5e7eb;color:var(--text);background:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif}.marketing-nav{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#ffffffeb;justify-content:space-between;align-items:center;gap:20px;height:68px;padding:0 16px;display:flex;position:fixed;top:0;left:0;right:0}.marketing-nav__brand{color:var(--purple);align-items:center;gap:10px;font-family:Syne,Plus Jakarta Sans,system-ui,sans-serif;font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.marketing-nav__brandImage{object-fit:contain;flex-shrink:0;width:auto;height:68px}.marketing-nav__links{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.marketing-nav__links a{color:var(--muted);white-space:nowrap;border-radius:8px;padding:7px 16px;font-size:.88rem;font-weight:500;text-decoration:none}.marketing-nav__links a:hover{color:var(--purple);background:var(--gray)}.marketing-nav__links a.active{color:var(--purple);background:var(--gray);box-shadow:inset 0 0 0 1px #7c3aed1f}.marketing-nav__actions{align-items:center;gap:10px;display:flex}.marketing-language{align-items:center;gap:8px;display:inline-flex;position:relative}.marketing-language__trigger{border:1px solid var(--border);height:40px;color:var(--dark);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:8px;padding:0 12px;font-size:.9rem;font-weight:600;display:inline-flex}.marketing-language__caret{transition:transform .2s}.marketing-language.open .marketing-language__caret{transform:rotate(180deg)}.marketing-language__dropdown{border:1px solid var(--border);opacity:0;pointer-events:none;transform-origin:100% 0;z-index:120;background:#fff;border-radius:12px;min-width:100%;padding:2px 6px;transition:opacity .2s,transform .2s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px)scale(.97);box-shadow:0 20px 50px #00000024}.marketing-language.open .marketing-language__dropdown{opacity:1;pointer-events:all;transform:none}.marketing-language__option{width:100%;color:var(--dark);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 12px;font-size:.84rem;font-weight:600}.marketing-language__option:hover,.marketing-language__option.active{background:var(--gray);color:var(--purple)}.marketing-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-weight:700;text-decoration:none;transition:transform .15s,background .2s,color .2s,border-color .2s,box-shadow .2s;display:inline-flex}.marketing-button:hover{transform:translateY(-1px)}.marketing-button--ghost{border:1.5px solid var(--purple);color:var(--purple);white-space:nowrap;background:0 0;padding:9px 20px}.marketing-button--ghost:hover{background:var(--purple);color:#fff}.marketing-button--primary{color:#fff;background:var(--purple);border:none;padding:9px 20px;box-shadow:0 4px 14px #7c3aed59}.marketing-button--primary:hover{background:var(--purple2)}.marketing-button--outline{color:var(--dark);background:#fff;border:1.5px solid #d1d5db;padding:13px 32px}.marketing-button--outline:hover{border-color:var(--purple);color:var(--purple)}.marketing-button--white{color:var(--purple);background:#fff;border:none;padding:13px 32px}.marketing-button--transparent{color:#fff;background:#ffffff26;border:1.5px solid #ffffff59;padding:13px 32px}.marketing-button--large{min-height:32px}.marketing-login{position:relative}.marketing-login__caret{transition:transform .2s}.marketing-login.open .marketing-login__caret{transform:rotate(180deg)}.marketing-login__dropdown{border:1px solid var(--border);opacity:0;pointer-events:none;transform-origin:100% 0;background:#fff;border-radius:14px;width:240px;padding:8px;transition:opacity .2s,transform .2s;position:absolute;top:calc(100% + 10px);right:0;transform:translateY(-6px)scale(.97);box-shadow:0 20px 50px #00000024}.marketing-login.open .marketing-login__dropdown{opacity:1;pointer-events:all;transform:none}.marketing-login__label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:6px 12px 4px;font-size:.68rem;font-weight:700}.marketing-login__item{color:var(--dark);border-radius:9px;align-items:center;gap:12px;padding:10px 12px;font-size:.86rem;font-weight:600;text-decoration:none;display:flex}.marketing-login__item:hover{background:var(--gray)}.marketing-login__item span:last-child{flex-direction:column;gap:2px;display:flex}.marketing-login__item small{color:var(--muted);font-size:.71rem;font-weight:500}.marketing-login__icon{border-radius:8px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.marketing-login__icon.admin{background:#fef3c7}.marketing-login__icon.parent{background:#d1fae5}.marketing-login__icon.teacher{background:#ede9fe}.marketing-login__icon.student{background:#dbeafe}.marketing-hero{text-align:center;background:linear-gradient(#f5f3ff 0%,#fff 60%);flex-direction:column;align-items:center;padding:130px 5% 0;display:flex}.marketing-hero__badge{background:var(--light);color:var(--purple);border:1px solid #c4b5fd;border-radius:999px;align-items:center;gap:7px;margin-bottom:24px;padding:5px 16px;font-size:.76rem;font-weight:700;display:inline-flex}.marketing-hero__dot{background:var(--purple);border-radius:50%;width:7px;height:7px}.marketing-hero h1{letter-spacing:-1.5px;color:var(--dark);max-width:780px;font-family:Syne,Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(2.4rem,5.5vw,3.8rem);font-weight:800;line-height:1.1}.marketing-hero h1 span{color:var(--purple)}.marketing-hero__sub{max-width:560px;color:var(--muted);margin:20px auto 38px;font-size:1.02rem;line-height:1.75}.marketing-hero__actions{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.marketing-mockup{width:100%;max-width:1050px;margin-top:64px;position:relative}.marketing-mockup__glow{filter:blur(30px);z-index:0;background:radial-gradient(#7c3aed40,#0000 70%);width:80%;height:120px;position:absolute;bottom:-60px;left:50%;transform:translate(-50%)}.marketing-browser{z-index:1;border:1px solid #d1d5db;border-radius:16px;position:relative;overflow:hidden;transform:perspective(1200px)rotateX(3deg);box-shadow:0 30px 80px #00000024,0 8px 24px #7c3aed1a}.marketing-browser__bar{background:#f3f4f6;border-bottom:1px solid #e5e7eb;align-items:center;gap:8px;padding:10px 16px;display:flex}.marketing-browser__bar>span{border-radius:50%;width:11px;height:11px}.marketing-browser__bar>span:first-child{background:#fc5b57}.marketing-browser__bar>span:nth-child(2){background:#fbbd2d}.marketing-browser__bar>span:nth-child(3){background:#29c340}.marketing-browser__url{max-width:320px;color:var(--muted);text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex:1;margin-left:10px;padding:4px 12px;font-size:.72rem}.marketing-dash{background:#f9fafb;flex-direction:column;gap:18px;min-height:420px;padding:24px;display:flex}.marketing-dash__topline{text-align:left;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.marketing-dash__greeting{color:var(--dark);font-size:1rem;font-weight:800}.marketing-dash__subtitle{color:var(--muted);margin-top:2px;font-size:.72rem}.marketing-dash__tabs{background:#ede9fe;border-radius:999px;align-items:center;gap:8px;padding:6px;display:inline-flex}.marketing-dash__tab{color:var(--purple2);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:8px 14px;font-size:.76rem;font-weight:800}.marketing-dash__tab.active{background:#fff;box-shadow:0 6px 16px #7c3aed24}.marketing-dash__heroImage{object-fit:contain;object-position:top center;background:#fff;border:1px solid #dbe4f0;border-radius:18px;width:100%;display:block;box-shadow:0 18px 34px #0f172a29}.marketing-dash__highlights{flex-wrap:wrap;gap:10px;display:flex}.marketing-dash__highlight{color:var(--dark);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:10px 12px;font-size:.76rem;font-weight:700;display:inline-flex;box-shadow:0 8px 20px #1118270f}.marketing-dash__highlight svg{color:#16a34a}.marketing-trusted,.marketing-section{text-align:center;padding:80px 5%}.marketing-trusted p{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:28px;font-size:.78rem;font-weight:600}.marketing-trusted__logos{flex-wrap:wrap;justify-content:center;gap:20px;display:flex}.marketing-trusted__logos div{border:1.5px solid var(--border);color:var(--muted);border-radius:10px;padding:10px 24px;font-size:.82rem;font-weight:700}.marketing-section--soft{background:linear-gradient(#f5f3ff 0%,#fff 100%)}.marketing-section__tag{text-transform:uppercase;letter-spacing:.1em;color:var(--purple);margin-bottom:12px;font-size:.74rem;font-weight:700}.marketing-section__tag--light{color:#c4b5fd}.marketing-section__title{letter-spacing:-1px;color:var(--dark);margin-bottom:12px;font-family:Syne,Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:800}.marketing-section__title--light{color:#fff}.marketing-section__title--left{text-align:left}.marketing-section__sub{color:var(--muted);max-width:560px;margin:0 auto 52px;font-size:.95rem;line-height:1.7}.marketing-section__sub--light{color:#ffffff94}.marketing-features,.marketing-portals{gap:22px;max-width:1100px;margin:0 auto;display:grid}.marketing-features{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.marketing-feature{border:1.5px solid var(--border);text-align:left;background:#fff;border-radius:16px;padding:28px 24px}.marketing-feature:hover{border-color:#c4b5fd;transform:translateY(-4px);box-shadow:0 16px 40px #7c3aed1a}.marketing-feature__icon{background:var(--light);width:44px;height:44px;color:var(--purple);border-radius:11px;place-items:center;margin-bottom:16px;display:grid}.marketing-feature h3{color:var(--dark);margin-bottom:8px;font-size:1rem;font-weight:700}.marketing-feature p{color:var(--muted);font-size:.83rem;line-height:1.65}.marketing-section--dark{background:var(--dark)}.marketing-portals{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:900px}.marketing-portal{color:inherit;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:28px 20px;text-decoration:none}.marketing-portal:hover{border-color:var(--violet);background:#7c3aed33;transform:translateY(-4px)}.marketing-portal__icon{color:#fff;margin-bottom:12px}.marketing-portal h3{color:#fff;margin-bottom:6px;font-size:1rem;font-weight:700}.marketing-portal p{color:#ffffff73;font-size:.8rem;line-height:1.6}.marketing-portal span{color:var(--violet);margin-top:16px;font-size:.78rem;font-weight:700;display:inline-block}.marketing-about{grid-template-columns:1fr 1fr;align-items:center;gap:64px;max-width:1100px;margin:0 auto;padding:90px 5%;display:grid}.marketing-about p{color:var(--muted);margin-bottom:14px;font-size:.93rem;line-height:1.8}.marketing-about__stats{gap:32px;margin-top:24px;display:flex}.marketing-about__stats strong{color:var(--purple);font-family:Syne,Plus Jakarta Sans,system-ui,sans-serif;font-size:2rem;display:block}.marketing-about__stats span{color:var(--muted);font-size:.75rem}.marketing-about__card{color:#fff;background:linear-gradient(135deg,#7c3aed,#5b21b6);border-radius:20px;padding:40px 32px}.marketing-about__card h3{margin-bottom:20px;font-size:1.1rem;font-weight:700}.marketing-about__check{align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.marketing-about__check span{background:#fff3;border-radius:50%;flex-shrink:0;place-items:center;width:18px;height:18px;margin-top:2px;font-size:.65rem;display:grid}.marketing-about__check p{color:#ffffffe0;margin:0}.marketing-contact{flex-wrap:wrap;justify-content:center;gap:24px;margin-top:32px;display:flex}.marketing-contact div{border:1.5px solid var(--border);background:#fff;border-radius:16px;min-width:200px;padding:12px 18px}.marketing-contact span{margin-bottom:12px;font-size:1.5rem;display:inline-block}.marketing-contact strong{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:6px;font-size:.8rem;font-weight:700;display:block}.marketing-contact p{color:var(--purple);font-size:.92rem;font-weight:600}.marketing-cta{text-align:center;background:linear-gradient(135deg,#7c3aed 0%,#4c1d95 100%);padding:80px 5%}.marketing-cta h2{color:#fff;margin-bottom:14px;font-family:Syne,Plus Jakarta Sans,system-ui,sans-serif;font-size:clamp(1.8rem,4vw,2.8rem)}.marketing-cta p{color:#ffffffa6;margin-bottom:32px}.marketing-cta__actions{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.marketing-footer{background:var(--dark);color:#ffffff59;text-align:center;padding:28px 5%;font-size:.8rem}.marketing-footer span{color:var(--violet)}@media (width<=900px){.marketing-nav__links,.marketing-button--ghost{display:none}.marketing-browser{transform:none}.marketing-dash__topline{flex-direction:column;align-items:stretch}.marketing-dash__tabs{align-self:flex-start}.marketing-about{grid-template-columns:1fr;gap:40px}}@media (width<=640px){.marketing-nav{gap:10px}.marketing-nav__brand{flex-shrink:1;gap:6px;min-width:0;font-size:.8rem}.marketing-nav__brandImage{width:24px;height:24px}.marketing-nav__actions{flex-shrink:0;gap:6px;min-width:0}.marketing-language{gap:6px;min-width:0}.marketing-language__trigger{min-width:92px;height:36px;padding:0 8px;font-size:.82rem}.marketing-button--primary{padding:9px 14px;font-size:.88rem}.marketing-hero{padding:110px 16px 0}.marketing-section,.marketing-trusted,.marketing-about,.marketing-cta{padding-left:16px;padding-right:16px}.marketing-dash{padding:18px 14px}.marketing-dash__tabs{justify-content:space-between;width:100%}.marketing-dash__tab{flex:1}.marketing-dash__heroImage{border-radius:14px}.marketing-about__stats{flex-wrap:wrap;gap:18px}.marketing-contact div{width:100%}}@media (width<=420px){.marketing-nav{gap:8px;padding:0 8px}.marketing-nav__brand{letter-spacing:-.02em;font-size:.84rem}.marketing-nav__brandImage{width:22px;height:22px}.marketing-language__trigger{min-width:82px;max-width:82px;padding:0 6px;font-size:.78rem}.marketing-button--primary{gap:4px;padding:8px 12px;font-size:.82rem}.marketing-login__caret{width:12px;height:12px}}.contact-card{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.phone-list{flex-direction:column;gap:4px;display:flex;border:none!important}.phone-list a,.whatsapp-link{color:#7c3aed;font-weight:600;text-decoration:none}.whatsapp-link:hover{text-decoration:underline}.marketing-social{text-align:center;margin-top:28px}.social-icons{justify-content:center;gap:16px;margin-top:10px;display:flex}.social-icons a{color:#7c3aed;background:#f5f3ff;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;transition:all .2s;display:flex}.social-icons a:hover{color:#fff;background:#7c3aed;transform:translateY(-3px)}.exam-card{background:#fff;border-radius:16px;align-items:center;gap:20px;padding:24px;display:flex;box-shadow:0 2px 12px #0000000f}@media (width<=768px){.exam-card{grid-template-columns:1fr;display:grid}.exam-actions{justify-content:flex-start}}:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{background:#fff;margin:0;overflow-x:hidden}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-.9px;margin:0 0 8px;font-size:34px}@media (width<=1024px){h1{font-size:28px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:22px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}input,select,textarea,button{font:inherit}input,select,textarea{color:#111827;background:#fff}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}
