:root{--paper:#eef0ea;--paper-raised:#fff;--ink:#1c2321;--ink-soft:#4c554f;--ink-faint:#8a9088;--line:#d9dcd1;--track-frontend:#1f7a6c;--track-backend:#2b4c7e;--track-data:#c97f0a;--track-product:#7a3b69;--track-leadership:#a8442a;--track-frontend-soft:#e2efec;--track-backend-soft:#e3e9f1;--track-data-soft:#f6e9d6;--track-product-soft:#efe1eb;--track-leadership-soft:#f2e2dc;--danger:#a8442a;--danger-soft:#f2e2dc;--font-display:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-card:0 1px 2px #1c23210f, 0 1px 1px #1c23210a;--shadow-raised:0 4px 16px #1c23211a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:600}p{margin:0}a{color:inherit}button{font-family:var(--font-body)}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.mono{font-family:var(--font-mono)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.track-Frontend{--track:var(--track-frontend);--track-soft:var(--track-frontend-soft)}.track-Backend{--track:var(--track-backend);--track-soft:var(--track-backend-soft)}.track-Data{--track:var(--track-data);--track-soft:var(--track-data-soft)}.track-Product{--track:var(--track-product);--track-soft:var(--track-product-soft)}.track-Leadership{--track:var(--track-leadership);--track-soft:var(--track-leadership-soft)}.app-shell{flex-direction:column;min-height:100%;display:flex}.topnav{border-bottom:1px solid var(--line);background:var(--paper-raised);z-index:10;position:sticky;top:0}.topnav-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1080px;margin:0 auto;padding:14px 24px;display:flex}.brand{font-family:var(--font-display);color:var(--ink);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.topnav-links{gap:22px;display:flex}.topnav-links a{color:var(--ink-soft);border-bottom:2px solid #0000;padding:6px 2px;font-size:14px;font-weight:500;text-decoration:none}.topnav-links a.active{color:var(--ink);border-bottom-color:var(--track-frontend)}.app-main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:32px 24px 64px}.app-footer{border-top:1px solid var(--line);text-align:center;color:var(--ink-faint);font-size:12px;font-family:var(--font-mono);padding:16px 24px}.page-header{max-width:640px;margin-bottom:32px}.eyebrow{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px;font-size:11px;display:inline-block}.page-header h1{margin-bottom:10px;font-size:32px}.page-lede{color:var(--ink-soft);font-size:15px}.back-link{color:var(--ink-soft);margin-bottom:16px;font-size:13px;text-decoration:none;display:inline-block}.section-title{font-size:13px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);margin-bottom:14px}.status-block{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-md);padding:24px}.status-empty h3,.status-error h3{margin-bottom:6px;font-size:16px}.status-error{border-color:var(--danger);background:var(--danger-soft)}.status-error h3{color:var(--danger)}.skeleton-row{background:linear-gradient(90deg, var(--line) 25%, #eceee5 37%, var(--line) 63%);background-size:400% 100%;border-radius:4px;width:90%;height:14px;margin-bottom:10px;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.ink-soft{color:var(--ink-soft)}.ink-faint{color:var(--ink-faint);font-size:13px}.btn{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--paper-raised);cursor:pointer;margin-top:12px;padding:8px 14px;font-size:13px}.btn-secondary:hover{border-color:var(--ink-faint)}.chip{font-family:var(--font-mono);background:var(--line);color:var(--ink-soft);border-radius:999px;align-items:center;padding:3px 9px;font-size:11px;display:inline-flex}.chip-count{margin-left:auto}.chip-target{background:var(--track,var(--ink));color:#fff;margin-left:8px}.chip-hops{background:var(--ink);color:var(--paper)}.skill-track-dot{background:var(--track,var(--ink-faint));border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}.grid{gap:14px;display:grid}.grid-people{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.grid-careers{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.card{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-md);color:inherit;box-shadow:var(--shadow-card);padding:18px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:block}.card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.card-person{align-items:center;gap:12px;display:flex}.card-person-body h3{margin-bottom:2px;font-size:15px}.card-person-body p{font-size:13px}.card-career h3{margin-bottom:8px;font-size:17px}.card-career p{margin-bottom:14px;font-size:13px}.avatar{color:#fff;font-family:var(--font-display);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.person-header{align-items:center;gap:16px;margin-bottom:12px;display:flex}.person-header h1{font-size:26px}.person-bio{color:var(--ink-soft);max-width:560px;margin-bottom:28px}.skill-chip-section,.career-picker{margin-bottom:28px}.skill-chip-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.skill-chip{background:var(--track-soft,var(--line));border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.skill-level{font-family:var(--font-mono);font-size:11px}.career-chip-row{flex-wrap:wrap;gap:8px;display:flex}.career-chip{font-family:var(--font-body);border:1px solid var(--line);background:var(--paper-raised);cursor:pointer;border-radius:999px;padding:9px 16px;font-size:13px}.career-chip.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.route-panels{grid-template-columns:1.3fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=800px){.route-panels{grid-template-columns:1fr}}.panel{background:var(--paper-raised);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:20px;padding:22px}.panel-column{flex-direction:column;display:flex}.transit-line{padding-left:26px;position:relative}.transit-stop{padding-bottom:26px;position:relative}.transit-stop:last-child{padding-bottom:0}.transit-stop:before{content:"";background:var(--track,var(--ink-faint));width:3px;position:absolute;top:18px;bottom:-8px;left:-21px}.transit-stop:last-child:before{display:none}.transit-node{background:var(--paper-raised);border:3px solid var(--track,var(--ink));border-radius:50%;width:15px;height:15px;position:absolute;top:2px;left:-27px}.transit-node-start{border-color:var(--ink);background:var(--ink)}.transit-node-target{box-shadow:0 0 0 4px var(--track-soft,var(--line))}.transit-here{font-family:var(--font-mono);color:var(--ink-faint);font-size:12px}.transit-stop-head{align-items:center;gap:8px;margin-bottom:2px;display:flex}.transit-stop-head h4{font-size:16px}.track-label{text-transform:capitalize;margin-bottom:10px}.course-pill{background:var(--track-soft,var(--line));border-radius:var(--radius-sm);color:var(--ink);flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;display:flex}.course-pill-title{font-size:13px;font-weight:600}.course-pill-meta{font-family:var(--font-mono);color:var(--ink-soft);font-size:11px}.no-course{font-style:italic}.mentor-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.mentor-row{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding-bottom:14px;display:flex}.mentor-row:last-child{border-bottom:none;padding-bottom:0}.mentor-link{color:var(--ink);align-items:center;gap:10px;text-decoration:none;display:flex}.mentor-name{font-size:14px;font-weight:600}.mentor-headline{font-size:12px}.mentor-meta{padding-left:46px}.mentor-covers{margin-top:4px}.course-rec-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.course-rec-row{border-bottom:1px solid var(--line);padding-bottom:14px}.course-rec-row:last-child{border-bottom:none;padding-bottom:0}.course-rec-title{color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}.course-rec-meta{margin-top:2px;font-size:12px}.course-rec-covers{margin-top:4px}.skill-importance-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.skill-importance-list li{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.skill-importance-list li:nth-child(odd){background:var(--paper-raised)}.skill-name{font-size:14px;font-weight:500}.importance-dots{gap:4px;margin-left:auto;display:flex}.dot{background:var(--line);border-radius:50%;width:8px;height:8px}.dot-filled{background:var(--track,var(--ink))}.skill-tracks{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:start;gap:20px;display:grid}.track-column{background:var(--paper-raised);border-radius:var(--radius-lg);border:1px solid var(--line);padding:18px}.track-heading{color:var(--track,var(--ink));align-items:center;gap:8px;margin-bottom:14px;font-size:14px;display:flex}.track-skill-list{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.track-skill-item{gap:10px;display:flex}.track-skill-node{background:var(--track,var(--ink));border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.unlocks{color:var(--ink-faint);margin-top:2px;font-size:12px}
