/* Home page only: academic light styling and precise six-language menu.
 * The cyber blog and all other pages keep their existing appearance.
 */
.home-lang-item{display:flex!important;align-items:center;flex:0 0 auto;margin-left:7px;padding:0!important}
.home-lang-control{
  display:inline-flex;align-items:center;gap:8px;
  min-height:38px;padding:4px 7px 4px 12px;
  border-radius:9px;background:#f8fbff;border:1px solid #cadbea;
  box-shadow:0 1px 3px #173b5b12;
  color:#24618a;font:650 12px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;
}
.home-lang-control svg{flex:0 0 auto;color:#2d789e;stroke:currentColor;fill:none;stroke-width:1.8}
.home-lang-text{color:#587389;font-size:11px;letter-spacing:.01em}
.home-lang-control select{
  appearance:auto;cursor:pointer;
  min-width:96px;max-width:117px;height:28px;
  color:#164e78;background:#fff;border:0;border-radius:5px;
  padding:2px 1px;font:700 12px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif
}
.home-lang-control:focus-within{outline:2px solid #439ad3;outline-offset:2px;border-color:#5197ba}
.home-lang-control select:focus-visible{outline:none}
.home-lang-control option{color:#173f64;background:white}
@media (max-width:1240px){.home-lang-control{gap:5px;padding:3px 6px}.home-lang-text{display:none}.home-lang-control select{min-width:82px;max-width:108px}}
@media (max-width:768px){.home-lang-item{margin:0 5px 0 auto}.home-lang-control{min-height:35px}.home-lang-control svg{width:17px;height:17px}.home-lang-control select{min-width:84px}}
@media (max-width:440px){.home-lang-item{margin-left:2px}.home-lang-control{padding:3px 5px;gap:2px}.home-lang-control select{max-width:85px;min-width:75px;font-size:11px}}

/* White academic dashboard in the pre-existing white academic homepage.
   Styling is scoped so /blog/ keeps its established cyber design. */
.page__content .home-visitor-activity{
  background:#fff!important;background-image:none!important;
  border:1px solid #d5e1ea!important;
  color:#193d57!important;
  box-shadow:0 6px 26px #3d688315!important;
  border-radius:13px!important;margin-top:38px!important;
  padding:clamp(15px,2.6vw,26px)!important;
}
.page__content .home-visitor-activity .visitor-geo-header{gap:10px;margin-bottom:18px}
.page__content .home-visitor-activity .visitor-geo-kicker{
  color:#317caa!important;font-size:10px;letter-spacing:.12em
}
.page__content .home-visitor-activity .visitor-geo-header h2{
  color:#173a54!important;font:750 clamp(23px,2.6vw,29px)/1.35 system-ui,sans-serif!important;
  letter-spacing:-.025em!important;margin:7px 0 9px!important;border:0!important
}
.page__content .home-visitor-activity .visitor-geo-header h2 span{color:#2679a6!important}
.page__content .home-visitor-activity .visitor-geo-header p{
  color:#5f778a!important;font:400 13px/1.7 system-ui,sans-serif!important;margin:0!important
}
.page__content .home-visitor-activity .visitor-geo-badge{
  color:#306f93!important;background:#f1f8fc!important;
  border:1px solid #cadeeb!important;font-size:10px;
}
.page__content .home-visitor-activity .visitor-geo-panel{
  background:white!important;border:1px solid #d8e4ec!important;border-radius:10px!important
}
.page__content .home-visitor-activity .visitor-geo-stats{
  background:#f8fbfd!important;border-bottom:1px solid #dae5ed!important
}
.page__content .home-visitor-activity .visitor-geo-stats > div + div{border-left:1px solid #dae5ed!important}
.page__content .home-visitor-activity .visitor-geo-stats small{
  color:#658096!important;font-size:10px!important;letter-spacing:0!important
}
.page__content .home-visitor-activity .visitor-geo-stats strong{
  color:#24769b!important;font-weight:750!important
}
.page__content .home-visitor-activity .visitor-geo-map{
  background:#f7fbfe!important;
  border-bottom:0!important
}
.page__content .home-visitor-activity .visitor-geo-map svg{
  max-height:342px!important;
  background:#f7fbfe!important
}
.page__content .home-visitor-activity .visitor-geo-map svg > rect:first-child{fill:#f7fbfe!important}
.page__content .home-visitor-activity .visitor-geo-map svg .geo-grid{
  stroke:#a7c5d6!important;stroke-opacity:.38!important;stroke-width:1!important
}
.page__content .home-visitor-activity .visitor-geo-map svg .geo-land{
  fill:#d6e8f2!important;stroke:#8fbbd0!important;stroke-width:1.25!important;opacity:1!important
}
.page__content .home-visitor-activity .visitor-geo-map svg .geo-dot{
  fill:#167da6!important;stroke:#f5ffff!important;stroke-width:1.6!important;
  filter:drop-shadow(0 0 3px #59b5d685)!important
}
.page__content .home-visitor-activity .visitor-geo-map svg text{fill:#7497aa!important}
.page__content .home-visitor-activity .visitor-geo-compass{color:#6e9db3!important}
.page__content .home-visitor-activity .visitor-geo-bottom{
  background:#fff!important;border-top:1px solid #dae5ed!important;padding:12px 16px!important
}
.page__content .home-visitor-activity .visitor-geo-status{
  color:#627d8f!important;font:500 11px/1.7 system-ui,sans-serif!important
}
.page__content .home-visitor-activity .visitor-geo-optin{
  color:#fff!important;background:#227ca3!important;border:1px solid #227ca3!important;
  border-radius:6px!important
}
.page__content .home-visitor-activity .visitor-geo-optin:hover{background:#165e82!important}
.page__content .home-visitor-activity .visitor-geo-privacy{
  color:#788f9e!important;
  background:white!important;
  padding:0 16px 13px!important;margin:0!important;
  font:450 10px/1.6 system-ui,sans-serif!important
}
@media(max-width:720px){
 .page__content .home-visitor-activity .visitor-geo-header{flex-direction:column}
 .page__content .home-visitor-activity .visitor-geo-stats>div{padding:11px 9px}
 .page__content .home-visitor-activity .visitor-geo-stats strong{font-size:22px}
}


/* Compact two-column homepage visitor globe and accurate geographic listing. */
.page__content .home-visitor-activity .visitor-geo-split{
  display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);
  background:#fff;min-height:320px;
}
.page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map{
  position:relative;min-width:0;background:#061b2c!important;
  border-right:1px solid #d8e4ec!important;overflow:hidden;
}
.page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map [data-geo-map]{
  width:100%;height:340px;min-height:340px;cursor:grab;background:#061b2c;
}
.page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map [data-geo-map]:active{cursor:grabbing}
.page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map:before{
  content:"";display:none!important;
}
.page__content .home-visitor-activity .visitor-geo-split .visitor-geo-compass{
  position:absolute;bottom:13px;left:14px;top:auto;right:auto;
  z-index:2;color:#b9eaf6!important;letter-spacing:.08em;font-size:9px;
  pointer-events:none;text-shadow:0 1px 6px #001;
}
.page__content .home-visitor-activity .visitor-geo-origins{
  min-width:0;display:flex;flex-direction:column;background:#fff;color:#213d53;
}
.page__content .home-visitor-activity .geo-origins-heading{
  display:flex;flex-direction:column;gap:3px;padding:15px 17px 12px;
  border-bottom:1px solid #e2ebf1;background:#f8fbfd;
}
.page__content .home-visitor-activity .geo-origins-heading>span{
  color:#1d506e;font:750 14px/1.35 system-ui,sans-serif;
}
.page__content .home-visitor-activity .geo-origins-heading small{
  color:#728da0;font:500 11px/1.4 system-ui,sans-serif;
}
.page__content .home-visitor-activity .geo-origins-list{
  flex:1;overflow-y:auto;max-height:264px;padding:8px 12px 12px;
  scrollbar-width:thin;scrollbar-color:#b0c7d6 transparent;
}
.page__content .home-visitor-activity .geo-origin-country{
  padding:5px 2px 8px;border-bottom:1px solid #edf1f5;
}
.page__content .home-visitor-activity .geo-origin-country-top{
  display:flex;gap:10px;justify-content:space-between;align-items:center;
  padding:5px 3px 7px;
}
.page__content .home-visitor-activity .geo-origin-country-name{
  font:700 12px/1.4 system-ui,sans-serif;color:#234a63;overflow-wrap:anywhere;
}
.page__content .home-visitor-activity .geo-origin-country-count{
  color:#166d93;background:#edf7fa;border-radius:9px;padding:3px 8px;
  flex-shrink:0;font:750 11px/1.4 ui-monospace,monospace;
}
.page__content .home-visitor-activity .geo-origin-location{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  gap:8px;border:0;border-radius:7px;background:transparent;padding:8px 9px;
  color:#627f91;font:500 11px/1.35 system-ui,sans-serif;cursor:pointer;
  text-align:left;transition:background .12s,color .12s;
}
.page__content .home-visitor-activity .geo-origin-location:hover,
.page__content .home-visitor-activity .geo-origin-location:focus-visible{
  background:#eaf5fa;color:#145c7e;outline:2px solid transparent;
}
.page__content .home-visitor-activity .geo-origin-location .geo-region-count{
  color:#1f7a9a;flex-shrink:0;font-weight:700;
}
.page__content .home-visitor-activity .geo-origins-note{
  padding:9px 14px!important;margin:0!important;border-top:1px solid #e5edf1;
  color:#758b98!important;font:450 10px/1.5 system-ui,sans-serif!important;
}
.page__content .home-visitor-activity .geo-origins-empty{
  padding:22px 10px!important;margin:0!important;text-align:center;
  color:#6e8493!important;font:500 12px/1.6 system-ui,sans-serif!important;
}
@media(max-width:650px){
  .page__content .home-visitor-activity .visitor-geo-split{grid-template-columns:1fr}
  .page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map{border-right:0!important}
  .page__content .home-visitor-activity .visitor-geo-split .visitor-geo-map [data-geo-map]{
    height:280px;min-height:280px;
  }
  .page__content .home-visitor-activity .geo-origins-list{max-height:250px}
}

/* Country totals beside the academic homepage 3D globe. */
.page__content .home-visitor-activity .geo-origin-country-button{
 display:block;width:100%;border:0;border-bottom:1px solid #e6edf3;border-radius:5px;
 padding:10px 8px;background:transparent;text-align:left;cursor:pointer;
 color:#1f4d68;font:600 12px/1.4 system-ui,sans-serif;
}
.page__content .home-visitor-activity .geo-origin-country-button:hover,
.page__content .home-visitor-activity .geo-origin-country-button:focus-visible{
 background:#eff8fc;outline:2px solid #88cde0;outline-offset:-2px;
}
.page__content .home-visitor-activity .geo-origin-country-line{
 display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;
}
.page__content .home-visitor-activity .geo-origin-country-button .geo-origin-country-name{
 flex:1;min-width:0;color:#244d68;font:700 12px/1.35 system-ui,sans-serif;
}
.page__content .home-visitor-activity .geo-origin-country-button .geo-origin-country-count{
 background:#e9f4fa;color:#176b90;border-radius:6px;padding:2px 7px;
 font:700 11px/1.45 ui-monospace,monospace;white-space:nowrap;
}
.page__content .home-visitor-activity .geo-origin-bar{
 display:block;height:5px;background:#e3edf4;border-radius:20px;overflow:hidden;
}
.page__content .home-visitor-activity .geo-origin-bar>span{
 display:block;height:100%;background:linear-gradient(90deg,#1a7fa3,#4ebecb);border-radius:20px;
}
.page__content .home-visitor-activity [data-geo-stat="topcountry"]{
 font-size:clamp(12px,1.6vw,17px)!important;line-height:1.35!important;
 overflow-wrap:anywhere;
}
