:root{--bg:#eef3f7;--surface:#fff;--surface-soft:#f7fafc;--surface-tint:#f1f6f9;--line:#d9e4ec;--line-strong:#c6d5df;--ink:#131525;--muted:#627589;--quiet:#8b9bab;--brand:#201747;--brand-soft:#f2effa;--cyan:#18c8c2;--green:#3ebd73;--orange:#eb6f55;--purple:#8e2cff;--radius:10px;--radius-lg:16px;--sidebar:286px;--motion:cubic-bezier(.32, .72, 0, 1);--heading-font:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;font-family:Poppins,Segoe UI,system-ui,sans-serif}.course-player{color:#151723;background:#f5f6f8;grid-template-columns:380px minmax(0,1fr);min-height:100dvh;display:grid}.lesson-sidebar{background:#fff;border-right:1px solid #dfe4ea;height:100dvh;position:sticky;top:0;overflow-y:auto}.lesson-brand{border-bottom:1px solid #e2e7ec;gap:10px;padding:30px 28px 24px;display:grid}.lesson-brand img{width:152px;height:auto}.lesson-brand span{color:#667386;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800}.lesson-progress{border-bottom:1px solid #e2e7ec;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.lesson-progress span,.lesson-progress strong{color:#667386;font-size:13px;font-weight:800}.lesson-list{gap:2px;padding:18px 0 28px;display:grid}.lesson-list a{color:#4d5664;border-left:3px solid #0000;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:16px;min-height:78px;padding:15px 26px;display:grid}.lesson-list a:hover{background:#f7f9fb}.lesson-list a.active{color:#201747;background:#f5f1fb;border-left-color:#4f2b86}.lesson-number{color:#7a8796;border:1px solid #dfe4ea;border-radius:4px;place-items:center;width:34px;height:34px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:800;display:grid}.lesson-list a.active .lesson-number{color:#4f2b86;border-color:#4f2b86}.lesson-copy{gap:6px;min-width:0;display:grid}.lesson-copy strong{color:currentColor;font-size:16px;font-weight:750;line-height:1.28}.lesson-copy small{color:#7a8796;font-size:12px;font-weight:700;line-height:1.25}.lesson-workspace{min-width:0}.lesson-topbar{z-index:5;background:#fffffff5;border-bottom:1px solid #dfe4ea;grid-template-columns:minmax(280px,520px);justify-content:end;align-items:center;gap:24px;min-height:70px;padding:14px 28px;display:grid;position:sticky;top:0}.lesson-topbar .portal-search input{color:#151723;background:#fff;border-color:#dfe4ea;border-radius:6px;height:42px}.lesson-main{max-width:1120px;margin:0 auto;padding:36px 32px 80px}.lesson-panel{gap:18px;display:grid}.lesson-heading{background:#fff;border:1px solid #dfe4ea;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:start;gap:30px;padding:34px 38px;display:grid}.lesson-topbar .portal-search{width:100%}.lesson-heading span,.lesson-section-title span{color:#4f2b86;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:900}.lesson-heading h1{color:#151723;letter-spacing:0;max-width:840px;margin:14px 0 12px;font-size:clamp(38px,5vw,68px);font-weight:750;line-height:.98}.lesson-heading p{color:#637083;max-width:820px;margin:0;font-size:17px;font-weight:600;line-height:1.65}.lesson-heading small{color:#667386;background:#f8fafb;border:1px solid #dfe4ea;border-radius:999px;align-items:center;min-height:32px;padding:0 11px;font-size:12px;font-weight:800;display:inline-flex}.lesson-content-card{background:#fff;border:1px solid #dfe4ea;border-radius:8px;gap:24px;padding:34px 38px;display:grid}.setup-doc-renderer{background:#fff;border:1px solid #dfe4ea;border-radius:8px;gap:22px;padding:38px 42px 42px;display:grid}.setup-doc-header h2{color:#201747;letter-spacing:0;margin:0;font-size:30px;font-weight:760;line-height:1.1}.lesson-doc-header{justify-content:space-between;align-items:center;gap:18px;display:flex}.lesson-doc-renderer .lesson-primary-action{flex:none}.security-prompt-pack{flex:none;position:relative}.security-modal-toggle{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.security-modal-open{cursor:pointer}.security-modal{z-index:20;place-items:center;padding:28px;display:none;position:fixed;inset:0}.security-modal-toggle:checked~.security-modal{display:grid}.security-modal-backdrop{cursor:pointer;background:#0c0e1875;position:absolute;inset:0}.security-modal-panel{z-index:1;background:#fff;border:1px solid #dfe4ea;border-radius:10px;gap:24px;width:min(1040px,100%);max-height:min(760px,100dvh - 56px);padding:34px;display:grid;position:relative;overflow:auto}.security-modal-head{grid-template-columns:minmax(0,1fr) 42px;align-items:start;gap:22px;display:grid}.security-modal-head span{color:#4f2b86;letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:900}.security-modal-head h2{color:#151723;letter-spacing:0;margin:9px 0 10px;font-size:36px;font-weight:760;line-height:1}.security-modal-head p{color:#637083;max-width:720px;margin:0;font-size:16px;font-weight:600;line-height:1.6}.security-modal-close{color:#201747;cursor:pointer;border:1px solid #dfe4ea;border-radius:6px;place-items:center;width:42px;height:42px;display:grid}.close-icon{width:22px;height:22px}.close-icon path{stroke:currentColor;stroke-linecap:round;stroke-width:2px}.security-risk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.security-risk-card{background:#fbfcfd;border:1px solid #e1e7ed;border-radius:8px;align-content:start;gap:12px;padding:20px;display:grid}.security-risk-card h3{color:#201747;margin:0;font-size:18px;font-weight:780;line-height:1.2}.security-risk-card p{color:#657487;margin:0;font-size:14px;font-weight:650;line-height:1.55}.security-risk-card pre{color:#f6f8fb;white-space:pre-wrap;background:#15112b;border-radius:6px;margin:0;padding:14px;overflow-x:auto}.security-risk-card code{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;font-weight:650;line-height:1.6}.setup-accordion-list{gap:14px;display:grid}.setup-accordion{background:#fff;border:1px solid #e1e7ed;border-radius:8px}.setup-accordion[open]{border-color:#cabfe3}.lesson-doc-renderer .setup-accordion[open]{border-color:#bde8d0}.setup-accordion summary{cursor:pointer;grid-template-columns:42px 46px minmax(0,1fr) 28px;align-items:center;gap:16px;min-height:86px;padding:20px 22px;list-style:none;display:grid}.setup-accordion summary::-webkit-details-marker{display:none}.setup-index{color:#4f2b86;border:1px solid #dfe4ea;border-radius:4px;place-items:center;width:34px;height:32px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:850;display:grid}.setup-icon{color:#3ebd73;background:#f8fafb;border:1px solid #dfe4ea;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.setup-accordion[open] .setup-icon{color:#201747;background:#f3fbf7;border-color:#c7ead7}.setup-icon svg{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:23px;height:23px}.setup-summary-copy{gap:7px;min-width:0;display:grid}.setup-summary-copy strong{color:#171827;font-size:20px;font-weight:780;line-height:1.2}.setup-summary-copy em{color:#657487;font-size:15px;font-style:normal;font-weight:650;line-height:1.45}.setup-chevron{color:#4f2b86;width:22px;height:22px;transition:transform .22s var(--motion);justify-self:end}.setup-chevron path{stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px}.setup-accordion[open] .setup-chevron{transform:rotate(180deg)}.setup-accordion-body{grid-template-columns:1fr;gap:26px;max-width:820px;padding:2px 22px 30px 126px;display:grid}.setup-accordion-body>div:first-child{grid-row:auto}.setup-accordion-body h3{color:#4f2b86;letter-spacing:.12em;text-transform:uppercase;margin:0 0 13px;font-size:12px;font-weight:900}.setup-doc-block{gap:12px;display:grid}.setup-accordion-body ol,.setup-accordion-body ul{color:#303747;gap:12px;margin:0;padding-left:20px;font-size:16px;font-weight:620;line-height:1.65;display:grid}.lesson-challenge-checklist{list-style:none;padding-left:0!important}.lesson-challenge-checklist li{padding-left:34px;position:relative}.lesson-challenge-checklist li:before{content:"";background:#fff;border:2px solid #3ebd73;border-radius:4px;width:18px;height:18px;position:absolute;top:.35em;left:0}.setup-accordion-body li::marker{color:#3ebd73;font-weight:900}.setup-command-block{color:#f6f8fb;white-space:pre-wrap;background:#15112b;border-radius:6px;margin:0;padding:20px 22px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:14px;font-weight:650;line-height:1.65;overflow-x:auto}.section-download-action{color:#201747;background:#fff;border:1px solid #c9d5df;border-radius:6px;justify-content:center;justify-self:start;align-items:center;min-height:42px;padding:0 16px;font-size:13px;font-weight:850;display:inline-flex}.section-download-action:hover{background:#f7f4fc;border-color:#4f2b86}.setup-note-block{background:#f7fbf9;border-left:3px solid #3ebd73;padding:18px 20px}.lesson-section-title h2{color:#201747;max-width:680px;margin:8px 0 0;font-size:26px;font-weight:750;line-height:1.15}.lesson-detail-list{counter-reset:lesson-detail;border-top:1px solid #e5e9ee;gap:0;margin:0;padding:0;list-style:none;display:grid}.lesson-detail-list li{counter-increment:lesson-detail;color:#252936;border-bottom:1px solid #e5e9ee;min-height:62px;padding:19px 18px 19px 58px;font-size:16px;font-weight:650;line-height:1.45;position:relative}.lesson-detail-list li:before{content:counter(lesson-detail, decimal-leading-zero);color:#3ebd73;border:1px solid #dfe4ea;border-radius:4px;place-items:center;width:36px;height:26px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;font-weight:850;display:grid;position:absolute;top:18px;left:0}.lesson-primary-action{color:#fff;background:#201747;border:1px solid #201747;border-radius:4px;justify-content:center;justify-self:start;align-items:center;min-height:44px;padding:0 18px;font-size:14px;font-weight:850;display:inline-flex}.lesson-navigation{justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.lesson-navigation a{color:#201747;background:#fff;border:1px solid #dfe4ea;border-radius:4px;justify-content:center;align-items:center;min-width:150px;min-height:46px;padding:0 18px;font-size:14px;font-weight:850;display:inline-flex}.lesson-navigation a:last-child{color:#fff;background:#201747;border-color:#201747}@media (max-width:1100px){.course-player{grid-template-columns:1fr}.lesson-sidebar{border-bottom:1px solid #dfe4ea;border-right:0;height:auto;position:static}.lesson-list{grid-template-columns:repeat(3,minmax(0,1fr));padding:12px}.lesson-list a{border-top:3px solid #0000;border-left:0;border-radius:6px;min-height:96px;padding:12px}.lesson-list a.active{border-top-color:#4f2b86}}@media (max-width:760px){.lesson-topbar,.lesson-heading,.lesson-list{grid-template-columns:1fr}.lesson-main{padding:18px 14px 48px}.lesson-heading,.lesson-content-card,.setup-doc-renderer{padding:24px}.lesson-heading h1{font-size:38px}.lesson-doc-header{flex-direction:column;align-items:stretch}.setup-accordion summary{grid-template-columns:38px 42px minmax(0,1fr) 22px;align-items:start;gap:12px}.setup-summary-copy{gap:5px}.setup-accordion-body{grid-template-columns:1fr;padding:0 18px 20px}.setup-accordion-body>div:first-child{grid-row:auto}.security-modal{padding:14px}.security-modal-panel{max-height:calc(100dvh - 28px);padding:22px}.security-modal-head h2{font-size:28px}.security-risk-grid{grid-template-columns:1fr}}:root[data-theme=dark]{--bg:#080b12;--surface:#111621;--surface-soft:#171d2a;--surface-tint:#1c2432;--line:#2c3646;--line-strong:#405064;--ink:#f4f7fb;--muted:#aebccc;--quiet:#768598;--brand:#f7f3ff;--brand-soft:#242035;--cyan:#20d8d0;--green:#53d98c;--orange:#ff866a;--purple:#b177ff}*{box-sizing:border-box}html{scroll-behavior:smooth;min-height:100%}body{background:var(--bg);min-height:100%;color:var(--ink);letter-spacing:0;margin:0;font-size:15px}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,.course-card-head span,.day-agenda li span,.setup-group-head>span{font-family:var(--heading-font);font-weight:700}.lms-shell{grid-template-columns:var(--sidebar) minmax(0, 1fr);background:var(--bg);gap:14px;min-height:100dvh;padding:14px;display:grid}.lms-sidebar{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;height:calc(100dvh - 28px);display:flex;position:sticky;top:14px;overflow:hidden}.brand-block{border-bottom:1px solid var(--line);gap:12px;padding:24px 22px 20px;display:grid}.brand-block img{width:142px;height:auto}.brand-block span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.course-nav{gap:6px;padding:18px 14px;display:grid}.course-nav a{border-radius:var(--radius);min-height:46px;color:var(--muted);transition:background .26s var(--motion), border-color .26s var(--motion), color .26s var(--motion);border:1px solid #0000;align-items:center;gap:12px;padding:0 12px;font-size:14px;font-weight:800;display:flex}.course-nav a:hover{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}.course-nav a.active{color:var(--brand);background:#e9fcfb;border-color:#b6ece9}:root[data-theme=dark] .course-nav a.active{background:#20d8d01f;border-color:#20d8d070}.course-nav a.active .nav-icon{background:var(--cyan);color:#fff}.course-status{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);gap:12px;margin:auto 14px 14px;padding:16px;display:grid}.course-status strong{font-size:14px}.course-status p{color:var(--muted);margin:0;font-size:12px;font-weight:700;line-height:1.5}.progress-bar{background:#e3ecf2;border-radius:99px;height:8px;overflow:hidden}:root[data-theme=dark] .progress-bar{background:#252d3b}.progress-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--cyan), var(--green), var(--orange));width:54%;height:100%;display:block}.lms-workspace{min-width:0}.lms-topbar{z-index:5;border:1px solid var(--line);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;grid-template-columns:minmax(0,1fr) minmax(420px,600px);align-items:center;gap:18px;min-height:72px;padding:12px 18px;display:grid;position:sticky;top:14px}:root[data-theme=dark] .lms-topbar{background:#111621f0}.topbar-context{min-width:0}.topbar-tools{align-items:center;gap:10px;min-width:0;display:flex}.topbar-breadcrumb{color:var(--muted);white-space:nowrap;flex-wrap:nowrap;align-items:center;gap:8px;font-size:14px;font-weight:850;display:flex;overflow:hidden}.topbar-breadcrumb span{flex:none;align-items:center;gap:8px;min-width:0;display:inline-flex}.topbar-breadcrumb span:last-child{flex:auto;min-width:0}.topbar-breadcrumb span:last-child b{text-overflow:ellipsis;overflow:hidden}.topbar-breadcrumb a:hover{color:var(--brand)}.topbar-breadcrumb b{color:var(--brand);font-weight:900}.topbar-breadcrumb em{color:var(--quiet);font-style:normal}.portal-search{flex:auto;min-width:0}.portal-search input{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);width:100%;height:46px;color:var(--ink);outline:0;padding:0 16px;font-weight:700}.portal-search input::placeholder{color:var(--quiet)}.portal-search input:focus{border-color:var(--cyan);background:var(--surface)}.theme-toggle{border:1px solid var(--line);background:var(--surface-soft);width:46px;height:46px;color:var(--muted);transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.theme-toggle:hover{border-color:var(--cyan);background:var(--surface);transform:translateY(-1px)}.theme-toggle span{color:var(--brand);place-items:center;display:grid}.theme-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:18px;height:18px}.lms-main{gap:18px;padding:18px 0 46px;display:grid}.dashboard-hero{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);align-items:center;min-height:360px;padding:34px;display:flex;position:relative;overflow:hidden}.dashboard-hero:after{content:"";aspect-ratio:1;opacity:1;pointer-events:none;background:url(/icon-terminal.png) 50%/contain no-repeat;width:min(28vw,260px);position:absolute;bottom:28px;right:34px;transform:rotate(-4deg)}.dashboard-hero>*{z-index:1;position:relative}.dashboard-hero .eyebrow{color:var(--brand)}.eyebrow,.section-heading span,.course-card-head span,.folder-title span,.exercise-file span,.exercise-brief-head span,.folder-link small,.tool-grid span,.prompt-file span{color:#551f93;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:900}.dashboard-hero h1{max-width:920px;color:var(--ink);margin:12px 0 18px;font-size:clamp(36px,4.5vw,62px);line-height:.96}.dashboard-hero p{max-width:760px;color:var(--muted);margin:0;font-size:20px;font-weight:600;line-height:1.65}.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.course-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);gap:22px;min-height:220px;padding:24px;display:grid;position:relative;overflow:hidden}.course-card:after{content:"";aspect-ratio:1.5;opacity:.09;pointer-events:none;background:url(/icon-dots-bg.png) 50%/cover no-repeat;width:160px;position:absolute;bottom:-36px;right:-28px}.course-card-head{grid-template-columns:72px minmax(0,1fr);align-items:start;gap:14px;display:grid}.course-card-head span{color:var(--cyan);font-variant-numeric:tabular-nums;letter-spacing:-.04em;text-align:left;font-size:46px;line-height:.92}.course-card:nth-child(2) .course-card-head span{color:var(--orange)}.course-card:nth-child(3) .course-card-head span{color:var(--purple)}.course-card-head strong{max-width:320px;color:var(--brand);font-size:21px;line-height:1.16}.course-card p{color:var(--muted);margin:0;font-size:15px;font-weight:650;line-height:1.65}.course-card-actions{flex-wrap:wrap;align-self:end;gap:8px;display:flex}.course-card-actions a{border:1px solid var(--line);background:var(--surface-soft);color:var(--brand);border-radius:8px;padding:9px 12px;font-size:12px;font-weight:900}.day-overview{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:18px;display:grid}.day-overview-copy,.day-agenda,.day-section,.day-challenge-callout{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.day-overview-copy{min-height:330px;padding:34px;position:relative;overflow:hidden}.day-overview-copy:after{content:"";aspect-ratio:1;opacity:.12;pointer-events:none;background:url(/folder-icon.png) 50%/contain no-repeat;width:min(23vw,220px);position:absolute;bottom:20px;right:26px}.day-overview-copy>*{z-index:1;position:relative}.day-overview-copy .eyebrow{color:var(--brand)}.day-overview-copy h1{max-width:900px;color:var(--brand);margin:12px 0 18px;font-size:clamp(34px,4.2vw,56px);line-height:.98}.day-overview-copy p{max-width:760px;color:var(--muted);margin:0;font-size:20px;font-weight:650;line-height:1.58}.day-agenda{gap:18px;padding:26px;display:grid}.day-agenda>strong{color:var(--brand);font-size:28px;line-height:1.05}.day-agenda ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.day-agenda li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-height:54px;color:var(--ink);grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;padding:11px 13px;font-size:15px;font-weight:850;display:grid}.day-agenda li span{color:var(--cyan);font-size:24px;font-weight:900;line-height:1}.day-section{gap:18px;padding:24px;display:grid}.day-section-head{justify-content:space-between;align-items:end;gap:20px;display:flex}.section-kicker{color:#551f93;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:900}.day-section-head h2,.day-challenge-callout h2{max-width:780px;color:var(--brand);margin:8px 0 0;font-size:clamp(30px,3.2vw,46px);line-height:1.02}.day-section-head p{max-width:480px;color:var(--muted);margin:0;font-size:15px;font-weight:700;line-height:1.55}.day-challenge-callout{justify-content:space-between;align-items:center;gap:24px;padding:28px;display:flex}.day-challenge-callout .course-card-actions{align-self:center}.day-simple-head{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:24px}.day-simple-head h1{color:var(--brand);margin:8px 0 0;font-size:clamp(34px,4vw,54px);line-height:1.02}.day-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.day-folder-grid-simple{max-width:980px}.day-folder-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-soft);min-height:150px;transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);grid-template-columns:86px minmax(0,1fr);align-items:center;gap:18px;padding:20px;display:grid;position:relative;overflow:hidden}.day-folder-card:hover{background:#f8fdfd;border-color:#b6ece9;transform:translateY(-2px)}:root[data-theme=dark] .day-folder-card:hover{background:#20d8d014;border-color:#20d8d070}.day-folder-art{background-position:50%;background-repeat:no-repeat;background-size:contain;width:80px;height:80px;display:block}.materials-card .day-folder-art{background-image:url(/folder-icon.png)}.exercises-card .day-folder-art{background-image:url(/icon-flag.png)}.day-folder-card small{color:#551f93;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:900}.day-folder-card strong{color:var(--brand);margin:0 0 8px;font-size:30px;line-height:1.02;display:block}.day-folder-card p{max-width:460px;color:var(--muted);margin:0;font-size:16px;font-weight:700;line-height:1.55}.folder-page-head{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);justify-content:space-between;align-items:end;gap:24px;padding:30px;display:flex}.folder-page-head h1{max-width:860px;color:var(--brand);margin:8px 0 12px;font-size:clamp(34px,4vw,54px);line-height:.98}.folder-page-head p{max-width:760px;color:var(--muted);margin:0;font-size:18px;font-weight:650;line-height:1.55}.folder-page-head>a{border:1px solid var(--line);background:var(--surface-soft);color:var(--brand);border-radius:8px;flex:none;padding:11px 14px;font-size:12px;font-weight:900}.moodle-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);scroll-margin-top:96px;overflow:hidden}.search-panel{border-color:#b6ece9}.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:26px 28px 22px;display:flex}.section-heading h2{color:var(--brand);margin:8px 0;font-size:clamp(28px,3vw,44px);line-height:1.05}.section-heading p{max-width:720px;color:var(--muted);margin:0;font-size:16px;font-weight:650;line-height:1.55}.folder-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px;display:grid}.folder-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.folder-link{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:190px;transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);align-items:center;gap:18px;padding:26px;display:flex}.folder-link:hover{background:#f7fdfd;border-color:#b6ece9;transform:translateY(-2px)}:root[data-theme=dark] .folder-link:hover{background:#20d8d014;border-color:#20d8d070}.folder-link strong{color:var(--brand);margin:8px 0;font-size:26px;line-height:1.05;display:block}.folder-link p{color:var(--muted);margin:0;font-size:14px;font-weight:750}.folder-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-width:0;overflow:hidden}.folder-title{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:16px;min-height:104px;padding:20px;display:flex}.folder-title h3{color:var(--brand);margin:4px 0 0;font-size:23px;line-height:1.05}.folder-icon{background-image:url(/folder-icon.png);background-position:50%;background-repeat:no-repeat;background-size:contain;flex:none;width:74px;height:74px}.folder-icon span{display:none}.file-table{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.file-row{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:260px;transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);grid-template-rows:auto minmax(0,1fr) auto;gap:20px;padding:22px;display:grid;position:relative;overflow:hidden}.file-row:hover{background:#f8fdfd;border-color:#b6ece9;transform:translateY(-2px)}:root[data-theme=dark] .file-row:hover{background:#20d8d014;border-color:#20d8d070}.file-icon{background:url(/icon-file.png) 50%/contain no-repeat;place-items:center;width:86px;height:86px;display:grid}.file-row strong{color:var(--brand);font-size:24px;line-height:1.08;display:block}.file-row p{max-width:920px;color:var(--muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:6px 0 0;font-size:15px;font-weight:650;line-height:1.58;display:-webkit-box;overflow:hidden}.file-row small,.file-row em{color:var(--muted);text-transform:uppercase;font-size:12px;font-style:normal;font-weight:900}.file-row em{color:var(--green);text-align:right;position:absolute;top:18px;right:18px}.prompt-row{grid-template-columns:66px minmax(0,1fr) minmax(180px,max-content) 92px}.prompt-page{gap:16px;display:grid}.prompt-page-head{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);padding:24px}.prompt-page-head h1{max-width:860px;color:var(--brand);margin:8px 0 0;font-size:clamp(30px,3.4vw,46px);line-height:1.06}.prompt-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:border-color .28s var(--motion), background .28s var(--motion), transform .28s var(--motion);gap:0;padding:0;display:grid;position:relative;overflow:hidden}.prompt-card>*{z-index:1;position:relative}.prompt-card:hover{border-color:#18c8c28f;transform:translateY(-2px)}.prompt-card-toggle{text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:14px;width:100%;padding:18px 20px;display:grid}.prompt-card-toggle span{gap:7px;display:grid}.prompt-card-toggle small{letter-spacing:.08em;text-transform:uppercase;color:#551f93;font-size:12px;font-weight:800}.prompt-card-toggle h2{color:var(--brand);margin:0;font-size:22px;line-height:1.12}.prompt-card-toggle em{border:1px solid var(--line);background:var(--surface-soft);width:36px;height:36px;color:var(--brand);transition:transform .24s var(--motion);border-radius:8px;place-items:center;font-size:20px;font-style:normal;font-weight:900;display:grid}.prompt-card.open .prompt-card-toggle em{transform:rotate(180deg)}.prompt-card-body{gap:14px;padding:0 20px 20px;display:none}.prompt-card.open .prompt-card-body{display:grid}.prompt-card p{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-height:168px;color:var(--muted);margin:0;padding:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:650;line-height:1.65}.prompt-actions{flex-wrap:wrap;align-self:end;gap:10px;display:flex}.prompt-actions button,.prompt-actions a{border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 13px;font-size:13px;font-weight:900;display:inline-flex}.prompt-actions button{border:1px solid var(--brand);background:var(--brand);color:var(--surface)}.prompt-actions a{border:1px solid var(--line);background:var(--surface-soft);color:var(--brand)}.prompt-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.resource-list{display:grid}.resource-list.compact{padding:10px}.resource-row{border-bottom:1px solid var(--line);background:var(--surface-soft);min-height:68px;transition:background .22s var(--motion);grid-template-columns:minmax(82px,112px) minmax(0,1fr) max-content 34px;align-items:center;gap:12px;padding:14px 16px;display:grid}.resource-row:last-child{border-bottom:0}.resource-row:hover{background:#eefafa}:root[data-theme=dark] .resource-row:hover{background:#20d8d014}.resource-row strong{min-width:0;color:var(--ink);text-overflow:ellipsis;font-size:14px;font-weight:850;line-height:1.35;overflow:hidden}.resource-row small{color:var(--muted);text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:900}.resource-type{background:var(--brand-soft);color:#551f93;letter-spacing:.08em;text-transform:uppercase;border:1px solid #dcd3ef;border-radius:99px;justify-content:center;align-items:center;min-height:28px;padding:0 10px;font-size:10px;font-weight:900;display:inline-flex}.download-icon{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--brand);border-radius:50%;place-items:center;font-size:18px;font-weight:900;display:grid}.exercise-folder-list{gap:12px;padding:12px;display:grid}.exercise-file{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:14px;padding:18px;display:grid}.exercise-list-page{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.exercise-brief{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);gap:16px;padding:24px;display:grid}.exercise-brief-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.exercise-brief-head small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.exercise-brief h2{color:var(--brand);margin:0;font-size:30px;line-height:1.08}.exercise-brief p{color:var(--muted);margin:0;font-size:16px;font-weight:650;line-height:1.6}.exercise-brief ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.exercise-brief li{color:var(--ink);padding-left:32px;font-size:14px;font-weight:750;line-height:1.45;position:relative}.exercise-brief li:before{content:"";background:url(/icon-flag.png) 50%/contain no-repeat;width:22px;height:22px;position:absolute;top:-2px;left:0}.exercise-file h4{color:var(--brand);margin:6px 0 8px;font-size:20px;line-height:1.15}.exercise-file p{color:var(--muted);margin:0;font-size:14px;font-weight:650;line-height:1.55}.exercise-file ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.exercise-file li{color:var(--ink);padding-left:30px;font-size:13px;font-weight:750;line-height:1.45;position:relative}.exercise-file li:before{content:"";background:url(/icon-flag.png) 50%/contain no-repeat;width:20px;height:20px;position:absolute;top:-2px;left:0}.download-btn,.prompt-file button{border:1px solid var(--brand);border-radius:var(--radius);background:var(--brand);color:#fff;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-size:13px;font-weight:900;display:inline-flex}.download-btn:before{content:"";background:url(/icon-file.png) 50%/contain no-repeat;width:18px;height:18px;margin-right:8px}.submission-panel{grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);gap:16px;display:grid}.submission-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);align-content:space-between;gap:20px;min-height:330px;padding:26px;display:grid}.submission-card span,.submission-link span{color:#551f93;letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:900}.submission-card h2{max-width:560px;color:var(--brand);margin:10px 0 12px;font-size:clamp(30px,3vw,44px);line-height:1.02}.submission-card p{max-width:620px;color:var(--muted);margin:0;font-size:16px;font-weight:650;line-height:1.6}.primary-submission{background:url(/header-circuit-bg.png) 50%/cover;border-color:#18c8c25c}.primary-submission span{color:var(--brand)}.primary-submission h2{color:var(--ink)}.primary-submission p{color:var(--muted)}.primary-submission .download-btn{border-color:var(--cyan);background:var(--cyan);color:#061111}.upload-submission{grid-template-columns:minmax(0,1fr)}.upload-zone{border-radius:var(--radius);background:var(--surface-soft);text-align:center;min-height:152px;transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);border:2px dashed #b7c9d5;place-items:center;padding:24px;display:grid}.upload-zone:hover{border-color:var(--cyan);background:#f3fcfb;transform:translateY(-1px)}:root[data-theme=dark] .upload-zone:hover{background:#20d8d014}.upload-zone input{width:min(100%,260px);color:var(--muted);font-size:13px;font-weight:700}.upload-zone strong{color:var(--brand);margin-top:12px;font-size:19px}.upload-zone small{color:var(--muted);font-size:12px;font-weight:800}.submission-link{gap:8px;display:grid}.submission-link input{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);width:100%;min-height:48px;color:var(--ink);outline:0;padding:0 15px;font-weight:700}.submission-link input:focus{border-color:var(--cyan);background:var(--surface)}.upload-submission button{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:999px;justify-content:center;justify-self:start;align-items:center;min-height:48px;padding:0 18px;font-size:14px;font-weight:900;display:inline-flex}.setup-hero{border-radius:var(--radius-lg);background:linear-gradient(90deg,#fffffff5,#ffffffc7),url(/header-circuit-bg.png) 50%/cover no-repeat;border:1px solid #b6ece9;grid-template-columns:minmax(0,1fr) 300px;align-items:end;gap:24px;min-height:320px;padding:30px;display:grid;position:relative;overflow:hidden}.setup-hero h1{max-width:880px;color:var(--brand);margin:10px 0 16px;font-size:clamp(36px,4.4vw,60px);line-height:.96}.setup-hero p{max-width:720px;color:var(--muted);margin:0;font-size:19px;font-weight:650;line-height:1.6}.setup-ready-card{border-radius:var(--radius);background:#ffffffd6;border:1px solid #20d8d070;gap:12px;padding:20px;display:grid}.setup-ready-card span{background:url(/icon-terminal.png) 50%/contain no-repeat;width:84px;height:84px}.setup-ready-card strong{color:var(--brand);font-size:24px;line-height:1.05}.setup-ready-card p{color:var(--muted);font-size:14px;font-weight:750;line-height:1.5}.setup-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.setup-group{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);align-content:start;gap:18px;padding:22px;display:grid}.setup-group-head{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:14px;display:grid}.setup-group-head>span{color:var(--cyan);font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:36px;font-weight:900;line-height:.95}.setup-group:nth-child(2) .setup-group-head>span{color:var(--green)}.setup-group:nth-child(3) .setup-group-head>span{color:var(--orange)}.setup-group h2{color:var(--brand);margin:0;font-size:25px;line-height:1.05}.setup-group p{color:var(--muted);margin:7px 0 0;font-size:14px;font-weight:650;line-height:1.5}.setup-list{gap:10px;display:grid}.setup-list label{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px;min-height:56px;padding:12px;display:grid}.setup-list input{width:22px;height:22px;accent-color:var(--green);margin:0}.setup-list span{color:var(--ink);font-size:14px;font-weight:850;line-height:1.35}.setup-guide-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);gap:18px;padding:24px;display:grid}.setup-guide-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.setup-guide-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-height:150px;transition:border-color .26s var(--motion), background .26s var(--motion), transform .26s var(--motion);grid-template-columns:56px minmax(0,1fr);align-items:start;gap:14px;padding:16px;display:grid}.setup-guide-card:hover{background:#f8fdfd;border-color:#b6ece9;transform:translateY(-1px)}.setup-guide-card>span{background:url(/icon-file.png) 50%/contain no-repeat;width:54px;height:54px}.setup-guide-card small{color:#551f93;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}.setup-guide-card strong{color:var(--brand);margin:6px 0 8px;font-size:18px;font-weight:900;line-height:1.15;display:block}.setup-guide-card p{color:var(--muted);margin:0;font-size:13px;font-weight:700;line-height:1.45}.tool-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.setup-tool-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.tool-grid article{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:206px;padding:20px;position:relative;overflow:hidden}.tool-grid article:after{content:"";opacity:.16;pointer-events:none;background:url(/icon-rail.png) 50%/contain no-repeat;width:54px;height:132px;position:absolute;bottom:-26px;right:-10px}.tool-grid h2{color:var(--brand);margin:8px 0 12px;font-size:24px}.tool-grid article>strong{color:var(--ink);margin:-4px 0 12px;font-size:14px;font-weight:900;line-height:1.35;display:block}.tool-grid p{color:var(--muted);margin:0;font-size:14px;font-weight:650;line-height:1.55}.prompt-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px;display:grid}.prompt-file{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;padding:20px;display:grid}.prompt-file h3{color:var(--brand);margin:7px 0 10px;font-size:21px}.prompt-file p{color:var(--muted);margin:0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:13px;font-weight:650;line-height:1.7}.document-page{gap:16px;display:grid}.document-hero{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;min-height:320px;padding:46px 42px 42px 112px;display:grid;position:relative;overflow:hidden}.document-hero:before{content:"";background:linear-gradient(var(--cyan) 0 18%, transparent 18% 19%), linear-gradient(var(--green) 0 50%, transparent 50% 52%), linear-gradient(var(--orange) 0 100%);background-size:100% 100%;width:44px;height:100%;position:absolute;top:0;left:0}.document-hero:after{content:"";opacity:.96;pointer-events:none;background:url(/reboot-logo-navy.png) 50%/contain no-repeat;width:190px;height:88px;position:absolute;top:28px;right:28px}.document-hero>*{z-index:1;position:relative}.document-hero h1{max-width:980px;color:var(--brand);letter-spacing:0;margin:10px 0 14px;font-size:clamp(38px,4.5vw,72px);line-height:.98}.document-hero p{max-width:860px;color:var(--muted);margin:0;font-size:20px;font-weight:650;line-height:1.6}.document-actions{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.document-actions a{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--brand);border-radius:8px;justify-content:center;align-items:center;padding:0 14px;font-size:12px;font-weight:900;display:inline-flex}.document-actions a:last-child{border-color:var(--brand);background:var(--brand);color:#fff}.document-layout{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:16px;display:grid}.document-aside,.document-main{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface)}.document-aside{gap:10px;padding:22px;display:grid;position:sticky;top:102px}.document-aside:before{content:"";background:url(/icon-file.png) 50%/contain no-repeat;width:56px;height:74px}.document-aside span{color:#551f93;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}.document-aside strong{color:var(--brand);font-size:24px;line-height:1.05}.document-aside p{color:var(--muted);margin:0;font-weight:800}.document-main{overflow:hidden}.document-section{border-bottom:1px solid var(--line);grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:26px;padding:34px;display:grid}.document-section:last-child{border-bottom:0}.document-section h2{color:var(--brand);margin:0;font-size:28px;line-height:1.12}.document-section p{max-width:900px;color:var(--muted);margin:0;font-size:16px;font-weight:650;line-height:1.7}.document-list,.document-steps,.document-checklist{gap:10px;margin:0;padding:0;list-style:none;display:grid}.document-section>:not(h2){grid-column:2}.document-list li,.document-steps li,.document-checklist li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-height:58px;color:var(--ink);padding:15px 16px 15px 50px;font-size:15.5px;font-weight:760;line-height:1.45;position:relative}.document-list li:before,.document-checklist li:before{content:"";background:url(/icon-flag.png) 50%/contain no-repeat;width:22px;height:22px;position:absolute;top:12px;left:14px}.document-steps{counter-reset:document-step}.document-steps li{counter-increment:document-step}.document-steps li:before{content:counter(document-step, decimal-leading-zero);color:var(--cyan);font-family:var(--heading-font);letter-spacing:-.04em;font-size:16px;font-weight:800;position:absolute;top:13px;left:14px}.document-prompt{border-radius:var(--radius);background:var(--brand);color:#fff;white-space:pre-wrap;margin:0;padding:22px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:14px;font-weight:650;line-height:1.7;overflow:auto}.document-diagram{border-radius:var(--radius-lg);background:linear-gradient(135deg, #18c8c214, #3ebd730a), var(--surface);border:1px solid #b6ece9;gap:12px;margin:2px 0;padding:16px;display:grid}.document-diagram>strong{color:#551f93;font-family:var(--heading-font);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:800}.document-diagram>div{gap:10px;display:grid}.document-diagram-flow>div{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.document-diagram-stack>div{grid-template-columns:1fr}.document-diagram-hub>div{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.document-diagram article{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:108px;padding:18px;position:relative}.document-diagram-flow article:not(:last-child):after{content:">";z-index:1;background:var(--green);color:#fff;border-radius:999px;place-items:center;width:22px;height:22px;font-size:14px;font-weight:900;display:grid;position:absolute;top:50%;right:-15px;transform:translateY(-50%)}.document-diagram article span{color:var(--brand);font-size:20px;font-weight:900;line-height:1.1;display:block}.document-diagram article p{color:var(--muted);margin-top:10px;font-size:13.5px;font-weight:700;line-height:1.45}.document-diagram-stack article{grid-template-columns:minmax(130px,190px) minmax(0,1fr);align-items:center;gap:16px;min-height:auto;display:grid}.document-diagram-hub article{text-align:center;place-items:center;display:grid}.document-diagram-hub article:first-child,.document-diagram-flow article:first-child{border-color:#18c8c280}.document-diagram-hub article:nth-child(2),.document-diagram-flow article:nth-child(2){border-color:#3ebd7380}.document-diagram-hub article:nth-child(3),.document-diagram-flow article:nth-child(3){border-color:#eb6f5573}.document-diagram-hub article:nth-child(4),.document-diagram-flow article:nth-child(4){border-color:#8e2cff73}@media (max-width:1180px){.lms-shell{grid-template-columns:1fr}.lms-sidebar{height:auto;position:static}.course-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.course-status{margin-top:0}.dashboard-grid,.day-overview,.day-folder-grid,.folder-grid,.folder-overview,.exercise-list-page,.prompt-grid,.setup-board,.submission-panel{grid-template-columns:1fr}.file-table{grid-template-columns:repeat(2,minmax(0,1fr))}.prompt-list,.tool-grid,.setup-list,.setup-hero{grid-template-columns:1fr}.setup-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.setup-guide-grid,.document-layout,.document-hero{grid-template-columns:1fr}.document-diagram-hub>div{grid-template-columns:repeat(2,minmax(0,1fr))}.document-aside{position:static}}@media (max-width:760px){.lms-shell{padding:8px}.lms-topbar{grid-template-columns:1fr;align-items:stretch;padding:16px;position:static}.portal-search{width:100%}.course-nav{grid-template-columns:1fr 1fr}.dashboard-hero{min-height:0;padding:24px}.dashboard-hero:after{width:150px;margin-left:auto;position:relative;bottom:auto;right:auto;transform:none}.dashboard-hero>div{max-width:100%}.dashboard-hero h1{font-size:40px}.dashboard-hero p{font-size:17px}.day-overview-copy,.day-agenda,.day-section,.setup-hero,.day-challenge-callout{padding:22px}.day-overview-copy{min-height:0}.day-overview-copy:after{width:130px;margin:18px 0 0 auto;display:block;position:relative;bottom:auto;right:auto}.day-overview-copy h1{font-size:38px}.day-overview-copy p{font-size:17px}.day-section-head,.folder-page-head,.day-challenge-callout{align-items:start;display:grid}.day-section-head h2,.day-challenge-callout h2{font-size:31px}.day-folder-card{grid-template-columns:1fr;min-height:0}.day-folder-art{width:90px;height:90px}.folder-page-head h1{font-size:36px}.setup-hero{min-height:0}.setup-hero h1{font-size:38px}.setup-hero p{font-size:16px}.setup-ready-card{padding:16px}.setup-tool-grid,.prompt-grid,.file-table{grid-template-columns:1fr}.file-row{min-height:230px;padding:20px}.file-icon{width:72px;height:72px}.resource-row{grid-template-columns:1fr 34px}.resource-row .resource-type,.resource-row small{grid-column:1/-1;justify-self:start}.prompt-file,.setup-guide-grid{grid-template-columns:1fr}.document-hero{min-height:0;padding:84px 22px 24px 72px}.document-hero:before{width:34px}.document-hero:after{width:132px;height:42px;top:24px;left:72px;right:auto}.document-section{grid-template-columns:1fr;gap:16px;padding:22px}.document-section>:not(h2){grid-column:1}.document-hero h1{font-size:34px}.document-hero p{font-size:16px}.document-actions{justify-content:start}.document-diagram-flow>div,.document-diagram-hub>div{grid-template-columns:1fr}.document-diagram-flow article:not(:last-child):after{inset:auto auto -16px 50%;transform:translate(-50%)rotate(90deg)}.document-diagram-stack article{grid-template-columns:1fr}}:root{--bg:#f4f6f8;--surface:#fff;--surface-soft:#f9fafb;--surface-tint:#f1f4f6;--line:#dfe5ea;--line-strong:#cbd5dd;--ink:#151723;--muted:#5d6b7a;--quiet:#8a97a5;--brand:#201747;--brand-soft:#f4f1fb;--radius:8px;--radius-lg:10px;--sidebar:276px;--heading-font:"Poppins", "Segoe UI", system-ui, sans-serif}body{background:var(--bg)}.lms-shell{grid-template-columns:var(--sidebar) minmax(0, 1fr);background:var(--bg);gap:0;padding:0}.lms-sidebar{border:0;border-right:1px solid var(--line);background:var(--surface);border-radius:0;height:100dvh;top:0}.brand-block{border-bottom:1px solid var(--line);min-height:116px;padding:28px 24px 22px}.brand-block img{width:132px}.brand-block span{color:var(--muted);letter-spacing:.12em;font-size:11px}.course-nav{gap:4px;padding:16px 12px}.course-nav a{color:#404a57;border:1px solid #0000;border-left-width:3px;border-radius:8px;grid-template-columns:38px minmax(0,1fr) 28px;align-items:center;gap:12px;min-height:64px;padding:8px 12px;font-size:14px;font-weight:750;display:grid}.course-nav a:hover{background:var(--surface-soft);color:var(--ink)}.course-nav a.active{border-color:#d9efe3;border-left-color:var(--green);color:var(--brand);background:linear-gradient(90deg,#f0fbf5,#fff)}.nav-icon{background:var(--surface-tint);width:38px;height:38px;color:var(--muted);border-radius:6px;place-items:center;display:grid}.course-nav a.active .nav-icon{color:var(--green);background:#e0f8ec}.nav-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px}.nav-copy{gap:3px;min-width:0;display:grid}.nav-copy strong{color:currentColor;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:850;line-height:1.15;overflow:hidden}.nav-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650;line-height:1.2;overflow:hidden}.course-nav a.active .nav-copy small{color:#49775f}.course-nav a>em{color:var(--quiet);font-family:var(--heading-font);letter-spacing:0;justify-self:end;font-size:11px;font-style:normal;font-weight:700}.course-nav a.active>em{color:var(--green)}.course-status,.dashboard-hero:after,.day-overview-copy:after,.setup-ready-card,.day-folder-art,.folder-icon,.document-aside:before,.download-btn:before,.tool-grid article:after,.course-card:after{display:none}.lms-workspace{min-height:100dvh}.lms-topbar{border:0;border-bottom:1px solid var(--line);background:#fffffff5;border-radius:0;grid-template-columns:minmax(0,1fr) minmax(280px,520px);min-height:64px;top:0}.lms-main{gap:16px;max-width:1320px;margin:0 auto;padding:24px 24px 48px}.portal-search input{background:#fff;border-radius:6px;height:40px;font-size:13px}.topbar-breadcrumb{font-size:13px}.eyebrow,.section-heading span,.course-card-head span,.folder-title span,.exercise-file span,.exercise-brief-head span,.folder-link small,.tool-grid span,.prompt-file span,.section-kicker{color:#4f2b86;letter-spacing:.12em;font-size:11px}.dashboard-hero,.folder-page-head,.day-simple-head,.prompt-page-head,.setup-hero{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-height:0;padding:28px 30px}.day-simple-head{padding:24px 26px}.dashboard-hero{align-items:start}.dashboard-hero>div{max-width:880px}.dashboard-hero h1,.folder-page-head h1,.day-simple-head h1,.prompt-page-head h1,.setup-hero h1{color:var(--ink);margin:8px 0 10px;font-size:clamp(28px,3vw,42px);font-weight:700;line-height:1.12}.dashboard-hero p,.folder-page-head p,.day-simple-head p,.prompt-page-head p,.setup-hero p{max-width:820px;color:var(--muted);font-size:16px;font-weight:550;line-height:1.65}.day-plan-list{flex-wrap:wrap;gap:8px;max-width:980px;margin:18px 0 0;padding:0;list-style:none;display:flex}.day-plan-list li{border:1px solid var(--line);background:var(--surface-soft);min-height:32px;color:var(--ink);border-radius:999px;padding:7px 11px;font-size:12px;font-weight:750}.dashboard-grid{grid-template-columns:1fr;gap:10px}.course-card{border-radius:var(--radius-lg);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:0;padding:20px 22px}.course-card-head{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:16px}.course-card-head span{letter-spacing:0;font-size:34px}.course-card-head strong{max-width:none;font-size:20px}.course-card p{grid-column:1;max-width:850px;font-size:14px;line-height:1.55}.course-card-actions{grid-area:1/2/span 2}.course-card-actions a,.folder-page-head>a,.document-actions a,.prompt-actions button,.prompt-actions a,.download-btn,.prompt-file button,.upload-submission button{border-radius:6px;min-height:38px;font-size:12px}.day-folder-grid,.day-folder-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.day-folder-card{border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:1fr;align-items:start;min-height:132px;padding:22px}.day-folder-card:hover,.folder-link:hover,.file-row:hover,.setup-guide-card:hover,.prompt-card:hover{transform:none}.day-folder-card strong{font-size:24px}.day-folder-card p{max-width:560px;font-size:14px;font-weight:600}.starter-download{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:88px;padding:16px 18px;display:grid}.starter-download .file-icon{border:1.8px solid var(--line-strong);background:#fff;border-radius:6px;width:34px;height:42px;display:block;position:relative}.starter-download .file-icon:before{content:"";background:var(--green);border-radius:999px;height:2px;padding:0;position:absolute;top:14px;left:8px;right:8px}.starter-download .file-icon:after{content:"";border-left:1.8px solid var(--line-strong);border-bottom:1.8px solid var(--line-strong);background:var(--surface-soft);border-radius:0 5px 0 4px;width:12px;height:12px;position:absolute;top:-1.8px;right:-1.8px}.starter-download strong{color:var(--brand);font-size:18px;font-weight:800;line-height:1.2;display:block}.starter-download p{color:var(--muted);margin:4px 0 0;font-size:13px;font-weight:600;line-height:1.45}.starter-download>a{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:6px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-size:12px;font-weight:900;display:inline-flex}.day-content-section{gap:12px;display:grid}.day-content-head{justify-content:space-between;align-items:end;gap:18px;padding:4px 2px 0;display:flex}.day-content-head h2{color:var(--ink);margin:4px 0 0;font-size:22px;line-height:1.1}.file-table,.document-index{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.file-row{border-radius:var(--radius-lg);grid-template-rows:auto minmax(0,1fr) auto;gap:14px;min-height:174px;padding:18px}.file-icon{background:0 0;width:auto;height:auto}.file-icon:before{content:"Document";background:var(--surface-tint);min-height:26px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 9px;font-size:10px;font-weight:850;display:inline-flex}.file-row strong{font-size:20px}.file-row p{font-size:14px;line-height:1.55}.file-row em{color:var(--muted)}.file-download-link{border:1px solid var(--brand);background:var(--brand);color:#fff;border-radius:6px;justify-content:center;align-items:center;min-height:36px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex;position:absolute;bottom:16px;right:16px}.compact-head{display:block}.document-hero{background:var(--surface);min-height:0;padding:36px 34px 34px 88px}.document-hero:before{width:34px}.document-hero:after{width:150px;height:56px}.document-hero h1{max-width:860px;font-size:clamp(32px,3.4vw,52px);line-height:1.06}.document-hero p{max-width:820px;font-size:16px;font-weight:550}.document-layout{grid-template-columns:220px minmax(0,1fr)}.document-aside{border-radius:var(--radius-lg);top:88px}.document-aside strong{font-size:20px}.document-section{grid-template-columns:minmax(170px,240px) minmax(0,1fr);gap:24px;padding:28px}.document-section h2{font-size:23px;line-height:1.18}.document-section p{font-size:15px;font-weight:550}.document-list li,.document-steps li,.document-checklist li{background:#fff;min-height:48px;padding:13px 14px 13px 44px;font-size:14px;font-weight:650}.document-list li:before,.document-checklist li:before{border:2px solid var(--green);background:0 0;border-radius:3px;width:10px;height:10px;top:17px;left:15px}.document-steps li:before{color:var(--muted);letter-spacing:0;font-size:13px;top:14px}.document-diagram{border-color:var(--line);background:var(--surface-soft)}.document-diagram article{border-color:var(--line);min-height:94px}.document-diagram article span{font-size:17px}.document-diagram article p{font-weight:550}.document-prompt{border-radius:var(--radius);background:#151723}.primary-submission,.setup-hero{background:var(--surface)}.exercise-brief li:before,.exercise-file li:before{border:2px solid var(--green);background:0 0;border-radius:3px;width:10px;height:10px;top:4px}.download-btn:before,.setup-guide-card>span{content:none;display:none}.folder-link{border-radius:var(--radius-lg);min-height:150px}.folder-title{min-height:78px}@media (max-width:1180px){.lms-shell{grid-template-columns:1fr}.lms-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:static}.course-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.lms-main{padding:18px}}@media (max-width:760px){.lms-topbar,.course-nav,.dashboard-grid,.file-table,.document-index,.starter-download,.day-folder-grid,.day-folder-grid-simple,.course-card,.document-layout,.document-section{grid-template-columns:1fr}.course-card-actions{grid-area:auto/1}.starter-download{grid-template-columns:auto minmax(0,1fr)}.starter-download>a{grid-column:1/-1;justify-self:start}.document-hero{padding:84px 22px 24px 64px}.document-section>:not(h2){grid-column:1}}
