/* The public Kirkland Lake claims map (/kirkland-lake-claims, owner 2026-11-04) – its own styles, nothing shared with /map */
.cm-intro { padding-top:28px; }
.cm-facts { list-style:none; margin:16px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:10px; }
.cm-facts li { background:#fff; color:#17222C; border-top:3px solid #EAA521; padding:8px 14px; border-radius:4px; font-size:15px; }
.cm-facts b, .cm-app b { color:#17222C; }
.cm-app { display:grid; grid-template-columns:minmax(0, 1fr) 340px; height:min(78vh, 760px); min-height:480px; margin:22px auto 30px;
  max-width:1400px; border:1px solid #DCE1E6; background:#fff; color:#17222C; }
.cm-map { min-height:0; height:100%; background:#e9eef2; }
.cm-noscript { padding:20px; }
.cm-side { display:flex; flex-direction:column; min-height:0; border-left:1px solid #DCE1E6; font-size:14px; line-height:1.35; }
.cm-fixed { border-bottom:1px solid #DCE1E6; padding:6px 0; }
.cm-row { display:flex; align-items:center; gap:8px; padding:5px 12px; min-height:34px; box-sizing:border-box; }
.cm-row label, label.cm-row { display:flex; align-items:center; gap:8px; flex:1; min-width:0; cursor:pointer; }
.cm-row input { width:18px; height:18px; margin:0; flex:none; accent-color:#B97C0B; }
.cm-sw { display:inline-block; width:16px; height:16px; border-radius:3px; flex:none; border:1px solid rgba(0,0,0,.25); margin-right:6px; vertical-align:-3px; }
.cm-row .cm-sw { margin-right:0; }
.cm-sw-open { background:rgba(0,200,83,.35); border:1.5px dashed #00a843; }
.cm-sw-other { background:rgba(69,90,100,.25); border-color:#37474f; }
.cm-nm { flex:1; min-width:0; overflow-wrap:anywhere; }
.cm-nm small { display:block; color:#5E6B78; font-size:12px; }
.cm-ct { color:#5E6B78; font-variant-numeric:tabular-nums; flex:none; }
.cm-ours { font-weight:600; }
.cm-ours .fa { color:#c62828; }
.cm-tools { padding:10px 12px 6px; border-bottom:1px solid #DCE1E6; }
.cm-tools input { width:100%; box-sizing:border-box; padding:8px 10px; font-size:15px; border:1px solid #c5ccd3; border-radius:4px; }
.cm-btns { display:flex; gap:6px; margin-top:6px; }
.cm-btns button, .cm-zoom { font:inherit; font-size:13px; padding:4px 10px; border:1px solid #c5ccd3; background:#f4f6f8; color:#17222C; border-radius:4px; cursor:pointer; min-height:30px; }
.cm-btns button:last-child { margin-left:auto; }
.cm-zoom { padding:2px 8px; flex:none; }
.cm-list { flex:1; overflow-y:auto; min-height:0; padding:4px 0; }
.cm-list .cm-row:hover { background:#f7f5f0; }
.cm-wait { padding:12px; color:#5E6B78; }
.cm-note { margin:0; padding:8px 12px; font-size:12px; color:#5E6B78; border-top:1px solid #DCE1E6; }
.cm-pop table { border-collapse:collapse; margin:6px 0; }
.cm-pop th { text-align:left; padding:1px 10px 1px 0; color:#5E6B78; font-weight:500; vertical-align:top; }
.cm-pop td { padding:1px 0; }
.cm-tablewrap { overflow-x:auto; }
.cm-table { border-collapse:collapse; width:100%; font-size:15px; margin:10px 0 24px; }
.cm-table caption { text-align:left; font-size:13px; color:#5E6B78; padding-bottom:6px; }
.cm-table th, .cm-table td { padding:6px 10px; border-bottom:1px solid #DCE1E6; text-align:left; }
.cm-table .n { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cm-text .prose { max-width:860px; }
@media (max-width:760px) {
  .cm-app { grid-template-columns:1fr; grid-template-rows:62vh auto; height:auto; min-height:0; margin:16px 0 24px; border-left:0; border-right:0; }
  .cm-side { border-left:0; border-top:1px solid #DCE1E6; }
  .cm-list { max-height:55vh; }
  .cm-row { min-height:44px; }
  .cm-zoom { min-width:44px; min-height:40px; }
  .cm-btns button { min-height:40px; padding:4px 14px; }
}
.leaflet-tooltip.cm-ours-tip { background:#c62828; color:#fff; border:0; font-weight:700; font-size:12px; padding:3px 8px; box-shadow:0 1px 4px rgba(0,0,0,.4); }
.leaflet-tooltip.cm-ours-tip::before { display:none; }
/* the dotted leader from the label down to our northmost corner (the tooltip's offset is -30 px, plus Leaflet's 6 px) */
.leaflet-tooltip.cm-ours-tip::after { content:""; position:absolute; left:50%; top:100%; height:36px; border-left:2px dotted #d50000; }
.leaflet-tooltip.cm-ours-tip { cursor:pointer; }
.cm-ours-anchor { background:none; border:0; }
/* full screen (owner 2026-11-04: "allow for full screen"): the browser's own, or the box filling the window (iPhone Safari) */
.cm-fs { width:34px; height:34px; background:#fff; color:#17222C; font-size:18px; line-height:1; cursor:pointer; padding:0; }
.cm-fs:hover { background:#f4f4f4; }
.cm-app.cm-full { position:fixed; inset:0; z-index:10000; width:100vw; height:100vh; height:100dvh; max-width:none; margin:0; border:0; min-height:0; }
.cm-app:fullscreen { width:100vw; height:100vh; max-width:none; margin:0; border:0; }
html.cm-noscroll, html.cm-noscroll body { overflow:hidden; }
/* Close-up on Eby–Otto (owner 2026-11-04, "This is what it should show": the Property page's land-position close-up figure) */
.cm-cu-btn { background:#fff; color:#17222C; font:700 13px/1 "Segoe UI",Roboto,sans-serif; padding:9px 12px; cursor:pointer; white-space:nowrap; }
.cm-cu-btn:hover { background:#f4f4f4; }
.cm-close .leaflet-tile-pane { filter:grayscale(1) brightness(1.12) contrast(.75); opacity:.55; }
.cm-close { background:#eef0ea; }
.cm-cu { background:none; border:0; white-space:nowrap; color:#16202c; font:700 13px/1.2 "Segoe UI",Roboto,sans-serif;
  text-shadow:0 0 3px #fff, 0 0 3px #fff, 0 0 2px #fff; display:flex; align-items:center; gap:6px; }
.cm-cu i { display:inline-block; flex:none; font-style:normal; }
.cm-cu-ours span { position:absolute; left:0; top:0; transform:translate(-50%, -100%); background:#c0392b; color:#fff; text-shadow:none; font-size:15px; font-weight:800;
  letter-spacing:.02em; padding:7px 14px; border:2px solid #fff; box-shadow:0 1px 5px rgba(0,0,0,.35); cursor:pointer; }
.cm-cu-mine i { width:18px; height:18px; border-radius:50%; background:#fff; border:2px solid #4e342e; color:#4e342e; font-size:11px;
  line-height:18px; text-align:center; text-shadow:none; }
.cm-cu-mine { font-weight:600; }
.cm-cu-hole i { width:11px; height:11px; border-radius:50%; background:#16202c; border:2px solid #fff; }
.cm-cu-reed i { width:12px; height:12px; background:#ffd400; border:1.5px solid #16202c; transform:rotate(45deg); }
.cm-cu-deep i { width:13px; height:13px; border-radius:50%; background:#00b0ff; border:3px solid #ffd400; box-shadow:0 0 0 1.5px #16202c; }
.cm-cu-deep b { background:#ffd400; padding:2px 7px; border:1.5px solid #16202c; text-shadow:none; }
.cm-cu-creek { color:#0d5fa8; font-style:italic; }
.cm-cu-leg { background:rgba(22,32,44,.94); color:#e8edf2; padding:12px 14px; width:250px; font:12px/1.35 "Segoe UI",Roboto,sans-serif; }
.cm-cu-leg > b { display:block; color:#f2b134; font-size:16px; letter-spacing:.03em; text-transform:uppercase; }
.cm-cu-leg { cursor:pointer; }
.cm-cu-leg.cm-cu-leg-min { width:auto; padding:8px 12px; }
.cm-cu-leg.cm-cu-leg-min > :not(b) { display:none; }
.cm-cu-leg > small { display:block; color:#b0bac6; margin:2px 0 8px; }
.cm-cu-leg div { display:flex; gap:8px; align-items:flex-start; margin:4px 0; }
.cm-cu-leg div i { flex:none; width:22px; height:12px; margin-top:1px; font-style:normal; }
.cm-cu-leg .cm-cu-k-box { border:2px dashed #e8edf2; height:10px; }
.cm-cu-leg .cm-cu-k-mine { width:14px; height:14px; border-radius:50%; background:#fff; color:#4e342e; font-size:9px; text-align:center; line-height:14px; margin:0 4px; }
.cm-cu-leg .cm-cu-k-hole { width:9px; height:9px; border-radius:50%; background:#e8edf2; margin:2px 6px; }
.cm-cu-leg .cm-cu-k-reed { width:10px; height:10px; background:#ffd400; transform:rotate(45deg); margin:1px 6px; }
.cm-cu-leg .cm-cu-k-deep { width:10px; height:10px; border-radius:50%; background:#00b0ff; border:2px solid #ffd400; margin:0 5px; }
@media (max-width:760px) { .cm-cu-leg { display:none; } .cm-cu-btn { font-size:12px; padding:8px 10px; } }
@media (max-width:760px) {
  .cm-app.cm-full { grid-template-rows:minmax(0, 1fr) minmax(0, 42vh); }
  .cm-app.cm-full .cm-list { max-height:none; }
}
