@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--gold:#ffcd43;--blue:#70b7ff;--text:#edf4ff;--muted:#a6bbd3;--border:#355a806b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:radial-gradient(ellipse at 50% 10%,#102f53,#020b19 72%);color:var(--text);font:14px 'DM Sans',Arial,sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(1px 1px at 17% 21%,#fff7 50%,transparent),radial-gradient(1px 1px at 76% 19%,#fff5 50%,transparent);background-size:211px 191px,307px 283px;opacity:.35}.page-shell{width:calc(100% - 48px);max-width:1680px;padding:0 28px;margin:22px auto 0;background:linear-gradient(#06172a33,#07162a);position:relative;border:1px solid #1e3c5e4d;border-radius:24px 24px 0 0;overflow:hidden}a{color:inherit;text-decoration:none}header{height:83px;display:flex;align-items:center;gap:30px;position:relative;z-index:3;border-bottom:1px solid #97b4db15}.brand{display:flex;align-items:center;gap:9px;font:800 27px Manrope,Arial;letter-spacing:-1.2px;white-space:nowrap}.brand-icon{color:var(--gold);font-size:38px}.gold{color:var(--gold)}.blue{color:var(--blue)}nav{display:flex;justify-content:center;gap:27px;margin-left:auto;font-size:12px}nav a{padding:13px 0;border-bottom:2px solid transparent}nav a:first-child{color:var(--gold);border-color:var(--gold)}nav a:hover{color:var(--gold)}select{background:#0e2540;color:var(--text);border:1px solid #47719d70;border-radius:6px;padding:10px 12px;font:inherit}header select{font-size:12px;background:#07172eaa;border-radius:20px;padding:8px 12px}.hero{position:relative;height:430px;margin:0 -28px;isolation:isolate}.hero-art{position:absolute;inset:-83px 0 -65px;z-index:-1;background-image:linear-gradient(90deg,#05152dd9 0%,#04152b70 36%,transparent 65%),linear-gradient(0deg,#07162a,transparent 38%),url('assets/earth-hero.png');background-size:cover;background-position:center,center,center 48%;animation:orbit 40s ease-in-out infinite alternate}.hero-copy{padding:35px 28px 0;max-width:650px}.eyebrow{font-size:10px;letter-spacing:2.2px;color:var(--gold);font-weight:700;margin-bottom:17px}h1{font:800 clamp(32px,3.8vw,53px)/1.08 Manrope,Arial;letter-spacing:-1.6px;max-width:570px;margin:0 0 17px;text-shadow:0 2px 24px #00102a}h1 em{font-style:normal;color:var(--gold)}.hero-copy>p{font-size:15px;line-height:1.65;color:#d2def0;max-width:480px;margin:0}.principles{display:flex;gap:25px;margin-top:24px;max-width:440px}.principles a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;flex:1}.principles span{width:38px;height:38px;border:1px solid #6eabdf7d;border-radius:50%;display:grid;place-items:center;font-size:22px;color:#9acbff;background:#0d2b4d88;box-shadow:inset 0 0 10px #79c5ff22}.principles small{font-size:10px;line-height:1.4;color:#d7e4f5}.panel{border:1px solid var(--border);border-radius:10px;background:linear-gradient(135deg,#123251c9,#07182fdf);box-shadow:inset 0 1px 12px #76bcff0d,0 3px 18px #0002;padding:20px}.voting{position:relative;margin-top:-18px;background:linear-gradient(125deg,#0e2945ed,#081b33eb);backdrop-filter:blur(8px);border-color:#4f83b994}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}h2{font:700 20px/1.3 Manrope,Arial;margin:0;letter-spacing:-.4px}h3{font:700 15px/1.4 Manrope,Arial;margin:0}.small{font-size:11px;line-height:1.6;color:var(--muted)}.shield:before{content:'◇ ';color:#9acbff}.options{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.option{position:relative;min-height:155px;border:1px solid #55799a;border-radius:7px;overflow:hidden;cursor:pointer;padding:19px 22px 16px 65px;isolation:isolate;transition:border-color .2s,transform .2s}.option:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#05204422,#04152bc9 38%,#04152be8),url('assets/day-lake.png') center/cover;z-index:-1}.option:nth-child(2):before{background-image:linear-gradient(90deg,#05204411,#04152bbd 38%,#04152be6),url('assets/night-lake.png')}.option:nth-child(3):before{background-image:linear-gradient(90deg,#143b6f85,#07182a9c 45%,#6f431c55),url('assets/day-lake.png');background-position:center,65% center}.option:has(input:checked){border:2px solid var(--gold);padding:18px 21px 15px 64px;box-shadow:0 0 18px #ffce4222}.option:hover{transform:translateY(-2px);border-color:#bbd9ff}.option input{position:absolute;right:12px;top:12px;width:16px;height:16px;accent-color:var(--gold);margin:0}.icon{position:absolute;left:17px;top:23px;color:var(--gold);font-size:33px;text-shadow:0 0 17px #ffcd43}.option:nth-child(2) .icon{color:#d4e8ff;text-shadow:0 0 17px #93b9ff}.option:nth-child(3) .icon{color:#fff;text-shadow:0 0 17px #fff}.option strong{display:block;font:700 15px/1.3 Manrope,Arial;padding-right:8px;margin-bottom:9px}.option p{font-size:11px;line-height:1.5;color:#d4e2f3;margin:0}.vote-bottom{display:grid;grid-template-columns:1fr 1.4fr 1fr;align-items:center;gap:22px;margin-top:17px}.vote-bottom select{width:100%;font-size:12px}.primary{background:linear-gradient(#ffda64,#ffc52e);border:1px solid #fce79c;border-radius:5px;min-height:41px;padding:10px 25px;color:#263449;font:700 14px 'DM Sans';cursor:pointer;box-shadow:0 0 17px #ffcb3524}.primary:hover{filter:brightness(1.08)}.vote-disclaimer{font-size:10px;color:var(--muted);line-height:1.4}#vote-status{font-size:12px;color:var(--gold);margin:10px 0 0}#vote-status:empty{display:none}.text-link{background:none;border:0;color:#d5e4fa;text-decoration:underline;font:inherit;font-size:11px;padding:10px 0 0;cursor:pointer}.demo-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;color:#92a8c3;font-size:10px;padding:13px 8px}.demo-strip strong{font-size:9px;color:#efd18d;letter-spacing:1px}.dot{width:5px;height:5px;border-radius:50%;background:var(--gold)}.dashboard{display:grid;grid-template-columns:1.45fr 1fr;gap:16px;margin-bottom:18px}.count{font-size:15px;white-space:nowrap}.count small{font-size:10px;color:var(--muted)}.results h2,.countries h2{font-size:17px}.result-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);margin-bottom:16px}.result-filter select{font-size:10px;padding:5px 9px}.bar-row{display:grid;grid-template-columns:1.2fr 1fr;gap:10px;margin:14px 0;align-items:center}.bar-label{display:flex;justify-content:space-between;gap:12px;font-size:10px}.bar-label strong{white-space:nowrap;font-weight:600;color:#e5effd}.track{height:12px;background:#21415d;border-radius:3px;overflow:hidden}.fill{height:100%;background:linear-gradient(90deg,#ffe660,#ffc52d);border-radius:2px}.bar-row:nth-child(2) .fill{background:linear-gradient(90deg,#65b0ff,#4a8ee9)}.bar-row:nth-child(3) .fill{background:#c7d4e5}.results-note{margin:20px 0 0;font-size:10px}.badge{border:1px solid #a8c8f330;padding:4px 7px;border-radius:4px;color:#c8d9ef;font-size:8px;letter-spacing:.7px;white-space:nowrap}.mini-legend{display:flex;justify-content:end;gap:25px;color:var(--gold);font-size:15px;margin:-2px 0 5px}.mini-legend span:nth-child(2){color:var(--blue)}.mini-legend span:nth-child(3){color:#c7d4e5}.country-row{display:grid;grid-template-columns:95px 1fr;gap:10px;align-items:center;margin:10px 0;font-size:10px}.country-name{display:flex;gap:7px}.country-stack{height:14px;display:flex;border-radius:2px;overflow:hidden}.country-stack span{display:flex;align-items:center;justify-content:center;background:#ffce43;color:#1b304b;font-size:8px;font-weight:700}.country-stack span:nth-child(2){background:#5c9ee8;color:#fff}.country-stack span:nth-child(3){background:#c1d0df}.countries>p{font-size:9px;margin:14px 0 0}.daylight{padding:17px 17px 0;margin-bottom:25px;overflow:hidden}.daylight .section-heading p{margin:5px 0 0}.landscapes{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin:0 -17px}.landscape{height:225px;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:20px 23px;background:linear-gradient(#061a3955,transparent 40%,#06172be8),url('assets/night-lake.png') center 50%/cover}.landscape.summer{background-image:linear-gradient(#061a3922,transparent 40%,#06172be8),url('assets/day-lake.png')}.landscape-title{display:flex;gap:9px;align-items:center;text-shadow:0 2px 8px #001}.landscape-title span{font-size:25px;color:#c8e3ff}.summer .landscape-title span{color:var(--gold)}.landscape p{font-size:12px;line-height:1.5;max-width:390px;margin:0}.light-note{text-align:center;color:var(--muted);font-size:10px;line-height:1.5;padding:0 10px;margin:13px 0}.context{margin-bottom:25px}.context-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.context-cards article{border:1px solid var(--border);border-radius:7px;background:#0d2340;overflow:hidden}.context-photo{height:110px;background:url('assets/day-lake.png') center/cover}.photo-two{background-image:url('assets/night-lake.png');background-position:20% 60%}.photo-three{background-image:url('assets/earth-hero.png');background-position:70% 75%}.photo-four{background-position:80% 70%}.context-copy{padding:14px;position:relative}.context-copy>span{float:left;font-size:21px;margin-right:8px}.context-copy h3{font-size:12px;padding-top:3px}.context-copy p{font-size:11px;color:var(--muted);line-height:1.6;clear:both;padding-top:10px;margin:0}.context-foot{font-size:11px;line-height:1.7;color:var(--muted);margin:16px 0 0;max-width:850px}.transparency{display:grid;grid-template-columns:1fr 1.6fr;gap:40px}.transparency .eyebrow{margin-bottom:12px}.transparency h2{font-size:24px;max-width:300px}.transparency>div>p{margin-top:16px;max-width:300px}details{border-bottom:1px solid #ffffff1c;padding-bottom:13px;margin-bottom:13px}details:last-child{margin:0;border:0;padding-bottom:0}summary{cursor:pointer;font-size:12px}details p{font-size:11px;line-height:1.7;color:var(--muted);margin:12px 0 0}footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px 0;color:#8fa5bf;font-size:10px}footer .brand{font-size:19px;color:#d9e9fa}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}:focus-visible{outline:3px solid #a6d5ff;outline-offset:4px}@keyframes orbit{from{background-position:center,center,center 48%}to{background-position:center,center,center 52%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art{animation:none}.option{transition:none}}@media(max-width:1000px){nav{gap:14px}.brand{font-size:24px}.hero{height:420px}.hero-copy{max-width:590px}.bar-row{grid-template-columns:1fr}.bar-label{font-size:11px}.option{padding-left:48px}.icon{left:10px;font-size:28px}.option:has(input:checked){padding-left:47px}.dashboard{grid-template-columns:1.2fr 1fr}}@media(max-width:720px){.page-shell{width:100%;margin:0;border-radius:0;padding:0 16px;border:0}header{height:72px;gap:12px}.brand{font-size:23px}.brand-icon{font-size:30px}nav{margin-left:auto}nav a{display:none}nav a:nth-child(2){display:block;font-size:11px}header select{font-size:11px}.hero{height:450px;margin:0 -16px}.hero-art{inset:-72px -100px 0 0;background-position:center,center,62% center;background-image:linear-gradient(90deg,#04152cd9,#04152b55 65%,transparent),linear-gradient(0deg,#07162a,transparent 35%),url('assets/earth-hero.png');animation:none}.hero-copy{padding:36px 20px 0;max-width:430px}h1{font-size:37px;letter-spacing:-1.2px}.hero-copy>p{font-size:13px;max-width:330px}.principles{gap:15px;margin-top:24px;max-width:340px}.principles small{font-size:9px}.principles span{width:33px;height:33px;font-size:20px}.panel{padding:16px}.voting{margin-top:-7px}.section-heading{align-items:flex-start;gap:9px}.voting .section-heading{flex-wrap:wrap}.section-heading h2{font-size:18px}.shield{font-size:10px}.options{grid-template-columns:1fr;gap:10px}.option{min-height:127px;padding:20px 32px 18px 74px}.option:has(input:checked){padding:19px 31px 17px 73px}.icon{left:22px;top:25px;font-size:35px}.option strong{font-size:16px}.option p{font-size:11px}.vote-bottom{grid-template-columns:1fr;gap:10px}.vote-disclaimer{text-align:center}.dashboard{grid-template-columns:1fr;gap:14px}.bar-row{grid-template-columns:1fr 1fr}.bar-label{font-size:10px}.country-row{grid-template-columns:100px 1fr}.count{font-size:12px}.count small{display:block;font-size:9px;text-align:right}.demo-strip{justify-content:flex-start;padding:15px 3px;line-height:1.5}.daylight{padding:15px 15px 0}.daylight .section-heading{flex-wrap:wrap}.landscapes{margin:0 -15px;grid-template-columns:1fr}.landscape{height:220px}.context-cards{grid-template-columns:1fr 1fr;gap:10px}.context .section-heading>.small{display:none}.context-photo{height:105px}.context-copy{padding:12px}.context-copy h3{font-size:12px}.transparency{grid-template-columns:1fr;gap:15px}.transparency h2{max-width:none;font-size:24px}.transparency>div>p{max-width:none}.transparency summary{font-size:13px}footer{flex-wrap:wrap;padding:25px 0}.context-copy p{font-size:11px}}@media(max-width:370px){h1{font-size:32px}.principles{gap:8px}.bar-row{grid-template-columns:1fr}.context-cards{grid-template-columns:1fr}}
header nav{text-shadow:0 1px 5px #000,0 1px 10px #000}header:before{content:"";position:absolute;inset:0 -28px;z-index:-1;background:linear-gradient(180deg,#06172bbf,#06172b66)}.photo-two{background-image:url("assets/sleep.png");background-position:center}.photo-three{background-image:url("assets/commute.png");background-position:center}
.photo-three{background-image:url("assets/commute.png");background-position:center}.hero-art{will-change:background-position}
.principles span svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.principles a:nth-child(2) span{color:#8ebfff}.principles a:nth-child(3) span{color:#a5cfff}.principles a:nth-child(4) span{color:#dbc99c}
.principles a span{transition:color .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease}.principles a:hover span,.principles a:focus-visible span{color:#e6f5ff;background:#2569a588;border-color:#a8d9ff;box-shadow:0 0 9px #6bbdff,0 0 22px #419fffbd,0 0 40px #388fe65c,inset 0 0 15px #a2ddff66;transform:translateY(-2px)}.principles a:hover span svg,.principles a:focus-visible span svg{filter:drop-shadow(0 0 5px #c3e6ff)}@media(prefers-reduced-motion:reduce){.principles a span{transition:none}}

/* TimeChoice ElectricBorder overrides */
.vote-electric{position:relative;isolation:isolate;margin-top:-18px;border-radius:18px}
.voting{margin-top:0;border-radius:18px;position:relative;z-index:0}
#electric-border-root{position:absolute;inset:0;z-index:2;pointer-events:none}
#electric-border-root .electric-border{position:absolute;inset:0;overflow:visible;pointer-events:none}
@media(max-width:720px){.vote-electric{margin-top:-7px}}
@property --electric-angle{syntax:"<angle>";inherits:false;initial-value:0deg}
#electric-border-root .electric-border__fallback{position:absolute;inset:-1px;border:1px solid #7df9ff44;border-radius:18px;pointer-events:none;box-shadow:0 0 12px #7df9ff22}
#electric-border-root .electric-border__fallback:before{content:"";position:absolute;inset:-1px;padding:1.5px;border-radius:inherit;background:conic-gradient(from var(--electric-angle),transparent 0deg 258deg,#7df9ff 274deg,#e9ffff 277deg,#7df9ff 281deg,transparent 295deg 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:drop-shadow(0 0 5px #7df9ff) drop-shadow(0 0 11px #7df9ff66);animation:electric-flow 4s linear infinite}
@keyframes electric-flow{to{--electric-angle:360deg}}
@media(prefers-reduced-motion:reduce){#electric-border-root .electric-border__fallback:before{animation-duration:30s}}

/* TimeChoice readable supporting text */
/* Supporting copy should remain comfortably readable beside the large visuals. */
.small,
.option p,
.vote-disclaimer,
.results-note,
.countries > p,
.light-note,
.context-copy p,
.context-foot,
.landscape p,
details p {
  font-size: 13px;
  line-height: 1.65;
}

.result-filter,
.bar-label,
.country-row,
.demo-strip,
.principles small,
.vote-disclaimer {
  font-size: 12px;
}

.count small {
  font-size: 12px;
}

.vote-electric {
  margin-top: 0;
}

.voting .section-heading {
  position: relative;
  justify-content: center;
}

.voting .section-heading h2 {
  text-align: center;
}

.voting .section-heading .shield {
  position: absolute;
  right: 0;
}

.content-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 0.34fr);
  align-items: start;
  gap: 18px;
}

.page-shell {
  overflow: clip;
}

.content-primary {
  min-width: 0;
}

.updates-panel {
  position: sticky;
  top: 18px;
  align-self: start;
  max-height: calc(100vh - 36px);
  overflow-y: auto;
  padding: 18px;
}

.updates-panel .section-heading {
  margin-bottom: 8px;
}

.updates-panel h2 {
  font-size: 18px;
}

.updates-intro {
  margin: 5px 0 0;
}

.update-item {
  padding: 12px 0;
  border-top: 1px solid #ffffff1c;
}

.update-meta {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.4;
}

.update-meta span {
  color: var(--gold);
  font-weight: 700;
  letter-spacing: 0.5px;
}

.update-item h3 {
  margin-top: 7px;
  font-size: 14px;
}

.update-item p {
  margin: 6px 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.update-item a {
  color: #9acbff;
  font-size: 12px;
  font-weight: 700;
}

.update-item a:hover {
  color: #d8ecff;
  text-decoration: underline;
}

@media (max-width: 900px) {
  .content-layout {
    grid-template-columns: 1fr;
  }

  .updates-panel {
    position: static;
    max-height: none;
    overflow: visible;
  }
}

@media (max-width: 720px) {
  .vote-electric {
    margin-top: 8px;
  }

  .voting .section-heading .shield {
    position: static;
    width: 100%;
    text-align: center;
  }

  .updates-list {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .small,
  .option p,
  .vote-disclaimer,
  .results-note,
  .countries > p,
  .light-note,
  .context-copy p,
  .context-foot,
  .landscape p,
  details p {
    font-size: 13px;
  }

  .result-filter,
  .bar-label,
  .country-row,
  .demo-strip,
  .principles small,
  .vote-disclaimer,
  .count small {
    font-size: 12px;
  }
}

.context-cards article {
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.context-cards article:hover,
.context-cards article:focus-within {
  border-color: #76b9ef;
  box-shadow: 0 0 18px #278ce92b;
  transform: translateY(-3px);
}

.context-card-trigger {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.context-card-trigger:focus-visible {
  outline: 3px solid #a6d5ff;
  outline-offset: -4px;
}

.context-card-trigger .context-photo {
  width: 100%;
  flex: none;
  transition: filter 180ms ease;
}

.context-card-trigger:hover .context-photo {
  filter: brightness(1.13);
}

.context-card-trigger .context-copy {
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  align-content: start;
  width: 100%;
}

.context-card-trigger .context-copy > span:first-child {
  flex: none;
}

.context-card-trigger .context-copy h3 {
  flex: 1;
}

.context-card-trigger .context-copy p {
  flex-basis: 100%;
}

.context-open-hint {
  display: block;
  align-self: flex-end;
  width: 100%;
  margin-top: 12px;
  color: #9fd2ff;
  font-size: 12px;
  font-weight: 700;
  text-align: right;
}

.context-dialog {
  width: min(620px, calc(100vw - 32px));
  max-height: min(88vh, 760px);
  padding: 0;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #6faee0;
  border-radius: 16px;
  background: #0b213d;
  color: var(--text);
  box-shadow: 0 24px 80px #000b, 0 0 24px #53aaff38;
}

.context-dialog::backdrop {
  background: #020b19c9;
  backdrop-filter: blur(5px);
}

.context-dialog-photo {
  height: 210px;
  background-size: cover;
}

.context-dialog-body {
  padding: 26px 30px 30px;
}

.context-dialog-body .eyebrow {
  display: block;
  margin-bottom: 10px;
}

.context-dialog-body h2 {
  font-size: 25px;
}

.context-dialog-body p {
  margin: 14px 0 0;
  color: #d5e2f2;
  font-size: 15px;
  line-height: 1.7;
}

.context-dialog-body .context-dialog-lead {
  color: #fff;
  font-weight: 700;
}

.context-dialog-body .context-dialog-note {
  margin-top: 20px;
  padding-top: 14px;
  border-top: 1px solid #6584a35c;
  color: var(--muted);
  font-size: 12px;
}

.context-dialog-close {
  position: absolute;
  z-index: 1;
  top: 14px;
  right: 14px;
  padding: 7px 12px;
  border: 1px solid #b5d9f3a6;
  border-radius: 30px;
  background: #071a32df;
  color: #f4f9ff;
  font: 700 13px 'DM Sans', Arial, sans-serif;
  cursor: pointer;
}

.context-dialog-close:hover {
  background: #173d63;
}

@media (max-width: 720px) {
  .context-dialog-photo {
    height: 165px;
  }

  .context-dialog-body {
    padding: 20px;
  }

  .context-dialog-body h2 {
    font-size: 21px;
  }

  .context-dialog-body p {
    font-size: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .context-cards article,
  .context-card-trigger .context-photo {
    transition: none;
  }
}
