/* === Verbeteringen bovenop style.css === */
.skip-link{position:absolute;left:-9999px;top:auto;}
.skip-link:focus{left:1rem;top:1rem;background:#fff;color:#000;padding:.5rem .75rem;border-radius:.4rem;z-index:9999;}
.btn{display:inline-block;padding:.6rem 1rem;border-radius:.5rem;background:#1c2030;color:#fff;text-decoration:none;border:1px solid #2a3046;font-weight:500;transition:background .15s;}
.btn:hover{background:#262c44;}
.btn--primary{background:#3b6ee9;border-color:#3b6ee9;}
.btn--primary:hover{background:#2f5ed1;}
.ad-slot{margin:2rem 0;padding:.5rem 0;text-align:center;opacity:.95;}
.ad-slot::before{content:"Advertentie";display:block;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase;color:#7a829a;margin-bottom:.4rem;}
.footer-legal{margin-top:.5rem;font-size:.9rem;}
.footer-legal a{color:#9aa3bd;}
.footer-legal a:hover{color:#fff;}
.section-audio-controls{display:flex;align-items:center;gap:.6rem;margin:.5rem 0 1rem;flex-wrap:wrap;}
.section-audio-note{font-size:.85rem;color:#9aa3bd;}
@media (max-width:720px){
  .space-hero-grid{display:block;}
  .space-hero-figure img{width:100%;height:auto;border-radius:.6rem;margin-top:1rem;}
}
.topic-card{display:block;text-decoration:none;}
.topic-card .title{font-weight:600;margin-bottom:.3rem;}

/* === Reclame-fix: lege of niet-gevulde ads automatisch verbergen === */

/* Verberg ad-slot wanneer Google er geen reclame in plaatst */
ins.adsbygoogle[data-ad-status="unfilled"]{display:none !important;}
ins.adsbygoogle:not([data-ad-status]){min-height:0;}

/* Lege of niet-gevulde slot-container ook verbergen (geen "Advertentie" label boven niets) */
.ad-slot:has(ins[data-ad-status="unfilled"]),
.ad-slot:has(ins:not([data-ad-status])){display:none;}

/* Maximale afmetingen zodat ads nooit groter worden dan de content kolom */
.ad-slot{max-width:100%;overflow:hidden;}
.ad-slot ins.adsbygoogle{max-width:100%;}

/* Geen abrupte sprong: zachte fade-in zodra ad geladen is */
ins.adsbygoogle{transition:opacity .25s;}
ins.adsbygoogle[data-ad-status="filled"]{opacity:1;}

/* Anchor/sticky ads onderaan: zorg dat ze niet over de content heen plakken
   en altijd te sluiten zijn — gewone ruimte eronder reserveren */
body{padding-bottom:90px;}
@media (min-width:1100px){
  /* Geen extra ruimte op desktop, daar zit de anchor onderaan los */
  body{padding-bottom:0;}
}

/* === Interactief zonnestelsel === */
.solar-controls{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin:1rem 0;}
.solar-hint{font-size:.85rem;color:#9aa3bd;}

.solar-system{
  position:relative;
  width:100%;
  max-width:720px;
  aspect-ratio:1/1;
  margin:1.5rem auto;
  background:radial-gradient(circle at center, #0a0d1a 0%, #03050d 70%);
  border-radius:50%;
  overflow:hidden;
  box-shadow:inset 0 0 60px rgba(255,255,255,.04);
}

/* Sterren-achtergrond */
.solar-system::before{
  content:"";position:absolute;inset:0;
  background-image:
    radial-gradient(1px 1px at 20% 30%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 70% 80%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 50% 50%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 85% 20%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 30% 70%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 10% 90%, #fff 50%, transparent 51%),
    radial-gradient(1px 1px at 60% 15%, #fff 50%, transparent 51%);
  opacity:.5;
}

/* Zon in het midden */
.sun{
  position:absolute;left:50%;top:50%;
  width:9%;aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #fff8b0, #ffb100 60%, #c44a00 100%);
  box-shadow:0 0 20px #ffb100, 0 0 40px rgba(255,177,0,.5);
  z-index:2;
  display:flex;align-items:center;justify-content:center;
}
.sun .planet-label{display:none;}

/* Banen (cirkels) */
.orbit{
  position:absolute;left:50%;top:50%;
  border:1px dashed rgba(255,255,255,.12);
  border-radius:50%;
  transform:translate(-50%,-50%);
  animation: orbit-spin linear infinite;
}
.orbit-1{width:18%;aspect-ratio:1/1;animation-duration:6s;}
.orbit-2{width:26%;aspect-ratio:1/1;animation-duration:10s;}
.orbit-3{width:36%;aspect-ratio:1/1;animation-duration:14s;}
.orbit-4{width:46%;aspect-ratio:1/1;animation-duration:20s;}
.orbit-5{width:60%;aspect-ratio:1/1;animation-duration:32s;}
.orbit-6{width:74%;aspect-ratio:1/1;animation-duration:48s;}
.orbit-7{width:86%;aspect-ratio:1/1;animation-duration:68s;}
.orbit-8{width:96%;aspect-ratio:1/1;animation-duration:90s;}

@keyframes orbit-spin{ to { transform: translate(-50%,-50%) rotate(360deg); } }

.solar-system.is-paused .orbit{ animation-play-state: paused; }
.solar-system.is-paused .planet{ animation-play-state: paused; }

/* Planeten */
.planet{
  position:absolute;top:50%;left:0;
  transform:translate(-50%,-50%);
  width:14px;height:14px;
  border-radius:50%;
  text-indent:-9999px;
  overflow:hidden;
  cursor:pointer;
  text-decoration:none;
  box-shadow:0 0 6px rgba(255,255,255,.3);
  transition:box-shadow .2s, transform .2s;
  /* Tegen-roteren zodat planeet niet om eigen as tolt */
  animation: planet-counter linear infinite;
  animation-duration: inherit;
}
@keyframes planet-counter{ to { transform: translate(-50%,-50%) rotate(-360deg); } }

.orbit-1 .planet{animation-duration:6s;}
.orbit-2 .planet{animation-duration:10s;}
.orbit-3 .planet{animation-duration:14s;}
.orbit-4 .planet{animation-duration:20s;}
.orbit-5 .planet{animation-duration:32s;}
.orbit-6 .planet{animation-duration:48s;}
.orbit-7 .planet{animation-duration:68s;}
.orbit-8 .planet{animation-duration:90s;}

.planet:hover, .planet:focus{
  box-shadow:0 0 12px #fff, 0 0 22px rgba(255,255,255,.4);
  outline:none;
}

/* Kleuren en formaten per planeet */
.planet-mercury{background:#b6b1ad;}
.planet-venus  {background:#d8a86a;width:16px;height:16px;}
.planet-earth  {background:#3a78d6;width:18px;height:18px;}
.planet-mars   {background:#c1440e;width:16px;height:16px;}
.planet-jupiter{background:#c9a87c;width:32px;height:32px;}
.planet-saturn {background:#d8c98a;width:28px;height:28px;box-shadow:0 0 0 4px rgba(255,255,255,.08);}
.planet-uranus {background:#7fd0d6;width:22px;height:22px;}
.planet-neptune{background:#3a5fd6;width:22px;height:22px;}

/* Tekstvak met uitleg onder de animatie */
.planet-info{
  margin:1rem auto;max-width:720px;
  background:#13182a;border:1px solid #232a44;
  padding:.9rem 1rem;border-radius:.6rem;
  font-size:.95rem;
}
.planet-info a{color:#7aa9ff;}

/* Toegankelijkheid: respecteer gebruiker-voorkeur "verminderde beweging" */
@media (prefers-reduced-motion: reduce){
  .orbit, .planet{ animation: none !important; }
}

/* Mobiel: kleinere zon, dunnere banen blijven proportioneel */
@media (max-width:520px){
  .solar-system{max-width:100%;}
  .planet-jupiter{width:24px;height:24px;}
  .planet-saturn{width:22px;height:22px;}
}

/* === Leefbare zone (habitable zone) === */
.habitable-zone{
  position:absolute;left:50%;top:50%;
  border-radius:50%;
  transform:translate(-50%,-50%);
  pointer-events:none;
  border:2px solid rgba(80,220,140,.25);
  background:radial-gradient(circle, rgba(80,220,140,0) 60%, rgba(80,220,140,.10) 70%, rgba(80,220,140,.18) 85%, rgba(80,220,140,0) 95%);
  z-index:1;
}
/* Zonnestelsel: leefbare zone tussen Venus en Mars (~30-44% breed) */
.solar-system .habitable-zone{
  width:42%;aspect-ratio:1/1;
  /* binnenrand mask via box-shadow */
  box-shadow:inset 0 0 0 6px rgba(80,220,140,.06);
}
.habitable-label{
  position:absolute;left:50%;top:6%;
  transform:translateX(-50%);
  background:rgba(80,220,140,.15);
  border:1px solid rgba(80,220,140,.4);
  color:#a7f3c4;
  padding:.15rem .5rem;border-radius:.4rem;
  font-size:.75rem;letter-spacing:.03em;text-transform:uppercase;
  pointer-events:none;
}

/* === TRAPPIST-1 stelsel === */
.solar-system.trappist{
  background:radial-gradient(circle at center, #0e0810 0%, #060209 70%);
}
.trappist-sun{
  background:radial-gradient(circle at 35% 35%, #ffd9b0, #ff7a3a 60%, #8a1a00 100%) !important;
  box-shadow:0 0 18px #ff7a3a, 0 0 36px rgba(255,122,58,.45) !important;
  width:7% !important;
}

/* Banen veel dichter op elkaar dan ons zonnestelsel */
.trappist .t-orbit-1{width:14%;aspect-ratio:1/1;animation-duration:3s;}
.trappist .t-orbit-2{width:20%;aspect-ratio:1/1;animation-duration:5s;}
.trappist .t-orbit-3{width:27%;aspect-ratio:1/1;animation-duration:7s;}
.trappist .t-orbit-4{width:35%;aspect-ratio:1/1;animation-duration:10s;}
.trappist .t-orbit-5{width:44%;aspect-ratio:1/1;animation-duration:14s;}
.trappist .t-orbit-6{width:54%;aspect-ratio:1/1;animation-duration:19s;}
.trappist .t-orbit-7{width:66%;aspect-ratio:1/1;animation-duration:26s;}

.trappist .t-orbit-1 .planet,
.trappist .t-orbit-2 .planet,
.trappist .t-orbit-3 .planet,
.trappist .t-orbit-4 .planet,
.trappist .t-orbit-5 .planet,
.trappist .t-orbit-6 .planet,
.trappist .t-orbit-7 .planet{
  animation: planet-counter linear infinite;
}
.trappist .t-orbit-1 .planet{animation-duration:3s;}
.trappist .t-orbit-2 .planet{animation-duration:5s;}
.trappist .t-orbit-3 .planet{animation-duration:7s;}
.trappist .t-orbit-4 .planet{animation-duration:10s;}
.trappist .t-orbit-5 .planet{animation-duration:14s;}
.trappist .t-orbit-6 .planet{animation-duration:19s;}
.trappist .t-orbit-7 .planet{animation-duration:26s;}

/* Alle TRAPPIST-planeten zijn ongeveer aardegroot - kleur op basis van temperatuur */
.t-planet-b{background:#d97a4a;width:13px;height:13px;}
.t-planet-c{background:#d99a5a;width:14px;height:14px;}
.t-planet-d{background:#c8b27a;width:13px;height:13px;}
.t-planet-e{background:#5fa6c4;width:13px;height:13px;}
.t-planet-f{background:#5f8fc4;width:14px;height:14px;}
.t-planet-g{background:#6f7fc4;width:15px;height:15px;}
.t-planet-h{background:#a8b8d8;width:12px;height:12px;}

/* Leefbare zone ligt veel dichter bij de ster (rond banen e,f,g = 35-54%) */
.trappist-zone{
  width:54% !important;
  aspect-ratio:1/1;
}

/* Op homepage een link naar Andere zonnestelsels in de quick grid */

/* === Dropdown menu in topnav === */
.nav-dropdown{position:relative;display:inline-block;}
.nav-dropdown-toggle{
  background:transparent;border:1px solid transparent;color:inherit;
  font:inherit;cursor:pointer;padding:.4rem .8rem;border-radius:1rem;
}
.nav-dropdown-toggle:hover,
.nav-dropdown-toggle[aria-expanded="true"]{background:rgba(255,255,255,.08);}
.nav-dropdown-menu{
  display:none;position:absolute;top:100%;left:0;z-index:50;
  min-width:220px;margin-top:.4rem;
  background:#13182a;border:1px solid #232a44;border-radius:.5rem;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
  padding:.4rem;
}
.nav-dropdown-menu a{
  display:block;padding:.5rem .7rem;border-radius:.4rem;
  text-decoration:none;color:#dfe5f5;font-size:.95rem;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-menu a:focus{background:rgba(122,169,255,.15);color:#fff;outline:none;}
.nav-dropdown.is-open .nav-dropdown-menu{display:block;}
.nav-dropdown:hover .nav-dropdown-menu{display:block;}

/* Mobiel: dropdown wordt gewone lijst */
@media (max-width:720px){
  .nav-dropdown-menu{
    position:static;display:block;
    background:transparent;border:none;box-shadow:none;
    padding:0 0 0 1rem;margin:.2rem 0;
  }
  .nav-dropdown-toggle{display:none;}
}

/* === Sterren voor extra stelsels === */
.kepler-sun{background:radial-gradient(circle at 35% 35%, #ffe6a0, #ffae3a 60%, #b04a00 100%) !important;box-shadow:0 0 18px #ffae3a,0 0 36px rgba(255,174,58,.4) !important;width:8% !important;}
.proxima-sun{background:radial-gradient(circle at 35% 35%, #ffc1a0, #ff5a2a 60%, #6a1100 100%) !important;box-shadow:0 0 16px #ff5a2a,0 0 30px rgba(255,90,42,.4) !important;width:6% !important;}
.alphacen-sun-a{background:radial-gradient(circle at 35% 35%, #fff8b0, #ffb100 60%, #c44a00 100%) !important;width:8% !important;}
.alphacen-sun-b{position:absolute;left:62%;top:50%;width:5%;aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 35% 35%, #ffe0a0, #ff9a30 60%, #a03c00 100%);box-shadow:0 0 12px #ff9a30;transform:translate(-50%,-50%);z-index:2;}

/* Kepler-186 banen */
.kepler .k-orbit-1{width:18%;aspect-ratio:1/1;animation-duration:5s;}
.kepler .k-orbit-2{width:26%;aspect-ratio:1/1;animation-duration:8s;}
.kepler .k-orbit-3{width:34%;aspect-ratio:1/1;animation-duration:12s;}
.kepler .k-orbit-4{width:46%;aspect-ratio:1/1;animation-duration:18s;}
.kepler .k-orbit-5{width:60%;aspect-ratio:1/1;animation-duration:30s;}
.kepler .k-orbit-1 .planet,
.kepler .k-orbit-2 .planet,
.kepler .k-orbit-3 .planet,
.kepler .k-orbit-4 .planet,
.kepler .k-orbit-5 .planet{animation:planet-counter linear infinite;}
.kepler .k-orbit-1 .planet{animation-duration:5s;}
.kepler .k-orbit-2 .planet{animation-duration:8s;}
.kepler .k-orbit-3 .planet{animation-duration:12s;}
.kepler .k-orbit-4 .planet{animation-duration:18s;}
.kepler .k-orbit-5 .planet{animation-duration:30s;background:#5fa6c4;width:14px;height:14px;}
.k-planet-b{background:#c8b27a;}
.k-planet-c{background:#d8a86a;}
.k-planet-d{background:#c1440e;}
.k-planet-e{background:#a8b8d8;}
.kepler-zone{width:55% !important;aspect-ratio:1/1;}

/* Proxima Centauri banen */
.proxima .p-orbit-1{width:22%;aspect-ratio:1/1;animation-duration:4s;}
.proxima .p-orbit-2{width:38%;aspect-ratio:1/1;animation-duration:11s;}
.proxima .p-orbit-3{width:70%;aspect-ratio:1/1;animation-duration:60s;}
.proxima .p-orbit-1 .planet,
.proxima .p-orbit-2 .planet,
.proxima .p-orbit-3 .planet{animation:planet-counter linear infinite;}
.proxima .p-orbit-1 .planet{animation-duration:4s;}
.proxima .p-orbit-2 .planet{animation-duration:11s;}
.proxima .p-orbit-3 .planet{animation-duration:60s;}
.p-planet-d{background:#c8a87a;width:11px;height:11px;}
.p-planet-b{background:#5fa6c4;width:14px;height:14px;}
.p-planet-c{background:#7080a8;width:16px;height:16px;}
.proxima-zone{width:42% !important;aspect-ratio:1/1;}

/* Alpha Centauri banen (rond ster A) */
.alphacen .a-orbit-1{width:24%;aspect-ratio:1/1;animation-duration:7s;}
.alphacen .a-orbit-2{width:36%;aspect-ratio:1/1;animation-duration:14s;}
.alphacen .a-orbit-1 .planet,
.alphacen .a-orbit-2 .planet{animation:planet-counter linear infinite;}
.alphacen .a-orbit-1 .planet{animation-duration:7s;}
.alphacen .a-orbit-2 .planet{animation-duration:14s;}
.a-planet-bb{background:#c1440e;width:13px;height:13px;}
.a-planet-ab{background:#a8b8d8;width:14px;height:14px;}

/* === Tau Ceti (zon-achtig, geel) === */
.tauceti-sun{background:radial-gradient(circle at 35% 35%, #fff8b0,#ffc850 60%,#c47800 100%) !important;box-shadow:0 0 18px #ffc850,0 0 36px rgba(255,200,80,.4) !important;width:8% !important;}
.tauceti .tc-orbit-1{width:18%;aspect-ratio:1/1;animation-duration:5s;}
.tauceti .tc-orbit-2{width:28%;aspect-ratio:1/1;animation-duration:9s;}
.tauceti .tc-orbit-3{width:40%;aspect-ratio:1/1;animation-duration:16s;}
.tauceti .tc-orbit-4{width:54%;aspect-ratio:1/1;animation-duration:26s;}
.tauceti .tc-orbit-1 .planet,
.tauceti .tc-orbit-2 .planet,
.tauceti .tc-orbit-3 .planet,
.tauceti .tc-orbit-4 .planet{animation:planet-counter linear infinite;}
.tauceti .tc-orbit-1 .planet{animation-duration:5s;}
.tauceti .tc-orbit-2 .planet{animation-duration:9s;}
.tauceti .tc-orbit-3 .planet{animation-duration:16s;}
.tauceti .tc-orbit-4 .planet{animation-duration:26s;}
.tc-planet-g{background:#d99a5a;width:13px;height:13px;}
.tc-planet-h{background:#c8b27a;width:13px;height:13px;}
.tc-planet-e{background:#5fa6c4;width:14px;height:14px;}
.tc-planet-f{background:#5f8fc4;width:14px;height:14px;}
.tauceti-zone{width:48% !important;aspect-ratio:1/1;}

/* === TOI-700 (rode dwerg) === */
.toi700-sun{background:radial-gradient(circle at 35% 35%, #ffc1a0,#ff5a2a 60%,#6a1100 100%) !important;box-shadow:0 0 16px #ff5a2a,0 0 30px rgba(255,90,42,.4) !important;width:6% !important;}
.toi700 .toi-orbit-1{width:16%;aspect-ratio:1/1;animation-duration:4s;}
.toi700 .toi-orbit-2{width:24%;aspect-ratio:1/1;animation-duration:7s;}
.toi700 .toi-orbit-3{width:34%;aspect-ratio:1/1;animation-duration:11s;}
.toi700 .toi-orbit-4{width:46%;aspect-ratio:1/1;animation-duration:18s;}
.toi700 .toi-orbit-1 .planet,
.toi700 .toi-orbit-2 .planet,
.toi700 .toi-orbit-3 .planet,
.toi700 .toi-orbit-4 .planet{animation:planet-counter linear infinite;}
.toi700 .toi-orbit-1 .planet{animation-duration:4s;}
.toi700 .toi-orbit-2 .planet{animation-duration:7s;}
.toi700 .toi-orbit-3 .planet{animation-duration:11s;}
.toi700 .toi-orbit-4 .planet{animation-duration:18s;}
.toi-planet-b{background:#d97a4a;width:12px;height:12px;}
.toi-planet-c{background:#c8a87a;width:14px;height:14px;}
.toi-planet-d{background:#5fa6c4;width:13px;height:13px;}
.toi-planet-e{background:#5f8fc4;width:13px;height:13px;}
.toi700-zone{width:42% !important;aspect-ratio:1/1;}

/* === Kepler-452 (zon-achtig, iets ouder) === */
.kepler452-sun{background:radial-gradient(circle at 35% 35%, #fff5b0,#ffb730 60%,#a05a00 100%) !important;box-shadow:0 0 18px #ffb730 !important;width:9% !important;}
.kepler452 .k4-orbit-1{width:42%;aspect-ratio:1/1;animation-duration:18s;}
.kepler452 .k4-orbit-1 .planet{animation:planet-counter linear infinite;animation-duration:18s;}
.k4-planet-b{background:#3a78d6;width:18px;height:18px;}
.kepler452-zone{width:46% !important;aspect-ratio:1/1;}

/* === 55 Cancri (dubbelster + 5 planeten dicht op elkaar) === */
.cancri-sun{background:radial-gradient(circle at 35% 35%, #fff8b0,#ffc850 60%,#c47800 100%) !important;width:7% !important;}
.cancri-sun-b{position:absolute;left:75%;top:35%;width:3%;aspect-ratio:1/1;border-radius:50%;background:radial-gradient(circle at 35% 35%, #ffc1a0,#ff5a2a);transform:translate(-50%,-50%);z-index:2;box-shadow:0 0 10px #ff5a2a;}
.cancri .c-orbit-1{width:11%;aspect-ratio:1/1;animation-duration:2s;}
.cancri .c-orbit-2{width:18%;aspect-ratio:1/1;animation-duration:5s;}
.cancri .c-orbit-3{width:26%;aspect-ratio:1/1;animation-duration:9s;}
.cancri .c-orbit-4{width:38%;aspect-ratio:1/1;animation-duration:18s;}
.cancri .c-orbit-5{width:60%;aspect-ratio:1/1;animation-duration:40s;}
.cancri .c-orbit-1 .planet,
.cancri .c-orbit-2 .planet,
.cancri .c-orbit-3 .planet,
.cancri .c-orbit-4 .planet,
.cancri .c-orbit-5 .planet{animation:planet-counter linear infinite;}
.cancri .c-orbit-1 .planet{animation-duration:2s;}
.cancri .c-orbit-2 .planet{animation-duration:5s;}
.cancri .c-orbit-3 .planet{animation-duration:9s;}
.cancri .c-orbit-4 .planet{animation-duration:18s;}
.cancri .c-orbit-5 .planet{animation-duration:40s;}
.c-planet-e{background:linear-gradient(135deg,#fff,#aac8ff);width:12px;height:12px;box-shadow:0 0 10px rgba(170,200,255,.7);}
.c-planet-b{background:#c8b27a;width:18px;height:18px;}
.c-planet-c{background:#d99a5a;width:14px;height:14px;}
.c-planet-f{background:#a8b8d8;width:13px;height:13px;}
.c-planet-d{background:#6f7fc4;width:22px;height:22px;}

/* === Animatie-fix en extra exoplaneten === */
.orbit{will-change:transform;transform-origin:center center;}
.planet{will-change:transform;}
.solar-system:not(.is-paused) .orbit,
.solar-system:not(.is-paused) .planet{animation-play-state:running;}
.motion-note{display:block;margin:.35rem 0 0;color:#9aa3bd;font-size:.85rem;}

/* Nieuwe/extra stelsels met echte animatie */
.lhs1140-sun,.k218-sun,.wasp12-sun{background:radial-gradient(circle at 35% 35%,#ffc1a0,#ff5a2a 60%,#6a1100 100%) !important;box-shadow:0 0 16px #ff5a2a,0 0 30px rgba(255,90,42,.4) !important;width:6% !important;}
.hd209458-sun{background:radial-gradient(circle at 35% 35%,#fff8b0,#ffc850 60%,#c47800 100%) !important;box-shadow:0 0 18px #ffc850,0 0 36px rgba(255,200,80,.4) !important;width:8% !important;}

.lhs1140 .lhs-orbit-1{width:18%;aspect-ratio:1/1;animation-duration:5s;}
.lhs1140 .lhs-orbit-2{width:42%;aspect-ratio:1/1;animation-duration:17s;}
.lhs1140 .lhs-orbit-1 .planet{animation-duration:5s;}
.lhs1140 .lhs-orbit-2 .planet{animation-duration:17s;}
.lhs-planet-c{background:#d97a4a;width:12px;height:12px;}
.lhs-planet-b{background:#5fa6c4;width:15px;height:15px;}
.lhs1140-zone{width:44% !important;aspect-ratio:1/1;}

.k218 .k218-orbit-1{width:18%;aspect-ratio:1/1;animation-duration:5s;}
.k218 .k218-orbit-2{width:44%;aspect-ratio:1/1;animation-duration:18s;}
.k218 .k218-orbit-1 .planet{animation-duration:5s;}
.k218 .k218-orbit-2 .planet{animation-duration:18s;}
.k218-planet-c{background:#c8a87a;width:12px;height:12px;}
.k218-planet-b{background:#5f8fc4;width:18px;height:18px;}
.k218-zone{width:48% !important;aspect-ratio:1/1;}

.hd209458 .hd-orbit-1{width:18%;aspect-ratio:1/1;animation-duration:4s;}
.hd209458 .hd-orbit-1 .planet{animation-duration:4s;}
.hd-planet-b{background:#d99a5a;width:24px;height:24px;box-shadow:0 0 10px rgba(217,154,90,.65);}
.hd209458-zone{width:46% !important;aspect-ratio:1/1;opacity:.45;}

.wasp12 .w12-orbit-1{width:16%;aspect-ratio:1/1;animation-duration:3s;}
.wasp12 .w12-orbit-1 .planet{animation-duration:3s;}
.w12-planet-b{background:#e06b4a;width:25px;height:25px;box-shadow:0 0 12px rgba(224,107,74,.8);}
.wasp12-zone{width:42% !important;aspect-ratio:1/1;opacity:.35;}

@media (prefers-reduced-motion: reduce){
  .motion-note::after{content:" Je apparaat/browser heeft mogelijk 'minder beweging' aanstaan; dan kan animatie stil staan.";}
}

/* =========================================================
   EXTRA FIX 28-04: animaties duidelijker zichtbaar
   ---------------------------------------------------------
   Sommige browsers/Windows-instellingen zetten beweging uit via
   prefers-reduced-motion. Voor deze educatieve animatie houden we
   de planeetbanen toch zichtbaar bewegend, omdat de pagina anders
   stil lijkt.
   ========================================================= */
.solar-system .orbit{
  animation-name: orbit-spin !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running;
}
.solar-system .planet{
  animation-name: planet-counter !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
  animation-play-state: running;
}
.solar-system.is-paused .orbit,
.solar-system.is-paused .planet{
  animation-play-state: paused !important;
}

/* Maak stelsels met maar 1 of 2 planeten duidelijker zichtbaar. */
.hd209458 .hd-orbit-1{width:34% !important; animation-duration:2.8s !important;}
.hd209458 .hd-orbit-1 .planet{animation-duration:2.8s !important; width:18px !important; height:18px !important;}
.wasp12 .w12-orbit-1{width:32% !important; animation-duration:2.4s !important;}
.wasp12 .w12-orbit-1 .planet{animation-duration:2.4s !important; width:18px !important; height:18px !important;}
.alphacen .a-orbit-1{width:28% !important; animation-duration:4.5s !important;}
.alphacen .a-orbit-2{width:44% !important; animation-duration:8s !important;}
.alphacen .a-orbit-1 .planet{animation-duration:4.5s !important;}
.alphacen .a-orbit-2 .planet{animation-duration:8s !important;}
.lhs1140 .lhs-orbit-1{animation-duration:4s !important;}
.lhs1140 .lhs-orbit-2{animation-duration:9s !important;}
.k218 .k218-orbit-1{animation-duration:4s !important;}
.k218 .k218-orbit-2{animation-duration:9s !important;}

/* Override voor browsers met minder-beweging-instelling. */
@media (prefers-reduced-motion: reduce){
  .solar-system .orbit{
    animation-name: orbit-spin !important;
    animation-timing-function: linear !important;
    animation-iteration-count: infinite !important;
  }
  .solar-system .planet{
    animation-name: planet-counter !important;
    animation-timing-function: linear !important;
    animation-iteration-count: infinite !important;
  }
  .solar-system.is-paused .orbit,
  .solar-system.is-paused .planet{
    animation-play-state: paused !important;
  }
}


/* === Planeetstatus: bevestigd of mogelijk === */
.status-legend{
  display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;
  margin:.25rem 0 1rem;
}
.status-chip{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.35rem .65rem;border-radius:999px;
  font-size:.82rem;font-weight:700;border:1px solid rgba(255,255,255,.14);
  background:#151a2c;color:#dfe7ff;
}
.status-confirmed{border-color:rgba(80,220,140,.45);background:rgba(80,220,140,.12);color:#baf7d0;}
.status-possible{border-color:rgba(255,180,80,.5);background:rgba(255,180,80,.13);color:#ffdca8;}
.planet-status-confirmed{outline:2px solid rgba(80,220,140,.7);outline-offset:2px;}
.planet-status-possible{
  outline:2px dashed rgba(255,190,90,.85);outline-offset:3px;
  opacity:.68;filter:saturate(.85);
}
.orbit:has(.planet-status-possible){border-style:dashed;border-color:rgba(255,190,90,.28);}
.status-line{display:block;margin-top:.35rem;font-size:.9rem;color:#cbd5ef;}
.status-line .status-chip{font-size:.78rem;padding:.18rem .5rem;margin-right:.4rem;}
.planet-info .status-note{display:block;margin-top:.35rem;color:#9aa3bd;}

/* =========================================================
   ORBIT FIX 28-04: geen planeet door een andere ster/planeet
   ---------------------------------------------------------
   De animatie is schematisch. Banen krijgen iets meer afstand
   en tweede sterren staan visueel buiten de planeetbanen.
   ========================================================= */
@keyframes orbit-spin-safe{
  from{transform:translate(-50%,-50%) rotate(var(--orbit-start, 0deg));}
  to{transform:translate(-50%,-50%) rotate(calc(var(--orbit-start, 0deg) + 360deg));}
}
.solar-system .orbit{
  animation-name:orbit-spin-safe !important;
}
/* Startposities spreiden, zodat planeten niet bovenop elkaar beginnen. */
.orbit-1,.t-orbit-1,.k-orbit-1,.p-orbit-1,.a-orbit-1,.tc-orbit-1,.toi-orbit-1,.k4-orbit-1,.c-orbit-1,.lhs-orbit-1,.k218-orbit-1,.hd-orbit-1,.w12-orbit-1{--orbit-start:20deg;}
.orbit-2,.t-orbit-2,.k-orbit-2,.p-orbit-2,.a-orbit-2,.tc-orbit-2,.toi-orbit-2,.c-orbit-2,.lhs-orbit-2,.k218-orbit-2{--orbit-start:95deg;}
.orbit-3,.t-orbit-3,.k-orbit-3,.p-orbit-3,.tc-orbit-3,.toi-orbit-3,.c-orbit-3{--orbit-start:165deg;}
.orbit-4,.t-orbit-4,.k-orbit-4,.tc-orbit-4,.toi-orbit-4,.c-orbit-4{--orbit-start:240deg;}
.orbit-5,.t-orbit-5,.k-orbit-5,.c-orbit-5{--orbit-start:310deg;}
.t-orbit-6,.orbit-6{--orbit-start:55deg;}
.t-orbit-7,.orbit-7{--orbit-start:125deg;}
.orbit-8{--orbit-start:200deg;}

/* Alpha Centauri: tweede ster buiten de onzekere planeetbanen zetten. */
.alphacen .a-orbit-1{width:18% !important;animation-duration:4.5s !important;}
.alphacen .a-orbit-2{width:28% !important;animation-duration:8s !important;}
.alphacen .habitable-zone{width:30% !important;}
.alphacen-sun-b{left:84% !important;top:44% !important;width:5% !important;}

/* 55 Cancri: tweede ster staat ver weg; niet door de planeetbanen heen. */
.cancri-sun-b{left:86% !important;top:25% !important;width:3% !important;}
.cancri .c-orbit-1{width:12% !important;}
.cancri .c-orbit-2{width:20% !important;}
.cancri .c-orbit-3{width:30% !important;}
.cancri .c-orbit-4{width:43% !important;}
.cancri .c-orbit-5{width:62% !important;}

.orbit-note{
  margin:.45rem 0 0;
  color:#9aa3bd;
  font-size:.85rem;
  line-height:1.45;
}

/* === Extra duidelijke beweging fix === */
.solar-system[data-js-animation="active"] .orbit{
  animation:none !important;
}
.solar-system[data-js-animation="active"] .planet{
  animation:none !important;
}
.solar-system[data-js-animation="active"] .planet::after{
  content:"";
  position:absolute;
  right:100%;
  top:50%;
  width:18px;
  height:2px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.42));
  pointer-events:none;
}
.orbit::after{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;
  height:4px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(255,255,255,.35);
  box-shadow:0 0 8px rgba(255,255,255,.5);
}

/* =========================================================
   ECHTE ZICHTBARE BEWEGING FIX
   ---------------------------------------------------------
   De planeten worden nu met JavaScript als losse punten over
   hun baan gezet. De baanlijnen zijn expres duidelijker gemaakt.
   ========================================================= */
.solar-system .orbit{
  border-width:2px !important;
  border-color:rgba(180,205,255,.34) !important;
  box-shadow:0 0 10px rgba(120,170,255,.10) inset !important;
  z-index:3 !important;
}
.solar-system .orbit:has(.planet-status-possible){
  border-style:dashed !important;
  border-color:rgba(255,190,90,.55) !important;
}
.solar-system[data-js-animation="active"] .orbit{
  animation:none !important;
  transform:translate(-50%,-50%) !important;
}
.solar-system[data-js-animation="active"] .planet{
  animation:none !important;
  transform:translate(-50%,-50%) !important;
  z-index:8 !important;
}
.solar-system[data-js-animation="active"] .planet::after{
  content:"";
  position:absolute;
  right:100%;
  top:50%;
  width:28px;
  height:3px;
  transform:translateY(-50%);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.55));
  pointer-events:none;
}
.solar-system .habitable-zone{
  z-index:1 !important;
  pointer-events:none !important;
}
.solar-system .habitable-label{
  z-index:9 !important;
}
.sun{z-index:6 !important;}

/* =========================================================
   FORCE MOTION V3 - duidelijk zichtbare planeetbeweging
   ---------------------------------------------------------
   Planeten staan in het midden van hun baan en krijgen via
   JavaScript een x/y-verplaatsing. Zo bewegen ze zichtbaar,
   ook als gewone CSS-animaties worden tegengehouden.
   ========================================================= */
.solar-system[data-js-animation="force-motion-v3"] .orbit{
  animation:none !important;
  transform:translate(-50%,-50%) !important;
  border-width:2px !important;
  border-color:rgba(185,210,255,.42) !important;
  box-shadow:0 0 12px rgba(150,190,255,.14) inset !important;
  z-index:3 !important;
}
.solar-system[data-js-animation="force-motion-v3"] .orbit:has(.planet-status-possible){
  border-style:dashed !important;
  border-color:rgba(255,190,90,.72) !important;
}
.solar-system[data-js-animation="force-motion-v3"] .planet{
  left:50% !important;
  top:50% !important;
  animation:none !important;
  transition:none !important;
  transform:translate(-50%,-50%) translate(var(--orbit-x,0px), var(--orbit-y,0px)) !important;
  z-index:20 !important;
  outline:1px solid rgba(255,255,255,.25);
}
.solar-system[data-js-animation="force-motion-v3"] .planet::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:34px;
  height:3px;
  transform:translate(-100%,-50%);
  border-radius:999px;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.65));
  pointer-events:none;
}
.solar-system[data-js-animation="force-motion-v3"] .habitable-label{
  transform:translate(-50%,-140%) !important;
}

/* === Vaste canvas-animatie voor Alpha Centauri en 55 Cancri === */
.exo-fixed-system{width:min(720px,92vw);aspect-ratio:1/1;margin:1.2rem auto;position:relative;border-radius:50%;background:radial-gradient(circle at center,rgba(9,13,28,.96) 0%,rgba(5,8,18,.98) 68%,rgba(2,5,13,1) 100%);box-shadow:inset 0 0 90px rgba(0,0,0,.65),0 0 40px rgba(40,80,160,.08);overflow:hidden;}
.exo-fixed-system canvas{width:100%;height:100%;display:block;cursor:pointer;}
.exo-fixed-system__hint{position:absolute;left:50%;bottom:.8rem;transform:translateX(-50%);color:#9aa8c8;font-size:.82rem;background:rgba(8,12,25,.72);border:1px solid rgba(120,150,220,.18);border-radius:999px;padding:.3rem .7rem;pointer-events:none;}


/* === Nieuwe stelsels: Kepler-90, HR 8799, GJ 1214 en KELT-9 === */
.solar-system .sun[data-name]{cursor:pointer;}
.kepler90-sun,.hr8799-sun{background:radial-gradient(circle at 35% 35%,#fff8b0,#ffc850 60%,#c47800 100%) !important;box-shadow:0 0 18px #ffc850,0 0 36px rgba(255,200,80,.4) !important;width:7% !important;}
.gj1214-sun{background:radial-gradient(circle at 35% 35%,#ffccaa,#ff6b35 60%,#6a1500 100%) !important;box-shadow:0 0 18px #ff6b35,0 0 36px rgba(255,90,42,.35) !important;width:6% !important;}
.kelt9-sun{background:radial-gradient(circle at 35% 35%,#ffffff,#9ed0ff 55%,#4a7cff 100%) !important;box-shadow:0 0 24px #9ed0ff,0 0 46px rgba(120,180,255,.6) !important;width:9% !important;}
.kepler90-zone{width:52% !important;aspect-ratio:1/1;opacity:.42;} .hr8799-zone{width:40% !important;aspect-ratio:1/1;opacity:.22;} .gj1214-zone{width:34% !important;aspect-ratio:1/1;opacity:.30;} .kelt9-zone{width:48% !important;aspect-ratio:1/1;opacity:.18;}
.kepler90 .orbit-1{width:12% !important}.kepler90 .orbit-2{width:18% !important}.kepler90 .orbit-3{width:24% !important}.kepler90 .orbit-4{width:32% !important}.kepler90 .orbit-5{width:42% !important}.kepler90 .orbit-6{width:54% !important}.kepler90 .orbit-7{width:68% !important}.kepler90 .orbit-8{width:82% !important}
.hr8799 .orbit-3{width:34% !important}.hr8799 .orbit-4{width:48% !important}.hr8799 .orbit-5{width:62% !important}.hr8799 .orbit-6{width:78% !important}
.gj1214 .orbit-1{width:30% !important}.kelt9 .orbit-1{width:24% !important}
.k90-b{background:#b8b8aa;width:9px;height:9px}.k90-c{background:#d0a66c;width:10px;height:10px}.k90-i{background:#93c8d8;width:11px;height:11px}.k90-d{background:#7fb0d0;width:14px;height:14px}.k90-e{background:#d7b474;width:13px;height:13px}.k90-f{background:#c49068;width:15px;height:15px}.k90-g{background:#7a8fd6;width:19px;height:19px}.k90-h{background:#6f7fc4;width:22px;height:22px}
.hr-e{background:#d99a5a;width:18px;height:18px}.hr-d{background:#c8a06d;width:19px;height:19px}.hr-c{background:#8fa8d8;width:20px;height:20px}.hr-b{background:#7b88c8;width:21px;height:21px}
.gj-b{background:#c89165;width:20px;height:20px}.kelt-b{background:#ff7a45;width:24px;height:24px;box-shadow:0 0 14px rgba(255,110,60,.85)}

/* === Klik-fix: ook binnenste planeten moeten uitleg geven ===
   De grote transparante baan-cirkels lagen soms boven de binnenste planeten.
   Daarom mogen banen en leefbare-zone geen klik/tik onderscheppen; alleen
   planeten en sterren zijn klikbaar. */
.solar-system .orbit,
.solar-system .habitable-zone,
.solar-system .habitable-label{
  pointer-events:none !important;
}
.solar-system .planet,
.solar-system .sun[data-name],
.solar-system .star-secondary{
  pointer-events:auto !important;
  position:absolute;
  z-index:30 !important;
}
.solar-system .sun[data-name]{
  cursor:pointer;
}
.solar-system .planet{
  min-width:14px;
  min-height:14px;
}
.solar-system .planet::after{
  content:"";
  position:absolute;
  left:50%;top:50%;
  width:30px;height:30px;
  transform:translate(-50%,-50%);
  border-radius:50%;
}


/* === Launch polish: rustigere reclame en betere tikbare objecten === */
.ad-slot{margin:1.4rem auto;max-width:980px;min-height:90px;border-radius:16px;overflow:hidden;}
@media (max-width:700px){.ad-slot{margin:1rem auto;min-height:70px}.status-legend{gap:.45rem}.status-chip{font-size:.82rem}.planet-info{font-size:.95rem}}
.planet-info{scroll-margin-top:90px;}
.status-line{display:inline-flex;margin-left:.45rem;vertical-align:middle;}
.orbit-note{color:#c7d2fe;line-height:1.6;}
