
/* Pogoda_PL – Europa Weather Map (PRO)
   - Layout: map + right-side panel (legend/toggles) in page layout
   - Markers: compact animated cloud + real precip (rain/snow), temp + wind (to-direction)
*/

:root{
  --bg:#0b1220;
  --panel:#0f1a2f;
  --text:#e7eefc;
  --muted:#a9b7d6;
  --border:rgba(255,255,255,.10);
  --shadow:0 10px 30px rgba(0,0,0,.35);
  --accent:#4da3ff;
  --good:#1ec98b;
  --warn:#ffcc33;
  --bad:#ff5b5b;
  --hot:#ff3b3b;
  --cold:#49a7ff;
  --radius:16px;
  --font: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, Arial, "Apple Color Emoji","Segoe UI Emoji";
  --panel-w: 320px;
  --nav-h: 64px; /* jeśli masz navbar w base.html ustaw tu, inaczej zostaw */
}


.europa-page{
  min-height: 78vh;
  width:100%;
  display:grid;
  grid-template-columns: 1fr var(--panel-w);
  overflow:hidden;
}

@media (max-width: 900px){
  .europa-page{
    grid-template-columns: 1fr;
    grid-template-rows: 62vh auto;
    height:100vh;
  }
}

.europa-map{
  position:relative;
  min-width:0;
  min-height:0;
}

#map{
  position:absolute;
  inset:0;
}

/* Loading overlay */
.mapLoading{
  position:absolute;
  inset:0;
  z-index:600; /* above Leaflet */
  display:flex;
  align-items:center;
  justify-content:center;
  background: rgba(7,16,34,.72);
  backdrop-filter: blur(10px);
  border:1px solid rgba(255,255,255,.08);
}
.mapLoading.isHidden{ display:none; }
.mapLoadingInner{
  display:flex;
  align-items:center;
  gap:12px;
  padding: 12px 14px;
  border-radius: 16px;
  border:1px solid rgba(255,255,255,.12);
  background: rgba(12,22,44,.70);
  box-shadow: var(--shadow);
}
.mapLoading .txt{ display:flex; flex-direction:column; gap:2px; }
.mapLoading .t1{ font-weight:900; font-size:12px; letter-spacing:.2px; }
.mapLoading .t2{ font-size:11px; color:var(--muted); }
.spinner{
  width:18px; height:18px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,.18);
  border-top-color: rgba(255,255,255,.85);
  animation: spin 0.9s linear infinite;
}
@keyframes spin{ to { transform: rotate(360deg);} }

.europa-panel{
  min-width:0;
  background: linear-gradient(180deg, rgba(15,26,47,.96), rgba(10,18,34,.96));
  border-left:1px solid var(--border);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
  padding: 14px;
  overflow:auto;
}

@media (max-width: 900px){
  .europa-panel{
    border-left:none;
    border-top:1px solid var(--border);
  }
}

.panelHeader{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}

.panelTitle{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.panelTitle h1{
  font-size:14px;
  line-height:1.15;
  margin:0;
  letter-spacing:.2px;
}

.panelTitle span{
  font-size:12px;
  color:var(--muted);
}

.statusPill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border:1px solid var(--border);
  border-radius: 999px;
  font-size:12px;
  color:var(--muted);
  white-space:nowrap;
}

.dot{
  width:8px;height:8px;border-radius:999px;
  background: var(--good);
  box-shadow: 0 0 0 4px rgba(30,201,139,.15);
}

hr.sep{
  border:none;
  height:1px;
  background: var(--border);
  margin:12px 0;
}

.sectionTitle{
  font-size:12px;
  font-weight:800;
  margin:0 0 8px 0;
}

.chk{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 10px;
  border-radius: 14px;
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
  margin-bottom:10px;
  cursor:pointer;
  user-select:none;
}

.chk input{
  width:16px; height:16px;
}

.chk .meta{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.chk b{ font-size:12px; }
.chk small{ font-size:11px; color:var(--muted); }

.btnRow{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.btn{
  cursor:pointer;
  border:1px solid var(--border);
  background: rgba(255,255,255,.03);
  color:var(--text);
  border-radius: 14px;
  padding:10px;
  font-size:12px;
  transition: transform .08s ease, background .15s ease;
}
.btn:hover{ transform: translateY(-1px); background: rgba(255,255,255,.05); }
.btn:active{ transform: translateY(0px); }

.legendRow{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:space-between;
}
.legendRow .key{
  font-size:12px;
  color:var(--muted);
}
.legendRow .value{
  font-size:12px;
}
.grad{
  height:10px;
  border-radius:999px;
  border:1px solid var(--border);
  background: linear-gradient(90deg, #5aa9ff 0%, #23d18b 35%, #ffd84d 65%, #ff5b5b 100%);
}

/* Leaflet tweaks */
.leaflet-control-attribution{ display:none; }
.leaflet-container{ background: #071022; }

/* Leaflet popup — mocny kontrast (żeby opis był czytelny) */
.leaflet-popup-content-wrapper{
  background: rgba(255,255,255,.95);
  color: #0b1220;
  border-radius: 14px;
  box-shadow: 0 18px 50px rgba(0,0,0,.35);
}
.leaflet-popup-tip{ background: rgba(255,255,255,.95); }
.leaflet-popup-close-button{
  color: #0b1220 !important;
  opacity: .65;
  font-size: 18px;
}
.leaflet-popup-close-button:hover{ opacity: .95; }
.leaflet-popup-content{ margin: 12px 14px; }

/* =========================
   Weather marker (COMPACT)
========================= */
.wxMarker{
  width:75px;
  height:70px;
  position:relative;
  pointer-events:auto;
  filter: drop-shadow(0 8px 12px rgba(0,0,0,.42));
}

.wxCard{
  position:absolute;
  inset:0;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(7,16,34,.62);
  backdrop-filter: blur(10px);
  overflow:hidden;
}

.wxTop{
  position:absolute;
  left:0; right:0; top:4px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  height:34px;
}

/* =========================
   Animated weather icons (compact)
   Supported: sun, night, cloud, rain, snow, thunder, fog
========================= */
.wxIcon{ position:relative; width:44px; height:28px; margin-top:6px; }
.wxIcon--cloud .cloud,
.wxIcon--cloudy .cloud,
.wxIcon--rain .cloud,
.wxIcon--snow .cloud,
.wxIcon--thunder .cloud,
.wxIcon--fog .cloud{ display:block; }

/* Mini sun/moon for partly cloudy */
.wxIcon--cloudy .sunMini{
  position:absolute;
  width:14px; height:14px;
  left:6px; top:4px;
  border-radius:999px;
  background: rgba(255,216,77,.95);
  box-shadow: 0 0 10px rgba(255,216,77,.32);
  animation: pulseRays 1.8s ease-in-out infinite;
}
.wxIcon--cloudy .moonMini{
  position:absolute;
  width:14px; height:14px;
  left:6px; top:4px;
  border-radius:999px;
  background: rgba(240,248,255,.92);
}
.wxIcon--cloudy .moonMini:after{
  content:"";
  position:absolute;
  width:14px; height:14px;
  left:4px; top:-2px;
  border-radius:999px;
  background: rgba(7,16,34,.95);
}

/* Sun */
.wxIcon--sun{
  width:40px; height:28px;
  animation: floaty 3.2s ease-in-out infinite;
}
.wxIcon--sun:before{
  content:"";
  position:absolute;
  width:16px; height:16px;
  left:12px; top:6px;
  border-radius:999px;
  background: rgba(255,216,77,.95);
  box-shadow: 0 0 12px rgba(255,216,77,.35);
}
.wxIcon--sun:after{
  content:"";
  position:absolute;
  left:12px; top:6px;
  width:16px; height:16px;
  border-radius:999px;
  background: transparent;
  box-shadow:
    0 -10px 0 -8px rgba(255,216,77,.9),
    0  10px 0 -8px rgba(255,216,77,.9),
    10px 0 0 -8px rgba(255,216,77,.9),
    -10px 0 0 -8px rgba(255,216,77,.9),
    7px -7px 0 -8px rgba(255,216,77,.85),
    7px  7px 0 -8px rgba(255,216,77,.85),
    -7px -7px 0 -8px rgba(255,216,77,.85),
    -7px  7px 0 -8px rgba(255,216,77,.85);
  animation: pulseRays 1.8s ease-in-out infinite;
}
@keyframes pulseRays{ 0%,100%{ transform: rotate(0deg); opacity:.9;} 50%{ transform: rotate(12deg); opacity:1;} }

/* Night (moon + small star) */
.wxIcon--night{
  width:40px; height:28px;
  animation: floaty 3.2s ease-in-out infinite;
}
.wxIcon--night:before{
  content:"";
  position:absolute;
  width:16px; height:16px;
  left:14px; top:5px;
  border-radius:999px;
  background: rgba(240,248,255,.92);
}
.wxIcon--night:after{
  content:"";
  position:absolute;
  width:16px; height:16px;
  left:18px; top:3px;
  border-radius:999px;
  background: rgba(7,16,34,.95);
  box-shadow: -14px 12px 0 -11px rgba(240,248,255,.75);
}

/* Fog */
.wxIcon--fog{
  width:44px; height:28px;
}
.wxIcon--fog .fogLine{
  position:absolute;
  left:0; right:0;
  height:3px;
  border-radius:999px;
  background: rgba(255,255,255,.55);
  filter: blur(.2px);
  animation: fogMove 2.4s ease-in-out infinite;
}
.wxIcon--fog .fogLine:nth-child(1){ top:10px; opacity:.55; animation-delay:0s; }
.wxIcon--fog .fogLine:nth-child(2){ top:16px; opacity:.45; animation-delay:.2s; }
.wxIcon--fog .fogLine:nth-child(3){ top:22px; opacity:.35; animation-delay:.4s; }
@keyframes fogMove{ 0%,100%{ transform: translateX(-2px);} 50%{ transform: translateX(2px);} }

/* Thunder bolt */
.wxIcon--thunder .bolt{
  position:absolute;
  left:20px; top:18px;
  width:0; height:0;
  border-left:5px solid transparent;
  border-right:3px solid transparent;
  border-top:10px solid rgba(255,204,51,.95);
  transform: skewX(-10deg);
  filter: drop-shadow(0 4px 6px rgba(0,0,0,.25));
  animation: flash 1.2s ease-in-out infinite;
}
.wxIcon--thunder .bolt:after{
  content:"";
  position:absolute;
  left:-2px; top:-2px;
  width:0; height:0;
  border-left:3px solid transparent;
  border-right:5px solid transparent;
  border-top:10px solid rgba(255,204,51,.95);
  transform: translate(-1px,8px) skewX(-10deg);
}
@keyframes flash{ 0%,80%,100%{ opacity:.25;} 85%{ opacity:1;} 92%{ opacity:.4;} }

/* Cloud + precipitation (base) */
.cloud{
  width:44px; height:22px;
  position:relative;
  margin-top:6px;
  animation: floaty 3.2s ease-in-out infinite;
}
.cloud:before, .cloud:after{
  content:"";
  position:absolute;
  background: rgba(255,255,255,.92);
  border-radius: 999px;
}
.cloud:before{
  width:28px; height:18px;
  left:6px; top:6px;
  box-shadow: 12px -7px 0 0 rgba(255,255,255,.92);
}
.cloud:after{
  width:44px; height:14px;
  left:0; top:12px;
}

@keyframes floaty{
  0%,100%{ transform: translateY(0px); }
  50%{ transform: translateY(-3px); }
}

.rain, .snow{
  position:absolute;
  left:0; right:0;
  top:26px;
  height:14px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
  opacity:.9;
}
.drop{
  width:2px; height:9px;
  border-radius:999px;
  background: rgba(77,163,255,.95);
  animation: fall 0.8s linear infinite;
}
.drop:nth-child(2){ animation-delay:.12s; opacity:.85;}
.drop:nth-child(3){ animation-delay:.24s; opacity:.75;}

@keyframes fall{
  0%{ transform: translateY(-6px); opacity:0; }
  15%{ opacity:1; }
  100%{ transform: translateY(8px); opacity:0; }
}

.flake{
  width:4px; height:4px;
  border-radius:999px;
  background: rgba(255,170,220,.95);
  animation: drift 1.2s ease-in-out infinite;
}
.flake:nth-child(2){ animation-delay:.15s; opacity:.85;}
.flake:nth-child(3){ animation-delay:.3s; opacity:.75;}

@keyframes drift{
  0%{ transform: translate(-2px,-5px); opacity:0; }
  30%{ opacity:1; }
  100%{ transform: translate(2px,8px); opacity:0; }
}

/* Bottom stats */
.wxBottom{
  position:absolute;
  left:0; right:0; bottom:4px;
  padding: 0 6px;
  display:flex;
  flex-direction:column;
  gap:1px;
  text-align:center;
}
.city{
  font-size:9.5px;
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.temp{
  font-size:13px;
  font-weight:900;
  letter-spacing:.2px;
}
.metaLine{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  font-size:9.5px;
  color: var(--muted);
}

.windArrow{
  width: 20px;
  height: 20px;
  display:inline-block;
  position:relative;
  transform-origin: 50% 50%;
  filter: drop-shadow(0 3px 8px rgba(0,0,0,.35));
}
.windArrow:before{
  content:"";
  position:absolute;
  left:9px; top:4px;
  width:3px; height:11px;
  border-radius:999px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 0 0 1px rgba(0,0,0,.18);
}
.windArrow:after{
  content:"";
  position:absolute;
  left:5px; top:1px;
  width:0; height:0;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
  border-bottom:9px solid rgba(255,255,255,.92);
  filter: drop-shadow(0 0 0 rgba(0,0,0,0));
}

/* =========================
   PRO FIX: statyczne ikony + czytelniejsze markery + popup
   (nadpisuje starsze definicje, żeby nic na siebie nie nachodziło)
========================= */

/* Marker: większy i czytelniejszy */
.wxMarker{ width:108px; height:86px; }

.wxCard{
  position:absolute;
  inset:0;
  border-radius: 14px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(7,16,34,.62);
  backdrop-filter: blur(10px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding: 6px 7px;
}

.wxCity{
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1.05;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color: rgba(255,255,255,.92);
}

.wxMid{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
}

.wxTemp{
  font-size: 15px;
  font-weight: 950;
  letter-spacing: .2px;
}

.wxMeta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:6px;
  font-size: 10px;
  color: rgba(255,255,255,.70);
}

.wxWind{ font-weight: 800; }

.wxBadge{
  display:inline-flex;
  align-items:center;
  padding:2px 6px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 10px;
  background: rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
}
.wxBadge--rain{ color:#7cc6ff; }
.wxBadge--snow{ color:#d9a7ff; }

/* Strzałka wiatru: trzon + grot (bardziej widoczna) */
.windArrow{
  width:22px;
  height:22px;
  display:inline-block;
  position:relative;
  transform-origin: 50% 50%;
  filter: drop-shadow(0 3px 8px rgba(0,0,0,.35));
}
.windArrow:before{
  content:"";
  position:absolute;
  left:10px; top:4px;
  width:3px; height:12px;
  border-radius:999px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 0 0 1px rgba(0,0,0,.18);
}
.windArrow:after{
  content:"";
  position:absolute;
  left:5px; top:1px;
  width:0; height:0;
  border-left:6px solid transparent;
  border-right:6px solid transparent;
  border-top:9px solid rgba(255,255,255,.92);
}

/* Temperatury (kolor liczby) */
.wxTemp.cold{ color: var(--cold); }
.wxTemp.mild{ color: #23d18b; }
.wxTemp.warm{ color: #ffd84d; }
.wxTemp.hot{ color: var(--hot); }

/* Popup: jasny, czytelny */
.leaflet-popup-content-wrapper{
  border-radius: 14px;
  background: rgba(255,255,255,.97);
  color: rgba(10,18,34,.92);
  box-shadow: 0 18px 50px rgba(0,0,0,.25);
}
.leaflet-popup-tip{ background: rgba(255,255,255,.97); }
.wxPopup{ font-family: var(--font); min-width: 240px; color:#0b1220; }
.wxPopup__title{ font-weight: 950; font-size: 13px; margin-bottom: 2px; }
.wxPopup__title small{ font-weight: 800; opacity:.65; }
.wxPopup__cond{ font-size: 12px; font-weight: 700; opacity:.75; margin-bottom: 8px; }
.wxPopup__row{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding: 5px 0; border-top: 1px solid rgba(15,23,42,.10); }
.wxPopup__row:first-of-type{ border-top:0; }
.wxPopup__row span{ font-weight: 700; opacity:.75; }
.wxTag{ display:inline-flex; align-items:center; padding:2px 8px; border-radius:999px; font-weight: 900; font-size:11px; background: rgba(15,23,42,.06); }
.wxTag--rain{ background: rgba(14,165,233,.12); color: rgba(2,132,199,.95); }
.wxTag--snow{ background: rgba(168,85,247,.14); color: rgba(126,34,206,.95); }

/* Legenda PRO */
.legendBlock{ display:flex; flex-direction:column; gap:8px; }
.legendH{ font-size: 12px; font-weight: 900; margin-top: 6px; }
.legendIcons{ display:grid; grid-template-columns: 1fr 1fr; gap:8px 10px; margin-top: 2px; }
.legendIcons .li{ display:flex; align-items:center; gap:8px; color: rgba(255,255,255,.82); font-size:12px; }

/* Statyczne ikony: SVG inline (szybkie, bez bibliotek) */
.wxIco{ width:30px; height:30px; display:inline-block; background-repeat:no-repeat; background-position:center; background-size:contain; filter: drop-shadow(0 6px 12px rgba(0,0,0,.35)); }

.wxIco--sun{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23ffd84d' stroke-width='4' stroke-linecap='round'%3E%3Cpath d='M32 6v8M32 50v8M6 32h8M50 32h8M12 12l6 6M46 46l6 6M52 12l-6 6M18 46l-6 6'/%3E%3C/g%3E%3Ccircle cx='32' cy='32' r='12' fill='%23ffd84d'/%3E%3C/svg%3E"); }
.wxIco--moon{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M41 8c-6 4-10 11-10 19 0 13 10 23 23 23 1 0 3 0 4-1-4 5-10 8-17 8-13 0-24-11-24-24C17 21 27 10 41 8z' fill='%23e8f2ff'/%3E%3Ccircle cx='50' cy='18' r='2' fill='%23e8f2ff' opacity='.85'/%3E%3C/svg%3E"); }
.wxIco--cloud{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 44h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 44z' fill='%23ffffff' opacity='.95'/%3E%3C/svg%3E"); }
.wxIco--cloud_sun{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='22' cy='22' r='8' fill='%23ffd84d'/%3E%3Cpath d='M22 44h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 44z' fill='%23ffffff' opacity='.95'/%3E%3C/svg%3E"); }
.wxIco--cloud_moon{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M30 14c-3 2-5 6-5 10 0 7 6 13 13 13 1 0 2 0 3-.3-2 3-6 5-10 5-8 0-14-6-14-14 0-6 4-12 13-14z' fill='%23e8f2ff'/%3E%3Cpath d='M22 46h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 46z' fill='%23ffffff' opacity='.95'/%3E%3C/svg%3E"); }
.wxIco--rain{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 36h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 36z' fill='%23ffffff' opacity='.95'/%3E%3Cg stroke='%235aa9ff' stroke-width='4' stroke-linecap='round'%3E%3Cpath d='M24 44l-2 6M34 44l-2 6M44 44l-2 6'/%3E%3C/g%3E%3C/svg%3E"); }
.wxIco--snow{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 36h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 36z' fill='%23ffffff' opacity='.95'/%3E%3Cg fill='%23d9a7ff'%3E%3Ccircle cx='24' cy='48' r='2.5'/%3E%3Ccircle cx='34' cy='50' r='2.5'/%3E%3Ccircle cx='44' cy='48' r='2.5'/%3E%3C/g%3E%3C/svg%3E"); }
.wxIco--thunder{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 34h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 34z' fill='%23ffffff' opacity='.95'/%3E%3Cpath d='M34 34l-8 16h8l-4 10 14-18h-9l5-8z' fill='%23ffcc33'/%3E%3C/svg%3E"); }
.wxIco--fog{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M22 34h26a10 10 0 0 0 0-20 14 14 0 0 0-27-3A9 9 0 0 0 22 34z' fill='%23ffffff' opacity='.95'/%3E%3Cg stroke='%23cfe0ff' stroke-width='4' stroke-linecap='round' opacity='.9'%3E%3Cpath d='M18 44h28M14 50h36M20 56h24'/%3E%3C/g%3E%3C/svg%3E"); }

/* Stare animowane ikonki (jeśli gdzieś zostały) ukryj */
.wxIcon{ display:none !important; }


/* FIX: only one arrow head (remove bow-tie) */
.windArrow:after{
  border-top: 0 !important;
  border-bottom: 9px solid rgba(255,255,255,.92) !important;
}

/* =========================
   Mobile fine-tuning
   ========================= */
@media (max-width: 560px){
  .europa-page{
    grid-template-rows: 58vh auto;
    height: 100vh;
  }
  .europa-panel{ padding: 10px 10px 12px 10px; }
  .europa-title{ font-size: 22px; }
  .europa-toolbar{ flex-wrap: wrap; }
}
