:root{--bg:#f4f9fb;--surface:#fff;--surface-raised:#fafdfe;--surface-muted:#e7f0f2;--ink:#0b1820;--muted:#4e606d;--border:#c8d7dd;--border-strong:#94b0bc;--accent:#007e6f;--accent-strong:#005c50;--accent-soft:#c8f2e9;--accent-ink:#001612;--coral:#da4c41;--blue:#0c72cb;--danger:#cc272e;--shadow:0 12px 30px #1a2b3614}@supports (color:lab(0% 0 0)){:root{--bg:lab(97.4851% -1.53571 -1.47938);--surface:lab(100% 0 0);--surface-raised:lab(99.0968% -1.02496 -.987005);--surface-muted:lab(94.0294% -2.55322 -2.46171);--ink:lab(7.23971% -3.22449 -7.73624);--muted:lab(39.7216% -4.80789 -9.50348);--border:lab(85.0093% -4.1942 -4.8471);--border-strong:lab(70.0057% -7.98616 -9.33913);--accent:lab(47.4711% -57.8433 -1.38056);--accent-strong:lab(34.462% -51.0927 -1.19147);--accent-soft:lab(92.4408% -15.3548 -.435591);--accent-ink:lab(5.60482% -8.46475 -.252065);--coral:lab(53.0244% 56.0367 38.285);--blue:lab(46.7919% -.442624 -54.1669);--danger:lab(45.7636% 63.3818 40.1799);--shadow:0 12px 30px lab(16.5042% -4.44046 -9.37879/.08)}}html[data-theme=dark]{--bg:#03090f;--surface:#071219;--surface-raised:#0b1922;--surface-muted:#11212c;--ink:#e3edf1;--muted:#88a4af;--border:#1b313c;--border-strong:#2f5665;--accent:#34d2bc;--accent-strong:#7de3d1;--accent-soft:#002621;--accent-ink:#e6f6f2;--coral:#fc8f6e;--blue:#74b2f8;--danger:#f97770;--shadow:0 16px 40px #00000057}@supports (color:lab(0% 0 0)){html[data-theme=dark]{--bg:lab(2.22597% -1.03781 -2.90979);--surface:lab(4.84908% -2.23816 -6.21912);--surface-raised:lab(7.79596% -3.50863 -8.08467);--surface-muted:lab(11.8571% -4.28698 -9.33613);--ink:lab(93.1136% -3.06004 -2.95171);--muted:lab(65.3649% -7.96852 -9.33099);--border:lab(18.8801% -6.23682 -10.1675);--border-strong:lab(34.0863% -10.7271 -13.0828);--accent:lab(76.099% -45.4183 -1.19163);--accent-strong:lab(83.8457% -34.5766 -.93739);--accent-soft:lab(12.5247% -19.4992 -.490135);--accent-ink:lab(95.5844% -6.10998 -.176668);--coral:lab(71.0741% 39.7723 36.6847);--blue:lab(70.5431% -6.02356 -41.3904);--danger:lab(65.9538% 50.1356 28.6987);--shadow:0 16px 40px lab(.00674248% -.00111014 -.0522882/.34)}}*{box-sizing:border-box;letter-spacing:0}html{background:var(--bg);scroll-behavior:smooth}body{background:var(--bg);min-width:320px;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.55}button,input,textarea,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}:focus-visible{outline:3px solid color-mix(in oklch, var(--accent) 55%, transparent);outline-offset:2px}.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}.app-shell{min-height:100vh}.topbar{z-index:30;border-bottom:1px solid var(--border);background:color-mix(in oklch, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:minmax(190px,1fr) auto minmax(44px,1fr);align-items:center;min-height:64px;padding:8px max(20px,50vw - 620px);display:grid;position:sticky;top:0}.brand{align-items:center;gap:10px;width:max-content;font-size:16px;font-weight:760;display:inline-flex}.brand-mark{background:var(--accent);color:#010a08;color:lab(2.08452% -2.55334 -.0757515);border-radius:7px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:850;display:grid}.primary-nav{align-items:center;gap:4px;display:flex}.primary-nav a{min-height:40px;color:var(--muted);border-radius:7px;align-items:center;gap:7px;padding:8px 12px;font-size:14px;font-weight:650;display:inline-flex}.primary-nav a:hover,.primary-nav a.active{background:var(--surface-muted);color:var(--ink)}.topbar>.icon-button{justify-self:end}.icon-button{border:1px solid var(--border);background:var(--surface);border-radius:7px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:inline-grid}.icon-button:hover{border-color:var(--border-strong);background:var(--surface-muted)}.page-container{width:min(1180px,100% - 40px);margin:0 auto;padding:34px 0 72px}.eyebrow{color:var(--accent-strong);text-transform:uppercase;margin:0 0 5px;font-size:11px;font-weight:820}html[data-theme=dark] .eyebrow{color:var(--accent)}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin-top:0;line-height:1.18}.profile-band{border-bottom:1px solid var(--border);grid-template-columns:minmax(210px,.55fr) minmax(0,1.45fr);align-items:end;gap:34px;padding:24px 0 30px;display:grid}.profile-band-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.profile-band h1{margin-bottom:0;font-size:34px}.profile-switcher{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.profile-switcher button{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:8px;align-items:center;gap:10px;min-width:0;min-height:64px;padding:9px 10px;display:flex}.profile-switcher button.selected{border-color:var(--profile-accent,var(--accent));box-shadow:inset 0 0 0 1px var(--profile-accent,var(--accent))}.profile-avatar{background:color-mix(in oklch, var(--profile-accent,var(--accent)) 24%, var(--surface));width:40px;height:40px;color:var(--ink);border-radius:50%;flex:0 0 40px;place-items:center;font-size:12px;font-weight:820;display:grid}.profile-switcher strong,.profile-switcher small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.profile-switcher small{color:var(--muted);font-size:12px}.secondary-button,.primary-button,.complete-button,.text-button{border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:40px;font-weight:720;display:inline-flex}.secondary-button{border:1px solid var(--border);background:var(--surface);padding:8px 13px}.secondary-button:hover{border-color:var(--border-strong);background:var(--surface-muted)}.primary-button{border:1px solid var(--accent-strong);background:var(--accent);color:#000c0a;color:lab(2.62394% -3.67475 -.109267);padding:9px 16px}.dashboard-summary{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin:28px 0 0;display:grid}.dashboard-summary>div{border-right:1px solid var(--border);grid-template-columns:24px 1fr auto;align-items:center;gap:10px;min-height:72px;padding:12px 20px;display:grid}.dashboard-summary>div:last-child{border-right:0}.dashboard-summary svg{color:var(--accent-strong)}.dashboard-summary span{color:var(--muted)}.dashboard-summary strong{font-size:22px}.content-section{padding:42px 0 0}.section-heading,.page-title,.dialog-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.section-heading{margin-bottom:18px}.section-heading h2{margin-bottom:0;font-size:25px}.section-heading.compact{margin-bottom:14px}.section-heading.compact h2{font-size:18px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.course-card{border:1px solid var(--border);background:var(--surface);min-height:230px;box-shadow:var(--shadow);border-radius:8px;grid-template-columns:136px minmax(0,1fr);display:grid;overflow:hidden}.course-card-cover{background:var(--course-light,var(--accent));color:#000b15;color:lab(2.45969% -1.57011 -6.93051);flex-direction:column;justify-content:space-between;padding:18px;display:flex}html[data-theme=dark] .course-card-cover{background:var(--course-dark,var(--accent))}.course-card-cover span{font-size:24px;font-weight:900;line-height:1}.course-card-cover small{font-weight:800}.course-card-body{flex-direction:column;min-width:0;padding:18px;display:flex}.course-meta{color:var(--muted);text-transform:uppercase;flex-wrap:wrap;gap:6px 12px;font-size:11px;font-weight:700;display:flex}.course-card h3{margin:12px 0 7px;font-size:19px}.course-card p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.course-progress{background:var(--surface-muted);border-radius:3px;height:5px;margin-top:auto;overflow:hidden}.course-progress span,.curriculum-progress span{background:var(--course-light,var(--accent));height:100%;display:block}.course-card-footer{justify-content:space-between;align-items:center;margin-top:11px;display:flex}.course-card-footer>span{color:var(--muted);font-size:12px;font-weight:700}.text-button{min-height:32px;color:var(--accent-strong);background:0 0;border:0;padding:0}html[data-theme=dark] .text-button{color:var(--accent)}.empty-state{border:1px dashed var(--border-strong);min-height:130px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;gap:12px;display:flex}.app-dialog{border:1px solid var(--border);background:var(--surface);width:min(520px,100% - 28px);color:var(--ink);border-radius:8px;padding:0;box-shadow:0 24px 70px #00000159;box-shadow:0 24px 70px lab(.108826% -.0552312 -.59152/.35)}.app-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0002059e;background:lab(.458952% -.292964 -1.29316/.62)}.app-dialog form{gap:16px;padding:24px;display:grid}.dialog-heading h2{margin-bottom:0}label{gap:7px;display:grid}label>span{color:var(--muted);font-size:13px;font-weight:680}input,textarea,select{border:1px solid var(--border);background:var(--surface-raised);border-radius:6px;width:100%;min-height:42px;padding:9px 11px}textarea{resize:vertical}input:hover,textarea:hover,select:hover,input:focus,textarea:focus,select:focus{border-color:var(--border-strong)}.field-row{grid-template-columns:1fr 1.3fr;gap:12px;display:grid}.form-error{color:var(--danger);margin:0;font-weight:700}.studio-page{width:min(920px,100% - 40px)}.page-title{border-bottom:1px solid var(--border);padding:10px 0 30px}.page-title h1{margin-bottom:0;font-size:34px}.page-title>svg{color:var(--accent)}.course-form{grid-template-columns:1fr 1fr;gap:0 34px;display:grid}.form-section{border-bottom:1px solid var(--border);align-content:start;gap:15px;padding:32px 0;display:grid}.sources-section{grid-column:1/-1}.source-row{grid-template-columns:22px 1fr 1.35fr 130px 40px;align-items:center;gap:8px;display:grid}.source-row>svg{color:var(--muted)}.submit-course{width:max-content;margin-top:24px}.publish-result{gap:12px;padding:34px 0;display:grid}.publish-result code{border:1px solid var(--border);background:var(--surface-raised);color:var(--accent-strong);border-radius:7px;padding:16px;display:block;overflow-x:auto}.learning-page{grid-template-columns:278px minmax(0,1fr);min-height:calc(100vh - 64px);display:grid}.curriculum-sidebar{border-right:1px solid var(--border);background:var(--surface-raised);height:calc(100vh - 64px);padding:22px 18px 40px max(18px,50vw - 720px);position:sticky;top:64px;overflow-y:auto}.back-link{color:var(--muted);align-items:center;gap:4px;font-size:13px;font-weight:700;display:inline-flex}.curriculum-course{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;margin:22px 0 14px;display:grid}.course-mini-mark{color:#000b14;color:lab(2.46951% -1.50578 -5.71247);text-align:center;border-radius:7px;place-items:center;width:42px;height:42px;font-size:9px;font-weight:900;display:grid}.curriculum-course h1{margin:0 0 3px;font-size:15px}.curriculum-course p{color:var(--muted);margin:0;font-size:12px}.curriculum-progress{background:var(--surface-muted);border-radius:3px;height:5px;overflow:hidden}.curriculum-progress span{background:var(--accent)}.curriculum-nav{gap:22px;margin-top:26px;display:grid}.curriculum-nav section{gap:5px;display:grid}.curriculum-nav h2{color:var(--muted);text-transform:uppercase;margin:0 7px 3px;font-size:11px;font-weight:800}.curriculum-nav button{min-height:42px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-columns:18px minmax(0,1fr) 24px;align-items:center;gap:7px;padding:7px;display:grid}.curriculum-nav button:hover,.curriculum-nav button.active{background:var(--surface-muted);color:var(--ink)}.curriculum-nav button.active{box-shadow:inset 3px 0 0 var(--accent)}.curriculum-nav button span{text-overflow:ellipsis;font-size:13px;font-weight:650;overflow:hidden}.curriculum-nav button small{color:var(--muted);text-align:right}.lesson-workspace{min-width:0;padding:30px max(24px,50vw - 720px) 90px 34px}.lesson-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:30px;padding-bottom:24px;display:flex}.lesson-header h1{margin-bottom:8px;font-size:32px}.lesson-header p:last-child{max-width:760px;color:var(--muted);margin:0}.lesson-actions{flex:none;gap:8px;display:flex}.lesson-actions select{width:150px}.complete-button{border:1px solid var(--border-strong);background:var(--surface);min-width:122px;padding:8px 12px}.complete-button.completed{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.lesson-meta{color:var(--muted);text-transform:uppercase;gap:14px;padding:12px 0;font-size:12px;font-weight:700;display:flex}.lesson-meta span{align-items:center;gap:5px;display:inline-flex}.lesson-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:34px;margin-top:20px;display:grid}.lesson-reading{min-width:0;font-family:ui-serif,Georgia,Cambria,Times New Roman,serif;font-size:18px;line-height:1.72}.lesson-reading>article,.lesson-reading>main{display:contents}.lesson-reading header{padding-bottom:15px}.lesson-reading header>p:first-child{color:var(--accent-strong);text-transform:uppercase;font-family:Inter,ui-sans-serif,sans-serif;font-size:11px;font-weight:800}.lesson-reading h1{display:none}.lesson-reading h2{margin:34px 0 9px;font-family:Inter,ui-sans-serif,sans-serif;font-size:21px}.lesson-reading p,.lesson-reading li{max-width:75ch}.lesson-reading p{margin:0 0 16px}.lesson-reading li+li{margin-top:7px}.lesson-reading aside{border-left:3px solid var(--coral);background:color-mix(in oklch, var(--coral) 8%, var(--surface));margin:24px 0;padding:12px 16px}.lesson-reading aside h2{margin-top:0}.lesson-reading details{border:1px solid var(--border);background:var(--surface-raised);border-radius:6px;margin:9px 0;padding:11px 13px}.lesson-reading summary{cursor:pointer;font-family:Inter,ui-sans-serif,sans-serif;font-size:14px;font-weight:700}.lesson-reading details p{margin:11px 0 0}.lesson-support{gap:16px;display:grid}.checkpoint-panel,.sandbox-panel,.source-panel,.pdf-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px}.checkpoint-panel{border-color:color-mix(in oklch, var(--accent) 55%, var(--border));background:var(--accent-soft);padding:18px}.checkpoint-panel>svg{color:var(--accent-strong);margin-bottom:13px}.checkpoint-panel h2{margin:0;font-size:17px;line-height:1.4}.sandbox-panel,.source-panel{padding:16px}.sandbox-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.number-control{gap:4px}.number-control>span{font-size:11px}.number-control input{min-height:36px;padding:6px 7px}.contribution-list{gap:6px;margin:15px 0;display:grid}.contribution-list>div,.score-output{justify-content:space-between;gap:16px;display:flex}.contribution-list>div{color:var(--muted);font-size:13px}.score-output{border-top:1px solid var(--border);color:var(--accent-strong);padding-top:11px}.score-output strong{font-size:21px}.matrix-preview{grid-template-columns:repeat(var(--matrix-columns), minmax(10px, 1fr));gap:4px;margin-top:14px;display:grid}.matrix-preview span{aspect-ratio:1.35;border:1px solid color-mix(in oklch, var(--blue) 50%, var(--border));background:color-mix(in oklch, var(--blue) 12%, var(--surface));border-radius:2px}.sandbox-result{color:var(--muted);margin:13px 0 0;font-size:13px}.source-panel a,.source-panel>span{border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:13px;display:flex}.source-panel a:hover{color:var(--accent-strong)}.pdf-panel{overflow:hidden}.pdf-loading{min-height:180px;color:var(--muted);place-items:center;font-weight:800;display:grid}.pdf-toolbar{border-bottom:1px solid var(--border);min-height:46px;color:var(--muted);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;font-weight:800;display:flex}.pdf-toolbar a{color:var(--accent-strong);align-items:center;gap:6px;display:inline-flex}.pdf-frame.pdfSlick{background:#d6e0e4;background:lab(88.4603% -2.8117 -3.24018);min-width:0;height:520px;padding:10px;position:relative}.pdf-frame .pdfSlickContainer{background:0 0;height:100%}html[data-theme=dark] .pdf-frame.pdfSlick{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:oklch(45% .04 232) transparent;background:#01050a;background:lab(1.20112% -.678785 -2.26767)}html[data-theme=dark] .pdf-frame .pageContainer,html[data-theme=dark] .pdf-frame .page{background:#071117!important;background:lab(4.44693% -1.89473 -5.03531)!important;box-shadow:0 0 0 1px #27414f,0 8px 26px #00000073!important;box-shadow:0 0 0 1px lab(25.8541% -7.18418 -11.6365),0 8px 26px lab(.00674248% -.00111014 -.0522882/.45)!important}html[data-theme=dark] .pdf-frame canvas{filter:invert(.86)hue-rotate(180deg)contrast(.94)}@media (max-width:1060px){.course-grid{grid-template-columns:1fr}.lesson-layout{grid-template-columns:minmax(0,1fr)}.lesson-support{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-panel,.source-panel{grid-column:1/-1}}@media (max-width:820px){.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;grid-template-columns:1fr auto}.primary-nav{z-index:40;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;justify-content:center;padding:6px;position:fixed;bottom:12px;left:12px;right:12px}.primary-nav a{flex:1;justify-content:center}.profile-band{grid-template-columns:1fr;align-items:start}.dashboard-summary{grid-template-columns:1fr}.dashboard-summary>div{border-right:0;border-bottom:1px solid var(--border)}.dashboard-summary>div:last-child{border-bottom:0}.course-form{grid-template-columns:1fr}.sources-section{grid-column:auto}.source-row{grid-template-columns:22px 1fr 40px}.source-row input:nth-of-type(2),.source-row select{grid-column:2/3}.learning-page{display:block}.curriculum-sidebar{border-right:0;border-bottom:1px solid var(--border);width:auto;height:auto;max-height:400px;padding:18px 20px;position:static}.lesson-workspace{padding:24px 20px 100px}.lesson-header{display:grid}}@media (max-width:600px){.page-container,.studio-page{width:min(100% - 24px,1180px);padding-top:20px}.brand>span:last-child{display:none}.primary-nav a{padding-inline:8px;font-size:11px}.profile-band-heading,.section-heading{align-items:flex-start}.profile-band h1,.page-title h1,.lesson-header h1{font-size:27px}.profile-switcher{grid-template-columns:1fr 1fr}.course-card{grid-template-columns:92px minmax(0,1fr)}.course-card-cover{padding:13px}.course-card-cover span{font-size:17px}.course-card-body{padding:14px}.course-meta{gap:4px 8px}.field-row,.lesson-support{grid-template-columns:1fr}.lesson-actions{grid-template-columns:1fr 1fr;display:grid}.lesson-actions select{width:100%}.lesson-reading{font-size:17px}.pdf-frame.pdfSlick{height:430px}}
