@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Sora:wght@400;500;600;700;800&display=swap";:root{--ensynar-brand-primary: #5B3CC4;--ensynar-brand-secondary: #7A5AF8;--ensynar-brand-lavender: #EDE7FF;--ensynar-brand-blue-light: #DCEEFF;--ensynar-brand-dark: #1F2430;--ensynar-brand-background: #FAFBFF;--ensynar-brand-mint: #5FD3A6;--ensynar-color-primary-action: #5B3CC4;--ensynar-color-primary-action-hover: #4830A0;--ensynar-color-primary-action-text: #FFFFFF;--ensynar-color-focus: #5B3CC4;--ensynar-color-background: #FAFBFF;--ensynar-color-surface: #FFFFFF;--ensynar-color-surface-muted: #F5F2FF;--ensynar-color-text: #1F2430;--ensynar-color-text-secondary: #536074;--ensynar-color-border: #DDE1EA;--ensynar-color-disabled: #718096;--ensynar-color-success: #17754E;--ensynar-color-success-surface: #EBF8F0;--ensynar-color-warning: #926008;--ensynar-color-warning-surface: #FFF4DB;--ensynar-color-error: #B3261E;--ensynar-color-error-surface: #FFF0EF;--ensynar-color-info: #285B95;--ensynar-color-info-surface: #EBF4FF;--ensynar-font-heading: "Sora", system-ui, sans-serif;--ensynar-font-interface: "Inter", system-ui, sans-serif;--ensynar-font-size-xs: .75rem;--ensynar-font-size-sm: .875rem;--ensynar-font-size-md: 1rem;--ensynar-font-size-lg: 1.125rem;--ensynar-font-size-xl: 1.375rem;--ensynar-font-size-2xl: 1.875rem;--ensynar-font-weight-regular: 400;--ensynar-font-weight-medium: 500;--ensynar-font-weight-semibold: 600;--ensynar-font-weight-bold: 700;--ensynar-font-weight-extra-bold: 800;--ensynar-space-1: 4px;--ensynar-space-2: 8px;--ensynar-space-3: 12px;--ensynar-space-4: 16px;--ensynar-space-5: 20px;--ensynar-space-6: 24px;--ensynar-space-8: 32px;--ensynar-space-10: 40px;--ensynar-radius-sm: 6px;--ensynar-radius-md: 10px;--ensynar-radius-lg: 16px;--ensynar-radius-xl: 20px;--ensynar-shadow-card: 0 12px 35px rgb(30 30 65 / 5%);--ensynar-shadow-modal: 0 22px 65px rgb(30 28 58 / 16%);--ensynar-z-modal: 1000;--ensynar-duration-fast: .12s;--ensynar-duration-normal: .2s;--ensynar-tenant-primary: var(--ensynar-brand-primary);--ensynar-tenant-secondary: var(--ensynar-brand-secondary);--ensynar-tenant-on-primary: #FFFFFF}:root{font-family:var(--ensynar-font-interface);font-size:15px;line-height:1.5;font-synthesis:none;color:var(--ensynar-color-text);background:var(--ensynar-color-background);-webkit-font-smoothing:antialiased;--blue: var(--ensynar-color-primary-action);--navy: var(--ensynar-brand-dark);--muted: var(--ensynar-color-text-secondary);--border: var(--ensynar-color-border);--shadow: var(--ensynar-shadow-card)}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--ensynar-font-heading);letter-spacing:-.04em}h1{font-size:clamp(1.8rem,2.8vw,2.4rem)}h2{font-size:1.15rem}h3{font-size:1rem}.logo{display:flex;align-items:center;gap:10px;color:#2639a5;font:800 1.7rem Manrope,sans-serif;letter-spacing:-.08em}.logo.inverse{color:#fff}.logo-dot{color:#50c8c1}.muted{color:var(--muted)}.eyebrow{display:inline-block;color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.14em}.eyebrow.light{color:#8ce7dc}.btn{min-height:39px;padding:9px 15px;display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid transparent;border-radius:9px;font-weight:700;font-size:.88rem;transition:.15s ease}.btn.primary{background:var(--blue);color:#fff;box-shadow:0 4px 11px #325ce92b}.btn.primary:hover:not(:disabled){background:#234acb}.btn.subtle{border-color:#dce4f0;background:#fff;color:#40516d}.btn.subtle:hover:not(:disabled),.btn.ghost:hover:not(:disabled){background:#f3f6fd}.btn.ghost{background:transparent;color:#62708c}.btn.large{min-height:48px}.btn.full{width:100%}.field{display:flex;flex-direction:column;gap:7px;color:#33415b;font-size:.83rem;font-weight:700}.field>input,.password-wrap input,.invite-result input{min-width:0;width:100%;border:1px solid #dce5f1;border-radius:10px;min-height:44px;padding:11px 13px;color:#17223a;background:#fff;outline:none;font-weight:500}.field input:focus,.invite-result input:focus,.search-wrap input:focus{border-color:#6689ef;box-shadow:0 0 0 3px #325ce91a}.field small{color:var(--muted);font-weight:400}.password-wrap{position:relative}.password-wrap input{padding-right:49px}.icon-button{width:37px;height:37px;border:0;color:#70809a;border-radius:9px;background:transparent;display:flex;align-items:center;justify-content:center}.icon-button:hover{background:#eff3fa;color:var(--blue)}.eye{position:absolute;right:4px;top:4px}.stack{display:flex;flex-direction:column;gap:18px}.form-spaced{margin-top:30px}.alert{padding:12px;border-radius:10px;font-size:.84rem}.alert.error{background:#fff1f0;color:#ac3232;border:1px solid #ffdcda}.entry-layout{min-height:100vh;display:grid;grid-template-columns:46% 54%}.entry-brand{min-height:100vh;padding:48px clamp(30px,6vw,100px);color:#fff;background:radial-gradient(circle at 76% 83%,#3c589c 0,transparent 45%),linear-gradient(135deg,#0f1b36,#22376a);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.entry-story{position:relative;z-index:1;max-width:520px}.entry-story h1{font-size:clamp(2.5rem,4vw,4.1rem);line-height:1.2;margin:16px 0 23px;color:#fff}.entry-story p{color:#cbd8f3;font-size:1.1rem}.brand-foot{position:relative;z-index:1;color:#acbdda;font-size:.82rem}.entry-glow{position:absolute;width:450px;height:450px;right:-220px;bottom:-180px;border:85px solid rgb(107 160 235 / 12%);border-radius:50%}.entry-main{background:#fff;display:grid;place-items:center;padding:40px 26px}.auth-card{width:100%;max-width:420px}.auth-icon{display:grid;place-items:center;width:56px;height:56px;background:#eef2ff;color:var(--blue);border-radius:16px;margin-bottom:29px}.auth-card h2{font-size:2rem;margin:8px 0 7px}.auth-note{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:.79rem;color:#8793a5;margin-top:28px}.app-shell{display:flex;min-height:100vh}.sidebar{background:#131e37;color:#fff;width:250px;flex:0 0 250px;display:flex;flex-direction:column;padding:28px 17px}.sidebar .logo{padding-left:13px;margin-bottom:55px}.side-section{color:#8492ae;font-size:.66rem;font-weight:800;letter-spacing:.14em;padding:0 15px;margin-bottom:14px}.nav-active{padding:12px 15px;background:#304573;border-radius:10px;display:flex;gap:12px;align-items:center;font-size:.9rem;font-weight:700}.sidebar-foot{margin-top:auto;border-top:1px solid #354259;padding-top:20px}.sidebar-profile{display:flex;gap:10px;align-items:center;margin-bottom:18px}.sidebar-profile>div{display:flex;flex-direction:column;min-width:0}.sidebar-profile strong{font-size:.85rem}.sidebar-profile span{color:#9eacc5;font-size:.7rem}.profile-avatar{flex:0 0 35px;height:35px;border-radius:10px;display:grid;place-items:center;background:#38519a;font-weight:800;color:#fff!important;font-size:.8rem!important}.side-logout{background:transparent;color:#ccd8ed;width:100%;justify-content:flex-start}.main-shell{min-width:0;flex:1}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e6eaf2;height:76px;background:#fff;padding:0 clamp(20px,4vw,52px)}.breadcrumb{color:#40506d;font-weight:700;font-size:.86rem}.breadcrumb span{color:#b9c4d4;padding:0 10px}.topbar-user{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.81rem}.content{padding:40px clamp(20px,4vw,52px) 80px;max-width:1480px;margin:auto}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:32px}.page-heading h1{margin:8px 0 6px}.page-heading p{color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:26px}.stat-card{display:grid;gap:6px;background:#fff;padding:22px;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow)}.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;margin-bottom:6px}.stat-icon.blue{background:#eaf0ff;color:var(--blue)}.stat-icon.green{background:#e6f8f2;color:#0c9576}.stat-icon.amber{background:#fff4e4;color:#c38a38}.stat-label{color:#5c6b81;font-size:.8rem;font-weight:700}.stat-card strong{font:800 2rem var(--ensynar-font-heading);line-height:1.2}.stat-card small{color:#8994a6;font-size:.77rem}.panel{border:1px solid var(--border);border-radius:15px;background:#fff;box-shadow:var(--shadow);padding:24px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:19px}.panel-heading h2{font-size:1.08rem;margin-bottom:4px}.panel-heading p{color:var(--muted);font-size:.8rem}.panel-tools{display:flex;gap:8px}.search-wrap{display:flex;align-items:center;gap:8px;border:1px solid #e2e9f2;border-radius:9px;padding:0 11px;color:#94a0b3}.search-wrap input{outline:none;border:0;padding:10px 4px;min-width:190px}.school-list{display:grid;gap:12px}.school-card{border:1px solid #e8edf4;border-radius:12px;padding:18px 19px}.school-card-main{display:flex;align-items:center;gap:14px}.school-avatar{width:45px;height:45px;border-radius:11px;color:#fff;font:800 1rem Manrope,sans-serif;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center}.school-identity{flex:1;min-width:0}.school-identity h3{overflow-wrap:anywhere}.slug{font-size:.77rem;color:#8290a5}.status{font-size:.73rem;font-weight:800;border-radius:7px;padding:5px 9px;display:flex;align-items:center;gap:6px}.status.active{color:#16816c;background:#e6f6f0}.status.paused{color:#9a682a;background:#fff3e1}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.school-card-actions{display:flex;gap:8px;align-items:center;margin:15px 0 0 58px}.empty-state{min-height:200px;color:#7c8aa0;display:flex;align-items:center;justify-content:center;gap:10px;flex-direction:column;text-align:center}.empty-state strong{color:#40516e}.modal-backdrop{position:fixed;z-index:10;inset:0;background:#0d182d99;display:grid;place-items:center;padding:18px}.modal{max-width:520px;width:100%;max-height:94vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 90px #0003;padding:28px}.modal-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:23px}.modal-head h2{font-size:1.5rem;margin-top:7px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border);padding-top:20px}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field input[type=color]{padding:5px}.invite-result{padding:16px;border:1px solid #caebdf;border-radius:12px;background:#f0faf6;display:flex;flex-direction:column;gap:9px}.invite-result>strong{color:#177957}.invite-result small{font-size:.74rem;color:#557362}.invite-page{min-height:100vh;display:grid;place-items:center;padding:20px}.invite-card{max-width:460px;width:100%;border:1px solid var(--border);background:#fff;padding:38px;border-radius:18px;box-shadow:var(--shadow)}.invite-card .logo{margin-bottom:40px}.invite-card h1{margin:10px 0}.invite-card .muted{margin-bottom:15px}.success-icon{color:#149e72;margin-bottom:10px}.loading-page{min-height:100vh;display:flex;gap:15px;align-items:center;justify-content:center;flex-direction:column;color:var(--muted)}.school-portal{min-height:100vh}.school-topbar{height:76px;background:#fff;padding:0 clamp(20px,6vw,90px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.school-content{max-width:900px;margin:0 auto;padding:70px 24px}.school-content h1{margin:10px 0}.portal-list{margin-top:30px}.school-choice{border:1px solid var(--border);background:#fff;padding:18px;border-radius:12px;display:flex;align-items:center;gap:18px;text-align:left;width:100%}.school-choice.chosen{border-color:var(--blue)}.school-choice>span:nth-child(2){display:flex;flex-direction:column;flex:1}.school-choice small{color:var(--muted)}.portal-welcome{display:flex;align-items:flex-start;gap:15px;background:#ebf6f2;padding:25px;border-radius:14px;margin-top:28px;color:#17785e}.portal-welcome h2{margin:5px 0}.portal-welcome p{color:#617c72}@media(max-width:950px){.sidebar{width:215px;flex-basis:215px}.topbar-user{display:none}}@media(max-width:760px){.entry-layout{display:flex;flex-direction:column}.entry-brand{min-height:auto;padding:24px}.entry-story,.brand-foot{display:none}.entry-main{min-height:calc(100vh - 89px)}.sidebar{width:75px;flex-basis:75px;padding:24px 10px}.sidebar .logo{font-size:0;padding:0;justify-content:center}.sidebar .logo svg{flex-shrink:0}.side-section,.nav-active,.sidebar-foot{font-size:0;overflow:hidden}.nav-active{justify-content:center;padding:13px}.nav-active svg{flex-shrink:0}.sidebar-profile,.side-logout{display:none}.content{padding-top:28px}.page-heading{align-items:start;flex-direction:column}.stat-grid{grid-template-columns:1fr}.stat-card{grid-template-columns:48px 1fr;column-gap:12px;padding:15px}.stat-icon{grid-row:span 3}.stat-card strong{font-size:1.5rem}.panel-heading{align-items:stretch;flex-direction:column}.search-wrap{flex:1}.search-wrap input{min-width:0;flex:1}.school-card-main{flex-wrap:wrap}.school-card-actions{margin-left:0;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important}}.institution-modal{max-width:760px}.institution-modal .modal-head .muted{margin-top:7px}.institution-settings-form{gap:24px}.institution-settings-form section{display:grid;gap:13px}.settings-heading{display:flex;align-items:center;gap:9px;font-size:1rem}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.settings-grid .full-span{grid-column:1 / -1}.institution-settings-form .field input,.institution-settings-form .field select{width:100%;min-width:0}.institution-settings-form .field select{padding:11px 13px;border:1px solid #e0e7f0;border-radius:9px;background:#fff;color:#182235;font:inherit}.settings-notice{color:#5c6b81;font-size:.82rem;line-height:1.55}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-option{border:1px solid #e4eaf2;border-radius:12px;padding:14px;display:flex;align-items:flex-start;gap:11px;background:#fff}.module-option input{margin-top:4px;accent-color:#325ce9}.module-description{display:flex;flex-direction:column;gap:3px;min-width:0}.module-description strong{font-size:.87rem}.module-description small{color:#69758b;font-size:.75rem}.module-description em{color:#a06b2c;font-size:.72rem;font-style:normal;font-weight:700}.portal-modules{margin-top:24px;padding:24px;background:#fff;border:1px solid #e4eaf2;border-radius:14px}.portal-modules>p{margin:8px 0 17px}@media(max-width:640px){.institution-modal{padding:20px}.settings-grid,.module-grid{grid-template-columns:1fr}.institution-modal .modal-actions{flex-wrap:wrap}}.btn.primary{background:var(--ensynar-color-primary-action);color:var(--ensynar-color-primary-action-text);box-shadow:0 4px 14px #5b3cc429}.btn.primary:hover:not(:disabled){background:var(--ensynar-color-primary-action-hover)}.sidebar{background:var(--ensynar-brand-primary)}.nav-active{background:#7a5af894}.entry-brand{background:linear-gradient(137deg,#3e268f,#5b3cc4)}.entry-story p{color:#f2edff}.brand-foot{color:#ede7ff}.logo-dot{color:var(--ensynar-brand-mint)}.auth-icon{background:var(--ensynar-brand-lavender);color:var(--ensynar-brand-primary)}.field input:focus-visible,.field select:focus-visible,.password-wrap input:focus-visible{border-color:var(--ensynar-color-focus);box-shadow:0 0 0 3px #5b3cc42b}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--ensynar-color-focus);outline-offset:2px}.stat-icon.blue{background:var(--ensynar-brand-lavender);color:var(--ensynar-brand-primary)}.profile-avatar{background:var(--ensynar-brand-secondary)}.school-choice.chosen{border-color:var(--ensynar-tenant-primary)}.portal-welcome{border-left:4px solid var(--ensynar-tenant-primary)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.ensynar-brand-logo{display:inline-flex;align-items:center;justify-content:center;max-width:100%;width:192px;vertical-align:middle}.ensynar-brand-logo--sm{width:146px}.ensynar-brand-logo--lg{width:232px}.ensynar-brand-logo--inverse{background:#fff;padding:8px 11px;border-radius:var(--ensynar-radius-md);box-shadow:0 2px 9px #190f3e1f}.ensynar-brand-logo img{display:block;width:100%;height:auto;object-fit:contain}.ensynar-brand-logo .ensynar-brand-logo__compact{display:none}.sidebar .ensynar-brand-logo{margin:0 0 54px 12px}.invite-card .ensynar-brand-logo{margin-bottom:32px}.loading-page .ensynar-brand-logo{margin-bottom:8px}@media(max-width:760px){.sidebar .ensynar-brand-logo--adaptive{width:48px;height:48px;padding:5px;margin:0 auto 40px;background:#fff;border-radius:12px}.sidebar .ensynar-brand-logo--adaptive .ensynar-brand-logo__full{display:none}.sidebar .ensynar-brand-logo--adaptive .ensynar-brand-logo__compact{display:block}}.portal-users{margin-top:24px;padding:24px;background:#fff;border:1px solid #e4eaf2;border-radius:14px;display:grid;gap:20px}.portal-users-heading{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.portal-users-heading h2{display:flex;align-items:center;gap:9px;margin-bottom:7px}.portal-users-heading p{font-size:.85rem}.portal-users-content{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:24px}.portal-user-list h3,.portal-user-invite h3{display:flex;align-items:center;gap:8px;margin-bottom:13px}.portal-user-list{min-width:0}.portal-user-invite{border:1px solid #e5ebf3;background:#f9fbfe;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:12px;align-self:start}.portal-user-invite .field input,.portal-user-invite .field select{width:100%;min-width:0}.portal-user-row{border-top:1px solid #ebeff5;padding:13px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-user-details{min-width:0;display:flex;flex-direction:column;gap:3px}.portal-user-details strong{font-size:.85rem;overflow-wrap:anywhere}.portal-user-details small{font-size:.73rem;color:#69758b}.portal-user-row select,.portal-user-invite select{padding:9px 10px;border:1px solid #dfe7f1;background:#fff;border-radius:8px;font:inherit;font-size:.8rem;max-width:200px;min-width:0}.portal-admin-lock{color:#1d6d56;display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700}.portal-users-note{color:#7d889d;font-size:.74rem;line-height:1.5;margin-top:9px}.portal-invite-link{padding:14px;border-radius:11px;background:#f0faf6;border:1px solid #caebdf;display:grid;gap:9px}.portal-invite-link>strong{color:#16816c;display:flex;align-items:center;gap:7px}.portal-invite-link input{min-width:0;width:100%;border:1px solid #d5e7df;border-radius:8px;padding:9px;color:#213d34;background:#fff}.portal-invite-link small{color:#607d70;line-height:1.5}.portal-users .alert.success{color:#14694f;border:1px solid #b6dfc8;border-radius:10px;padding:11px;background:#eef9f2}@media(max-width:720px){.portal-users{padding:16px}.portal-users-content{grid-template-columns:1fr}.portal-users-heading{flex-direction:column}.portal-user-row{flex-wrap:wrap}}
