/* =========================================================
   FEUERwetter.de Website Shell / site.css
   v2.6.0
   Footer, Full-Width Layout, Mobile Header, Dashboard-Suche
   ========================================================= */

html,
body{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  background:#eef4f8 !important;
}

body{
  min-height:100vh !important;
  display:block !important;
}

body > .fw-widget,
#fw-widget.fw-widget,
.fw-widget{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
}

/* Footer */
.fw-site-footer{
  width:100% !important;
  max-width:none !important;
  margin:12px auto 10px !important;
  padding:8px 14px calc(8px + env(safe-area-inset-bottom)) !important;
  border-radius:14px !important;
  background:#eef4f8 !important;
  font-family:Arial,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.fw-footer-inner{
  width:100% !important;
  max-width:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px 14px !important;
  flex-wrap:wrap !important;
  text-align:center !important;
  padding:10px 14px !important;
  background:linear-gradient(180deg,#ffffff,#f8fafc);
  border:1px solid #dbe7f3 !important;
  border-radius:14px !important;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
  color:#64748b;
}

.fw-footer-brand{
  color:#0f172a !important;
  font-size:14px !important;
  font-weight:950 !important;
  line-height:1.1 !important;
}

.fw-footer-subtitle{
  margin:0 !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:750 !important;
  line-height:1.1 !important;
}

.fw-footer-links{
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

.fw-footer-links a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:3px 8px !important;
  border-radius:999px !important;
  background:#eef4ff !important;
  border:1px solid #dbe7f3 !important;
  color:#1d4ed8 !important;
  font-size:12px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-decoration:none !important;
}

.fw-footer-links a:hover,
.fw-footer-links a:focus-visible{
  background:#dbeafe !important;
  outline:none !important;
  text-decoration:none !important;
}

.fw-footer-links span{
  margin:0 !important;
  color:#94a3b8 !important;
  font-size:11px !important;
  font-weight:900 !important;
}

.fw-footer-copy{
  margin:0 !important;
  color:#94a3b8 !important;
  font-size:11px !important;
  line-height:1.15 !important;
}

.fw-footer-copy br{
  display:none !important;
}

#fw-version-label{
  display:inline-block;
  font-weight:800;
  color:#64748b;
}

.fw-widget.fw-firemode ~ .fw-site-footer,
.fw-widget:fullscreen ~ .fw-site-footer{
  display:none !important;
}

/* Teilen, PDF, PWA */
.fw-share-export-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
  align-items:center;
}

.fw-share-export-actions .fw-link-btn{
  min-width:220px !important;
  text-align:center !important;
  justify-content:center !important;
}

.fw-lage-export-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0 14px;
  color:#64748b;
  font-size:13px;
  font-weight:700;
}
.fw-lage-export-btn{
  background:#14532d !important;
  border-color:#14532d !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(20,83,45,.18);
}
@media (max-width:700px){
  .fw-lage-export-row{justify-content:stretch}
  .fw-lage-export-row .fw-lage-export-btn{width:100%;justify-content:center}
}

.fw-restore-location-btn{
  background:#fff !important;
  border:1px solid #dbe7f3 !important;
  color:#1d4ed8 !important;
  padding:11px 15px !important;
  border-radius:999px !important;
  font-weight:900 !important;
}

.fw-pwa-banner{
  position:fixed;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  background:#0f172a;
  color:#fff;
  border:1px solid rgba(255,255,255,.15);
  box-shadow:0 20px 50px rgba(0,0,0,.35);
  border-radius:18px;
  padding:12px 14px;
  font:600 14px Arial,sans-serif;
  text-align:center;
}

.fw-pwa-banner button{
  border:0;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  cursor:pointer;
  background:#22c55e;
  color:#052e16;
}

.fw-pwa-banner button:last-child{
  background:rgba(255,255,255,.12);
  color:#fff;
  min-width:34px;
}

/* Dashboardmodus: Suchvorschläge lesbar */
.fw-firemode .fw-suggestions,
.fw-firemode .fw-search-suggestions,
.fw-firemode .fw-search-results,
.fw-firemode .fw-location-suggestions,
.fw-firemode #fw-suggestions,
.fw-firemode #fw-search-suggestions,
.fw-firemode #fw-search-results{
  background:#0f172a !important;
  border:1px solid rgba(255,255,255,.14) !important;
  color:#ffffff !important;
  box-shadow:0 18px 45px rgba(0,0,0,.45) !important;
}

.fw-firemode .fw-suggestions *,
.fw-firemode .fw-search-suggestions *,
.fw-firemode .fw-search-results *,
.fw-firemode .fw-location-suggestions *,
.fw-firemode #fw-suggestions *,
.fw-firemode #fw-search-suggestions *,
.fw-firemode #fw-search-results *{
  color:#ffffff !important;
}

.fw-firemode .fw-suggestions div,
.fw-firemode .fw-search-suggestions div,
.fw-firemode .fw-search-results div,
.fw-firemode .fw-location-suggestions div,
.fw-firemode .fw-suggestions button,
.fw-firemode .fw-search-suggestions button,
.fw-firemode .fw-search-results button,
.fw-firemode .fw-location-suggestions button{
  background:transparent !important;
  color:#ffffff !important;
}

.fw-firemode .fw-suggestions div:hover,
.fw-firemode .fw-search-suggestions div:hover,
.fw-firemode .fw-search-results div:hover,
.fw-firemode .fw-location-suggestions div:hover,
.fw-firemode .fw-suggestions button:hover,
.fw-firemode .fw-search-suggestions button:hover,
.fw-firemode .fw-search-results button:hover,
.fw-firemode .fw-location-suggestions button:hover{
  background:rgba(255,255,255,.10) !important;
}

/* Mobile Grundlayout */
@media(max-width:700px){
  body{
    padding:8px !important;
    background:radial-gradient(circle at top left,#fff7ed 0,#eef4f8 42%,#e0f2fe 100%) !important;
  }

  body > .fw-widget,
  #fw-widget.fw-widget,
  .fw-widget{
    border-radius:18px !important;
  }

  .fw-site-footer{
    margin:10px 8px 8px !important;
    padding:8px 8px calc(8px + env(safe-area-inset-bottom)) !important;
    background:transparent !important;
  }

  .fw-footer-inner{
    gap:6px 10px !important;
    border-radius:18px !important;
  }

  .fw-footer-subtitle{
    display:none !important;
  }

  .fw-share-export-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .fw-share-export-actions .fw-link-btn{
    width:100% !important;
    min-width:0 !important;
  }

  .fw-pwa-banner{
    bottom:calc(12px + env(safe-area-inset-bottom));
    font-size:13px;
  }
}

/* Mobile Header */
@media (max-width:640px){

  .fw-brand-text,
  .fw-header-title,
  .fw-subtitle,
  .fw-title{
    display:none !important;
  }

  .fw-header-main,
  .fw-header-inner{
    position:relative !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    align-items:start !important;
    gap:10px !important;
  }

  .fw-logo,
  .fw-brand-logo,
  .fw-header-logo img{
    max-width:140px !important;
    height:auto !important;
  }

  .fw-header-right,
  .fw-clock-wrap,
  .fw-clock-area{
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-start !important;
    text-align:center !important;
    justify-self:end !important;
    width:260px !important;
    max-width:260px !important;
  }

  #fw-clock,
  .fw-clock-time{
    position:relative !important;
    z-index:2 !important;
    display:block !important;
    width:100% !important;
    font-size:38px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:-1px !important;
    white-space:nowrap !important;
    margin:0 !important;
    text-align:center !important;
  }

  .fw-header-date{
    display:none !important;
  }

  #fw-date,
  .fw-clock-date{
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:260px !important;
    text-align:center !important;
    top:auto !important;
    right:auto !important;
    left:auto !important;
    margin:2px 0 0 !important;
    padding:0 !important;
    font-size:14px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:visible !important;
  }
}

/* Print */
@media print{
  .fw-actions,
  .fw-bottom-actions,
  .fw-share-export-actions,
  .fw-site-footer,
  .fw-modal-overlay,
  .fw-pwa-banner{
    display:none !important;
  }

  .fw-widget{
    box-shadow:none !important;
    border:0 !important;
  }

  .fw-hidden{
    display:block !important;
  }
}

/* =========================================================
   v2.6.0 – Rauchausbreitung Karte & PDF-Lagekarte 2.0
   ========================================================= */
.fw-smoke-north-control{
  width:42px;
  height:54px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  background:rgba(15,23,42,.92);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
  font-family:Arial,system-ui,sans-serif;
  line-height:1;
}
.fw-smoke-north-control strong{font-size:13px;font-weight:950;letter-spacing:.04em;}
.fw-smoke-north-control span{font-size:28px;font-weight:950;line-height:.9;}
.fw-smoke-wind-control{
  max-width:230px;
  background:rgba(15,23,42,.92);
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
  padding:9px 11px;
  font:800 12px/1.25 Arial,system-ui,sans-serif;
  text-align:left;
}
.fw-smoke-wind-control strong{font-weight:950;color:#fff;}
.leaflet-control-scale-line{
  background:rgba(15,23,42,.86) !important;
  border-color:rgba(255,255,255,.75) !important;
  border-top:0 !important;
  color:#fff !important;
  font-weight:900 !important;
  text-shadow:none !important;
  border-radius:0 0 8px 8px !important;
  box-shadow:0 8px 20px rgba(0,0,0,.24) !important;
}
.fw-smoke-source-label{
  background:rgba(15,23,42,.90) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:999px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.28) !important;
  font-weight:950 !important;
}
@media(max-width:700px){
  .fw-smoke-wind-control{font-size:11px;max-width:190px;padding:7px 9px;}
  .fw-smoke-north-control{width:36px;height:48px;border-radius:12px;}
}

@media print{
  .fw-smoke-north-control,
  .fw-smoke-wind-control,
  .leaflet-control-scale-line{
    -webkit-print-color-adjust:exact;
    print-color-adjust:exact;
  }
}

/* v2.6.0 Feedback-Footer-Button */
.fw-footer-feedback{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:3px 8px!important;border-radius:999px!important;background:#eef4ff!important;border:1px solid #dbe7f3!important;color:#1d4ed8!important;font-size:12px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;cursor:pointer!important;font-family:inherit!important}
.fw-footer-feedback:hover,.fw-footer-feedback:focus-visible{background:#dbeafe!important;outline:none!important}
