/* Passage Scout UI, branded to the Falconry Journal Pro site: dark slate
   ground, amber accent, sans type. The theme button toggles only the map
   basemap; the UI chrome stays dark. */
:root{
  --bg:#020617; --surface:rgba(2,6,23,0.88); --ink:#f8fafc; --ink2:#94a3b8; --ink3:#64748b;
  --line:rgba(51,65,85,0.6); --accent:#f59e0b; --accent-hover:#fbbf24; --accent-ink:#0f172a;
  --chip:rgba(30,41,59,0.8); --mark:#34d399;
}
*{box-sizing:border-box}
html,body{margin:0;height:100%}
body{background:var(--bg);color:var(--ink);
  font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}
#map{position:absolute;inset:0}
.panel{position:absolute;top:14px;left:14px;z-index:10;width:296px;max-height:calc(100% - 28px);
  overflow-y:auto;background:var(--surface);backdrop-filter:blur(10px);
  border:1px solid var(--line);border-radius:16px;padding:16px 16px 10px;
  display:flex;flex-direction:column;gap:14px}
.panel header h1{font-size:20px;font-weight:700;margin:0;letter-spacing:-0.01em}
.eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin:0 0 2px}
.label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin:0 0 6px}
.panel section{margin:0}
.chips{display:flex;flex-wrap:wrap;gap:5px}
.chip{border:1px solid var(--line);background:var(--chip);color:var(--ink2);border-radius:999px;
  padding:3px 10px;font-size:12px;cursor:pointer;transition:color .15s,border-color .15s}
.chip:hover{color:var(--ink)}
.chip b{font-family:ui-monospace,Menlo,monospace;font-size:11px;font-weight:600;color:var(--ink3)}
.chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.chip.on b{color:var(--accent-ink)}
.chip:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.row{display:flex;gap:8px;align-items:baseline;padding:3px 0;cursor:pointer;color:var(--ink)}
.row em{color:var(--ink3);font-style:normal;font-size:12px}
.row input{accent-color:var(--accent)}
.btnrow{display:flex;gap:8px}
.btn{border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);
  border-radius:10px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;
  transition:background .15s}
.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn.ghost{background:transparent;color:var(--ink2);border-color:var(--line)}
.btn.ghost:hover{color:var(--ink);background:var(--chip)}
.btn.armed{outline:2px solid var(--accent);outline-offset:2px}
.hint{font-size:12px;color:var(--ink3);margin:8px 0 0}
.panel footer{border-top:1px solid var(--line);padding-top:8px;font-size:11px;color:var(--ink3)}
.panel footer p{margin:0 0 6px}
.panel footer a{color:var(--accent);text-decoration:none}
.panel footer a:hover{color:var(--accent-hover)}
.floatbtn{position:absolute;top:14px;right:52px;z-index:9;width:32px;height:32px;
  border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);
  font-size:15px;cursor:pointer;backdrop-filter:blur(10px)}
.maplibregl-popup-content{background:#0f172a;color:var(--ink);border:1px solid var(--line);
  border-radius:12px;padding:10px 12px;font:13px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#0f172a}
.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:#0f172a}
.maplibregl-popup-close-button{color:var(--ink2)}
.pop b{font-family:ui-monospace,Menlo,monospace}
.pop .juv{display:inline-block;background:var(--accent);color:var(--accent-ink);
  border-radius:4px;padding:0 6px;font-size:11px;margin-left:4px;font-weight:600}
.pop a{color:var(--accent)}
.pop input{width:100%;border:1px solid var(--line);border-radius:8px;padding:4px 8px;
  background:rgba(2,6,23,0.6);color:var(--ink);font-size:13px;margin:6px 0}
.pop .mini{font-size:12px;border:1px solid var(--line);background:var(--chip);color:var(--ink);
  border-radius:8px;padding:3px 10px;cursor:pointer;margin-right:6px}
.pop .mini.danger{color:#f2b8b5}
.linklike{border:0;background:none;color:var(--accent);font-size:12px;padding:0;
  cursor:pointer;text-decoration:underline}
.linklike:hover{color:var(--accent-hover)}
.modal-back{position:absolute;inset:0;z-index:30;background:rgba(2,6,23,0.7);
  display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px)}
.modal-back[hidden]{display:none}
.modal{background:#0f172a;color:var(--ink);border:1px solid var(--line);border-radius:16px;
  max-width:560px;max-height:calc(100% - 40px);overflow-y:auto;padding:24px 26px}
.modal h2{font-size:20px;font-weight:700;margin:0 0 4px;letter-spacing:-0.01em}
.modal h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);
  margin:18px 0 6px}
.modal p{margin:0;font-size:14px;line-height:1.65;color:var(--ink2)}
.modal p strong{color:var(--ink)}
.modal .btn{margin-top:20px}
.panel header{position:relative}
.panelclose{position:absolute;top:-6px;right:-6px;width:28px;height:28px;border:0;border-radius:8px;
  background:transparent;color:var(--ink3);font-size:20px;line-height:1;cursor:pointer}
.panelclose:hover{color:var(--ink);background:var(--chip)}
.paneltoggle{position:absolute;top:14px;left:14px;z-index:11;width:40px;height:40px;
  border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);
  font-size:18px;cursor:pointer;backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center}
.paneltoggle:hover{color:var(--accent)}
body.panel-collapsed .panel{display:none}
body.panel-collapsed .paneltoggle{display:flex}
.pop .mini.maps{color:var(--accent-ink);background:var(--accent);border-color:var(--accent);text-decoration:none;display:inline-block}
.pop .actions{display:flex;flex-wrap:wrap;gap:6px 0}
.loaderr{position:absolute;left:50%;top:70px;transform:translateX(-50%);z-index:20;max-width:min(420px,calc(100% - 28px));
  background:#3b1d1d;color:#fde2e2;border:1px solid #7f1d1d;border-radius:12px;padding:10px 14px;font-size:13px}
.loaderr[hidden]{display:none}
.loaderr a{color:var(--accent)}
.markfab{position:absolute;left:14px;bottom:40px;z-index:9;width:48px;height:48px;display:none;
  align-items:center;justify-content:center;border:1px solid var(--accent);border-radius:14px;
  background:var(--accent);color:var(--accent-ink);font-size:28px;line-height:1;font-weight:600;cursor:pointer;
  box-shadow:0 4px 14px rgba(2,6,23,0.4)}
.markfab.armed{background:var(--accent-ink);color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}
@media (max-width:640px){
  .panel{width:calc(100% - 28px);max-height:60%}
  .loaderr{position:absolute;left:50%;top:70px;transform:translateX(-50%);z-index:20;max-width:min(420px,calc(100% - 28px));
  background:#3b1d1d;color:#fde2e2;border:1px solid #7f1d1d;border-radius:12px;padding:10px 14px;font-size:13px}
.loaderr[hidden]{display:none}
.loaderr a{color:var(--accent)}
.markfab{display:flex}
  /* keep the theme toggle clear of the panel's close button: tuck it under the map controls */
  .floatbtn{top:auto;bottom:40px;right:10px}
}
