/* School Launch · Math Skill Check. Builds on /courses/shared/course.css (same variables and components). */
.seg a{display:inline-flex;align-items:center;text-decoration:none;color:var(--forge);font-weight:700;font-size:15px;min-height:44px;padding:8px 14px}
.seg a + a{border-left:2px solid var(--forge)}
.seg a[aria-current="page"]{background:var(--forge);color:var(--forge-ink)}
.course-hero{display:flex;flex-direction:column;gap:12px}
.hero-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.stats{display:flex;gap:6px;flex-wrap:wrap}
.dx{display:flex;flex-direction:column;gap:20px}
.dx-h{font-family:var(--display);font-size:24px;color:var(--forge);line-height:1.25}
.dx-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.dx-mode{gap:12px}
.dx-label{font-weight:700;font-size:15px}
.dx-select{font:inherit;font-size:16px;min-height:44px;padding:8px 10px;border:2px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);max-width:100%}
.dx-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.dx-chips li{font-size:14px;padding:3px 9px;border-radius:4px;background:var(--linen);color:var(--muted)}
.dx-chips li.ok{border-left:3px solid #4E7D4A}
.dx-chips a{color:var(--forge);font-weight:600}
.dx-steps{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;max-width:70ch}
.dx-small{font-size:14px}
.dx-bar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:14px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid var(--brass);padding-bottom:8px}
.dx-trail{background:var(--linen);border-radius:8px;padding:12px 16px;display:flex;flex-direction:column;gap:6px}
.dx-trail ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.dx-trail li{font-size:15px;font-weight:600;padding:4px 10px;border-radius:4px;background:var(--paper);border:1px solid var(--line)}
.dx-trail li + li::before{content:"\2192";margin-right:8px;color:var(--muted)}
.dx-trail li.is-gap{border-color:var(--forge);color:var(--forge)}
.dx-trail li.is-now{background:var(--forge);color:var(--forge-ink);border-color:var(--forge)}
.dx-trail li.is-now::before{color:var(--forge-ink)}
.dx-q{gap:14px;max-width:760px}
.dx-prompt{font-family:var(--serif);font-size:21px;line-height:1.45}
.dx-opts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dx-opt{width:100%;min-height:52px;text-align:left;font:inherit;font-size:18px;font-weight:600;padding:10px 14px;border-radius:6px;border:2px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}
.dx-opt:hover:not(:disabled){border-color:var(--forge)}
.dx-opt:disabled{cursor:default;opacity:.75}
.dx-opt.is-right{border-color:#4E7D4A;background:rgba(78,125,74,.14);opacity:1}
.dx-opt.is-right::after{content:"  \2713";color:#4E7D4A}
.dx-opt.is-wrong{border-color:var(--forge);background:rgba(140,58,31,.10);opacity:1}
.dx-feedback{padding:12px 16px;border-radius:6px;background:var(--linen);border-left:4px solid #4E7D4A;display:flex;flex-direction:column;gap:6px;font-family:var(--serif);font-size:18px}
.dx-feedback.no{border-left-color:var(--forge)}
.dx-result{gap:12px}
.dx-list{margin:0;padding-left:26px;display:flex;flex-direction:column;gap:12px}
.dx-start > li::marker{font-family:var(--display);font-weight:700;color:var(--forge)}
.dx-item-h{font-weight:700;font-size:18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dx-links{display:flex;flex-direction:column;gap:2px;font-size:16px}
.dx-sub{font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.dx-ok summary{cursor:pointer}
.tag-ok{background:#4E7D4A;color:#fff}
/* map */
.dx-maptools{display:flex;gap:10px 14px;align-items:center;flex-wrap:wrap}
.dx-legend{display:flex;gap:6px;flex-wrap:wrap;font-size:13px;margin-left:auto}
.lg{padding:2px 8px;border-radius:4px;border:2px solid var(--line);background:var(--paper)}
.lg-ok{border-color:#4E7D4A}.lg-gap{border-color:var(--forge)}.lg-up{border-color:var(--brass);background:var(--linen)}.lg-down{border-color:var(--focus)}
.dx-mapgrid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.dx-scroll{overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--paper);max-height:72vh;-webkit-overflow-scrolling:touch}
.dx-map{display:block}
.dx-map .col-h{font:700 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;fill:var(--forge);text-anchor:middle}
.dx-map .col-s{font:600 12px var(--sans);fill:var(--muted);text-anchor:middle}
.dx-map .e{fill:none;stroke:var(--line);stroke-width:1.2}
.dx-map .e-dim{opacity:.25}
.dx-map .e-up{stroke:var(--brass);stroke-width:2.4}
.dx-map .e-down{stroke:var(--focus);stroke-width:2}
.dx-map .arrowhead{fill:var(--muted)}
.dx-map .n{cursor:pointer}
.dx-map .n rect{fill:var(--ground);stroke:var(--line);stroke-width:1.5}
.dx-map .n text{font:600 12px var(--sans);fill:var(--ink);text-anchor:middle;pointer-events:none}
.dx-map .n .badge{font-weight:700;font-size:12px}
.dx-map .n-ok rect{stroke:#4E7D4A;stroke-width:2.5}
.dx-map .n-ok .badge{fill:#4E7D4A}
.dx-map .n-gap rect{stroke:var(--forge);stroke-width:2.5}
.dx-map .n-gap .badge{fill:var(--forge)}
.dx-map .n:hover rect,.dx-map .n:focus rect{stroke:var(--forge)}
.dx-map .n:focus{outline:none}
.dx-map .n:focus-visible rect{stroke:var(--focus);stroke-width:3}
.dx-map .n-dim{opacity:.35}
.dx-map .n-up rect{fill:var(--linen);stroke:var(--brass);stroke-width:2.2}
.dx-map .n-down rect{stroke:var(--focus);stroke-width:2}
.dx-map .n-sel rect{fill:var(--forge);stroke:var(--forge)}
.dx-map .n-sel text{fill:var(--forge-ink)}
.dx-panel{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow:auto}
@media (max-width:900px){
  .dx-mapgrid{grid-template-columns:minmax(0,1fr)}
  .dx-panel{position:static;max-height:none;order:-1}
  .dx-scroll{max-height:60vh}
}
@media (max-width:700px){
  .dx-modes{grid-template-columns:minmax(0,1fr)}
  .dx-opts{grid-template-columns:minmax(0,1fr)}
  .dx-prompt{font-size:19px}
  .dx-h{font-size:21px}
  .dx-legend{margin-left:0}
  .dx-select{width:100%}
  .btn-row .btn{flex:1 1 auto}
}
@media print{
  .seg,.dx-maptools,.dx .btn-row{display:none!important}
}
/* keep the hero short while a check is running */
body[data-dx-view="quiz"] .course-hero .lead,body[data-dx-view="result"] .course-hero .lead{display:none}
body[data-dx-view="quiz"] .course-hero h1{font-size:34px}
.dx{scroll-margin-top:90px}
/* course switcher, "before the lesson" card and earlier-course nodes (Algebra I and II maps) */
.dx-courses{align-self:flex-start}
.dx-courses a{font-size:14px;min-height:40px;padding:6px 12px}
.dx-ready{border-left:4px solid var(--forge);gap:10px}
.dx-map .n-ext rect{fill:var(--paper);stroke-dasharray:5 3}
.dx-map .n-ext.n-sel rect{fill:var(--forge)}
.cnote a{color:var(--forge);font-weight:600}
