/* Career Roadmaps: role cards, ladder, plan, ticks. */
.startrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.cta-inline{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin:18px 0}
.cta-inline h3{margin:0 0 4px}.cta-inline p{margin:0;color:var(--muted)}
.tb{height:10px;background:var(--chip);border-radius:99px;overflow:hidden;display:block}
.tb i{display:block;height:100%;border-radius:99px;background:var(--grad);transition:width .25s}
.points{list-style:none;padding-left:0;margin:6px 0}.points li{margin:6px 0;padding-left:16px;position:relative}
.points li:before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.t-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.rcardlink{display:block}
.mini{list-style:none;margin:12px 0 4px;padding:0;display:grid;gap:4px;font-size:13px}
.mini li{display:flex;justify-content:space-between;gap:10px;padding:5px 10px;border-radius:8px;background:var(--chip)}
.mini li i{font-style:normal;color:var(--muted);white-space:nowrap}
.rhead{margin-bottom:16px}.rname{margin:0 0 6px;font-size:30px}
.sec2{margin:0 0 12px;font-size:20px}
.card{margin-bottom:16px}
.rplan h3,.rbody h4,.more h4{margin:18px 0 6px;font-size:15px}
.readyrow{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;margin:12px 0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.opts{display:grid;gap:6px}
.opt.skill{margin:0;font-weight:400;color:var(--ink)}
.opt.skill:has(input:checked) span{color:var(--muted)}
.more{margin:14px 0 0}.more summary{cursor:pointer;font-weight:600;color:var(--muted)}
.rung{border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:10px;padding:0}
.rung summary{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.rung summary::-webkit-details-marker{display:none}
.rung .rt{flex:1}
.rung .num{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--chip);font-weight:700}
.rung.next{border-color:var(--brand)}
.rung.here .num,.rung.next .num{background:var(--grad);color:#fff}
.rbody{padding:0 16px 16px}
.pivots{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.pivots li{display:grid;gap:2px}.pivots span{color:var(--muted);font-size:15px}
@media (max-width:760px){.two{grid-template-columns:1fr}.rname{font-size:26px}.rung summary{padding:12px}}
/* Skill Gap Check additions */
.lvl{margin:22px 0 6px;font-size:16px}
.rate{border:0;border-top:1px solid var(--line);margin:0;padding:12px 0}
.rate legend{padding:0;float:left;width:100%;margin-bottom:8px;font-weight:500;color:var(--ink)}
.rate .seg{clear:both}
.seg{display:flex;gap:8px;flex-wrap:wrap}
.seg label{margin:0}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:inline-block;padding:7px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-weight:600;font-size:14px;color:var(--muted);cursor:pointer}
.seg label:hover span{border-color:var(--brand)}
.seg input:checked+span{background:var(--grad);border-color:transparent;color:#fff}
.seg input:focus-visible+span{outline:2px solid var(--brand);outline-offset:2px}
.score{display:flex;align-items:baseline;gap:12px;margin:10px 0}
.score b{font:700 44px var(--font-head)}
.score span{color:var(--muted)}
.score.strong b{color:hsl(150 55% 30%)}.score.good b{color:hsl(38 80% 36%)}.score.low b{color:var(--accent)}
.tbars{list-style:none;margin:8px 0 14px;padding:0;display:grid;gap:8px}
.tbars li{display:grid;grid-template-columns:minmax(120px,1fr) 2fr 54px;gap:10px;align-items:center;font-size:14px}
.tb i.hi{background:hsl(150 55% 40%)}.tb i.mid{background:hsl(38 90% 50%)}.tb i.lo{background:var(--accent)}
.tv{text-align:right;font-variant-numeric:tabular-nums}
.resact{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
details.more{padding:14px 18px}
@media (max-width:760px){.tbars li{grid-template-columns:1fr 54px}.tbars li .tb{grid-column:1 / -1;order:3}.score b{font-size:36px}}
.res h3,.rcard h3,.lvl{margin-top:20px!important;margin-bottom:6px}
/* Cheat Sheets additions */
.cs-search,.cs-filter{margin:0 0 18px;max-width:640px}
.cs-search input,.cs-filter input{width:100%;font-size:17px;padding:12px 14px}
.cs-toc{margin:14px 0 4px}
.cs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cs-item{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface);min-width:0}
.cs-code{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}
.cs-code code{flex:1;min-width:0;font:600 13.5px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--chip);padding:6px 8px;border-radius:8px;overflow-wrap:anywhere;white-space:pre-wrap}
.cs-copy{flex:none}
.cs-desc{margin:8px 0 0;font-size:15px}
.cs-note{margin:6px 0 0;color:hsl(30 70% 30%)}
:root[data-theme="dark"] .cs-note{color:hsl(38 90% 75%)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cs-note{color:hsl(38 90% 75%)}}
#results .cs-item{margin-bottom:10px;max-width:900px}
.cs-sec{scroll-margin-top:80px}
@media (max-width:760px){.cs-grid{grid-template-columns:1fr}}
@media print{
  .top,footer,.t-actions,.cs-filter,.cs-toc,.cs-copy,.cs-practice,.cta-inline,.page-head{display:none!important}
  .cs-grid{grid-template-columns:repeat(2,1fr);gap:6px}
  .cs-item{break-inside:avoid;padding:5px 7px;border-color:#bbb}
  .cs-code code{font-size:10.5px;padding:2px 4px}.cs-desc{font-size:10.5px;margin-top:3px}.cs-note{font-size:10px;margin-top:2px;color:#000}
  .card{box-shadow:none;border:0;padding:0;margin:0 0 8px}.sec2{font-size:13px;margin:6px 0 3px}.rname{font-size:20px}
}
