.cf-atlas-wrap{max-width:980px;margin:0 auto 16px;padding:0 8px}
.cf-atlas{width:100%;height:auto;display:block;background:#f7f1e8}
.cf-atlas-caption{margin:.5rem 0 0;color:#6a4a2d;font-style:italic;opacity:.95}

.cf-atlas-controls{display:flex;gap:8px;margin:.5rem 0}
.cf-pill{border:1px solid rgba(0,0,0,.15);border-radius:999px;padding:6px 12px;background:#fff7e9;font:600 13px/1.1 system-ui,sans-serif;cursor:pointer}
.cf-pill[aria-pressed="true"]{box-shadow:inset 0 0 0 2px #ff8c00}

/* Put this near the top, replacing the old rule */
.cf-layer { opacity: 1; transition: opacity .2s ease; }
.cf-layer.is-off,
.cf-layer.is-off * {
  opacity: 0 !important;           /* was .08 */
  pointer-events: none !important;
}


.cf-region path{
  fill:#e9d9c1;stroke:#3b2a1a;stroke-width:2;opacity:.9;
}
.cf-region:hover path{opacity:1}
.cf-label{font:700 16px/1 Georgia,serif;fill:#3b2a1a;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.cf-arcane{font:italic 14px/1 Georgia,serif;fill:#6b5542;opacity:.7}

.cf-state{fill:#eadcc7;stroke:#4a3828;stroke-width:1.5}
.cf-state-abbr{font:600 12px system-ui,sans-serif;fill:#3b2a1a}

.cf-pin circle{fill:#7a3c19;stroke:#fff;stroke-width:2}
.cf-pin.r1 circle{opacity:.7}
.cf-pin.r3 circle{opacity:.85}
.cf-pin.r5 circle{opacity:1}
.cf-pin-label{font:600 12px system-ui,sans-serif;fill:#3b2a1a;paint-order:stroke;stroke:#fbf7f1;stroke-width:3px}

.cf-atlas-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.cf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.cf-chip{border:1px solid rgba(0,0,0,.15);border-radius:999px;padding:4px 10px;background:#fff;cursor:pointer;font:600 12px system-ui,sans-serif}

.cf-compass .ring{fill:none;stroke:#3b2a1a;stroke-width:2}
.cf-compass .needle{fill:#3b2a1a}
.cf-compass .nsew{font:700 12px Georgia,serif;fill:#3b2a1a}

@media (max-width:720px){
  .cf-label{font-size:13px}
  .cf-pin-label{font-size:11px}
}

/* Subtle per-region tints (parchment family) */
.cf-region path{
  stroke:#3b2a1a; stroke-width:2; opacity:.88;
  transition:opacity .2s ease, transform .2s ease;
}
.cf-region:hover path{ opacity:1; transform:scale(1.01) }
.cf-label{ font:700 16px/1 Georgia,serif; fill:#3b2a1a; paint-order:stroke; stroke:#fbf7f1; stroke-width:3px; }

/* individual washes */
.cf-region--cascadia path{ fill:#e7dbcc; }
.cf-region--mountain-realms path{ fill:#ead8c2; }
.cf-region--cactus-frontier path{ fill:#efdcc4; }
.cf-region--great-plains path{ fill:#f2dec6; }
.cf-region--great-lakes path{ fill:#e6d7c8; }
.cf-region--old-colonies path{ fill:#eadaca; }
.cf-region--sunbelt-reaches path{ fill:#f3e0c9; }
.cf-region--swamp-and-islands path{ fill:#eedcc9; }
.cf-region--river-kingdoms path{ fill:#e9d6c2; }
.cf-region--far-north path{ fill:#e5d7c5; opacity:.75; }

/* Arcane scribbles already in your file; keeps the “old map” feel */

/* Tooltip bubble */
.cf-tip[data-title] { cursor: pointer; }
.cf-atlas-tooltip{
  position:absolute; z-index:5; pointer-events:none;
  background:#fff8ef; border:1px solid rgba(0,0,0,.15);
  padding:8px 10px; border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,.12);
  max-width:240px; font:13px/1.35 system-ui,sans-serif; color:#3b2a1a;
}
.cf-atlas-tooltip .t{font-weight:700; margin-bottom:2px}
.cf-atlas-tooltip .b{opacity:.9}

/* Draggable campfire */
#cf-campfire{ cursor:grab }
#cf-campfire.dragging{ cursor:grabbing; opacity:.95 }

/* Add these (keep both lines) */
#cf-campfire { cursor: grab; pointer-events: bounding-box; }
#cf-campfire.dragging { cursor: grabbing; opacity: .95; }
#cf-campfire * { pointer-events: none !important; }

/* Region labels (static text on the map) */
.cf-layer-regions .cf-label {
  fill:#3b2a1a;
  font:600 14px/1.1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  paint-order:stroke; stroke:#fffaf2; stroke-width:3px;
  pointer-events:none;
}

/* Locale pin labels */
.cf-layer-locales .cf-pin-label {
  fill:#3b2a1a;
  font:600 12px/1.1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  paint-order:stroke; stroke:#fffaf2; stroke-width:3px;
  pointer-events:none;
}

.cf-region path { transition: opacity .2s ease, transform .2s ease; }
.cf-region:hover path { transform: scale(1.01); opacity:1; }

/* Layer visibility: OFF really means off */
.cf-layer { opacity:1; transition:opacity .2s ease; }
.cf-layer.is-off, .cf-layer.is-off * { opacity:0 !important; pointer-events:none !important; }

.cf-layer-region-labels .cf-label { pointer-events:none; }




