/* PulseBoard V16 — stable World Atlas layout for desktop, tablet and mobile. */
:root{
  --pb-world-line:rgba(80,211,214,.22);
  --pb-world-panel:#071923;
  --pb-world-panel-2:#0a2230;
  --pb-world-glow:rgba(54,214,202,.14);
}

body.world-page .world-hero,
body[data-page="home"] .world-pulse{
  overflow:visible!important;
}

body.world-page .world-pulse__tools,
body[data-page="home"] .world-pulse__tools{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) auto auto minmax(220px,.7fr)!important;
  align-items:stretch!important;
  gap:12px!important;
  margin-bottom:18px!important;
}

body.world-page .world-search,
body[data-page="home"] .world-search{
  width:100%!important;
  min-width:0!important;
  min-height:52px!important;
  border-radius:8px!important;
}

body.world-page .world-pulse__tools .ghost-button,
body[data-page="home"] .world-pulse__tools .ghost-button{
  min-height:52px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}

body.world-page [data-world-status],
body[data-page="home"] [data-world-status]{
  min-width:0!important;
  min-height:52px!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  border:1px solid rgba(91,193,223,.16)!important;
  background:linear-gradient(135deg,rgba(23,67,91,.18),rgba(9,25,35,.74))!important;
  color:rgba(231,244,244,.76)!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
}

body.world-page .world-pulse__grid--globeonly,
body[data-page="home"] .world-pulse__grid--globeonly{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  overflow:visible!important;
}

body.world-page .world-card--atlas-only,
body[data-page="home"] .world-card--atlas-only{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(350px,420px)!important;
  grid-template-rows:minmax(640px,auto)!important;
  min-width:0!important;
  min-height:640px!important;
  height:auto!important;
  overflow:hidden!important;
  border:1px solid var(--pb-world-line)!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#061720 0%,#071923 56%,#09212d 100%)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.28),0 0 60px rgba(44,206,201,.045) inset!important;
  isolation:isolate!important;
}

body.world-page .world-card--atlas-only::after,
body[data-page="home"] .world-card--atlas-only::after{
  display:none!important;
}

body.world-page .world-globe-stage,
body[data-page="home"] .world-globe-stage{
  position:relative!important;
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  min-height:640px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 50% 46%,rgba(57,205,208,.12),transparent 43%),
    radial-gradient(circle at 50% 52%,rgba(22,66,91,.24),transparent 67%),
    linear-gradient(180deg,#061722,#04131c)!important;
  contain:layout paint!important;
}

body.world-page .world-globe-stage::before,
body[data-page="home"] .world-globe-stage::before{
  content:"";
  position:absolute;
  inset:22px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(97,210,219,.07);
  background-image:linear-gradient(rgba(100,210,220,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(100,210,220,.035) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:radial-gradient(circle at center,#000 20%,transparent 78%);
}

body.world-page .world-card--atlas-only .world-canvas,
body.world-page .world-card--atlas-only .world-canvas--full,
body[data-page="home"] .world-card--atlas-only .world-canvas{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  background:transparent!important;
  touch-action:none!important;
}

body.world-page .world-live-badge,
body[data-page="home"] .world-live-badge{
  position:absolute;
  top:18px;
  left:18px;
  z-index:8;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 11px;
  border:1px solid rgba(75,214,211,.22);
  border-radius:999px;
  background:rgba(3,18,27,.78);
  box-shadow:0 14px 36px rgba(0,0,0,.24);
  color:#dffafa;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.13em;
  pointer-events:none;
}

body.world-page .world-live-badge span,
body[data-page="home"] .world-live-badge span{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#4ce1c8;
  box-shadow:0 0 0 5px rgba(76,225,200,.12),0 0 18px rgba(76,225,200,.7);
  animation:pb-world-live 1.8s ease-in-out infinite;
}

@keyframes pb-world-live{50%{opacity:.4;transform:scale(.72)}}

body.world-page .world-overlay--top,
body[data-page="home"] .world-overlay--top{
  position:absolute!important;
  top:64px!important;
  left:18px!important;
  right:auto!important;
  bottom:auto!important;
  z-index:10!important;
  width:min(430px,calc(100% - 36px))!important;
  max-width:none!important;
  pointer-events:auto!important;
}

body.world-page .world-results--floating,
body[data-page="home"] .world-results--floating{
  width:100%!important;
  max-height:360px!important;
  overflow:auto!important;
  border:1px solid rgba(78,205,214,.2)!important;
  border-radius:14px!important;
  background:rgba(4,20,29,.97)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.42)!important;
}

body.world-page .world-overlay--info,
body[data-page="home"] .world-overlay--info{
  position:relative!important;
  inset:auto!important;
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:100%!important;
  max-height:none!important;
  padding:20px!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  pointer-events:auto!important;
  border-left:1px solid var(--pb-world-line)!important;
  background:linear-gradient(180deg,rgba(11,35,48,.98),rgba(6,23,32,.99))!important;
  scrollbar-gutter:stable!important;
}

body.world-page .world-selected--overlay,
body[data-page="home"] .world-selected--overlay{
  width:100%!important;
  max-width:none!important;
  max-height:none!important;
  min-height:100%!important;
  overflow:visible!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}

body.world-page .world-selected__flag,
body[data-page="home"] .world-selected__flag{
  position:relative!important;
  width:88px!important;
  height:58px!important;
  margin:0 0 16px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:7px!important;
  background:linear-gradient(145deg,#102c39,#0a1d28)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
}

body.world-page .world-selected__flag img,
body[data-page="home"] .world-selected__flag img{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
}

body.world-page .world-selected__flag-emoji,
body[data-page="home"] .world-selected__flag-emoji{
  position:absolute;
  inset:0;
  z-index:1;
  display:grid;
  place-items:center;
  font-size:2rem;
}

body.world-page .world-selected--overlay h2,
body[data-page="home"] .world-selected--overlay h2{
  margin:5px 0 14px!important;
  color:#f0f9f8!important;
  line-height:1.08!important;
}

body.world-page .world-detail-grid,
body.world-page .world-selected__grid,
body[data-page="home"] .world-detail-grid,
body[data-page="home"] .world-selected__grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:12px 0 16px!important;
}

body.world-page .world-detail-grid>div,
body.world-page .world-selected__grid>div,
body[data-page="home"] .world-detail-grid>div,
body[data-page="home"] .world-selected__grid>div{
  min-width:0!important;
  padding:10px!important;
  border:1px solid rgba(91,196,210,.15)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.026)!important;
}

body.world-page .world-detail-grid span,
body.world-page .world-selected__grid span,
body[data-page="home"] .world-detail-grid span,
body[data-page="home"] .world-selected__grid span{
  display:block!important;
  color:rgba(220,238,239,.56)!important;
  font-size:.65rem!important;
  font-weight:700!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}

body.world-page .world-detail-grid strong,
body.world-page .world-selected__grid strong,
body[data-page="home"] .world-detail-grid strong,
body[data-page="home"] .world-selected__grid strong{
  display:block!important;
  margin-top:5px!important;
  color:#edf8f7!important;
  font-size:.82rem!important;
  line-height:1.36!important;
  overflow-wrap:anywhere!important;
}

body.world-page .world-globe-label,
body[data-page="home"] .world-globe-label{
  position:absolute!important;
  left:50%!important;
  bottom:48px!important;
  z-index:7!important;
  transform:translateX(-50%)!important;
}

body.world-page .world-globe-hint,
body[data-page="home"] .world-globe-hint{
  position:absolute!important;
  left:50%!important;
  bottom:18px!important;
  z-index:7!important;
  transform:translateX(-50%)!important;
  max-width:calc(100% - 36px)!important;
  text-align:center!important;
}

body.world-page .world-video-section{
  position:relative!important;
  margin-top:clamp(72px,8vw,128px)!important;
  padding-top:clamp(28px,4vw,58px)!important;
  border-top:1px solid rgba(91,196,210,.2)!important;
  clear:both!important;
}

body.world-page .world-video-section::before{
  content:"";
  position:absolute;
  top:-1px;
  left:0;
  width:min(320px,42vw);
  height:1px;
  background:linear-gradient(90deg,#4bd7d1,transparent);
  box-shadow:0 0 22px rgba(75,215,209,.35);
}

@media(max-width:1180px){
  body.world-page .world-pulse__tools,
  body[data-page="home"] .world-pulse__tools{
    grid-template-columns:minmax(260px,1fr) auto auto!important;
  }
  body.world-page [data-world-status],
  body[data-page="home"] [data-world-status]{grid-column:1/-1!important;}
  body.world-page .world-card--atlas-only,
  body[data-page="home"] .world-card--atlas-only{
    grid-template-columns:minmax(0,1fr) minmax(320px,370px)!important;
  }
}

@media(max-width:900px){
  body.world-page .world-card--atlas-only,
  body[data-page="home"] .world-card--atlas-only{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    min-height:0!important;
  }
  body.world-page .world-globe-stage,
  body[data-page="home"] .world-globe-stage{
    grid-column:1!important;
    grid-row:1!important;
    min-height:clamp(430px,72vw,620px)!important;
  }
  body.world-page .world-overlay--info,
  body[data-page="home"] .world-overlay--info{
    grid-column:1!important;
    grid-row:2!important;
    height:auto!important;
    max-height:none!important;
    border-left:0!important;
    border-top:1px solid var(--pb-world-line)!important;
  }
  body.world-page .world-selected--overlay,
  body[data-page="home"] .world-selected--overlay{min-height:0!important;}
}

@media(max-width:680px){
  body.world-page .world-pulse__tools,
  body[data-page="home"] .world-pulse__tools{
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }
  body.world-page .world-search,
  body.world-page [data-world-status],
  body[data-page="home"] .world-search,
  body[data-page="home"] [data-world-status]{grid-column:1/-1!important;}
  body.world-page .world-globe-stage,
  body[data-page="home"] .world-globe-stage{
    min-height:clamp(360px,92vw,520px)!important;
  }
  body.world-page .world-overlay--info,
  body[data-page="home"] .world-overlay--info{padding:16px!important;}
  body.world-page .world-detail-grid,
  body.world-page .world-selected__grid,
  body[data-page="home"] .world-detail-grid,
  body[data-page="home"] .world-selected__grid{grid-template-columns:1fr!important;}
  body.world-page .world-live-badge,
  body[data-page="home"] .world-live-badge{top:12px;left:12px;}
  body.world-page .world-overlay--top,
  body[data-page="home"] .world-overlay--top{top:56px!important;left:12px!important;width:calc(100% - 24px)!important;}
  body.world-page .world-video-section{margin-top:56px!important;padding-top:32px!important;}
}

@media(max-width:440px){
  body.world-page .world-pulse__tools,
  body[data-page="home"] .world-pulse__tools{grid-template-columns:1fr!important;}
  body.world-page .world-search,
  body.world-page [data-world-status],
  body[data-page="home"] .world-search,
  body[data-page="home"] [data-world-status]{grid-column:auto!important;}
  body.world-page .world-pulse__tools .ghost-button,
  body[data-page="home"] .world-pulse__tools .ghost-button{width:100%!important;}
  body.world-page .world-globe-stage,
  body[data-page="home"] .world-globe-stage{min-height:360px!important;}
  body.world-page .world-globe-label,
body[data-page="home"] .world-globe-label{bottom:44px!important;max-width:82%!important;}
  body.world-page .world-globe-hint,
body[data-page="home"] .world-globe-hint{bottom:12px!important;font-size:.6rem!important;}
}

@media(prefers-reduced-motion:reduce){
  .world-live-badge span{animation:none!important;}
}

body.world-page .world-result__flag,
body[data-page="home"] .world-result__flag{
  position:relative;
  display:grid;
  place-items:center;
  width:38px;
  height:26px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  border-radius:4px;
  background:#0d2937;
  font-size:1.05rem;
}
body.world-page .world-result__flag img,
body[data-page="home"] .world-result__flag img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
body.world-page .world-results--floating button,
body[data-page="home"] .world-results--floating button{
  grid-template-columns:38px minmax(0,1fr) auto!important;
}

body.world-page .world-canvas--fallback,
body[data-page="home"] .world-canvas--fallback{
  background:#061722 url("assets/earth_atmos_2048.jpg") center/contain no-repeat!important;
}


/* V16 exact Home ↔ World Atlas parity layer. */
body[data-page="home"] #worldPulse .world-pulse__grid--globeonly,
body.world-page .world-pulse__grid--globeonly{
  width:100%!important;
  max-width:none!important;
}
body[data-page="home"] #worldPulse .world-card--atlas-only,
body.world-page .world-card--atlas-only{
  grid-template-columns:minmax(0,1fr) minmax(350px,420px)!important;
  grid-template-rows:minmax(640px,auto)!important;
  min-height:640px!important;
}
body[data-page="home"] #worldPulse .world-globe-stage,
body.world-page .world-globe-stage{
  min-height:640px!important;
}
body[data-page="home"] #worldPulse .world-live-badge,
body.world-page .world-live-badge{
  top:18px!important;
  left:18px!important;
}
body[data-page="home"] #worldPulse .world-globe-label,
body.world-page .world-globe-label{
  position:absolute!important;
  left:50%!important;
  bottom:48px!important;
  z-index:7!important;
  transform:translateX(-50%)!important;
  max-width:calc(100% - 36px)!important;
  color:rgba(236,248,248,.86)!important;
  font-size:.78rem!important;
  font-weight:800!important;
  text-align:center!important;
  text-shadow:0 2px 16px rgba(0,0,0,.75)!important;
  pointer-events:none!important;
}
body[data-page="home"] #worldPulse .world-globe-hint,
body.world-page .world-globe-hint{
  position:absolute!important;
  left:50%!important;
  bottom:18px!important;
  z-index:7!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:calc(100% - 36px)!important;
  color:rgba(210,235,237,.56)!important;
  font-size:.66rem!important;
  line-height:1.35!important;
  text-align:center!important;
  pointer-events:none!important;
}
body[data-page="home"] #worldPulse .world-selected--overlay h2,
body.world-page .world-selected--overlay h2{
  margin:5px 0 14px!important;
  color:#f0f9f8!important;
  line-height:1.08!important;
}
body[data-page="home"] #worldPulse .world-detail-grid,
body.world-page .world-detail-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
  margin:12px 0 16px!important;
}
body[data-page="home"] #worldPulse .world-results--floating button,
body.world-page .world-results--floating button{
  grid-template-columns:38px minmax(0,1fr) auto!important;
}
@media(max-width:1180px){
  body[data-page="home"] #worldPulse .world-card--atlas-only,
  body.world-page .world-card--atlas-only{
    grid-template-columns:minmax(0,1fr) minmax(320px,370px)!important;
  }
}
@media(max-width:900px){
  body[data-page="home"] #worldPulse .world-card--atlas-only,
  body.world-page .world-card--atlas-only{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
    min-height:0!important;
  }
  body[data-page="home"] #worldPulse .world-globe-stage,
  body.world-page .world-globe-stage{
    min-height:clamp(430px,72vw,620px)!important;
  }
}
@media(max-width:680px){
  body[data-page="home"] #worldPulse .world-globe-stage,
  body.world-page .world-globe-stage{
    min-height:clamp(360px,92vw,520px)!important;
  }
  body[data-page="home"] #worldPulse .world-detail-grid,
  body.world-page .world-detail-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:440px){
  body[data-page="home"] #worldPulse .world-globe-stage,
  body.world-page .world-globe-stage{
    min-height:360px!important;
  }
  body[data-page="home"] #worldPulse .world-globe-label,
  body.world-page .world-globe-label{
    bottom:44px!important;
    max-width:82%!important;
  }
  body[data-page="home"] #worldPulse .world-globe-hint,
  body.world-page .world-globe-hint{
    bottom:12px!important;
    font-size:.6rem!important;
  }
}
