@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.31988l_ccedte.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.2tuy5pz7dlieh.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.2dbetqa9o8jxf.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.1uyisp29ctx0d.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.1rgnod-3esatf.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0r6juujl39pe6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}
:root{--corevia-navy:#0b2e6b;--corevia-orange:#f97316;--corevia-teal:#1383a6;--corevia-bg:#f2f4f7;--background:#f2f4f7;--foreground:#172033;--surface:#fff;--border:#d7deea}html[data-theme=dark]{--background:#071527;--foreground:#eef2f7;--surface:#0d1f35;--border:#1d3c63}html{height:100%}html,body{width:100%;max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--foreground);background:var(--background);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}a{color:inherit;text-decoration:none}#root,body{min-height:100vh}.full-width{width:100%}.center-screen,.auth-screen{background:radial-gradient(circle at 18% 12%,#2563eb21,#0000 32%),linear-gradient(135deg,#f8fafc 0%,#eef4ff 48%,#f6f7fb 100%);place-items:center;min-height:100vh;padding:24px;display:grid}html[data-theme=dark] .center-screen,html[data-theme=dark] .auth-screen{background:radial-gradient(circle at 18% 12%,#2563eb2e,#0000 32%),linear-gradient(135deg,#10131a 0%,#141a27 48%,#0f1117 100%)}.auth-card{width:min(100%,460px);box-shadow:0 20px 60px #0f172a1f}.login-role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.login-role-card{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:92px;color:var(--foreground);text-align:left;cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.login-role-card .anticon{color:#2563eb;margin-top:2px;font-size:20px}.login-role-card span{gap:4px;min-width:0;display:grid}.login-role-card strong,.login-role-card small{overflow-wrap:anywhere}.login-role-card small{color:color-mix(in srgb, var(--foreground) 62%, transparent);line-height:1.35}.login-role-card.is-active{background:color-mix(in srgb, #2563eb 9%, var(--surface));border-color:#2563eb}.app-layout{background:var(--background);min-height:calc(100vh - 45px)}.ant-layout,.app-layout>.ant-layout,.ant-layout-content,.ant-card,.ant-card-body,.ant-tabs,.ant-tabs-content,.ant-tabs-content-holder,.ant-table-wrapper,.ant-space,.page-stack{min-width:0;max-width:100%}.credit-footer{width:100%;min-height:45px;color:color-mix(in srgb, var(--foreground) 62%, transparent);background:var(--surface);border-top:1px solid var(--border);text-align:center;justify-content:center;align-items:center;padding:12px 16px;font-size:13px;line-height:1.4;display:flex}.desktop-sider{border-right:1px solid var(--border)}.brand{color:#2563eb;white-space:nowrap;align-items:center;height:64px;padding:0 20px;font-size:18px;font-weight:750;display:flex}.app-header{z-index:20;background:color-mix(in srgb, var(--surface) 92%, transparent);border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 20px;display:flex;position:sticky;top:0}.app-content{min-width:0;padding:24px;overflow-x:hidden}.page-stack{width:100%}.mobile-only,.mobile-button-emoji{display:none}.score-positive{color:#16a34a}.score-negative{color:#dc2626}.report-toolbar{margin-bottom:16px}.activity-form{gap:8px}.activity-form .ant-form-item{margin-bottom:8px}.activity-form .ant-input{min-width:260px}.class-filter-select{width:min(100%,360px)}.drive-connect-card{background:color-mix(in srgb, var(--surface) 88%, var(--background));border-style:dashed}.drive-connect-card .ant-card-head{min-height:48px}.drive-info-text{max-width:980px;color:color-mix(in srgb, var(--foreground) 72%, transparent);line-height:1.65;margin-bottom:0!important}.report-document-header .ant-typography{margin-bottom:0}.report-detail-table .ant-table-thead>tr>th{font-weight:700}.class-report-document{flex-direction:column;gap:24px;width:100%;display:flex}.holiday-list .ant-list-item{align-items:flex-start}.holiday-empty{margin-top:12px}.custom-calendar{border:1px solid var(--border);border-radius:8px;width:100%;overflow:hidden}.custom-calendar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:10px 12px;display:flex}.custom-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.custom-calendar-weekday,.custom-calendar-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0}.custom-calendar-weekday:nth-child(7n),.custom-calendar-day:nth-child(7n){border-right:0}.custom-calendar-weekday{background:color-mix(in srgb, var(--surface) 86%, var(--background));color:color-mix(in srgb, var(--foreground) 70%, transparent);text-align:center;padding:8px 4px;font-size:12px;font-weight:700}.custom-calendar-day{background:var(--surface);min-height:54px;padding:7px;position:relative}.custom-calendar-day.is-outside-month{background:color-mix(in srgb, var(--background) 70%, var(--surface))}.custom-calendar-day.is-outside-month .holiday-day-number{opacity:.36}.custom-calendar-day.is-holiday .holiday-day-number{font-weight:800}.custom-calendar-day.is-today{outline-offset:-2px;outline:2px solid #2563eb}.notification-popover{width:min(360px,100vw - 32px)}.messages-list .ant-list-item{align-items:flex-start}.messages-empty-copy{text-align:center;max-width:520px;margin:8px auto 0}.invite-code-box{background:color-mix(in srgb, #2563eb 8%, var(--surface));color:#2563eb;letter-spacing:4px;text-align:center;border:1px dashed #2563eb;border-radius:8px;padding:14px 18px;font-size:28px;font-weight:800}.invite-qr{align-self:center;width:180px;height:180px}.drive-connect-card{overflow:hidden}.drive-menu-disabled{opacity:.42}.drive-locked-panel{background:color-mix(in srgb, var(--surface) 74%, var(--background));border-style:dashed!important}.drive-locked-content{opacity:.42;filter:grayscale(.4);pointer-events:none;margin-top:16px}.drive-info-text{white-space:pre-line;max-width:980px;line-height:1.65}.student-portal{background:var(--background);min-height:100vh;color:var(--foreground);padding:24px}.student-portal-header{justify-content:space-between}.student-course-layout{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.student-course-sidebar{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;padding:14px;position:sticky;top:16px}.student-course-button{border:1px solid var(--border);width:100%;min-height:58px;color:var(--foreground);text-align:left;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.student-course-button.is-active{background:color-mix(in srgb, #2563eb 9%, var(--surface));border-color:#2563eb}.student-course-button span:last-child{gap:2px;min-width:0;display:grid}.student-course-button strong,.student-course-button small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-course-button small{color:color-mix(in srgb, var(--foreground) 62%, transparent)}.student-course-color{border-radius:999px;flex:none;width:10px;height:10px;display:inline-flex}.student-course-main,.student-course-title{min-width:0}.student-course-title{justify-content:space-between}.student-calendar{border:1px solid var(--border);border-radius:8px;width:100%;overflow:hidden}.student-calendar .custom-calendar-day.has-assignment{background:color-mix(in srgb, #2563eb 5%, var(--surface))}.student-calendar-markers{flex-wrap:wrap;justify-content:flex-end;gap:4px;max-width:calc(100% - 14px);display:flex;position:absolute;bottom:7px;right:7px}.student-calendar-marker{border-radius:999px;width:8px;height:8px;display:inline-flex}.student-calendar-marker-due{border:2px solid;background:0 0!important}.private-lesson-calendar .custom-calendar-day{min-height:96px}.private-lesson-calendar .custom-calendar-day.has-private-lesson{background:color-mix(in srgb, var(--corevia-orange) 7%, var(--surface))}.private-lesson-day-list{gap:4px;margin-top:10px;display:grid}.private-lesson-chip{border-left:3px solid var(--corevia-teal);background:color-mix(in srgb, var(--corevia-teal) 11%, var(--surface));max-width:100%;color:var(--foreground);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:3px 6px;font-size:11px;line-height:1.25;display:flex;overflow:hidden}.private-lesson-chip>span:first-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.private-lesson-payment-icon{color:#fff;border-radius:999px;flex:none;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:inline-flex}.private-lesson-payment-icon.is-paid{background:#16a34a}.private-lesson-payment-icon.is-unpaid{background:#f59e0b}.private-lesson-chip-completed{border-left-color:#16a34a}.private-lesson-chip-not-done,.private-lesson-chip-cancelled{border-left-color:#dc2626}.private-lesson-chip-postponed{border-left-color:#f59e0b}.private-lesson-more{color:color-mix(in srgb, var(--foreground) 62%, transparent);font-size:11px}.private-report-options{flex-wrap:wrap;gap:8px 16px;width:100%;margin:10px 0;display:flex}.private-report-preview{border-color:color-mix(in srgb, var(--corevia-teal) 24%, var(--border))}.hidden-file-input{display:none}.private-payment-student-select{min-width:240px}.private-payment-collapse .ant-collapse-header{align-items:center!important}.private-payment-summary-tags{justify-content:flex-end;max-width:100%}.private-student-list-item .ant-list-item-meta-description{min-width:0}.private-invite-panel{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:280px;display:grid}.private-invite-box{border:1px dashed color-mix(in srgb, var(--corevia-teal) 42%, var(--border));background:color-mix(in srgb, var(--corevia-teal) 5%, var(--surface));border-radius:8px;min-width:0;padding:10px}.private-invite-qr{border:1px solid var(--border);background:#fff;border-radius:6px;flex:none;width:76px;height:76px}.private-invite-code{background:color-mix(in srgb, var(--corevia-orange) 12%, var(--surface));color:var(--corevia-navy);letter-spacing:2px;border-radius:6px;padding:6px 8px;font-size:16px;font-weight:800;display:inline-flex}.student-notification-list .ant-list-item{align-items:flex-start}.holiday-day-number{color:var(--foreground);font-size:14px;line-height:1}.holiday-markers{align-items:center;gap:4px;display:flex;position:absolute;bottom:7px;right:7px}.holiday-marker{border-radius:999px;width:7px;height:7px;display:inline-flex}.holiday-marker-official{background:#dc2626}.holiday-marker-meb{background:#2563eb}.print-only{display:none}@media (max-width:768px){.desktop-sider,.desktop-only{display:none!important}.mobile-only{display:inline-flex}.app-header{gap:8px;height:auto;min-height:64px;padding:8px 12px}.app-content{padding:16px}.app-header-actions{flex:1;justify-content:flex-end;min-width:0;gap:8px!important}.app-header-menu{flex-shrink:0}.messages-button>span:not(.anticon){display:none}.messages-button .mobile-button-emoji,.logout-button .mobile-button-emoji{display:inline-flex!important}.page-stack>.ant-space.full-width{flex-direction:column;display:flex;align-items:stretch!important;gap:12px!important}.page-stack>.ant-space.full-width>.ant-space-item{width:100%}.page-stack>.ant-space.full-width .ant-space,.report-toolbar .ant-space{flex-wrap:wrap}.page-stack h1.ant-typography,.page-stack h2.ant-typography{overflow-wrap:anywhere;font-size:24px;line-height:1.2}.ant-card-body{padding:16px!important}.ant-segmented{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.ant-segmented-group{width:max-content;min-width:100%}.ant-tabs-nav{margin-bottom:12px!important}.ant-tabs-nav-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.ant-tabs-nav-list{min-width:max-content}.ant-list-item{gap:10px}.ant-list-item-action{flex-wrap:wrap;row-gap:8px;display:flex;margin-inline-start:0!important}.private-student-list .private-student-list-item{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:1fr;gap:12px;padding:14px;display:grid}.private-student-list .ant-list-item-meta{width:100%;min-width:0}.private-student-list .ant-list-item-action{justify-content:flex-start;width:100%;margin:0!important}.private-student-list .ant-list-item-action>li{padding-inline:0 8px!important}.private-student-list .ant-list-item-action .ant-btn{min-width:92px}.private-invite-panel{grid-template-columns:1fr;width:100%}.private-payment-student-select{width:100%;min-width:0}.private-payment-collapse .ant-collapse-header{flex-wrap:wrap;gap:8px}.private-payment-collapse .ant-collapse-extra{width:100%;margin-inline-start:0}.private-payment-summary-tags{justify-content:flex-start}.messages-list .ant-list-item,.student-notification-list .ant-list-item{align-items:stretch}.messages-list .ant-list-item-meta,.student-notification-list .ant-list-item-meta{min-width:0}.messages-list .ant-list-item-meta-description,.student-notification-list .ant-list-item-meta-description{overflow-wrap:anywhere}.login-role-grid{grid-template-columns:1fr}.custom-calendar{-webkit-overflow-scrolling:touch;overflow-x:auto}.student-portal{padding:16px}.student-course-layout{grid-template-columns:1fr}.student-course-sidebar{position:static}.student-course-sidebar>.ant-space{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.student-calendar{-webkit-overflow-scrolling:touch;overflow-x:auto}.custom-calendar-header,.custom-calendar-grid,.student-calendar .custom-calendar-header,.student-calendar .custom-calendar-grid,.private-lesson-calendar .custom-calendar-header,.private-lesson-calendar .custom-calendar-grid{min-width:520px}.custom-calendar-day{min-height:48px}.ant-table-wrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.ant-table{min-width:640px}.ant-table-content{overflow-x:auto!important}.ant-table-cell{white-space:normal;overflow-wrap:anywhere}.ant-card-head{padding:0 14px!important}.ant-card-head-wrapper{flex-direction:column;gap:10px;padding:12px 0;align-items:flex-start!important}.ant-card-head-title,.ant-card-extra{overflow-wrap:anywhere;width:100%;min-width:0;white-space:normal!important}.ant-card-extra{margin-inline-start:0!important}.ant-card-extra .ant-space,.report-toolbar>.ant-space-item:last-child>.ant-space,.student-portal-header>.ant-space-item:last-child>.ant-space,.page-stack>.ant-space.full-width>.ant-space-item:last-child>.ant-space{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));width:100%;gap:8px!important;display:grid!important}.ant-card-extra .ant-space-item,.report-toolbar>.ant-space-item:last-child>.ant-space>.ant-space-item,.student-portal-header>.ant-space-item:last-child>.ant-space>.ant-space-item,.page-stack>.ant-space.full-width>.ant-space-item:last-child>.ant-space>.ant-space-item{min-width:0}.ant-card-extra .ant-btn,.report-toolbar .ant-btn,.student-portal-header .ant-btn,.page-stack>.ant-space.full-width>.ant-space-item:last-child .ant-btn{white-space:normal;justify-content:center;width:100%;height:auto;min-height:38px;padding-block:7px;line-height:1.25}.ant-list-item{flex-direction:column;align-items:stretch!important}.ant-list-item-meta{width:100%;min-width:0}.ant-list-item-meta-title,.ant-list-item-meta-description,.ant-list-item-meta-content{white-space:normal;overflow-wrap:anywhere;min-width:0}.ant-list-item-action{justify-content:flex-start;width:100%}.ant-list-item-action>li{padding-inline:0 8px!important}.ant-list-item-action .ant-btn{white-space:normal;min-width:104px;height:auto;min-height:34px;line-height:1.2}.ant-space[style*="justify-content: space-between"]{align-items:stretch!important}.ant-space[style*="justify-content: space-between"]>.ant-space-item{min-width:0}.ant-tag{white-space:normal;margin-block:2px;line-height:1.35}.report-detail-table .ant-table,.plain-report-table{min-width:720px}.ant-picker,.ant-picker-range,.ant-select,.ant-input,.ant-input-number,.ant-input-number-affix-wrapper,.class-filter-select{max-width:100%}.report-toolbar .ant-picker-range{width:100%}.ant-modal{max-width:calc(100vw - 24px)}.activity-form{flex-direction:column;align-items:stretch;display:flex}.activity-form .ant-input,.activity-form .ant-input-number{width:100%;min-width:0}}@media (max-width:420px){.logout-button>span:not(.anticon){display:none}.logout-button .mobile-button-emoji{display:inline-flex!important}.app-content{padding:12px}}@media print{@page{size:A4;margin:12mm}html,body{max-width:none!important;height:auto!important;overflow:visible!important}.desktop-sider,.app-header,.report-toolbar,.ant-btn,.ant-drawer{display:none!important}.app-content{padding:0;overflow:visible!important}.print-only{display:block}body,.app-layout{background:#fff!important;min-height:0!important;overflow:visible!important}.ant-layout,.ant-layout-content,.page-stack,.ant-space,.ant-space-item,.ant-card,.ant-card-body,.ant-table-wrapper,.ant-spin-nested-loading,.ant-spin-container,.ant-table,.ant-table-container,.ant-table-content{height:auto!important;max-height:none!important;overflow:visible!important}.report-document-header{break-inside:avoid;page-break-inside:avoid}.class-report-document{display:block!important}.screen-report-document{display:none!important}.class-report-print-document{display:block!important}.student-print-page{break-inside:auto;page-break-inside:auto;font-size:11px;line-height:1.35;display:block;break-before:page!important;page-break-before:always!important;break-after:page!important;page-break-after:always!important}.student-print-page h1{margin:0 0 10px;font-size:18px}.student-print-page h2{margin:14px 0 8px;font-size:14px}.plain-report-table{border-collapse:collapse;table-layout:fixed;width:100%;margin-bottom:10px}.plain-report-table thead{display:table-header-group}.plain-report-table th,.plain-report-table td{vertical-align:top;text-align:left;white-space:normal;word-break:break-word;border:1px solid #cbd5e1;padding:5px 6px}.plain-report-table th{background:#f1f5f9;font-weight:700}.plain-report-table tr{break-inside:avoid;page-break-inside:avoid}.class-student-report{break-inside:auto;page-break-inside:auto;display:block;break-before:page!important;page-break-before:always!important;break-after:page!important;page-break-after:always!important}.report-detail-table{break-inside:auto;page-break-inside:auto}.report-detail-table table{border-collapse:collapse;width:100%!important}.report-detail-table thead{display:table-header-group}.report-detail-table tfoot{display:table-footer-group}.report-detail-table tr{break-inside:avoid;page-break-inside:avoid}.report-detail-table .ant-table-cell{word-break:break-word;white-space:normal!important}}.auth-screen{background:radial-gradient(circle at 16% 14%,#f973162e,#0000 28%),radial-gradient(circle at 84% 18%,#1383a62e,#0000 30%),linear-gradient(135deg,#0b2e6b 0%,#103d83 44%,#f2f4f7 44.2% 100%)}html[data-theme=dark] .auth-screen{background:radial-gradient(circle at 16% 14%,#f9731638,#0000 28%),radial-gradient(circle at 84% 18%,#1383a633,#0000 30%),linear-gradient(135deg,#06162d 0%,#0b2e6b 48%,#071527 48.2% 100%)}.auth-card{border:1px solid #0b2e6b14;border-radius:18px;box-shadow:0 24px 70px #0b2e6b38}.auth-card .ant-card-body{padding:30px}.brand-slogan{margin-top:-4px;font-weight:700;display:block;color:var(--corevia-orange)!important}.auth-logo-wrap{justify-content:center;margin-bottom:16px;display:flex}.auth-logo{object-fit:contain;width:clamp(190px,30vw,300px);height:auto;max-height:300px;box-shadow:none;border-radius:0}.desktop-sider,.desktop-sider.ant-layout-sider,.desktop-sider .ant-layout-sider-children{background:var(--corevia-navy)!important}.desktop-sider .ant-layout-sider-children{flex-direction:column;min-height:100vh;display:flex}.desktop-sider .ant-menu{flex:auto}.desktop-sider{border-right:0;box-shadow:10px 0 30px #0b2e6b24}.brand{color:#fff;letter-spacing:0;background:linear-gradient(135deg,#f973162e,#1383a629);border-bottom:1px solid #ffffff1f;gap:12px;height:72px;padding:0 22px;font-size:19px}.brand.is-collapsed{justify-content:center;padding:0}.sider-logo-footer{border-top:1px solid #ffffff1a;justify-content:center;padding:16px 18px 22px;display:flex}.sider-bottom-logo{object-fit:contain;filter:drop-shadow(0 10px 20px #00000038);border-radius:0;width:min(100%,190px);height:auto;max-height:230px}.desktop-sider.ant-layout-sider-collapsed .sider-logo-footer{padding:12px 8px 16px}.desktop-sider.ant-layout-sider-collapsed .sider-bottom-logo{width:48px;max-height:58px}.drawer-logo{object-fit:contain;box-shadow:none;background:0 0;border-radius:0;flex:none;width:42px;height:42px}.app-header{background:color-mix(in srgb, var(--surface) 94%, transparent);border-bottom:1px solid #0b2e6b1a;box-shadow:0 8px 24px #0b2e6b0f}.ant-card{box-shadow:0 12px 34px #0b2e6b14;border-color:#0b2e6b14!important;border-radius:14px!important}.ant-card-head{border-bottom-color:#0b2e6b14!important}.ant-btn-primary{box-shadow:0 10px 22px #f9731638;background:var(--corevia-orange)!important;border-color:var(--corevia-orange)!important}.ant-btn-primary:hover,.ant-btn-primary:focus-visible{background:#ea580c!important;border-color:#ea580c!important}.ant-btn-default:not(.ant-btn-dangerous){color:var(--corevia-navy);border-color:color-mix(in srgb, var(--corevia-teal) 52%, var(--border))}.ant-btn-default:not(.ant-btn-dangerous):hover,.ant-btn-default:not(.ant-btn-dangerous):focus-visible{color:var(--corevia-teal)!important;border-color:var(--corevia-teal)!important}.login-role-card .anticon,.login-role-card.is-active strong{color:var(--corevia-orange)}.login-role-card.is-active{border-color:var(--corevia-orange);background:color-mix(in srgb, var(--corevia-orange) 9%, var(--surface))}.custom-calendar-day.is-today,.student-course-button.is-active{outline-color:var(--corevia-orange);border-color:var(--corevia-orange)}.invite-code-box{border-color:var(--corevia-orange);background:color-mix(in srgb, var(--corevia-orange) 8%, var(--surface));color:var(--corevia-navy)}.student-drive-summary,.student-action-summary{margin-bottom:16px}.student-notification-list .notification-unread{cursor:pointer;border-left:3px solid var(--corevia-orange);background:color-mix(in srgb, var(--corevia-orange) 7%, transparent);padding-left:12px}.student-notification-list .notification-read{cursor:pointer;opacity:.78}.private-student-calendar .student-calendar-marker-session{box-shadow:0 0 0 2px #1383a624}.private-student-calendar .student-calendar-marker-assignment{box-shadow:0 0 0 2px #f9731624}.summary-button{text-align:left;background:color-mix(in srgb, var(--surface) 92%, var(--corevia-teal) 8%);white-space:normal;border:1px solid #0b2e6b14;justify-content:flex-start;align-items:flex-start;width:100%;height:100%;min-height:86px;padding:14px 16px}.summary-button .ant-statistic{width:100%}.summary-button:hover,.summary-button:focus-visible{border-color:var(--corevia-orange)!important;background:color-mix(in srgb, var(--surface) 88%, var(--corevia-orange) 12%)!important}.dashboard-action-link{display:block}.credit-footer{color:color-mix(in srgb, var(--corevia-navy) 72%, var(--foreground));font-weight:650}html[data-theme=dark] .credit-footer{color:#dbeafe}@media (max-width:768px){.ant-drawer .ant-drawer-header{background:var(--corevia-navy);color:#fff}.ant-drawer .ant-drawer-title,.ant-drawer .ant-drawer-close{color:#fff}.ant-drawer .ant-drawer-body{background:var(--corevia-navy);padding:0}}@media screen{:root{--corevia-navy-strong:#071f4a;--corevia-navy-soft:#e9eff8;--corevia-teal-soft:#e7f5f8;--corevia-orange-soft:#fff0e6;--corevia-green:#16835f;--corevia-shadow-sm:0 3px 12px #0b2e6b0f;--corevia-shadow-md:0 12px 30px #0b2e6b17}html[data-theme=dark]{--corevia-navy-soft:#102a49;--corevia-teal-soft:#0c3241;--corevia-orange-soft:#3b2417;--corevia-shadow-sm:0 3px 14px #00000029;--corevia-shadow-md:0 14px 34px #0000003d}body{background:linear-gradient(180deg, color-mix(in srgb, var(--corevia-teal) 3%, var(--background)) 0, var(--background) 320px)}.app-layout{background:0 0}.app-content{width:100%;max-width:1680px;margin:0 auto;padding:28px clamp(20px,2.4vw,40px) 40px}.page-stack{gap:20px!important}.page-stack>div:first-child>.ant-typography-secondary,.report-toolbar>div:first-child>.ant-typography-secondary,.student-portal-header>div:first-child>.ant-typography-secondary{color:var(--corevia-teal);letter-spacing:0;text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:750;display:block}.page-stack h2.ant-typography,.report-toolbar h2.ant-typography,.student-portal-header h2.ant-typography{color:var(--corevia-navy);font-size:clamp(25px,2vw,32px);line-height:1.2;margin:0!important}html[data-theme=dark] .page-stack h2.ant-typography,html[data-theme=dark] .report-toolbar h2.ant-typography,html[data-theme=dark] .student-portal-header h2.ant-typography{color:#f8fafc}.desktop-sider .ant-menu{padding:12px 10px;border-inline-end:0!important}.desktop-sider .ant-menu-item{border-radius:8px;height:44px;margin-block:4px;font-weight:620}.desktop-sider .ant-menu-item .anticon{font-size:17px}.desktop-sider .ant-menu-item-selected{box-shadow:0 8px 18px #f973163d}.brand{background:#ffffff09;min-height:74px}.sider-logo-footer{background:#04122b33;padding-block:14px 18px}.sider-bottom-logo{max-height:170px}.app-header{border-bottom-color:color-mix(in srgb, var(--corevia-navy) 10%, var(--border));height:72px;box-shadow:var(--corevia-shadow-sm);padding-inline:clamp(14px,2vw,28px)}.app-header-leading{min-width:0}.app-page-identity{min-width:0;line-height:1.15;display:grid}.app-page-eyebrow{text-transform:uppercase;font-size:10px;font-weight:800;color:var(--corevia-teal)!important}.app-page-title{text-overflow:ellipsis;white-space:nowrap;max-width:260px;font-size:15px;overflow:hidden;color:var(--corevia-navy)!important}html[data-theme=dark] .app-page-title{color:#f8fafc!important}.app-header .ant-btn,.app-header .ant-switch{flex:none}.app-header .ant-avatar{background:var(--corevia-navy);box-shadow:0 0 0 3px color-mix(in srgb, var(--corevia-teal) 14%, transparent)}.ant-card{box-shadow:var(--corevia-shadow-sm);transition:border-color .18s,box-shadow .18s,transform .18s;border-color:color-mix(in srgb, var(--corevia-navy) 10%, var(--border))!important;border-radius:10px!important}.ant-card-head{min-height:54px}.ant-card-head-title{color:color-mix(in srgb, var(--foreground) 92%, var(--corevia-navy));font-size:15px;font-weight:720}.metric-card-grid .ant-col{display:flex}.metric-card{width:100%;min-height:118px;box-shadow:var(--corevia-shadow-md);position:relative;overflow:hidden;border-top:3px solid var(--metric-accent)!important}.metric-card:after{content:"";border:12px solid color-mix(in srgb, var(--metric-accent) 12%, transparent);pointer-events:none;border-radius:50%;width:58px;height:58px;position:absolute;bottom:-18px;right:-18px}.metric-card-navy{--metric-accent:var(--corevia-navy)}.metric-card-teal{--metric-accent:var(--corevia-teal)}.metric-card-orange{--metric-accent:var(--corevia-orange)}.metric-card-green{--metric-accent:var(--corevia-green)}.metric-card .ant-statistic-title{color:color-mix(in srgb, var(--foreground) 64%, transparent);margin-bottom:8px;font-size:12px;font-weight:650}.metric-card .ant-statistic-content{color:var(--metric-accent);font-weight:750}.ant-tabs-top>.ant-tabs-nav:before{border-bottom-color:color-mix(in srgb, var(--corevia-navy) 12%, var(--border))}.ant-tabs-tab{min-height:42px;padding-inline:4px;font-weight:620}.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--corevia-navy)!important}html[data-theme=dark] .ant-tabs-tab-active .ant-tabs-tab-btn{color:#fff!important}.ant-tabs-ink-bar{border-radius:3px 3px 0 0;background:var(--corevia-orange)!important;height:3px!important}.ant-table-wrapper .ant-table{border:1px solid color-mix(in srgb, var(--corevia-navy) 9%, var(--border));border-radius:8px;overflow:hidden}.ant-table-wrapper .ant-table-thead>tr>th{color:color-mix(in srgb, var(--foreground) 82%, var(--corevia-navy));background:color-mix(in srgb, var(--corevia-navy) 5%, var(--surface));font-size:12px;font-weight:750}.ant-table-wrapper .ant-table-tbody>tr:hover>td{background:color-mix(in srgb, var(--corevia-teal) 6%, var(--surface))!important}.ant-input,.ant-input-affix-wrapper,.ant-picker,.ant-select-selector,.ant-input-number,.ant-segmented{border-radius:8px!important}.ant-input:hover,.ant-input-affix-wrapper:hover,.ant-picker:hover,.ant-select:hover .ant-select-selector,.ant-input-number:hover{border-color:var(--corevia-teal)!important}.ant-btn{font-weight:620}.auth-screen{background:linear-gradient(112deg,#071f4afa,#0b2e6bf0 52%,#1383a6d6);min-height:100svh;padding:clamp(18px,4vw,48px)}html[data-theme=dark] .auth-screen{background:linear-gradient(112deg,#041126,#071f4a 55%,#0b455e)}.auth-card{width:min(100%,500px);box-shadow:0 28px 80px #02102857;border:0!important;border-top:4px solid var(--corevia-orange)!important;border-radius:10px!important}.auth-intro{text-align:center}.auth-intro>.ant-typography-secondary:first-of-type{color:var(--corevia-teal);text-transform:uppercase;font-size:12px;font-weight:800}.auth-intro h2.ant-typography{color:var(--corevia-navy);margin:5px 0 2px}html[data-theme=dark] .auth-intro h2.ant-typography{color:#fff}.auth-logo-wrap{width:230px;height:180px;margin:0 auto 8px;position:relative;overflow:hidden}.auth-logo{width:230px;height:345px;max-height:none;transform:translateY(-52px)}.sider-logo-footer{height:164px;overflow:hidden}.sider-bottom-logo{width:190px;height:285px;max-height:none;transform:translateY(-42px)}.desktop-sider.ant-layout-sider-collapsed .sider-logo-footer{height:72px}.desktop-sider.ant-layout-sider-collapsed .sider-bottom-logo{width:54px;height:81px;max-height:none;transform:translateY(-10px)}.login-role-card{border-radius:8px;min-height:96px;transition:border-color .16s,background .16s,transform .16s}.login-role-card:hover{border-color:var(--corevia-teal);transform:translateY(-1px)}.student-portal{background:0 0;width:100%;max-width:1680px;margin:0 auto;padding:28px clamp(20px,2.4vw,40px) 42px}.student-portal-header,.report-toolbar{border:1px solid color-mix(in srgb, var(--corevia-navy) 10%, var(--border));border-left:4px solid var(--corevia-orange);background:color-mix(in srgb, var(--surface) 96%, transparent);min-height:82px;box-shadow:var(--corevia-shadow-sm);border-radius:10px;padding:14px 16px 14px 20px;align-items:center!important}.student-course-sidebar{box-shadow:var(--corevia-shadow-sm);border-radius:10px;top:88px}.student-course-button{border-radius:8px;transition:border-color .16s,background .16s,transform .16s}.student-course-button:hover{border-color:var(--corevia-teal);background:color-mix(in srgb, var(--corevia-teal) 6%, var(--surface));transform:translate(2px)}.student-course-button.is-active{border-color:var(--corevia-orange);background:var(--corevia-orange-soft);box-shadow:inset 3px 0 0 var(--corevia-orange)}.summary-button{min-height:96px;box-shadow:none;border-radius:8px}.private-lesson-metrics .metric-card{min-height:112px}.private-student-list-item{background:var(--surface);border-radius:8px;margin-bottom:10px;border:1px solid color-mix(in srgb, var(--corevia-navy) 10%, var(--border))!important;padding:16px!important}.private-student-list-item:hover{box-shadow:var(--corevia-shadow-sm);border-color:color-mix(in srgb, var(--corevia-teal) 48%, var(--border))!important}.custom-calendar,.student-calendar{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--corevia-navy) 3%, transparent);border-radius:8px}.credit-footer{border-top:1px solid color-mix(in srgb, var(--corevia-navy) 9%, var(--border));background:color-mix(in srgb, var(--surface) 96%, var(--corevia-navy) 4%);min-height:52px}}@media screen and (max-width:1100px){.app-page-identity{display:none}.app-header-actions{gap:10px!important}}@media screen and (max-width:768px){.app-header{min-height:62px;padding:8px 12px}.app-header-leading{flex:none}.app-content,.student-portal{padding:16px 12px 28px}.page-stack{gap:14px!important}.student-portal-header,.report-toolbar{padding:14px;align-items:stretch!important}.student-portal-header>.ant-space-item,.report-toolbar>.ant-space-item{width:100%}.metric-card{min-height:104px}.ant-card{box-shadow:var(--corevia-shadow-sm)}.ant-tabs-nav{padding-inline:2px}.private-student-list-item{padding:12px!important}.auth-card .ant-card-body{padding:22px 18px}.auth-logo{width:190px;height:285px;transform:translateY(-43px)}.auth-logo-wrap{width:190px;height:150px}}@media screen and (max-width:480px){.app-header-actions{gap:6px!important}.app-header-actions .messages-button,.app-header-actions .logout-button{width:40px;min-width:40px;padding-inline:0;font-size:0}.app-header-actions .messages-button .anticon,.app-header-actions .logout-button .anticon{margin:0;font-size:16px}.app-header-actions>.ant-space-item:has(.ant-avatar) .desktop-only{display:none!important}.student-portal-header .ant-btn,.report-toolbar .ant-btn{min-height:40px}}
