:root{--canvas:#f8f9f5;--paper:#fff;--ink:#21392e;--body:#34483d;--muted:#647168;--line:#e4e8df;--green:#254f38;--lime:#d8ed9c;--light:#edf2e6;--light-2:#f1f5e9;--radius:14px;--font:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-2xs:clamp(.625rem, .6rem + .1vw, .6875rem);--text-xs:clamp(.6875rem, .66rem + .12vw, .75rem);--text-sm:clamp(.75rem, .72rem + .15vw, .8125rem);--text-base:clamp(.8125rem, .78rem + .17vw, .875rem);--text-md:clamp(.9375rem, .9rem + .2vw, 1rem);--text-lg:clamp(1.0625rem, 1rem + .3vw, 1.25rem);--text-xl:clamp(1.25rem, 1.1rem + .7vw, 1.5rem);--text-2xl:clamp(1.5rem, 1.3rem + 1vw, 1.75rem);--text-3xl:clamp(1.75rem, 1.4rem + 1.8vw, 2.0625rem);--text-4xl:clamp(2rem, 1.4rem + 3vw, 2.6875rem);--space-3xs:4px;--space-2xs:8px;--space-xs:12px;--space-sm:16px;--space-md:20px;--space-lg:28px;--space-xl:40px;--space-2xl:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--duration-fast:.15s;--duration-normal:.3s;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--focus:#689d42;--focus-panel:#416db6;--error:#8e332c;--error-2:#823f32;--error-border:#d3b6b1;--error-bg:#fff0eb;--error-3:#914a2a;--error-4:#8b3f2f;--warn:#9c5a18;--warn-border:#e8cc9f;--warn-bg:#fff0de;--success:#235534;--success-icon:#4d9460;--success-bg:#f1f8ec;--success-2:#4b712b;--success-3:#6aa65d;--info:#245b53;--info-2:#53636a;--status-neutral:#709674;--mist-1:#e6f2d3;--mist-2:#dfe7d1;--mist-3:#d7e8c3;--mist-4:#d6edbc;--mist-5:#e3efb6;--mist-6:#cbd7ce;--mist-7:#e8d8b3;--mist-8:#d7efac;--mist-9:#cbd6c3;--mist-10:#c6d9b8;--mist-11:#cfe3a8;--mist-12:#b9cbb6;--mist-13:#b9c8be;--sage-1:#b7d69a;--sage-2:#a9bdac;--sage-3:#a5bf97;--sage-4:#9db89f;--sage-5:#a3d77e;--sage-6:#a8cb79;--sage-7:#92bb7e;--sage-8:#a9cd67;--sage-9:#8fa382;--sage-10:#829084;--sage-11:#8ba867;--sage-12:#73917b;--sage-13:#6a9f60;--sage-14:#65927f;--sage-15:#809e56;--sage-15b:#86a656;--sage-16:#7b955e;--sage-17:#6e7e70;--sage-18:#658064;--sage-19:#6a954b;--sage-20:#648b4a;--sage-21:#4b8859;--sage-22:#65745d;--sage-23:#96ae9f;--moss-1:#4e8b3e;--moss-2:#56725d;--moss-3:#487b52;--moss-3b:#3c7146;--moss-4:#557445;--moss-5:#516653;--moss-6:#47704a;--moss-7:#586b4b;--moss-8:#526259;--moss-9:#49674d;--moss-10:#416b56;--moss-11:#44574b;--moss-12:#2f6541;--moss-13:#3c5233;--moss-14:#344f38;--moss-15:#2c4533;--moss-16:#183c2c;--moss-17:#365a43;--slate-1:#dde5e8;--slate-2:#426b65;--slate-3:#485b5b;--slate-4:#21463c;--slate-5:#243f3b;--slate-6:#172c36;--obsidian:#1e1e1e;--fawn:#6b6252;--shadow-sm:#233b2b09;--shadow-lg:#20343b0a;--shadow-md:#21392e18;--shadow-xl:#21392e26;--backdrop:#13291c77;--primary-shadow:#254f381c;--orbit-ring-1:#819e7e55;--orbit-ring-2:#a4be8f66;--code-card-shadow:#45694b4d;--halo-1:#a4d08166;--halo-2:#a4d08113;--halo-3:#a4d0810b;--lesson-shadow:#14371d0a;--panel-shadow-sm:#173c2b10;--panel-shadow-lg:#142d302b}@media (prefers-reduced-motion:reduce){:root{--duration-fast:0s;--duration-normal:0s}}
*{box-sizing:border-box}body{color:var(--ink);background:var(--canvas);font-family:var(--font);margin:0;font-size:14px;line-height:1.55}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button{transition:background .15s,transform .15s}button:hover:not(:disabled){filter:brightness(.98)}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.04em;line-height:1.15}h1{font-size:40px;font-weight:500}h2{font-size:26px;font-weight:500}h3,.guidance-preferences-heading{letter-spacing:-.02em;font-size:18px;font-weight:600;line-height:1.35}p{color:var(--muted)}em{font-family:Georgia,serif;font-weight:400}svg{flex-shrink:0}input,textarea,select{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px}input{width:100%;min-height:46px;padding:11px 14px}textarea{resize:vertical;max-width:100%;padding:14px}label{font-weight:550;display:block}label input{margin-top:8px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--light-2);border-radius:10px;padding:22px;font-family:SFMono-Regular,Consolas,monospace;font-size:14px;line-height:1.8}small{font-size:11px}strong{font-weight:600}.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}.eyebrow{letter-spacing:.13em;color:var(--moss-7);align-items:center;gap:7px;font-size:10px;font-weight:650;display:flex}.eyebrow.light{color:var(--mist-10)}.muted{color:var(--muted)}.light-text{color:var(--mist-6)!important}.green-dot,.lime-dot{background:var(--sage-20);border-radius:50%;width:6px;height:6px;display:inline-block}.lime-dot{background:var(--lime)}.button{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:7px;justify-content:center;align-items:center;gap:12px;min-height:45px;padding:11px 20px;font-size:13px;font-weight:550;display:inline-flex}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.lime{background:var(--lime);border-color:var(--lime);color:var(--ink)}.button.secondary{background:0 0}.button.danger{color:var(--error);border-color:var(--error-border);background:var(--error-bg)}.full{width:100%}.text-button{background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:8px 0;font-size:12px;font-weight:600;display:inline-flex}.icon-button{background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.icon-button.small{min-width:36px;min-height:36px}.error{background:var(--error-bg);color:var(--error);white-space:pre-wrap;border-radius:8px;padding:12px 15px;font-size:13px}.brand{letter-spacing:-.07em;background:0 0;border:0;align-items:center;padding:0;font-size:27px;font-weight:650;display:flex}.brand-mark{background:var(--green);width:36px;height:36px;color:var(--mist-5);border-radius:10px;justify-content:center;align-items:center;margin-right:11px;display:flex}.brand-os{font-weight:400}.brand-beta{letter-spacing:.08em;border:1px solid var(--line);color:var(--moss-7);border-radius:4px;margin-left:9px;padding:1px 4px;font-size:10px}.app-shell{min-height:100vh;display:flex}.sidebar{background:var(--paper);border-right:1px solid var(--line);z-index:10;overscroll-behavior:contain;flex-direction:column;flex-shrink:0;width:230px;padding:29px 22px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.workspace-label{letter-spacing:.13em;color:var(--moss-7);margin:39px 10px 12px;font-size:10px;font-weight:650}.nav-item{width:100%;color:var(--moss-7);text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:12px;min-height:44px;margin:3px 0;padding:12px 13px;font-size:12px;display:flex}.nav-item.active{background:var(--light-2);color:var(--green);font-weight:600}.nav-item small{background:var(--mist-2);border-radius:5px;margin-left:auto;padding:0 5px}.active-dot{background:var(--sage-19);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-divider{background:var(--line);height:1px;margin:23px 10px 0}.sidebar-divider+.workspace-label{margin-top:22px}.sidebar-bottom{margin-top:auto;padding-top:35px}.growth-note{background:var(--canvas);border:1px solid var(--light);border-radius:10px;padding:18px 17px}.growth-icon{color:var(--moss-7);font-size:30px;line-height:1}.growth-note h3{margin:8px 0;font-size:17px;font-weight:500}.growth-note p{font-size:11px;line-height:1.7}.growth-note .text-button{margin-top:9px;font-size:11px}.profile-button{border:0;border-top:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:10px;width:100%;margin-top:23px;padding:20px 0 0;display:flex}.avatar{background:var(--light);border-radius:50%;justify-content:center;align-items:center;width:33px;height:33px;font-family:Georgia,serif;font-size:17px;display:flex}.profile-button>span:nth-child(2){flex:1;min-width:0}.profile-button strong{text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.profile-button small{color:var(--muted);font-size:10px;display:block}.main-shell{flex:1;min-width:0;margin-left:230px}.topbar{border-bottom:1px solid var(--line);background:#ffffff8c;justify-content:space-between;align-items:center;height:78px;padding:0 39px;display:flex}.breadcrumb{color:var(--moss-7);font-size:11px}.breadcrumb span{color:var(--moss-7);padding:0 13px}.breadcrumb strong{color:var(--moss-8);font-weight:450}.topbar-actions{align-items:center;gap:15px;display:flex}.search-box{color:var(--moss-7);align-items:center;gap:8px;display:flex}.search-box input{outline-offset:2px;background:0 0;border:0;width:168px;min-height:36px;padding:0;font-size:11px}.topbar-divider{background:var(--line);width:1px;height:19px}.streak{align-items:center;gap:5px;font-size:11px;display:flex}.streak svg{color:var(--moss-7)}.streak span{color:var(--moss-7);margin-left:2px}.main-content{max-width:1460px;margin:0 auto;padding:38px 39px 0}.dashboard-heading{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.dashboard-heading h1{margin:12px 0 8px;font-size:36px}.dashboard-heading p{font-size:12px}.today-date{text-align:right;color:var(--moss-8);font-size:11px}.today-date>span{letter-spacing:.13em;color:var(--moss-7);margin-top:5px;font-size:10px;display:block}.goal-strip{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:13px;margin-bottom:25px;padding:16px 19px;display:flex}.goal-symbol{background:var(--light-2);color:var(--moss-7);border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.goal-strip>span{letter-spacing:.13em;color:var(--moss-7);font-size:10px}.goal-strip>span strong{letter-spacing:0;color:var(--moss-15);margin-top:2px;font-size:12px;display:block}.goal-progress{min-width:185px;margin-left:auto}.goal-progress>span{color:var(--moss-7);margin-bottom:7px;font-size:10px;display:block}.goal-progress strong{color:var(--moss-15)}.thin-progress{background:var(--light);border-radius:5px;height:4px;overflow:hidden}.thin-progress>span{background:var(--sage-15);border-radius:5px;height:100%;display:block}.dashboard-grid{grid-template-columns:minmax(0,1fr) 265px;gap:25px;display:grid}.primary-column{min-width:0}.mission{background:var(--ink);color:var(--light);border-radius:13px;padding:24px 27px;position:relative;overflow:hidden}.mission-top{justify-content:space-between;align-items:center;display:flex}.mission-top .eyebrow{font-size:10px}.mission-time{color:var(--mist-12);align-items:center;gap:6px;font-size:10px;display:flex}.mission-body{align-items:center;min-height:225px;display:flex;position:relative}.mission-body>div{z-index:1;width:65%;position:relative}.mission h2{letter-spacing:-.045em;margin:22px 0 12px;font-size:31px;font-weight:450;line-height:1.17}.mission h2 em{color:var(--mist-3)}.mission p{color:var(--sage-2);max-width:295px;font-size:11px;line-height:1.8}.mission-tags{gap:9px;margin-top:20px;display:flex}.mission-tags span{letter-spacing:.09em;color:var(--mist-9);border:1px solid var(--moss-9);border-radius:4px;padding:3px 6px;font-size:10px}.constellation{width:100%}.mission .constellation{opacity:.9;width:340px;height:230px;position:absolute;top:10px;right:-89px}.mission-bottom{align-items:center;gap:20px;margin-top:20px;display:flex}.mission-bottom .button{min-height:43px;padding:11px 17px;font-size:11px}.duration-select{color:var(--mist-2);align-items:center;gap:3px;display:flex}.duration-select select{appearance:none;color:inherit;background:0 0;border:0;min-height:40px;padding:10px 0;font-size:10px}.duration-select option{color:var(--ink);background:#fff}.metrics{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:repeat(3,1fr);margin:18px 0 31px;padding:20px 0;display:grid}.metrics>div{border-right:1px solid var(--line);align-items:center;gap:10px;padding:0 17px;display:flex}.metrics>div:last-child{border:0}.metric-icon{background:var(--canvas);width:34px;height:34px;color:var(--moss-7);border-radius:8px;justify-content:center;align-items:center;display:flex}.metrics strong{letter-spacing:-.04em;font-size:23px;font-weight:500;line-height:1.1;display:block}.metrics strong small{letter-spacing:0;color:var(--moss-7);font-size:10px;font-weight:400}.metrics span>small{letter-spacing:.08em;color:var(--moss-7);margin-top:6px;font-size:10px;display:block}.section-title{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 17px;display:flex}.section-title .eyebrow{margin-bottom:7px;font-size:10px}.section-title h2{font-size:23px}.section-title>.text-button{font-size:10px}.section-title>span{letter-spacing:.08em;font-size:10px}.skill-list{border:1px solid var(--line);background:#fff;border-radius:11px;overflow:hidden}.skill-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:#fff;align-items:center;gap:18px;width:100%;min-height:78px;padding:19px 23px;display:flex;position:relative}.skill-row:last-child{border:0}.skill-row.available{background:var(--success-bg)}.skill-row .node{border:1px solid var(--mist-2);background:var(--canvas);width:34px;height:34px;color:var(--moss-7);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.skill-row:not(:last-child) .node:after{content:"";background:var(--mist-2);width:1px;height:44px;position:absolute;top:33px;left:16px}.skill-row.done .node{background:var(--light);color:var(--moss-7)}.skill-row.available .node{border:1px solid var(--sage-16);color:var(--paper);background:var(--moss-4);font-size:10px}.skill-copy{flex:1;min-width:0}.skill-copy strong{font-size:13px;font-weight:550;display:block}.skill-copy small{color:var(--moss-7);margin-top:3px;font-size:10px;display:block}.skill-row.locked,.skill-row>svg{color:var(--moss-7)}.compact .skill-row{gap:13px;min-height:69px;padding:14px 18px}.compact .skill-row:not(:last-child) .node:after{height:35px}.compact .skill-copy strong{font-size:12px}.compact .skill-copy small{font-size:10px}.insights-column{flex-direction:column;gap:19px;display:flex}.review-card{background:var(--light-2);border:1px solid var(--line);border-radius:12px;padding:23px}.card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.review-symbol{color:var(--moss-7);font-family:Georgia,serif;font-size:27px;line-height:1}.card-top .eyebrow{font-size:10px}.review-card h2{margin:23px 0 11px;font-size:24px;line-height:1.2}.review-card p:not(.error){color:var(--moss-7);font-size:11px;line-height:1.8}.review-card .text-button{width:100%;margin-top:18px;font-size:10px}.project-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:21px}.project-card .card-top{color:var(--moss-7)}.mini-project-art{background:repeating-linear-gradient(0deg, transparent, transparent 19px, var(--light) 20px), repeating-linear-gradient(90deg, var(--canvas), var(--canvas) 19px, var(--light) 20px);border-radius:8px;justify-content:center;align-items:center;height:155px;margin:18px 0 20px;display:flex}.mini-project-art>div{flex-direction:column;align-items:center;font-family:monospace;font-size:10px;display:flex;transform:rotate(-4deg)}.code-line{border:1px solid var(--mist-2);box-shadow:2px 3px 0 var(--light);background:#fff;border-radius:4px;padding:6px 11px}.pipeline-line{color:var(--moss-7);line-height:1.7}.code-block{background:var(--moss-14);color:var(--mist-3);border-radius:4px;padding:7px 10px;font-size:10px}.code-line.final{color:var(--moss-4);gap:6px;display:flex}.small-label{letter-spacing:.1em;color:var(--moss-7);font-size:10px}.project-card h3{margin:8px 0 11px;font-size:24px;font-weight:500;line-height:1.18}.project-card p{font-size:11px;line-height:1.8}.project-card .text-button{width:100%;margin-top:18px;font-size:10px}.learning-note{text-align:center;color:var(--moss-7);padding:12px 17px}.learning-note>svg{margin:0 auto 11px}.learning-note p{color:var(--moss-7);font-size:15px;line-height:1.7}.learning-note>span{letter-spacing:.15em;color:var(--moss-7);margin-top:11px;font-size:10px;display:block}.next-horizon{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:29px;padding:28px 0;display:flex}.next-horizon h2{margin:10px 0 8px;font-size:25px}.next-horizon p{font-size:11px}.next-horizon .button{font-size:10px}.workspace-footer{border-top:1px solid var(--line);color:var(--moss-7);justify-content:space-between;margin-top:25px;padding:20px 0;font-size:10px;display:flex}.workspace-footer>span:last-child{letter-spacing:.12em;font-size:10px}.footer-star{color:var(--moss-7);padding:0 8px;font-size:13px}.notice{border:1px solid var(--mist-2);background:var(--success-bg);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:10px 15px;font-size:12px;display:flex}.skip-link{background:var(--ink);color:#fff;z-index:100;padding:12px 20px;position:fixed;top:-80px;left:250px}.skip-link:focus{top:10px}.page-heading{max-width:700px;margin:12px 0 33px}.page-heading h1{margin:14px 0 15px;font-size:39px}.page-heading p{font-size:13px;line-height:1.8}.path-header{justify-content:space-between;align-items:center;padding:18px 0;display:flex}.path-header>span:first-child{align-items:center;gap:10px;font-weight:550;display:flex}.path-header>span:last-child{color:var(--muted);font-size:11px}.empty-state{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;padding:55px 30px}.empty-icon,.completion-mark{background:var(--light);width:62px;height:62px;color:var(--moss-7);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 25px;display:flex}.empty-state h2{margin-bottom:14px;font-size:29px}.empty-state p{max-width:480px;margin:0 auto;line-height:1.9}.review-item{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;align-items:center;gap:20px;width:100%;margin-bottom:13px;padding:22px;display:flex}.review-item>span:nth-child(2){flex:1}.review-item strong,.review-item small{display:block}.review-item small{color:var(--muted);margin-top:4px}.review-schedule>div{border-bottom:1px solid var(--line);justify-content:space-between;padding:18px 0;display:flex}.review-schedule span{color:var(--muted);font-size:12px}.tag{letter-spacing:.06em;border:1px solid var(--mist-2);background:var(--success-bg);color:var(--moss-7);border-radius:5px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;font-weight:500;display:inline-flex}.project-detail{grid-template-columns:1fr 1fr;gap:40px;display:grid}.project-art{background:var(--light);height:170px;color:var(--moss-7);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:15px;margin:23px 0;display:flex}.project-art span{letter-spacing:.18em;font-size:10px}.project-brief h2{margin-bottom:17px;font-size:34px}.project-brief p,.project-submit p{font-size:12px;line-height:1.9}.milestones{padding-left:20px}.milestones li{padding:12px}.milestones span{color:var(--muted);margin-top:5px;font-size:11px;display:block}.project-submit{border:1px solid var(--line);background:#fff;border-radius:12px;padding:25px}.project-submit h3{margin-bottom:12px}.project-submit textarea{width:100%;height:280px;margin:20px 0 10px;font-family:monospace;font-size:12px}.rubric-box{background:var(--success-bg);border-radius:8px;margin:22px 0;padding:17px}.rubric-box p{margin:8px 0;font-size:11px}.rubric-box small{color:var(--muted)}details{border-bottom:1px solid var(--line);padding:13px 0}summary{cursor:pointer;font-size:12px}.passport-banner{background:var(--light);border:1px solid var(--mist-2);border-radius:12px;align-items:center;gap:20px;margin-bottom:28px;padding:30px;display:flex}.passport-banner h2{font-size:25px}.passport-banner p{color:var(--body);margin-top:10px;font-size:11px}.passport-banner .tag{margin-left:auto}.evidence-table{border:1px solid var(--line);background:#fff;border-radius:10px;overflow-x:auto}.evidence-row{border-bottom:1px solid var(--line);grid-template-columns:1.6fr 1fr 1fr 1fr 1.4fr;align-items:center;gap:12px;min-width:700px;padding:20px;font-size:11px;display:grid}.evidence-row:last-child{border-bottom:0}.evidence-row.heading{background:var(--canvas);letter-spacing:.08em;color:var(--moss-7);font-size:10px}.note-panel{background:var(--light-2);border-radius:10px;align-items:flex-start;gap:15px;margin-top:25px;padding:20px;display:flex}.note-panel p{font-size:11px;line-height:1.9}.note-panel strong{color:var(--ink);margin-bottom:4px;display:block}.author-layout{grid-template-columns:1fr 1fr;gap:25px;display:grid}.dsl-editor{white-space:pre;background:var(--ink);width:100%;height:600px;color:var(--mist-2);margin:15px 0;font-family:monospace;font-size:12px;line-height:1.7}.author-preview{border:1px solid var(--line);background:#fff;border-radius:12px;align-self:start;padding:25px}.author-preview>.tag{margin:20px 0}.author-preview h2{margin:5px 0 17px}.author-preview p{font-size:12px}.preview-option{border:1px solid var(--line);border-radius:7px;margin-top:10px;padding:12px}.plans{grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:25px;display:grid}.plan{border:1px solid var(--line);background:#fff;border-radius:12px;padding:26px}.plan.featured{background:var(--light-2);border-color:var(--mist-10)}.plan h2{margin:12px 0 20px}.price{font-size:32px;font-weight:500}.price small{color:var(--muted);margin-left:4px;font-size:11px}.plan ul{min-height:110px;padding:0;list-style:none}.plan li{align-items:center;gap:10px;padding:8px 0;font-size:12px;display:flex}.plan-disclosure{color:var(--muted);font-size:12px;line-height:1.5}.plan-status{border-top:1px solid var(--line);color:var(--moss-7);padding-top:15px;font-size:11px;display:block}.settings-card{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:20px;margin:20px 0;padding:24px;display:flex}.settings-card p{margin-top:8px;font-size:12px}.delete-confirm{border:1px solid var(--error-border);border-radius:10px;flex-wrap:wrap;align-items:end;gap:20px;padding:20px;display:flex}.delete-confirm label{flex:1}.app-loading{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.welcome{grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.welcome-story{background:var(--ink);color:var(--light);flex-direction:column;padding:42px 60px;display:flex;position:relative;overflow:hidden}.welcome-story .brand-mark{background:var(--lime);color:var(--green)}.welcome-story .brand small{letter-spacing:.12em;color:var(--mist-12);margin-left:22px;font-size:10px}.welcome-copy{z-index:1;margin-top:88px}.welcome-copy .eyebrow{font-size:10px}.welcome h1{margin:23px 0;font-size:58px;line-height:1.13}.welcome h1 em{color:var(--mist-11)}.welcome-copy p{color:var(--mist-12);font-size:14px;line-height:1.9}.welcome-benefits{color:var(--mist-2);flex-direction:column;gap:13px;margin:34px 0;font-size:12px;display:flex}.welcome-benefits span{align-items:center;gap:10px;display:flex}.welcome-story .constellation{opacity:.65;width:370px;position:absolute;bottom:30px;right:-70px}.welcome-foot{letter-spacing:.14em;z-index:1;color:var(--mist-10);justify-content:space-between;align-items:center;margin-top:auto;padding-top:70px;font-size:10px;display:flex}.auth-side{background:var(--canvas);flex-direction:column;padding:45px 65px;display:flex}.auth-top{text-align:right;color:var(--moss-7);font-size:11px}.auth-top span{padding-left:12px}.auth-form{width:100%;max-width:365px;margin:auto;padding:55px 0}.auth-form h2{margin:16px 0;font-size:36px}.auth-form>p{margin-bottom:25px;font-size:12px;line-height:1.8}.auth-form label{margin:19px 0;font-size:11px}.auth-form input{background:#fff;min-height:49px;font-size:12px}.auth-form .button{margin-top:10px}.auth-form .auth-switch{text-align:center;margin:15px 0;font-size:11px}.auth-switch .text-button{font-size:11px}.privacy-note{color:var(--moss-7);border-top:1px solid var(--line);margin-top:18px;padding-top:18px;font-size:10px;line-height:1.8}.auth-bottom{letter-spacing:.12em;color:var(--moss-7);justify-content:space-between;font-size:10px;display:flex}.onboarding{max-width:690px;min-height:100vh;margin:0 auto;padding:55px 30px 80px}.onboarding h1{margin:23px 0;font-size:49px}.onboarding>p{max-width:560px;margin-bottom:28px;font-size:14px;line-height:1.8}.step-dots{gap:6px;margin-top:20px;display:flex}.step-dots>span{background:var(--line);border-radius:2px;width:40px;height:3px}.step-dots .filled{background:var(--sage-15)}.goal-options{flex-direction:column;gap:13px;margin-bottom:30px;display:flex}.goal-option{border:1px solid var(--line);text-align:left;background:#fff;border-radius:11px;align-items:center;gap:18px;padding:23px;display:flex}.goal-option.selected{border-color:var(--sage-16);background:var(--light-2)}.goal-option span{flex:1}.goal-option strong{font-size:16px;display:block}.goal-option small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.segmented{gap:8px;margin:15px 0 30px;display:flex}.segmented button{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:44px;padding:8px 22px;font-size:12px}.segmented .selected{background:var(--green);color:#fff;border-color:var(--green)}.diagnostic-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:25px;padding:27px}.diagnostic-card h3{font-size:20px}.answer-options{flex-direction:column;gap:11px;margin-top:23px;display:flex}.answer-options button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:7px;align-items:center;gap:12px;min-height:50px;padding:13px 17px;font-family:monospace;font-size:13px;display:flex}.answer-options button.selected{border-color:var(--sage-20);background:var(--light-2)}.answer-options svg{margin-left:auto}.summary-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:55px;margin:20px 0;padding:27px 0;display:flex}.summary-strip>span{letter-spacing:.1em;color:var(--moss-7);font-size:10px}.summary-strip strong{letter-spacing:0;color:var(--ink);margin-top:8px;font-size:17px;font-weight:500;display:block}.onboarding .completion-mark{margin:45px 0 20px}.optional-placement-actions{flex-wrap:wrap;align-items:flex-start;gap:.75rem;display:flex}.learning-shell{background:var(--canvas);min-height:100vh}.learning-top{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:15px;padding:20px 4vw;display:flex}.learning-top>span:nth-child(2) strong{font-size:14px;display:block}.learning-top small{letter-spacing:.09em;color:var(--moss-7);margin-top:3px;font-size:10px;display:block}.session-progress{align-items:center;gap:12px;margin-left:auto;display:flex}.session-progress>div{background:var(--light);border-radius:3px;width:180px;height:5px;overflow:hidden}.session-progress>div>span{background:var(--sage-15b);height:100%;transition:width .3s;display:block}.xp-pill{background:var(--light-2);border:1px solid var(--mist-3);color:var(--moss-7);border-radius:5px;margin-left:20px;padding:6px 10px;font-size:10px}.activity-layout{--split-main-min:320px;--split-aside-min:280px;--split-gutter:50px;grid-template-columns:minmax(var(--split-main-min), var(--split-main,72fr)) var(--split-gutter) minmax(var(--split-aside-min), var(--split-aside,28fr));row-gap:50px;max-width:1240px;margin:0 auto;padding:47px 35px;display:grid}@media (min-width:901px){.activity-layout>.activity-main{grid-column:1}.activity-layout>.workspace-splitter{grid-column:2}.activity-layout>.tutor-panel{grid-column:3}}.workspace-splitter{cursor:col-resize;touch-action:none;-webkit-user-select:none;user-select:none;position:relative}.workspace-splitter:before{content:"";border-radius:var(--radius-sm);transition:background-color var(--duration-fast) var(--ease-out-expo);background:0 0;position:absolute;inset:0 calc(50% - 3px)}.workspace-splitter:hover:before,.workspace-splitter:active:before{background:var(--green)}.workspace-splitter:focus-visible{outline:none}.workspace-splitter:focus-visible:before{background:var(--green);outline:3px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){.workspace-splitter:before{transition:none}}@media (max-width:900px){.workspace-splitter{display:none}}.activity-main h1{margin:18px 0 20px;font-size:40px}.activity-main>p{font-size:14px;line-height:1.9}.activity-main .instructions{white-space:pre-wrap;margin-bottom:25px}.prediction-code{background:var(--ink);color:var(--mist-2);margin-top:28px;padding:29px;line-height:2}.option-letter{font-family:var(--font);border:1px solid var(--line);min-width:25px;height:25px;color:var(--moss-7);border-radius:4px;justify-content:center;align-items:center;font-size:11px;display:flex}.tutor-panel{border:1px solid var(--line);background:var(--light-2);border-radius:13px;align-self:start;padding:23px}.tutor-title{align-items:center;gap:12px;display:flex}.tutor-title strong{font-size:14px}.tutor-title small{letter-spacing:.08em;color:var(--moss-7);margin-top:3px;font-size:10px;display:block}.tutor-icon{background:var(--mist-2);min-width:37px;height:37px;color:var(--moss-7);border-radius:9px;justify-content:center;align-items:center;display:flex}.tutor-panel>p{margin:20px 0;font-size:11px;line-height:1.9}.tutor-prompt{border:1px solid var(--mist-2);background:var(--canvas);border-radius:8px;padding:17px}.tutor-prompt .eyebrow{font-size:10px}.tutor-prompt p{color:var(--moss-7);margin-top:10px;font-size:12px;line-height:1.9}.tutor-prompt small{color:var(--moss-7);margin-top:10px;font-size:10px;display:block}.tutor-example{border-top:1px solid var(--mist-2);min-width:0;color:var(--moss-14);margin-top:16px;padding-top:14px;font-size:12px;line-height:1.7}.tutor-example h3{margin:0 0 12px;font-size:15px}.tutor-example pre{white-space:pre;background:var(--paper);border:1px solid var(--mist-2);border-radius:6px;max-width:100%;padding:12px;font-size:12px;line-height:1.7;overflow-x:auto}.tutor-example ol{padding-left:20px}.tutor-example li+li{margin-top:8px}.tutor-panel textarea{border-color:var(--mist-2);background:var(--paper);width:100%;min-height:85px;margin:20px 0 8px;font-size:11px}.tutor-panel .button{justify-content:space-between;min-height:41px;font-size:11px}.tutor-panel .tutor-note{color:var(--moss-7);font-size:10px;line-height:1.8}.session-intention{border-top:1px solid var(--mist-2);margin-top:27px;padding-top:21px}.session-intention .eyebrow{font-size:10px}.session-intention p{margin-top:12px;font-size:11px;line-height:1.9}.code-workspace{border:1px solid var(--body);background:var(--obsidian);border-radius:10px;margin:20px 0;overflow:hidden}.code-bar{background:var(--ink);color:var(--mist-2);border-bottom:1px solid var(--body);justify-content:space-between;align-items:center;padding:10px 17px;font-family:monospace;font-size:12px;display:flex}.python-dot{color:var(--sage-6);padding-right:7px;font-size:11px}.code-bar .text-button{font-family:var(--font);min-height:30px;font-size:10px}.editor-actions{background:var(--ink);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.editor-actions .text-button{font-size:10px}.editor-actions .button{min-height:36px;padding:7px 13px;font-size:11px}.plain-editor{background:var(--obsidian);width:100%;height:310px;color:var(--mist-2);tab-size:4;border:0;border-radius:0;font-family:monospace;font-size:14px;line-height:1.9}.editor-loading{color:var(--slate-1);min-height:310px;padding:25px}.output-console{background:var(--light-2);min-height:130px;color:var(--moss-13);padding:20px}.output-console .eyebrow{font-size:10px}.output-console>p{margin-top:15px;font-size:11px}.output-console pre{background:0 0;margin:7px 0;padding:10px 0;font-size:12px}.run-error{color:var(--error)}.test-pass{color:var(--success-2);padding:3px 0;font-family:monospace;font-size:11px}.test-fail{color:var(--error-3);white-space:pre-wrap;padding:4px 0;font-family:monospace;font-size:11px}.teach-answer{width:100%;min-height:260px;margin:23px 0 10px;font-size:14px;line-height:1.9;display:block}.feedback{border:1px solid var(--mist-7);background:var(--light-2);border-radius:9px;margin-top:24px;padding:20px}.feedback.positive{border-color:var(--mist-3);background:var(--success-bg)}.feedback h2{font-size:13px}.feedback p{margin-top:8px;font-size:12px;line-height:1.9}.rubric-item{margin-top:9px;font-size:11px;display:block}.ai-feedback{border:1px solid var(--mist-7);background:var(--canvas);border-radius:9px;margin-top:16px;padding:16px}.ai-feedback strong{font-size:12px}.ai-feedback p[role=note]{color:var(--fawn);margin-top:8px;font-size:11px;line-height:1.9}.activity-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin-top:35px;padding-top:25px;display:flex}.activity-footer>span{color:var(--moss-7);font-size:10px}.concept-callout{background:var(--light-2);border:1px solid var(--mist-2);color:var(--moss-7);border-radius:10px;gap:18px;margin:35px 0;padding:25px;display:flex}.concept-callout span{font-size:13px;line-height:1.9}.concept-callout strong{color:var(--ink);margin-bottom:6px;display:block}.resume-sessions{border:1px solid var(--line);background:var(--canvas);border-radius:16px;margin-bottom:24px;padding:24px}.resume-sessions h2{margin:8px 0}.resume-sessions p,.resume-row small{color:var(--slate-3)}.resume-row{justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.resume-row span{gap:4px;display:grid}.resume-older{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.resume-older summary{color:var(--slate-4);cursor:pointer;font-weight:700}.resume-older summary:focus-visible{outline:2px solid var(--slate-4);outline-offset:4px}.session-reason{background:var(--canvas);border-left:3px solid var(--moss-10);max-width:1300px;margin:20px auto 0;padding:16px 24px}.session-reason p{margin:6px 0}.session-reason small{color:var(--slate-3)}.draft-status{border:1px solid var(--line);background:var(--canvas);color:var(--slate-5);border-radius:8px;margin:12px 0 20px;padding:12px 16px;font-size:13px}.draft-status p{margin:4px 0 8px}.draft-status summary{cursor:pointer;margin:12px 0}.draft-status pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.draft-actions{flex-wrap:wrap;gap:10px;display:flex}.mobile-code-guidance{background:var(--canvas);color:var(--slate-5);margin:0;padding:12px 16px;font-size:13px;display:none}.session-evidence-summary{text-align:left;border:1px solid var(--line);border-radius:12px;max-width:660px;margin:24px auto;padding:20px}.session-evidence-summary h2{margin:8px 0;font-size:18px}.session-evidence-summary ul{padding-left:20px}@media (max-width:600px){.mobile-code-guidance{display:block}.resume-row{flex-direction:column;align-items:flex-start}.session-reason{margin:12px;padding:14px}}.session-finish{max-width:650px;margin:0 auto;padding:70px 30px}.session-finish .completion-mark{margin:0 0 30px}.session-finish h1{margin:20px 0;font-size:54px}.session-finish p{font-size:14px;line-height:1.9}.empty{text-align:center;padding:60px}@media (min-width:1500px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 305px}.mission h2{font-size:37px}.mission .constellation{width:370px;right:-35px}.mission p{max-width:340px}.mission-body{min-height:235px}.metrics span>small{font-size:10px}}@media (max-width:1180px){.sidebar{width:205px;padding:28px 15px 18px}.main-shell{margin-left:205px}.main-content{padding:30px 25px 0}.topbar{padding:0 25px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 235px;gap:18px}.mission{padding:22px}.mission h2{font-size:28px}.mission .constellation{opacity:.5;right:-140px}.mission-body>div{width:90%}.metrics>div{gap:7px;padding:0 10px}.metric-icon,.today-date{display:none}.mission-tags{gap:5px}.mission-tags span{font-size:10px}.review-card{padding:20px}.review-card h2{font-size:22px}.topbar .breadcrumb{display:none}.topbar-actions{margin-left:auto}.activity-layout{--split-gutter:28px;row-gap:28px}.welcome-story{padding:40px}.welcome h1{font-size:49px}.auth-side{padding:40px}.welcome-story .brand small{display:none}}@media (max-width:900px){.sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;padding:18px 24px;position:static;inset:auto}.app-shell{display:block}.sidebar>.brand{font-size:24px}.sidebar nav{gap:5px;margin-top:15px;display:flex;overflow-x:auto}.nav-item{white-space:nowrap;width:auto;margin:0;padding:10px;font-size:11px}.sidebar .workspace-label,.sidebar-divider,.sidebar-bottom,.sidebar>.nav-item,.nav-item .active-dot{display:none}.nav-item svg{width:16px}.main-shell{margin-left:0}.topbar{height:60px}.main-content{padding:27px 25px 0}.dashboard-grid{grid-template-columns:minmax(0,1fr) 240px}.dashboard-heading h1{font-size:34px}.mission{padding:22px}.mission-body{min-height:225px}.mission h2{font-size:28px}.metrics strong{font-size:21px}.next-horizon .button{font-size:10px}.activity-layout{grid-template-columns:minmax(0,1fr);max-width:760px}.tutor-panel{margin-top:15px}.tutor-panel textarea{min-height:65px}.session-intention{display:none}.welcome{grid-template-columns:1fr 1fr}.welcome-story{padding:35px}.welcome h1{font-size:41px}.welcome-copy{margin-top:70px}.welcome-copy p{font-size:12px}.welcome-story .constellation{opacity:.4;bottom:65px}.auth-side{padding:30px}.auth-form h2{font-size:30px}.passport-banner{padding:23px}.passport-banner h2{font-size:22px}.page-heading h1{font-size:35px}.project-detail{gap:22px}.project-submit{padding:20px}.skip-link{left:20px}}@media (max-width:680px){.sidebar{padding:17px 17px 12px}.sidebar nav{gap:2px;margin-top:14px}.nav-item{flex-direction:column;flex:1;gap:6px;min-width:67px;padding:9px 10px;font-size:10px}.nav-item svg{width:18px}.nav-item small{margin:0 0 0 28px;font-size:10px;position:absolute}.sidebar .brand{font-size:25px}.brand-mark{width:32px;height:32px}.topbar{height:54px;padding:0 17px}.topbar-actions{justify-content:space-between;gap:10px;width:100%}.search-box input{width:155px}.streak{font-size:10px}.streak span,.topbar-divider{display:none}.main-content{padding:26px 17px 0}.dashboard-heading{margin-bottom:24px}.dashboard-heading h1{margin:12px 0 8px;font-size:31px;line-height:1.2}.dashboard-heading p{font-size:11px}.dashboard-heading .eyebrow{font-size:10px}.goal-strip{gap:11px;margin-bottom:20px;padding:13px}.goal-symbol{width:33px;height:33px}.goal-strip>span{font-size:10px}.goal-strip>span strong{font-size:11px}.goal-progress{width:75px;min-width:0;margin-left:auto}.goal-progress>span{font-size:10px;line-height:1.6}.goal-strip>.icon-button{display:none}.dashboard-grid{grid-template-columns:1fr;gap:25px}.mission{padding:22px}.mission h2{margin-top:27px;font-size:32px}.mission-top .eyebrow,.mission-time{font-size:10px}.mission-body>div{width:90%}.mission p{max-width:260px;font-size:11px}.mission-tags span{font-size:10px}.mission .constellation{opacity:.3;top:22px;right:-180px}.mission-bottom{gap:22px;margin-top:23px}.mission-bottom .button{min-height:45px}.duration-select select{font-size:10px}.metrics{margin-top:15px;margin-bottom:25px;padding:18px 0}.metrics>div{padding:0 12px}.metrics strong{font-size:23px}.metrics span>small{max-width:75px;font-size:10px;line-height:1.8}.section-title h2{font-size:23px}.section-title .eyebrow,.section-title>.text-button{font-size:10px}.skill-copy small{font-size:10px;line-height:1.8}.compact .skill-row{padding:14px}.insights-column{grid-template-columns:1fr 1fr;gap:13px;display:grid}.review-card{padding:18px}.review-card .card-top{flex-direction:column;align-items:flex-start;gap:10px}.review-card h2{font-size:22px}.review-card p:not(.error),.review-card .text-button{font-size:10px}.project-card{padding:16px}.project-card .card-top .eyebrow{font-size:10px}.project-card .card-top svg{width:13px}.mini-project-art{height:115px;margin:14px 0}.mini-project-art>div{transform:scale(.85)rotate(-4deg)}.project-card h3{font-size:21px}.project-card p{font-size:10px}.project-card .text-button{gap:5px;font-size:10px}.project-card .text-button svg{width:12px}.project-card .small-label{font-size:10px}.learning-note{grid-column:1/-1;display:none}.next-horizon{margin-top:27px;padding:25px 0;display:block}.next-horizon h2{font-size:24px}.next-horizon p{font-size:11px}.next-horizon .button{margin-top:20px;font-size:10px}.workspace-footer{gap:12px;margin-top:5px;font-size:10px}.workspace-footer>span:last-child{font-size:10px}.welcome{display:block}.welcome-story{min-height:auto;padding:23px}.welcome-copy{margin-top:32px}.welcome-copy .eyebrow{font-size:10px}.welcome h1{margin:16px 0;font-size:39px}.welcome-copy p{font-size:12px}.welcome-benefits{gap:8px;margin:24px 0 9px;font-size:10px}.welcome-foot{display:none}.welcome-story .constellation{opacity:.25;width:290px;bottom:50px;right:-115px}.auth-side{padding:28px 24px 20px}.auth-top{display:none}.auth-form{max-width:100%;padding:13px 0 30px}.auth-form h2{font-size:31px}.auth-form>p,.auth-form label{font-size:12px}.auth-form input{font-size:14px}.auth-bottom{font-size:10px}.onboarding{padding:35px 22px}.onboarding h1{font-size:39px}.onboarding>p{font-size:13px}.goal-option{gap:13px;padding:20px 15px}.goal-option strong{font-size:14px}.goal-option small{font-size:10px}.segmented{gap:7px}.segmented button{flex:1;padding:9px 18px;font-size:11px}.diagnostic-card{padding:20px}.diagnostic-card h3{font-size:18px}.onboarding .button{width:100%}.summary-strip{gap:25px}.summary-strip strong{font-size:15px}.summary-strip>span{font-size:10px}.page-heading{margin-top:5px}.page-heading h1{font-size:34px}.page-heading p{font-size:12px}.project-detail,.author-layout,.plans{grid-template-columns:1fr}.passport-banner{flex-wrap:wrap;gap:14px;padding:21px}.passport-banner>svg{width:28px}.passport-banner h2{font-size:21px}.passport-banner .tag{margin-left:42px}.passport-banner p{font-size:10px}.settings-card{flex-direction:column;align-items:flex-start;padding:20px}.settings-card h2{font-size:16px}.settings-card h2.guidance-preferences-heading{font-size:18px}.delete-confirm{flex-direction:column;align-items:stretch}.path-header{font-size:12px}.path-header>span:last-child{font-size:10px}.skill-row{gap:14px;padding:18px 15px}.skill-copy strong{font-size:12px}.skill-row .node{width:30px;height:30px}.skill-row:not(:last-child) .node:after{top:29px;left:14px}.learning-top{gap:8px;padding:15px 12px}.learning-top>span:nth-child(2) strong{font-size:13px}.learning-top small{max-width:155px;font-size:10px}.session-progress{gap:7px}.session-progress>div{width:65px;height:4px}.session-progress small{font-size:10px}.xp-pill{margin-left:4px;padding:5px 7px;font-size:10px}.learning-top>.icon-button{min-width:30px}.activity-layout{gap:24px;padding:30px 18px}.activity-main h1{font-size:33px;line-height:1.2}.activity-main>p{font-size:13px}.activity-main .eyebrow{font-size:10px}.prediction-code{padding:20px;font-size:12px}.activity-footer{align-items:flex-end}.activity-footer>span{max-width:100px;font-size:10px}.activity-footer .button{padding:11px 15px;font-size:11px}.editor-actions{gap:8px;padding:13px 12px}.editor-actions .text-button,.editor-actions .button{font-size:10px}.session-finish{padding:50px 25px}.session-finish h1{font-size:44px}.session-finish .button{width:100%}.session-finish p{font-size:13px}.feedback p{font-size:11px}.empty-state{padding:35px 20px}.empty-state h2{font-size:26px}.empty-state p{font-size:12px}.note-panel{padding:17px}.dsl-editor{height:400px}.author-preview{padding:20px}.activity-main .instructions{font-size:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}input::placeholder,textarea::placeholder{color:var(--sage-22);opacity:1}.brand-beta,.skill-row.locked{color:var(--moss-7)}.mission .constellation{right:-40px}.mission-body>div{width:68%}@media (max-width:1180px){.mission .constellation{right:-135px}.mission-body>div{width:90%}}@media (max-width:680px){.mission .constellation{right:-190px}.mission-top .eyebrow{max-width:165px}.mission-tags{flex-wrap:wrap}.metrics span>small{font-size:9px}.workspace-footer{flex-wrap:wrap}.nav-item{padding:9px 7px}.goal-progress>span{font-size:9px}.insights-column{grid-template-columns:1fr}.project-card{display:none}.review-card .card-top{flex-direction:row}.review-card h2{margin-top:18px}}.workspace-tools{gap:12px;margin-bottom:25px;display:flex}@media (max-width:680px){.topbar-actions{gap:5px}.search-box input{width:145px}.topbar .streak{display:none}}.account-page{background:var(--canvas);min-height:100vh;padding:clamp(24px,6vw,80px)}.account-action-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;max-width:540px;margin:60px auto;padding:clamp(24px,5vw,48px)}.account-action-card .eyebrow{margin-top:24px;display:block}.account-action-card h1{letter-spacing:-.04em;font-size:clamp(32px,5vw,48px)}.account-action-card p{line-height:1.6}.account-action-card form,.security-form{gap:18px;margin:24px 0;display:grid}.account-action-card label,.security-form label{gap:8px;font-size:14px;font-weight:600;display:grid}.account-action-card input,.security-form input{background:var(--paper);border:1px solid var(--line);border-radius:8px;width:100%;padding:12px 14px}.security-form{max-width:460px;padding:0 0 20px}.security-section{border-bottom:1px solid var(--line);margin-bottom:24px}.tutor-reference{margin-top:8px;font-size:12px;text-decoration:underline;display:block}.graph-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.graph-toolbar p{color:var(--muted);margin:5px 0 0}.graph-controls{flex-shrink:0;align-items:center;gap:12px;display:flex}.graph-controls .button{padding:7px 12px}.graph-viewport{border:1px solid var(--line);background-color:var(--canvas);background-image:radial-gradient(var(--mist-9) 1px, transparent 1px);background-size:20px 20px;border-radius:16px;max-height:700px;overflow:auto}.graph-canvas{transform-origin:0 0;position:relative}.graph-edges{pointer-events:none;position:absolute;inset:0}.graph-node{text-align:left;border:1px solid var(--sage-2);background:var(--paper);width:180px;height:70px;box-shadow:0 3px 10px var(--shadow-sm);border-radius:12px;padding:12px;position:absolute}.graph-node span{align-items:center;gap:8px;display:flex}.graph-node strong{font-size:12px;line-height:1.3}.graph-node small{color:var(--muted);margin-top:7px;font-size:10px;display:block}.graph-node.available{border:2px solid var(--green);background:var(--light-2)}.graph-node.done{background:var(--green);color:#fff;border-color:var(--green)}.graph-node.done small{color:var(--mist-2)}@media (max-width:800px){.graph-toolbar{flex-direction:column;align-items:flex-start}.graph-viewport{max-height:560px}}.tutor-shortcuts{gap:8px;margin-bottom:14px;display:grid}.tutor-shortcuts .button{padding:9px 10px;font-size:.8rem}.course-library,.course-detail{max-width:1160px;color:var(--slate-6);margin:auto}.library-heading{justify-content:space-between;align-items:center;gap:32px;margin:16px 0 36px;display:flex}.library-heading h1,.course-detail-heading h1{letter-spacing:-1.8px;max-width:700px;margin:0 0 16px;font-size:clamp(32px,3.4vw,48px);line-height:1.1}.library-heading p,.course-detail-heading p{max-width:620px;color:var(--info-2);font-size:17px;line-height:1.65}.library-emblem{background:var(--mist-3);width:100px;height:100px;color:var(--info);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.library-feature{background:var(--canvas);border-radius:20px;grid-template-columns:1.3fr 1fr;align-items:center;gap:32px;margin-bottom:32px;padding:36px;display:grid}.library-feature h2{letter-spacing:-.8px;margin:12px 0;font-size:30px;line-height:1.22}.library-feature p{max-width:430px;color:var(--info-2);margin-bottom:24px;line-height:1.7}.course-subject{color:var(--slate-2);font-size:13px;font-weight:650}.learning-artifact{box-shadow:0 12px 28px var(--shadow-lg);background:#fff;border-radius:12px;padding:20px 26px;transform:rotate(-2deg)}.learning-artifact span{border-bottom:1px solid var(--line);padding:15px 0 15px 28px;font-size:15px;display:block;position:relative}.learning-artifact span:before{content:"";background:var(--sage-14);border-radius:50%;width:8px;height:8px;position:absolute;top:22px;left:2px}.learning-artifact span:last-child{border-bottom:0}.library-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.library-filters{flex-wrap:wrap;gap:6px;display:flex}.library-filters button{color:var(--info-2);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:30px;min-height:44px;padding:10px 16px;font-size:14px}.library-filters button[aria-pressed=true]{background:var(--info);color:#fff}.library-search{border:1px solid var(--slate-1);background:#fff;border-radius:8px;align-items:center;gap:10px;padding:0 12px;display:flex}.library-search input{min-height:44px;font:inherit;background:0 0;border:0;max-width:240px;font-size:14px}.library-count{color:var(--info-2);margin:24px 0 8px;font-size:13px}.library-count span{margin-left:12px}.course-row{border-bottom:1px solid var(--slate-1);grid-template-columns:48px 1fr 185px;align-items:start;gap:22px;padding:28px 8px;display:grid}.course-row-icon{background:var(--canvas);width:46px;height:46px;color:var(--info);border-radius:12px;place-items:center;display:grid}.course-row h2{letter-spacing:-.4px;margin:6px 0 8px;font-size:21px}.course-row h2 button{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.course-row p{color:var(--info-2);max-width:580px;margin:0 0 10px;font-size:14px;line-height:1.6}.course-outcome{color:var(--slate-2);font-size:13px}.course-row-meta{color:var(--info-2);flex-direction:column;gap:10px;padding-top:8px;font-size:13px;display:flex}.course-row-meta>span{align-items:center;gap:7px;display:flex}.course-row-meta button{min-height:44px;margin-top:4px}.course-detail-heading{margin:30px 0}.course-detail-heading h1{margin-top:12px}.course-detail-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:42px;display:grid}.course-detail h2{letter-spacing:-.5px;font-size:24px}.course-detail h3{font-size:17px}.course-detail p,.course-detail li{color:var(--info-2);font-size:15px;line-height:1.75}.course-detail section{margin-bottom:40px}.course-outcomes ul{padding:0;list-style:none}.course-outcomes li{gap:12px;margin:12px 0;display:flex}.course-outcomes li svg{color:var(--info);flex-shrink:0;margin-top:4px}.course-summary{background:var(--success-bg);border-radius:16px;padding:26px;position:sticky;top:24px}.course-summary h2{font-size:23px;line-height:1.3}.course-summary dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;font-size:13px;display:flex}.course-summary dd{margin:0;font-weight:600}.course-summary p,.course-summary small{color:var(--info-2);font-size:13px;line-height:1.7}.course-summary progress{width:100%;accent-color:var(--info)}.course-review-note{border-left:3px solid var(--sage-11);margin:20px 0;padding-left:12px}.course-summary .button{margin:8px 0 20px}.course-syllabus ol{margin-top:24px;padding:0;list-style:none}.course-syllabus li{border-bottom:1px solid var(--slate-1)}.course-syllabus summary{cursor:pointer;min-height:64px;color:var(--slate-6);align-items:center;gap:16px;padding:18px 0;display:flex}.module-number{color:var(--info-2);border:1px solid var(--slate-1);border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:13px;display:grid}.course-syllabus summary small{color:var(--info-2);margin-top:3px;font-size:12px;display:block}.module-description{padding:0 0 16px 46px}.module-description h4{color:var(--slate-6);margin:16px 0 4px}.module-description p{margin:6px 0 14px}.misconception{background:var(--paper);border-radius:8px;padding:12px 15px}.course-capstone{background:var(--canvas);border-radius:16px;padding:28px}.course-capstone textarea{width:100%;min-height:180px;margin:12px 0}.course-capstone label{margin-top:24px;font-weight:600;display:block}.course-sources a{word-break:break-word;color:var(--info)}.course-sources svg{display:inline}.public-courses{max-width:1240px;margin:auto;padding:24px 36px 60px}.public-courses>header{border-bottom:1px solid var(--slate-1);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:40px;padding-bottom:22px;display:flex}@media (max-width:900px){.course-detail-layout{grid-template-columns:1fr}.course-summary{grid-row:1;position:static}.course-row{grid-template-columns:40px 1fr}.course-row-meta{flex-flow:wrap;grid-column:2;align-items:center}.library-feature{gap:22px;padding:24px}.library-feature h2{font-size:25px}}@media (max-width:600px){.library-emblem{display:none}.library-feature{grid-template-columns:1fr}.learning-artifact{padding:10px 20px;transform:none}.learning-artifact span{padding-top:10px;padding-bottom:10px}.learning-artifact span:before{top:17px}.library-heading{margin-bottom:24px}.library-heading h1,.course-detail-heading h1{letter-spacing:-1px}.library-search{width:100%}.library-search input{width:100%;max-width:none}.library-count span{margin:8px 0;display:block}.course-row{gap:14px;padding:24px 0}.course-row h2{font-size:20px}.course-row-meta{gap:14px}.course-detail-layout{gap:24px}.course-capstone,.public-courses{padding:20px}.public-courses>header .brand{font-size:24px}.module-description{padding-left:0}}.course-syllabus .module-chevron{flex-shrink:0;margin-left:auto;transition:transform .15s}.course-syllabus details[open] .module-chevron{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.course-syllabus .module-chevron{transition:none}}.course-concierge{z-index:35;max-width:calc(100vw - 32px);position:fixed;bottom:24px;right:24px}.guide-launcher{border:1px solid var(--mist-12);background:var(--paper);box-shadow:0 6px 24px var(--shadow-md);text-align:left;border-radius:40px;align-items:center;gap:12px;min-height:64px;padding:10px 16px 10px 10px;font-weight:650;display:flex}.guide-avatar{flex-shrink:0;width:46px;height:46px}.guide-launcher small{color:var(--muted);font-size:11px;font-weight:400;display:block}.guide-panel{border:1px solid var(--mist-9);width:390px;max-width:calc(100vw - 32px);box-shadow:0 15px 60px var(--shadow-xl);background:#fff;border-radius:20px;margin-bottom:12px;overflow:hidden}.guide-panel header{background:var(--light);align-items:center;gap:10px;padding:18px;display:flex}.guide-panel h2{letter-spacing:-.2px;margin:0;font-size:16px}.guide-panel header p{color:var(--moss-8);margin:2px 0 0;font-size:11px}.guide-close{background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;min-width:40px;min-height:40px;margin-left:auto;display:inline-flex}.guide-log{overscroll-behavior:contain;max-height:min(330px,38dvh);padding:18px;overflow:auto}.guide-message{background:var(--light-2);border-radius:2px 14px 14px;max-width:95%;margin:0 0 12px;padding:12px 14px}.guide-message.you{background:var(--green);color:var(--paper);border-radius:14px 2px 14px 14px;margin-left:auto}.guide-message small{font-size:10px;font-weight:700}.guide-message p{color:inherit;margin:5px 0;font-size:13px;line-height:1.65}.guide-course-link{align-items:center;gap:6px;margin-top:12px;font-size:12px;font-weight:700;display:flex}.guide-choices{flex-wrap:wrap;gap:6px;padding:0 18px 12px;display:flex}.guide-choices button{border:1px solid var(--mist-9);background:#fff;border-radius:16px;padding:8px 10px;font-size:11px}.guide-panel form{border:1px solid var(--sage-9);border-radius:10px;margin:0 16px;display:flex}.guide-panel input{background:0 0;border:0;width:100%;min-width:0;padding:12px;font-size:13px}.guide-panel form button{background:0 0;border:0;min-width:44px}.guide-privacy{color:var(--moss-8);padding:0 18px;font-size:12px;line-height:1.5}.exit-offer{border:1px solid var(--mist-9);width:460px;max-width:calc(100vw - 32px);color:var(--ink);background:var(--paper);border-radius:24px;max-height:90dvh;padding:32px;overflow:auto}.exit-offer::backdrop{background:var(--backdrop)}.exit-offer .guide-close{position:absolute;top:12px;right:12px}.offer-illustration{border-left:4px solid var(--sage-8);color:var(--moss-8);margin:8px 0 24px;padding-left:18px;font-size:25px;line-height:1.1;display:block}.offer-illustration strong{color:var(--green);font-size:40px;font-weight:650}.exit-offer h2{letter-spacing:-.8px;margin-bottom:12px;font-size:30px;line-height:1.2}.exit-offer p{color:var(--moss-8);font-size:15px}.exit-offer .button{justify-content:center;margin:16px 0;display:flex}.exit-offer .text-button{margin:auto;display:block}.exit-offer small{color:var(--moss-8);margin-top:20px;font-size:11px;display:block}.marketing-opt-in{align-items:flex-start;font-size:12px;line-height:1.5;flex-direction:row!important;gap:10px!important;display:flex!important}.marketing-opt-in input{min-width:18px;height:18px;accent-color:var(--green);margin:2px 0 0;width:18px!important}.preference-page{max-width:600px;margin:8vh auto;padding:24px}.preference-page section{background:var(--paper);border:1px solid var(--line);border-radius:18px;margin-top:32px;padding:32px}.preference-page h1{letter-spacing:-.7px;font-size:32px;line-height:1.2}.email-preferences button{margin-top:10px}@media (max-width:600px){.course-concierge{bottom:16px;right:16px}.guide-launcher{min-height:56px;font-size:12px}.guide-avatar{width:38px;height:38px}.public-courses{padding-bottom:100px}.guide-panel{width:calc(100vw - 32px)}}.functions-evidence{border-bottom:1px solid var(--border,var(--line));margin-bottom:24px;padding-bottom:24px}.functions-evidence h2{margin:0 0 12px;font-size:20px;line-height:1.3}.functions-evidence p{font-size:14px;line-height:1.6}.functions-evidence pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;font-size:13px}.functions-evidence fieldset{border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:12px}.functions-evidence label{align-items:center;gap:8px;min-height:44px;display:flex}.functions-evidence .button{white-space:normal}.functions-evidence input[type=radio]{flex:0 0 18px;width:18px;height:18px;margin:0;padding:0}.activity-accessibility{margin:1rem 0}.activity-accessibility summary{cursor:pointer;font-weight:600}.private-activity-preview{grid-template-columns:minmax(0,1fr);margin-top:2rem}.milestone-deliverable{display:block}.evidence-intro{max-width:78ch;color:var(--muted);margin:24px 0 32px;line-height:1.75}.evidence-ledger{gap:28px;margin-bottom:24px;display:grid}.evidence-entry{border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:28px}.evidence-entry>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding-bottom:22px;display:flex}.evidence-entry h3{margin:7px 0 0;font-size:23px}.evidence-facts{grid-template-columns:1fr 1fr;gap:26px 36px;margin:26px 0;display:grid}.evidence-facts dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:12px}.evidence-facts dd{margin:0;line-height:1.65}.evidence-facts dd>strong{font-size:16px}.evidence-facts p{color:var(--muted);margin:7px 0;font-size:13px}.evidence-gaps{border-top:1px solid var(--line);padding-top:18px;font-size:13px;line-height:1.75}.evidence-gaps summary{cursor:pointer;font-weight:600}@media (max-width:700px){.evidence-entry{padding:20px}.evidence-entry>header{flex-direction:column;align-items:flex-start;gap:10px}.evidence-facts{grid-template-columns:1fr;gap:20px}}.review-planner .settings-card input{border:1px solid var(--line);width:min(100%,24rem);color:var(--ink);background:#fff;border-radius:8px;margin:.5rem 0;padding:.75rem;display:block}.review-planner .settings-card{flex-wrap:wrap;gap:1rem}.review-planner .evidence-skill{margin:1rem 0}.review-actions{flex-wrap:wrap;gap:1rem;margin-top:1rem;display:flex}.tutor-panel select{width:100%;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;margin:.5rem 0 1rem;padding:.65rem}.foundations-map{margin-top:2.5rem}.foundation-objective{border-top:1px solid var(--line);padding:1.5rem 0}.foundation-objective dt{margin-top:.75rem;font-weight:600}.foundation-objective dd{color:var(--body);margin:.25rem 0 1rem}.project-workflow-list{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.project-editor fieldset{border:1px solid var(--line);border-radius:12px;min-width:0;margin:1.5rem 0;padding:1.25rem}.project-editor legend{padding:0 .5rem;font-weight:650}.project-editor textarea{border:1px solid var(--line);width:100%;min-height:10rem;color:var(--ink);resize:vertical;background:#fff;border-radius:8px;margin:.5rem 0 1rem;padding:1rem;display:block}.project-editor #project-code{min-height:20rem;font-family:var(--font-mono), monospace}.project-editor select{max-width:100%;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:.65rem}.project-editor pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.foundation-objective a{text-decoration:underline}@media (max-width:700px){.project-workflow-list{grid-template-columns:1fr}}.foundation-objective>a{align-items:center;min-height:44px;margin-bottom:.5rem;display:inline-flex}.project-detail[hidden]{display:none}.project-workflow-list>.evidence-skill,.project-editor,.foundations-map>details{border:1px solid var(--line);background:#fff;border-radius:14px;margin:1.5rem 0;padding:1.5rem}.project-editor>h2{margin-bottom:1rem}.project-editor>p{max-width:80ch;margin-bottom:1rem;line-height:1.7}.project-editor>details,.project-workflow-list h3{margin:.75rem 0}.project-workflow-list p{margin-bottom:1rem;line-height:1.6}.project-plan-actions{justify-items:start;gap:.75rem;margin:1rem 0;display:grid}.project-plan-actions small{color:var(--body);line-height:1.5;display:block}.author-lifecycle{border-top:1px solid var(--line);margin-top:2rem;padding-top:2rem}.author-lifecycle textarea{width:100%;min-height:6rem;margin:.6rem 0 1rem;display:block}.author-lifecycle details{border:1px solid var(--line);border-radius:12px;margin:1rem 0;padding:1rem}.author-lifecycle pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:28rem;overflow:auto}.author-document-list{padding-left:1.2rem}.author-document-list li{margin:.5rem 0}.author-document-list .button{white-space:normal;overflow-wrap:anywhere;text-align:left;max-width:100%}.author-review-check{align-items:center;gap:.75rem;min-height:44px;display:flex}.author-review-check input{width:1.2rem;height:1.2rem}.managed-shelf{border-top:1px solid var(--line);max-width:1220px;color:var(--green);margin:70px auto 0;padding:42px 28px}.managed-shelf-kicker{letter-spacing:.16em;color:var(--moss-4);font-size:11px;font-weight:900}.managed-shelf h2{letter-spacing:-.05em;margin:8px 0;font-size:clamp(27px,3vw,42px)}.managed-shelf>p:not(.managed-shelf-kicker){color:var(--muted);line-height:1.6}.managed-shelf-grid{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px;margin-top:26px;display:grid}.managed-shelf-card{background:var(--light-2);border:1px solid var(--mist-2);color:var(--green);border-radius:14px;padding:28px;text-decoration:none;display:block;position:relative}.managed-shelf-card:hover{border-color:var(--sage-7);transform:translateY(-2px)}.managed-shelf-card .managed-shelf-badge{background:var(--mist-4);border-radius:20px;padding:5px 9px;font-size:11px;font-weight:800;position:absolute;top:27px;right:26px}.managed-shelf-card h3{letter-spacing:-.035em;margin:25px 0 8px;font-size:22px}.managed-shelf-card p{color:var(--moss-9);line-height:1.55}.managed-shelf-card small{color:var(--moss-2);margin:23px 0;display:block}.managed-shelf-card strong{align-items:center;gap:6px;display:inline-flex}
.analytics-controls{z-index:80;color:var(--moss-16);max-width:calc(100vw - 32px);font-size:13px;position:fixed;bottom:12px;left:16px}.analytics-launcher{border:1px solid var(--mist-13);background:var(--canvas);color:var(--green);font:inherit;cursor:pointer;box-shadow:0 2px 8px var(--panel-shadow-sm);border-radius:8px;padding:7px 11px}.analytics-choice{background:var(--canvas);border:1px solid var(--sage-23);max-width:400px;box-shadow:0 10px 50px var(--panel-shadow-lg);border-radius:16px;max-height:calc(100dvh - 90px);margin-bottom:8px;padding:22px;overflow:auto}.analytics-choice-heading{justify-content:space-between;align-items:center;display:flex}.analytics-choice-heading button{color:var(--green);cursor:pointer;background:0 0;border:0;width:32px;height:32px;font-size:24px}.analytics-choice h2{letter-spacing:-.5px;margin:8px 0 12px;font-size:22px;font-weight:600;line-height:1.2}.analytics-choice p{margin:10px 0;font-size:14px;line-height:1.5}.analytics-choice .analytics-current{color:var(--moss-11);font-size:12px}.analytics-buttons{gap:8px;margin:16px 0;display:flex}.analytics-buttons button{border:1px solid var(--moss-17);background:var(--light-2);color:var(--moss-16);font:inherit;cursor:pointer;border-radius:8px;flex:1;padding:11px 8px;font-weight:600}.analytics-buttons button:hover{background:var(--mist-2)}.analytics-choice a{color:var(--green);font-size:13px;text-decoration:underline}.analytics-controls button:focus-visible,.analytics-controls a:focus-visible{outline:3px solid var(--focus-panel);outline-offset:3px}@media (min-width:901px){body:has(.sidebar) .analytics-controls{left:246px}}@media (min-width:901px) and (max-width:1180px){body:has(.sidebar) .analytics-controls{left:221px}}@media (max-width:480px){.analytics-controls{max-width:calc(100vw - 24px);bottom:96px;left:12px}.analytics-choice{max-height:calc(100dvh - 160px);padding:18px}.analytics-launcher{font-size:11px}.analytics-choice h2{font-size:20px}}@media (max-width:900px){body:has(.sidebar) .analytics-controls{max-width:none;margin:12px 16px;position:static;bottom:auto;left:auto}}
