@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-ext-wght-normal.0x9ccydb91kkt.woff2)format("woff2-variations");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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(../media/dm-sans-latin-wght-normal.0fpdy-lufm69d.woff2)format("woff2-variations");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:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-cyrillic-ext-wght-normal.1a5omd23h2g7u.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-cyrillic-wght-normal.3pz26h3t80slv.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-latin-ext-wght-normal.1v8q5_f-rvjb_.woff2)format("woff2-variations");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:Caveat Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(../media/caveat-latin-wght-normal.0v9iznkhjktil.woff2)format("woff2-variations");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:TT Norms;src:url(/fonts/TTNormsPro-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:TT Norms;src:url(/fonts/TTNormsPro-Medium.woff2)format("woff2");font-weight:500 600;font-style:normal;font-display:swap}@font-face{font-family:TT Norms;src:url(/fonts/TTNormsPro-Bold.woff2)format("woff2");font-weight:650 900;font-style:normal;font-display:swap}@layer reset{*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}img,svg{flex-shrink:0}h1,h2,h3,h4,p{margin-top:0}button{color:inherit}table{border-collapse:collapse}textarea{resize:vertical}}@layer base{:root{--paper:#f8f7f4;--ink:#16243e;--navy:#132343;--blue:#287cff;--blue-dark:#1763d1;--soft:#eaf2ff;--tile:#ecf5ff;--muted:#626e83;--line:#e7e9ee;--success:#257b58;--radius:22px;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:TT Norms,Arial,sans-serif;font-size:15px;line-height:1.55}body{-webkit-font-smoothing:antialiased;min-height:100vh}h1,h2,h3,h4{color:var(--navy);font-family:DM Sans Variable,DM Sans,sans-serif}h1{letter-spacing:-1.2px;margin-bottom:12px;font-size:clamp(28px,3vw,38px);font-weight:750;line-height:1.15}h2{letter-spacing:-.6px;margin-bottom:16px;font-size:23px;font-weight:700;line-height:1.25}h3{letter-spacing:-.25px;margin-bottom:9px;font-size:17px;line-height:1.35}p{max-width:78ch;margin-bottom:14px}a{color:var(--blue-dark);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{outline-offset:3px}:focus-visible{outline-offset:3px;outline:3px solid #1a70db}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd4dd;border-radius:9px;min-height:44px;padding:11px 13px}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--blue-dark)}textarea{min-height:110px;line-height:1.6}select{padding-right:30px}input:focus,textarea:focus,select:focus{border-color:var(--blue)}small{font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}details{border-top:1px solid var(--line);padding:14px 0}summary{cursor:pointer;min-height:30px;font-weight:600}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}code{background:#f0f3f5;border-radius:4px;padding:2px 5px;font-size:12px}fieldset{border:1px solid var(--line);border-radius:12px;padding:20px}legend{padding:0 8px;font-weight:650}}@layer components{.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--paper);border-right:1px solid var(--line);z-index:30;flex-direction:column;flex-shrink:0;width:252px;padding:34px 20px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{mix-blend-mode:multiply;flex-shrink:0;width:190px;height:32px;display:block;position:relative;overflow:hidden}.brand-image{width:221px;max-width:none;height:221px;position:absolute;top:-93px;left:-13px}.brand-link{margin:0 8px 40px}.brand-link:hover{text-decoration:none}.portal-label{color:#74808c;margin:0 12px 12px;font-size:12px}.sidebar nav{flex-direction:column;gap:6px;display:flex}.nav-link{color:var(--muted);border-radius:100px;align-items:center;gap:12px;min-height:46px;padding:12px;font-size:14px;font-weight:550;display:flex}.nav-link:hover{color:var(--ink);background:#f4f7fa;text-decoration:none}.nav-active,.nav-active:hover{color:var(--navy);background:#fff;font-weight:700;box-shadow:0 3px 12px #13234308}.sidebar-bottom{margin-top:auto;padding-top:38px}.support-note{color:#65768a;gap:10px;margin:12px 12px 25px;display:flex}.support-note p{margin:0;font-size:12px;line-height:1.8}.support-note strong{color:#384a5d;font-weight:600}.user-block{border-top:1px solid var(--line);align-items:center;gap:10px;padding:20px 8px 12px;display:flex}.avatar{color:#315678;background:#e8eef4;border-radius:50%;place-items:center;width:37px;height:37px;font-size:12px;font-weight:750;display:grid}.user-block strong{text-overflow:ellipsis;white-space:nowrap;max-width:147px;font-size:12px;display:block;overflow:hidden}.user-block div>span{text-transform:capitalize;color:var(--muted);font-size:11px}.signout{color:var(--muted);background:0 0;border:0;align-items:center;gap:9px;padding:8px;font-size:12px;display:flex}.workspace{flex-direction:column;width:calc(100% - 252px);min-height:100vh;margin-left:252px;display:flex}.topbar{border-bottom:1px solid var(--line);background:var(--paper);color:#71808d;justify-content:space-between;align-items:center;min-height:62px;padding:12px 42px;font-size:12px;display:flex}.topbar>span:first-child{align-items:center;gap:7px;display:flex}.local-label{color:var(--muted);background:#efeee9;border-radius:7px;padding:4px 10px;font-size:11px}.workspace main{flex:1;width:100%;max-width:1530px;margin:0 auto;padding:38px 42px 60px}.app-footer{border-top:1px solid var(--line);color:#7c8791;justify-content:space-between;padding:17px 42px;font-size:11px;display:flex}.skip-link{background:var(--ink);color:#fff;z-index:99;padding:10px 18px;position:fixed;top:-80px;left:12px}.skip-link:focus{top:10px}.mobile-bar,.nav-scrim{display:none}.page-header{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:30px;display:flex}.page-header p{color:var(--muted);margin-bottom:0;font-size:15px}.page-header .toolbar{padding-top:5px}.card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:25px;box-shadow:0 7px 28px #10234408}.card>:last-child{margin-bottom:0}.stack{flex-direction:column;gap:20px;display:flex}.stack-sm{flex-direction:column;gap:10px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row-between{justify-content:space-between}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.split{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;display:grid}.muted{color:var(--muted)}.small{font-size:13px}.section-title{margin:26px 0 17px;font-size:21px}.btn{background:var(--navy);color:#fff;border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:12px 22px;font-size:13px;font-weight:650;line-height:1.4;text-decoration:none;transition:background .15s;display:inline-flex;box-shadow:0 3px 10px #1323431f}.btn:hover{background:#263b60;text-decoration:none}.btn-secondary{color:#34475a;box-shadow:none;background:#fff;border-color:#cfd6e2}.btn-secondary:hover{background:#f0f5fa}.btn-danger{box-shadow:none;color:#aa352c;background:#fff2f1;border-color:#edc3be}.btn-danger:hover{background:#ffe6e3}.btn-ghost{box-shadow:none;color:var(--blue-dark);background:0 0}.btn-ghost:hover{background:var(--soft)}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toolbar>*{flex-shrink:0}.toolbar input,.toolbar select{flex:1;width:auto;min-width:170px}.field{flex-direction:column;gap:7px;min-width:0;font-size:13px;font-weight:650;display:flex}.field>small{color:var(--muted);font-size:12px;font-weight:400}.field>span{display:block}.field input,.field textarea,.field select{font-weight:400}.badge{white-space:nowrap;border-radius:100px;align-items:center;gap:5px;max-width:100%;padding:4px 9px;font-size:11px;font-weight:650;line-height:1.5;display:inline-flex}.badge-blue{color:#235b9c;background:#e9f2fe}.badge-green{color:#236a4d;background:#e6f4eb}.badge-amber{color:#8b6120;background:#fff3d8}.badge-gray{color:#62717f;background:#f0f3f5}.notice{color:#244d76;background:#edf5ff;border:1px solid #d7e6f6;border-radius:10px;align-items:flex-start;gap:11px;margin-bottom:18px;padding:15px 18px;font-size:13px;display:flex}.notice svg{margin-top:2px}.empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:10px;padding:48px 25px;display:flex}.empty h3{color:var(--ink);margin:0}.empty p{max-width:50ch;margin:0;font-size:14px}.metric{border:1px solid var(--line);background:#fff;border-radius:22px;padding:20px;box-shadow:0 7px 28px #10234408}.metric strong{letter-spacing:-1px;font-size:32px;line-height:1.2;display:block}.metric span,.metric p{color:var(--muted);font-size:12px}.table-wrap{border:1px solid var(--line);border-radius:12px;overflow-x:auto}.table{width:100%;font-size:13px}.table th{text-align:left;color:#657482;white-space:nowrap;background:#f5f5f2;padding:13px 16px;font-size:11px;font-weight:650}.table td{border-top:1px solid var(--line);vertical-align:top;padding:16px}.table td .btn{min-height:34px;padding:7px 10px;font-size:12px}.table tbody tr:hover{background:#fbfcfe}.table td input[type=checkbox]{margin-top:3px}.tabs{border-bottom:1px solid var(--line);gap:6px;margin-bottom:22px;padding-bottom:10px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:8px 13px}.tab.active{background:var(--soft);color:var(--blue-dark);font-weight:650}.list-item{border-bottom:1px solid var(--line);padding:18px 0}.list-item:last-child{border-bottom:0}.list-item h3{margin-bottom:5px}.status{color:var(--success);font-size:12px}.form-error{color:#a82e28;background:#fff4f1;border:1px solid #edc5bf;border-radius:8px;padding:11px 13px;font-size:13px}.rich-toolbar{border:1px solid var(--line);background:#f5f5f2;border-bottom:0;border-radius:8px 8px 0 0;align-items:center;gap:2px;padding:7px;display:flex}.rich-toolbar button{background:0 0;border:0;border-radius:5px;place-items:center;min-height:32px;padding:7px;display:grid}.rich-toolbar button:hover{background:var(--soft)}.rich-toolbar>span{color:var(--muted);margin-left:auto;font-size:10px;font-weight:400}.rich-editor textarea{border-radius:0 0 8px 8px;font-size:14px}.rich-editor details{border:0;padding:8px 0;font-size:12px}.rich-content{overflow-wrap:anywhere;font-weight:400;line-height:1.75}.rich-content p{white-space:pre-wrap;margin-bottom:10px}.rich-bullet{gap:10px;display:flex}.rich-content h3{margin-top:15px}.loading-screen{min-height:70vh;color:var(--muted);justify-content:center;align-items:center;gap:10px;display:flex}.loading-dot{background:var(--blue);border-radius:50%;width:10px;height:10px}.handwritten{color:var(--blue-dark);font-family:Caveat Variable,cursive;font-size:27px;line-height:1.3}.login-page{grid-template-columns:1.12fr 1fr;min-height:100vh;display:grid}.login-story{border-right:1px solid var(--line);background:linear-gradient(90deg,#f8f7f4f5 0%,#f8f7f4df 58%,#f8f7f48c 100%),url(/brand/teaching-session.png) 50%/cover;flex-direction:column;padding:44px 64px;display:flex;position:relative;overflow:hidden}.login-story .brand{font-size:28px}.login-story .brand small{font-size:9px}.login-message{z-index:1;margin:auto 0;padding:60px 0 45px;position:relative}.login-message h1{letter-spacing:-3px;margin:22px 0 25px;font-size:clamp(44px,4.9vw,72px);font-weight:760;line-height:1.04}.login-message>p{color:#566b82;max-width:39ch;font-size:16px;line-height:1.7}.journey-note{background:#fff;border-radius:2px 3px 6px;max-width:420px;margin-top:36px;padding:7px 22px;transform:rotate(-1deg);box-shadow:0 9px 19px #182b4221,0 0 3px #182b4220}.journey-step{border-bottom:1px solid #edf1f6;align-items:center;gap:13px;padding:17px 0;display:flex}.journey-step:last-child{border:0}.journey-step>span{width:39px;height:39px;color:var(--blue-dark);background:#eff5fc;border-radius:11px;place-items:center;display:grid}.journey-step div{flex:1}.journey-step strong{font-size:13px}.journey-step p{color:var(--muted);margin:3px 0 0;font-size:11px}.journey-step>svg{color:#3a936b}.login-foot{color:#718498;margin:0;font-size:12px}.login-form-panel{background:var(--paper);flex-direction:column;padding:32px 48px;display:flex}.preview-pill{color:#777b6a;border:1px solid #dedfd5;border-radius:6px;align-self:flex-end;padding:5px 10px;font-size:10px}.login-form-inner{width:100%;max-width:360px;margin:auto;padding:60px 0}.login-form-inner h2{letter-spacing:-1px;margin:0 0 9px;font-size:32px}.login-form-inner>p{color:var(--muted);margin-bottom:30px;font-size:14px}.login-form-inner form{gap:20px}.login-form-inner form .btn{width:100%;margin-top:7px}.login-help{border-top:1px solid var(--line);margin:30px 0 24px;padding-top:25px;font-size:12px}.login-help p{color:var(--muted);margin:7px 0;line-height:1.7}.hero-card,.welcome-card{background:var(--soft);border-color:#dce7f8;position:relative}.hero-card h2,.welcome-card h2{font-size:29px}.progress-track{background:#e6edf3;border-radius:4px;height:6px;overflow:hidden}.progress-track>span{background:var(--blue);height:100%;display:block}.question-card{border-left:4px solid var(--blue)}.score{color:var(--blue-dark);font-size:30px;font-weight:750}.score small{color:var(--muted);font-size:14px}.note-status{color:var(--muted);font-size:11px}.checkbox-label{align-items:center;gap:9px;font-size:13px;display:flex}.workshop-layout{grid-template-columns:230px minmax(0,1fr);gap:22px;display:grid}.question-navigation{flex-direction:column;gap:8px;display:flex}.question-navigation button{text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.question-navigation button.active{background:var(--soft);border-color:var(--blue)}}@media (min-width:1600px){.workspace main{padding:50px 60px}.topbar,.app-footer{padding-left:60px;padding-right:60px}}@media (max-width:1100px){.sidebar{width:222px;padding:27px 13px}.workspace{width:calc(100% - 222px);margin-left:222px}.workspace main{padding:30px 26px 45px}.topbar,.app-footer{padding-left:26px;padding-right:26px}.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr}.login-story{padding:34px}.login-form-panel{padding:30px}.login-message h1{font-size:53px}.workshop-layout{grid-template-columns:180px minmax(0,1fr)}}@media (max-width:760px){.mobile-bar{border-bottom:1px solid var(--line);z-index:25;background:#fff;justify-content:space-between;align-items:center;width:100%;padding:16px 20px;display:flex;position:sticky;top:0}.mobile-bar .brand{font-size:23px}.mobile-bar>button{background:#f2f6fa;border:0;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.app-shell{display:block}.sidebar{width:260px;padding-top:24px;transition:transform .2s;top:75px;transform:translate(-100%)}.sidebar-open{transform:translate(0)}.sidebar>.brand-link{display:none}.nav-scrim{z-index:29;background:#15213160;border:0;width:100%;height:calc(100% - 75px);display:block;position:fixed;inset:75px 0 0}.workspace{width:100%;min-height:calc(100vh - 75px);margin:0}.workspace main{padding:25px 18px 38px}.topbar{min-height:42px;padding:10px 18px;font-size:10px}.local-label{font-size:9px}.page-header{margin-bottom:23px;display:block}.page-header .toolbar{margin-top:16px}.page-header h1{font-size:30px}.page-header p{font-size:13px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:16px}.card{border-radius:13px;padding:20px}.toolbar{gap:8px}.toolbar input,.toolbar select{min-width:140px}.table td,.table th{padding:12px}.app-footer{padding:15px 18px;font-size:10px}.stack{gap:17px}.btn{font-size:12px}.login-page{grid-template-columns:1fr}.login-story{padding:26px}.login-message{padding:40px 0 0}.login-message h1{letter-spacing:-1.8px;font-size:43px}.login-message>p{font-size:14px}.login-message .handwritten{font-size:23px}.journey-note,.login-foot{display:none}.login-form-panel{padding:24px}.login-form-inner{max-width:100%;padding:30px 0}.login-form-inner h2{font-size:28px}.preview-pill{align-self:flex-start}.workshop-layout{grid-template-columns:1fr}.question-navigation{flex-direction:row;overflow-x:auto}.question-navigation button{min-width:120px}.rich-toolbar>span{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.rich-label{margin-bottom:8px;font-size:13px;font-weight:650;display:block}.card .row+h2,.card .row+h3,.card>.badge+h2,.card>.badge+h3{margin-top:14px}.drawn-underline{display:inline-block;position:relative}.drawn-underline:after{content:"";border-top:4px solid var(--blue);border-radius:50%;width:102%;height:10px;position:absolute;bottom:-9px;left:0;transform:rotate(-2deg)}.page-header h1{padding-bottom:15px;position:relative}.page-header h1:after{content:"";border-top:3px solid var(--blue);border-radius:50%;width:64px;height:5px;position:absolute;bottom:0;left:0;transform:rotate(-2deg)}.metric strong{color:var(--navy);font-family:DM Sans Variable,sans-serif}.hero-card,.welcome-card{padding:32px}.hero-card .btn:not(.btn-secondary):not(.btn-ghost),.welcome-card .btn:not(.btn-secondary):not(.btn-ghost){background:#1769e6}.hero-card .btn:hover,.welcome-card .btn:hover{background:var(--blue-dark);color:#fff}.support-note{background:#fffefb;border-radius:3px 3px 6px;margin:12px 2px 25px;padding:16px;transform:rotate(-2deg);box-shadow:0 3px 9px #13234309}.support-note strong{color:var(--blue-dark);margin-top:5px;font-family:Caveat Variable,cursive;font-size:21px;font-weight:600;line-height:1.15;display:inline-block}.login-story>.brand{width:210px;height:36px}.login-story>.brand .brand-image{width:244px;height:244px;top:-103px;left:-14px}.login-message .handwritten{display:inline-block;transform:rotate(-3deg)}.login-message h1{color:var(--navy)}.login-form-inner{max-width:400px}.login-form-inner input{border-radius:12px;min-height:50px}.login-form-inner form .btn{min-height:50px;font-size:15px}::selection{color:var(--navy);background:#cfe2ff}@media (max-width:760px){.mobile-bar{background:var(--paper)}.card{border-radius:22px}.hero-card,.welcome-card{padding:24px}.login-message h1{font-size:clamp(36px,9vw,43px)}.login-story{background-position:60%}.page-header{flex-wrap:wrap}}.dashboard-home{gap:18px}.dashboard-home .page-header{margin-bottom:0}.dashboard-home .page-header h1{font-size:clamp(25px,2.4vw,34px)}.dashboard-home .page-header p{margin-bottom:0}.dashboard-home .card{padding:22px}.dashboard-home .card h2{margin:10px 0;font-size:22px}.dashboard-home .grid-2{gap:18px}.programme-banner{color:#fff;background:#1763d1;border-radius:22px;justify-content:space-between;align-items:center;gap:20px;padding:22px 26px;display:flex}.programme-banner h2{color:#fff;margin:0 0 6px;font-size:26px}.programme-banner p{max-width:52ch;margin:0}.programme-banner .btn{color:#134c9d;white-space:nowrap;background:#fff}.programme-banner .btn:hover{background:#eaf2ff}.dashboard-action{flex-direction:column;text-decoration:none;display:flex}.dashboard-action p{margin-bottom:12px}.dashboard-action>span{color:#1359bc;margin-top:auto;font-weight:600}.dashboard-action:hover{border-color:#1763d1}.dashboard-excerpt{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.signup-link{margin-top:22px}.signup-link a{color:#1359bc;font-weight:650}.rehearsal-banner{color:#543b00;text-align:center;z-index:40;background:#fff1bd;padding:8px 16px;font-weight:650;position:relative}.rehearsal-checklist li{max-width:80ch;margin-bottom:18px}@media (min-width:1000px){.workspace main:has(.dashboard-home){padding:24px 32px}.workspace:has(.dashboard-home) .app-footer{padding:10px 32px}.dashboard-home .dashboard-actions .card{padding:18px 22px}}@media (max-width:999px){.programme-banner{flex-wrap:wrap}}.demo-switcher-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.demo-switcher-controls strong{color:var(--navy);margin-right:4px;font-size:13px}.demo-switcher button{color:#134c9d;background:#fff;border:1px solid #b9d3f7;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:600}.demo-switcher button:hover,.demo-switcher button[aria-pressed=true]{color:#fff;background:#1763d1;border-color:#1763d1}.demo-switcher p{margin:6px 0 0;font-size:12px}.demo-switcher [role=alert]{color:#a51e25;max-width:50ch}.login-form-inner>.demo-switcher{background:#eaf2ff;border-radius:12px;margin:20px 0;padding:16px}.topbar:has(.demo-switcher){flex-wrap:wrap;gap:12px}.student-home-cards{align-items:stretch}.dashboard-home .student-home-cards .card{flex-direction:column;padding:clamp(24px,3vw,38px);display:flex}.dashboard-home .student-home-cards h2{margin:0 0 20px;font-size:clamp(24px,2.3vw,32px)}.student-home-cards p{max-width:52ch}.student-home-cards .btn{align-self:flex-start;margin-top:auto}.join-workshop-card{background:#e7f0fa;border-color:#d1e2f5}.workshop-name,.programme-lead{font-size:20px;font-weight:650}.interview-programme-card{color:#fff;background:#1763d1;border-color:#1763d1}.interview-programme-card h2{color:#fff}.interview-programme-card .btn{color:#134c9d;background:#fff}.interview-programme-card .btn:hover{background:#e7f0fa}.programme-deadline{padding-top:8px;font-weight:700}.workshop-group-card{background:#e7f0fa;border-color:#d1e2f5}.notes-card{background:#ecf5ff;border-color:#d1e2f5}.workshop-tip-card{background:#e7f0fa;border-color:#d1e2f5}.profile-trigger{text-align:left;width:100%;color:var(--ink);background:0 0;border:0;border-radius:12px}.profile-trigger:hover{background:#e7f0fa}.profile-trigger-text{flex-direction:column;flex:1;min-width:0;display:flex}.profile-trigger-text strong{overflow-wrap:anywhere}.profile-trigger-text>span{color:var(--muted);text-transform:capitalize;font-size:12px}.profile-dialog{background:var(--paper);color:var(--ink);border:1px solid #d1e2f5;border-radius:24px;width:min(520px,100vw - 32px);max-height:calc(100dvh - 40px);padding:28px;overflow-y:auto;box-shadow:0 24px 80px #13234330}.profile-dialog::backdrop{background:#13234370}.profile-dialog h2{margin:0}.profile-dialog .row{margin-bottom:12px}.profile-close{background:#e7f0fa;border:0;border-radius:50%;width:36px;height:36px;font-size:24px}.profile-preview{align-items:center;gap:16px;display:flex}.profile-preview p{color:var(--muted);margin:0}.profile-colors{flex-wrap:wrap;gap:12px;padding:12px;display:flex}.profile-colors label{align-items:center;gap:5px;font-size:13px;display:flex}.profile-colors label span{border-radius:50%;width:16px;height:16px}.reading-large .workspace main{font-size:18px}.reading-large .workspace main .small,.reading-large .workspace main .muted{font-size:16px}.reading-large .workspace main textarea,.reading-large .workspace main input{font-size:18px}.avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%;display:block}.avatar-large{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:112px;height:112px;font-size:38px;display:inline-flex}.profile-preview .avatar-large{width:72px;height:72px;font-size:26px}.profile-onboarding{--profile-accent:#1763d1;--profile-light:#e7f0fa;background:var(--paper);min-height:100dvh;padding:28px clamp(20px,5vw,80px) 40px}.onboarding-top{justify-content:space-between;align-items:center;gap:20px;max-width:1240px;margin:0 auto 38px;display:flex}.onboarding-top>span:last-child{color:var(--muted);font-size:14px}.onboarding-layout{grid-template-columns:minmax(260px,340px) minmax(0,650px);justify-content:center;align-items:start;gap:clamp(32px,6vw,90px);max-width:1240px;margin:0 auto;display:grid}.profile-passport{background:var(--profile-light);border:1px solid color-mix(in srgb, var(--profile-accent) 25%, white);text-align:center;border-radius:30px 30px 12px 12px;min-height:440px;padding:28px;transition:background-color .35s,border-color .35s;position:sticky;top:30px;transform:rotate(-2deg);box-shadow:0 12px 35px #1323430d}.profile-passport .handwritten{color:var(--profile-accent);margin-bottom:26px;font-size:26px;display:block}.passport-face{justify-content:center;margin-bottom:22px;display:flex}.passport-face .avatar-large{transition:background-color .35s;box-shadow:0 0 0 8px #ffffffa0}.profile-passport h2{overflow-wrap:anywhere;margin-bottom:8px;font-size:28px;line-height:1.15}.passport-course{color:var(--profile-accent);font-size:17px;font-weight:650}.passport-rule{background:color-mix(in srgb, var(--profile-accent) 20%, white);height:1px;margin:22px -28px}.profile-passport>p:not(.passport-course){color:var(--muted);font-size:14px}.profile-passport ul{text-align:left;gap:10px;margin:20px 0;padding:0;list-style:none;display:grid}.profile-passport li{overflow-wrap:anywhere;align-items:flex-start;gap:8px;font-size:14px;display:flex}.passport-stamp{border:1.5px solid var(--profile-accent);color:var(--profile-accent);border-radius:8px;align-items:center;gap:8px;margin-top:20px;padding:7px 11px;font-weight:650;display:inline-flex;transform:rotate(4deg)}.onboarding-workspace{min-width:0;padding-top:8px}.onboarding-progress{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:34px;display:flex}.onboarding-progress>span{color:#71808d;align-items:center;gap:7px;font-size:12px;line-height:1.2;display:flex}.onboarding-progress>span>span{border:1px solid #c7cfda;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:25px;height:25px;font-size:12px;display:inline-flex}.onboarding-progress>.step-active{color:var(--profile-accent);font-weight:700}.onboarding-progress .step-active>span,.onboarding-progress .step-done>span{border-color:var(--profile-accent);background:var(--profile-accent);color:#fff}.onboarding-stage{min-height:380px;animation:.32s ease-out both profile-stage-enter}.onboarding-stage>.handwritten,.profile-ready>.handwritten{color:var(--profile-accent);margin:0 0 10px;font-size:25px;display:block}.onboarding-stage h1{letter-spacing:-1.7px;margin-bottom:18px;font-size:clamp(32px,3.5vw,46px);line-height:1.1}.onboarding-stage h1:focus{outline:none}.onboarding-stage>p.muted{max-width:58ch;margin-bottom:30px;font-size:17px}.onboarding-stage .field{margin-bottom:24px}.onboarding-stage input{border-radius:12px;min-height:52px}.photo-picker{align-items:center;gap:24px;margin:30px 0 8px;display:flex}.photo-picker p{margin:10px 0 0}.onboarding-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:28px;padding-top:20px;display:flex}.onboarding-actions .btn:not(.btn-ghost){background:var(--profile-accent);min-width:150px}.colour-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 10px;margin:38px 0;display:grid}.colour-choice{color:var(--ink);background:0 0;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:8px 2px;font-size:13px;display:flex}.colour-choice>span{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .2s,box-shadow .2s;display:flex}.colour-choice:hover>span{transform:translateY(-4px)}.colour-choice.selected>span{box-shadow:0 0 0 4px var(--paper), 0 0 0 6px var(--profile-accent);transform:scale(1.05)}.course-choices{gap:12px;display:grid}.course-choice{text-align:left;color:var(--ink);background:#fff;border:1.5px solid #e0e6ed;border-radius:16px;grid-template-columns:40px 1fr 20px;align-items:center;gap:0 16px;padding:20px;transition:background .2s,border-color .2s,transform .2s;display:grid}.course-choice>svg:first-child{color:var(--profile-accent);grid-row:span 2}.course-choice strong{font-size:19px}.course-choice>span{color:var(--muted);grid-column:2;margin-top:4px;font-size:14px}.course-choice .choice-check{color:var(--profile-accent);grid-area:1/3/span 2}.course-choice.selected{border-color:var(--profile-accent);background:var(--profile-light);transform:translate(4px)}.university-entry{align-items:flex-end;gap:12px;display:flex}.university-entry>.field{flex:1;min-width:0;margin-bottom:0}.university-entry .btn{min-height:52px}.university-chips{flex-wrap:wrap;gap:10px;margin:22px 0;display:flex}.university-chips>span{background:var(--profile-light);color:var(--ink);overflow-wrap:anywhere;border-radius:10px;align-items:center;gap:10px;max-width:100%;padding:10px 12px;font-size:14px;display:inline-flex}.university-chips button{background:0 0;border:0;padding:4px;display:inline-flex}.profile-ready{text-align:left;padding:20px 0}.profile-ready h1{font-size:clamp(34px,4vw,48px)}.profile-celebration{width:100%;height:128px;margin-bottom:30px;position:relative;overflow:hidden}.profile-celebration>span{color:#fff;background:var(--profile-accent);border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;animation:.5s ease-out both profile-pop;display:flex;position:absolute;top:24px;left:calc(50% - 42px)}.profile-celebration i{background:var(--profile-accent);opacity:0;width:9px;height:14px;animation:.9s ease-out both profile-confetti;animation-delay:calc(var(--confetti-index) * 20ms);transform:rotate(calc(var(--confetti-index) * 27deg));border-radius:2px;position:absolute;top:55px;left:50%}.profile-celebration i:nth-child(3n){background:#dfaf3a}.profile-celebration i:nth-child(3n+1){background:#7250a3}.profile-ready .btn{background:var(--profile-accent);margin-top:18px}.passwordless-login{margin:22px 0}.passwordless-login>.btn{justify-content:center;align-items:center;gap:14px;display:flex}.auth-divider{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.otp-input{letter-spacing:.35em;text-align:center;font-size:24px}.local-auth{font-size:13px}.demo-onboarding-link{color:#1359bc;margin-top:5px;font-size:12px;display:inline-block}.security-page{max-width:540px;margin:60px auto;padding:30px}.security-page img{align-self:center;max-width:100%}@keyframes profile-stage-enter{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes profile-pop{0%{opacity:0;transform:scale(.7)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes profile-confetti{0%{opacity:0;translate:0}20%{opacity:1}to{opacity:0;translate:calc((var(--confetti-index) - 6.5) * 25px) calc(-60px + var(--confetti-index) * 6px);rotate:calc(var(--confetti-index) * 65deg)}}@media (max-width:850px){.profile-onboarding{padding:20px 22px 32px}.onboarding-top{margin-bottom:26px}.onboarding-top>span:last-child{display:none}.onboarding-layout{grid-template-columns:1fr;gap:28px}.profile-passport{text-align:left;border-radius:20px;grid-template-columns:60px 1fr;gap:4px 20px;min-height:0;padding:20px 24px;display:grid;position:relative;top:0;transform:none}.profile-passport>.handwritten,.profile-passport .passport-rule,.profile-passport>p:not(.passport-course),.profile-passport ul,.passport-stamp{display:none}.passport-face{grid-row:span 2;margin:0}.passport-face .avatar-large{width:56px;height:56px;font-size:22px;box-shadow:0 0 0 4px #ffffffa0}.profile-passport h2{align-self:end;margin:0;font-size:23px}.passport-course{margin:0;font-size:14px}.onboarding-stage{min-height:340px}.onboarding-stage h1{font-size:34px}.onboarding-progress>span{text-align:center;flex-direction:column;gap:7px;font-size:11px}}@media (max-width:460px){.colour-choice>span{width:50px;height:50px}.colour-choice{font-size:11px}.photo-picker{align-items:flex-start;gap:16px}.photo-picker .avatar-large{width:72px;height:72px;font-size:26px}.photo-picker .btn{padding:10px 12px;font-size:13px}.university-entry{flex-wrap:wrap}.university-entry .btn{min-height:44px}.onboarding-actions>.small{max-width:120px}}@media (prefers-reduced-motion:reduce){.onboarding-stage,.profile-celebration>span,.profile-celebration i{animation:none}.profile-celebration i{display:none}.profile-passport,.colour-choice>span,.course-choice,.passport-face .avatar-large{transition:none}.colour-choice:hover>span,.course-choice.selected{transform:none}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.avatar-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.avatar-choice{color:#24374c;cursor:pointer;font:inherit;background:#f0f5fb;border:2px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:8px 3px;font-size:11px;transition:transform .18s,border-color .18s,background .18s;display:flex;position:relative}.avatar-choice:hover{background:#e1ecfa;transform:translateY(-3px)}.avatar-choice.selected{border-color:var(--profile-accent);background:var(--profile-light)}.avatar-choice:focus-visible{outline:3px solid var(--profile-accent);outline-offset:3px}.avatar-choice:disabled{cursor:wait}.avatar-choice>svg{position:absolute;top:3px;right:3px}.avatar-choice .avatar{border-radius:15px;width:52px;height:52px;overflow:hidden}.avatar-choice .avatar img{object-fit:cover;width:100%;height:100%}.avatar-picker-label{margin-top:18px;font-weight:700}.not-applied-choice{background:var(--profile-light);cursor:pointer;border-radius:12px;align-items:center;gap:10px;margin:16px 0;padding:14px;display:flex}@media (max-width:420px){.avatar-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.avatar-choice{transition:none}.avatar-choice:hover{transform:none}}
