.competency-map{max-width:1100px;margin:36px auto 0;padding:24px 20px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033}.competency-map__heading{border:1px solid #d8dee9;border-radius:18px 18px 0 0;padding:24px 24px 18px;background:#fff;border-bottom:0}.competency-map__heading h2{margin:.1rem 0 .6rem;line-height:1.2}.competency-map__heading p{margin:0;color:#5f6b7a}.competency-map__legend{display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px 16px;background:#fff;border-left:1px solid #d8dee9;border-right:1px solid #d8dee9}.competency-map__legend-item{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid #d8dee9;border-radius:999px;background:#fff;font-size:.82rem;font-weight:750}.competency-map__legend-item i{width:10px;height:10px;border-radius:50%;display:block}.competency-map__legend-item[data-status="Current"] i{background:#7c3aed}.competency-map__legend-item[data-status="Strong"] i{background:#16a34a}.competency-map__legend-item[data-status="ReviewDue"] i{background:#d97706}.competency-map__legend-item[data-status="Weak"] i{background:#dc2626}.competency-map__legend-item[data-status="Required"] i{background:#64748b}.competency-map__legend-item[data-status="Unknown"] i{background:#94a3b8}.competency-map__host{height:330px;border:1px solid #d8dee9;border-radius:0 0 18px 18px;overflow:hidden;position:relative;background-color:#fbfcfe;background-image:radial-gradient(#d7dce5 1px,transparent 1px);background-size:22px 22px}.competency-map__flow-shell{position:absolute;inset:0}.competency-map__zoom{position:absolute;z-index:8;top:12px;right:12px;display:flex;gap:6px;padding:6px;border:1px solid #d8dee9;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 8px 18px rgba(15,23,42,.08)}.competency-map__zoom button{min-width:34px;height:34px;padding:0 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#172033;font:700 1rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}.competency-map__zoom button:hover,.competency-map__zoom button:focus{border-color:#7c3aed;outline:none;box-shadow:0 0 0 3px rgba(124,58,237,.12)}.competency-map__zoom .competency-map__zoom-fit{min-width:64px;font-size:.8rem}.competency-map__interaction-hint{position:absolute;z-index:7;left:12px;bottom:12px;padding:6px 9px;border:1px solid #d8dee9;border-radius:9px;background:rgba(255,255,255,.92);box-shadow:0 6px 16px rgba(15,23,42,.06);font-size:.72rem;font-weight:700;color:#64748b;pointer-events:none}.competency-map__empty{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:18px 24px;border:1px solid #d8dee9;border-radius:0 0 18px 18px;background:#f8fafc;color:#475569}.competency-map__empty strong{color:#166534}.competency-map--global{max-width:1180px;margin-top:26px}.competency-map--global .competency-map__host{height:640px}.competency-map__host .react-flow__node{cursor:grab;box-shadow:0 8px 18px rgba(15,23,42,.08)}.competency-map__host .react-flow__node.dragging,.competency-map__host .react-flow__node:active{cursor:grabbing}.competency-map__host .react-flow__pane{cursor:grab}.competency-map__fallback-edges{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.competency-map__fallback-edge{fill:none;stroke:#64748b;stroke-width:2}.competency-map__fallback-edge--recommended{stroke-dasharray:7 5;opacity:.72}.competency-map__fallback-edge--reinforcement{stroke-dasharray:2 6;opacity:.55}.competency-map__fallback-node{position:absolute;box-sizing:border-box;min-height:68px;padding:11px 12px;border:2px solid #94a3b8;border-radius:12px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:.9rem;font-weight:750;line-height:1.25;color:#172033;text-decoration:none;box-shadow:0 8px 18px rgba(15,23,42,.08);z-index:1}.competency-map__fallback-node:hover,.competency-map__fallback-node:focus{outline:3px solid rgba(124,58,237,.18);z-index:2}@media(max-width:760px){.competency-map{padding:0 12px;margin-top:26px}.competency-map__heading{padding:18px 18px 14px}.competency-map__legend{padding:10px 18px 14px}.competency-map__host{height:390px}.competency-map--global .competency-map__host{height:760px}.competency-map__zoom{top:8px;right:8px}.competency-map__zoom button{height:32px;min-width:32px}.competency-map__interaction-hint{left:8px;bottom:8px;font-size:.68rem}}
