.camp-verification-note { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-bottom: 22px; padding: 16px 18px; border-left: 4px solid var(--cyan); background: #eef8f8; color: #536c75; }
.camp-verification-note strong { color: var(--navy); }
.camp-verification-note p { max-width: 780px; margin: 6px 0 9px; line-height: 1.5; }
.camp-verification-note nav { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.camp-verification-note nav a { color: var(--blue); font-size: 11px; font-weight: 800; }
body[data-page="camps"] .camp-verification-note #campVerificationCount{display:none}
body[data-page="camps"]>.internal-aid-zones{display:none!important}
body[data-page="camps"]>.topbar .desktop-nav{display:none!important}
body[data-page="camps"] .portal-hero{height:0;min-height:0;margin:0;padding:0;border:0;overflow:hidden}
body[data-page="camps"] .portal-hero>.global-page-breadcrumbs{display:none!important}
body[data-page="camps"] .camp-map-section,body[data-page="camps"] .camp-map-section.is-soft-stuck{position:relative;top:auto;z-index:1;box-shadow:none;transform:none}
body[data-page="camps"] .camp-map-section.is-soft-stuck .camp-results-map{height:520px}
@media(max-width:800px){body[data-page="camps"] .camp-map-section.is-soft-stuck .camp-results-map{height:360px}}
body[data-page="camps"] .directory-grid { grid-template-columns: 1fr; }
.camp-record { display: grid; grid-template-columns: 190px minmax(230px, 1fr) minmax(360px, 1.35fr) auto; align-items: center; gap: 20px; padding: 20px; border: 1px solid var(--line); border-left: 4px solid #d4dde0; }
.camp-record.location-checked { border-left-color: #1d9c73; }
.camp-record.non-site-record { border-left-color: #bd7a28; background: #fffaf2; }
.camp-record-media { display: grid; width: 190px; height: 112px; place-items: center; overflow: hidden; border-radius: 4px; background: #edf3f4; }
.camp-record-media img { width: 100%; height: 100%; object-fit: cover; }
.camp-record-media > img[src*="humanitarian"] { width: 52px; height: 52px; object-fit: contain; }
.current-camp-record { border-left-color: var(--blue); background: #fbfefe; }
.camp-record-main small { color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.camp-record-main h2 { margin: 4px 0; font-size: 20px; }
.camp-record-main p { margin: 0; color: #60747c; }
.camp-record-main .camp-warning { margin-top: 6px; color: #a14c1b; font-size: 12px; font-weight: 700; }
.camp-agency { display: inline-block; margin-top: 7px; padding: 4px 7px; border-radius: 3px; background: #e7f4f6; color: var(--blue); font-size: 10px; font-weight: 800; }
.camp-record dl { display: grid; grid-template-columns: repeat(4, minmax(85px, 1fr)); gap: 12px; margin: 0; }
.camp-record dl div { padding-left: 12px; border-left: 1px solid var(--line); }
.camp-record dt { color: #71848b; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.camp-record dd { margin: 5px 0 0; color: var(--navy); font-size: 13px; font-weight: 800; }
.camp-record dd small { display: block; margin-top: 3px; color: #71848b; font-size: 9px; }
.camp-record > a { color: var(--blue); font-size: 12px; font-weight: 800; white-space: nowrap; }
@media (max-width: 1050px) { .camp-record { grid-template-columns: 190px 1fr auto; } .camp-record dl { grid-column: 1 / -1; } }
@media (max-width: 650px) { .camp-verification-note { align-items: flex-start; flex-direction: column; } .camp-record { grid-template-columns: 1fr; } .camp-record-media { width: 100%; height: 180px; } .camp-record dl { grid-column: 1; grid-template-columns: repeat(2, 1fr); } .camp-record > a { grid-column: 1; } }
body[data-page="camps"] .camp-results-head { margin-top: 8px; padding-right: 20px; padding-left: 20px; background: #f7fafb; }
body[data-page="camps"] .camp-record.sql-result-row { grid-template-columns: 230px minmax(360px, 1fr); align-items: start; min-height: 205px; padding: 24px 20px; border: 0; border-bottom: 1px solid var(--line); border-left: 4px solid #d4dde0; border-radius: 0; background: #fff; }
body[data-page="camps"] .camp-record.sql-result-row.location-checked { border-left-color: #1d9c73; }
body[data-page="camps"] .camp-record.sql-result-row.non-site-record { border-left-color: #bd7a28; background: #fffaf2; }
body[data-page="camps"] .camp-record .sql-result-country { align-self: start; }
body[data-page="camps"] .camp-record .sql-country img { width: 146px; height: 146px; }
body[data-page="camps"] .camp-record .sql-result-description > small { color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
body[data-page="camps"] .camp-record .sql-result-description h2 { margin: 4px 0 10px; }
body[data-page="camps"] .camp-record .sql-country .detention-site-icon { object-fit: contain; background: transparent; }
body[data-page="camps"] .camp-record .sql-result-description h2 .detention-site-icon { width: 25px; height: 25px; margin-right: 8px; object-fit: contain; vertical-align: -5px; }
.worldsaid-leaflet-icon.detention-location-marker img { width: 100%; height: 100%; object-fit: contain; }
body[data-page="camps"] .worldsaid-crisis-geopin img{opacity:0!important}
body[data-page="camps"] .detention-location-marker .worldsaid-crisis-geopin img[src*="detainment-camp-geotag-transparent"]{opacity:1!important}
body[data-page="camps"] .worldsaid-crisis-geopin::before{content:"";position:absolute;width:18px;height:18px;background:#fff;transform:rotate(45deg);-webkit-mask:url("icons/camp-white.svg") center/contain no-repeat;mask:url("icons/camp-white.svg") center/contain no-repeat}
body[data-page="camps"] .detention-location-marker .worldsaid-crisis-geopin::before{display:none!important}
body[data-page="camps"] .worldsaid-crisis-geopin{animation:none!important;transition:none!important;opacity:1!important;translate:none!important;scale:1!important}
body[data-page="camps"] .leaflet-cluster-anim .leaflet-marker-icon,body[data-page="camps"] .leaflet-cluster-anim .leaflet-marker-shadow{transition:none!important}
.camp-map-key{display:none!important}
.camp-population-legend{position:absolute;z-index:700;bottom:20px;left:20px;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;width:354px;overflow:hidden;border:1px solid rgba(9,40,58,.22);border-radius:6px;background:#dff3f5;color:#000;box-shadow:0 7px 20px rgba(23,50,63,.14);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);pointer-events:none}
.camp-population-legend>strong{grid-column:1/-1;padding:5px 8px 4px;background:rgba(255,255,255,.8);color:#09283a;font-size:11px;font-weight:800;letter-spacing:.02em;text-align:left}
.camp-population-legend>span{display:grid;grid-template-rows:minmax(18px,auto) 10px;align-items:center;min-width:0;background:#dff3f5;text-align:center}
.camp-population-legend>span::after{content:"";display:block;width:100%;height:10px;background:var(--band)}
.camp-population-legend b{padding:3px 4px;color:#000;font-size:12px;font-weight:400;line-height:1.1;text-shadow:none}
.camp-key-icon{display:grid;flex:0 0 25px;width:25px;height:25px;border:2px solid #fff;border-radius:50%;place-items:center;box-shadow:0 2px 5px rgba(0,31,47,.35)}.camp-key-icon img{width:14px;height:14px;object-fit:contain;filter:brightness(0) invert(1)}.camp-key-general{background:#18a17a}.camp-key-refugee{background:#7656c8}.camp-key-reception{background:#168bd2}.camp-key-detention{background:#283747}.camp-key-detention img{filter:brightness(0) saturate(100%) invert(88%) sepia(94%) saturate(1224%) hue-rotate(325deg) brightness(107%) contrast(104%)}
@media(max-width:560px){.camp-population-legend{right:10%;bottom:14px;left:10%;width:auto}.camp-population-legend>span{grid-template-rows:minmax(17px,auto) 10px}.camp-population-legend b{padding:3px 2px;font-size:10px}}
.leaflet-tooltip.camp-map-preview{width:min(279px,calc(100vw - 32px));padding:0;border:0;border-radius:7px;background:#fff;box-shadow:0 8px 23px rgba(9,40,58,.27);white-space:normal}
.leaflet-tooltip.camp-map-preview::before{border-top-color:#fff}
.camp-map-preview-card{overflow:hidden;border-radius:7px;color:#17323f;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.camp-map-preview-card header{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:6px;padding:8px 10px 5px}
.camp-map-preview-card header img{width:20px;height:14px;object-fit:cover;border:1px solid rgba(9,40,58,.14)}
.camp-map-preview-card header strong{overflow:hidden;font-size:10px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.camp-map-preview-card header time{color:#637781;font-size:9px;font-weight:700}
.camp-map-preview-card h3{margin:0;padding:4px 10px 2px;color:#0b3042;font-size:14.4px;line-height:1.18}
.camp-map-preview-card .camp-map-preview-image{display:block;width:100%;height:97px;object-fit:cover}
.camp-map-preview-card p{margin:0;padding:2px 10px 12px;color:#536c75;font-size:9px;line-height:1.4}.camp-map-preview-card .camp-map-preview-image+p{padding-top:8px}.camp-map-preview-card p a{color:#087faa;font-weight:800;white-space:nowrap}
.camp-breadcrumbs{position:relative;z-index:20;width:100%;margin:0;padding:8px clamp(12px,3vw,42px);border-top:1px solid #d9e4e7;border-bottom:1px solid #d9e4e7;background:#fff}
.camp-breadcrumbs ol{justify-content:flex-start;margin:0}
body[data-page="camps"] .camp-search-tools,body[data-page="camps"] .camp-search-tools label,body[data-page="camps"] .camp-search-tools input,body[data-page="camps"] .camp-search-tools select,body[data-page="camps"] .camp-search-tools strong,body[data-page="camps"] .camp-verification-note,body[data-page="camps"] .camp-results-head{font-family:"Open Sans",Arial,sans-serif;font-size:8px;font-weight:700;line-height:1.35;letter-spacing:.2px;text-transform:uppercase}
body[data-page="camps"] .camp-search-tools input::placeholder{color:#687d85;font:inherit;letter-spacing:inherit;text-transform:uppercase;opacity:1}
body[data-page="camps"] .camp-breadcrumbs{position:sticky;top:0;z-index:82;background:rgba(255,255,255,.94);box-shadow:0 6px 16px rgba(23,50,63,.07);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background-color .25s ease,box-shadow .25s ease}
body[data-page="camps"] .camp-search-tools{position:sticky;z-index:81;top:32px;grid-template-columns:auto minmax(220px,1fr) minmax(190px,.7fr) minmax(190px,.7fr);margin-bottom:18px;padding:10px 16px 8px;border-radius:0 0 8px 8px;background:rgba(255,255,255,.91);box-shadow:0 8px 20px rgba(23,50,63,.08);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);transition:background-color .25s ease,box-shadow .25s ease}
body[data-page="camps"] .portal-content{padding-top:0}
body[data-page="camps"] .camp-search-tools{justify-content:start;grid-template-columns:auto minmax(220px,360px) 240px 240px;margin-top:0}
body[data-page="camps"] #campSearchCount{grid-column:1/-1;justify-self:end;margin-top:-3px;color:#28758f;text-align:right}
@media(max-width:760px){body[data-page="camps"] .camp-search-tools{top:32px;grid-template-columns:1fr 1fr}body[data-page="camps"] .camp-search-tools label,body[data-page="camps"] #campSearch{grid-column:1/-1}body[data-page="camps"] #campSearchCount{grid-column:1/-1}}
body[data-page="camps"] .camp-sticky-controls{position:sticky;z-index:82;top:0;margin:0;background:rgba(255,255,255,.93);box-shadow:0 8px 20px rgba(23,50,63,.08);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
body[data-page="camps"] .camp-sticky-controls .camp-search-tools{position:static;top:auto;margin-bottom:0;border-bottom:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs{position:static;top:auto;display:flex;align-items:center;justify-content:flex-start;margin:0;padding-top:7px;padding-bottom:7px;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;text-align:left}
body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs ol{justify-content:flex-start;text-align:left}
body[data-page="camps"] .camp-search-accordion{border:0;background:rgba(255,255,255,.96)}
body[data-page="camps"] .camp-search-accordion-summary{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:9px clamp(12px,3vw,42px);border-bottom:1px solid #d9e4e7;color:#17323f;font:800 12px/1.25 "Open Sans",Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;list-style:none}
body[data-page="camps"] .camp-search-accordion-summary::-webkit-details-marker{display:none}
body[data-page="camps"] .camp-search-accordion-summary b{display:grid;width:24px;height:24px;place-items:center;border-radius:50%;background:#e8f4f6;color:#087faa;font-size:17px;line-height:1;transition:transform .35s ease,background-color .35s ease}
body[data-page="camps"] .camp-search-accordion[open] .camp-search-accordion-summary b{background:#d7eef2;transform:rotate(180deg)}
body[data-page="camps"] .camp-search-accordion-panel{overflow:hidden;transform-origin:top}
body[data-page="camps"] .camp-search-accordion[open] .camp-search-accordion-panel{background:#edf8ed;animation:campSearchSoftBounce 1.5s cubic-bezier(.2,.82,.28,1) both}
body[data-page="camps"] .camp-search-accordion .camp-search-tools{position:static;top:auto;margin:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body[data-page="camps"] .camp-search-accordion input[type="search"],body[data-page="camps"] .camp-quick-search input{background:#edf8ed}
@keyframes campSearchSoftBounce{0%{opacity:0;transform:translateY(-18px) scaleY(.9)}58%{opacity:1;transform:translateY(5px) scaleY(1.025)}76%{transform:translateY(-3px) scaleY(.99)}89%{transform:translateY(1px) scaleY(1.006)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){body[data-page="camps"] .camp-search-accordion[open] .camp-search-accordion-panel{animation:none}}
body[data-page="camps"] .camp-results-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;width:100%;margin:0}
body[data-page="camps"] .camp-results-body{min-width:0}
body[data-page="camps"] .camp-aid-zone-menu{display:block;align-self:start;margin-top:0}
body[data-page="camps"] .camp-aid-zone-menu h2{margin:0;padding:12px 3px 9px;font-size:18px}
body[data-page="camps"] .camp-aid-zone-menu nav{display:grid}
body[data-page="camps"] .camp-aid-zone-menu a{display:flex;justify-content:space-between;padding:10px 3px;border-bottom:1px solid var(--line);font-size:12px}
body[data-page="camps"] .camp-aid-zone-menu a:hover,body[data-page="camps"] .camp-aid-zone-menu a:focus-visible{color:var(--blue);font-weight:800}
@media(max-width:800px){body[data-page="camps"] .camp-results-layout{grid-template-columns:minmax(0,1fr)}body[data-page="camps"] .camp-aid-zone-menu{display:none}}
body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs #campSearchCount{display:inline-flex;grid-column:auto;justify-self:auto;margin:0 0 0 14px;padding-left:14px;border-left:1px solid #cbd9dd;color:#28758f;text-align:left;white-space:nowrap}
@media(max-width:760px){body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs{flex-wrap:wrap}body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs #campSearchCount{margin-left:10px;padding-left:10px;white-space:normal}}
body[data-page="camps"] .camp-aid-zone-menu{position:sticky;top:105px}
body[data-page="camps"] .camp-aid-zone-accordion{overflow:hidden;border:1px solid #d4e1e4;border-radius:8px;background:#fff;box-shadow:0 9px 24px rgba(20,49,61,.08)}
body[data-page="camps"] .camp-aid-zone-accordion summary{display:flex;align-items:center;justify-content:space-between;padding:16px 17px;color:#17323f;font:700 20px/1.2 Georgia,serif;cursor:pointer;list-style:none}
body[data-page="camps"] .camp-aid-zone-accordion summary::-webkit-details-marker{display:none}
body[data-page="camps"] .camp-aid-zone-accordion summary span{color:#087faa;font:700 15px Arial,sans-serif;transition:transform .25s ease}
body[data-page="camps"] .camp-aid-zone-accordion:not([open]) summary span{transform:rotate(-90deg)}
body[data-page="camps"] .camp-aid-zone-accordion nav{display:grid;padding:0 10px 10px}
body[data-page="camps"] .camp-aid-zone-accordion button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 9px;border:0;border-top:1px solid #e1eaec;background:transparent;color:#526a73;font:700 13px/1.25 Arial,sans-serif;text-align:left;cursor:pointer}
body[data-page="camps"] .camp-aid-zone-accordion button:hover,body[data-page="camps"] .camp-aid-zone-accordion button:focus-visible{background:#eef8f9;color:#087faa;outline:0}
body[data-page="camps"] .camp-aid-zone-accordion button.active{background:#e7f5f7;color:#087faa}
body[data-page="camps"] .camp-aid-zone-accordion button b{min-width:27px;padding:3px 6px;border-radius:12px;background:#eef3f4;color:#647b84;font-size:10px;text-align:center}
@media(max-width:800px){body[data-page="camps"] .camp-aid-zone-menu{display:block;position:static;grid-row:1}}
/* Match other geolocation pages: the Camps map softly pins below the header. */
body[data-page="camps"] .camp-map-section,
body[data-page="camps"] .camp-map-section.is-soft-stuck{
  position:sticky;
  top:78px;
  z-index:70;
  transform:translateZ(0);
  transition:box-shadow .35s ease,border-color .35s ease,transform .35s ease;
}
body[data-page="camps"] .camp-map-section.is-soft-stuck{
  border-color:#bfd0d5;
  box-shadow:0 14px 30px rgba(9,40,58,.16);
}
body[data-page="camps"] .camp-sticky-controls{
  top:calc(78px + var(--worldsaid-map-height,332px) + 2px);
  max-height:calc(100vh - 78px - var(--worldsaid-map-height,332px) - 12px);
  overflow:auto;
}
@media(max-width:800px){
  body[data-page="camps"] .camp-sticky-controls{
    top:calc(78px + var(--worldsaid-map-mobile-height,262px) + 2px);
    max-height:calc(100vh - 78px - var(--worldsaid-map-mobile-height,262px) - 12px);
  }
}
@media(max-width:800px){
  body[data-page="camps"] .camp-sticky-controls,
  body[data-page="camps"] .camp-breadcrumbs{
    position:relative!important;
    top:auto!important;
  }
  body[data-page="camps"] .camp-sticky-controls{
    max-height:none;
    overflow:visible;
  }
}
body[data-page="camps"] .camp-record .sql-result-description p { -webkit-line-clamp: 4; }
body[data-page="camps"] .camp-record .sql-result-description dl { grid-template-columns: repeat(5, minmax(90px, 1fr)); gap: 8px; margin-top: 14px; }
body[data-page="camps"] .camp-record .sql-result-description dl div { padding: 8px 10px; border: 0; border-radius: 4px; background: #f2f6f7; }
.camp-result-actions { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 12px; }
.camp-result-actions a { color: var(--blue); font-size: 11px; font-weight: 800; }

/* Mobile Camps stack: header, soft-sticky map, then soft-sticky breadcrumb controls. */
@media(max-width:800px){
  body[data-page="camps"] .camp-map-section,
  body[data-page="camps"] .camp-map-section.is-soft-stuck{
    position:sticky!important;
    top:78px!important;
    z-index:84!important;
    transition:box-shadow .28s ease,border-color .28s ease;
  }
  body[data-page="camps"] .camp-map-section.is-soft-stuck{
    border-color:#bfd0d5;
    box-shadow:0 12px 26px rgba(9,40,58,.14);
  }
  body[data-page="camps"] .camp-sticky-controls{
    position:sticky!important;
    top:calc(78px + var(--worldsaid-map-mobile-height,262px) + 2px)!important;
    z-index:83!important;
    max-height:calc(100vh - 78px - var(--worldsaid-map-mobile-height,262px) - 12px);
    overflow:auto;
  }
  body[data-page="camps"] .camp-sticky-controls .camp-breadcrumbs{
    position:static!important;
    top:auto!important;
  }
}
@media (max-width: 1050px) { body[data-page="camps"] .camp-record.sql-result-row { grid-template-columns: 170px minmax(0,1fr); } body[data-page="camps"] .camp-record .sql-result-description dl { grid-template-columns: repeat(3,minmax(90px,1fr)); } }
@media (max-width: 720px) { body[data-page="camps"] .camp-record.sql-result-row { grid-template-columns: 122px minmax(0,1fr); gap: 15px; padding: 20px 8px; } body[data-page="camps"] .camp-record .sql-country img { width: 121px; height: 121px; } body[data-page="camps"] .camp-record .sql-result-description dl { grid-template-columns: 1fr; } }

/* Camps search results: image, country identity, title and a short introduction only. */
body[data-page="camps"] .camp-results-head{display:none}
body[data-page="camps"] .camp-record.camp-search-result{
  display:grid;
  grid-template-columns:clamp(150px,24%,230px) minmax(0,1fr);
  align-items:stretch;
  gap:clamp(15px,2.2vw,26px);
  min-height:0;
  padding:18px 16px;
  border:0;
  border-bottom:1px solid var(--line);
  border-left:4px solid #d4dde0;
  border-radius:0;
  background:#fff;
}
body[data-page="camps"] .camp-record.camp-search-result.location-checked{border-left-color:#1d9c73}
body[data-page="camps"] .camp-record.camp-search-result.non-site-record{border-left-color:#bd7a28;background:#fffaf2}
body[data-page="camps"] .camp-result-image{
  display:grid;
  width:100%;
  min-height:138px;
  overflow:hidden;
  border-radius:6px;
  background:#edf3f4;
  place-items:center;
}
body[data-page="camps"] .camp-result-image>img,
body[data-page="camps"] .camp-result-image>.ocha-icon{
  width:100%;
  height:100%;
  margin:0;
  object-fit:cover;
}
body[data-page="camps"] .camp-result-image>.ocha-icon,
body[data-page="camps"] .camp-result-image>.detention-site-icon{width:64px;height:64px;object-fit:contain;background:transparent}
body[data-page="camps"] .camp-result-copy{align-self:center;min-width:0}
body[data-page="camps"] .camp-result-country{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:#526a73;font:800 11px/1.2 "Open Sans",Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
body[data-page="camps"] .camp-result-country .country-flag-image{display:block;flex:0 0 24px;width:24px;height:16px;object-fit:cover;filter:drop-shadow(0 1px 1px rgba(23,50,63,.2))}
body[data-page="camps"] .camp-result-copy h2{margin:0 0 8px;font-size:clamp(19px,2vw,25px);line-height:1.15}
body[data-page="camps"] .camp-result-copy h2 a{color:var(--navy)}
body[data-page="camps"] .camp-result-copy p{display:-webkit-box;margin:0;overflow:hidden;color:#536c75;font-size:13px;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3}
body[data-page="camps"] .camp-search-result :is(.sql-result-meta,dl,.camp-result-actions,.camp-audit-summary,.camp-image-requirements){display:none!important}

/* WorldsAid Zone navigation: left rail on desktop, one compact dropdown on mobile. */
body[data-page="camps"] .camp-aid-zone-menu{position:sticky;top:calc(var(--camp-sticky-controls-height,52px) + 8px);align-self:start;max-height:calc(100vh - var(--camp-sticky-controls-height,52px) - 18px);overflow:auto;padding:0 10px 12px;border:1px solid #d4e1e4;border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 9px 24px rgba(20,49,61,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:top .3s ease,background-color .3s ease,box-shadow .3s ease}
body[data-page="camps"] .camp-aid-zone-menu h2{margin:0;padding:14px 3px 10px;border-bottom:2px solid var(--navy);font-size:18px}
body[data-page="camps"] .camp-location-menu .camp-search-accordion{margin:0 -10px 4px;border-bottom:1px solid #d4e1e4;border-radius:8px 8px 0 0;background:#f8fbfc}
body[data-page="camps"] .camp-location-menu .camp-search-accordion-summary{min-height:46px;padding:10px 12px;font-size:10px;line-height:1.3}
body[data-page="camps"] .camp-location-menu .camp-search-accordion-summary b{flex:0 0 22px;width:22px;height:22px}
body[data-page="camps"] .camp-location-menu .camp-search-accordion-panel{border-top:1px solid #dbe6e9;background:#fff}
body[data-page="camps"] .camp-location-menu .camp-search-tools{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:7px;width:100%;padding:10px}
body[data-page="camps"] .camp-location-menu .camp-search-tools>*{grid-column:1!important;min-width:0;width:100%}
body[data-page="camps"] .camp-location-menu .camp-search-tools input,body[data-page="camps"] .camp-location-menu .camp-search-tools select{min-height:38px;padding:7px 8px}
body[data-page="camps"] .camp-location-menu .camp-search-tools>label{font-size:9px}
body[data-page="camps"] #campLocationFilters{display:grid}
body[data-page="camps"] #campLocationFilters button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 3px;border:0;border-bottom:1px solid var(--line);background:transparent;color:#526a73;font:700 12px/1.25 Arial,sans-serif;text-align:left;cursor:pointer}
body[data-page="camps"] #campLocationFilters button:hover,body[data-page="camps"] #campLocationFilters button:focus-visible{color:var(--blue);outline:2px solid transparent}
body[data-page="camps"] #campLocationFilters button.active{color:var(--blue);font-weight:800}
body[data-page="camps"] #campLocationFilters button b{min-width:27px;padding:3px 6px;border-radius:12px;background:#eef3f4;color:#647b84;font-size:10px;text-align:center}
body[data-page="camps"] .camp-quick-search{display:grid;gap:6px;margin:0 -2px 12px;padding:12px 2px;border-bottom:1px solid #d4e1e4}
body[data-page="camps"] .camp-quick-search>label{color:#17323f;font:800 10px/1.2 "Open Sans",Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}
body[data-page="camps"] .camp-quick-search-field{position:relative}
body[data-page="camps"] .camp-quick-search input{width:100%;min-height:42px;padding:9px 10px;border:1px solid #b9cdd3;border-radius:6px;background:#fff;color:#17323f;font:600 13px/1.25 Arial,sans-serif}
body[data-page="camps"] .camp-quick-search input:focus{border-color:#28758f;outline:3px solid rgba(40,117,143,.16)}
body[data-page="camps"] .camp-search-suggestions{position:absolute;z-index:140;top:calc(100% + 4px);left:0;width:100%;overflow:hidden;border:1px solid #b9cdd3;border-radius:7px;background:#fff;box-shadow:0 14px 32px rgba(20,49,61,.18)}
body[data-page="camps"] .camp-search-suggestions[hidden]{display:none}
body[data-page="camps"] .camp-search-suggestions button{display:grid;gap:2px;width:100%;padding:9px 10px;border:0;border-bottom:1px solid #e3ecee;background:#fff;text-align:left;cursor:pointer}
body[data-page="camps"] .camp-search-suggestions button:hover,body[data-page="camps"] .camp-search-suggestions button:focus-visible{background:#eef7f9;outline:0}
body[data-page="camps"] .camp-search-suggestions strong{color:#17323f;font-size:12px;line-height:1.25}
body[data-page="camps"] .camp-search-suggestions span,body[data-page="camps"] .camp-search-suggestions p{margin:0;color:#647b84;font-size:10px;line-height:1.3}
body[data-page="camps"] .camp-search-suggestions p{padding:10px}
body[data-page="camps"] .camp-zone-accordion{margin:12px -2px 0;border-top:1px solid #d4e1e4}
body[data-page="camps"] .camp-zone-accordion>summary{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:10px 3px;color:#17323f;font:800 13px/1.25 Arial,sans-serif;cursor:pointer;list-style:none}
body[data-page="camps"] .camp-zone-accordion>summary::-webkit-details-marker{display:none}
body[data-page="camps"] .camp-zone-accordion>summary b{display:grid;width:24px;height:24px;border-radius:50%;background:#eef3f4;place-items:center;transition:transform .3s ease}
body[data-page="camps"] .camp-zone-accordion[open]>summary b{transform:rotate(180deg)}
body[data-page="camps"] .camp-zone-accordion[open]>nav{animation:campSearchSoftBounce 1.5s cubic-bezier(.2,.82,.28,1) both}
body[data-page="camps"] .camp-zone-accordion nav button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 3px;border:0;border-bottom:1px solid #e2eaec;background:transparent;color:#526a73;font:700 12px/1.25 Arial,sans-serif;text-align:left;cursor:pointer}
body[data-page="camps"] .camp-zone-accordion nav button:hover,body[data-page="camps"] .camp-zone-accordion nav button:focus-visible,body[data-page="camps"] .camp-zone-accordion nav button.active{color:#28758f;outline:0}
body[data-page="camps"] .camp-zone-accordion nav button b{min-width:27px;padding:3px 6px;border-radius:12px;background:#eef3f4;color:#647b84;font-size:10px;text-align:center}
body[data-page="camps"] .camp-aid-zone-mobile{display:none}
@media(max-width:800px){
  body[data-page="camps"] .camp-results-layout{grid-template-columns:minmax(0,1fr);gap:12px}
  body[data-page="camps"] .camp-aid-zone-menu{grid-row:1;width:100%;padding:0;border:0;box-shadow:none}
  body[data-page="camps"] .camp-location-menu .camp-search-accordion{margin:0 0 10px;border:1px solid #d4e1e4;border-radius:8px}
  body[data-page="camps"] .camp-location-menu .camp-search-accordion-summary{font-size:11px}
  body[data-page="camps"] .camp-aid-zone-menu>h2,body[data-page="camps"] #campLocationFilters{display:none}
  body[data-page="camps"] .camp-aid-zone-mobile{display:grid;gap:6px}
  body[data-page="camps"] .camp-aid-zone-mobile span{color:#17323f;font:800 10px/1.2 "Open Sans",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
  body[data-page="camps"] .camp-aid-zone-mobile select{width:100%;min-height:44px;padding:9px 38px 9px 12px;border:1px solid #cbd9dd;border-radius:6px;background:#fff;color:#17323f;font:700 14px/1.2 Arial,sans-serif}
}
body[data-page="camps"] .camp-results-layout>.camp-aid-zone-menu{position:sticky!important;top:calc(var(--camp-sticky-controls-height,52px) + 8px)!important;align-self:start}
@media(min-width:801px){
  body[data-page="camps"] .camp-results-layout{overflow:visible!important;align-items:start}
  body[data-page="camps"] .camp-results-layout>.camp-aid-zone-menu{
    --camp-left-rail-gap:10px;
    --camp-left-rail-top:calc(78px + var(--worldsaid-map-height,332px) + 2px + var(--camp-sticky-controls-height,52px) + var(--camp-left-rail-gap));
    position:sticky!important;
    top:var(--camp-left-rail-top)!important;
    align-self:start!important;
    height:max-content;
    max-height:calc(100vh - var(--camp-left-rail-top) - 10px);
    overflow:auto;
    transition:top .45s ease,background-color .45s ease,box-shadow .45s ease,transform .45s ease;
  }
}
@media(max-width:560px){
  body[data-page="camps"] .camp-record.camp-search-result{grid-template-columns:110px minmax(0,1fr);gap:13px;padding:13px 6px}
  body[data-page="camps"] .camp-result-image{min-height:104px}
  body[data-page="camps"] .camp-result-image>.ocha-icon,body[data-page="camps"] .camp-result-image>.detention-site-icon{width:48px;height:48px}
  body[data-page="camps"] .camp-result-copy h2{margin-bottom:5px;font-size:17px}
  body[data-page="camps"] .camp-result-copy p{font-size:11px;line-height:1.4;-webkit-line-clamp:3}
  body[data-page="camps"] .camp-result-country{gap:6px;margin-bottom:4px;font-size:9px}
  body[data-page="camps"] .camp-result-country .country-flag-image{flex-basis:18px;width:18px;height:12px}
}
@media(max-width:420px){
  body[data-page="camps"] .camp-record.camp-search-result{grid-template-columns:88px minmax(0,1fr);gap:10px;padding:12px 4px}
  body[data-page="camps"] .camp-result-image{min-height:88px}
  body[data-page="camps"] .camp-result-copy h2{overflow-wrap:anywhere;font-size:15px;line-height:1.2}
  body[data-page="camps"] .camp-result-copy p{-webkit-line-clamp:2}
}
.camp-priority-summary{display:grid;gap:.5rem;margin:.85rem 0;padding:.8rem .9rem;border-left:3px solid #db8c32;background:#f4f8fa;border-radius:0 10px 10px 0}.camp-priority-summary div{display:grid;gap:.15rem}.camp-priority-summary dt{font-size:.78rem;font-weight:700;color:#425d6a}.camp-priority-summary dd{margin:0;color:#173746;font-weight:650;line-height:1.4}.camp-priority-summary dd small{font-size:.78rem;font-weight:500;color:#58707c}

.camp-map-stats{position:absolute;z-index:500;right:12px;top:12px;display:grid;grid-template-columns:repeat(5,1fr);max-width:520px;background:rgba(255,255,255,.9);border:1px solid rgba(9,40,58,.45);border-radius:10px;color:#111;overflow:hidden;backdrop-filter:blur(2px)}.camp-map-stats>span{min-width:0;padding:10px 8px;border-right:1px solid rgba(9,40,58,.24);text-align:center}.camp-map-stats>span:last-child{border:0}.camp-map-stats b{display:block;font-size:20px;line-height:1.2}.camp-map-stats small{display:block;font-size:10px;line-height:1.2;margin-top:5px}.camp-population-legend{top:auto!important;bottom:12px!important}@media(max-width:800px){.camp-map-stats{left:52px;right:8px;top:8px;max-width:none}.camp-map-stats>span{padding:6px 3px}.camp-map-stats b{font-size:14px}.camp-map-stats small{font-size:8px}}
