:root{color-scheme:dark;--bg:#1c1c1c;--side:#141414;--panel:#222222;--raised:#292929;--hover:#2e2e2e;--line:#343434;--line-soft:#2c2c2c;--text:#eee;--muted:#989898;--quiet:#737373;--mint:#b7a5ff;--mint-bg:#302940;--mint-line:#625184;--accent-text:#211737;--shadow:0 24px 80px #0006;--font:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
:root[data-theme=light]{color-scheme:light;--bg:#fafaf9;--side:#efefed;--panel:#fff;--raised:#f2f2ef;--hover:#e8e8e4;--line:#d8d8d3;--line-soft:#e7e7e2;--text:#222522;--muted:#696c67;--quiet:#82867f;--mint:#6650c7;--mint-bg:#f0ebff;--mint-line:#c7baee;--accent-text:#fff;--shadow:0 24px 80px #0002}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:18px/1.6 var(--font);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{opacity:.45;cursor:wait}button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:4px}button{transition:background .15s,border-color .15s,transform .15s}input,textarea,select{color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:8px}input,textarea{padding:11px 13px}textarea{resize:vertical}select{padding:8px 28px 8px 10px}h1,h2,h3,p{margin:0}h1{font-size:45px;font-weight:530;letter-spacing:-1.8px;line-height:1.15}h2{font-size:20px;letter-spacing:-.4px;font-weight:560}h3{font-size:16px;font-weight:550;letter-spacing:-.2px}.icon{flex-shrink:0;vertical-align:middle}#app{display:flex;min-height:100dvh}.sidebar{position:fixed;top:0;bottom:0;width:244px;padding:26px 14px 0;background:var(--side);display:flex;flex-direction:column;z-index:20;border-right:1px solid var(--line-soft)}.brand{display:flex;align-items:center;gap:10px;padding:0 12px 28px;font-size:21px;font-weight:620;letter-spacing:-.7px}.brand-symbol{display:grid;place-items:center;width:32px;height:34px}.brand-symbol .icon{width:29px;height:29px;stroke-width:1.8}.brand-sub{font-size:14px;font-weight:400;letter-spacing:.25px;color:var(--muted);margin-left:8px}.new-task{display:flex;align-items:center;gap:10px;padding:9px 12px;text-align:left;border:1px solid var(--line);border-radius:8px;margin-bottom:18px;background:var(--panel);font-size:16px}.new-task:hover{background:var(--hover)}kbd{font:14px var(--font);color:var(--quiet);border:1px solid var(--line);border-radius:4px;padding:1px 4px}.new-task kbd{margin-left:auto;border:0}.nav-item{width:100%;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:7px;margin:3px 0;text-align:left;color:var(--muted);font-size:16px}.nav-item:hover,.path-item:hover,.recent-item:hover{background:var(--panel);color:var(--text)}.nav-item.active{background:var(--raised);color:var(--text)}.nav-count{margin-left:auto;font-size:14px;color:var(--muted)}.sidebar-label{font-size:14px;font-weight:550;letter-spacing:1px;color:var(--quiet);padding:28px 12px 10px}.path-item{display:flex;width:100%;align-items:center;text-align:left;gap:10px;padding:9px 12px;font-size:16px;color:var(--muted);border-radius:6px}.path-item>span:last-child{margin-left:auto;font:14px monospace;color:var(--quiet)}.path-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.dot-0{background:#97b6d8}.dot-1{background:#c8b2dc}.dot-2{background:#b4d6bf}.recent-label{display:flex;justify-content:space-between}.recent-list{overflow:auto;min-height:60px;flex:1}.empty-recents{padding:7px 12px;font-size:14px;line-height:1.8}.quiet{color:var(--quiet)}.recent-item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 12px;text-align:left;font-size:16px;color:var(--muted);border-radius:6px}.recent-item .icon{width:15px;height:15px}.recent-item>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-item.selected{background:var(--raised);color:var(--text)}.done-dot{width:5px;height:5px;background:var(--mint);border-radius:50%;margin-left:auto}.sidebar-bottom{padding:18px 10px 0;background:var(--side)}.level-row{display:flex;align-items:center;gap:10px;font-size:14px}.level-icon{height:32px;width:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--mint)}.level-icon .icon{width:16px;height:16px}.level-row strong{font-size:16px;font-weight:500}.level-row small{display:block;color:var(--quiet);font-size:14px}.level-number{margin-left:auto;color:var(--muted)}.xp-track{height:3px;background:var(--line);border-radius:2px;margin:12px 0 18px;overflow:hidden}.xp-track span{display:block;background:var(--mint);height:100%}.profile{display:flex;width:100%;align-items:center;gap:10px;text-align:left;border-top:1px solid var(--line-soft);padding:17px 0;font-size:16px}.profile small{display:block;color:var(--quiet);font-size:14px}.profile>.icon{margin-left:auto;width:16px;height:16px;color:var(--muted)}.avatar{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#414744;color:#d4ded6;font-size:14px}main{margin-left:244px;width:calc(100% - 244px);min-width:0}.topbar{height:63px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;padding:0 30px;gap:15px;background:var(--bg)}.breadcrumb{display:flex;align-items:center;gap:12px;min-width:0;font-size:16px;color:var(--quiet)}.breadcrumb>.icon{width:11px;height:11px}.breadcrumb strong{color:var(--muted);font-weight:450;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.mode-indicator{display:flex;align-items:center;gap:7px;border:1px solid var(--line);padding:4px 9px;border-radius:6px;font-size:14px;color:var(--muted)}.mode-indicator i,.tiny-dot{width:5px;height:5px;background:var(--mint);display:inline-block;border-radius:50%}.icon-btn{width:30px;height:30px;padding:5px;display:inline-grid;place-items:center;border-radius:6px;color:var(--muted)}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn .icon{width:18px;height:18px}.library{max-width:1240px;margin:0 auto;padding:48px 48px 24px}.eyebrow{display:flex;align-items:center;gap:8px;font-size:14px;letter-spacing:1.5px;color:var(--muted);font-weight:550}.heading-row{display:flex;align-items:center;justify-content:space-between;position:relative;margin:16px 0 33px;min-height:132px}.lede{margin-top:16px;color:var(--muted);font-size:16px;line-height:1.7}.hero-mark{position:relative;width:225px;height:145px;margin:0 25px 0 15px;flex-shrink:0}.hero-code{position:absolute;top:38px;left:76px;width:73px;height:73px;border-radius:21px;background:linear-gradient(150deg,#3e5146,#252d28);border:1px solid #63776877;box-shadow:0 15px 40px #0004;display:grid;place-items:center;transform:rotate(-8deg)}.hero-code svg{width:43px;height:43px;color:#cae1d1;stroke-width:1.3}.orbit{position:absolute;top:9px;left:35px;width:155px;height:131px;border:1px solid var(--line);border-radius:50%;transform:rotate(-30deg)}.orbit-two{transform:rotate(30deg);width:195px;left:15px;height:94px;top:28px}.float-chip{position:absolute;font:14px monospace;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 9px;display:flex;align-items:center;gap:6px}.float-chip svg{width:12px;height:12px;color:var(--mint)}.chip-one{top:2px;left:10px;transform:rotate(-7deg)}.chip-two{bottom:0;right:-6px;transform:rotate(6deg)}.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px;margin-bottom:44px}.featured{display:flex;justify-content:space-between;text-align:left;gap:15px;padding:25px 26px;background:var(--mint-bg);border:1px solid var(--mint-line);border-radius:12px;min-height:180px;align-items:center;position:relative;overflow:hidden}.featured:hover{border-color:var(--mint);transform:translateY(-2px)}.featured .eyebrow{font-size:14px;color:var(--mint);letter-spacing:1.2px}.featured h2{font-size:22px;margin:10px 0 6px;letter-spacing:-.5px}.featured p{font-size:16px;color:var(--muted)}.featured-cta{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:25px;font-weight:550;color:var(--mint);flex-wrap:wrap}.featured-cta .icon{width:14px;height:14px}.featured-cta small{font-weight:400;color:var(--muted);font-size:14px;margin-left:3px}.mini-terminal{flex-shrink:0;width:205px;padding:12px;border-radius:8px;border:1px solid #5a74623d;background:#17231cc4;box-shadow:0 8px 22px #0002;transform:rotate(2deg);font:14px/1.9 ui-monospace,SFMono-Regular,Menlo,monospace;color:#b9c8bc}.terminal-dots{display:flex;gap:4px;margin-bottom:15px;align-items:center}.terminal-dots i{width:4px;height:4px;background:#647168;border-radius:50%}.terminal-dots span{font-size:14px;color:#819085;margin-left:auto}.mini-terminal p{font:14px/2 monospace;color:#c0cdc4}.mini-terminal p span{margin-right:4px}.mint-code{color:#a3d5af}.muted-code{color:#7d8e81}.cursor{display:inline-block;width:4px;height:9px;background:#9bc3a5;vertical-align:middle;margin-left:4px}.progress-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:23px}.progress-card-top{display:flex;justify-content:space-between;color:var(--muted);font-size:14px}.progress-card-top svg{width:15px;height:15px}.progress-big{font-size:32px;line-height:1.2;font-weight:450;margin-top:16px;letter-spacing:-1px}.progress-big span{font-size:17px;color:var(--quiet);margin-left:5px}.progress-card>p{color:var(--quiet);font-size:14px;margin:4px 0 13px}.progress-track{height:4px;overflow:hidden;border-radius:4px;background:var(--line);width:100%}.progress-track span{display:block;background:var(--mint);height:100%;border-radius:4px}.text-btn{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:14px;padding:0}.text-btn:hover{color:var(--text)}.text-btn .icon{width:13px;height:13px}.progress-card .text-btn{margin-top:13px;font-size:14px}.catalog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:21px}.catalog-top h2{font-size:19px}.catalog-top p{color:var(--quiet);font-size:14px;margin-top:5px}.search-wrap{display:flex;align-items:center;gap:8px;width:220px;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:7px 9px}.search-wrap>.icon{width:14px;height:14px;color:var(--quiet)}.search-wrap input{padding:0;width:100%;border:0;background:none;border-radius:0;font-size:14px;min-width:0;outline-offset:5px}.search-wrap kbd{font-size:14px}.filter-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tab{padding:7px 11px;border-radius:6px;color:var(--muted);font-size:14px;white-space:nowrap}.tab:hover{background:var(--panel)}.tab.active{background:var(--raised);color:var(--text)}#status-filter{font-size:14px;background:none;border:0;color:var(--muted);max-width:150px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.challenge-card{padding:20px 20px 15px;background:var(--panel);border:1px solid var(--line);border-radius:10px;text-align:left;min-height:183px;display:flex;flex-direction:column;position:relative}.challenge-card:hover{background:var(--raised);border-color:#606860;transform:translateY(-3px);box-shadow:0 8px 25px #0001}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.card-icon{display:inline-grid;place-items:center;width:32px;height:32px;background:var(--raised);border:1px solid var(--line);border-radius:8px}.card-icon svg{width:17px;height:17px}.category-0{color:#a9bfd6;background:#2b323b;border-color:#3c4651}.category-1{color:#c8b5da;background:#332e3c;border-color:#494052}.category-2{color:#adcdb8;background:#2c3830;border-color:#415247}.difficulty{font-size:14px;color:var(--muted);background:var(--raised);border:1px solid var(--line);border-radius:5px;padding:2px 6px;display:inline-flex;align-items:center;gap:3px}.difficulty.finished{color:var(--mint);background:var(--mint-bg);border-color:var(--mint-line)}.difficulty .icon{width:10px;height:10px}.challenge-card h3{font-size:16px;font-weight:530;line-height:1.4;letter-spacing:-.15px}.challenge-card>p{font-size:14px;color:var(--muted);line-height:1.65;margin:7px 0 18px;max-width:250px}.card-footer{display:flex;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--line-soft);margin-top:auto;color:var(--quiet);font-size:14px}.card-footer>span{display:flex;gap:5px;align-items:center}.card-footer .icon{width:12px;height:12px}.card-xp{color:var(--muted)}.card-footer .card-arrow{margin-left:auto;color:var(--muted);width:15px;height:15px}.catalog-count{color:var(--quiet);font-size:14px;margin:20px 0}.library-footer{border-top:1px solid var(--line-soft);margin-top:22px;padding:20px 0;display:flex;justify-content:space-between;align-items:center;gap:15px;color:var(--quiet);font-size:14px}.library-footer>span{display:flex;gap:7px;align-items:center}.library-footer .icon{width:14px;height:14px}.library-footer .text-btn{font-size:14px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border-radius:7px;padding:9px 15px;font-size:16px;font-weight:530}.primary{background:var(--mint);color:var(--accent-text);border:1px solid transparent}.primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.secondary{background:var(--raised);border:1px solid var(--line);color:var(--text)}.secondary:hover{background:var(--hover)}.primary .icon,.secondary .icon{width:16px;height:16px}.full{width:100%}.empty-state{padding:70px 25px;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}.empty-state>.icon{width:30px;height:30px;color:var(--mint);margin-bottom:15px}.empty-state h3{font-size:20px;color:var(--text)}.empty-state p{font-size:16px;margin:10px 0 20px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0 20px}.stat{padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.stat>span{color:var(--muted);font-size:16px}.stat strong{font-size:36px;font-weight:450;display:block;margin-top:10px;letter-spacing:-1px}.stat small{font-size:17px;color:var(--quiet)}.path-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:38px}.path-progress-card{text-align:left;border:1px solid var(--line);padding:22px;border-radius:10px}.path-progress-card:hover{background:var(--panel)}.path-progress-card h3{margin:14px 0 4px}.path-progress-card p{font-size:16px;color:var(--muted);margin-bottom:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.achievement{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);width:100%;padding:24px 0;text-align:left}.achievement-check{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--mint-bg);color:var(--mint);flex-shrink:0}.achievement h3{margin-bottom:5px}.achievement p{color:var(--muted);font-size:16px;max-width:650px}.achievement>span:last-child{color:var(--mint);margin-left:auto;white-space:nowrap;font-size:16px}.skills-info{margin:30px 0;padding:16px 20px;border:1px solid var(--line);border-radius:9px;display:flex;gap:13px;color:var(--muted);font-size:16px}.skills-info .icon{color:var(--mint)}.skill-card{min-height:230px;padding:24px;border:1px solid var(--line);background:var(--panel);border-radius:10px}.skill-card h3{margin:20px 0 10px}.skill-card p{font-size:16px;color:var(--muted);margin-bottom:20px;overflow-wrap:anywhere}.add-skill{text-align:center;border-style:dashed;background:none;color:var(--muted)}.add-skill:hover{background:var(--panel)}.add-skill>.icon{color:var(--mint);width:28px;height:28px}
/* The task workspace */
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 328px;height:calc(100dvh - 63px)}.chat-panel{display:flex;flex-direction:column;min-width:0;min-height:0}.thread-toolbar{height:51px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:16px;padding:0 22px;flex-shrink:0}.project-pill{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:14px}.project-pill .icon{width:14px;height:14px}.thread-menu{margin-left:auto}.conversation{flex:1;overflow-y:auto;padding:26px max(28px,calc((100% - 720px)/2));scroll-behavior:smooth}.chat-welcome{display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;min-height:100%;padding:25px 0}.welcome-icon{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--line);border-radius:13px;margin-bottom:24px;color:var(--mint)}.welcome-icon .icon{width:25px;height:25px}.chat-welcome h2{font-size:27px;letter-spacing:-.8px;margin:12px 0}.chat-welcome>p{font-size:16px;color:var(--muted);line-height:1.9}.workspace-notice{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--quiet);border:1px solid var(--line-soft);border-radius:7px;padding:10px 12px;margin-top:29px;max-width:360px;text-align:left}.workspace-notice .icon{width:14px;height:14px}.composer-area{padding:12px 22px 18px;flex-shrink:0}.composer{border:1px solid #454545;border-radius:14px;background:var(--panel);padding:12px 14px 9px;max-width:770px;margin:0 auto;box-shadow:0 5px 20px #0001}.composer:focus-within{border-color:#737b73}.composer textarea{width:100%;padding:5px 2px;border:0;background:none;resize:none;min-height:73px;max-height:180px;outline:none;line-height:1.65;font-size:16px}.composer textarea::placeholder{color:var(--quiet)}.composer-controls{display:flex;align-items:center;gap:7px}.composer-controls select{border:0;background:var(--raised);font-size:14px;padding:5px 22px 5px 9px}.composer-model{font-size:14px;color:var(--muted);display:flex;align-items:center;gap:6px;margin-left:6px}.composer-model .icon{width:13px;height:13px}.send-button{height:29px;width:29px;border-radius:50%;background:var(--text);color:var(--bg);display:grid;place-items:center;margin-left:auto}.send-button:hover{background:var(--mint)}.send-button .icon{width:18px;height:18px}.composer-foot{max-width:765px;margin:9px auto 0;display:flex;justify-content:space-between;color:var(--quiet);font-size:14px;gap:10px}.composer-foot>span:first-child{display:flex;gap:5px;align-items:center}.composer-foot .icon{width:11px;height:11px}.attached-files{display:flex;flex-wrap:wrap;gap:5px}.attached-files>span{display:flex;align-items:center;gap:5px;background:var(--raised);border:1px solid var(--line);font-size:14px;padding:4px 7px;border-radius:6px;max-width:100%;overflow-wrap:anywhere}.attached-files .icon{width:12px;height:12px}.attached-files button{padding:0;display:flex;color:var(--muted)}.brief-panel{border-left:1px solid var(--line);background:var(--side);display:flex;flex-direction:column;min-height:0}.brief-header{height:51px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;padding:0 22px;font-size:14px;letter-spacing:1px;color:var(--quiet);flex-shrink:0}.brief-header>span{display:flex;align-items:center;gap:7px}.brief-header .icon{width:12px;height:12px}.brief-header>span:last-child{letter-spacing:0}.brief-body{padding:24px 22px;overflow:auto;flex:1;min-height:0}.brief-meta{display:flex;align-items:center;gap:13px;font-size:14px;color:var(--muted);margin-bottom:20px}.brief-meta>span{display:flex;gap:4px;align-items:center}.brief-meta .icon{width:12px;height:12px}.mint{color:var(--mint)}.brief-body h2{font-size:22px;line-height:1.3;letter-spacing:-.6px;margin-bottom:12px}.brief-description,.brief-body>p{font-size:16px;line-height:1.85;color:var(--muted)}.brief-section{margin-top:27px}.brief-section>h3{font-size:14px;letter-spacing:1px;color:var(--quiet);font-weight:500;margin-bottom:12px}.material{border:1px solid var(--line);border-radius:7px;padding:9px;margin-bottom:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;background:var(--panel)}.material>button:first-child{display:flex;align-items:center;gap:7px;text-align:left;font-size:14px;padding:0;min-width:0}.material>button:first-child>.icon{color:var(--muted);width:15px;height:15px}.material small{display:block;font-size:14px;color:var(--quiet);margin-top:1px}.attach-material{display:flex;align-items:center;gap:3px;color:var(--mint);font-size:14px;margin-left:auto;padding:3px 5px;background:var(--mint-bg);border-radius:4px}.attach-material .icon{width:11px;height:11px}.criteria{list-style:none;margin:0;padding:0;display:grid;gap:13px}.criteria li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--muted);line-height:1.6}.check-circle{width:13px;height:13px;border:1px solid #565b55;border-radius:50%;display:inline-block;flex-shrink:0;margin-top:2px}.hint-button{margin-top:28px;display:flex;align-items:center;gap:7px;font-size:14px;color:var(--muted);padding:10px 0;border-top:1px solid var(--line-soft);width:100%}.hint-button>.icon{width:13px;height:13px}.hint-button>span{margin-left:auto;font-size:14px;color:var(--quiet)}.hint-button:hover{color:var(--mint)}.hint-content{border:1px solid var(--mint-line);border-radius:7px;background:var(--mint-bg);padding:12px;font-size:14px;color:var(--mint)}.hint-content p{margin-top:6px;line-height:1.7;color:var(--text)}.brief-note{display:flex;align-items:flex-start;gap:7px;font-size:14px;color:var(--quiet);line-height:1.7;margin-top:16px}.brief-note .icon{width:12px;height:12px;margin-top:2px}.brief-bottom{padding:18px 22px;border-top:1px solid var(--line);text-align:center}.brief-bottom>span{display:block;font-size:14px;color:var(--quiet);margin-top:9px}.message{max-width:760px;margin:0 auto 29px;font-size:16px;overflow-wrap:anywhere}.message.user{margin-left:auto;margin-right:0;background:var(--raised);border:1px solid var(--line);border-radius:14px;padding:13px 17px;max-width:88%;width:fit-content}.assistant-label{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:550;margin-bottom:14px}.assistant-label>.icon{width:20px;height:20px}.assistant-label>span{margin-left:3px;font-size:14px;font-weight:400;color:var(--quiet)}.message-body{line-height:1.8}.message-body p{margin:3px 0}.message-body h3{font-size:16px;font-weight:600;margin:14px 0 8px}.para-space{height:8px}.md-bullet{display:flex;gap:9px;margin:5px 0}.md-bullet>span{color:var(--muted)}code{font:14px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--raised);padding:2px 5px;border-radius:4px}pre{background:var(--side);border:1px solid var(--line);border-radius:8px;padding:16px;overflow:auto;white-space:pre-wrap;word-break:break-word}pre code{background:none;padding:0}.table-scroll{overflow:auto;margin:12px 0}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th,td{border:1px solid var(--line);padding:8px 10px}th{background:var(--raised);font-weight:550}.message-actions{display:flex;gap:10px;margin-top:13px}.message-actions>button{display:flex;align-items:center;gap:5px;font-size:14px;color:var(--quiet);padding:3px}.message-actions>button:hover{color:var(--text)}.message-actions .icon{width:12px;height:12px}.message-files{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.message-files>span{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:5px;padding:3px 6px;font-size:14px;color:var(--muted)}.message-files .icon{width:12px;height:12px}.thinking{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:14px;margin:24px 0}.thinking i{width:4px;height:4px;border-radius:50%;background:var(--mint);animation:pulse 1s infinite}.thinking i:nth-child(2){animation-delay:.15s}.thinking i:nth-child(3){animation-delay:.3s}.thinking span{margin-left:7px}.request-error{padding:12px;background:#4f262644;border:1px solid #82474788;border-radius:8px;margin:0 0 8px;font-size:14px;color:#e8aaa6}.request-error button{color:inherit;text-decoration:underline;margin-left:7px}
/* Dialogs and feedback */
dialog{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:16px;width:min(560px,calc(100% - 32px));max-height:88dvh;padding:0;box-shadow:var(--shadow)}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:24px 26px 18px}.modal-header h2{font-size:23px;letter-spacing:-.6px}.modal-body{padding:0 26px 24px}.modal-body>p{color:var(--muted);font-size:16px;line-height:1.8;margin:8px 0 20px}.modal-body>h3{font-size:14px;color:var(--muted);margin:24px 0 13px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding:18px 26px;background:var(--panel)}.preview-meta{display:flex;align-items:center;gap:12px;margin:7px 0 20px;font-size:16px;color:var(--muted)}.preview-meta small{display:block;color:var(--quiet);font-size:14px;margin-top:3px}.preview-meta .card-icon{width:40px;height:40px}.preview-brief{font-size:16px!important;color:var(--text)!important}.modal-body .criteria li{font-size:16px}.field-label{display:block;font-size:16px;color:var(--muted);margin:17px 0}.field-label input,.field-label select,.field-label textarea{display:block;width:100%;margin-top:7px;font-size:16px}.field-label textarea{line-height:1.7}.setting-block{border-top:1px solid var(--line);padding-top:19px;margin-top:23px}.setting-block h3{margin-bottom:8px}.setting-block p{font-size:16px;color:var(--muted);line-height:1.8}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;padding:17px 0}.toggle-row small{display:block;font-size:14px;color:var(--quiet);margin-top:4px;max-width:370px}.toggle-row input{width:16px;height:16px;accent-color:var(--mint);flex-shrink:0}.fine-print{font-size:14px!important;color:var(--quiet)!important;line-height:1.7!important;margin:16px 0 0!important}.file-preview{font:16px/1.8 monospace;max-height:400px;margin-top:10px}.help-intro{display:flex;align-items:center;gap:15px;color:var(--muted);font-size:16px;margin:10px 0 25px}.help-intro>.icon{width:35px;height:35px;color:var(--mint)}.help-step{display:flex;gap:17px;margin:23px 0}.help-step b{font:16px monospace;color:var(--mint);padding-top:3px}.help-step h3{margin-bottom:5px}.help-step p{font-size:16px;color:var(--muted);line-height:1.75}.lesson{margin-top:23px;padding:16px 18px;background:var(--mint-bg);border:1px solid var(--mint-line);border-radius:9px}.lesson>span{font-size:14px;letter-spacing:1.1px;color:var(--mint)}.lesson p{font-size:16px;color:var(--text);line-height:1.8;margin-top:5px}.result-hero{display:flex;align-items:center;gap:17px;padding:22px 0 25px}.result-hero>span{width:60px;height:60px;border-radius:16px;background:var(--raised);display:grid;place-items:center}.result-hero>span>.icon{width:30px;height:30px}.result-hero.passed>span{background:var(--mint-bg);color:var(--mint)}.result-hero strong{font-size:32px;font-weight:500;letter-spacing:-1px}.result-hero p{font-size:16px;color:var(--muted);margin-top:3px}.result-checks{border-top:1px solid var(--line);padding-top:15px}.result-check{display:flex;align-items:flex-start;gap:10px;padding:9px 0;color:#d0a79b}.result-check>.icon{width:16px;height:16px;margin-top:1px}.result-check.pass{color:var(--mint)}.result-check strong{font-size:16px;font-weight:450;color:var(--text)}.result-check p{color:var(--muted);font-size:14px;margin-top:4px}.result-check.pass strong{color:var(--muted)}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:100;background:var(--text);color:var(--bg);padding:11px 19px;border-radius:9px;box-shadow:var(--shadow);font-size:16px;max-width:calc(100vw - 35px);transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-only{display:none}@keyframes pulse{0%,100%{opacity:.3}50%{opacity:1}}
@media(min-width:1500px){.library{padding-top:60px}.heading-row{margin-bottom:40px}.challenge-card{min-height:198px}.intro-grid{grid-template-columns:minmax(0,1fr) 260px}.featured{min-height:195px}.hero-mark{margin-right:60px}}
@media(max-width:1250px){.sidebar{width:220px}main{margin-left:220px;width:calc(100% - 220px)}.library{padding:38px 32px 20px}.intro-grid{grid-template-columns:minmax(0,1fr) 190px}.mini-terminal{display:none}.hero-mark{margin-right:0}.workspace{grid-template-columns:minmax(0,1fr) 290px}.thread-toolbar{padding:0 15px;gap:10px}.thread-toolbar .text-btn{font-size:14px}.conversation{padding:25px}.composer-area{padding:12px 15px 15px}.brief-body{padding:22px 18px}.brief-bottom{padding:17px 18px}.brief-header{padding:0 18px}.composer-foot{font-size:14px}.brand-sub{font-size:14px;margin-left:6px}}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-mark{display:none}.heading-row{min-height:auto;margin-bottom:28px}h1{font-size:39px}.library{padding:35px 25px 20px}.intro-grid{grid-template-columns:minmax(0,1fr) 170px;gap:12px}.featured{padding:22px}.featured h2{font-size:20px}.featured-cta{gap:7px}.featured-cta small{width:100%;margin:0}.progress-card{padding:20px 17px}.progress-card .text-btn{font-size:14px}.filter-row{align-items:flex-start}.tabs{gap:2px}.tab{font-size:14px;padding:7px 8px}.catalog-top{gap:12px}.search-wrap{width:175px}.workspace{grid-template-columns:minmax(0,1fr) 260px}.project-pill{font-size:14px}.thread-toolbar .text-btn{max-width:72px;text-align:left;line-height:1.3}.brief-body h2{font-size:20px}.brief-description{font-size:14px}.brief-meta{gap:8px}.composer-model{font-size:14px}.composer-foot>span:last-child{display:none}.path-progress{gap:10px}.path-progress-card{padding:16px}.stat{padding:20px}.brand{padding-left:7px;gap:7px}}
@media(max-width:800px){.sidebar{width:195px;padding-left:10px;padding-right:10px}.brand-sub{display:none}main{margin-left:195px;width:calc(100% - 195px)}.library{padding:30px 22px 20px}.topbar{padding:0 20px}.breadcrumb{font-size:14px;gap:7px}.intro-grid{grid-template-columns:1fr}.progress-card{display:none}.featured-cta small{width:auto;margin-left:5px}.catalog-top{display:block}.search-wrap{margin-top:18px;width:100%}.filter-row{display:block}#status-filter{margin-top:10px;padding-left:0}.library-footer{display:block}.library-footer .text-btn{margin-top:10px}.workspace{height:auto;display:flex;flex-direction:column}.brief-panel{order:-1;border-left:0;border-bottom:1px solid var(--line)}.brief-header{display:none}.brief-body{padding:20px;overflow:visible}.brief-meta{margin-bottom:10px}.brief-section{margin-top:16px}.brief-section:has(.criteria){display:none}.brief-body h2{margin-bottom:8px}.brief-note{display:none}.hint-button{margin-top:15px}.brief-bottom{display:flex;gap:12px;align-items:center;padding:12px 20px}.brief-bottom>.primary{width:auto}.brief-bottom>span{margin:0;white-space:nowrap}.chat-panel{min-height:650px}.conversation{min-height:300px;max-height:700px;overflow:auto}.chat-welcome{min-height:300px}.composer-area{position:sticky;bottom:0;background:var(--bg)}.stat-grid{gap:9px}.stat{padding:15px}.stat>span{font-size:14px}.stat strong{font-size:28px}.path-progress{grid-template-columns:1fr}.path-progress-card{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:7px 14px}.path-progress-card h3,.path-progress-card p{margin:0}.path-progress-card .progress-track{grid-column:2 / 4}.skillsPage .cards{grid-template-columns:1fr}}
@media(max-width:620px){.sidebar{visibility:hidden;transform:translateX(-100%);width:244px;transition:transform .2s;box-shadow:10px 0 60px #0006}.sidebar.open{visibility:visible;transform:translateX(0)}.sidebar .brand .mobile-only{margin-left:auto}.brand-sub{display:inline}main{margin-left:0;width:100%}.mobile-only{display:inline-grid}.topbar{height:57px;padding:0 15px;gap:8px}.top-actions{gap:5px}.breadcrumb>span{display:none}.breadcrumb>.icon{display:none}.breadcrumb strong{max-width:170px}.mode-indicator{font-size:14px;padding:4px 6px}.top-actions>.icon-btn{width:25px}.library{padding:31px 20px 15px}.eyebrow{font-size:14px}h1{font-size:37px}.lede{font-size:16px;max-width:300px;margin-top:13px}.heading-row{margin-top:14px}.featured{min-height:167px}.featured h2{font-size:21px}.featured p{font-size:14px}.intro-grid{margin-bottom:32px}.featured-cta{font-size:14px}.featured-cta small{font-size:14px}.catalog-top h2{font-size:19px}.cards{gap:11px}.challenge-card{padding:16px 14px 13px;min-height:207px}.challenge-card h3{font-size:16px;line-height:1.45}.challenge-card>p{font-size:14px;line-height:1.7}.card-top{margin-bottom:16px;gap:5px}.card-icon{width:29px;height:29px}.card-icon .icon{width:15px;height:15px}.difficulty{font-size:14px;padding:2px 4px}.card-footer{font-size:14px;gap:8px}.card-footer .card-arrow{width:12px;height:12px}.tabs{gap:2px}.tab{font-size:14px;padding:6px 7px}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:15px 11px}.stat strong{font-size:25px}.stat small{font-size:16px}.section-heading{align-items:flex-start}.section-heading>.primary,.section-heading>.secondary{font-size:14px;padding:8px 10px;white-space:nowrap}.section-heading h1{font-size:32px}.achievement{gap:12px}.achievement h3{font-size:16px}.achievement p{font-size:14px}.achievement>span:last-child{font-size:14px}.workspace{height:auto}.thread-toolbar{padding:0 20px}.thread-toolbar .text-btn{max-width:none;font-size:14px}.chat-panel{min-height:540px}.chat-welcome h2{font-size:25px}.chat-welcome{min-height:250px}.workspace-notice{font-size:14px;margin-top:20px}.conversation{padding:24px 20px;min-height:280px}.composer-area{padding:10px 13px 15px}.brief-meta{font-size:14px}.brief-body h2{font-size:23px}.brief-description{font-size:16px}.hint-button{font-size:14px}.brief-bottom{justify-content:space-between}.brief-bottom .primary{font-size:16px;padding:8px 18px}.brief-bottom>span{font-size:14px}.message{font-size:16px}.message.user{max-width:95%}.modal-header{padding:20px 20px 15px}.modal-header h2{font-size:22px}.modal-body{padding:0 20px 20px}.modal-footer{padding:16px 20px}.skill-card{padding:18px}.skill-card h3{font-size:16px}.skill-card p{font-size:14px}.skills-info{font-size:14px}.stat-grid{margin-top:25px}.library-footer{font-size:14px}.result-hero strong{font-size:30px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Beginner course layout */
:root[data-theme=light]{--bg:#fff;--side:#f9f9f9;--panel:#fff;--raised:#f4f4f4;--hover:#ededed;--line:#e5e5e5;--line-soft:#efefef;--text:#242424;--muted:#737373;--quiet:#767676;--mint:#6650c7;--mint-bg:#f0ebff;--mint-line:#c7baee;--accent-text:#fff}
.brand{gap:10px;font-size:16px;letter-spacing:-.4px}.brand-symbol{background:none;color:var(--text)}.sidebar nav{margin-top:20px}.sidebar .nav-item{font-size:16px;padding:11px 12px}.sidebar-label{font-size:14px}.sidebar-progress{font-size:14px;color:var(--muted);margin-bottom:9px}.sidebar-bottom .profile{margin-top:20px}.independent{font-size:14px;line-height:1.6;color:var(--muted);padding:12px 8px 0}.topbar{border-bottom:0}.breadcrumb strong{font-weight:450}.learning-home{max-width:750px;margin:0 auto;padding:60px 42px;text-align:center}.home-symbol{display:grid;place-items:center;margin:auto auto 20px;width:45px;height:45px;border:1px solid var(--line);border-radius:14px}.home-symbol svg{width:25px;height:25px}.learning-home h1{font-size:38px;letter-spacing:-1.4px;font-weight:550;margin:12px 0 16px}.home-intro{color:var(--muted);font-size:16px;line-height:1.65}.next-lesson{display:block;text-align:left;width:100%;margin-top:36px;padding:27px 30px 0;background:var(--panel);border:1px solid var(--line);border-radius:20px;box-shadow:0 5px 22px #00000005}.next-lesson:hover{border-color:var(--quiet);background:var(--raised)}.next-meta{font-size:14px;letter-spacing:1.1px;color:var(--muted)}.next-lesson h2{font-size:23px;font-weight:530;margin:14px 0 10px;letter-spacing:-.5px}.next-lesson p{font-size:16px;color:var(--muted);line-height:1.7}.next-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 0;margin-top:22px;border-top:1px solid var(--line-soft);font-size:16px;font-weight:550}.next-footer>.icon{background:var(--text);color:var(--bg);border-radius:50%;padding:8px;width:34px;height:34px}.home-step{font-size:14px;color:var(--muted);margin:16px 0 20px}.learning-home>.text-btn{font-size:16px}.home-how{display:flex;justify-content:center;gap:23px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line-soft);font-size:14px;color:var(--muted)}.home-how b{display:inline-grid;place-items:center;border:1px solid var(--line);width:21px;height:21px;border-radius:50%;font-size:14px;font-weight:500;margin-right:7px}.home-note{font-size:14px;color:var(--muted);margin:25px 0 0}.course-page{max-width:950px;margin:0 auto;padding:45px 48px 70px}.course-page h1{font-size:39px;margin-top:15px}.course-search{margin:30px 0 24px;width:100%}.course-module{border-bottom:1px solid var(--line)}.course-module summary{display:flex;align-items:center;gap:20px;padding:24px 4px;cursor:pointer;list-style:none}.course-module summary::-webkit-details-marker{display:none}.module-number{font-size:16px;color:var(--muted);font-variant-numeric:tabular-nums}.course-module summary>span:nth-child(2){flex:1}.course-module summary strong{display:block;font-size:16px;font-weight:550}.course-module summary small{display:block;font-size:16px;color:var(--muted);margin-top:5px}.module-count{font-size:14px;color:var(--muted)}.course-module[open] summary>.icon{transform:rotate(90deg)}.module-lessons{padding:0 0 14px 35px}.module-lessons button{display:flex;align-items:center;text-align:left;gap:14px;width:100%;padding:12px;border-radius:9px;font-size:16px}.module-lessons button:hover{background:var(--raised)}.module-lessons button>span:nth-child(2){flex:1}.module-lessons small{display:block;font-size:14px;color:var(--muted);margin-top:3px}.lesson-status{color:var(--muted)}.module-lessons button>.icon{width:16px}.auth-options{margin:25px 0}.auth-options a{text-decoration:none;text-align:center}.auth-options form{margin-top:20px}.auth-options form button{margin-top:14px}.onboarding-steps{display:grid;gap:20px;margin:26px 0}.onboarding-steps>div{display:flex;align-items:center;gap:15px}.onboarding-steps b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--raised);font-size:16px;font-weight:500}.onboarding-steps small{display:block;color:var(--muted);font-size:16px;margin-top:2px}.brief-panel{background:var(--side)}.brief-meta .mint{display:none}.brief-description{font-size:16px;line-height:1.7}.brief-header{font-size:14px}.brief-body h2{font-size:23px}.workspace-notice{max-width:380px}.chat-welcome h2{font-size:27px}.chat-welcome>.eyebrow{display:none}.thread-toolbar .project-pill{display:none}.thread-toolbar{justify-content:flex-end}.composer{border-radius:22px;box-shadow:none}.composer-model{font-size:14px}.mode-indicator{border:0;background:var(--raised)}.path-progress{grid-template-columns:repeat(3,1fr)}
@media(min-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 330px}.conversation{padding-left:max(30px,calc((100% - 690px)/2));padding-right:max(30px,calc((100% - 690px)/2))}.composer-area{padding-left:max(25px,calc((100% - 720px)/2));padding-right:max(25px,calc((100% - 720px)/2))}}
@media(max-width:800px){.learning-home{padding:40px 26px}.learning-home h1{font-size:31px}.course-page{padding:35px 25px}.home-how{gap:12px;flex-wrap:wrap}.path-progress{grid-template-columns:1fr}.course-module summary{gap:12px}.course-module summary small{font-size:14px}.course-page h1{font-size:33px}.module-lessons{padding-left:10px}.next-lesson{padding:24px 24px 0}.brief-panel .brief-section:has(.criteria){display:block}.brief-section h3{font-size:14px}}
@media(max-width:620px){.learning-home{padding:35px 22px}.learning-home h1{font-size:29px;letter-spacing:-.8px}.home-intro{font-size:16px}.next-lesson{margin-top:28px}.home-how{margin-top:32px;font-size:14px}.course-module summary strong{font-size:16px}.module-number{font-size:16px}.course-module summary small{display:none}.next-lesson h2{font-size:22px}.brand{font-size:16px}.brief-description{font-size:16px}.composer-foot>span:last-child{display:none}.home-note{line-height:1.7}}
/* Calm, familiar learning workspace in both colour themes. */
:root:not([data-theme=light]){--bg:#212121;--side:#171717;--panel:#242424;--raised:#303030;--hover:#363636;--line:#404040;--line-soft:#303030;--text:#ededed;--muted:#b1b1b1;--quiet:#a0a0a0;--mint:#b7a5ff;--mint-bg:#302940;--mint-line:#625184;--accent-text:#211737}
.sidebar{padding-top:22px}.sidebar .brand{padding-bottom:12px}.sidebar nav{margin-top:8px}.sidebar .nav-item{border-radius:10px;min-height:42px}.sidebar-bottom{padding-top:10px;padding-bottom:16px}.sidebar-bottom .profile{margin-top:10px}.sidebar .independent{padding:4px 0;font-size:14px}.topbar{padding-left:30px;padding-right:30px}.learning-home{padding-top:65px;max-width:800px}.learning-home h1{font-size:42px;font-weight:500;letter-spacing:-1.7px}.learning-home .home-symbol{border:0;width:50px;height:50px;background:var(--raised);border-radius:50%}.next-lesson{border-radius:22px;padding:28px 30px 0;box-shadow:none}.next-lesson h2{font-weight:500}.home-how{font-size:16px}.composer{background:var(--raised);border-color:transparent;border-radius:26px}.composer:focus-within{border-color:var(--line)}.composer textarea{background:transparent}.send-button{border-radius:50%}.thread-toolbar{height:45px}.brief-panel{border-left:1px solid var(--line-soft)}.message.user .message-body{border-radius:22px;background:var(--raised)}.chat-welcome h2{font-size:31px;font-weight:500}.course-module summary{border-radius:10px}.course-module summary:hover{background:var(--raised)}.course-page .lede{max-width:550px}.modal-content{line-height:1.7}dialog{border-radius:20px}button.primary{border-radius:24px}.settings-actions{gap:10px}
@media(max-width:800px){.learning-home{padding-top:35px}.learning-home h1{font-size:32px}.topbar{padding-left:18px;padding-right:18px}.home-how{font-size:14px}.sidebar-bottom{padding-bottom:12px}}
@media(max-width:800px){.brief-panel .brief-header{display:flex;padding:10px 20px;justify-content:space-between}.brief-header>span:last-child{display:none}.brief-panel .brief-body{padding:12px 20px}.brief-body .brief-meta{display:none}.brief-body h2{font-size:19px;margin:0 0 8px}.brief-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:16px}.brief-panel:not(.brief-expanded) .brief-section,.brief-panel:not(.brief-expanded) .brief-note,.brief-panel:not(.brief-expanded) .hint-button,.brief-panel:not(.brief-expanded) .hint-content{display:none!important}.brief-expanded .brief-description{display:block}.brief-panel .brief-bottom{padding:10px 20px}.brief-bottom button{font-size:16px}.chat-welcome{padding:20px}.chat-welcome h2{font-size:22px}.chat-welcome>svg,.chat-welcome>.welcome-symbol{display:none}.thread-toolbar{height:35px}.brief-header .text-btn{font-size:14px}}
/* Course studio: outcomes first, with a compact, accessible welcome. */
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23787878' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:42px!important}select#task-mode{background-position:right 8px center;padding-right:30px!important}.goal-choices{border:0;padding:0;margin:24px 0 0}.goal-choices legend{font-size:16px;margin-bottom:12px;font-weight:550}.goal-choices label{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:12px 15px;margin:8px 0;cursor:pointer}.goal-choices label:has(input:checked){border-color:var(--text);background:var(--raised)}.goal-choices input{accent-color:var(--text);margin:0}.goal-choices span{font-size:16px}.goal-choices small{display:block;font-size:14px;color:var(--muted);margin-top:3px}.onboarding-steps{gap:14px;margin:22px 0}.onboarding-steps b{background:var(--mint-bg)}.practice-home{max-width:1120px;margin:auto;padding:42px 45px 55px}.practice-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:30px}.practice-heading h1{font-size:38px;font-weight:550;line-height:1.15;margin:14px 0;letter-spacing:-1.3px}.practice-heading p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted)}.progress-medallion{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:105px;width:105px;height:105px;border:1px solid var(--line);border-radius:50%;box-shadow:inset 0 0 0 7px var(--side)}.progress-medallion strong{font-size:29px;font-weight:500}.progress-medallion span{font-size:14px;color:var(--muted)}.continue-card{display:grid;grid-template-columns:1fr 220px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--panel)}.continue-copy{padding:28px 30px}.continue-copy h2{font-size:25px;margin:14px 0 10px;font-weight:550}.continue-copy p{font-size:16px;color:var(--muted);line-height:1.8;max-width:540px}.continue-copy .primary{margin-top:20px;gap:16px}.continue-guide{padding:28px;display:flex;flex-direction:column;justify-content:center;background:var(--side);border-left:1px solid var(--line-soft)}.guide-icon{display:grid;place-items:center;border-radius:13px;width:44px;height:44px;background:var(--mint-bg);color:var(--mint);margin-bottom:18px}.continue-guide strong{font-size:16px;font-weight:550}.continue-guide p{font-size:14px;margin:8px 0;color:var(--muted)}.continue-guide small{font-size:14px;color:var(--muted)}.continue-guide .progress-track{margin:12px 0}.practice-section-title{display:flex;justify-content:space-between;align-items:flex-end;margin:32px 0 19px;gap:12px}.practice-section-title h2{font-size:20px;margin-top:9px}.practice-section-title .text-btn{font-size:16px}.practice-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.practice-pick{text-align:left;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel);display:flex;align-items:flex-start;flex-direction:column}.practice-pick:hover{background:var(--raised);border-color:var(--quiet)}.pick-symbol{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:var(--mint-bg);color:var(--mint);margin-bottom:18px}.pick-1 .pick-symbol{background:#eff0fa;color:#62648a}.pick-2 .pick-symbol{background:#fbf0e5;color:#926a3d}.practice-pick small{font-size:14px;color:var(--muted)}.practice-pick h3{font-size:16px;margin:10px 0}.practice-pick p{font-size:16px;line-height:1.75;color:var(--muted);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px}.pick-link{margin-top:auto;display:flex;width:100%;justify-content:space-between;align-items:center;font-size:14px}.pick-link .icon{width:15px}.workspace-promise{display:flex;gap:12px;margin-top:27px;color:var(--muted);padding:18px 0;border-top:1px solid var(--line-soft);font-size:14px;line-height:1.75}.workspace-promise strong{display:block;color:var(--text);font-weight:550}.workspace-promise>.icon{margin-top:3px}.brief-body .criteria{line-height:1.7}.brief-body .criteria li{font-size:16px}.brief-body .brief-note{line-height:1.7}.result-check p{font-size:16px;line-height:1.7}.course-module summary{padding:22px 12px}.course-module[open]{border:1px solid var(--line);border-radius:14px;margin-bottom:12px;background:var(--panel)}.course-module[open] summary{border-bottom:1px solid var(--line-soft);border-radius:14px 14px 0 0;background:var(--side)}.module-lessons{padding:12px 16px 16px}.course-module .module-number{background:var(--raised);border-radius:9px;min-width:34px;height:34px;display:grid;place-items:center;font-size:16px}
@media(max-width:1100px){.practice-home{padding:32px 28px}.practice-picks{grid-template-columns:1fr}.practice-pick{display:grid;grid-template-columns:40px 1fr;column-gap:14px}.pick-symbol{grid-row:1/5;margin:0}.practice-pick small,.practice-pick h3,.practice-pick p,.pick-link{grid-column:2}.practice-pick p{-webkit-line-clamp:2}.continue-card{grid-template-columns:1fr 170px}.continue-guide{padding:20px}}
@media(max-width:650px){.practice-home{padding:24px 20px}.practice-heading h1{font-size:30px}.practice-heading{gap:15px}.progress-medallion{width:72px;min-width:72px;height:72px;box-shadow:inset 0 0 0 4px var(--side)}.progress-medallion strong{font-size:21px}.progress-medallion span{font-size:14px}.practice-heading p:not(.eyebrow){font-size:16px}.continue-card{grid-template-columns:1fr}.continue-copy{padding:23px}.continue-copy h2{font-size:22px}.continue-guide{display:none}.practice-section-title{align-items:center}.practice-section-title h2{font-size:18px}.practice-section-title .text-btn{font-size:14px}.practice-pick{padding:17px}.goal-choices label{padding:11px}.onboarding-steps{gap:12px}.onboarding-steps small{font-size:14px}}
/* Milestones reflect completed challenges, not time spent or clicks. */
.milestone-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:28px 0}.milestone{border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:8px;color:var(--muted)}.milestone>span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--panel)}.milestone.earned{color:var(--text);border-color:var(--mint)}.milestone.earned>span{background:var(--mint-bg);color:var(--mint)}.milestone small{font-size:16px}.course-tour{position:fixed;z-index:50;right:24px;bottom:24px;width:min(360px,calc(100vw - 32px));background:var(--bg);color:var(--text);border:1px solid var(--line);box-shadow:0 16px 64px #0003;border-radius:20px;padding:24px}.course-tour h2{font-size:22px;margin:12px 0}.course-tour p{line-height:1.6;margin-bottom:20px}.course-tour>div:last-child{display:flex;justify-content:space-between;gap:16px}.tour-target{outline:2px solid var(--mint)!important;outline-offset:4px}.course-tour .primary{min-height:44px}@media(max-width:700px){.milestone-grid{grid-template-columns:repeat(2,1fr)}.course-tour{right:16px;bottom:16px;padding:20px}}
.route-panel{margin:0 0 24px;padding:24px;border:1px solid var(--mint-line);border-radius:18px;background:var(--panel)}.route-panel h2{margin:8px 0}.route-panel p{color:var(--muted);line-height:1.7}.route-panel ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:22px 0}.route-panel li button{width:100%;text-align:left;display:flex;flex-direction:column;gap:10px;font-size:16px;color:var(--muted);padding:10px;border-radius:10px}.route-panel li button:hover{background:var(--hover)}.route-panel li span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--raised)}.route-panel .route-next button{color:var(--text);background:var(--mint-bg)}.route-panel .route-done span{background:var(--mint-bg);color:var(--mint)}.route-panel>.text-btn{margin-top:12px}.work-shelf{margin:30px 0}.work-shelf .achievement{width:100%;text-align:left}.work-shelf p{color:var(--muted)}@media(max-width:600px){.route-panel{padding:18px}.route-panel ol{grid-template-columns:1fr;gap:4px}.route-panel li button{flex-direction:row;align-items:center;padding:5px}.route-panel li span{flex-shrink:0}.work-shelf .achievement{gap:12px}}

.course-progress-summary{min-width:180px;max-width:240px;display:grid;gap:10px;align-self:center}.course-progress-summary>span{font-size:16px;color:var(--muted)}.course-progress-summary strong{font-size:22px;font-weight:550}.course-progress-summary small{font-size:16px;font-weight:400;color:var(--muted)}@media(max-width:700px){.course-progress-summary{width:100%;max-width:none}}

/* Shared navigation and beginner workspace refinements. */
.skip-link{position:fixed;top:-100px;left:16px;background:var(--bg);color:var(--text);border:2px solid var(--text);padding:12px 18px;z-index:100}.skip-link:focus{top:12px}
.brand-symbol{color:inherit;text-decoration:none}.composer-hint{font-size:16px;color:var(--muted);padding:8px}.send-button:disabled{opacity:.4;cursor:default}.composer:focus-within{border-color:var(--muted)}.composer textarea:focus-visible{outline:none}.course-module{scroll-margin-top:20px}.course-tour{max-height:calc(100dvh - 32px);overflow:auto}.request-error{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.modal-footer{flex-wrap:wrap}.modal-footer button{min-height:44px}.fine-print a{color:inherit;text-decoration:underline;text-underline-offset:3px}.brand-symbol:focus-visible,a:focus-visible{outline:2px solid var(--text);outline-offset:4px}
@media(max-width:800px){.brief-header .mobile-only{display:inline-flex}.brief-panel:not(.brief-expanded) .brief-description{display:block}.brief-panel .brief-bottom{gap:8px}.chat-panel{min-height:480px}.composer-foot>span:last-child{display:none}}
@media(max-width:650px){.practice-heading{flex-direction:column;align-items:stretch}.practice-heading h1{font-size:30px}.course-progress-summary{min-width:0;width:100%;max-width:none}.composer-area{padding:12px}.brief-meta{flex-wrap:wrap}.modal-footer .primary{flex:1}.course-tour>div:last-child{flex-wrap:wrap;gap:8px}.course-tour .primary{padding:10px 16px}.topbar .breadcrumb{min-width:0}.topbar .breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Shared, server-rendered email preference screens. */
.email-preferences{min-height:100dvh;padding:32px 24px 64px}.email-preferences header{max-width:1120px;margin:0 auto}.email-brand{font-size:21px;font-weight:620;letter-spacing:-.6px;color:var(--text);text-decoration:none}.email-card{width:100%;max-width:540px;margin:clamp(40px,10vh,100px) auto 0;padding:40px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.email-status{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--mint-bg);color:var(--mint);font-size:25px;margin-bottom:28px}.email-card .email-eyebrow{font-size:14px;letter-spacing:1.6px;font-weight:600;margin-bottom:12px}.email-card h1{font-size:34px;letter-spacing:-1px;margin-bottom:20px;line-height:1.2}.email-card p{color:var(--muted);font-size:16px;line-height:1.7}.email-card .email-note{font-size:16px;margin-top:16px}.email-actions{display:flex;flex-direction:column;align-items:stretch;gap:18px;margin-top:30px}.email-actions .primary{display:flex;justify-content:center;align-items:center;text-align:center;text-decoration:none;min-height:48px;width:100%;padding:13px 18px}.email-back{color:var(--muted);text-align:center;text-underline-offset:4px}.email-preferences a:focus-visible{outline:2px solid var(--mint);outline-offset:4px}@media(max-width:540px){.email-preferences{padding:24px 16px 40px}.email-card{padding:28px 24px;border-radius:20px}.email-card h1{font-size:29px}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.check-circle:has(svg){display:inline-flex;align-items:center;justify-content:center;color:var(--text)}
.check-circle svg{width:12px;height:12px}
/* Secondary text must remain readable on the composer and sidebar surfaces. */
:root{--quiet:#a0a0a0}
:root[data-theme=light]{--quiet:#666}
.message-actions>button{font-size:14px;min-height:32px;padding:6px 4px}
.hint-button{min-height:44px}
@media(pointer:coarse){.message-actions>button,.icon-btn{min-height:44px;min-width:44px}}
@media(max-width:800px){.brief-bottom{flex-wrap:wrap}.brief-bottom>span{flex-basis:100%;text-align:left}.brief-bottom>.primary{flex:1;min-width:0}}

.teaching-note{margin:16px 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:16px;line-height:1.6}
.teaching-note summary{cursor:pointer;font-weight:600;min-height:24px}
.teaching-note p{margin:10px 0 0;color:var(--muted)}

/* Readable text and controls without browser zoom. */
.primary,.secondary,.text-btn{min-height:44px}.brief-description,.brief-body .criteria li,.chat-message,.message-content,.teaching-note,.course-tour p{font-size:18px;line-height:1.7}.composer textarea{font-size:18px;line-height:1.6}.brief-meta,.composer-foot,.card-footer,.level-row{flex-wrap:wrap}.onboarding-steps small,.goal-choices small{line-height:1.6}.practice-picks{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.practice-pick p{-webkit-line-clamp:unset;display:block}.course-tour{width:min(420px,calc(100vw - 32px))}

.danger-text{color:var(--text);text-decoration:underline;text-underline-offset:4px}.danger-button{border:1px solid #c44;background:#9b2929;color:white;border-radius:12px;padding:13px 18px;min-height:48px;font-size:16px}#delete-account-form{margin-top:24px}#delete-account-form input{width:100%;margin-top:8px}#delete-error{margin-top:16px}

.brief-bottom{display:flex;flex-direction:column;gap:12px}.brief-bottom>span{margin-top:0}.practice-menu-actions{display:flex;flex-direction:column;gap:14px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.practice-menu-actions .text-btn{min-height:44px;justify-content:center}.history-link{min-height:44px;text-align:left;padding:10px 12px;font-size:15px;text-decoration:underline;text-underline-offset:4px;color:var(--muted)}.history-tabs{display:flex;gap:12px;margin-bottom:18px}.history-tabs [aria-pressed=true]{border-color:var(--mint);background:var(--mint-bg)}.practice-history article{padding:24px 0;border-bottom:1px solid var(--line)}.practice-history h3{font-size:19px}.practice-history p{font-size:15px;color:var(--muted);margin:8px 0 16px}.practice-history article>div{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap}.practice-history .text-btn{min-height:44px;font-size:16px}

.achievement-celebration{position:relative;isolation:isolate;padding:26px;border:2px solid var(--mint);border-radius:22px;background:linear-gradient(135deg,#9d75ff19,transparent 70%),var(--panel);box-shadow:0 0 0 5px #9970ed0c,0 0 30px #9c75f526,inset 0 0 28px #9c75f509;color:var(--text)}.achievement-top{display:flex;align-items:center;gap:22px}.achievement-trophy{position:relative;display:grid;place-items:center;flex:none;width:82px;height:82px;border:2px solid var(--mint);border-radius:50%;background:radial-gradient(circle,#a98aff26,transparent);color:var(--mint);box-shadow:0 0 24px #a98aff30}.achievement-trophy:after{content:'✦';position:absolute;right:-8px;top:-8px;font-size:25px;color:var(--mint)}.achievement-trophy>svg{width:42px;height:42px;filter:drop-shadow(0 0 7px #aa86ff40)}.achievement-seal{position:absolute;bottom:-3px;right:-3px;border:2px solid var(--mint);width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:var(--panel);font-size:16px;font-weight:700}.achievement-copy{min-width:0}.achievement-eyebrow{display:block;font-size:13px;font-weight:700;letter-spacing:1.2px;color:var(--mint);margin-bottom:8px}.achievement-copy strong{display:block;font-size:clamp(22px,2.5vw,29px);line-height:1.25;font-weight:700;letter-spacing:-.6px;color:var(--mint)}.achievement-copy p{font-size:16px;line-height:1.65;margin-top:10px;color:var(--text)}.achievement-progress{display:flex;align-items:center;gap:14px;margin-top:24px}.achievement-points{font-size:16px;font-weight:700;color:var(--mint);padding:6px 11px;border:1px solid var(--mint-line);background:var(--mint-bg);border-radius:10px;flex-shrink:0}.achievement-track{height:10px;flex:1;min-width:24px;border-radius:20px;background:var(--mint-bg);overflow:hidden}.achievement-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8054dc,var(--mint));box-shadow:0 0 10px #a98aff66}.achievement-spark{font-size:34px;color:var(--mint);line-height:1}.achievement-route{margin-top:9px;font-size:15px;color:var(--muted)}.achievement-badges{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;padding-top:19px;margin-top:20px;border-top:1px solid var(--mint-line)}.achievement-badges>span{display:flex;align-items:center;gap:7px;font-size:15px;color:var(--text)}.achievement-badges .icon{color:var(--mint);width:18px;height:18px}.result-achievement{margin:6px 0 28px}.result-check.pass strong{color:var(--text)}
@media(max-width:550px){.achievement-celebration{padding:20px 17px;border-radius:18px}.achievement-top{gap:16px;align-items:flex-start}.achievement-trophy{width:56px;height:56px}.achievement-trophy>svg{width:30px;height:30px}.achievement-seal{width:23px;height:23px;font-size:13px}.achievement-copy strong{font-size:22px}.achievement-eyebrow{font-size:12px;letter-spacing:.8px}.achievement-copy p{font-size:16px}.achievement-progress{gap:10px;flex-wrap:wrap}.achievement-points{font-size:15px}.achievement-badges{gap:12px}.achievement-badges>span{font-size:14px}.achievement-spark{font-size:27px}}

.beginner-home{max-width:820px;padding:48px 32px;margin:0 auto}.beginner-home h1{font-size:clamp(30px,4vw,44px);margin-top:16px;line-height:1.2}.beginner-home .lede{font-size:19px}.next-lesson{padding:28px;margin:32px 0 24px;background:var(--panel);border:1px solid var(--mint-line);border-radius:20px}.next-lesson h2{font-size:28px;margin:12px 0}.next-lesson p{font-size:19px;line-height:1.65;margin-bottom:24px}.next-lesson .primary{min-height:52px}.home-progress{margin:24px 0;color:var(--muted);font-size:16px}.home-progress .progress-track{margin-top:12px}
.signin-page{width:100%;max-width:600px;margin:0 auto;padding:32px 24px 48px}.signin-brand{display:flex;align-items:center;gap:10px;font-size:24px;font-weight:650;text-decoration:none;color:var(--text);margin-bottom:40px}.signin-brand .icon{width:30px;height:30px;color:var(--mint)}.signin-card{padding:32px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.signin-card h1{font-size:36px;line-height:1.2;margin:16px 0}.signin-card>p{font-size:18px;color:var(--muted)}.signin-card input{width:100%;font-size:18px;margin-bottom:16px;min-height:54px}.signin-card .primary,.signin-card .secondary{min-height:54px;font-size:18px;text-decoration:none}.signin-card .field-label{color:var(--text);margin-bottom:8px;font-size:18px}.signin-detail{font-size:16px!important;color:var(--muted)!important;line-height:1.6;margin:16px 0 0}.auth-divider{text-align:center;color:var(--muted);margin:20px 0}.signin-back{display:inline-block;color:var(--muted);padding:20px 0;font-size:16px}.signin-card .fine-print{font-size:15px!important;color:var(--muted)!important}.signin-card a:not(.secondary){color:var(--mint)}
.simple-workspace{display:flex;flex-direction:column;height:calc(100dvh - 64px);min-height:0;max-width:100%;overflow:hidden}.simple-workspace .practice-flow{flex:1;min-height:0;overflow-y:auto;scroll-padding:24px;padding:28px max(24px,calc((100% - 820px)/2));overscroll-behavior-y:contain}.simple-workspace .task-card{display:block;position:static;width:auto;height:auto;max-height:none;overflow:visible;border:1px solid var(--mint-line);border-radius:18px;background:var(--panel);padding:24px;margin:0 0 24px}.task-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.task-heading .icon-btn{height:44px;width:44px}.task-card h1{font-size:28px;line-height:1.25;letter-spacing:-.5px;margin:8px 0 14px}.task-instruction{font-size:20px;line-height:1.6}.task-help{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}.task-help summary{min-height:44px;cursor:pointer;color:var(--mint);font-size:17px;line-height:1.6;padding:8px 0}.task-help p{font-size:18px;line-height:1.65;margin:12px 0;color:var(--muted)}.task-help blockquote{margin:16px 0;padding:16px;border-left:3px solid var(--mint);background:var(--mint-bg);border-radius:4px;font-size:18px}.task-help .help-reassurance{font-size:16px}.included-materials{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px;font-size:16px;color:var(--muted)}.included-materials .text-btn{min-height:44px;font-size:16px;text-decoration:underline}.simple-workspace .conversation{display:block;flex:none;overflow:visible;min-height:0;padding:0}.simple-workspace .message{margin:24px 0;padding:0}.simple-workspace .message-body{font-size:19px;line-height:1.75;overflow-wrap:anywhere}.simple-workspace .message.user{max-width:90%;margin-left:auto;padding:16px 20px;background:var(--raised);border-radius:20px}.simple-workspace .message-actions{gap:20px}.simple-workspace .message-actions button{min-height:44px;font-size:16px}.first-message-help{font-size:18px;color:var(--muted);padding:4px 0 12px}.practice-next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin:28px 0 8px;padding:24px;background:var(--mint-bg);border:1px solid var(--mint-line);border-radius:18px}.practice-next strong{font-size:20px}.practice-next p{font-size:17px;color:var(--muted);margin-top:8px}.practice-next .primary{min-height:52px;font-size:18px}.simple-workspace .composer-area{flex-shrink:0;padding:12px max(24px,calc((100% - 820px)/2)) 12px;background:var(--bg);border-top:1px solid var(--line-soft)}.simple-workspace .composer{padding:12px 16px;border:1px solid var(--line);border-radius:22px;background:var(--raised);box-shadow:none}.simple-workspace .composer:focus-within{border-color:var(--mint);box-shadow:0 0 0 1px var(--mint-line)}.simple-workspace #prompt{min-height:64px;height:auto;max-height:160px;padding:6px 0;font-size:19px;line-height:1.6;resize:vertical;border:0;outline:0;box-shadow:none;background:transparent;border-radius:0}.simple-workspace .composer-controls{gap:12px}.simple-workspace .send-button{width:auto;height:46px;padding:10px 18px;font-size:17px;border-radius:24px;background:var(--mint);color:var(--accent-text);margin-left:auto;display:flex;gap:8px}.simple-workspace .send-button .icon{width:18px;height:18px}.simple-workspace .composer-controls>.icon-btn{width:44px;height:44px}.simple-workspace .composer-foot{display:block;margin:8px 0 0;font-size:14px;text-align:center;color:var(--muted)}.simple-workspace .attached-files{flex-wrap:wrap;max-height:70px;overflow:auto}.simple-workspace .attached-files>span{max-width:100%;overflow-wrap:anywhere;font-size:14px}.simple-workspace .attached-files button{min-height:32px;min-width:32px}.simple-workspace .request-error{font-size:16px}
@media(max-width:800px){.beginner-home{padding:28px 20px}.next-lesson{padding:24px 20px}.next-lesson h2{font-size:26px}.signin-page{padding:24px 20px}.signin-brand{margin-bottom:24px}.signin-card{padding:24px 20px}.signin-card h1{font-size:32px}.simple-workspace{height:calc(100dvh - 64px);min-height:0}.simple-workspace .practice-flow{padding:20px 16px}.simple-workspace .task-card{order:initial;max-height:none;padding:18px}.simple-workspace .task-card h1{font-size:25px}.simple-workspace .task-instruction{font-size:18px}.simple-workspace .task-heading .eyebrow{font-size:14px;letter-spacing:.5px}.simple-workspace .composer-area{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.simple-workspace .composer-foot{display:none}.simple-workspace .message-body{font-size:18px}.simple-workspace .practice-next{padding:20px}.practice-next .primary{width:100%}.simple-workspace .assistant-label{font-size:16px}.simple-workspace .composer{padding:10px 12px}.simple-workspace #prompt{min-height:56px;max-height:100px;font-size:18px}.topbar{height:64px;min-height:64px}.topbar .breadcrumb>span,.topbar .breadcrumb>.icon{display:none}.topbar .icon-btn{width:44px;height:44px}.task-help blockquote{font-size:17px}.simple-workspace .first-message-help{font-size:17px}.simple-workspace .composer-hint{font-size:14px}}

.result-details{margin-top:20px}.result-details summary{font-size:18px;cursor:pointer;min-height:48px;padding:10px 0;color:var(--mint)}.result-details .result-checks{border:0}.lesson .text-btn{font-size:16px;min-height:44px;margin-top:12px}.task-help summary::marker,.result-details summary::marker{font-size:.8em}
#modal[open]{display:flex;flex-direction:column;max-height:90dvh;overflow:hidden}.modal-header,.modal-footer{flex-shrink:0}.modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.modal-footer{gap:12px}@media(max-width:650px){.modal-footer{display:grid;grid-template-columns:1fr;padding:12px 20px}.modal-footer .primary{order:-1}.modal-footer button{width:100%;min-height:48px}.result-achievement .achievement-top{gap:14px}.result-achievement .achievement-trophy{width:52px;height:52px}.result-achievement .achievement-trophy>.icon{width:28px;height:28px}.result-achievement .achievement-copy strong{font-size:21px}.result-achievement .achievement-copy p{font-size:17px}}

/* Keep the skill, practice, and takeaway readable at each step. */
.skill-focus{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--mint);font-size:17px;line-height:1.6;margin:12px 0 18px}.skill-focus .icon{flex:none}.skill-focus strong{font-weight:600}.next-lesson .skill-focus{font-size:17px;margin-bottom:16px}.learned-card{padding:24px;border:1px solid var(--mint-line);border-radius:18px;background:var(--mint-bg);margin:24px 0}.learned-card h3{font-size:25px;line-height:1.3;margin:12px 0}.learned-card p{font-size:18px;line-height:1.7;color:var(--text)}.learned-card .eyebrow{font-size:14px;color:var(--mint);letter-spacing:1px}.try-elsewhere{border-top:1px solid var(--mint-line);padding-top:18px;margin-top:20px}.try-elsewhere strong{font-size:18px}.try-elsewhere p{margin-top:8px}.feedback-next{padding:24px;border:1px solid var(--mint-line);border-radius:18px;margin:20px 0;background:var(--panel)}.feedback-next h3{font-size:22px;margin-bottom:12px}.feedback-next p{font-size:18px;line-height:1.7}.learning-total{padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:18px;display:grid;gap:12px}.learning-total>strong{font-size:38px}.learning-total small{font-size:20px;color:var(--muted)}.learning-total>span{font-size:18px}.learned-entry{border:1px solid var(--line);border-radius:18px;padding:20px;margin:16px 0}.learned-entry>summary{display:flex;align-items:center;gap:16px;cursor:pointer;min-height:48px;font-size:20px}.learned-entry>summary>span{flex:1}.learned-entry>summary>.icon{flex:none;color:var(--mint)}.learned-entry small{display:block;font-size:16px;color:var(--muted);margin-top:6px}.learned-entry[open]>summary>.icon:last-child{transform:rotate(90deg)}.learned-entry .learned-card{border:0;margin:18px 0;padding:20px}.account-data{margin:24px 0}.account-data summary{font-size:18px;min-height:44px;cursor:pointer}.practice-next+.learned-card{margin-top:24px}.module-lessons button small{font-size:16px;line-height:1.6}.practice-menu-actions{margin-top:0;border-top:0;padding-top:0}
@media(max-width:650px){.skill-focus{font-size:16px}.learned-card,.feedback-next{padding:20px}.learned-card h3{font-size:23px}.learned-entry{padding:16px}.learned-entry>summary{font-size:18px}.learned-entry .learned-card{padding:16px}.simple-workspace .task-card{padding:20px}.result-achievement{margin-bottom:20px}.result-achievement+.learned-card{margin-top:0}.simple-workspace .practice-flow{scroll-padding-bottom:24px}.module-lessons button small{font-size:15px}}

.learned-card>.eyebrow{display:flex;align-items:center;gap:10px}.learned-card>.eyebrow .icon{width:28px;height:28px}.learned-card.result-achievement{margin:0 0 20px}.updated-lesson-note{font-size:18px;line-height:1.7;margin:20px 0}
