/* Shared, low-distraction controls. Inherit each course's light/dark palette. */
.path-steps{display:flex;gap:.45rem;flex-wrap:wrap;border-bottom:1px solid var(--line,var(--border,#ccc));padding:.7rem 0;margin:1.4rem 0;scroll-margin-top:5rem}
.path-steps button,.path-next{font:inherit;cursor:pointer;border:1px solid var(--line,var(--border,#aaa));background:var(--surface,transparent);color:inherit;padding:.7rem 1rem;border-radius:6px}
.path-steps button[aria-pressed=true]{font-weight:750;border:2px solid currentColor;padding:calc(.7rem - 1px) calc(1rem - 1px)}
.path-next{display:block;margin:2rem 0;font-weight:700}
[data-step][hidden],[hidden]{display:none!important}
.path-picker{display:flex;align-items:center;gap:.8rem;margin:1.2rem 0;max-width:100%}
.path-picker label{margin:0;white-space:nowrap;font-size:.85rem}
.path-picker select{min-width:0;max-width:100%;flex:1;font:inherit;font-size:.9rem;padding:.65rem;border:1px solid var(--line,var(--border,#aaa));border-radius:5px;background:var(--bg,#fff);color:inherit}
.path-resources{margin:1.3rem 0;border:1px solid var(--line,var(--border,#ccc));border-radius:6px;padding:0 1rem}
.path-resources>summary{cursor:pointer;padding:.9rem 0;font-size:.9rem;font-weight:650}
.path-resources>div{padding:.3rem 0 1rem}
.path-resources a{display:inline-block;margin:.3rem 1rem .3rem 0}
.path-menu{position:relative;font-size:.85rem}
.path-menu summary{cursor:pointer;padding:.4rem .6rem;list-style:none}
.path-menu summary::after{content:' ▾'}
.path-menu>div{position:absolute;z-index:50;right:0;top:100%;min-width:210px;padding:.7rem 1rem;background:var(--bg,#fff);color:var(--text,var(--ink,inherit));border:1px solid var(--border,var(--line,#ccc));border-radius:6px;box-shadow:0 10px 25px #0002}
.path-menu a{display:block!important;margin:.5rem 0!important;white-space:normal!important}
.path-reference{margin:1.5rem 0;border:1px solid var(--border,var(--line,#ccc));border-radius:6px;padding:1rem}
.path-reference>summary{font-weight:650;cursor:pointer;line-height:1.5}
.path-reference>div{padding-top:1rem}
.path-reference section{padding-top:1.2rem;margin-top:0}
.path-intro{max-width:65ch;font-size:1.05rem;line-height:1.65}
@media(max-width:650px){.path-steps{gap:.3rem;scroll-margin-top:1rem}.path-steps button{font-size:.85rem;padding:.6rem .7rem}.path-steps button[aria-pressed=true]{padding:calc(.6rem - 1px) calc(.7rem - 1px)}.path-picker{align-items:stretch;flex-direction:column;gap:.3rem}.path-picker select{width:100%}.path-menu>div{max-width:85vw}}
@media print{[data-step][hidden],.stage[hidden]{display:block!important}.path-steps,.path-next,.path-picker,.path-menu{display:none!important}}
