/* Hospitality Radar · v3d (23.10.2026), über style-v2.css. Aktualität, Mein Gebiet, Preistabelle (Konzept 5.7),
   Handy-Segmentleiste List | Map | File (Konzept 7), Beispielakte /sample-file. Keine Schatten, Tinte = Handlung. */

/* Aktualität */
.stats-upd{max-width:var(--max);margin:20px auto 0;padding:0 24px;font-size:13px;color:var(--muted);font-family:var(--ui)}
#card .meta .latest,#rail .rctx .latest{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}

/* Textlink-Knopf */
.lnk{background:none;border:0;padding:0;font:inherit;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px;cursor:pointer}
.lnk:hover{text-decoration-color:var(--ink)}

/* Mein Gebiet */
.terr{background:var(--paper);border-bottom:1px solid var(--line);padding:40px 0 36px}
.terr[hidden],body.xp .terr{display:none}
.terr-t th.n,.sf-t th.n{font-family:var(--ui);font-size:12.5px}
.terr .terr-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;border-top:1px solid var(--line-strong);padding-top:16px}
.terr h2{font-family:var(--display);font-weight:300;font-size:30px;line-height:1.15;margin:0}
.terr .terr-sub{color:var(--ink-2);font-size:14.5px;margin:0;max-width:64ch}
.terr-f{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:24px;margin-top:22px;align-items:start}
.terr-l{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:500;color:var(--muted)}
.terr-l select{height:40px;padding:0 10px;font-size:15px}
.terr-rg{border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px}
.terr-rg legend{font-size:12.5px;font-weight:500;color:var(--muted);padding:0;margin-bottom:6px}
.terr-rg label{display:flex;align-items:center;gap:10px;min-height:40px;border-bottom:1px solid var(--line);font-size:15px;cursor:pointer}
.terr-rg input{width:16px;height:16px;accent-color:var(--ink);margin:0}
.terr-rg em{margin-left:auto;font-style:normal;font-family:var(--mono);font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.terr-a{display:flex;align-items:center;gap:20px;margin-top:22px;flex-wrap:wrap}
.terr-a .msg{font-size:13.5px;color:var(--mark)}
.terr-t{width:100%;border-collapse:collapse;margin-top:18px;font-size:14.5px}
/* 23.10.: unter der Karte, Liste scrollt in sich (rund fünf Zeilen sichtbar) statt die Seite zu verlängern */
.terr-scroll{max-height:340px;overflow-y:auto;margin-top:18px;border-bottom:1px solid var(--line-strong);overscroll-behavior:contain}
.terr-scroll .terr-t{margin-top:0}
.terr-scroll thead th{position:sticky;top:0;background:var(--paper);z-index:1}
.terr-t th{text-align:left;font-size:12.5px;font-weight:500;color:var(--muted);border-bottom:1px solid var(--line-strong);padding:8px 12px 8px 0}
.terr-t td{border-bottom:1px solid var(--line);padding:12px 12px 12px 0;vertical-align:top}
.terr-t .n{text-align:right;font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums}
.terr-t td b{font-weight:500}
.terr-t td small{display:block;font-size:12.5px;color:var(--muted)}
.terr-t tbody tr[data-tproj]{cursor:pointer}
.terr-t tbody tr[data-tproj]:hover{background:var(--paper-2)}
.terr-t .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--signal);margin-right:8px;vertical-align:1px}
.terr-t tr.sk td{height:44px;background:linear-gradient(var(--paper-2),var(--paper-2)) no-repeat 0 50%/100% 14px}
.terr-foot,.terr-empty{font-size:13.5px;color:var(--muted);margin-top:14px;max-width:80ch}
.terr-empty{color:var(--ink-2);font-size:15px}
.terr .signhint{margin-top:14px}

/* Preise als Tabelle: Pläne = Spalten, gleiche Zeilenhöhen, Linien statt Karten, kein Hervorhebungsschatten */
.ptable-wrap{margin-top:32px;overflow-x:auto;-webkit-overflow-scrolling:touch}
table.ptable{width:100%;min-width:760px;border-collapse:collapse;table-layout:fixed;font-size:14.5px}
.ptable col.k{width:22%}
.ptable th,.ptable td{border-bottom:1px solid var(--line);padding:0 16px;height:48px;vertical-align:middle;text-align:left;box-shadow:none;background:none}
.ptable th:first-child,.ptable td:first-child{padding-left:0}
.ptable thead th{height:auto;padding-top:0;padding-bottom:14px;border-bottom:1px solid var(--line-strong);vertical-align:bottom}
.ptable thead .pn{display:block;font-family:var(--display);font-size:22px;font-weight:500;color:var(--ink)}
.ptable thead small{display:block;font-family:var(--ui);font-size:12.5px;font-weight:400;color:var(--muted);height:18px;margin-top:2px}
.ptable tbody th{font-weight:500;font-size:13.5px;color:var(--muted)}
.ptable .amt{font-family:var(--display);font-weight:300;font-size:30px;line-height:1;color:var(--ink);white-space:nowrap}
.ptable .amt small{font-family:var(--ui);font-size:13px;color:var(--muted)}
.ptable td.no{color:var(--veil)}
.ptable .mono-v{font-family:var(--mono);font-size:13px;font-variant-numeric:tabular-nums}
.ptable tr.cta td{border-bottom:0;height:72px}
.ptable tr.cta .btn{width:100%;justify-content:center}
.ptable td+td,.ptable th+td{border-left:1px solid var(--line)}
.plans{display:none!important}
@media (max-width:640px){
  table.ptable{min-width:640px;font-size:13.5px}
  .ptable col.k{width:128px}
  .ptable tbody th,.ptable thead th:first-child{position:sticky;left:0;z-index:1;background:var(--paper);padding-right:8px}
  .ptable .amt{font-size:24px}
  .ptable thead .pn{font-size:18px}
}

/* Beispielakte: Hinweise auf der Startseite */
.sec-head .sflink,.proof .sflink{display:inline-block;margin-top:14px;font-size:14.5px;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.proof .sflink{display:block;text-align:center;margin-top:12px}
.sec-head .sflink:hover,.proof .sflink:hover{text-decoration-color:var(--ink)}

/* Beispielakte /sample-file */
.sf{padding:32px 0 96px}
.sf-flag{border:1px solid var(--signal);background:var(--signal-tint);border-radius:var(--r);padding:12px 16px;font-size:14.5px;color:var(--ink)}
.sf-flag b{font-weight:600}
.sf-crumb{margin:24px 0 20px;font-size:14px;color:var(--ink-2);display:flex;flex-wrap:wrap;gap:4px 6px;align-items:baseline}
.sf-crumb i{font-style:normal;color:var(--muted)}
.sf-crumb b{font-weight:400;color:var(--mark)}
.sf-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px;align-items:start}
.sf-file{background:var(--card);border:1px solid var(--line);border-radius:var(--r2);padding:28px}
.sf-label{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:500;color:var(--muted)}
.sf-tag{border:1px solid var(--signal);color:var(--ink);border-radius:var(--r);padding:2px 8px;font-size:12px;background:var(--signal-tint)}
.sf-file h1{font-family:var(--display);font-weight:500;font-size:30px;line-height:1.15;margin:10px 0 6px;max-width:none}
.sf-meta{color:var(--muted);font-size:15px;margin:0}
.sf-sum{font-size:13.5px;color:var(--muted);padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0}
.sf-sum b{color:var(--ink);font-weight:600}
.sf-stage{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px;color:var(--muted)}
.sf-stage i{font-style:normal}
.sf-stage .now{color:var(--ink);font-weight:500}
.sf-h{font-family:var(--ui)!important;font-size:12.5px!important;font-weight:500!important;color:var(--muted)!important;border-top:0!important;border-bottom:1px solid var(--line-strong);padding:0 0 6px!important;margin:30px 0 0!important;letter-spacing:0!important;line-height:1.3!important}
.sf-wbar{margin-top:30px!important}
.sf .wlg{color:var(--muted);font-size:12.5px;margin-top:8px}
.sf .wlg i.wb,.sf .wbar i.wb{background:var(--ink)}
.sf .wlg i.wo,.sf .wbar i.wo{background:var(--signal)}
.sf .wbar b.wn{background:var(--mark)}
.sf .wst{margin-top:12px;border-radius:0;background:var(--paper-2);border-left:2px solid var(--muted);font-size:14px}
.sf-t{width:100%;border-collapse:collapse;font-size:14px}
.sf-t th{text-align:left;font-size:12.5px;font-weight:500;color:var(--muted);padding:10px 12px 6px 0;border-bottom:1px solid var(--line)}
.sf-t td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}
.sf-t .n{text-align:right;font-family:var(--mono);font-size:13px;padding-right:0;font-variant-numeric:tabular-nums}
.sf-t td small{font-size:11.5px;color:var(--muted);margin-left:6px}
.sf-facts td:first-child{color:var(--ink-2);width:38%}
.sf-sig td.d{font-family:var(--mono);font-size:13px;white-space:nowrap;color:var(--ink-2)}
.sf-talk{list-style:none;margin:0;padding:0}
.sf-talk li{display:grid;grid-template-columns:200px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.sf-talk b{font-weight:500}
.sf-talk span{color:var(--ink-2)}
.sf-src{list-style:none;margin:0;padding:0}
.sf-src li{display:grid;grid-template-columns:40px 1fr auto;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}
.sf-src b{font-family:var(--mono);font-weight:500;font-size:13px}
.sf-src em{font-style:normal;color:var(--muted);font-size:12.5px;white-space:nowrap}
.sf-note{font-size:13.5px;color:var(--muted);margin:12px 0 0}
.sf-side{position:sticky;top:84px}
.sf-box{border-top:1px solid var(--line-strong);padding-top:16px}
.sf-box h2{font-family:var(--display);font-weight:300;font-size:26px;margin:0 0 8px;border:0!important;padding:0!important}
.sf-tiers th:not(:first-child),.sf-tiers td:not(:first-child){text-align:center;padding-right:0;width:17%}
.sf-tiers td:not(:first-child){font-size:12.5px;color:var(--ink)}
.sf-tiers td:first-child{font-size:13.5px;color:var(--ink-2)}
.sf-price{font-size:14px;color:var(--ink-2);margin:16px 0}
.sf-price b{font-family:var(--mono);font-weight:500;color:var(--ink)}
.sf-box .btn{width:100%;justify-content:center;margin-bottom:8px}
@media (max-width:980px){.sf-grid{grid-template-columns:1fr}.sf-side{position:static}}
@media (max-width:640px){
  .sf{padding:20px 0 64px}
  .sf .wrap{padding:0 16px}
  .sf-file{padding:18px 16px}
  .sf-file h1{font-size:24px}
  .sf-talk li{grid-template-columns:1fr;gap:2px}
  .sf-src li{grid-template-columns:32px 1fr}
  .sf-src em{grid-column:2;white-space:normal}
  .sf-facts td:first-child{width:44%}
  .sf-sig thead{display:none}
  .sf-sig tr{display:grid;grid-template-columns:auto 1fr auto;gap:2px 12px;border-bottom:1px solid var(--line);padding:10px 0}
  .sf-sig td{border:0;padding:0}
  .sf-sig td:nth-child(3){grid-column:1 / -1;color:var(--ink-2)}
  .terr-f{grid-template-columns:1fr}
  .terr-rg{grid-template-columns:1fr 1fr}
  .terr h2{font-size:26px}
  .terr-t thead{display:none}
  .terr-t tr{display:grid;grid-template-columns:1fr auto;gap:2px 12px;border-bottom:1px solid var(--line);padding:10px 0}
  .terr-t td{border:0;padding:0}
  .terr-t td:nth-child(1),.terr-t td:nth-child(4){display:none}
  .terr-t td:nth-child(2){grid-column:1}
  .terr-t td:nth-child(6){grid-column:2;grid-row:1}
  .terr-t td:nth-child(3),.terr-t td:nth-child(5){grid-column:1 / -1;font-size:13px;color:var(--muted)}
  .terr-t tr.sk{display:block;padding:0}
  .stats-upd{padding:0 20px}
}

/* Handy (<=640px): untere Segmentleiste List | Map | File, im Explorer immer genau eine Fläche */
#mseg{display:none}
@media (max-width:640px){
  #stage.city,#stage.rail{height:calc(100svh - 56px)!important;min-height:480px!important}
  #stage.city #mseg,#stage.rail #mseg{display:flex;position:absolute;left:0;right:0;bottom:0;height:48px;z-index:30;background:var(--card);border-top:1px solid var(--line);padding:6px 12px;box-sizing:border-box}
  #mseg button{flex:1;height:36px;min-height:36px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:500 13.5px var(--ui);border-radius:0;cursor:pointer}
  #mseg button+button{border-left:0}
  #mseg button:first-child{border-radius:3px 0 0 3px}
  #mseg button:last-child{border-radius:0 3px 3px 0}
  #mseg button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
  /* Liste */
  #stage.city #rail,#stage.rail #rail{top:52px!important;bottom:48px!important;left:0!important;width:100%!important;transition:none!important;z-index:12}
  #stage.city:not(.m-list) #rail,#stage.rail:not(.m-list) #rail{transform:translateX(-100%)!important;visibility:hidden}
  #stage.city.m-list #rail,#stage.rail.m-list #rail{transform:none!important;visibility:visible}
  #stage.m-list #rail-close{display:none}
  /* Akte: volle Fläche, Kaufbalken unten über der Leiste, kein Bottom-Sheet */
  #stage.city #card,#stage.rail #card{top:52px!important;bottom:48px!important;left:0!important;right:0!important;width:auto!important;height:auto!important;max-height:none!important;border-radius:0!important;border:0!important;transform:none!important;z-index:12}
  #stage.city:not(.m-file) #card,#stage.rail:not(.m-file) #card{display:none!important}
  #stage.city.m-file #card,#stage.rail.m-file #card{display:flex!important;opacity:1!important}
  #stage.city #card .sheet-h,#stage.rail #card .sheet-h{display:none!important}
  #stage.city #card .cbody,#stage.rail #card .cbody{padding:16px 16px 24px!important}
  /* Karte: alles Schwebende weg außer Brotkrume und Umschalter */
  #stage.city #browse,#stage.rail #browse,#stage.city #myradar,#stage.rail #myradar{display:none!important}
  #stage.city #tools,#stage.rail #tools{display:none!important}
  #stage.city.m-map #tools{display:flex!important;top:60px!important;right:8px!important;left:auto!important;bottom:auto!important;transform:none!important}
  #stage.city #crumb,#stage.rail #crumb{max-width:calc(100vw - 16px)!important;opacity:1!important;pointer-events:auto!important}
  #stage.city .maplibregl-ctrl-bottom-right,#stage.rail .maplibregl-ctrl-bottom-right{bottom:52px!important;right:0!important}
  #stage.city #netcap{top:100px}
}

/* 23.10.: Vollständigkeit als Ring, Größe als Stufenbalken */
.fring{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-style:normal;font-size:12px;color:var(--muted);white-space:nowrap;vertical-align:middle}
.fring svg{display:block;flex:none}
.fring circle{fill:none}
.fring .tr{stroke:var(--line)}
.fring .vl{stroke:var(--signal);stroke-linecap:round}
.fring.ok .vl{stroke:var(--ink)}
.fring.ok b{color:var(--ink)}
.fring b{font-weight:500}
.fring.big{gap:0}
.fring.big b{display:none}
.fsize{display:inline-flex;align-items:flex-end;gap:6px;white-space:nowrap;vertical-align:middle}
.fsize svg{display:block;flex:none}
.fsize rect{fill:var(--line)}
.fsize rect.on{fill:var(--ink)}
.fsize b{font-family:var(--mono);font-weight:400;font-size:12.5px;color:var(--ink);line-height:1}
.fsize small{font-family:var(--ui);font-size:11px;color:var(--muted);line-height:1}
#rail .ri.pr{grid-template-columns:62px 1fr auto!important}
#rail .ri.pr .pr-l .fsize{flex-direction:column;align-items:flex-start;gap:3px}
#rail .ri.pr .pr-l .fsize small{margin-top:0}
#rail .ri.pr>em{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
#card .plist button{grid-template-columns:1fr auto 64px!important}
#card .plist em{display:flex;justify-content:flex-end}
.terr-t td.n .fsize,.terr-t td.n .fring{justify-content:flex-end}
.terr-t td.n .fsize{gap:6px}

/* Projektakte: Ring + Größe im Kopf */
#card .fsum2{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#card .fsum2>div{display:flex;flex-direction:column;min-width:0}
#card .fsum2>div:not(.fsz){flex:1}
#card .fsum2 b{color:var(--ink);font-weight:600;font-size:14px}
#card .fsum2 span{font-size:12.5px;color:var(--muted)}
#card .fsum2 .fring.big .vl{stroke-width:4}
#card .fsum2 .fsz{flex-direction:row;align-items:center;gap:8px;padding-left:12px;border-left:1px solid var(--line)}
#card .fsum2 .fsz b{font-family:var(--mono);font-weight:500}

/* Stadtakte: Inhalt auf einen Blick */
#card .ctiles{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:14px 0 6px;border-top:1px solid var(--line-strong)}
#card .ctile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 10px 12px 0;cursor:pointer;color:var(--ink);font-family:var(--ui)}
#card .ctile:nth-child(odd){border-right:1px solid var(--line)}
#card .ctile:nth-child(even){padding-left:12px}
#card .ctile:hover{background:var(--paper-2)}
#card .ctile b{font-family:var(--display);font-weight:400;font-size:26px;line-height:1.05}
#card .ctile span{font-size:13px;font-weight:500;margin-top:2px}
#card .ctile small{font-size:11.5px;color:var(--muted);margin-top:1px}
#card .ctile[data-jump="buy"] b{color:var(--signal)}

/* Navigation Stadt: zwei Ebenen */
#rlist .pfseg{display:grid;grid-template-columns:1fr 1fr;margin:8px 8px 0;border:1px solid var(--ink)}
#rlist .pfseg button{border:0;background:none;padding:9px 6px;font-family:var(--ui);font-size:13px;color:var(--ink);cursor:pointer}
#rlist .pfseg button.on{background:var(--ink);color:#fff}
#rlist .pfseg small{font-family:var(--mono);font-size:11px;opacity:.7;margin-left:3px}
#rlist .pfsub{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:10px 8px 4px}
#rlist .pfsub>span{flex-basis:100%;font-size:11.5px;color:var(--muted);margin-top:4px}
#rlist .pfsub>span:first-child{margin-top:0}
#rlist .pfsub button{border:1px solid var(--line);background:none;padding:5px 9px;font-family:var(--ui);font-size:12.5px;color:var(--ink-2);cursor:pointer}
#rlist .pfsub button.on{border-color:var(--ink);background:var(--ink);color:#fff}
#rlist .pfsub small{font-family:var(--mono);font-size:10.5px;opacity:.7;margin-left:2px}

/* 23.10.: zweizeiliges Logo, größer (Denis) */
.brand .logo.stk{height:44px}
@media (max-width:1100px){.brand .logo.stk{height:38px}}

/* 23.10.: Stadt-/Listenansicht lässt unten einen Streifen frei, damit klar ist, dass die Seite weitergeht und man dort scrollen kann */
@media (min-width:981px){#stage.city,#stage.rail{height:calc(100vh - var(--head) - 64px)!important}}
.maplibregl-cooperative-gesture-screen{font-family:var(--ui);font-size:15px}

/* 23.10.: Netzwerk "One contact, many projects": Ort-Filter, Sortierung, gewählte Firma */
.ptools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.ptools input{flex:1 1 220px;height:36px;padding:0 10px;border:1px solid var(--line);background:#fff;font:inherit;font-size:14px;color:var(--ink)}
.ptools input:focus{outline:none;border-color:var(--ink)}
.psort{display:flex;border:1px solid var(--ink)}
.psort button{border:0;background:none;padding:0 12px;height:34px;font-family:var(--ui);font-size:12.5px;color:var(--ink);cursor:pointer}
.psort button.on{background:var(--ink);color:#fff}
.prank small.preach{color:var(--ink-2)}
.prank em.r{color:var(--signal)!important}
.prank li.pnone{display:block;cursor:default;color:var(--muted);font-size:13.5px}
.prank li.pnone:hover,.prank li.phead:hover,.prank li.pself:hover,.prank li.pnum:hover,.prank li.psub:hover,.prank li.pcta:hover{background:none}
.prank li.phead{display:block;border-top:0;padding:2px 0 6px;cursor:default}
.prank .pback{background:none;border:0;padding:0;font:inherit;font-size:13px;color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}
.prank li.pself{grid-template-columns:1fr 90px;cursor:default}
.prank li.pself b{font-family:var(--display);font-weight:400;font-size:22px}
.prank li.pnum{display:grid;grid-template-columns:1fr 1fr;gap:0;cursor:default;padding:12px 8px}
.prank li.pnum div{display:flex;flex-direction:column}
.prank li.pnum b{font-family:var(--display);font-weight:400;font-size:30px;line-height:1}
.prank li.pnum div+div b{color:var(--signal)}
.prank li.pnum span{font-size:12.5px;color:var(--muted);margin-top:4px}
.prank li.psub{display:block;cursor:default;font-size:12.5px;font-weight:500;color:var(--muted);padding-top:14px}
.prank li.pcta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;cursor:default;padding-top:14px}
.prank li.pcta span{font-size:12.5px;color:var(--muted)}
@media (min-width:901px){.pgrid{align-items:start!important}.pnetwrap{position:sticky;top:76px;height:min(680px,calc(100vh - 100px));min-height:520px!important}}

/* ============ 23.10. Gestaltungsdurchgang (Denis): eine linke Kante, Zahlenband als Fläche über der Karte,
   Request access neu gesetzt, Logo größer. Steht bewusst am Ende und gewinnt gegen die älteren Ebenen. ============ */
:root{--head:72px}
.brand .logo.stk{height:52px}
@media (max-width:1100px){.brand .logo.stk{height:44px}}
/* eine Kante: Kopf, Hero-Text und Inhalt beginnen an der Inhaltsspalte (max 1240, Innenabstand 24) */
.nav .wrap{max-width:var(--max)!important;margin:0 auto!important;padding:0 24px!important}
@media (min-width:981px){
  #stage:not(.city):not(.rail) .copy{--edge:max(24px,calc((100% - var(--max)) / 2 + 24px));
    padding-left:var(--edge)!important;padding-right:40px!important;width:calc(var(--edge) + 480px)!important}
}
/* Zahlenband: helle Fläche, schiebt sich über den unteren Kartenrand */
section.stats{background:transparent!important;border:0!important;position:relative;z-index:6;padding:0 0 8px!important}
section.stats .wrap{background:var(--card)!important;border:1px solid var(--line);margin-top:-44px!important;padding:26px 0!important}
section.stats .wrap>div{padding:0 28px!important}
section.stats .wrap>div:first-child{padding-left:28px!important}
.stats-upd{margin-top:14px}
#stage:not(.city):not(.rail) #wtools{bottom:64px!important}
#stage:not(.city):not(.rail) .maplibregl-ctrl-bottom-left,#stage:not(.city):not(.rail) .maplibregl-ctrl-bottom-right{bottom:44px}
@media (max-width:980px){section.stats .wrap{margin-top:0!important}#stage:not(.city):not(.rail) #wtools{bottom:12px!important}}
/* Mein Gebiet: eigene, leicht abgesetzte Fläche */
.terr{background:var(--paper-2)!important;border-top:1px solid var(--line);margin-top:40px}
.terr-scroll thead th{background:var(--paper-2)}

/* Request access */
#access .access{display:grid!important;grid-template-columns:minmax(0,5fr) minmax(0,7fr)!important;gap:56px!important;align-items:start!important;
  background:var(--ink)!important;color:#fff!important;border:0!important;border-radius:var(--r2)!important;padding:56px!important}
#access .access .eyebrow{color:rgba(255,255,255,.55)!important}
#access .access h2{color:#fff!important;border:0!important;padding:0!important;margin:10px 0 14px!important}
#access .access p{color:rgba(255,255,255,.72)!important;max-width:40ch;margin:0!important}
#access .form{display:grid!important;gap:12px!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
#access .form .row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin:0!important;padding:0!important;border:0!important}
#access .form input:not(.hp),#access .form select,#access .form textarea{width:100%!important;height:48px;margin:0!important;padding:0 14px!important;box-sizing:border-box;
  background:rgba(255,255,255,.06)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:var(--r)!important;font:15px var(--ui)!important}
#access .form textarea{height:96px;padding:12px 14px!important;resize:vertical}
#access .form select{appearance:none;-webkit-appearance:none;padding-right:40px!important;
  background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%)!important;
  background-position:calc(100% - 20px) 21px,calc(100% - 15px) 21px!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
#access .form select option{color:var(--ink);background:#fff}
#access .form input::placeholder,#access .form textarea::placeholder{color:rgba(255,255,255,.5)!important}
#access .form input:focus,#access .form select:focus,#access .form textarea:focus{outline:none;border-color:#fff!important}
#access .form button{justify-self:start;height:48px;padding:0 28px!important;margin-top:4px;background:#fff!important;color:var(--ink)!important;border:1px solid #fff!important;border-radius:var(--r)!important;font:500 15px var(--ui)!important;width:auto!important}
#access .form button:hover{background:var(--paper)!important}
#access .form .msg{color:rgba(255,255,255,.8)}
@media (max-width:900px){#access .access{grid-template-columns:1fr!important;gap:28px!important;padding:32px 22px!important}#access .form .row{grid-template-columns:1fr!important}}

/* Fußzeile auf derselben Kante, Logo zweizeilig */
footer{border-top:1px solid var(--line)!important}
footer .wrap{max-width:var(--max)!important;margin:0 auto!important;padding:32px 24px!important;border-top:0!important;display:flex!important;justify-content:space-between;align-items:center;gap:20px 32px}
footer .flogo img{height:36px!important}

/* 23.10. Handy (Live-Test): Zahlenband mit Rand, klares 2er-Raster, fünfte Zahl über die volle Breite; Trennstrich im Kopf weg */
@media (max-width:980px){
  section.stats .wrap{margin:16px 16px 0!important;padding:0!important;grid-template-columns:1fr 1fr!important;row-gap:0!important}
  section.stats .wrap>div{padding:18px 16px!important;border:0!important;border-bottom:1px solid var(--line)!important}
  section.stats .wrap>div:nth-child(odd){border-right:1px solid var(--line)!important}
  section.stats .wrap>div:first-child{padding-left:16px!important}
  section.stats .wrap>div:last-child{grid-column:1/-1;border-right:0!important;border-bottom:0!important}
  .stats-upd{padding:0 16px!important}
}
@media (max-width:640px){.nav .nav-sep{display:none!important}}

/* 23.10. Preistabelle: Umschalter Monatlich/Jährlich (2 Monate geschenkt) */
.bill-sw{display:inline-flex;border:1px solid var(--ink);margin:22px 0 4px}
.bill-sw button{border:0;background:none;padding:9px 16px;font:500 14px var(--ui);color:var(--ink);cursor:pointer}
.bill-sw button.on{background:var(--ink);color:#fff}
.bill-sw em{font-style:normal;font-size:12px;color:var(--signal);margin-left:6px}
.bill-sw button.on em{color:#F3D58C}
.ptable .amt em{display:block;font-style:normal;font-size:12px;color:var(--signal);margin-top:4px;font-family:var(--ui)}
/* Bilder 24.10.2026 abends, Bildsprache v2: How it works = echte Radar-Ausschnitte, Who it is for = Materialbilder auf Papier */
.alt3 .alt .aimg{position:relative;height:170px!important;overflow:hidden!important;border-radius:4px;margin:0 0 20px;background:#EDE9E1;border:1px solid var(--line)}
.alt3 .alt .aimg img{width:100%;height:100%!important;object-fit:cover;object-position:left top;display:block;transition:transform .6s;filter:none}
.alt3 .alt:hover .aimg img{transform:scale(1.03)}
.tpics{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 16px;margin-top:30px}
.tpics a{display:block;text-decoration:none;color:var(--ink)}
.tpics img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block;border-radius:4px;border:1px solid var(--line);background:#F5F2EC;transition:transform .5s}
.tpics a:hover img{transform:translateY(-2px)}
.tpics span{display:block;padding:10px 2px 0;font:500 14.5px/1.35 var(--ui);color:var(--ink)}
.tpics a:hover span{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.tpall{margin-top:18px;font-size:15px}
@media (max-width:900px){.tpics{grid-template-columns:repeat(2,1fr);gap:18px 12px}.tpics span{font-size:13.5px}}
.wcard .wcr{display:none}
.wcard.big .wcr{display:block;grid-column:1;grid-row:7;margin-top:6px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* 24.10.2026 abends (Denis): Signal-Wand = grosse Fotokarte + dichter Feed statt Kartenraster */
.wgrid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)!important;grid-auto-rows:auto!important;gap:22px!important;align-items:stretch}
.wgrid .wcard.big{grid-column:1!important;grid-row:1!important;min-height:440px}
.wfeed{display:flex;flex-direction:column;border-top:1px solid var(--ink);min-width:0}
.wrow{display:grid;grid-template-columns:8px 150px minmax(0,1fr) auto;column-gap:12px;align-items:baseline;padding:9px 2px;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;cursor:pointer;font:400 13.5px/1.35 var(--ui);color:var(--ink);animation:wrin .5s both}
.wrow:hover{background:rgba(21,23,27,.04)}
.wrow i{width:7px;height:7px;border-radius:50%;background:var(--k);align-self:center}
.wrow .wrk{color:var(--k);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wrow b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wrow .wrl{display:none}
.wrow .wrt{font-family:var(--mono);font-size:10.5px;color:var(--muted);white-space:nowrap}
.wrow:nth-child(2){animation-delay:.05s}.wrow:nth-child(3){animation-delay:.1s}.wrow:nth-child(4){animation-delay:.15s}.wrow:nth-child(5){animation-delay:.2s}.wrow:nth-child(6){animation-delay:.25s}.wrow:nth-child(n+7){animation-delay:.3s}
@keyframes wrin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wrow{animation:none}}
@media (max-width:980px){.wgrid{grid-template-columns:1fr!important}.wgrid .wcard.big{min-height:260px}}
@media (max-width:560px){.wrow{grid-template-columns:8px minmax(0,1fr) auto}.wrow .wrk{display:none}}
/* 24.10. (Denis): Feed scrollbar, so hoch wie die Fotokarte, unten weich ausgeblendet */
.wfeed{max-height:440px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;-webkit-mask-image:linear-gradient(180deg,#000 85%,transparent);mask-image:linear-gradient(180deg,#000 85%,transparent);padding-bottom:40px}
@media (max-width:980px){.wfeed{max-height:380px}}
