:root{color-scheme:dark;--bg:#070b0f;--panel:#10161b;--panel-soft:#151c22;--line:#303a42;--line-strong:#46515a;--text:#f5f7f8;--muted:#aeb7bd;--red:#ff3438;--red-soft:rgba(255,52,56,.12);--blue:#4b9fff;--green:#4bd04b;--yellow:#ffc62b;--radius:16px;--shadow:0 16px 38px rgba(0,0,0,.34)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 72% -10%,#1b2329 0,#0c1217 30%,#070b0f 66%);color:var(--text);font-family:Inter,system-ui,"Segoe UI",sans-serif}.topbar{height:64px;display:flex;align-items:center;border-bottom:2px solid rgba(255,52,56,.72);background:rgba(5,8,10,.94);box-shadow:0 10px 28px rgba(0,0,0,.34);position:sticky;top:0;z-index:1000}.brand{display:flex;align-items:center;gap:10px;padding:0 22px;text-decoration:none;color:white;border-right:1px solid #252c31;height:100%}.brand strong{font-size:1.45rem}.brand strong span{color:var(--red)}.brand small{color:#bbb}.tower{color:var(--red);font-size:2rem}.topbar nav{display:flex;height:100%;align-items:center;flex:1;justify-content:space-around}.topbar nav a,.topbar nav button{color:#eee;text-decoration:none;background:none;border:0;padding:18px 20px;font:inherit;cursor:pointer}.topbar nav .active{color:var(--red);border-bottom:3px solid var(--red)}main{padding:20px;display:grid;gap:20px;max-width:1600px;width:100%;margin:0 auto}.panel{position:relative;background:linear-gradient(145deg,rgba(20,27,33,.98),rgba(9,14,18,.99));border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.panel:before{content:"";position:absolute;z-index:2;top:0;left:18px;right:18px;height:2px;background:linear-gradient(90deg,transparent,var(--red),transparent);opacity:.72;pointer-events:none}.settings{padding:16px 18px}.settings form{display:grid;grid-template-columns:repeat(10,minmax(90px,1fr));gap:8px;align-items:end}.settings label{display:grid;gap:4px;color:var(--muted);font-size:.72rem}.settings input,.settings select{min-width:0;padding:9px 10px;background:#080d12;color:white;border:1px solid #35414a;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.settings input:focus,.settings select:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(255,52,56,.14)}.settings button{padding:10px 12px;background:linear-gradient(180deg,#ff4145,#d91f25);border:1px solid #ff5b5f;border-radius:8px;color:#fff;font-weight:750;box-shadow:0 7px 18px rgba(255,52,56,.15);cursor:pointer}.settings .secondary{background:#253039}.warning{color:var(--yellow)}.dashboard{display:grid;grid-template-columns:minmax(340px,34%) minmax(0,66%);gap:20px;align-items:start}.alternatives h2{margin:0;padding:16px 18px;border-bottom:1px solid rgba(255,52,56,.65);background:linear-gradient(90deg,rgba(255,52,56,.10),transparent 55%);font-size:1rem;text-transform:uppercase;color:var(--red)}.relay-list{display:grid}.relay-item{position:relative;display:grid;grid-template-columns:42px 1fr 82px;align-items:center;text-align:left;padding:16px 14px;border:0;border-bottom:1px solid #303940;background:transparent;color:white;cursor:pointer}.relay-item.selected{outline:1px solid var(--red);outline-offset:-1px;border-radius:11px;background:linear-gradient(90deg,rgba(255,52,56,.14),rgba(255,52,56,.035));box-shadow:inset 4px 0 0 var(--red),0 8px 20px rgba(0,0,0,.18)}.relay-item:hover{background:#182027}.relay-symbol{font-size:2rem;color:white}.relay-copy{display:grid;gap:3px}.relay-copy strong{font-size:1.25rem}.relay-copy small{color:#c3c9cd}.relay-copy b{font-size:.95rem;color:#fff}.relay-copy b:first-letter{}.relay-copy em{font-style:normal;background:rgba(255,52,56,.17);border:1px solid rgba(255,52,56,.42);color:#ff8b8e;padding:2px 5px;border-radius:4px;font-size:.72rem}.relay-copy>span{color:var(--green);font-size:.78rem}.relay-copy .relay-meta{color:#aeb7bd;font-size:.72rem;line-height:1.35;margin-top:2px}.mini-compass{width:66px;height:66px;border:1px solid #7c8388;border-radius:50%;position:relative;background:radial-gradient(circle,#151b20,#080c0f)}.mini-compass:before,.mini-compass:after{content:"";position:absolute;background:#697177}.mini-compass:before{width:1px;height:52px;left:32px;top:7px}.mini-compass:after{height:1px;width:52px;top:32px;left:7px}.mini-compass i,.big-compass i{position:absolute;left:50%;top:50%;width:4px;height:25px;background:var(--red);transform-origin:50% 100%;transform:translate(-50%,-100%) rotate(var(--bearing));border-radius:3px}.mini-compass i:after,.big-compass i:after{content:"";position:absolute;top:-7px;left:-4px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:10px solid var(--red)}.mini-compass small{position:absolute;top:1px;left:29px}.show-all{display:block;width:100%;padding:14px;text-align:center;color:var(--red);background:transparent;border:0;font:inherit;cursor:pointer;text-transform:uppercase}.show-all:hover{background:#161d22}.detail-head{min-height:176px;padding:22px 28px 20px;display:flex;justify-content:space-between;gap:24px;background:linear-gradient(100deg,rgba(255,52,56,.055),transparent 45%);border-bottom:1px solid #2c353c}.detail-head h1{margin:0 0 14px;font-size:2.05rem;letter-spacing:-.02em}.detail-head h1 em{font-size:1rem;color:var(--red);font-style:normal}.detail-head p{color:#d0d5d8;margin:9px 0}.detail-head p strong{font-size:1.1rem}.detail-head p b{background:rgba(255,52,56,.17);border:1px solid rgba(255,52,56,.42);color:#ff8b8e;padding:3px 7px;border-radius:4px}.big-compass{display:grid;grid-template-columns:156px auto;grid-template-rows:auto auto;align-items:center;column-gap:20px;min-width:285px;padding:4px 8px}.dial{grid-row:1/3;width:150px;height:150px;border:1px solid var(--line-strong);box-shadow:inset 0 0 28px rgba(0,0,0,.72),0 8px 22px rgba(0,0,0,.30);border-radius:50%;position:relative;background:radial-gradient(circle,#13191d,#080c0f)}.dial i{height:52px;width:7px}.dial b,.dial span,.dial em,.dial small{position:absolute;font-style:normal;font-weight:bold}.dial b{top:8px;left:69px;color:var(--red)}.dial small{bottom:8px;left:69px}.dial span{left:8px;top:65px}.dial em{right:8px;top:65px}.big-compass>strong{align-self:end;font-size:2.35rem;line-height:1}.big-compass label{align-self:start;color:var(--red);font-size:.86rem;line-height:1.35;margin-top:5px}#map{height:190px;border-top:0;border-bottom:1px solid #313a40;box-shadow:inset 0 10px 20px rgba(0,0,0,.16)}.profile{padding:16px 26px 18px;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.profile-title{display:flex;justify-content:space-between;align-items:center}.profile h3{text-transform:uppercase;color:var(--red);margin:0;font-size:1rem;letter-spacing:.04em}.profile-title span{font-size:.75rem;color:var(--muted)}#terrain{display:block;width:100%;height:115px;max-height:115px}.legend{display:flex;gap:28px;color:#c9ced1;font-size:.8rem}.legend span:nth-child(1){color:#59d354}.legend span:nth-child(2){color:#f2c82d}.legend span:nth-child(3){color:#ff4444}.all-results{padding:18px}.all-results[hidden]{display:none}.all-results h2{margin-top:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:850px}th,td{padding:12px;border-bottom:1px solid #273038;text-align:left}th{text-transform:uppercase;color:#9dc9f7;font-size:.75rem}td small{display:block;color:#99bce0;margin-top:4px}tbody tr{cursor:pointer}tbody tr:hover{background:#182027}.roadmap{padding:18px}.roadmap h2{margin:0 0 10px;color:var(--red);font-size:1rem;text-transform:uppercase}.roadmap-grid{display:grid;grid-template-columns:repeat(4,1fr)}.roadmap article{padding:8px 18px;border-right:1px solid #333;display:grid;gap:5px}.roadmap article:last-child{border:0}.roadmap b{color:#eee}.roadmap span{font-size:.8rem;color:#b6bdc2}.roadmap .current{background:rgba(255,52,56,.06);border-radius:10px}.roadmap .current b{color:var(--red)}footer{padding:0 20px 20px;max-width:1600px;margin:0 auto;width:100%;display:flex;justify-content:space-between;gap:20px;color:#b7bec2;font-size:.72rem}@media(max-width:1050px){main{padding:14px;gap:14px}.dashboard{gap:14px}.topbar nav a:nth-child(2),.topbar nav a:nth-child(4){display:none}.settings form{grid-template-columns:repeat(4,1fr)}.dashboard{grid-template-columns:1fr}.alternatives{max-height:520px;overflow:auto}.roadmap-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){main{padding:10px}.topbar{height:58px}.brand small,.topbar nav a,.topbar nav button{display:none}.settings form{grid-template-columns:repeat(2,1fr)}.relay-item{grid-template-columns:38px 1fr 70px}.mini-compass{width:60px;height:60px}.mini-compass:before{height:48px;left:29px}.mini-compass:after{width:48px;top:29px}.detail-head{height:auto;display:grid}.big-compass{justify-content:center}.roadmap-grid{grid-template-columns:1fr}.roadmap article{border-right:0;border-bottom:1px solid #333}footer{flex-direction:column}}

/* v0.4.0 – Instrumentenkompass und bereinigte Relaiskarten */
.mini-compass,.dial{isolation:isolate;overflow:hidden}
.mini-compass::before,.dial::before{content:"";position:absolute;inset:4px;border-radius:50%;background:repeating-conic-gradient(from -1deg,rgba(235,241,244,.82) 0 1deg,transparent 1deg 10deg);-webkit-mask:radial-gradient(circle,transparent 0 73%,#000 74% 100%);mask:radial-gradient(circle,transparent 0 73%,#000 74% 100%);z-index:0}
.mini-compass::after,.dial::after{content:"";position:absolute;inset:8px;border-radius:50%;background:repeating-conic-gradient(from -1.5deg,rgba(255,255,255,.95) 0 2deg,transparent 2deg 30deg);-webkit-mask:radial-gradient(circle,transparent 0 77%,#000 78% 100%);mask:radial-gradient(circle,transparent 0 77%,#000 78% 100%);z-index:0}
.mini-compass{background:radial-gradient(circle at 45% 38%,#192127 0,#0b1014 58%,#05080a 100%);border-color:#65717a;box-shadow:inset 0 0 16px rgba(0,0,0,.75)}
.mini-compass i,.dial i{z-index:4}
.mini-compass small,.mini-compass b,.mini-compass em,.mini-compass>span{position:absolute;z-index:3;font-style:normal;font-size:.62rem;font-weight:800;color:#e8edf0;text-shadow:0 1px 3px #000}
.mini-compass small{top:6px;left:50%;transform:translateX(-50%);color:var(--red)}
.mini-compass b{right:7px;top:50%;transform:translateY(-50%)}
.mini-compass em{bottom:5px;left:50%;transform:translateX(-50%)}
.mini-compass>span{left:7px;top:50%;transform:translateY(-50%)}
.dial{width:180px;height:180px;background:radial-gradient(circle at 45% 38%,#192127 0,#0b1014 58%,#05080a 100%);border-color:#65717a}
.dial::before{inset:5px;-webkit-mask:radial-gradient(circle,transparent 0 78%,#000 79% 100%);mask:radial-gradient(circle,transparent 0 78%,#000 79% 100%)}
.dial::after{inset:7px;-webkit-mask:radial-gradient(circle,transparent 0 75%,#000 76% 100%);mask:radial-gradient(circle,transparent 0 75%,#000 76% 100%)}
.dial i{height:61px;width:7px}
.dial u{position:absolute;z-index:5;width:12px;height:12px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:#d9dfe2;border:3px solid #2b3338;box-shadow:0 0 0 2px rgba(255,52,56,.45)}
.dial b,.dial span,.dial em,.dial small{z-index:3;font-size:1rem;text-shadow:0 1px 4px #000}
.dial b{top:20px;left:50%;transform:translateX(-50%)}
.dial small{bottom:17px;left:50%;transform:translateX(-50%)}
.dial span{left:17px;top:50%;transform:translateY(-50%)}
.dial em{right:17px;top:50%;transform:translateY(-50%)}
.degree-label{position:absolute;z-index:2;width:28px;margin-left:-14px;margin-top:-8px;text-align:center;color:#aeb7bd;font-size:.58rem;line-height:1}
.d0{left:50%;top:7%}.d30{left:70%;top:13%}.d60{left:86%;top:30%}.d90{left:93%;top:50%}.d120{left:86%;top:70%}.d150{left:70%;top:87%}.d180{left:50%;top:93%}.d210{left:30%;top:87%}.d240{left:14%;top:70%}.d270{left:7%;top:50%}.d300{left:14%;top:30%}.d330{left:30%;top:13%}
.big-compass{grid-template-columns:186px auto;min-width:330px}
.relay-copy .relay-meta{color:#c0c7cb}
@media(max-width:650px){.dial{width:164px;height:164px}.big-compass{grid-template-columns:170px auto;min-width:0}.degree-label{font-size:.54rem}}

/* v0.4.1 – Standortmodul und robuste Datenbasis */
.settings form{grid-template-columns:repeat(5,minmax(135px,1fr))}
.location-box{grid-column:1/-1;padding:14px;border:1px solid #38434b;border-radius:12px;background:linear-gradient(90deg,rgba(255,52,56,.09),rgba(255,255,255,.02))}
.location-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:11px}.location-heading strong{color:#fff;font-size:1rem}.location-heading span{color:#aeb7bd;font-size:.78rem}
.location-actions{display:grid;grid-template-columns:auto minmax(260px,1fr);gap:10px}.place-search{display:grid!important;grid-template-columns:1fr auto;gap:8px;align-items:end}.place-search input{grid-column:1}.place-search button{grid-column:2;grid-row:1/3;height:39px;align-self:end}.location-status{min-height:1.1em;margin:8px 0 0;color:var(--green);font-size:.78rem}.location-status.error{color:#ff8b8e}.data-status{margin:10px 2px 0;color:#aeb7bd;font-size:.76rem}.data-status strong{color:var(--green)}.primary-search{align-self:end}.empty-results{padding:28px;text-align:center}.empty-results h2{color:var(--red)}
@media(max-width:1050px){.settings form{grid-template-columns:repeat(4,1fr)}}
@media(max-width:650px){.settings form{grid-template-columns:repeat(2,1fr)}.location-actions{grid-template-columns:1fr}.place-search{grid-template-columns:1fr auto}.location-heading{display:grid}.location-heading span{font-size:.72rem}}


/* v0.4.3 – mehr Kartenraum und kompakter Mini-Kompass */
.relay-item{grid-template-columns:42px 1fr 68px}
.mini-compass-box{display:grid;justify-items:center;align-content:center;gap:4px;min-width:60px}
.mini-compass{width:54px;height:54px}
.mini-compass i{height:19px;width:3px}
.mini-compass i:after{top:-6px;left:-4px;border-left-width:5px;border-right-width:5px;border-bottom-width:8px}
.mini-compass small,.mini-compass b,.mini-compass em,.mini-compass>span{font-size:.54rem}
.mini-compass small{top:5px}.mini-compass b{right:6px}.mini-compass em{bottom:4px}.mini-compass>span{left:6px}
.mini-bearing{color:#dce2e6;font-size:.72rem;font-weight:800;line-height:1;text-align:center}
#map{height:280px}
#terrain{height:180px;max-height:180px}
.profile{padding-bottom:20px}
@media(max-width:1050px){#map{height:240px}#terrain{height:160px;max-height:160px}}
@media(max-width:650px){.relay-item{grid-template-columns:38px 1fr 62px}.mini-compass-box{min-width:56px}.mini-compass{width:50px;height:50px}.mini-compass i{height:17px}#map{height:220px}#terrain{height:145px;max-height:145px}.legend{gap:12px;flex-wrap:wrap}}


/* v0.4.6 – Antennensymbol, ÖVSV-Bemerkungen und Locator */
.tower{width:34px;height:48px;display:grid;place-items:center;overflow:hidden}.tower img{width:34px;height:auto;display:block}
.heading-antenna{width:25px;height:32px;object-fit:cover;object-position:top;vertical-align:middle;margin-right:4px}
.relay-symbol{display:grid;place-items:center}.relay-symbol img{width:31px;height:42px;object-fit:cover;object-position:top;border-radius:5px}
.relay-remarks{max-width:620px;margin-top:14px!important;padding:9px 11px;border-left:3px solid var(--red);border-radius:0 7px 7px 0;background:rgba(255,52,56,.07);color:#bfc7cc!important;font-size:.82rem;line-height:1.45}
.relay-remarks[hidden]{display:none}.big-compass{grid-template-rows:auto auto auto}.big-compass .dial{grid-row:1/4}.bearing-direction{font-size:1.25rem;color:var(--red);vertical-align:middle}.locator-display{align-self:start;display:grid;gap:2px;margin-top:10px}.locator-display small{color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}.locator-display b{font-size:1rem;color:#fff;letter-spacing:.08em}
@media(max-width:650px){.relay-remarks{font-size:.76rem}.tower{width:30px}.tower img{width:30px}.locator-display{margin-top:5px}}


/* v0.4.7 – Cache-sichere Anzeige und klar gekennzeichnete ÖVSV-Informationen */
.remarks-label{display:block;margin-bottom:4px;color:var(--red);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

/* v0.4.8 – transparente Antennengrafik und Instrumentenbeschriftung */
.tower img,.heading-antenna,.relay-symbol img{background:transparent;border:0;box-shadow:none}
.big-compass{grid-template-rows:auto auto}
.big-compass .dial{grid-row:1/3}
.bearing-display{align-self:end;display:grid;gap:5px}
.bearing-display small,.locator-display small{color:var(--muted);font-size:.68rem;font-weight:700;text-transform:none;letter-spacing:.02em}
.bearing-display strong{font-size:2.35rem;line-height:1;color:#fff}
.bearing-display .bearing-direction{font-size:1.25rem;color:var(--red);vertical-align:middle}
.locator-display{margin-top:14px}
@media(max-width:650px){.bearing-display strong{font-size:2rem}.locator-display{margin-top:8px}}

/* v0.4.9 – freie Zielorte */
.target-box{grid-column:1/-1;border:1px solid #354049;border-radius:13px;padding:14px;background:linear-gradient(135deg,rgba(75,159,255,.07),rgba(255,52,56,.035));display:grid;gap:12px}.target-switch{display:flex;gap:10px;flex-wrap:wrap}.target-switch label{display:block}.target-switch input{position:absolute;opacity:0;pointer-events:none}.target-switch span{display:block;padding:10px 15px;border:1px solid #46515a;border-radius:10px;background:#11181d;color:#d8dde0;cursor:pointer}.target-switch input:checked+span{border-color:var(--red);background:rgba(255,52,56,.14);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,52,56,.2)}.target-fields{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;align-items:end}.target-fields[hidden],.relay-only[hidden]{display:none!important}.target-fields .place-search{grid-column:1/-1}.target-fields .location-status{grid-column:1/-1}.relay-only{display:contents}.dashboard:has(.alternatives[hidden]){grid-template-columns:1fr}.alternatives[hidden]{display:none!important}
@media(max-width:900px){.target-fields{grid-template-columns:1fr 1fr}.target-fields .place-search{grid-column:1/-1}}
@media(max-width:650px){.target-fields{grid-template-columns:1fr}.target-fields .place-search,.target-fields .location-status{grid-column:auto}.target-switch{display:grid;grid-template-columns:1fr}.target-switch span{text-align:center}}

/* v0.5.0 – Zielhöhe für freie Zielorte */
.target-height small{display:block;color:var(--muted);font-size:.66rem;line-height:1.3;margin-top:2px}.target-fields .target-height{align-self:stretch}

/* v0.6.0-rc1 – QTH/Ziel-Klarheit, Qualitätsanzeige, Quickstart und Footer */
.relay-symbol{gap:3px}.quality-bars{height:15px;display:flex;align-items:end;gap:2px}.quality-bars b{display:block;width:3px;background:#566169;border-radius:2px}.quality-bars b:nth-child(1){height:4px}.quality-bars b:nth-child(2){height:6px}.quality-bars b:nth-child(3){height:9px}.quality-bars b:nth-child(4){height:12px}.quality-bars b:nth-child(5){height:15px}.quality-bars.q1 b:nth-child(-n+1),.quality-bars.q2 b:nth-child(-n+2){background:#e1a928}.quality-bars.q3 b:nth-child(-n+3){background:#ffc62b}.quality-bars.q4 b:nth-child(-n+4),.quality-bars.q5 b:nth-child(-n+5){background:#4bd04b}
.route-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;padding:14px 24px;border-bottom:1px solid #303a42;background:rgba(255,255,255,.018)}.route-summary article{display:grid;gap:4px;padding:12px 14px;border:1px solid #354049;border-radius:11px}.route-summary small{color:var(--muted)}.route-summary strong{font-size:1.05rem}.route-summary span{font-size:.78rem;color:#cbd2d6}.route-summary>i{font-style:normal;color:var(--red);font-size:1.5rem}.quickstart{padding:18px}.quickstart h2{margin:0 0 12px;color:var(--red);font-size:1rem;text-transform:uppercase}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.quick-grid article{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #303a42;border-radius:10px;background:rgba(255,255,255,.02)}.quick-grid article>b{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:var(--red);color:white}.quick-grid span{font-size:.8rem;line-height:1.4;color:#c8cfd3}.footer{padding:0 20px 20px;max-width:1600px;margin:0 auto;width:100%;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#b7bec2;font-size:.72rem;line-height:1.7}.footer a{color:#dce6ec}.target-fields label small{display:block;color:var(--muted);font-size:.66rem;line-height:1.3;margin-top:2px}
@media(max-width:900px){.quick-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.route-summary{grid-template-columns:1fr}.route-summary>i{transform:rotate(90deg);justify-self:center}.quick-grid{grid-template-columns:1fr}.footer{flex-direction:column}}

/* v0.6.1-rc2 – Online-Quickstart und kompakte, zentrierte Fußzeile */
.footer{display:block;text-align:center;line-height:1.75;padding:2px 20px 18px}
.footer span{display:inline}
.footer a{color:#dbe8f2;text-underline-offset:2px}
.footer a:hover{color:var(--red)}
.guide-main{max-width:1380px}
.guide-hero{padding:34px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(120deg,rgba(255,52,56,.10),rgba(9,14,18,.99) 55%)}
.guide-hero h1{font-size:2.45rem;margin:5px 0 10px}.guide-hero p{max-width:900px;color:#c5cdd2;line-height:1.65;margin:0}.guide-kicker{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.guide-start{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:12px 18px;border-radius:9px;background:linear-gradient(180deg,#ff4145,#d91f25);border:1px solid #ff5b5f;color:#fff;text-decoration:none;font-weight:800;box-shadow:0 7px 18px rgba(255,52,56,.15)}
.guide-step{padding:24px;display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:28px;align-items:center}.guide-step.reverse{grid-template-columns:minmax(0,1.28fr) minmax(280px,.72fr)}.guide-step.reverse .guide-copy{grid-column:2}.guide-step.reverse figure{grid-column:1;grid-row:1}.guide-copy h2,.guide-tips h2,.guide-about h2{margin:7px 0 12px;color:#fff}.guide-copy p,.guide-about p{color:#c2cbd0;line-height:1.65}.step-number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--red);color:white;font-size:1.05rem}.guide-step figure{margin:0}.guide-step img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #3b464e;box-shadow:0 14px 34px rgba(0,0,0,.36)}.guide-step figcaption{margin-top:8px;text-align:center;color:var(--muted);font-size:.78rem}.guide-tips,.guide-about{padding:26px}.tip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tip-grid article{min-height:105px;padding:16px;border:1px solid #303a42;border-radius:12px;background:#0c1217;display:grid;align-content:center;gap:8px}.tip-grid article span{color:#b9c2c7;font-size:.86rem;line-height:1.45}.tip-grid .quality-bars{position:relative;left:auto;bottom:auto;width:58px;height:27px}.guide-about{text-align:center}.guide-about p{max-width:900px;margin:10px auto 18px}
@media(max-width:850px){.guide-hero{display:grid;padding:24px}.guide-step,.guide-step.reverse{grid-template-columns:1fr}.guide-step.reverse .guide-copy,.guide-step.reverse figure{grid-column:auto;grid-row:auto}.tip-grid{grid-template-columns:1fr}.guide-hero h1{font-size:2rem}}
@media(max-width:650px){.footer{font-size:.68rem;line-height:1.9}.guide-step,.guide-tips,.guide-about{padding:18px}.guide-main{padding:10px}.topbar nav .active{display:block;padding:16px 10px;font-size:.82rem}}

/* v0.6.2-rc3 – größere Marke, Höhenachse und funkpraktische Auswertung */
.topbar{height:72px}.brand{gap:12px;padding:0 24px}.brand .tower img{display:block;width:48px;height:48px;object-fit:contain}.brand strong{font-size:1.9rem;letter-spacing:-.035em}.brand small{font-size:.76rem}.topbar nav a,.topbar nav button{padding:22px 16px}
#terrain{height:180px;max-height:180px}.profile{padding-bottom:14px}.legend{margin-top:3px;flex-wrap:wrap}
.radio-analysis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 22px 22px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.012))}.analysis-card{border:1px solid #303a42;border-radius:12px;padding:15px 16px;background:#0c1217;min-height:132px}.analysis-card h3{margin:0 0 11px;color:var(--red);font-size:.88rem;text-transform:uppercase;letter-spacing:.03em}.analysis-card>strong{display:block;font-size:1.05rem;margin-bottom:7px}.analysis-card p{margin:0;color:#bcc5ca;font-size:.8rem;line-height:1.55}.antenna-rating{list-style:none;margin:0;padding:0;display:grid;gap:8px}.antenna-rating li{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding-bottom:7px;border-bottom:1px solid #263038}.antenna-rating li:last-child{border:0;padding-bottom:0}.antenna-rating span{font-size:.8rem;color:#d4dade}.antenna-rating b,.analysis-card dd{font-size:.78rem}.rating-excellent{color:#4bd04b}.rating-good{color:#bde43c}.rating-limited{color:#ffc62b}.rating-critical{color:#ff7048}.analysis-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 16px}.analysis-card dl div{display:grid;gap:2px}.analysis-card dt{font-size:.7rem;color:var(--muted)}.analysis-card dd{margin:0;color:#f4f6f7;font-weight:750}
@media(max-width:900px){.radio-analysis{grid-template-columns:1fr}.topbar{height:66px}.brand strong{font-size:1.55rem}.brand .tower img{width:42px;height:42px}}
@media(max-width:650px){.topbar{height:62px}.brand{padding:0 12px}.brand strong{font-size:1.35rem}.brand .tower img{width:38px;height:38px}.radio-analysis{padding:0 12px 14px}.analysis-card dl{grid-template-columns:1fr 1fr}}


/* v0.6.2-rc4 – harmonische Screenkomposition, gleichwertige Karte/Profil und Höhenachse */
.topbar{height:74px}
.brand{gap:13px;padding:0 24px}
.brand .tower{display:grid;place-items:center;width:48px;height:56px;flex:0 0 48px}
.brand .tower img{display:block;width:46px;height:52px;object-fit:contain}
.brand strong{font-size:1.78rem;line-height:1;letter-spacing:-.025em}
.brand small{align-self:center;font-size:.72rem}
.dashboard{grid-template-columns:minmax(350px,32%) minmax(0,68%);align-items:stretch}
.alternatives,.detail{min-width:0}
.relay-item{min-height:116px;padding:14px 16px;grid-template-columns:44px minmax(0,1fr) 78px}
.detail-head{min-height:190px}
.visualization-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:16px;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}
.map-panel,.profile{min-width:0;border:1px solid #303a42;border-radius:12px;overflow:hidden;background:#0a1014;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.visualization-title,.profile-title{min-height:48px;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid #303a42;background:linear-gradient(90deg,rgba(255,52,56,.075),transparent 65%)}
.visualization-title h3,.profile h3{margin:0;text-transform:uppercase;color:var(--red);font-size:.92rem;letter-spacing:.045em}
.visualization-title span,.profile-title span{font-size:.72rem;color:var(--muted);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#map{height:260px;border:0;box-shadow:none}
.profile{padding:0}
#terrain{display:block;width:100%;height:260px;max-height:none}
.legend{min-height:42px;padding:10px 16px;gap:22px;align-items:center;border-top:1px solid #303a42;flex-wrap:wrap}
.map-panel #map{min-height:302px}
@media(max-width:1250px){.visualization-grid{grid-template-columns:1fr}.map-panel #map,#terrain{height:250px;min-height:250px}}
@media(max-width:1050px){.topbar{height:68px}.brand strong{font-size:1.58rem}.brand .tower{width:43px;height:50px}.brand .tower img{width:41px;height:47px}.dashboard{grid-template-columns:1fr}.alternatives{max-height:none}.visualization-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.visualization-grid{grid-template-columns:1fr;padding:10px;gap:10px}.map-panel #map,#terrain{height:235px;min-height:235px}.visualization-title,.profile-title{align-items:flex-start;flex-direction:column;gap:3px}.visualization-title span,.profile-title span{text-align:left;max-width:100%}}
@media(max-width:650px){.topbar{height:62px}.brand{padding:0 14px}.brand strong{font-size:1.38rem}.brand .tower{width:39px;height:45px}.brand .tower img{width:37px;height:43px}.detail-head{padding:18px}.relay-item{min-height:108px}}

/* v0.6.2-rc5 – kompaktere, geschlossenere Desktop-Komposition */
@media(min-width:1251px){
  .dashboard{grid-template-columns:minmax(390px,34%) minmax(0,66%);gap:16px}
  .visualization-grid{gap:12px;padding:12px 14px 14px}
  .visualization-title,.profile-title{min-height:44px;padding:10px 14px}
  #map{height:226px}
  .map-panel #map{min-height:268px}
  #terrain{height:226px}
  .legend{min-height:42px;padding:9px 14px;gap:16px;font-size:.75rem}
  .radio-analysis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 14px 14px}
  .analysis-card{min-height:146px;padding:13px 14px}
  .analysis-card h3{font-size:.80rem;margin-bottom:9px}
  .analysis-card>strong{font-size:.96rem}
  .analysis-card p,.antenna-rating span{font-size:.75rem}
  .analysis-card dl{grid-template-columns:1fr;gap:6px}
  .antenna-rating{gap:6px}
  .antenna-rating li{padding-bottom:5px}
}
@media(min-width:1450px){
  .dashboard{grid-template-columns:minmax(410px,33%) minmax(0,67%)}
  .analysis-card dl{grid-template-columns:1fr 1fr;gap:7px 10px}
}

/* v0.6.2-rc6 – Auswertung über volle Breite und Relais-Schalter oben */
.dashboard{align-items:start}
.alternatives{align-self:start}
.show-all-top{border-bottom:1px solid #303940;background:rgba(255,52,56,.035);font-size:.9rem}
.show-all-top:hover{background:rgba(255,52,56,.10)}
.radio-analysis{position:relative;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px;background:linear-gradient(145deg,rgba(20,27,33,.98),rgba(9,14,18,.99));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.radio-analysis:before{content:"";position:absolute;top:0;left:18px;right:18px;height:2px;background:linear-gradient(90deg,transparent,var(--red),transparent);opacity:.72}
.radio-analysis .analysis-card{min-height:138px}
@media(max-width:1100px){.radio-analysis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.radio-analysis{grid-template-columns:1fr;padding:10px}}

/* v0.6.2-rc7 – Quickstart, Informationsseiten und kompakte Fußzeile */
.compact-footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:7px 22px;padding:14px 20px;border-top:1px solid #303a42;background:#070b0f;color:var(--muted);font-size:.76rem;text-align:center}
.compact-footer .footer-links,.compact-footer .footer-meta{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:7px 16px}
.compact-footer .footer-links a,.compact-footer .footer-meta a{color:#d9dfe3;text-decoration:none}
.compact-footer a:hover{color:var(--red);text-decoration:underline}
.compact-footer .footer-meta{color:#818c94}
.guide-main,.info-main{max-width:1480px;margin:0 auto;padding:22px;display:grid;gap:20px}
.guide-hero,.info-hero{padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.guide-hero h1,.info-hero h1{margin:5px 0 10px;font-size:clamp(2rem,4vw,3.3rem)}
.guide-hero p,.info-hero p{max-width:960px;margin:0;color:#c5cdd2;line-height:1.65}
.guide-kicker{color:var(--red);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.guide-start{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border:1px solid #ff5b5f;border-radius:9px;background:linear-gradient(180deg,#ff4145,#d91f25);color:white;text-decoration:none;font-weight:800;white-space:nowrap;box-shadow:0 8px 20px rgba(255,52,56,.16)}
.guide-start:hover{filter:brightness(1.08)}
.guide-step{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:26px;padding:24px;align-items:center}
.guide-step.reverse{grid-template-columns:minmax(0,1.28fr) minmax(280px,.72fr)}
.guide-step.reverse .guide-copy{order:2}.guide-step.reverse figure{order:1}
.guide-copy h2{margin:8px 0 10px}.guide-copy p{margin:0;color:#c1c9ce;line-height:1.65}
.step-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--red);color:#fff;font-size:1.15rem;box-shadow:0 7px 18px rgba(255,52,56,.24)}
.guide-step figure{margin:0;border:1px solid #344049;border-radius:12px;overflow:hidden;background:#080d12}
.guide-step figure img{display:block;width:100%;height:auto}
.guide-step figcaption{padding:9px 12px;color:#9da8af;font-size:.74rem;border-top:1px solid #303a42}
.guide-tips,.guide-about{padding:24px 28px}.guide-tips h2,.guide-about h2{margin-top:0}
.tip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tip-grid article{padding:16px;border:1px solid #303a42;border-radius:10px;background:#0b1115;display:grid;gap:5px}.tip-grid span{color:#adb7bd;line-height:1.45}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.info-card{padding:24px 27px}.info-card h2{margin-top:0;color:#f4f6f7}.info-card p{color:#c0c8cd;line-height:1.68}.info-card a{color:#ff686b}.info-card .notice{padding:14px 16px;border-left:3px solid var(--red);background:rgba(255,52,56,.075);border-radius:0 8px 8px 0}.info-card.wide{grid-column:1/-1}.legal-card{max-width:780px;width:100%;margin:0 auto}.sources-grid .info-card{min-height:210px}
@media(max-width:900px){.guide-step,.guide-step.reverse{grid-template-columns:1fr}.guide-step.reverse .guide-copy,.guide-step.reverse figure{order:initial}.info-grid{grid-template-columns:1fr}.info-card.wide{grid-column:auto}.guide-hero,.info-hero{align-items:flex-start;flex-direction:column}.tip-grid{grid-template-columns:1fr}.sources-grid .info-card{min-height:0}}
@media(max-width:650px){.guide-main,.info-main{padding:12px;gap:12px}.guide-hero,.info-hero,.guide-step,.guide-tips,.guide-about,.info-card{padding:18px}.guide-hero h1,.info-hero h1{font-size:2rem}.compact-footer{font-size:.72rem;padding:14px 10px}.compact-footer .footer-links,.compact-footer .footer-meta{gap:7px 12px}}

/* v0.6.2-rc8 – KI-Hinweis und Projektabschluss */
.ai-development{border-color:rgba(255,52,56,.34);box-shadow:0 14px 34px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.025)}
.ai-development h2:before{content:"AI";display:inline-grid;place-items:center;min-width:34px;height:24px;margin-right:10px;padding:0 7px;border-radius:6px;background:rgba(255,52,56,.14);border:1px solid rgba(255,104,107,.42);color:#ff777a;font-size:.7rem;letter-spacing:.08em;vertical-align:3px}
.project-signoff{text-align:center;padding:18px 24px}.project-signoff p{margin:0;color:#f0f3f4;font-size:1.05rem}
.compact-footer .footer-links>span a{font-weight:800;color:#f0f3f4}

/* v0.6.2-rc10 – Farbkorrektur Fresnel-Hinweis */
.profile-title h3{color:var(--red)}
.legend span:nth-child(3){color:var(--blue)}


/* v0.6.2-rc11 – kategorisierte Relais-Informationen */
.relay-info-entry-button{display:inline-flex;align-items:center;margin-top:8px;padding:4px 8px;border:1px solid #ff5559;border-radius:6px;color:#f1f3f4;background:rgba(255,52,56,.045);font-size:.68rem;font-weight:700;text-decoration:none;letter-spacing:.01em}.relay-info-entry-button:hover{color:#fff;border-color:#ff5559;background:rgba(255,52,56,.09)}
.community-info{display:grid;gap:5px;margin-top:8px;max-width:720px}.community-info[hidden]{display:none}.community-info a{display:grid;grid-template-columns:1.15em 1fr;gap:6px;align-items:start;padding:6px 8px;border-left:2px solid #4b9fff;border-radius:0 6px 6px 0;background:rgba(75,159,255,.055);color:inherit;text-decoration:none}.community-info a:hover{background:rgba(75,159,255,.11);border-left-color:#ff5559}.community-info .info-symbol{font-size:.78rem;line-height:1.35}.community-info p{margin:0;color:#d7dde0;font-size:.76rem;line-height:1.35;white-space:pre-wrap}.community-info small{grid-column:2;display:block;margin-top:-2px;color:#87939b;font-size:.62rem}
.info-entry-main{max-width:820px;margin:0 auto;padding:28px 18px}.info-entry-card{padding:28px}.info-entry-card h1{margin:7px 0 3px}.info-entry-card h1 em{color:#aeb7bd;font-size:.62em;font-style:normal}.info-entry-relay-name{margin:0 0 22px;color:#aeb7bd}.info-entry-form{display:grid;gap:16px;margin-top:20px}.info-entry-form label{display:grid;gap:7px;color:#dce2e5;font-weight:700}.info-entry-form input,.info-entry-form select,.info-entry-form textarea{width:100%;padding:11px 12px;border:1px solid #3a4650;border-radius:8px;background:#090f14;color:#fff;font:inherit}.info-entry-form textarea{resize:vertical;line-height:1.5}.info-entry-form .guide-start{border:1px solid #ff5b5f}.info-entry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.info-delete-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border:1px solid #ff5b5f;border-radius:8px;background:transparent;color:#ff9da0;font:inherit;font-weight:700;cursor:pointer}.info-delete-button:hover{background:rgba(255,52,56,.12);color:#fff}.form-message{margin:16px 0;padding:12px 14px;border-radius:8px}.form-message.error{background:rgba(255,52,56,.1);border:1px solid rgba(255,82,86,.38);color:#ffb3b5}.form-message.success{background:rgba(63,190,88,.1);border:1px solid rgba(75,210,102,.36);color:#b9f3c5}
@media(max-width:650px){.info-entry-main{padding:12px}.info-entry-card{padding:19px}.relay-info-entry-button{font-size:.7rem}}
