/* One shared compass: read from sources, propose in chat, write through review. */
.hero .node-awork { left:2.8%; top:40.5%; }
.hero .node-hellohq { left:8.1%; top:66.3%; width:15.5%; }
.ai-destination { left:70.5%; }
.ai-logo-row .slack-entry { border-color:#ddd3df; }
.mcp-label { gap:8px; color:#6c7d60; }
.mcp-label>span { color:#acb69d; width:auto; height:auto; background:none; }
.writeback-routes { opacity:.64; }
.writeback-particles { opacity:.86; }
.map-approval {
  position:absolute;
  z-index:3;
  left:34.8%; top:84.7%;
  transform:translate(-50%,-50%);
  width:19.5%; min-width:178px; max-width:240px;
  display:flex; align-items:center; justify-content:center; gap:9px;
  padding:13px 12px;
  border:1px solid #d2c9ac; border-radius:11px;
  background:#faf9f1;
  box-shadow:0 5px 18px #4d472407;
  color:#555e3e;
  transition:border-color .2s,box-shadow .2s;
}
.map-approval:hover { border-color:#9caa7b; box-shadow:0 5px 20px #4d47240d; }
.map-approval:focus-visible { outline:2px solid #657b4e; outline-offset:5px; }
.map-approval strong,.map-approval small { display:block; font-family:var(--font-brand); white-space:nowrap; }
.map-approval strong { font-size:12px; font-weight:500; line-height:1.4; }
.map-approval small { margin-top:4px; font-size:9px; line-height:1.4; color:#8c8c70; }
.approval-symbol { display:grid; place-items:center; color:#8c9266; }
.approval-symbol .icon { width:22px; height:22px; }
.approval-arrow { width:11px; height:11px; color:#9a9f83; flex-shrink:0; }
.map-event { left:61%; top:90%; max-width:34%; }
@media(max-width:1100px) {
  .map-approval { min-width:164px; gap:7px; padding:10px 9px; }
  .map-approval strong { font-size:10.5px; }
  .map-approval small { font-size:8px; }
  .approval-symbol .icon { width:19px; height:19px; }
  .approval-arrow { width:9px; height:9px; }
  .map-event { left:63%; }
}
@media(max-width:850px) and (min-width:651px) {
  .ai-logo-row { gap:5px; }
  .ai-logo-row>span { width:31px; height:35px; }
  .map-approval { min-width:150px; padding:10px 8px; gap:6px; }
  .map-approval strong { font-size:9.5px; }
  .map-approval small { font-size:7.5px; }
  .approval-arrow { display:none; }
  .map-event { display:none; }
}
@media(max-width:650px) {
  .knowledge-map { height:450px; }
  .mobile-map { mask-image:none; }
  .hero .source-node { width:30%; top:4%; }
  .hero .node-sharepoint { left:0; }
  .hero .node-awork { left:35%; }
  .hero .node-hellohq { left:70%; top:4%; }
  .map-core { top:47%; }
  .ai-destination { left:50%; top:82.2%; }
  .ai-logo-row { gap:9px; }
  .ai-logo-row>span { width:42px; height:43px; }
  .ai-logo-row img { width:26px; height:26px; }
  .mcp-label { margin-top:11px; font-size:11px; }
  .map-approval { left:50%; top:70.9%; width:216px; min-width:0; max-width:none; padding:12px 14px; gap:10px; }
  .map-approval strong { font-size:11.5px; }
  .map-approval small { font-size:9px; margin-top:3px; }
  .approval-symbol .icon { width:22px; height:22px; }
  .approval-arrow { width:11px; height:11px; }
  .map-event { display:none; }
  .hero-scroll { margin-top:7px; }
}
@media(max-width:375px) {
  .ai-logo-row { gap:7px; }
  .ai-logo-row>span { width:39px; height:41px; }
  .ai-logo-row img { width:24px; height:24px; }
}

.map-more-sources { position:absolute; left:8.1%; top:83%; z-index:4; display:inline-flex; align-items:center; gap:7px; padding:8px 10px; border:1px dashed #b7c6a9; border-radius:8px; color:#64765b; background:#f6f6f0ed; font:inherit; font-size:11px; cursor:pointer; }
.map-more-sources .icon { width:13px; height:13px; }
.map-more-sources:hover { background:#eaf0df; border-color:#829972; }
.map-more-sources:focus-visible { outline:2px solid #698552; outline-offset:3px; }
@media(max-width:650px) { .map-more-sources { left:50%; top:24%; transform:translateX(-50%); padding:6px 10px; font-size:10px; white-space:nowrap; } }
