@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#080d17;--panel:#101827;--panel2:#0c1421;--line:#223149;--text:#edf4ff;--muted:#8d9cb3;--cyan:#55e6d1;--gold:#e8bf70;--red:#ff7d85}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Manrope,system-ui,sans-serif;min-height:100vh;overflow-x:hidden}
.ambient{position:fixed;width:440px;height:440px;border-radius:50%;filter:blur(110px);opacity:.12;pointer-events:none}.ambient-a{background:#12d6cb;top:-190px;right:-130px}.ambient-b{background:#b987ff;bottom:-250px;left:-180px}
.shell{position:relative;max-width:1060px;margin:auto;padding:28px 24px 22px}.topbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1b293d;padding-bottom:22px}
.brand{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid var(--cyan);color:var(--cyan);font-weight:800;font-size:18px;letter-spacing:-2px;transform:skew(-5deg)}.brand-mark span{color:var(--gold)}.brand b{font-size:15px;letter-spacing:1.7px}.brand em{font-style:normal;color:var(--cyan)}.brand small{display:block;font:9px 'DM Mono',monospace;color:var(--muted);letter-spacing:1.4px;margin-top:4px}
.status,.section-kicker,.lock,.eyebrow,footer,.hint{font:10px 'DM Mono',monospace;letter-spacing:1px}.status{color:var(--muted);display:flex;align-items:center;gap:8px}.status i,.eyebrow span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px #55e6d180}
.hero{padding:58px 0 32px;max-width:680px}.eyebrow{color:var(--cyan);display:flex;align-items:center;gap:9px}.hero h1{font-size:clamp(46px,8vw,78px);letter-spacing:-4px;line-height:.98;margin:20px 0 18px;font-weight:800}.hero h1 span{color:var(--cyan)}.hero p{color:var(--muted);line-height:1.8;font-size:15px;max-width:540px;margin:0}
.panel{border:1px solid var(--line);background:linear-gradient(145deg,#111c2c,#0c1421);padding:26px;border-radius:12px;box-shadow:0 20px 60px #0002}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.section-kicker{color:var(--gold)}h2{font-size:22px;margin:7px 0 0;letter-spacing:-.6px}.lock{color:var(--muted);font-size:9px}label{display:block;font-size:12px;color:#b6c4d8;margin-bottom:9px}.input-row{display:flex;gap:10px}input{min-width:0;flex:1;background:#080f1a;border:1px solid #2b3c55;border-radius:7px;padding:16px;color:var(--text);font:14px 'DM Mono',monospace;outline:none}input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #55e6d11a}button{cursor:pointer;font:inherit}.input-row button{border:0;border-radius:7px;background:var(--cyan);color:#06121b;padding:0 21px;font-weight:800;display:flex;align-items:center;gap:18px}.input-row button b{font-size:18px}.input-row button:disabled{opacity:.55;cursor:wait}.modes{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.mode{background:#0b1320;border:1px solid #26354b;border-radius:6px;padding:10px 13px;color:#9caec4;font-size:12px}.mode span{margin-right:5px}.mode.active{color:var(--cyan);border-color:#3c9c9b;background:#10272c}.hint{color:#6f8098;font-size:9px;line-height:1.8;margin:16px 0 0;letter-spacing:.45px}
.results{margin:20px 0 42px}.empty{border:1px dashed #25344a;border-radius:10px;padding:35px 20px;text-align:center;color:var(--muted)}.empty h3{color:#dce7f7;font-size:15px;margin:16px 0 7px}.empty p{font-size:12px;margin:0}.radar{width:42px;height:42px;border:1px solid #285b66;border-radius:50%;margin:auto;display:grid;place-items:center;position:relative}.radar:before,.radar:after{content:"";position:absolute;border:1px solid #285b66;border-radius:50%;inset:6px}.radar:after{inset:13px;background:var(--cyan);box-shadow:0 0 12px #55e6d1}
.result-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:0 0 12px}.result-head h3{font-size:16px;margin:0;overflow-wrap:anywhere}.tag{font:10px 'DM Mono',monospace;color:var(--cyan);border:1px solid #285b66;padding:6px 8px;border-radius:4px;white-space:nowrap}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.result-card{border:1px solid var(--line);background:var(--panel2);border-radius:8px;padding:16px;min-width:0}.result-card h4{font:11px 'DM Mono',monospace;color:var(--gold);margin:0 0 12px;text-transform:uppercase;letter-spacing:.7px}.result-card pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#d5e1f2;font:12px/1.75 'DM Mono',monospace;margin:0}.error{border:1px solid #7e3944;background:#27141c;padding:17px;border-radius:8px;color:#ffb4ba;font-size:13px}.loading{color:var(--cyan);padding:22px 0;font:12px 'DM Mono',monospace}
footer{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#596b84;font-size:8px;letter-spacing:.6px}footer b{color:var(--cyan)}
@media(max-width:640px){.shell{padding:18px 14px}.status{font-size:8px}.hero{padding-top:42px}.hero h1{letter-spacing:-2.5px}.panel{padding:18px}.panel-head{align-items:flex-start;gap:10px}.lock{max-width:100px;text-align:right;line-height:1.7}.input-row{flex-direction:column}.input-row button{justify-content:center;padding:14px}.result-grid{grid-template-columns:1fr}.result-head{align-items:flex-start;flex-direction:column}}

/* DNS-Record-Auswahl */
.record-row {
  margin-top: 16px;
  max-width: 340px;
}

.record-row label {
  display: block;
  margin-bottom: 9px;
  color: #b6c4d8;
  font-size: 12px;
}

.record-row select {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 12px 14px;
  border: 1px solid #2b3c55;
  border-radius: 7px;
  background: #080f1a;
  color: var(--text);
  font: 13px 'DM Mono', monospace;
  outline: none;
  cursor: pointer;
}

.record-row select:focus {
  border-color: var(--cyan);
  box-shadow: 0 0 0 3px #55e6d11a;
}

.record-row option {
  background: #080f1a;
  color: var(--text);
}

@media (max-width: 640px) {
  .record-row {
    max-width: none;
  }
}

/* GCA strukturierte Netzwerkanalyse */
.gca-source {
  color: var(--muted);
  font: 10px/1.7 'DM Mono', monospace;
  margin: -2px 0 14px;
}
.gca-fields {
  display: grid;
  gap: 0;
  margin: 0;
}
.gca-field {
  display: grid;
  grid-template-columns: minmax(100px, .85fr) minmax(0, 1.15fr);
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid #1c293b;
}
.gca-field:last-child { border-bottom: 0; }
.gca-field dt {
  color: var(--muted);
  font-size: 11px;
  overflow-wrap: anywhere;
}
.gca-field dd {
  margin: 0;
  color: var(--text);
  font: 11px/1.7 'DM Mono', monospace;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.gca-location-name {
  color: var(--cyan);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.gca-muted {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.8;
  margin-top: 5px;
}
.gca-coordinates {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 12px;
  margin-top: 14px;
  padding: 12px;
  background: #080f1a;
  border: 1px solid var(--line);
  border-radius: 6px;
  font-size: 11px;
}
.gca-coordinates span { color: var(--muted); }
.gca-coordinates strong {
  color: var(--text);
  font-family: 'DM Mono', monospace;
}
.gca-map-link {
  display: inline-block;
  margin-top: 14px;
  color: var(--cyan);
  font-size: 12px;
  text-decoration: none;
}
.gca-map-link:hover { text-decoration: underline; }
.gca-note {
  margin: 14px 0 0;
  padding: 10px;
  border-left: 2px solid var(--gold);
  background: #e8bf700d;
  color: #b8c5d7;
  font-size: 10px;
  line-height: 1.8;
}
.gca-highlight {
  font: 700 23px/1.5 'DM Mono', monospace;
  color: var(--cyan);
  overflow-wrap: anywhere;
}
.gca-flags { display: grid; gap: 8px; }
.gca-flag {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 9px 0;
  border-bottom: 1px solid #1c293b;
  font-size: 11px;
}
.gca-flag span { color: var(--muted); }
.gca-flag strong { font: 11px 'DM Mono', monospace; }
.gca-ok { color: var(--cyan); }
.gca-warning { color: var(--gold); }
.result-card pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
@media(max-width:640px) {
  .gca-field { grid-template-columns: 1fr; gap: 4px; }
  .gca-location-name { font-size: 16px; }
}

/* GCA - kompakte, lesbare Analyse */
.gca-source{color:var(--muted);font:10px 'DM Mono',monospace;margin:0 0 14px}
.gca-card h4{margin-bottom:12px}
.gca-fields{margin:0;display:grid}
.gca-field{display:grid;grid-template-columns:minmax(95px,.8fr) minmax(0,1.2fr);gap:12px;padding:9px 0;border-bottom:1px solid #1c293b}
.gca-field:last-child{border-bottom:0}
.gca-field dt{color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.gca-field dd{margin:0;color:var(--text);font:11px/1.65 'DM Mono',monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.gca-place{font-size:18px;font-weight:800;line-height:1.5;color:var(--cyan);overflow-wrap:anywhere}
.gca-sub{color:var(--muted);font-size:11px;line-height:1.8;margin-top:5px}
.gca-ip{font:700 23px 'DM Mono',monospace;color:var(--cyan);overflow-wrap:anywhere}
.gca-coords{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.gca-coords div{background:#080f1a;border:1px solid var(--line);border-radius:6px;padding:11px}
.gca-coords span,.gca-coords strong{display:block}
.gca-coords span{font-size:10px;color:var(--muted);margin-bottom:6px}
.gca-coords strong{font:12px 'DM Mono',monospace;overflow-wrap:anywhere}
.gca-map{display:inline-block;color:var(--cyan);font-size:12px;margin-top:14px;text-decoration:none}
.gca-map:hover{text-decoration:underline}
.gca-note{font-size:10px;line-height:1.7;color:#b8c5d7;border-left:2px solid var(--gold);padding:9px 11px;margin:14px 0 0;background:#e8bf700d}
.gca-flags{display:grid}
.gca-flag{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #1c293b;font-size:11px}
.gca-flag:last-child{border-bottom:0}
.gca-flag span{color:var(--muted)}
.gca-flag strong{font:11px 'DM Mono',monospace}
.gca-good{color:var(--cyan)}
.gca-warn{color:var(--gold)}
@media(max-width:640px){.gca-field{grid-template-columns:1fr;gap:4px}.gca-place{font-size:16px}}
