:root{--navy:#102a43;--navy2:#0b1f33;--burgundy:#7a1f2b;--ivory:#f8f1e7;--gold:#b58a4a;--gold2:#e4c27a;--muted:#c8d2dc}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden;background:#061321;color:var(--ivory);font-family:Georgia,"Times New Roman",serif}.atlas-header{height:84px;display:flex;align-items:center;gap:25px;padding:10px 20px;background:linear-gradient(90deg,var(--navy),#162f4a 45%,var(--burgundy));border-bottom:2px solid var(--gold);position:relative;z-index:20}.atlas-header>div{min-width:320px}.atlas-header h1{margin:0;text-transform:uppercase;font-size:23px;letter-spacing:.04em}.atlas-header p{margin:4px 0 0;color:#f3d58a;font-size:12px;letter-spacing:.07em}.atlas-header nav{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.atlas-header a{color:#fffaf0;text-decoration:none;text-transform:uppercase;font:11px Arial,sans-serif;letter-spacing:.06em;padding:7px 8px;border-bottom:2px solid transparent}.atlas-header a:hover,.atlas-header a.active{color:#f3d58a;border-color:#f3d58a}.atlas-header .ask-link{background:var(--burgundy);border:1px solid var(--gold);border-radius:5px}.atlas-app{height:calc(100vh - 84px);display:grid;grid-template-columns:390px 1fr 0;transition:grid-template-columns .25s ease}.atlas-app.panel-closed{grid-template-columns:54px 1fr 0}.atlas-app.profile-open{grid-template-columns:390px 1fr 410px}.atlas-app.panel-closed.profile-open{grid-template-columns:54px 1fr 410px}.research-panel{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--navy),var(--navy2));border-right:1px solid var(--gold);z-index:5}.panel-toggle{position:absolute;top:12px;left:10px;width:34px;height:40px;border:1px solid var(--gold2);border-radius:7px;background:var(--burgundy);color:#fff;font-size:25px;z-index:10;cursor:pointer}.panel-inner{height:100%;overflow:auto;padding:16px 18px 25px 62px}.atlas-app.panel-closed .panel-inner{display:none}.atlas-app.panel-closed .panel-toggle{transform:rotate(180deg)}.panel-inner h2{margin:0 0 10px;color:#f3d58a;text-transform:uppercase;font-size:18px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:13px}.metrics span{padding:7px 4px;text-align:center;border:1px solid rgba(228,194,122,.4);border-radius:8px;font:10px Arial,sans-serif;color:var(--muted)}.metrics strong{display:block;color:#fff;font-size:17px}.panel-inner label{display:block;margin:10px 0 5px;color:#f3d58a;text-transform:uppercase;font:11px Arial,sans-serif;letter-spacing:.06em}.panel-inner select,.panel-inner input{width:100%;padding:10px;border:1px solid var(--gold);border-radius:8px;background:#173b5c;color:#fff}.search-row{display:grid;grid-template-columns:1fr 38px;gap:5px}.search-row button{border:1px solid var(--gold);border-radius:8px;background:#173b5c;color:#f3d58a;font-size:21px}.coverage-note{font:12px/1.45 Arial,sans-serif;color:var(--muted)}.result-summary{padding:9px 0;border-top:1px solid rgba(228,194,122,.35);font:12px Arial,sans-serif;color:#f3d58a}.record-list{display:grid;gap:6px}.record-item{padding:9px;border:1px solid rgba(228,194,122,.32);border-radius:9px;background:rgba(255,255,255,.06);color:#fff;text-align:left;cursor:pointer}.record-item:hover{border-color:var(--gold2);background:rgba(181,138,74,.16)}.record-item strong{display:block;font:15px Georgia,serif}.record-item span{font:11px/1.4 Arial,sans-serif;color:var(--muted)}.map-wrap{position:relative;min-width:0}.map-wrap #map{position:absolute;inset:0;background:linear-gradient(135deg,#668064,#234457)}.map-status{position:absolute;top:14px;left:50%;transform:translateX(-50%);z-index:3;max-width:74%;padding:8px 12px;border:1px solid var(--gold);border-radius:7px;background:rgba(16,42,67,.9);font:12px Arial,sans-serif;text-align:center}.map-fallback{position:absolute;inset:0;padding:70px 30px 30px;overflow:auto;background:linear-gradient(145deg,#385464,#829276)}.fallback-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.fallback-bubble{border:1px solid #fff;border-radius:9px;background:rgba(16,42,67,.9);color:#fff;padding:10px;cursor:pointer}.fallback-bubble b{display:block;color:#f3d58a;font-size:19px}.profile-panel{position:relative;overflow:auto;background:linear-gradient(180deg,var(--navy),#081927);border-left:1px solid var(--gold);box-shadow:-8px 0 24px rgba(0,0,0,.3)}.profile-close{position:absolute;right:10px;top:8px;background:none;border:0;color:var(--gold2);font-size:30px;cursor:pointer}.profile-hero{padding:28px 40px 20px 20px;background:linear-gradient(120deg,var(--navy),var(--burgundy));border-bottom:1px solid var(--gold)}.profile-hero h2{margin:0;color:#f3d58a;font-size:27px}.profile-hero p{margin:6px 0 0;color:#d9edff}.profile-body{padding:14px 18px}.profile-field{display:grid;grid-template-columns:130px 1fr;gap:9px;padding:8px 0;border-bottom:1px solid rgba(228,194,122,.24)}.profile-field dt{color:#f3d58a;text-transform:uppercase;font:10px Arial,sans-serif;letter-spacing:.05em}.profile-field dd{margin:0;color:#fff;font-size:14px;line-height:1.4}.maplibregl-popup-content{font-family:Georgia,serif;color:#102a43;border:1px solid var(--gold)}@media(max-width:900px){.atlas-header{height:68px;padding:8px 12px}.atlas-header>div{min-width:0}.atlas-header h1{font-size:17px}.atlas-header p{display:none}.atlas-header nav a:not(.active):not(.ask-link){display:none}.atlas-app,.atlas-app.profile-open{height:calc(100vh - 68px);grid-template-columns:1fr}.research-panel{position:absolute;left:0;top:0;bottom:0;width:min(390px,92vw);transform:translateX(0);transition:transform .25s}.atlas-app.panel-closed .research-panel{transform:translateX(calc(-100% + 54px))}.profile-panel{position:absolute;right:0;top:0;bottom:0;width:min(410px,92vw);transform:translateX(100%);transition:transform .25s}.atlas-app.profile-open .profile-panel{transform:translateX(0)}}
/* Atlas-page explicit search action. */
.search-row{grid-template-columns:1fr auto 38px}.search-row #atlas-search-button{padding:0 12px;background:var(--burgundy);color:#fff;font:12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}
.search-row #atlas-question-button{padding:0 12px;background:var(--burgundy);color:#fff;font:12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}.atlas-search-divider{border:0;border-top:1px solid rgba(228,194,122,.42);margin:18px 0}
/* Closed-panel control overlays the map; it does not reserve a side strip. */
.atlas-app.panel-closed{grid-template-columns:0 1fr 0}
.atlas-app.panel-closed.profile-open{grid-template-columns:0 1fr 410px}

/* Keep the two open side panels aligned on desktop. */
@media(min-width:901px){
  .research-panel,.profile-panel{height:100%;min-height:0}
}
.atlas-app.panel-closed .research-panel{overflow:visible;border-right:0}
.atlas-app.panel-closed .panel-toggle{left:8px}
/* Header control preserves map space on compact screens. */
.atlas-header{transition:height .24s ease,padding .24s ease,border-width .24s ease}
body.atlas-header-hidden .atlas-header{height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;overflow:hidden}
body.atlas-header-hidden .atlas-app{height:100vh}

/* The Atlas name follows the home-page identity: lower case and warm gold. */
.atlas-header h1{color:#e2bb63;text-transform:none;font-size:16px!important;line-height:1.1!important;letter-spacing:.02em!important}
.atlas-header>div{min-width:270px}
.atlas-header nav{flex-wrap:wrap;white-space:normal;row-gap:2px}
.atlas-header a{color:#d9ad55;text-transform:none;font:400 12px Arial,sans-serif;letter-spacing:normal;padding-bottom:3px}
.atlas-header a:hover,.atlas-header a.active{color:#fff;border-bottom:1px solid #d8aa43}
.atlas-destination-walker{width:36px;height:46px;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 1px 1px rgba(255,255,255,.76)) drop-shadow(0 2px 2px rgba(0,0,0,.28))}.atlas-destination-walker svg{display:block;width:100%;height:100%}.atlas-destination-walker:focus-visible{outline:3px solid #e4c27a;outline-offset:3px;border-radius:4px}
.atlas-foreign-allies-marker{display:grid;justify-items:center;gap:1px;width:166px;padding:0;border:0;background:transparent;color:#071d31;cursor:pointer;filter:drop-shadow(0 1px 1px rgba(255,255,255,.78)) drop-shadow(0 2px 3px rgba(0,0,0,.35))}.atlas-foreign-allies-marker svg{display:block;width:42px;height:42px}.atlas-foreign-allies-marker span{display:grid;gap:1px;padding:2px 4px;border-radius:3px;background:rgba(248,241,231,.93);font:700 9px Arial,sans-serif;letter-spacing:.04em;white-space:nowrap}.atlas-foreign-allies-marker small{font:600 7px Arial,sans-serif;letter-spacing:0;text-transform:none}.atlas-foreign-allies-marker:focus-visible{outline:3px solid #e4c27a;outline-offset:3px;border-radius:4px}

/* Keep the original full-width Atlas header layout, using the home page's navy. */
.atlas-header{background:#071d31}

/* The Atlas side panels share the same navy as the home-page header; map colors stay unchanged. */
.research-panel,.profile-panel,.profile-hero{background:#071d31}
.experimental-research{margin:14px 0;padding:12px;border:1px solid rgba(228,194,122,.55);border-radius:9px;background:rgba(181,138,74,.1)}.experimental-research h3{margin:0 0 6px;color:#f3d58a;font:700 12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.05em}.experimental-research p{margin:0 0 8px;color:var(--muted);font:12px/1.4 Arial,sans-serif}.experimental-research label{margin:8px 0 4px}.wiki-row{display:flex;gap:5px}.wiki-row input{min-width:0}.wiki-row button{border:1px solid var(--gold);border-radius:7px;background:var(--burgundy);color:#fff;padding:0 9px;cursor:pointer}.wiki-row button:disabled{opacity:.6}.wiki-result{overflow-wrap:anywhere}.wiki-result a{color:#f3d58a}
.wiki-recent{margin-top:10px;font:12px/1.4 Arial,sans-serif}.wiki-recent strong{display:inline-block;margin-right:8px;color:#f3d58a}.wiki-recent button{margin:4px 4px 0 0;border:1px solid rgba(228,194,122,.55);border-radius:6px;background:transparent;color:#fff;padding:3px 7px;cursor:pointer}.wiki-recent>button{float:right;margin-top:0}.wiki-recent div{clear:both;padding-top:3px;color:var(--muted)}

/* Do not animate the map's width while the record panel opens or closes. */
.atlas-app{transition:none}
.panel-toggle{will-change:transform}
.ask-another-link{display:inline-block;margin:0 0 18px;padding:10px 14px;border:1px solid var(--gold);border-radius:7px;background:var(--burgundy);color:#fff;text-decoration:none;text-transform:uppercase;font:700 11px Arial,sans-serif;letter-spacing:.06em}.ask-another-link:hover,.ask-another-link:focus{color:#f3d58a;border-color:var(--gold2);outline:2px solid var(--gold2);outline-offset:2px}
.atlas-loading{position:fixed;inset:108px 0 0;z-index:19;display:grid;place-items:center;background:#071d31;color:#fff;animation:atlas-loading-dismiss .2s ease .9s forwards}.atlas-loading>div{display:grid;justify-items:center;gap:8px;padding:24px 30px;border:1px solid rgba(228,194,122,.55);border-radius:10px;background:rgba(16,42,67,.96);box-shadow:0 12px 34px rgba(0,0,0,.28)}.atlas-loading strong{color:#f3d58a;font-size:20px}.atlas-loading span{font:13px Arial,sans-serif;color:var(--muted)}.atlas-loading-dots{display:flex;gap:7px;margin-top:4px}.atlas-loading-dots i{width:8px;height:8px;border-radius:50%;background:var(--gold2);animation:atlas-loading-pulse 1.05s ease-in-out infinite}.atlas-loading-dots i:nth-child(2){animation-delay:.14s}.atlas-loading-dots i:nth-child(3){animation-delay:.28s}@keyframes atlas-loading-pulse{0%,70%,100%{transform:scale(.72);opacity:.45}35%{transform:scale(1.25);opacity:1}}@keyframes atlas-loading-dismiss{to{opacity:0;visibility:hidden;pointer-events:none}}@media(max-width:900px){.atlas-loading{inset:76px 0 0}}@media(prefers-reduced-motion:reduce){.atlas-loading-dots i{animation:none}}
.atlas-loading{animation:none;opacity:1;visibility:visible;transition:opacity .2s ease,visibility .2s ease}.atlas-loading.is-ready{opacity:0;visibility:hidden;pointer-events:none}
.atlas-state-summary-bubble{background:#0c4d8f!important}
.atlas-app{--profile-width:340px}
@media(min-width:901px){.atlas-app:not(.panel-closed){grid-template-columns:270px 1fr 0!important}.atlas-app:not(.panel-closed).profile-open{grid-template-columns:270px 1fr var(--profile-width)!important}.atlas-app.panel-closed.profile-open{grid-template-columns:0 1fr var(--profile-width)!important}}
.profile-resizer{position:absolute;z-index:30;top:0;bottom:0;left:0;width:12px;cursor:ew-resize;touch-action:none;background:transparent}
.profile-resizer::after{display:none}
.profile-resizer:hover,.profile-resizer:focus-visible,.profile-resizer.is-dragging{background:rgba(228,194,122,.08);outline:0}
.atlas-app.profile-panel-collapsed #profile-content,.atlas-app.profile-panel-collapsed .profile-close{display:none}
.atlas-app.profile-panel-collapsed .profile-resizer{width:42px}
.atlas-app.profile-panel-collapsed .profile-resizer::after{display:none}
body.atlas-resizing-profile{cursor:ew-resize;user-select:none}
.record-item:hover{background:rgba(255,255,255,.06)}
.record-item[aria-current="true"],.record-item:focus-visible{border-color:var(--gold2);background:rgba(181,138,74,.22);outline:2px solid var(--gold2);outline-offset:1px}

/* Secure desktop Atlas: Leaflet renders server-scoped map summaries only. */
.map-wrap #map.leaflet-container{font-family:Arial,sans-serif;background:#dce7d5}
.atlas-bubble{border:0;background:transparent}.atlas-bubble span{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:0;border-radius:50%;background:#0c4d8f;color:#fff;box-shadow:0 2px 8px #0008;font:700 12px Arial,sans-serif}.atlas-bubble.local span{width:32px;height:32px;border:0;background:#0c4d8f;font-size:10px}.atlas-destination-marker{border:0;background:transparent}.atlas-destination-marker b{position:absolute;right:-3px;bottom:4px;min-width:22px;padding:2px 4px;border:1px solid #e4cc80;border-radius:9px;background:#071d31;color:#fff;text-align:center;font:700 9px Arial,sans-serif}.leaflet-tooltip{font:700 12px Arial,sans-serif}.leaflet-overlay-pane .leaflet-interactive:focus,.leaflet-overlay-pane .leaflet-interactive:focus-visible{outline:none!important}.atlas-load-more{width:100%;margin:7px 0 2px;padding:10px;border:1px solid var(--gold);border-radius:8px;background:var(--burgundy);color:#fff;cursor:pointer;font:700 12px Arial,sans-serif}.profile-body .profile-image{display:block;max-width:190px;max-height:240px;margin:8px auto 16px;object-fit:contain}.profile-field dd a{color:#f3d58a}.profile-body{margin:0}.map-status[hidden]{display:none}

/* Desktop refinements: both side panels resize from their inside edges. */
.atlas-app{--research-width:270px;--profile-width:340px}.panel-toggle{display:none!important}.panel-inner{padding-left:18px}.panel-resizer{position:absolute;z-index:30;top:0;right:0;bottom:0;width:12px;cursor:ew-resize;touch-action:none;background:transparent}.panel-resizer:hover,.panel-resizer:focus-visible,.panel-resizer.is-dragging{background:rgba(228,194,122,.11);outline:0}body.atlas-resizing-research{cursor:ew-resize;user-select:none}.atlas-map-tools{display:grid!important;gap:1px;border:0!important;box-shadow:0 1px 5px rgba(0,0,0,.55)!important}.atlas-map-tools button{min-width:82px;height:30px;padding:0 8px;border:0;border-bottom:1px solid #bbb;background:#fff;color:#071d31;cursor:pointer;font:700 11px Arial,sans-serif}.atlas-map-tools button:last-child{border-bottom:0}.atlas-map-tools button:hover,.atlas-map-tools button:focus-visible{background:#f0e2b8;outline:2px solid #7a1f2b;outline-offset:-2px}.atlas-destination-marker .atlas-destination-walker{width:42px;height:54px}.atlas-destination-marker .atlas-destination-walker svg{width:42px;height:54px}
.atlas-app.panel-minimized .panel-inner{display:none}.atlas-app.panel-minimized .research-panel{overflow:visible}.profile-heading{display:flex;align-items:center;gap:16px}.profile-heading>div:last-child{min-width:0}.profile-heading h2{margin:0}.profile-place{margin:7px 0 0;color:#d9e0e5;font:12px/1.4 Arial,sans-serif}.profile-portrait{position:relative;width:98px;height:118px;flex:0 0 98px;overflow:hidden;border:1px solid rgba(228,194,122,.8);border-radius:16px;background:linear-gradient(rgba(4,14,22,.5),rgba(4,14,22,.5)),linear-gradient(135deg,rgba(255,255,255,.12) 0 33%,rgba(244,240,224,.54) 34% 45%,rgba(255,255,255,.08) 46%),linear-gradient(150deg,#86505b 0 34%,#d8d4c7 35% 62%,#42677e 63% 100%);box-shadow:inset 0 0 24px rgba(0,0,0,.18)}.portrait-arc{display:none}.portrait-head{position:absolute;left:34px;top:28px;width:37px;height:46px;border-radius:48% 48% 45% 45%;background:#071119;box-shadow:0 2px 8px rgba(0,0,0,.38)}.portrait-body{position:absolute;left:12px;bottom:-17px;width:75px;height:73px;border-radius:52% 52% 9% 9%;background:#061018;box-shadow:0 -3px 10px rgba(0,0,0,.3)}
@media(min-width:901px){.atlas-app,.atlas-app:not(.panel-closed){grid-template-columns:var(--research-width) 1fr 0!important}.atlas-app.profile-open,.atlas-app:not(.panel-closed).profile-open{grid-template-columns:var(--research-width) 1fr var(--profile-width)!important}.atlas-app.panel-closed{grid-template-columns:var(--research-width) 1fr 0!important}.atlas-app.panel-closed.profile-open{grid-template-columns:var(--research-width) 1fr var(--profile-width)!important}}

/* Keep horizontal panel resizing separate from vertical record/profile scrolling. */
.research-panel,.profile-panel{min-height:0;overflow:hidden}
.panel-inner{width:calc(100% - 12px);height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}
#profile-content{height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable}
.panel-inner,#profile-content{scrollbar-width:auto;scrollbar-color:#e4c27a #0b1f33}
.panel-inner::-webkit-scrollbar,#profile-content::-webkit-scrollbar{width:12px}
.panel-inner::-webkit-scrollbar-track,#profile-content::-webkit-scrollbar-track{background:#0b1f33}
.panel-inner::-webkit-scrollbar-thumb,#profile-content::-webkit-scrollbar-thumb{border:2px solid #0b1f33;border-radius:8px;background:#e4c27a}
.profile-close{z-index:40}
.panel-resizer,.profile-resizer{touch-action:pan-y}

/* Desktop Atlas: blue bubbles with no rings or outlines. */
.atlas-bubble,.atlas-bubble span,.atlas-bubble.local span{
  border:0!important;
  outline:0!important;
}
.atlas-bubble span,.atlas-bubble.local span{
  background:#0c4d8f!important;
}

/* 2026-09-23 desktop map controls and blue patina */
.atlas-map-tools{
  display:flex!important;
  flex-direction:row!important;
  gap:8px!important;
  margin:12px 12px 0 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.atlas-map-tools button{
  min-width:auto!important;
  height:36px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:6px!important;
  background:#173b5c!important;
  color:#f7fbff!important;
  box-shadow:0 2px 7px rgba(0,0,0,.28)!important;
  cursor:pointer!important;
  font:700 12px Arial,sans-serif!important;
}
.atlas-map-tools button:hover,
.atlas-map-tools button:focus-visible{
  background:#24577f!important;
  color:#fff!important;
  outline:2px solid #9fd0ec!important;
  outline-offset:1px!important;
}
.atlas-map-tools button[hidden]{display:none!important}

/* Dark blue bubbles: no white, gold, or other ring. */
.atlas-bubble,
.atlas-bubble span,
.atlas-bubble.local span{
  border:0!important;
  outline:0!important;
}
.atlas-bubble span,
.atlas-bubble.local span{
  background:#0c4d8f!important;
}

/* Leaflet +/- controls are intentionally removed. */
.leaflet-control-zoom{display:none!important}

/* 2026-09-23 exact desktop Atlas patina from approved reference */
.atlas-bubble,
.atlas-bubble span,
.atlas-bubble.local span {
  border:0!important;
  outline:0!important;
}
.atlas-bubble span,
.atlas-bubble.local span {
  background:#0c4d8f!important;
  color:#fff!important;
}
.leaflet-control-zoom {
  display:none!important;
}
.atlas-map-tools {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:8px!important;
  margin:12px 12px 0 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.atlas-map-tools button {
  min-width:auto!important;
  height:36px!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:6px!important;
  background:#1a3d5e!important;
  color:#fff!important;
  box-shadow:0 2px 7px rgba(0,0,0,.28)!important;
  cursor:pointer!important;
  font:700 12px Arial,sans-serif!important;
}
.atlas-map-tools button:first-child {
  width:42px!important;
  padding:0!important;
  font-size:16px!important;
}
.atlas-map-tools button:hover,
.atlas-map-tools button:focus-visible {
  background:#244f73!important;
  color:#fff!important;
  outline:2px solid #9fd0ec!important;
  outline-offset:1px!important;
}
