:root{
  --bg:#020807;--panel:rgba(7,25,22,.78);--panel2:rgba(5,18,21,.9);--line:rgba(69,255,190,.22);
  --text:#eafff8;--muted:#9edfd2;--green:#34ffb6;--cyan:#59c7ff;--yellow:#ffd36a;--red:#ff6d7a;
  --shadow:0 0 30px rgba(52,255,182,.14);--radius:22px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at 50% 0,#0c332c 0,#020807 48%,#000 100%);color:var(--text);min-height:100vh;overflow-x:hidden}.stars{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(#fff 1px,transparent 1px),radial-gradient(var(--green) 1px,transparent 1px);background-size:90px 90px,150px 150px;background-position:0 0,50px 60px;opacity:.14;animation:drift 70s linear infinite}@keyframes drift{to{background-position:0 900px,50px 960px}}a{color:var(--green);text-decoration:none}button,a.linklike{font:inherit}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(16px,4vw,48px);background:rgba(0,0,0,.72);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:var(--text)}.brand strong{display:block;letter-spacing:.05em}.brand small{display:block;color:var(--muted);font-size:.78rem}.brand-orb{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle,var(--green),#03765e 55%,transparent 70%);box-shadow:0 0 28px var(--green)}.topnav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.topnav a{font-size:.9rem;color:var(--muted);padding:8px 10px;border:1px solid transparent;border-radius:999px}.topnav a:hover{border-color:var(--line);color:var(--text);background:rgba(52,255,182,.08)}.menu-toggle{display:none;background:rgba(52,255,182,.08);border:1px solid var(--line);color:var(--text);border-radius:12px;padding:8px 11px}main{width:min(1280px,calc(100% - 28px));margin:0 auto;padding:28px 0 56px;position:relative}.hero{display:grid;grid-template-columns:1.7fr .9fr;gap:22px;align-items:stretch;margin:18px 0}.hero-copy,.status-panel,.panel,.card,.controls{border:1px solid var(--line);background:linear-gradient(145deg,var(--panel),rgba(0,0,0,.52));border-radius:var(--radius);box-shadow:var(--shadow)}.hero-copy{padding:clamp(24px,4vw,46px)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--green);font-size:.76rem;margin:.1rem 0 .5rem}.hero h1{font-size:clamp(2.1rem,5vw,4.6rem);line-height:.96;margin:0 0 18px;text-shadow:0 0 28px rgba(52,255,182,.28)}.hero p{color:var(--muted);max-width:76ch}.hero-actions,.buttonline{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.primary,.ghost,.mini,.linklike{border:1px solid var(--line);border-radius:999px;padding:11px 16px;background:rgba(52,255,182,.1);color:var(--text);cursor:pointer;transition:.18s ease}.primary{background:linear-gradient(90deg,rgba(52,255,182,.35),rgba(89,199,255,.22));box-shadow:0 0 22px rgba(52,255,182,.18)}.ghost{background:rgba(89,199,255,.06)}.mini,.linklike{padding:8px 12px;font-size:.9rem}.primary:hover,.ghost:hover,.mini:hover,.linklike:hover{transform:translateY(-1px);border-color:rgba(52,255,182,.62);background:rgba(52,255,182,.18)}.status-panel{padding:18px;display:flex;flex-direction:column;justify-content:center;gap:13px}.status-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:10px}.status-row:last-child{border-bottom:0}.status-row span,.card span{color:var(--muted)}.status-row b,.card b{font-size:1.05rem}.controls{display:flex;align-items:end;gap:14px;padding:16px;margin:0 0 18px;flex-wrap:wrap}.controls label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:.88rem}.controls select{min-width:120px;background:#061412;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:10px}.checkline{flex-direction:row!important;align-items:center;margin-left:auto}.grid{display:grid;gap:18px}.cards{grid-template-columns:repeat(4,1fr);margin:18px 0}.card{padding:17px;min-height:122px}.card b{display:block;margin:9px 0 4px;font-size:1.28rem}.card small{color:var(--muted)}.two{grid-template-columns:1fr 1fr}.panel{padding:20px;margin:18px 0}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px}.panel-head h2{margin:0;font-size:clamp(1.35rem,2.5vw,2rem)}.source-note{color:var(--muted);font-size:.9rem}.briefing-panel p#briefingText{font-size:1.02rem;line-height:1.65;color:#d9fff5}.threat-lamp,.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:6px 10px;background:rgba(255,255,255,.05);white-space:nowrap}.ok{color:var(--green)!important}.warn{color:var(--yellow)!important}.danger{color:var(--red)!important}.neutral{color:var(--muted)!important}.threat-lamp.ok,.badge.ok{border-color:rgba(52,255,182,.55);background:rgba(52,255,182,.12)}.threat-lamp.warn,.badge.warn{border-color:rgba(255,211,106,.55);background:rgba(255,211,106,.12)}.threat-lamp.danger,.badge.danger{border-color:rgba(255,109,122,.65);background:rgba(255,109,122,.12)}.radar-layout{display:grid;grid-template-columns:minmax(280px,480px) 1fr;gap:18px;align-items:start}canvas{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle,#07201c,#010504 70%)}.table-wrap{overflow:auto;max-height:560px;border:1px solid rgba(255,255,255,.08);border-radius:18px}table{width:100%;border-collapse:collapse;min-width:820px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top}th{position:sticky;top:0;background:#071412;color:var(--green);z-index:1}td{color:#dffcf5}td small{color:var(--muted)}tr.clickable{cursor:pointer}tr.clickable:hover{background:rgba(52,255,182,.08)}.stack{display:grid;gap:12px}.mini-card{border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:14px;background:rgba(255,255,255,.035)}.mini-card b{color:#fff}.mini-card p{margin:.45rem 0;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.detail-grid .detail-cell{border:1px solid rgba(255,255,255,.09);border-radius:16px;padding:14px;background:rgba(255,255,255,.035)}.detail-cell span{display:block;color:var(--muted);font-size:.83rem}.detail-cell b{display:block;margin-top:4px}.detail-grid .wide{grid-column:1/-1}.weather-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.weather-item{border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:14px;background:rgba(255,255,255,.035)}.weather-item span{display:block;color:var(--muted)}.weather-item strong{display:block;font-size:2rem;margin:5px 0}.weather-item small{color:var(--muted)}.link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.link-grid a{display:block;border:1px solid var(--line);border-radius:16px;padding:14px;background:rgba(52,255,182,.055)}.accordion{width:100%;text-align:left;background:rgba(52,255,182,.08);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:15px;cursor:pointer}.accordion-body{padding:16px 4px;color:var(--muted);line-height:1.7}.accordion-body b{color:var(--text)}footer{position:relative;text-align:center;color:var(--muted);padding:28px}.scorebar{height:9px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;margin-top:8px}.scorebar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--yellow),var(--red))}.muted{color:var(--muted)}.errorbox{border-color:rgba(255,109,122,.4);background:rgba(255,109,122,.08)}
@media(max-width:980px){.hero,.radar-layout,.two{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.weather-grid,.detail-grid,.link-grid{grid-template-columns:1fr}.checkline{margin-left:0}.topnav{display:none;position:absolute;top:64px;left:14px;right:14px;background:rgba(0,0,0,.92);border:1px solid var(--line);border-radius:18px;padding:12px}.topnav.open{display:grid}.menu-toggle{display:block}}
@media(max-width:560px){main{width:min(100% - 18px,1280px);padding-top:14px}.hero-copy,.panel,.status-panel,.controls{border-radius:18px}.cards{grid-template-columns:1fr}.controls{align-items:stretch}.controls label,.controls select{width:100%}.hero-actions .primary,.hero-actions .ghost,.buttonline .mini,.buttonline .linklike{width:100%;justify-content:center;text-align:center}.topbar{padding:12px 10px}.brand small{display:none}.panel-head{flex-direction:column;align-items:stretch}table{min-width:760px}}

code {
  color: #bfffea;
  background: rgba(52, 255, 182, .08);
  border: 1px solid rgba(52, 255, 182, .18);
  border-radius: 8px;
  padding: .12rem .35rem;
  word-break: break-word;
}


.radar-metrics{
  display:grid;
  gap:10px;
  margin:12px 0 14px;
}
.radar-metric-line{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  padding:10px 12px;
  border:1px solid rgba(52,255,182,.28);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(52,255,182,.10),rgba(89,199,255,.045));
  box-shadow:0 0 16px rgba(52,255,182,.08), inset 0 0 14px rgba(52,255,182,.035);
}
.radar-metric{
  display:inline-flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:6px;
  min-width:fit-content;
}
.radar-metric-label{
  color:#baffea;
  font-weight:800;
  letter-spacing:.01em;
}
.radar-metric-value{
  color:var(--green);
  font-weight:950;
  font-size:1.08rem;
  letter-spacing:.015em;
  text-shadow:0 0 7px rgba(52,255,182,.62),0 0 18px rgba(52,255,182,.22);
}
.metric-weather strong.radar-metric-value{
  display:block;
  color:var(--green);
  text-shadow:0 0 9px rgba(52,255,182,.68),0 0 22px rgba(52,255,182,.25);
}
.metric-weather strong.radar-metric-value.warn{color:var(--yellow)!important;text-shadow:0 0 9px rgba(255,211,106,.55),0 0 22px rgba(255,211,106,.22)}
.metric-weather strong.radar-metric-value.danger{color:var(--red)!important;text-shadow:0 0 9px rgba(255,109,122,.55),0 0 22px rgba(255,109,122,.22)}
.mini-card .radar-metrics + .muted,
.mini-card .muted{
  margin-top:10px;
}
@media(max-width:560px){
  .radar-metric-line{gap:8px;padding:10px}
  .radar-metric{width:100%;justify-content:space-between;gap:10px}
  .radar-metric-value{text-align:right}
}

.radar-metrics{
  display:grid;
  gap:10px;
  margin:12px 0 14px;
}
.radar-metric-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  padding:10px 12px;
  border:1px solid rgba(52,255,182,.30);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(52,255,182,.12),rgba(89,199,255,.055));
  box-shadow:0 0 16px rgba(52,255,182,.10), inset 0 0 14px rgba(52,255,182,.04);
}
.radar-metric{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(2,8,7,.38);
  border:1px solid rgba(52,255,182,.12);
  white-space:nowrap;
}
.radar-metric-label{
  color:#84ffe0;
  font-weight:800;
  text-shadow:0 0 7px rgba(52,255,182,.18);
}
.radar-metric-value{
  color:#ffd36a;
  font-weight:950;
  font-size:1.08rem;
  letter-spacing:.015em;
  text-shadow:0 0 7px rgba(255,211,106,.60),0 0 18px rgba(255,211,106,.22);
}
.radar-metric-divider{
  color:rgba(52,255,182,.58);
  font-weight:900;
}
.metric-weather strong.radar-metric-value{
  display:block;
  color:#ffd36a;
  text-shadow:0 0 9px rgba(255,211,106,.62),0 0 22px rgba(255,211,106,.25);
}
.metric-weather strong.radar-metric-value.warn{color:var(--yellow)!important}
.metric-weather strong.radar-metric-value.danger{color:var(--red)!important}
@media(max-width:560px){
  .radar-metric-line{gap:8px;padding:10px}
  .radar-metric{width:100%;justify-content:space-between;white-space:normal}
  .radar-metric-divider{display:none}
  .radar-metric-value{text-align:right}
}


.radar-metrics{
  display:grid;
  gap:10px;
  margin:12px 0 14px;
}
.radar-metric-line{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid rgba(52,255,182,.30);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(52,255,182,.12),rgba(89,199,255,.055));
  box-shadow:0 0 16px rgba(52,255,182,.10), inset 0 0 14px rgba(52,255,182,.04);
}
.radar-metric{
  display:grid;
  gap:4px;
  width:100%;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(2,8,7,.44);
  border:1px solid rgba(52,255,182,.16);
  border-left:3px solid rgba(52,255,182,.74);
}
.radar-metric-main{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px;
}
.radar-metric-label{
  color:#84ffe0;
  font-weight:850;
  letter-spacing:.01em;
  text-shadow:0 0 7px rgba(52,255,182,.18);
}
.radar-metric-value{
  color:#ffd36a;
  font-weight:950;
  font-size:1.1rem;
  letter-spacing:.015em;
  text-shadow:0 0 7px rgba(255,211,106,.60),0 0 18px rgba(255,211,106,.22);
}
.radar-metric-help{
  display:block;
  margin-top:2px;
  color:#bdf8e8;
  font-size:.88rem;
  line-height:1.45;
  opacity:.92;
}
.radar-metric-divider{display:none!important}
.metric-weather strong.radar-metric-value{
  color:#ffd36a;
  text-shadow:0 0 9px rgba(255,211,106,.62),0 0 22px rgba(255,211,106,.25);
}
.metric-weather .radar-metric-help{margin-top:8px}
.metric-weather strong.radar-metric-value.warn{color:var(--yellow)!important}
.metric-weather strong.radar-metric-value.danger{color:var(--red)!important}
@media(max-width:560px){
  .radar-metric-line{padding:9px}
  .radar-metric-main{justify-content:space-between;gap:8px}
  .radar-metric-value{text-align:right}
}


/* Objekt-Suche: klare Jarvis-Suchleiste ohne Layoutwechsel */
.controls .searchline{
  min-width:min(340px,100%);
  flex:1 1 260px;
}
.controls input[type="search"]{
  min-width:220px;
  width:100%;
  background:#061412;
  color:var(--text);
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px 12px;
  outline:none;
  box-shadow:inset 0 0 12px rgba(52,255,182,.035);
}
.controls input[type="search"]::placeholder{color:rgba(158,223,210,.68)}
.controls input[type="search"]:focus{
  border-color:rgba(52,255,182,.70);
  box-shadow:0 0 0 3px rgba(52,255,182,.10),0 0 18px rgba(52,255,182,.08);
}
.search-clear{align-self:end;margin-bottom:0}
.search-hint{
  align-self:end;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.35;
  flex:1 1 220px;
  padding:0 0 8px 0;
}
tr.search-match td:first-child b,
.search-hit-title{
  color:#ffd36a!important;
  text-shadow:0 0 8px rgba(255,211,106,.45);
}
@media(max-width:560px){
  .controls .searchline,.controls input[type="search"],.search-clear,.search-hint{width:100%}
  .search-hint{padding:0}
}


/* Objekt-Suche Plus: Spezialkarten für berühmte Forschungsobjekte wie 3I/ATLAS */
.special-object-box{
  margin-top:16px;
  border-color:rgba(255,211,106,.30);
  background:
    radial-gradient(circle at top left,rgba(255,211,106,.13),transparent 34%),
    linear-gradient(135deg,rgba(2,8,7,.94),rgba(6,28,22,.88));
}
.special-object-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
  margin-top:12px;
}
.special-object-card{
  border:1px solid rgba(52,255,182,.24);
  border-radius:18px;
  padding:14px;
  background:rgba(2,8,7,.58);
  box-shadow:0 0 22px rgba(52,255,182,.08), inset 0 0 16px rgba(255,211,106,.035);
}
.special-object-card h3{
  margin:4px 0 8px;
  color:#ffd36a;
  text-shadow:0 0 10px rgba(255,211,106,.45),0 0 24px rgba(255,211,106,.16);
  font-size:1.35rem;
}
.special-object-kicker{
  color:#84ffe0;
  font-weight:850;
  font-size:.86rem;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.special-object-status{
  color:#eafff8;
  border-left:3px solid rgba(255,211,106,.72);
  padding-left:10px;
  margin:8px 0 12px;
}
.special-object-metrics{
  display:grid;
  gap:8px;
  margin:10px 0 12px;
}
.special-object-metric{
  display:grid;
  gap:3px;
  padding:9px 10px;
  border-radius:12px;
  border:1px solid rgba(52,255,182,.16);
  background:rgba(52,255,182,.055);
}
.special-object-metric span{
  color:#84ffe0;
  font-weight:800;
}
.special-object-metric strong{
  color:#ffd36a;
  font-size:1.04rem;
  text-shadow:0 0 8px rgba(255,211,106,.42);
}
.special-object-metric small{
  color:#bdf8e8;
  line-height:1.4;
}
.special-object-card a{
  display:inline-flex;
  margin-top:8px;
  color:#34ffb6;
  font-weight:800;
  text-decoration:none;
}
.special-object-card a:hover{text-decoration:underline}

/* Finaler Mobile-Feinschliff: Sentry/Fireballs/NOAA ruhig, lesbar und ohne horizontales Springen */
@media (max-width: 720px) {
  html,
  body {
    overflow-x: hidden;
  }

  main {
    width: min(100% - 16px, 1280px);
  }

  .panel,
  .card,
  .controls,
  .hero-copy,
  .status-panel,
  .mini-card,
  .weather-item,
  .special-object-card {
    max-width: 100%;
  }

  #risk .mini-card,
  #fireballBox .mini-card,
  .weather-item,
  .special-object-card {
    overflow: hidden;
  }

  #risk .stack,
  #fireballBox.stack,
  #fireballBox {
    gap: 12px;
  }

  #risk .radar-metrics,
  #fireballBox .radar-metrics {
    gap: 9px;
    margin: 10px 0 12px;
  }

  #risk .radar-metric-line,
  #fireballBox .radar-metric-line {
    padding: 9px;
    gap: 8px;
  }

  #risk .radar-metric,
  #fireballBox .radar-metric {
    width: 100%;
    min-width: 0;
  }

  #risk .radar-metric-main,
  #fireballBox .radar-metric-main {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: start;
    align-items: start;
    gap: 3px;
  }

  #risk .radar-metric-value,
  #fireballBox .radar-metric-value,
  .metric-weather strong.radar-metric-value,
  .special-object-metric strong {
    text-align: left;
    overflow-wrap: anywhere;
    word-break: break-word;
    line-height: 1.25;
  }

  #risk .radar-metric-value,
  #fireballBox .radar-metric-value {
    font-size: 1.02rem;
  }

  #risk .radar-metric-help,
  #fireballBox .radar-metric-help,
  .special-object-metric small {
    font-size: .84rem;
    line-height: 1.42;
  }

  .weather-grid,
  .special-object-grid {
    grid-template-columns: 1fr;
  }

  .weather-item strong,
  .weather-item small,
  .special-object-metric span,
  .special-object-metric strong,
  .special-object-metric small {
    overflow-wrap: anywhere;
    word-break: break-word;
  }
}

@media (max-width: 420px) {
  .mini-card,
  .weather-item,
  .special-object-card {
    padding: 12px;
    border-radius: 16px;
  }

  .radar-metric {
    padding: 8px 9px;
  }

  .radar-metric-label {
    font-size: .92rem;
  }

  .radar-metric-value {
    font-size: 1rem;
  }
}

/* Finaler Layout-Overflow-Fix: verhindert, dass Sentry/Fireballs rechts aus dem Bildschirm laufen */
main{
  max-width:min(1280px, calc(100vw - 28px));
}
.grid,
.two,
.radar-layout,
.weather-grid,
.detail-grid,
.link-grid,
.special-object-grid,
.stack{
  min-width:0;
  max-width:100%;
}
.grid > *,
.two > *,
.radar-layout > *,
.weather-grid > *,
.detail-grid > *,
.link-grid > *,
.special-object-grid > *,
.panel,
.card,
.mini-card,
.weather-item,
.special-object-card{
  min-width:0;
  max-width:100%;
}
.two{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  align-items:start;
}
#risk .panel,
#spaceweather .panel,
#sentryBox,
#fireballBox,
#noaaBox,
#weatherBox{
  min-width:0;
  max-width:100%;
}
#risk .mini-card,
#fireballBox .mini-card{
  overflow:hidden;
}
.panel-head,
.radar-metrics,
.radar-metric-line,
.radar-metric,
.radar-metric-main,
.radar-metric-label,
.radar-metric-value,
.radar-metric-help{
  min-width:0;
  max-width:100%;
  white-space:normal;
}
.panel-head h2,
.radar-metric-label,
.radar-metric-value,
.radar-metric-help,
.special-object-metric strong,
.special-object-metric small{
  overflow-wrap:anywhere;
}
@media(max-width:1180px){
  #risk.two{
    grid-template-columns:1fr;
  }
}
@media(max-width:980px){
  #spaceweather.two{
    grid-template-columns:1fr;
  }
}
