.birth-country{display:inline-flex;align-items:center;gap:6px;font:12px/1.4 'Archive Sans',sans-serif;color:var(--muted);margin-top:5px}.birth-country>span:first-child{font-size:20px}.profile-heading .birth-country{font-size:15px}.portrait-editor{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:16px;margin:20px 0}.portrait-editor img{width:92px;height:92px;object-fit:cover;border-radius:50%;margin-bottom:10px}.portrait-editor .text-link{font-size:13px}.migration-intro h1{font-size:clamp(37px,4.2vw,58px)}.migration-intro{gap:18px}.migration-topbar{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--line);padding:16px 0;font-size:13px}.migration-topbar .actions{gap:18px;flex-wrap:wrap}.migration-layout{display:grid;grid-template-columns:270px minmax(0,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--white)}.migration-sidebar{padding:22px 18px;border-right:1px solid var(--line);max-height:1010px;overflow:auto}.migration-sidebar section{padding-bottom:19px;margin-bottom:19px;border-bottom:1px solid var(--line)}.migration-sidebar h2{font-size:25px}.mig-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}.mig-heading .text-link{font-size:12px}.migration-sidebar label{font-size:12px;margin-bottom:12px}.migration-sidebar select,.migration-sidebar input{font-size:13px}.migration-sidebar .checkbox{display:flex;align-items:center;gap:8px}.migration-sidebar input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--accent);margin:0}.mig-lineage{display:flex;gap:9px;align-items:center;margin:13px 0}.mig-lineage label{flex:1;margin:0;font-size:14px}.mig-lineage input[type=color]{width:25px;height:25px;padding:0;border:0;flex:none;min-height:0;cursor:pointer}.lineage-dot{width:11px;height:11px;border-radius:50%;flex:none}.mig-lineage small{color:var(--muted);font-size:11px}.mig-journey-button{display:block;border:1px solid var(--line);border-left:4px solid var(--journey-color);background:var(--paper);padding:12px;width:100%;text-align:left;border-radius:7px;margin:10px 0}.mig-journey-button.active{box-shadow:0 0 0 2px var(--journey-color);background:var(--white)}.mig-journey-button strong{display:block;font-size:13px;line-height:1.45}.mig-journey-button small{font-size:11px;color:var(--muted);display:block;margin:4px 0}.mig-sample{display:flex;align-items:center;gap:5px;font-size:11px}.mig-sample svg{flex:none}.migration-main{min-width:0}.map-wrapper{position:relative}#journey-map{height:540px;background:#dee5df;z-index:1}.map-caption{display:flex;justify-content:space-between;gap:20px;padding:12px 18px;font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--paper)}#mig-detail{padding:25px 28px;min-height:240px}.map-welcome{padding:15px 0}.map-welcome h2{font-size:32px;margin:8px 0 12px}.map-welcome p{font-size:14px;color:var(--muted)}.mig-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.mig-detail-heading h2{font-size:30px;margin:7px 0}.mig-detail-heading p{font-size:13px;color:var(--muted)}.mig-detail-heading .actions{flex-wrap:wrap;gap:10px}.mig-detail-heading button{font-size:12px}.mig-records{list-style:none;padding:0;margin:0;display:grid;gap:12px}.mig-record{border:1px solid var(--line);border-radius:7px;padding:16px;display:grid;grid-template-columns:28px 1fr;gap:12px}.mig-record .record-index{background:var(--paper);border:1px solid var(--line);border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:12px}.mig-record h3{font-family:inherit;font-size:15px;line-height:1.5;letter-spacing:0;font-weight:700}.mig-record h3 button{padding:0;background:none;border:0;text-align:left}.mig-record p{font-size:13px;margin:5px 0;white-space:pre-line}.mig-record .record-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.mig-record .record-actions button,.mig-record .record-actions a{font-size:12px}.precision-label{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.mig-origin{padding:13px;background:var(--paper);border-left:3px solid var(--accent);font-size:13px;margin-bottom:15px}.mig-marker{background:none;border:0}.mig-marker svg{filter:drop-shadow(0 1px 2px #0008);overflow:visible}.mig-marker text{font:700 28px sans-serif;paint-order:stroke;stroke:#fff;stroke-width:3;fill:#1e3033}.leaflet-popup-content{font:13px/1.6 'Archive Sans',sans-serif;max-height:320px;overflow:auto}.leaflet-popup-content h3{font:700 16px/1.4 'Archive Sans',sans-serif;margin:7px 0}.leaflet-popup-content p{margin:8px 0;white-space:pre-line}.leaflet-popup-content .text-link{color:#76374a}.leaflet-container a{color:#405a71}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--white);color:var(--ink)}.leaflet-tooltip{background:var(--white);color:var(--ink)}.map-mode{position:absolute;left:14px;right:14px;bottom:20px;background:var(--white);padding:13px;z-index:700;box-shadow:0 4px 18px #0003;border:1px solid var(--line);border-radius:7px;display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:13px}.mig-dialog{width:min(850px,96vw)}.mig-dialog .dialog-body{max-height:calc(90vh - 180px)}.mig-dialog .dialog-footer{align-items:center;flex-wrap:wrap;background:var(--paper)}.mig-dialog .form-message{flex:1;font-size:13px;min-width:150px}.mig-dialog .form-grid{grid-template-columns:1fr 1fr}.mig-dialog h3{font-size:23px;margin:18px 0 12px}.mig-dialog .hint{font-size:12px;color:var(--muted);margin:8px 0 18px}.mig-dialog .inline-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0}.mig-dialog .inline-actions .button{font-size:12px}.mig-dialog input[type=color]{height:36px;padding:2px}.mig-style-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:7px;margin:12px 0 24px}.mig-style-choice{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:8px 3px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}.mig-style-choice[aria-pressed=true]{border:2px solid var(--accent);background:var(--pale)}.mig-style-choice small{font-size:9px;line-height:1.2;max-width:75px}.mig-pattern-grid{grid-template-columns:repeat(4,1fr)}.mig-library-count{font-size:13px;color:var(--muted);margin:10px 0}.mig-shape-builder{display:grid;grid-template-columns:200px 1fr;gap:24px}.mig-shape-board{background-color:var(--paper);background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:20px 20px;width:200px;height:200px;border:1px solid var(--line);cursor:crosshair;touch-action:none}.mig-shape-board svg{width:100%;height:100%}.mig-region-item{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.mig-region-item p{font-size:12px;color:var(--muted);margin:5px 0}.mig-geocode-results button{display:block;text-align:left;padding:10px;border:1px solid var(--line);background:var(--paper);width:100%;font-size:12px;margin:5px 0;border-radius:4px}.mig-danger{color:#ac4057!important}.mig-help-content p,.mig-help-content li{font-size:14px;margin-bottom:13px}.mig-empty{font-size:13px;color:var(--muted);padding:18px 0}.mig-note{padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:5px;font-size:12px;margin:10px 0}.migration-main input,.migration-main button{max-width:100%}.mig-region-preview{height:260px;background:#dee5df}.mig-count{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.migration-layout{grid-template-columns:230px 1fr}.migration-topbar{align-items:flex-start;flex-direction:column}.header-inner{gap:18px}.primary-nav{gap:15px}}@media(max-width:800px){.migration-layout{grid-template-columns:1fr}.migration-sidebar{max-height:330px;border-right:0;border-bottom:1px solid var(--line)}#journey-map{height:440px}.migration-topbar .actions{gap:15px}.map-caption{flex-direction:column;gap:5px}.mig-detail-heading{flex-direction:column}.mig-style-grid{grid-template-columns:repeat(5,1fr)}.mig-pattern-grid{grid-template-columns:repeat(3,1fr)}.mig-shape-builder{grid-template-columns:1fr}.mig-dialog .dialog-body{padding:20px}.mig-dialog .form-grid{grid-template-columns:1fr}.mig-detail-heading h2{font-size:27px}#mig-detail{padding:20px}.map-mode .button{font-size:11px}.migration-intro .actions .button{font-size:12px}}
/* The map and atlas share a bounded, user-adjustable pane. */
.migration-layout.mig-has-splitter{--mig-pane-height:max(460px,calc(100dvh - 96px));align-items:start}
.migration-main.mig-resizable{height:var(--mig-pane-height);display:flex;flex-direction:column;overflow-anchor:none;scroll-margin-top:48px}
.mig-resizable>.map-wrapper{height:var(--mig-map-height,50%);flex:none;min-height:0}
.mig-resizable #journey-map{height:100%}
.mig-resizable>.map-caption{flex:none;padding:9px 18px}
.mig-resizable>.mig-atlas-panel{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.mig-resizable>.mig-atlas-panel[hidden]{display:none}
.migration-layout.mig-has-splitter>.migration-sidebar{height:var(--mig-pane-height);max-height:var(--mig-pane-height);min-height:0}
.mig-splitbar{display:flex;align-items:stretch;flex:none;min-height:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);gap:12px;padding-right:16px;z-index:2}
.mig-splitbar[hidden]{display:none}
#mig-splitter{display:flex;align-items:center;justify-content:center;gap:10px;flex:1;min-width:70px;padding:9px 12px;cursor:ns-resize;touch-action:none;user-select:none;color:var(--muted)}
#mig-splitter:hover,#mig-splitter:focus-visible{background:var(--pale);color:var(--accent)}
#mig-splitter:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}
.mig-split-grip{display:block;width:34px;height:7px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;flex:none;border-radius:1px}
.mig-split-hint{font-size:11px}
#mig-toggle-atlas{font-size:12px;white-space:nowrap;min-height:38px;padding:5px 2px}
.mig-split-dragging,.mig-split-dragging *{cursor:ns-resize!important;user-select:none!important}
.mig-place-search{position:relative;flex:none;padding:13px 16px 8px;background:var(--white);border-bottom:1px solid var(--line);z-index:800;margin:0}
.mig-place-search>label{font-size:12px;font-weight:650;display:block;margin-bottom:6px}
.mig-place-search-row{display:flex;gap:10px;align-items:center}
.mig-place-search-row input{flex:1;min-width:0;font-size:13px;min-height:40px;padding:8px 12px;margin:0}
.mig-place-search-row button{flex:none;min-height:40px;margin:0}
.mig-place-search .mig-place-status{font-size:11px;color:var(--muted);line-height:1.5;margin:6px 0 0}
.mig-place-results{position:absolute;top:100%;left:12px;right:12px;max-height:min(320px,45vh);overflow:auto;overscroll-behavior:contain;background:var(--white);border:1px solid var(--line);box-shadow:0 6px 20px #0003;border-radius:0 0 8px 8px;z-index:800}
.mig-place-result{display:block;width:100%;padding:12px 14px;border:0;border-bottom:1px solid var(--line);text-align:left;font-size:13px;line-height:1.5;background:var(--white);color:var(--ink)}
.mig-place-result:hover,.mig-place-result:focus-visible{background:var(--pale);outline:2px solid var(--accent);outline-offset:-2px}
.mig-search-pin{background:none;border:0;filter:drop-shadow(0 2px 3px #0005)}
@media(max-width:800px){.migration-layout.mig-has-splitter>.migration-sidebar{height:auto;max-height:330px}.mig-splitbar{min-height:44px;padding-right:12px;gap:5px}#mig-toggle-atlas{min-height:44px;font-size:11px}.mig-split-hint{display:none}.mig-place-search{padding:12px 12px 7px}.mig-place-search-row{gap:7px}.mig-resizable>.map-caption{padding:8px 12px;font-size:10px}}
/* Keep map overlays in the archive theme even when Leaflet's CSS loads later. */
#journey-map .leaflet-popup-content-wrapper,
#journey-map .leaflet-popup-tip,
#journey-map .leaflet-tooltip {
  background: var(--surface);
  color: var(--ink);
}
#journey-map .leaflet-popup-content-wrapper,
#journey-map .leaflet-tooltip {
  border: 1px solid var(--line);
}
#journey-map .leaflet-popup-content a:not(.button) {
  color: var(--accent);
}
#journey-map .leaflet-popup-content a:not(.button):hover {
  color: var(--accent-dark);
  text-decoration: underline;
}
#journey-map .leaflet-popup-content .button {
  background: var(--accent);
  color: var(--on-accent);
}
#journey-map .leaflet-popup-content .button:hover {
  background: var(--accent-dark);
}
#journey-map .leaflet-popup-content .button.secondary {
  background: transparent;
  border-color: var(--control-border);
  color: var(--ink);
}
#journey-map .leaflet-popup-content .button.secondary:hover,
#journey-map .jr-cluster-record:hover,
#journey-map .jr-cluster-record:focus-visible {
  background: var(--surface-soft);
  color: var(--ink);
}
#journey-map .leaflet-popup-close-button {
  color: var(--muted);
}
#journey-map .leaflet-popup-close-button:hover,
#journey-map .leaflet-popup-close-button:focus-visible {
  color: var(--ink);
  background: var(--surface-soft);
  border-radius: 0 10px 0 4px;
}
#journey-map .leaflet-popup :is(a, button):focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: -2px;
}
#journey-map .leaflet-tooltip-top::before { border-top-color: var(--surface); }
#journey-map .leaflet-tooltip-bottom::before { border-bottom-color: var(--surface); }
#journey-map .leaflet-tooltip-left::before { border-left-color: var(--surface); }
#journey-map .leaflet-tooltip-right::before { border-right-color: var(--surface); }
