@import url('/ax-tokens.css');
:root{font-family:"Segoe UI",system-ui,sans-serif;font-size:15px;line-height:1.65;color:var(--ax-text);background:var(--ax-page);--blue:var(--ax-blue);--line:var(--ax-rule);--muted:var(--ax-muted);--selected:var(--ax-selected)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--ax-button-border);border-radius:7px;padding:9px 13px;background:var(--ax-reading);line-height:1.45}button:hover{background:var(--ax-control-hover);border-color:var(--ax-blue)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--blue);border-color:var(--blue);color:var(--ax-reading)}button.primary:hover{background:var(--ax-blue-hover)}a{color:var(--ax-link);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--ax-blue);outline-offset:3px}[hidden]{display:none!important}
header{min-height:78px;padding:18px 36px;display:flex;align-items:center;gap:36px;background:var(--ax-graphite);color:var(--ax-reading)}header .brand{color:var(--ax-reading);text-decoration:none;font-size:25px;font-weight:700;white-space:nowrap}.brand span{font-size:15px;font-weight:400;margin-left:12px;padding-left:16px;border-left:1px solid #727b8a}header nav{display:flex;gap:25px;align-items:center}header nav a{color:#e4e9f3;font-size:14px;text-decoration:none}header button{background:transparent;color:var(--ax-reading);border-color:#667186}header button:hover{background:#27344c}#account-bar{margin-left:auto;display:flex;gap:15px;align-items:center}#account-bar span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}
h1,h2,h3,h4{line-height:1.25;letter-spacing:-.02em;overflow-wrap:anywhere}h1{font-size:40px;margin:0 0 18px}h2{font-size:26px;margin:0 0 20px}h3{font-size:21px;margin:0 0 12px}h4{font-size:17px}p{margin:12px 0;overflow-wrap:anywhere}.muted,.fine{color:var(--muted)}.fine{font-size:12px;line-height:1.65}.context-label{font-size:11px;letter-spacing:0;font-weight:600;color:var(--ax-context)}.lead{font-size:18px;line-height:1.7}label{display:block;font-size:13px;font-weight:600;margin:12px 0 6px}input,textarea,select{width:100%;padding:11px 12px;border:1px solid var(--ax-field-border);border-radius:7px;background:var(--ax-reading)}textarea{resize:vertical}progress{width:100%;height:8px;accent-color:var(--blue)}.actions{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.text-button{border-color:transparent;color:var(--ax-link);background:transparent;padding-left:0;text-align:left}
.catalogue{max-width:1320px;margin:auto;padding:52px 36px 65px}.catalogue-intro{border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:36px}.catalogue-intro h1{font-size:clamp(34px,3.5vw,50px);max-width:24ch}.catalogue-intro>p:last-child{max-width:68ch;font-size:17px;color:var(--ax-muted)}.explore-heading{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;margin:42px 0 22px}.explore-heading h2{margin:0}.search-field{width:300px}.search-field label{margin-top:0}.filters{display:flex;flex-wrap:wrap;gap:9px}.filters button[aria-pressed=true]{background:var(--blue);color:var(--ax-reading);border-color:var(--blue)}.topic-filter{display:flex;align-items:center;gap:12px;margin-top:20px}.topic-filter label{margin:0}.topic-filter select{width:240px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.module-card{padding:26px 28px;background:var(--ax-reading);border:1px solid var(--ax-rule);border-radius:13px;display:flex;flex-direction:column;min-width:0;box-shadow:none}.module-card .context-label{margin:0 0 14px}.module-card h3{font-size:22px;line-height:1.35}.module-card h3 a{color:var(--ax-card-title);text-decoration:none}.module-card h3 a:hover{color:var(--blue)}.module-card>p{color:var(--ax-card-text)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.tags span{font-size:12px;border-radius:20px;background:var(--ax-tag-bg);color:var(--ax-tag-text);padding:4px 10px}.card-action{align-self:flex-start;margin-top:auto;border:0;color:var(--ax-link);padding:9px 0;background:transparent;font-weight:600}.catalogue-boundary{color:var(--muted);font-size:13px;max-width:85ch;margin:32px 0 0}
.desk{display:grid;grid-template-columns:290px minmax(320px,1fr) 260px;max-width:1620px;margin:auto;background:var(--ax-reading);min-height:calc(100vh - 150px)}.tree-panel{background:var(--ax-tree);padding:26px 22px;border-right:1px solid var(--line);min-width:0}.tree-panel h1{font-size:26px}.tree-panel>p{font-size:13px}.tree-panel select{font-size:13px}.route-progress{margin:24px 0;padding-bottom:16px;border-bottom:1px solid var(--line)}.route-progress p{font-size:12px}.tree-panel details{border:0;margin:0;padding:0 0 16px}.tree-panel summary{font-size:13px;padding:10px 0}.tree-node{display:block;width:100%;font-size:13px;text-align:left;background:transparent;border:0;border-left:2px solid #d4dbe5;border-radius:0;padding:11px 10px;margin-left:5px}.tree-node[aria-current=true]{border-left-color:var(--blue);background:var(--selected);color:var(--ax-selected-text);font-weight:600}.node-state{display:block;font-size:10px;font-weight:400;color:#59667b;margin-top:3px}#undo-route{font-size:12px;margin-top:20px}
#lesson{padding:32px 36px 56px;min-width:0;max-width:900px}#node-title{font-size:34px;margin-top:22px}#point-title{font-size:25px}#point-body{font-size:18px;line-height:1.9;white-space:pre-wrap;max-width:72ch;min-height:120px}.point-tabs{display:flex;flex-wrap:wrap;gap:7px;margin:28px 0 24px}.point-tabs button{font-size:12px}.point-tabs button[aria-pressed=true]{background:var(--ax-control-hover);color:var(--ax-link);border-color:var(--ax-selected-border)}.source-line{margin:22px 0;padding-top:16px;border-top:1px solid var(--line)}.source-line>a{font-size:13px}.source-line p{margin:6px 0}.lesson-section{border-top:1px solid var(--line);padding-top:23px;margin-top:30px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.section-heading h3{margin:0}.section-heading button{font-size:12px}.branch-banner,.notice-box{padding:18px;background:var(--ax-control-hover);border:1px solid var(--ax-selected-border);font-size:14px}.branch-banner p{margin-top:0}.generated-output{padding:18px;background:#f2f5fc;white-space:pre-wrap;margin:18px 0;overflow-wrap:anywhere}.generated-output a{display:inline-block;margin:6px 15px 6px 0;font-size:12px}.record-panel{padding:34px 22px;border-left:1px solid var(--line);background:var(--ax-record);font-size:13px}.record-panel h2{font-size:19px}.record-panel h3{font-size:17px}#mastery-status{color:#315c87;font-weight:600}.record-panel input{font-size:13px}.record-panel button{font-size:12px;margin-top:9px}.draft{border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.draft h4{font-size:15px;margin:0}#route-changes{padding-left:18px;font-size:12px}#route-changes li{margin:9px 0}
details{border-top:1px solid var(--line);padding-top:18px;margin-top:26px}summary{cursor:pointer;font-weight:600;font-size:14px}details p{font-size:14px}details button{margin-top:12px}#notice:not(:empty){background:#eaf0ff;color:#263f76;padding:12px 30px;font-size:14px;border-bottom:1px solid #d8e1f5}footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 36px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}footer button{font-size:12px}dialog{width:min(520px,calc(100% - 30px));border:1px solid var(--line);border-radius:12px;padding:30px;box-shadow:0 15px 55px #15223730}dialog::backdrop{background:#111b32a6}dialog h2{font-size:26px}dialog p{font-size:14px;color:var(--muted)}#login-error{color:#983e2b}.skip-link{position:absolute;top:-60px;left:20px;padding:10px;background:var(--ax-reading);z-index:10}.skip-link:focus{top:10px}
.curriculum-main{max-width:1120px;margin:auto;padding:38px 30px;background:var(--ax-reading);min-height:80vh}.curriculum-main h1{font-size:34px}.catalogue-filters{display:flex;gap:20px;flex-wrap:wrap;margin:24px 0}.catalogue-filters>div{flex:1;min-width:200px}.catalogue-row{border-top:1px solid var(--line);padding:24px 0}.catalogue-row h2{font-size:21px}.rag-snippet{white-space:pre-wrap;overflow-wrap:anywhere}.rag-submit{display:flex;align-items:flex-end}#rag-prerequisites{display:flex;flex-wrap:wrap;gap:8px}.header-back{margin-left:auto;color:var(--ax-reading)}
@media(max-width:1180px){.desk{grid-template-columns:260px minmax(300px,1fr)}.record-panel{grid-column:2;border-left:0;border-top:1px solid var(--line)}.tree-panel{grid-row:1/3}header{gap:20px;padding:18px 24px}header nav{gap:16px}}
@media(max-width:720px){header{padding:15px 18px;gap:16px;flex-wrap:wrap}.brand span{font-size:13px}header nav{order:3;width:100%;gap:20px}header nav a,header nav button{font-size:12px}#account-bar{gap:8px}#account-bar button{font-size:12px}.catalogue{padding:30px 20px}.catalogue-intro{padding-bottom:22px;margin-bottom:26px}.catalogue-intro h1{font-size:35px}.catalogue-intro>p:last-child{font-size:15px}.explore-heading{display:block;margin-top:30px}.search-field{width:100%;margin-top:20px}.filters{gap:7px}.filters button{font-size:12px;padding:9px}.module-grid{grid-template-columns:1fr;gap:16px}.module-card{padding:23px}.module-card h3{font-size:21px}.desk{display:block}.tree-panel{border-right:0;border-bottom:1px solid var(--line);padding:22px 20px}.tree-panel h1{font-size:25px}.tree-panel #knowledge-tree{max-height:290px;overflow-y:auto;border-bottom:1px solid var(--line)}#lesson{padding:25px 22px 36px}#node-title{font-size:30px}#point-title{font-size:23px}#point-body{font-size:17px}.record-panel{padding:26px 22px}.section-heading{align-items:flex-start}.section-heading button{max-width:140px}.curriculum-main{padding:25px 20px}.curriculum-main h1{font-size:29px}footer{padding:20px;flex-wrap:wrap}}

.tree-points{margin:0 0 12px 20px;border-left:1px solid var(--line);padding-left:9px}.tree-points button{display:block;width:100%;text-align:left;border:0;border-radius:0;background:transparent;font-size:11px;padding:8px}.tree-points button[aria-current=true]{font-weight:650;color:var(--ax-link)}.tree-shell>summary{font-size:13px}.tree-panel details.tree-shell{padding-top:10px}#auto-support{margin-right:10px}@media(max-width:720px){.tree-shell>summary{padding:14px 0}.tree-points button{font-size:12px;min-height:36px}}

#recent-section{margin:24px 0 32px}#recent-section h2{font-size:21px}.catalogue-intro{padding-bottom:24px;margin-bottom:24px}.explore-heading{margin-top:24px}.module-card .context-label{color:var(--ax-context)}
