:root {
      --bg: #eef4f5;
      --bg-2: #f7fbfb;
      --card: rgba(255,255,255,0.92);
      --card-2: rgba(248,250,251,0.98);
      --text: #18232d;
      --muted: #5f707e;
      --line: rgba(24,35,45,0.10);
      --green: #9fd5b3;
      --yellow: #ffc845;
      --orange: #ff9f40;
      --red: #ff6c6c;
      --blue: #5aa8ff;
      --accent: #62b8d8;
      --shadow: 0 18px 38px rgba(32, 56, 70, 0.12);
      --radius: 22px;
    }
    *{box-sizing:border-box}
    body{
      margin:0;
      font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
      background:
        radial-gradient(circle at top, rgba(98,184,216,.12), transparent 38%),
        repeating-linear-gradient(60deg, rgba(120,146,162,0.06) 0 1px, transparent 1px 22px),
        repeating-linear-gradient(-60deg, rgba(120,146,162,0.06) 0 1px, transparent 1px 22px),
        linear-gradient(180deg, var(--bg-2) 0%, var(--bg) 100%);
      color:var(--text);
      min-height:100vh;
    }
    .app{width:min(100%,560px);margin:0 auto;padding:14px 14px 42px}
    .header{
      background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.95);border-radius:18px;box-shadow:var(--shadow);
      padding:12px 14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:12px;position:relative;backdrop-filter:blur(8px);margin-bottom:12px;min-height:72px
    }

.header-account{position:absolute;left:50%;top:-1px;transform:translateX(-50%);z-index:4}
.account-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:18px;background:linear-gradient(180deg, rgba(244,249,250,.98), rgba(230,238,241,.98));color:#5f707e;border:1px solid rgba(24,35,45,0.08);border-top:0;border-radius:0 0 14px 14px;padding:0;cursor:pointer;box-shadow:0 8px 18px rgba(24,35,45,0.08)}
.account-arrow{font-size:13px;line-height:1;font-weight:800;transform:translateY(-1px)}
.header-account.open .account-arrow{transform:translateY(-1px) rotate(180deg)}
.account-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%, -8px);display:block;min-width:138px;background:linear-gradient(180deg, rgba(250,252,252,.98), rgba(238,244,246,.98));border:1px solid rgba(24,35,45,0.08);border-radius:16px;padding:8px;box-shadow:0 12px 24px rgba(24,35,45,0.10);opacity:0;pointer-events:none;transition:opacity .22s ease, transform .22s ease}
.header-account.open .account-dropdown{opacity:1;pointer-events:auto;transform:translate(-50%, 0)}
.account-user{padding:6px 8px 4px;text-align:center;color:#5f707e;font:700 11px/1.2 Inter,system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.account-dropdown a{display:block;text-align:center;color:#29414f;text-decoration:none;padding:8px 10px;border-radius:12px;font:700 12px/1.2 Inter,system-ui,sans-serif}
.account-dropdown a:hover{background:rgba(98,184,216,0.10)}

.brand-wrap{display:flex;align-items:center;gap:clamp(6px,1.6vw,10px);min-width:0;padding-top:2px}
    .header img{width:clamp(32px,6vw,36px);height:clamp(32px,6vw,36px);object-fit:contain;border-radius:0;background:transparent;padding:0;border:0;flex:0 0 auto;mix-blend-mode:multiply}
    .brand-title{font-weight:900;letter-spacing:.12em;font-size:clamp(14px,2.8vw,16px);line-height:1;white-space:nowrap}
    .date-block{text-align:right;line-height:1;min-width:0;position:relative;z-index:1;padding-top:2px;display:flex;justify-content:flex-end;align-items:center;justify-self:end;max-width:none}
    .date-line{display:flex;align-items:center;justify-content:flex-end;gap:clamp(3px,.9vw,6px);flex-wrap:nowrap;white-space:nowrap;min-width:0}
    .date-day{font-size:clamp(11px,2.4vw,14px);font-weight:900;line-height:1;color:#18232d;margin:0}
    .date-date{font-size:clamp(10px,2.1vw,13px);font-weight:900;line-height:1;color:#18232d;margin:0}
    .date-time{font-size:clamp(17px,3.9vw,24px);font-weight:900;line-height:1;color:#18232d;margin:0}
    .date-sep{font-size:clamp(8px,1.6vw,12px);color:var(--muted);font-weight:800;line-height:1}
    .card{background:linear-gradient(180deg,var(--card),var(--card-2));border:1px solid rgba(24,35,45,0.08);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;margin-bottom:14px;overflow:hidden}
    .eyebrow{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
    .catch-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(180deg,#ffffff,#f4f8fb);border:1px solid rgba(24,35,45,0.08);border-radius:18px;padding:12px 14px;cursor:pointer}
    .catch-left{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1}
    .catch-label{font-size:15px;color:var(--text);font-weight:900;text-transform:uppercase;letter-spacing:.08em}
    .chev{font-size:18px;color:var(--muted);transition:transform .22s ease;line-height:1}
    .catch-panel{overflow:hidden;max-height:0;transition:max-height .34s ease, margin-top .34s ease, opacity .24s ease, transform .24s ease;margin-top:0}
    .catch-panel.open{
  max-height:980px;
  margin-top:10px;
}
@media (max-width:768px){.catch-panel.open{max-height:980px;margin-top:4px}}
    .session-panel{display:grid;gap:12px}
    .catch-toggle-label{display:inline-flex;align-items:center}
    .catch-toggle-tools{display:inline-flex;align-items:center;gap:10px}
    .catch-toggle-tools .chevron{display:inline-flex;align-items:center;justify-content:center}
    .session-sheet-head{display:none}
    .session-sheet-title{display:none}
    .rain-mode-btn{
  border:0;
  background:none;
  color:#485660;
  font-size:20px;
  cursor:pointer;
  text-shadow:none;
  filter:grayscale(1) saturate(0) brightness(.6);
  opacity:.92;
  transition:filter .18s ease, opacity .18s ease, text-shadow .18s ease;
}
    .rain-mode-btn.active{
  color:#2fe8ff;
  filter:none;
  opacity:1;
  text-shadow:0 0 8px rgba(47,232,255,.8),0 0 18px rgba(47,232,255,.5);
}
    .session-top{display:grid;grid-template-columns:minmax(0,1fr) 108px;gap:10px;align-items:stretch}
    .session-block{background:rgba(255,255,255,0.58);border:1px solid rgba(24,35,45,0.08);border-radius:18px;padding:13px 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
    .session-title{font-size:11px;color:var(--muted);font-weight:800;letter-spacing:.06em;text-transform:uppercase}
    .countdown-display{margin-top:8px;font-size:34px;line-height:1;font-weight:900;letter-spacing:-0.05em;color:#12202a}
    .countdown-setter{display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center;margin-top:12px}
    .countdown-minutes{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;background:rgba(255,255,255,.78);border:1px solid rgba(24,35,45,.08);font-size:28px;font-weight:900;letter-spacing:.08em;color:#16242d}
    .countdown-step{border:1px solid rgba(24,35,45,.08);border-radius:14px;background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font-size:17px;font-weight:900;cursor:pointer;min-height:48px}
    .session-side-actions{display:grid;gap:10px}
    .session-action-btn{border:1px solid rgba(24,35,45,.08);border-radius:18px;background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font:800 13px/1 Inter,system-ui,sans-serif;cursor:pointer;padding:0 10px;min-height:64px}
    .session-action-btn.muted{background:linear-gradient(180deg,#f8fbfc,#ebf1f4)}
    .session-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  align-items:stretch;
}
    .session-counter-card{
  border:1px solid rgba(24,35,45,.08);
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#edf3f6);
  padding:16px 14px;
  min-height:110px;
  height:110px;
  width:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:6px;
  cursor:pointer;
  text-align:center;
  box-sizing:border-box;
  box-shadow:0 10px 24px rgba(20,32,60,.10), inset 0 1px 0 rgba(255,255,255,.65);
}
    .session-counter-label{order:2;margin-left:0;font-size:14px;color:var(--muted);font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center;line-height:1;white-space:nowrap}
    .session-counter-value{order:1;font-size:30px;line-height:1;font-weight:900;color:#12202a;text-align:center;min-width:2.6ch}
    .session-catch-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  align-items:stretch;
}
    .session-minus,.session-plus{
  min-height:110px;
  height:110px;
  width:100%;
  border-radius:18px;
  font-size:30px;
  font-weight:900;
  border:0;
  cursor:pointer;
  position:relative;
  overflow:visible;
  isolation:isolate;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  box-shadow:0 10px 24px rgba(20,32,60,.10), inset 0 1px 0 rgba(255,255,255,.65);
}
    .session-minus{background:linear-gradient(180deg,#ffffff,#edf3f6);color:#2a3741;border:1px solid rgba(24,35,45,.08)}
    .session-plus{background:linear-gradient(180deg,#f3bcbc,#e6a0a0);color:#6f2c2c;border:1px solid rgba(185,58,58,.18)}
    .session-plus-text{display:block;line-height:1}
    .session-led{position:absolute;top:10px;left:12px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;color:#1e4d34;text-shadow:none}
    .session-led-dot{width:8px;height:8px;border-radius:50%;background:#1e4d34;box-shadow:none}
    .session-led-seconds{font-variant-numeric:tabular-nums}
    .session-history-wrap{position:relative;margin-top:6px;max-height:66px;overflow:auto;padding:2px 2px 0;scrollbar-width:none;-ms-overflow-style:none}
.session-history-wrap::-webkit-scrollbar{display:none}
.session-history-wrap.hidden{display:none}
.session-history-wrap::before,.session-history-wrap::after{content:"";position:sticky;left:0;right:0;height:14px;display:block;pointer-events:none;opacity:0;transition:opacity .18s ease;z-index:1}
.session-history-wrap::before{top:0;margin-bottom:-14px;background:linear-gradient(180deg, rgba(244,248,250,.96), rgba(244,248,250,0))}
.session-history-wrap::after{bottom:0;margin-top:-14px;background:linear-gradient(180deg, rgba(244,248,250,0), rgba(244,248,250,.96))}
.session-history-wrap.scrollable-up::before{opacity:1}
.session-history-wrap.scrollable-down::after{opacity:1}
.session-history-row{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;min-height:22px}
    .session-history-chip{font:800 13px/1 Inter,system-ui,sans-serif;letter-spacing:-0.02em}
    .session-history-sep{font:800 13px/1 Inter,system-ui,sans-serif;color:rgba(24,35,45,.28)}
    .session-history-chip.catch{color:#1f9d55}
    .session-history-chip.fail{color:#d64545}
    .session-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
    .info-block{display:grid;gap:8px;align-content:start}
    .session-time{font-size:28px;line-height:1;font-weight:900;color:#12202a;letter-spacing:-0.04em}
    .feed-block{display:grid;gap:8px;align-content:start}
    .session-stop-btn{width:100%;border:1px solid rgba(24,35,45,.08);border-radius:18px;background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font:800 14px/1 Inter,system-ui,sans-serif;cursor:pointer;min-height:56px}

    .pressure-top{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start;margin-bottom:10px}
    .pressure-main{display:flex;align-items:flex-start;gap:8px;margin-top:10px;flex-wrap:wrap;justify-content:flex-start;padding-left:0;min-height:58px}
    .pressure-value{font-size:42px;line-height:.95;font-weight:900;letter-spacing:-0.04em;color:#12202a;display:block;transform:none;text-align:left}
    .trend-chip{display:none}
    .pressure-legend{display:flex;flex-direction:column;gap:6px;align-items:flex-start;justify-content:flex-start;padding-top:2px}
    .legend-item{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-weight:700;white-space:nowrap}
    .legend-swatch{width:12px;height:12px;border-radius:4px;border:1px solid rgba(24,35,45,.08);flex:0 0 12px}
    .legend-line{width:18px;height:0;border-top:3px dashed var(--yellow);flex:0 0 18px}
    .legend-now{position:relative;width:18px;height:14px;flex:0 0 18px}
    .legend-now::before{content:"";position:absolute;left:8px;top:2px;bottom:2px;width:2px;background:#ff5a5a;border-radius:2px}
    .legend-now::after{content:"⌃\A⌄";white-space:pre;position:absolute;left:3px;top:-2px;color:#ff5a5a;font-size:10px;line-height:9px;font-weight:900}
    .day-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:6px 0 12px}
    .day-chip{padding:8px 12px;font-size:12px;background:rgba(255,255,255,0.74);border:1px solid rgba(98,184,216,.25);border-radius:12px;color:#224353;font-weight:700;cursor:pointer}
    .day-chip.active{background:linear-gradient(180deg, rgba(98,184,216,.22), rgba(98,184,216,.10))}
    .chart-box{margin-top:6px;padding:10px 10px 8px;border-radius:18px;background:rgba(255,255,255,0.62);border:1px solid rgba(24,35,45,0.08);overflow-x:auto;-webkit-overflow-scrolling:touch}
    .chart-box svg{display:block;min-width:1720px;width:1720px;height:340px}
    .chart-note{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-size:11px;color:var(--muted);flex-wrap:wrap}
    .triple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
    .window-day,.mini-card{background:rgba(255,255,255,0.72);border:1px solid rgba(24,35,45,0.08);border-radius:18px;padding:13px}
    .window-day{min-height:110px}
    .window-day .title,.mini-card .title{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}
    .window-day .big{font-size:20px;font-weight:900;line-height:1.1;color:#10202a}
    .window-day .small,.mini-card .small{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.35}
    .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
    .mini-card .big{font-size:25px;font-weight:900;letter-spacing:-0.03em;line-height:1;color:#10202a}

    .row{display:flex;gap:12px}.row>.card{flex:1}
    .metric{font-size:28px;font-weight:900;margin:8px 0 4px}
    .wind-arrow{font-size:28px;margin-right:8px;display:inline-block}
    .subline{color:var(--muted);font-size:13px}
    .toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
    .badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}
    .badge-east{background: rgba(255,108,108,0.14); border:1px solid rgba(255,108,108,0.28); color:#9e3131}
    .badge-turn,.badge-rain{background:rgba(98,184,216,0.12);color:#30596a;border:1px solid rgba(98,184,216,0.28)}
    .hidden{display:none}


.xp-float{position:fixed;left:50%;top:50%;transform:translate(-50%, 20px) scale(.96);opacity:0;pointer-events:none;z-index:1200;padding:12px 18px;border-radius:999px;border:1px solid rgba(68,199,106,.24);background:rgba(255,255,255,.95);box-shadow:0 18px 50px rgba(15,11,11,.16);font:900 20px/1 Inter,system-ui,sans-serif;color:#22683a;transition:transform .9s ease,opacity .9s ease}
.xp-float.is-visible{transform:translate(-50%, -28px) scale(1);opacity:1}
.xp-float.major{padding:16px 24px;font-size:28px;box-shadow:0 24px 70px rgba(15,11,11,.22)}
.xp-float.negative{border-color:rgba(255,108,108,.2);color:#8d3a3a}
.geo-notice-float{position:fixed;left:50%;top:42%;transform:translate(-50%,18px) scale(.96);opacity:0;pointer-events:none;z-index:1200;padding:14px 20px;border-radius:999px;border:1px solid rgba(68,199,106,.28);background:rgba(255,255,255,.96);box-shadow:0 22px 60px rgba(15,11,11,.18);font:900 22px/1 Inter,system-ui,sans-serif;color:#22683a;letter-spacing:.04em;transition:transform .8s ease,opacity .8s ease}
.geo-notice-float.is-visible{transform:translate(-50%,-18px) scale(1);opacity:1}

.entries-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px;flex-wrap:wrap}
.entries-note{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.4;font-weight:600}
.entries-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.entries-action-btn,.entry-action-btn{border:1px solid rgba(24,35,45,.08);border-radius:12px;background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font:800 12px/1 Inter,system-ui,sans-serif;cursor:pointer;padding:10px 12px}
.entries-action-btn.danger,.entry-action-btn.danger{color:#8d3a3a;border-color:rgba(255,108,108,.18);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,240,240,.95))}
.entries-dayline{margin-bottom:10px;color:#314a59;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.entries-empty{padding:14px;border-radius:16px;background:rgba(255,255,255,.62);border:1px solid rgba(24,35,45,.08);color:var(--muted);font-size:13px;font-weight:600}
.entries-list{display:grid;gap:10px}
.entry-item{background:rgba(255,255,255,.72);border:1px solid rgba(24,35,45,.08);border-radius:18px;padding:14px;display:grid;gap:10px}
.entry-item-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.entry-item-title{font-size:15px;font-weight:900;color:#12202a}
.entry-item-stamp{font-size:12px;color:var(--muted);font-weight:700;white-space:nowrap}
.entry-item-meta{font-size:13px;line-height:1.55;color:#243641}
.entry-item-comment-view{font-size:13px;line-height:1.45;color:#314a59}
.entry-comment-input{display:none;width:100%;min-height:74px;border-radius:14px;border:1px solid rgba(24,35,45,.10);background:rgba(255,255,255,.92);padding:12px;font:600 13px/1.45 Inter,system-ui,sans-serif;color:#18232d;resize:vertical}
.entry-item-actions{display:flex;flex-wrap:wrap;gap:8px}
.entry-item.editing .entry-comment-input{display:block}
.entry-item.editing .entry-item-comment-view{display:none}

.location-accuracy{margin-top:4px;color:var(--muted);font-size:13px;line-height:1.35;font-weight:700}

    .footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
    .footer-grid button{border-radius:14px;padding:13px 12px;background:#eef3f6;color:#24313b;border:1px solid rgba(24,35,45,0.10);font-weight:700;cursor:pointer}
    @media (max-width:520px){.pressure-value{font-size:36px}.app{padding-inline:4px}}


#ripple-container{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:999}
.session-catch-actions button{position:relative;overflow:visible;isolation:isolate}
.ripple-wave{position:fixed;width:56px;height:56px;border-radius:50%;transform:translate(-50%,-50%) scale(.35);opacity:.92;pointer-events:none;z-index:999;border:5px solid rgba(255,108,108,.58);box-shadow:0 0 0 1px rgba(255,255,255,.25) inset;animation:rippleExpand 1100ms cubic-bezier(.18,.64,.24,1) forwards}
.ripple-wave.minus-wave{border-color:rgba(110,140,170,.52)}
@keyframes rippleExpand{0%{opacity:.95;transform:translate(-50%,-50%) scale(.35)}55%{opacity:.48}100%{opacity:0;transform:translate(-50%,-50%) scale(8.2)}}
.session-plus.glow-active{box-shadow:0 0 0 8px rgba(159,213,179,.18),0 0 24px rgba(159,213,179,.28)}
.session-minus.glow-active{box-shadow:0 0 0 8px rgba(120,138,156,.14),0 0 24px rgba(120,138,156,.28)}

    .legend-seg{display:inline-block;width:20px;height:0;border-top:3px solid currentColor;flex:0 0 20px;border-radius:999px}
    .legend-green{color:var(--green)}
    .legend-yellow{color:var(--yellow)}
    .legend-orange{color:var(--orange)}
    .legend-red{color:var(--red)}
    .legend-dashed{display:inline-block;width:20px;height:0;border-top:3px dashed var(--yellow);flex:0 0 20px}
    .legend-now-line{display:inline-flex;align-items:center;justify-content:center;min-width:22px;flex:0 0 22px;color:#ff5a5a;font-size:12px;font-weight:800;line-height:1}
.legend-now-line::before{content:"<->";}
.legend-now-line::after{content:none;}
    .graph-stack{display:flex;flex-direction:column;gap:6px}
    .scale-strip{width:100%;height:16px;border:1px solid rgba(24,35,45,.10);background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(238,243,246,.92));color:#6b7f8b;border-radius:999px;cursor:pointer;padding:0;line-height:1;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
    .scale-strip:hover{background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(233,239,243,.96))}
    .scale-strip:active{transform:translateY(0.5px)}
    .live-warning{margin-top:8px;padding:10px 12px;border-radius:14px;background:rgba(255,108,108,.10);border:1px solid rgba(255,108,108,.18);color:#8d3a3a;font-size:12px;font-weight:600}

.pressure-main-window{min-height:auto;align-items:flex-start}
.pressure-main-pressure{min-height:auto;align-items:flex-start;gap:4px;margin-top:6px}
.pressure-window-value{font-size:42px;line-height:.95;font-weight:900;letter-spacing:-0.04em;color:#12202a;display:block;text-align:left}
.trend-chip-visible{display:block;font-size:14px;color:var(--muted);font-weight:700}
.pressure-card-value{font-size:28px;letter-spacing:-0.03em}


/* v2.1 mobile polish */
.pressure-top{grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}
.pressure-main-window{gap:4px;margin-top:6px;min-width:0}
.pressure-window-value{font-size:clamp(24px,8vw,34px);line-height:1;font-weight:900;letter-spacing:-0.03em;word-break:keep-all}
.trend-chip-visible{display:block;font-size:12px;color:var(--muted);font-weight:700;margin-top:2px}
.pressure-legend{gap:4px;max-width:122px;align-self:start}
.legend-item{font-size:10px;gap:6px;line-height:1.2}
.day-row{margin:8px 0 10px}
.day-chip{padding:7px 10px;font-size:11px;border-radius:11px}
.triple-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.window-day,.mini-card{padding:12px;border-radius:16px}
.window-day{min-height:0}
.window-day .big{font-size:clamp(15px,4vw,18px);line-height:1.15}
.window-day .small,.mini-card .small{font-size:11px;line-height:1.3}
.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.mini-card .big{font-size:clamp(18px,5vw,24px)}
.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.row>.card{margin-bottom:14px}
.row .card{padding:14px;min-width:0}
.metric{font-size:clamp(20px,6vw,28px);line-height:1.1;margin:6px 0 4px}
.wind-arrow{font-size:24px;margin-right:6px}
.subline{font-size:12px;line-height:1.35}
.toolbar{gap:6px;margin-top:8px}
.badge{padding:5px 8px;font-size:11px}
.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:2px}
.footer-link-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:14px;border:1px solid rgba(24,35,45,.10);background:#eef3f6;color:#24313b;font:800 13px/1 Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer}
.footer-note{padding:10px 2px 2px;text-align:center;color:var(--muted);font-size:11px;line-height:1.45}
@media (max-width:520px){
  .header{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-top:12px;padding-bottom:8px;min-height:58px}
  .brand-wrap{gap:6px}
  .date-line{gap:4px}
  .date-block{min-width:0;max-width:60vw}

  body.catch-sheet-open{overflow:hidden}
  .catch-sheet-open .header{visibility:hidden;pointer-events:none}
  .catch-sheet-open #catchToggle{
    position:fixed;
    top:calc(env(safe-area-inset-top, 0px) + 6px);
    left:4px;
    right:4px;
    z-index:92;
    margin:0;
    box-shadow:none;
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
    border-bottom-color:transparent;
  }
  .catch-sheet-open #catchPanel{
    position:fixed;
    left:4px;
    right:4px;
    top:calc(env(safe-area-inset-top, 0px) + 54px);
    bottom:calc(env(safe-area-inset-bottom, 0px) + 4px);
    height:calc(var(--app-viewport-height, 100dvh) - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 58px);
    z-index:91;
    max-height:none;
    margin-top:0 !important;
    opacity:0;
    transform:translateY(10px);
    pointer-events:none;
    overflow:visible;
    background:transparent;
    border-top-left-radius:22px;
    border-top-right-radius:22px;
  }
  .catch-sheet-open #catchPanel.open{
    max-height:none;
    margin-top:0 !important;
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
  }
  .catch-sheet-open #catchPanel .session-panel{
    position:relative;
    height:100%;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    margin-top:0;
    padding:14px 10px calc(10px + env(safe-area-inset-bottom, 0px)) 10px;
    border-radius:22px;
    border-top-left-radius:22px;
    border-top-right-radius:22px;
    background:linear-gradient(180deg,rgba(251,254,255,.98),rgba(239,246,249,.98));
    border:1px solid rgba(24,35,45,.08);
    box-shadow:0 20px 44px rgba(20,32,60,.18);
    overscroll-behavior:contain;
    touch-action:pan-y;
  }
  .session-sheet-head{display:none}

  .session-panel{gap:3px}
  .session-top{grid-template-columns:minmax(0,1fr) 72px;gap:3px}
  .session-block{padding:6px 7px;border-radius:14px}
  .session-title{font-size:10px;font-weight:700;text-align:center;line-height:1.05;white-space:normal;word-break:break-word}
  .session-counter-label{font-size:12px;font-weight:700;text-align:center;line-height:1;white-space:nowrap;letter-spacing:.03em}

  .countdown-display{margin-top:2px;font-size:23px}
  .countdown-setter{grid-template-columns:32px 1fr 32px;gap:4px;margin-top:4px}
  .countdown-minutes{min-height:34px;border-radius:11px;font-size:20px}
  .countdown-step{min-height:34px;border-radius:11px;font-size:13px}

  .session-side-actions{grid-template-columns:1fr;gap:3px}
  .session-action-btn{min-height:40px;border-radius:14px;font-size:11px;padding:0 6px}

  .session-grid,
  .session-info-grid,
  .session-catch-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
}

  .session-grid > *,
  .session-info-grid > *,
  .session-catch-actions > *{min-width:0;width:100%}

  .session-counter-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  height:82px;
  min-height:82px;
  width:100%;
  padding:0;
}
  .session-counter-value{font-size:20px;text-align:center;min-width:2.1ch;flex:0 0 auto}

  .session-minus,.session-plus{
  height:82px;
  min-height:82px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border-radius:16px;
  font-size:24px;
}

  .session-led{top:7px;left:9px;font-size:10px;gap:4px}
  .session-led-dot{width:7px;height:7px}

  .session-history-wrap{margin-top:0;max-height:22px;min-height:18px;padding:1px 1px 0}
  .session-history-row{gap:3px 5px;min-height:16px;justify-content:center}
  .session-history-chip{font-size:10px}

  .session-time{font-size:18px}
  .session-stop-btn{min-height:38px;border-radius:14px;font-size:11px}

  .session-info-grid .session-title{
    white-space:normal;
    word-break:break-word;
    text-align:center;
    max-width:10ch;
    margin:0 auto;
    line-height:1.05;
  }
  .session-info-grid .session-time{
    text-align:center;
    width:100%;
    margin:0 auto;
  }
  .feed-block,
  .feed-block .session-title,
  .feed-block .session-time{
    text-align:center;
  }
  .feed-block{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }
  .feed-block .session-time{
    width:100%;
    margin:0 auto;
    text-align:center;
  }

  .window-day .big,.pressure-card-value{white-space:normal;overflow-wrap:anywhere;word-break:break-word}


  .entries-head{gap:10px}
  .entries-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:100%}
  .entries-action-btn,.entry-action-btn{padding:10px 8px;font-size:12px;border-radius:11px}
  .entry-item{padding:12px;border-radius:16px}
  .entry-item-top{flex-direction:column;gap:4px}
  .entry-item-stamp{white-space:normal}
  .entry-item-meta,.entry-item-comment-view,.entry-comment-input{font-size:12px}

  .pressure-top{grid-template-columns:minmax(0,1fr);gap:8px}
  .pressure-legend{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
}
@media (max-width:380px){
  .header{padding:18px 12px 10px;gap:8px}
  .header-account{top:-1px}
  .account-toggle{width:38px;height:16px}
  .brand-wrap{gap:6px}
  .brand-sub{font-size:10px;max-width:110px}
  .countdown-display{font-size:28px}
  .countdown-minutes{font-size:24px;min-height:44px}
  .countdown-step,.session-action-btn,.session-stop-btn{font-size:12px}
  .session-time{font-size:24px}
  .date-block{min-width:0;max-width:58vw}
  .pressure-legend{grid-template-columns:1fr 1fr}
  .legend-item{font-size:9px}
  .triple-grid{gap:6px}
  .window-day,.mini-card,.row .card{padding:10px}
  .window-day .big{font-size:14px}
  .mini-card .big{font-size:17px}
  .row{gap:8px}
  .metric{font-size:18px}
  .footer-grid{gap:8px}
  .footer-grid button{padding:11px 8px;font-size:13px}
  .footer-links{gap:8px}
  .footer-link-btn{min-height:42px;font-size:12px}
}


.feed-block .session-time{
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  width:100%;
}

/* FINAL equal sizing fix */
.session-counter-card,
.session-minus,.session-plus{
  height:110px;
  min-height:110px;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}

.session-counter-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  height:110px;
  min-height:110px;
  width:100%;
  padding:0;
}

.session-grid,
.session-catch-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
}

.rain-mode-btn{
  border:0;
  background:none;
  color:#485660;
  font-size:20px;
  cursor:pointer;
  text-shadow:none;
  filter:grayscale(1) saturate(0) brightness(.6);
  opacity:.92;
  transition:filter .18s ease, opacity .18s ease, text-shadow .18s ease;
}

.rain-mode-btn.active{
  color:#2fe8ff;
  filter:none;
  opacity:1;
  text-shadow:0 0 8px rgba(47,232,255,.8),0 0 18px rgba(47,232,255,.5);
}

.catch-panel{
  background:#ffffff;
  z-index:50;
}

.catch-sheet-open #catchPanel{
  top:calc(env(safe-area-inset-top, 0px) + 54px) !important;
}

.location-status{margin-top:12px;padding:12px 14px;border-radius:18px;background:rgba(255,255,255,.62);border:1px solid rgba(24,35,45,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.location-status.hidden{display:none}
.location-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.location-pill{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:rgba(68,199,106,.14);color:#22683a;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.location-updated{font-size:12px;color:var(--muted);font-weight:700}
.location-coords{margin-top:10px;font-size:14px;font-weight:700;color:#18232d;word-break:break-word}
.location-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.location-action{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border-radius:14px;border:1px solid rgba(24,35,45,.08);background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font:800 12px/1 Inter,system-ui,sans-serif;text-decoration:none;cursor:pointer}
.location-help{width:100%;margin-top:2px;font-size:11px;line-height:1.35;color:rgba(95,112,126,.82);font-weight:600}
.location-action.loading{position:relative;pointer-events:none;opacity:.88;color:transparent}
.location-action.loading::after{content:'';width:14px;height:14px;border-radius:50%;border:2px solid rgba(32,56,68,.22);border-top-color:#203844;animation:locationSpin .72s linear infinite}
@keyframes locationSpin{to{transform:rotate(360deg)}}
.footer-grid-single{grid-template-columns:1fr}
@media (max-width:520px){
  .location-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .location-action{width:100%}
}


/* Geofishingu mängu ja olekuvärvid */
.session-counter-card.session-counter-fail{
  background:linear-gradient(180deg,#f3bcbc,#e6a0a0);
  color:#6f2c2c;
  border:1px solid rgba(185,58,58,.18);
}
.session-counter-card.session-counter-fail .session-counter-label,
.session-counter-card.session-counter-fail .session-counter-value{
  color:#6f2c2c;
}
.session-counter-card.session-counter-cast{
  background:linear-gradient(180deg,#fbf2c9,#f4e6a5);
  color:#e0b100;
  border:1px solid rgba(224,177,0,.20);
}
.session-counter-card.session-counter-cast .session-counter-label,
.session-counter-card.session-counter-cast .session-counter-value{
  color:#e0b100;
}
.session-plus.session-plus-catch{
  background:#9fd5b3;
  color:#1e4d34;
  border:1px solid rgba(30,77,52,.18);
}
.dot-catch{
  background:#1e4d34;
}
.time-catch-live{
  color:#1e4d34;
}
.time-catch{
  color:#1e4d34;
}
.session-history-chip.cast{color:#e0b100;}
.session-counter-card.session-counter-cast{position:relative;}
.dot-feed{background:#e0b100;}
.time-feed-live{color:#e0b100;}
.session-counter-card.session-counter-cast .session-counter-label,
.session-counter-card.session-counter-cast .session-counter-value{
  color:#e0b100;
}
.info-block,
.feed-block{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.info-block .session-title,
.info-block .session-time,
.feed-block .session-title,
.feed-block .session-time{
  text-align:center;
}



#minusCatchBtn{display:none !important;}
.session-catch-actions{grid-template-columns:1fr !important;}



.geo-catch-action{background:linear-gradient(180deg,rgba(105,209,138,.2),rgba(79,191,118,.14));border-color:rgba(68,199,106,.28);color:#22683a;font-weight:900}
.geo-catch-action:disabled{background:linear-gradient(180deg,rgba(238,243,246,.9),rgba(227,234,238,.85));color:#6a7a84}
.geo-form-steps{display:flex;gap:8px;flex-wrap:wrap}
.geo-form-step{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;background:rgba(68,199,106,.12);border:1px solid rgba(68,199,106,.18);color:#22683a;font-size:12px;font-weight:900}
.geo-game-modal-card{width:min(620px,100%);padding:18px;display:grid;gap:12px}
.geo-game-step{display:grid;gap:12px}
.geo-game-step.hidden{display:none}
.geo-hints .hidden{display:none}
.geo-game-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;background:rgba(68,199,106,.12);border:1px solid rgba(68,199,106,.18);color:#22683a;font-size:12px;font-weight:900;justify-self:start}
.geo-game-title{font-size:28px;line-height:1.05;font-weight:900;color:#10202a}
.geo-game-copy{font-size:15px;line-height:1.5;font-weight:700;color:#314a59}
.geo-game-copy-strong{color:#22683a;font-weight:900}
.geo-arrived{animation:geoArrivedPulse 1.2s ease}
@keyframes geoArrivedPulse{0%{transform:scale(1)}35%{transform:scale(1.04)}100%{transform:scale(1)}}
.geo-card{display:grid;gap:12px}
.geo-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.geo-title{font-size:20px;font-weight:900;line-height:1.1;color:#12202a;margin-top:6px}
.geo-subline,.geo-helptext{font-size:13px;line-height:1.45;color:#314a59;font-weight:600}
.geo-xp-badge{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:999px;background:rgba(68,199,106,.14);border:1px solid rgba(68,199,106,.2);color:#22683a;font-weight:900}
.geo-map-wrap{border-radius:18px;overflow:hidden;border:1px solid rgba(24,35,45,.08);background:rgba(255,255,255,.62)}
.geo-map,.geo-picker-map{height:320px;width:100%}
.geo-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.geo-info-card{background:rgba(255,255,255,.72);border:1px solid rgba(24,35,45,.08);border-radius:18px;padding:14px;display:grid;gap:6px}
.geo-info-label{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.geo-info-value{font-size:22px;font-weight:900;color:#10202a;line-height:1.1}
.geo-info-note{font-size:12px;color:#4d6471;font-weight:600;line-height:1.35}
.geo-actions{display:flex;flex-wrap:wrap;gap:8px}
.geo-actions .location-action{flex:1 1 180px;min-height:46px;font-size:13px}
.geo-actions .location-action:disabled{opacity:.5;cursor:not-allowed}
.geo-qa{background:rgba(255,255,255,.72);border:1px solid rgba(24,35,45,.08);border-radius:18px;padding:14px;display:grid;gap:10px}
.geo-question-label{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.geo-question-text{font-size:16px;font-weight:800;color:#12202a;line-height:1.4}
.geo-answer-list{display:grid;gap:8px}
.geo-answer-btn{border:1px solid rgba(24,35,45,.08);border-radius:14px;background:linear-gradient(180deg,#ffffff,#edf3f6);color:#203844;font:800 13px/1.35 Inter,system-ui,sans-serif;cursor:pointer;padding:12px;text-align:left}
.geo-answer-btn.correct{border-color:rgba(68,199,106,.28);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(236,250,240,.95));color:#22683a}
.geo-answer-btn.wrong{border-color:rgba(255,108,108,.18);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,240,240,.95));color:#8d3a3a}
.geo-hints{display:flex;gap:8px;flex-wrap:wrap}
.geo-hint-text,.geo-reward,.geo-form-status{font-size:13px;line-height:1.45;font-weight:700;color:#314a59}
.geo-reward{color:#22683a}
.geo-modal{position:fixed;inset:0;background:rgba(15,11,11,.52);display:flex;align-items:flex-end;justify-content:center;padding:18px;z-index:1100}
.geo-modal.hidden{display:none}
.geo-modal-card{width:min(720px,100%);max-height:min(92vh,var(--app-viewport-height,92vh));overflow:auto;border-radius:22px;background:#f4f8fa;border:1px solid rgba(24,35,45,.08);box-shadow:0 22px 70px rgba(15,11,11,.28);padding:16px}
.geo-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.geo-modal-close{border:none;background:transparent;font-size:20px;cursor:pointer;color:#203844}
.geo-form{display:grid;gap:10px}
.geo-form label{display:grid;gap:6px;font-size:13px;font-weight:800;color:#203844}
.geo-form input,.geo-form textarea{width:100%;border-radius:14px;border:1px solid rgba(24,35,45,.1);background:rgba(255,255,255,.92);padding:12px;font:600 13px/1.45 Inter,system-ui,sans-serif;color:#18232d}
.geo-form textarea{min-height:88px;resize:vertical}
.geo-form input::placeholder,.geo-form textarea::placeholder{color:rgba(49,74,89,.48);font-size:12px;font-weight:400}
.geo-form input::-webkit-input-placeholder,.geo-form textarea::-webkit-input-placeholder{color:rgba(49,74,89,.48);font-size:12px;font-weight:400}
.geo-inline-note{font-size:12px;color:#4d6471;font-weight:600}
.geo-picker-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.geo-picked{font-size:12px;color:#314a59;font-weight:700}
.geo-checkbox{display:block;font-size:12px!important;line-height:1.45;font-weight:700!important;color:#314a59!important}
.geo-checkbox input{width:auto;margin-right:8px}
.geo-submit{width:100%;min-height:48px}
.geo-place-popup{font-size:12px;line-height:1.4}
@media (max-width:640px){.geo-map,.geo-picker-map{height:280px}.geo-status-grid{grid-template-columns:1fr}.geo-actions{display:grid;grid-template-columns:1fr}.geo-modal{padding:10px}.geo-modal-card{padding:14px}}

.geo-actions .location-action{min-height:52px;font-weight:800}
.geo-game-modal-card{max-height:min(92vh,760px);overflow:auto}
@media (max-width:640px){
  .geo-game-modal-card{width:100%;max-width:none;min-height:calc(100vh - 20px);border-radius:22px;padding:16px;align-content:start}
  .geo-modal{align-items:flex-end}
}



.geo-view-section.hidden,.geo-tool-overlay.hidden{display:none;}
.geo-plus-catch{min-width:92px;justify-content:center;}
#geoView .geo-card{margin-top:0;}



/* Käivitusolek: enne logo täielikku laadimist ei kuvata vana vaadet ega kaardi juhtnuppe. */
body.is-starting {
  overflow: hidden;
}
body.is-starting .app > * {
  visibility: hidden !important;
}
body.is-starting #geoView {
  visibility: visible !important;
}
body.is-starting #geoCard > :not(.geo-map-wrap),
body.is-starting .geo-map-wrap > :not(#geoMap),
body.is-starting #geoMap .leaflet-control-container {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.is-starting .geo-map-wrap,
body.is-starting #geoMap {
  background:#ffffff!important;
}
#geoCard > :not(.geo-map-wrap),
.geo-map-wrap > :not(#geoMap),
#geoMap .leaflet-control-container {
  transition: opacity 240ms ease;
}

.start-screen {
  position: fixed;
  inset: 0;
  z-index: 30000;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  opacity: 1;
  visibility: visible;
  pointer-events: none;
  will-change: opacity;
  transition: opacity 2800ms cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 2800ms;
}
.start-screen.is-hiding {
  opacity: 0;
  visibility: hidden;
}
.start-screen.hidden {
  display: none;
}
.start-screen__backdrop {
  display: none;
}
.start-screen__content {
  position: relative;
  width: min(58vw, 620px);
  padding: 24px;
  text-align: center;
  transform: translateY(-1vh);
  opacity: 0;
  transition: opacity 260ms ease;
}
.start-screen.is-ready .start-screen__content {
  opacity: 1;
}
.start-screen__logo {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;
  filter: drop-shadow(0 9px 24px rgba(0,0,0,0.28));
}
.start-screen__technology {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: clamp(8px, 1.7vw, 18px);
  color: #ffffff;
  font: 600 clamp(14px, 2.1vw, 26px)/1 Inter, system-ui, sans-serif;
  letter-spacing: clamp(0.25em, 1vw, 0.55em);
  text-indent: clamp(0.25em, 1vw, 0.55em);
  text-shadow: 0 5px 18px rgba(0,0,0,0.40);
}
.start-screen__technology::before,
.start-screen__technology::after {
  content: "";
  width: clamp(28px, 6vw, 78px);
  height: 2px;
  border-radius: 999px;
  background: #25b8e6;
  box-shadow: 0 0 14px rgba(37,184,230,0.45);
}
.start-screen__version {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  margin-top: clamp(14px, 2vw, 22px);
  padding: 0 14px;
  border: 1px solid rgba(37,184,230,0.95);
  border-radius: 999px;
  background: rgba(3,31,48,0.34);
  color: #ffffff;
  font: 700 12px/1 Inter, system-ui, sans-serif;
  letter-spacing: 0.08em;
  box-shadow: 0 8px 24px rgba(0,0,0,0.18);
}
@media (max-width: 520px) {
  .start-screen__content {
    width: min(76vw, 500px);
    padding: 18px 12px;
  }
  .start-screen__technology {
    gap: 10px;
    letter-spacing: 0.22em;
    text-indent: 0.22em;
  }
  .start-screen__technology::before,
  .start-screen__technology::after {
    width: 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .start-screen {
    transition-duration: 120ms;
  }
}

/* PÜÜGIANDMED avanev plokk: graafik jääb kohe nähtavale, lisainfo avaneb nupust. */
.data-toggle{margin-top:12px;margin-bottom:0;width:100%;}
.data-panel{background:transparent;box-shadow:none;z-index:auto;}
.data-panel.open{max-height:2600px;margin-top:10px;}
.data-panel-inner{display:block;}
@media (max-width:768px){.data-panel.open{max-height:3200px;margin-top:4px;}}

/* 2026-04-24: ühtlustatud ülemine vahetaja, desktop-äpp vaade ja footer. */
.header{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.data-weather-row{
  margin-top:12px;
}
.data-weather-card{
  margin-bottom:0;
}
.footer-links{
  width:min(100%,560px);
  margin:8px auto 0;
  grid-template-columns:repeat(auto-fit,minmax(128px,1fr));
  align-items:stretch;
}
.footer-link-btn{
  min-height:40px;
  padding:0 10px;
  white-space:normal;
  text-align:center;
}
.footer-note{
  width:min(100%,560px);
  margin:0 auto;
}
@media (min-width: 700px){
  .app{width:min(100%,560px);}
  .geo-modal-card{width:min(560px,100%);}
}
@media (max-width:520px){
  .footer-links{grid-template-columns:1fr 1fr;}
}

.geo-filter-btn.is-active{border-color:rgba(68,199,106,.32);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(232,248,238,.96));color:#22683a;}

/* PLOKK I/J/K — GEO fullscreen map view */
body.is-geo-view{
  overflow:hidden;
}
body.is-geo-view .app{
  width:100%;
  max-width:none;
  min-height:var(--app-viewport-height,100vh);
  margin:0;
  padding:0;
}
body.is-geo-view .header,
body.is-geo-view .legacy-top-tabs{
  display:none;
}
body.is-geo-view #geoView{
  min-height:var(--app-viewport-height,100vh);
}
.geo-card-fullscreen{
  position:fixed;
  inset:0;
  z-index:900;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#dfe8e7;
  display:block;
}
.geo-map-wrap-fullscreen{
  position:absolute;
  inset:0;
  border:0!important;
  border-radius:0!important;
  overflow:hidden;
}
.geo-map-fullscreen{
  width:100%;
  height:var(--app-viewport-height,100vh)!important;
}
.geo-technical-state{
  display:none!important;
}
.geo-topbar{
  position:absolute;
  top:calc(env(safe-area-inset-top,0px) + 8px);
  left:8px;
  right:8px;
  z-index:920;
  display:flex;
  align-items:flex-start;
  gap:6px;
  padding:6px;
  border-radius:16px;
  border:1px solid rgba(24,35,45,.12);
  background:rgba(244,248,250,.88);
  backdrop-filter:blur(12px);
  box-shadow:0 10px 32px rgba(15,11,11,.16);
}
.geo-topbar-title{
  flex:0 0 auto;
  min-height:34px;
  display:flex;
  align-items:center;
  padding:0 8px;
  font-size:11px;
  line-height:1;
  font-weight:900;
  color:#203844;
  letter-spacing:.02em;
}
.geo-actions-menu{
  display:flex;
  flex:1 1 auto;
  flex-wrap:wrap;
  gap:5px;
  align-items:center;
}
.geo-actions-menu .location-action,
.geo-actions-menu .geo-menu-btn{
  flex:0 0 auto;
  min-height:34px!important;
  padding:0 9px;
  border-radius:999px;
  font-size:11px!important;
  line-height:1;
  font-weight:900;
}
.geo-actions-menu .geo-icon-menu-btn{
  padding-inline:8px;
}
.geo-actions-menu .geo-plus-catch{
  min-width:48px;
  min-height:34px;
  height:34px;
  padding:0 9px;
  border-radius:999px;
  font-size:12px;
}
.geo-actions-menu .geo-eco-btn{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(232,248,238,.96));
  border-color:rgba(68,199,106,.26);
  color:#22683a;
}
.geo-map-stats{
  position:absolute;
  right:10px;
  top:calc(env(safe-area-inset-top,0px) + 76px);
  z-index:915;
  display:grid;
  gap:6px;
  justify-items:end;
}
.geo-map-stats span,
.geo-target-btn{
  min-height:34px;
  min-width:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(24,35,45,.12);
  background:rgba(244,248,250,.9);
  box-shadow:0 10px 26px rgba(15,11,11,.14);
  color:#203844;
  font-size:13px;
  font-weight:900;
  backdrop-filter:blur(10px);
}
.geo-target-btn{
  position:absolute;
  right:10px;
  top:calc(env(safe-area-inset-top,0px) + 190px);
  z-index:915;
  width:38px;
  min-width:38px;
  padding:0;
  cursor:pointer;
}
.geo-mine-panel{
  position:absolute;
  left:8px;
  right:8px;
  top:calc(env(safe-area-inset-top,0px) + 96px);
  z-index:930;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(24,35,45,.12);
  background:rgba(244,248,250,.94);
  box-shadow:0 18px 44px rgba(15,11,11,.2);
  backdrop-filter:blur(14px);
}
.geo-mine-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:10px;
  color:#203844;
}
.geo-mine-close{
  border:0;
  background:transparent;
  color:#203844;
  font-size:18px;
  cursor:pointer;
}
.geo-mine-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.geo-mine-grid div{
  min-height:58px;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:8px;
  align-items:center;
  padding:9px;
  border-radius:14px;
  border:1px solid rgba(24,35,45,.08);
  background:rgba(255,255,255,.72);
}
.geo-mine-grid span{grid-row:1/3;font-size:18px;}
.geo-mine-grid strong{font-size:18px;line-height:1;color:#10202a;}
.geo-mine-grid small{font-size:10px;font-weight:800;color:#4d6471;text-transform:uppercase;letter-spacing:.03em;}
.geo-target-marker{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px!important;
  height:34px!important;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(24,35,45,.16);
  box-shadow:0 8px 22px rgba(15,11,11,.18);
  font-size:22px;
}
@media (max-width:640px){
  .geo-topbar{top:calc(env(safe-area-inset-top,0px) + 6px);left:6px;right:6px;gap:4px;padding:5px;border-radius:14px;}
  .geo-topbar-title{min-height:30px;padding:0 6px;font-size:10px;}
  .geo-actions-menu{gap:4px;}
  .geo-actions-menu .location-action,
  .geo-actions-menu .geo-menu-btn{min-height:30px!important;padding:0 7px;font-size:10px!important;}
  .geo-actions-menu .geo-plus-catch{min-height:30px;height:30px;min-width:42px;font-size:11px;}
  .geo-map-stats{top:calc(env(safe-area-inset-top,0px) + 72px);right:8px;gap:5px;}
  .geo-map-stats span{min-height:31px;min-width:48px;padding:0 8px;font-size:12px;}
  .geo-target-btn{top:calc(env(safe-area-inset-top,0px) + 176px);right:8px;min-height:31px;width:34px;min-width:34px;}
  .geo-mine-panel{top:calc(env(safe-area-inset-top,0px) + 88px);left:6px;right:6px;padding:10px;}
  .geo-mine-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
  .geo-mine-grid div{min-height:52px;padding:8px;}
}

/* GEO compact confirmed menu patch */
.geo-topbar{
  left:8px!important;
  right:8px!important;
  top:calc(env(safe-area-inset-top,0px) + 6px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:6px!important;
  padding:5px 6px!important;
  border-radius:14px!important;
}
.geo-topbar-title{
  min-height:26px!important;
  padding:0 5px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}
.geo-topbar-main{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
  margin-left:auto;
}
.geo-login-link,
.geo-main-btn,
.geo-menu-toggle{
  min-height:26px!important;
  height:26px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  border:1px solid rgba(24,35,45,.10)!important;
  background:rgba(255,255,255,.82)!important;
  color:#10202a!important;
  font-size:10px!important;
  line-height:26px!important;
  font-weight:900!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.geo-menu-toggle{
  min-width:30px!important;
  padding:0!important;
  font-size:18px!important;
  line-height:22px!important;
}
.geo-menu-panel{
  position:absolute;
  top:calc(100% + 6px);
  right:6px;
  width:min(210px, calc(100vw - 18px));
  display:grid;
  gap:5px;
  padding:7px;
  border-radius:14px;
  border:1px solid rgba(24,35,45,.10);
  background:rgba(244,248,250,.94);
  backdrop-filter:blur(12px);
  box-shadow:0 12px 30px rgba(15,11,11,.18);
}
.geo-menu-panel.hidden{display:none!important;}
.geo-menu-panel .geo-menu-btn{
  width:100%;
  min-height:28px!important;
  justify-content:center;
  font-size:10px!important;
  padding:0 8px!important;
}
.geo-hidden-control{display:none!important;}
.geo-map-stats{
  top:calc(env(safe-area-inset-top,0px) + 52px)!important;
  right:8px!important;
}
.geo-target-btn{
  top:calc(env(safe-area-inset-top,0px) + 166px)!important;
  right:8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  min-width:36px!important;
  width:36px!important;
  height:36px!important;
  font-size:22px!important;
  line-height:1!important;
  z-index:916!important;
}
.geo-baitball-icon{
  width:18px;
  height:18px;
  border-radius:999px;
  display:inline-block;
  background:radial-gradient(circle at 35% 35%, #f5e2a5 0 20%, #c69b45 21% 55%, #7a5426 56% 100%);
  box-shadow:inset 0 0 0 1px rgba(70,45,20,.20);
}
.geo-mine-grid small{text-transform:none!important;letter-spacing:0!important;}
.geo-mine-grid div{grid-template-columns:auto 1fr!important;}
.leaflet-top.leaflet-right{top:calc(env(safe-area-inset-top,0px) + 52px)!important;right:64px!important;}
.leaflet-control-layers{border-radius:10px!important;overflow:hidden;}
@media (max-width:640px){
  .geo-topbar{left:6px!important;right:6px!important;gap:4px!important;padding:4px 5px!important;}
  .geo-topbar-title{font-size:9px!important;min-height:24px!important;padding:0 3px!important;}
  .geo-topbar-main{gap:4px;}
  .geo-login-link,.geo-main-btn,.geo-menu-toggle{min-height:24px!important;height:24px!important;font-size:9px!important;line-height:24px!important;padding:0 7px!important;}
  .geo-menu-toggle{min-width:28px!important;font-size:17px!important;padding:0!important;}
  .geo-menu-panel{right:5px;top:calc(100% + 5px);width:min(205px, calc(100vw - 14px));}
  .geo-map-stats{top:calc(env(safe-area-inset-top,0px) + 46px)!important;right:7px!important;}
  .geo-map-stats span{min-height:29px!important;min-width:46px!important;font-size:12px!important;}
  .geo-target-btn{top:calc(env(safe-area-inset-top,0px) + 153px)!important;right:7px!important;}
  .geo-mine-panel{top:calc(env(safe-area-inset-top,0px) + 82px)!important;}
  .leaflet-top.leaflet-right{top:calc(env(safe-area-inset-top,0px) + 46px)!important;right:62px!important;}
}


/* GEO final visual lock: Variant 2 layout + fish-shaped markers */
.is-geo-view{
  background:#06100d!important;
}
.geo-card-fullscreen,
.geo-map-wrap-fullscreen,
.geo-map-fullscreen{
  background:#06100d!important;
}
.geo-topbar{
  top:calc(env(safe-area-inset-top,0px) + 10px)!important;
  left:10px!important;
  right:10px!important;
  min-height:48px!important;
  padding:6px 8px!important;
  display:grid!important;
  grid-template-columns:minmax(92px,1fr) auto!important;
  align-items:center!important;
  gap:8px!important;
  border-radius:24px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,rgba(10,15,14,.92),rgba(10,14,13,.82))!important;
  color:#fff!important;
  box-shadow:0 18px 44px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(14px)!important;
}
.geo-topbar-title{
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 4px!important;
  font-size:15px!important;
  font-weight:900!important;
  color:#fff!important;
  overflow:hidden!important;
}
.geo-logo-fish{
  width:30px;
  height:22px;
  flex:0 0 auto;
  position:relative;
  filter:drop-shadow(0 3px 8px rgba(96,197,122,.35));
}
.geo-logo-fish::before{
  content:"";
  position:absolute;
  inset:3px 7px 3px 0;
  border-radius:50% 56% 56% 50%;
  background:linear-gradient(135deg,#c8f5d1,#49b66d 58%,#22693d);
  transform:rotate(-10deg);
}
.geo-logo-fish::after{
  content:"";
  position:absolute;
  right:0;
  top:6px;
  border-left:11px solid #49b66d;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  transform:rotate(-10deg);
}
.geo-topbar-main{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  min-width:0!important;
}
.geo-login-link,
.geo-main-btn,
.geo-menu-toggle{
  min-height:36px!important;
  height:36px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:0 11px!important;
  border-radius:16px!important;
  border:1px solid rgba(255,255,255,.17)!important;
  background:rgba(8,10,10,.58)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 8px 20px rgba(0,0,0,.20)!important;
}
.geo-start-main{
  background:linear-gradient(180deg,#69c878,#3b9d5a)!important;
  border-color:rgba(165,245,181,.25)!important;
}
.geo-btn-icon{
  font-size:17px;
  line-height:1;
}
.geo-menu-toggle{
  width:38px!important;
  min-width:38px!important;
  padding:0!important;
  font-size:21px!important;
}
.geo-menu-panel{
  top:calc(100% + 10px)!important;
  right:0!important;
  width:min(248px, calc(100vw - 28px))!important;
  padding:10px 12px!important;
  display:grid!important;
  gap:0!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(180deg,rgba(11,16,16,.94),rgba(9,13,13,.90))!important;
  color:#fff!important;
  box-shadow:0 20px 48px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(16px)!important;
}
.geo-menu-panel.hidden{display:none!important;}
.geo-menu-panel .geo-menu-btn{
  min-height:54px!important;
  width:100%!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:38px 1fr 18px!important;
  align-items:center!important;
  gap:9px!important;
  border:0!important;
  border-radius:0!important;
  border-bottom:1px solid rgba(255,255,255,.13)!important;
  background:transparent!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:850!important;
  text-align:left!important;
  box-shadow:none!important;
}
.geo-menu-panel .geo-menu-btn:last-child{border-bottom:0!important;}
.geo-menu-icon{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:24px;
  font-weight:700;
}
.geo-menu-arrow{
  font-size:28px;
  line-height:1;
  color:rgba(255,255,255,.88);
}
.geo-hidden-control{display:none!important;}

.geo-map-stats{
  position:absolute!important;
  left:10px!important;
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 10px)!important;
  top:auto!important;
  z-index:916!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:0!important;
  padding:10px 8px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,rgba(10,15,14,.90),rgba(8,12,12,.84))!important;
  box-shadow:0 18px 42px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(14px)!important;
}
.geo-map-stats .geo-stat-item{
  min-width:0!important;
  min-height:72px!important;
  padding:0 5px!important;
  display:grid!important;
  grid-template-rows:26px auto auto!important;
  align-items:center!important;
  justify-items:center!important;
  gap:3px!important;
  border:0!important;
  border-radius:0!important;
  border-right:1px solid rgba(255,255,255,.16)!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#fff!important;
  font-size:12px!important;
  backdrop-filter:none!important;
}
.geo-map-stats .geo-stat-item:last-child{border-right:0!important;}
.geo-map-stats small{
  font-size:10px!important;
  line-height:1.12!important;
  font-weight:700!important;
  color:rgba(255,255,255,.82)!important;
  text-align:center!important;
}
.geo-map-stats strong{
  font-size:20px!important;
  line-height:1!important;
  font-weight:950!important;
}
.geo-stat-blue strong{color:#4db7f5!important;}
.geo-stat-gold strong{color:#f2be45!important;}
.geo-stat-green strong{color:#63c975!important;}
.geo-stat-purple strong{color:#b77de9!important;}
.geo-stat-icon{
  width:26px;
  height:26px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.34));
}
.geo-fish-mini{
  position:relative;
}
.geo-fish-mini::before{
  content:"";
  position:absolute;
  left:2px;
  top:6px;
  width:18px;
  height:13px;
  border-radius:50% 58% 58% 50%;
  background:#4db7f5;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55), 0 3px 9px rgba(77,183,245,.22);
}
.geo-fish-mini::after{
  content:"";
  position:absolute;
  right:1px;
  top:8px;
  border-left:8px solid #4db7f5;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
}
.geo-fish-mini.gold::before{background:linear-gradient(135deg,#ffe6a4,#f2be45 60%,#b27118);}
.geo-fish-mini.gold::after{border-left-color:#f2be45;}

.geo-target-btn{
  top:auto!important;
  right:13px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 178px)!important;
  width:54px!important;
  min-width:54px!important;
  height:54px!important;
  min-height:54px!important;
  padding:0!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(180deg,rgba(19,23,24,.92),rgba(10,13,13,.86))!important;
  color:#fff!important;
  font-size:32px!important;
  box-shadow:0 14px 32px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(12px)!important;
}
.leaflet-top.leaflet-left{
  top:calc(env(safe-area-inset-top,0px) + 76px)!important;
  left:12px!important;
}
.leaflet-bar{
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:15px!important;
  overflow:hidden!important;
  box-shadow:0 14px 30px rgba(0,0,0,.32)!important;
}
.leaflet-bar a{
  width:42px!important;
  height:42px!important;
  line-height:40px!important;
  background:rgba(12,15,15,.86)!important;
  color:#fff!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.leaflet-bar a:last-child{border-bottom:0!important;}
.leaflet-top.leaflet-right{
  top:auto!important;
  right:13px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 108px)!important;
}
.leaflet-control-layers{
  width:54px!important;
  height:54px!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:999px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(19,23,24,.92),rgba(10,13,13,.86))!important;
  box-shadow:0 14px 32px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(12px)!important;
}
.leaflet-control-layers-toggle{
  width:54px!important;
  height:54px!important;
  background-size:27px 27px!important;
  filter:invert(1) grayscale(1) brightness(1.4)!important;
}
.leaflet-control-layers-expanded{
  width:auto!important;
  height:auto!important;
  min-width:154px!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  color:#fff!important;
}
.leaflet-control-layers-expanded .leaflet-control-layers-list{
  display:block!important;
}
.leaflet-control-layers label{
  color:#fff!important;
  font-size:14px!important;
  font-weight:800!important;
  padding:6px 2px!important;
}

.geo-fish-marker{
  background:transparent!important;
  border:0!important;
}
.geo-fish-marker-inner{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  filter:drop-shadow(0 4px 6px rgba(0,0,0,.36)) drop-shadow(0 0 5px rgba(255,246,228,.58));
  transition:transform .18s ease, filter .18s ease;
}
.geo-fish-svg{
  width:100%;
  height:100%;
  display:block;
}
.geo-fish-marker.is-selected .geo-fish-marker-inner{
  transform:scale(1.12);
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.42)) drop-shadow(0 0 12px rgba(255,232,151,.95));
}
.geo-fish-marker.is-selected::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:62px;
  height:62px;
  transform:translate(-50%,-50%);
  border-radius:999px;
  border:2px solid rgba(242,190,69,.65);
  background:radial-gradient(circle,rgba(242,190,69,.20) 0 36%,rgba(242,190,69,.08) 37% 58%,transparent 60%);
  animation:geoFishPulse 1.8s ease-in-out infinite;
  z-index:-1;
}
.geo-fish-marker.is-caught .geo-fish-marker-inner{
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.42)) drop-shadow(0 0 10px rgba(255,219,104,.85));
}
@keyframes geoFishPulse{
  0%,100%{opacity:.70;transform:translate(-50%,-50%) scale(.86);}
  50%{opacity:1;transform:translate(-50%,-50%) scale(1.08);}
}

.geo-place-popup{
  min-width:118px;
  padding:8px 9px;
  border-radius:14px;
  background:linear-gradient(180deg,rgba(13,16,16,.96),rgba(10,13,13,.94));
  color:#fff;
  box-shadow:0 14px 30px rgba(0,0,0,.32);
}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip{
  background:transparent!important;
  box-shadow:none!important;
}
.leaflet-popup-content{
  margin:0!important;
}
.geo-place-popup strong{
  display:block;
  font-size:15px;
  line-height:1.1;
  margin-bottom:3px;
}
.geo-place-popup button{
  margin-top:7px;
  padding:7px 10px;
  border-radius:10px;
  border:0;
  background:#f2be45;
  color:#241a08;
  font-weight:900;
}
.geo-popup-status{
  margin-top:7px;
  display:flex;
  align-items:center;
  gap:6px;
  color:#6fe083;
  font-weight:900;
}
.geo-popup-fish{filter:drop-shadow(0 0 5px rgba(242,190,69,.55));}

.geo-mine-panel{
  top:calc(env(safe-area-inset-top,0px) + 74px)!important;
  left:12px!important;
  right:12px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  background:linear-gradient(180deg,rgba(10,15,14,.94),rgba(8,12,12,.90))!important;
  color:#fff!important;
}
.geo-mine-head{color:#fff!important;}
.geo-mine-close{color:#fff!important;}
.geo-mine-grid div{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.12)!important;
}
.geo-mine-grid strong{color:#fff!important;}
.geo-mine-grid small{color:rgba(255,255,255,.78)!important;}

@media (max-width:640px){
  .geo-topbar{
    left:7px!important;
    right:7px!important;
    top:calc(env(safe-area-inset-top,0px) + 7px)!important;
    min-height:42px!important;
    padding:5px 6px!important;
    gap:5px!important;
    grid-template-columns:minmax(78px,1fr) auto!important;
    border-radius:19px!important;
  }
  .geo-topbar-title{
    min-height:30px!important;
    gap:5px!important;
    font-size:12px!important;
  }
  .geo-logo-fish{width:23px;height:18px;}
  .geo-topbar-main{gap:4px!important;}
  .geo-login-link,.geo-main-btn,.geo-menu-toggle{
    min-height:31px!important;
    height:31px!important;
    padding:0 7px!important;
    border-radius:13px!important;
    font-size:10px!important;
  }
  .geo-btn-icon{font-size:14px;}
  .geo-menu-toggle{width:32px!important;min-width:32px!important;font-size:18px!important;}
  .geo-menu-panel{
    top:calc(100% + 7px)!important;
    width:min(222px, calc(100vw - 20px))!important;
    padding:8px 10px!important;
    border-radius:18px!important;
  }
  .geo-menu-panel .geo-menu-btn{
    min-height:46px!important;
    grid-template-columns:30px 1fr 16px!important;
    font-size:13px!important;
  }
  .geo-menu-icon{width:26px;height:26px;font-size:21px;}
  .leaflet-top.leaflet-left{
    top:calc(env(safe-area-inset-top,0px) + 62px)!important;
    left:10px!important;
  }
  .leaflet-bar a{
    width:35px!important;
    height:35px!important;
    line-height:33px!important;
  }
  .geo-target-btn{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
    right:10px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 164px)!important;
    font-size:28px!important;
  }
  .leaflet-top.leaflet-right{
    right:10px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 105px)!important;
  }
  .leaflet-control-layers,
  .leaflet-control-layers-toggle{
    width:46px!important;
    height:46px!important;
  }
  .geo-map-stats{
    left:7px!important;
    right:7px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 7px)!important;
    padding:8px 5px!important;
    border-radius:17px!important;
  }
  .geo-map-stats .geo-stat-item{
    min-height:62px!important;
    grid-template-rows:22px auto auto!important;
    padding:0 3px!important;
  }
  .geo-map-stats small{
    font-size:8.5px!important;
  }
  .geo-map-stats strong{
    font-size:17px!important;
  }
  .geo-stat-icon{width:22px;height:22px;font-size:21px;}
  .geo-fish-mini::before{width:16px;height:11px;top:5px;}
  .geo-fish-mini::after{top:7px;border-left-width:7px;border-top-width:4px;border-bottom-width:4px;}
}

/* === GEOFISHING FINAL ICON UI OVERRIDES === */
body.is-geo-view .leaflet-control-layers{display:none!important;}
.geo-ui-icon{display:inline-block;width:1.35em;height:1.35em;min-width:1.35em;background-repeat:no-repeat;background-position:center;background-size:contain;vertical-align:middle;filter:drop-shadow(0 1px 1px rgba(0,0,0,.28));}
.geo-icon-logo-fish{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2072%2046%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2735%25%27%20cy%3D%2728%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23c6ffd5%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%2359c878%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%233b2112%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%20x%3D%27-30%25%27%20y%3D%27-40%25%27%20width%3D%27160%25%27%20height%3D%27180%25%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-color%3D%27%23000%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M53%2023c5-5%2010-8%2015-10-2%206-2%2014%200%2020-5-2-10-5-15-10Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M7%2023C14%2010%2028%206%2042%2010c7%202%2012%207%2015%2013-3%206-8%2011-15%2013C28%2040%2014%2036%207%2023Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2010c-3-3-6-4-10-5%202%204%203%208%202%2012%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2036c-3%203-6%204-10%205%202-4%203-8%202-12%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Ccircle%20cx%3D%2744%27%20cy%3D%2717%27%20r%3D%272.3%27%20fill%3D%27%231b120b%27/%3E%3Cpath%20d%3D%27M38%2013c-7-2-14%200-19%204%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.38%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");width:34px!important;height:25px!important;min-width:34px!important;}
.geo-icon-bluefish{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2072%2046%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2735%25%27%20cy%3D%2728%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23b9eaff%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%2338aeea%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%233b2112%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%20x%3D%27-30%25%27%20y%3D%27-40%25%27%20width%3D%27160%25%27%20height%3D%27180%25%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-color%3D%27%23000%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M53%2023c5-5%2010-8%2015-10-2%206-2%2014%200%2020-5-2-10-5-15-10Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23d7f5ff%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M7%2023C14%2010%2028%206%2042%2010c7%202%2012%207%2015%2013-3%206-8%2011-15%2013C28%2040%2014%2036%207%2023Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23d7f5ff%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2010c-3-3-6-4-10-5%202%204%203%208%202%2012%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23d7f5ff%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2036c-3%203-6%204-10%205%202-4%203-8%202-12%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23d7f5ff%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Ccircle%20cx%3D%2744%27%20cy%3D%2717%27%20r%3D%272.3%27%20fill%3D%27%231b120b%27/%3E%3Cpath%20d%3D%27M38%2013c-7-2-14%200-19%204%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.38%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");width:42px!important;height:30px!important;}
.geo-icon-goldfish{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2072%2046%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2735%25%27%20cy%3D%2728%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23fff3b6%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%23f2be45%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%233b2112%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%20x%3D%27-30%25%27%20y%3D%27-40%25%27%20width%3D%27160%25%27%20height%3D%27180%25%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-color%3D%27%23000%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M53%2023c5-5%2010-8%2015-10-2%206-2%2014%200%2020-5-2-10-5-15-10Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23fff4c7%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M7%2023C14%2010%2028%206%2042%2010c7%202%2012%207%2015%2013-3%206-8%2011-15%2013C28%2040%2014%2036%207%2023Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23fff4c7%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2010c-3-3-6-4-10-5%202%204%203%208%202%2012%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23fff4c7%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2036c-3%203-6%204-10%205%202-4%203-8%202-12%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23fff4c7%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Ccircle%20cx%3D%2744%27%20cy%3D%2717%27%20r%3D%272.3%27%20fill%3D%27%231b120b%27/%3E%3Cpath%20d%3D%27M38%2013c-7-2-14%200-19%204%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.38%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");width:42px!important;height:30px!important;}
.geo-icon-trashbag{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2735%25%27%20cy%3D%2725%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23c7ffd0%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%2369c978%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%232c7741%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M25%2013c2%204%205%205%207%205s5-1%207-5%27%20fill%3D%27none%27%20stroke%3D%27%23effff2%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%3Cpath%20d%3D%27M17%2028c1-7%206-11%2015-11s14%204%2015%2011l5%2022c1%205-3%209-8%209H20c-5%200-9-4-8-9l5-22Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M22%2030c6%203%2014%203%2020%200%27%20fill%3D%27none%27%20stroke%3D%27%23eaffef%27%20stroke-opacity%3D%27.55%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");width:38px!important;height:38px!important;}
.geo-icon-shell{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2745%25%27%20cy%3D%2720%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23ffd2ff%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%23b66be8%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%23613084%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M9%2050C12%2025%2022%2010%2032%2010s20%2015%2023%2040c-11%206-35%206-46%200Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23ffe8ff%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M32%2012v42M20%2018l9%2036M44%2018l-9%2036M13%2033l14%2021M51%2033%2037%2054%27%20fill%3D%27none%27%20stroke%3D%27%23ffe8ff%27%20stroke-opacity%3D%27.55%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");width:38px!important;height:38px!important;}
.geo-icon-user{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2722%27%20r%3D%2711%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27/%3E%3Cpath%20d%3D%27M14%2055c3-13%2012-20%2018-20s15%207%2018%2020%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-close{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2732%27%20r%3D%2724%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27/%3E%3Cpath%20d%3D%27M23%2023l18%2018M41%2023%2023%2041%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-play{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M22%2014v36l29-18L22%2014Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-fish-outline{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2072%2046%27%3E%3Cdefs%3E%3CradialGradient%20id%3D%27g%27%20cx%3D%2735%25%27%20cy%3D%2728%25%27%20r%3D%2770%25%27%3E%3Cstop%20offset%3D%270%25%27%20stop-color%3D%27%23c6ffd5%27/%3E%3Cstop%20offset%3D%2755%25%27%20stop-color%3D%27%2359c878%27/%3E%3Cstop%20offset%3D%27100%25%27%20stop-color%3D%27%233b2112%27/%3E%3C/radialGradient%3E%3Cfilter%20id%3D%27s%27%20x%3D%27-30%25%27%20y%3D%27-40%25%27%20width%3D%27160%25%27%20height%3D%27180%25%27%3E%3CfeDropShadow%20dx%3D%270%27%20dy%3D%272%27%20stdDeviation%3D%272%27%20flood-color%3D%27%23000%27%20flood-opacity%3D%27.35%27/%3E%3C/filter%3E%3C/defs%3E%3Cg%20filter%3D%27url%28%23s%29%27%3E%3Cpath%20d%3D%27M53%2023c5-5%2010-8%2015-10-2%206-2%2014%200%2020-5-2-10-5-15-10Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M7%2023C14%2010%2028%206%2042%2010c7%202%2012%207%2015%2013-3%206-8%2011-15%2013C28%2040%2014%2036%207%2023Z%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%273%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2010c-3-3-6-4-10-5%202%204%203%208%202%2012%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M25%2036c-3%203-6%204-10%205%202-4%203-8%202-12%27%20fill%3D%27url%28%23g%29%27%20stroke%3D%27%23eaffef%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3Ccircle%20cx%3D%2744%27%20cy%3D%2717%27%20r%3D%272.3%27%20fill%3D%27%231b120b%27/%3E%3Cpath%20d%3D%27M38%2013c-7-2-14%200-19%204%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.38%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%3C/g%3E%3C/svg%3E");}
.geo-icon-pin{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M32%2058s19-17%2019-34A19%2019%200%201%200%2013%2024c0%2017%2019%2034%2019%2034Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27/%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2724%27%20r%3D%277%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27/%3E%3C/svg%3E");}
.geo-icon-trashbag-outline{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M24%2015c2%203%205%205%208%205s6-2%208-5%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%3Cpath%20d%3D%27M17%2028c1-7%206-11%2015-11s14%204%2015%2011l5%2021c1%205-3%209-8%209H20c-5%200-9-4-8-9l5-21Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-shell-outline{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M9%2050C12%2025%2022%2010%2032%2010s20%2015%2023%2040c-11%206-35%206-46%200Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M32%2012v42M20%2018l9%2036M44%2018l-9%2036M13%2033l14%2021M51%2033%2037%2054%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-opacity%3D%27.75%27%20stroke-width%3D%272.5%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-crosshair{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2732%27%20r%3D%2718%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27/%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2732%27%20r%3D%274%27%20fill%3D%27white%27/%3E%3Cpath%20d%3D%27M32%205v12M32%2047v12M5%2032h12M47%2032h12%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-layers{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M32%209%207%2022l25%2013%2025-13L32%209Z%27%20fill%3D%27white%27/%3E%3Cpath%20d%3D%27M13%2034l19%2010%2019-10M13%2045l19%2010%2019-10%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27/%3E%3C/svg%3E");}
.geo-icon-map{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M8%2015l14-6%2020%206%2014-6v40l-14%206-20-6-14%206V15Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M22%209v40M42%2015v40%27%20stroke%3D%27white%27%20stroke-width%3D%274%27/%3E%3C/svg%3E");}
.geo-icon-ortho{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M13%2031%2031%2013l20%2020-18%2018L13%2031Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M22%2022l20%2020M31%2013l2%2038M13%2031l38%202%27%20stroke%3D%27white%27%20stroke-width%3D%273%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E");}

body.is-geo-view .geo-topbar{
  top:calc(env(safe-area-inset-top,0px) + 7px)!important;
  left:8px!important;right:8px!important;height:42px!important;min-height:42px!important;
  display:grid!important;grid-template-columns:minmax(96px,1fr) auto!important;align-items:center!important;
  gap:6px!important;padding:5px 6px 5px 10px!important;border-radius:22px!important;
  background:linear-gradient(180deg,rgba(16,23,19,.93),rgba(8,13,11,.88))!important;
  border:1px solid rgba(255,255,255,.2)!important;box-shadow:0 12px 32px rgba(0,0,0,.32)!important;
  backdrop-filter:blur(12px);z-index:900!important;font-family:Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-topbar-title{
  min-width:0!important;min-height:31px!important;padding:0!important;gap:7px!important;
  display:flex!important;align-items:center!important;color:#fff!important;font-size:14px!important;font-weight:900!important;
  white-space:nowrap!important;line-height:1!important;text-shadow:0 1px 1px rgba(0,0,0,.35)!important;
}
body.is-geo-view .geo-topbar-main{display:flex!important;align-items:center!important;gap:5px!important;min-width:0!important;}
body.is-geo-view .geo-login-link,body.is-geo-view .geo-main-btn,body.is-geo-view .geo-menu-toggle{
  height:31px!important;min-height:31px!important;border-radius:15px!important;padding:0 10px!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;font-size:12px!important;font-weight:900!important;
  line-height:1!important;text-decoration:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
  -webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;
}
body.is-geo-view .geo-start-main{background:linear-gradient(180deg,#5ed080,#3c9f5c)!important;border-color:rgba(180,255,198,.34)!important;min-width:72px!important;}
body.is-geo-view .geo-menu-toggle{width:34px!important;min-width:34px!important;padding:0!important;font-size:22px!important;line-height:1!important;}
body.is-geo-view .geo-btn-icon{width:17px!important;height:17px!important;min-width:17px!important;font-size:0!important;}

body.is-geo-view .leaflet-control-zoom{margin-top:58px!important;margin-left:10px!important;border-radius:18px!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:0 12px 28px rgba(0,0,0,.28)!important;}
body.is-geo-view .leaflet-control-zoom a{width:38px!important;height:38px!important;line-height:36px!important;background:rgba(10,16,14,.88)!important;color:#fff!important;border-color:rgba(255,255,255,.12)!important;font-size:24px!important;text-shadow:none!important;}

body.is-geo-view .geo-menu-panel{
  position:absolute!important;top:calc(100% + 8px)!important;right:0!important;width:min(250px,calc(100vw - 24px))!important;
  border-radius:18px!important;background:linear-gradient(180deg,rgba(16,23,20,.96),rgba(8,13,11,.94))!important;
  border:1px solid rgba(255,255,255,.22)!important;box-shadow:0 18px 50px rgba(0,0,0,.38)!important;
  padding:8px 10px!important;z-index:902!important;backdrop-filter:blur(16px)!important;
}
body.is-geo-view .geo-menu-panel::before{content:"";position:absolute;right:16px;top:-8px;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:9px solid rgba(16,23,20,.96);}
body.is-geo-view .geo-menu-panel .geo-menu-btn{
  width:100%!important;height:48px!important;min-height:48px!important;display:grid!important;grid-template-columns:34px 1fr 16px!important;
  gap:12px!important;align-items:center!important;text-align:left!important;background:transparent!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;color:#fff!important;padding:0 2px!important;font-size:15px!important;font-weight:850!important;letter-spacing:-.01em!important;
  -webkit-font-smoothing:antialiased;text-rendering:geometricPrecision;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn:last-child{border-bottom:0!important;}
body.is-geo-view .geo-menu-icon{width:28px!important;height:28px!important;min-width:28px!important;font-size:0!important;opacity:.98!important;}
body.is-geo-view .geo-menu-arrow{font-size:27px!important;line-height:1!important;opacity:.95!important;font-weight:300!important;}

body.is-geo-view .geo-side-controls{
  position:absolute;right:12px;top:calc(50% + 60px);transform:translateY(-50%);display:grid;gap:12px;z-index:820;
}
body.is-geo-view .geo-target-btn,body.is-geo-view .geo-layer-toggle{
  position:static!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;
  border-radius:50%!important;background:linear-gradient(180deg,rgba(24,29,28,.94),rgba(9,13,12,.92))!important;
  border:1px solid rgba(255,255,255,.26)!important;box-shadow:0 12px 28px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)!important;
  color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;
}
body.is-geo-view .geo-target-btn .geo-ui-icon,body.is-geo-view .geo-layer-toggle .geo-ui-icon{width:30px!important;height:30px!important;min-width:30px!important;}

body.is-geo-view .geo-layer-panel{
  position:absolute;left:12px;bottom:108px;z-index:820;width:168px;border-radius:18px;overflow:hidden;
  background:linear-gradient(180deg,rgba(16,23,20,.94),rgba(8,13,11,.92));border:1px solid rgba(255,255,255,.22);
  box-shadow:0 14px 34px rgba(0,0,0,.32);backdrop-filter:blur(14px);
}
body.is-geo-view .geo-layer-choice{
  width:100%;height:48px;border:0;border-bottom:1px solid rgba(255,255,255,.13);background:transparent;color:#fff;
  display:flex;align-items:center;gap:10px;padding:0 14px;font-size:15px;font-weight:850;text-align:left;
}
body.is-geo-view .geo-layer-choice:last-child{border-bottom:0;}
body.is-geo-view .geo-layer-choice.is-active{background:linear-gradient(180deg,rgba(100,185,118,.72),rgba(49,114,62,.68));}
body.is-geo-view .geo-layer-choice .geo-ui-icon{width:25px;height:25px;min-width:25px;}

body.is-geo-view .geo-map-stats{
  position:absolute!important;left:12px!important;right:12px!important;bottom:12px!important;top:auto!important;
  min-height:88px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;z-index:820!important;
  padding:10px 4px!important;border-radius:20px!important;background:linear-gradient(180deg,rgba(16,23,20,.95),rgba(8,13,11,.93))!important;
  border:1px solid rgba(255,255,255,.2)!important;box-shadow:0 18px 44px rgba(0,0,0,.34)!important;backdrop-filter:blur(14px)!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  min-width:0!important;min-height:68px!important;height:auto!important;border-radius:0!important;background:transparent!important;border:0!important;
  border-right:1px solid rgba(255,255,255,.18)!important;display:grid!important;grid-template-rows:30px auto auto!important;place-items:center!important;
  padding:0 5px!important;text-align:center!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item:last-child{border-right:0!important;}
body.is-geo-view .geo-map-stats small{font-size:10px!important;line-height:1.13!important;font-weight:750!important;color:rgba(255,255,255,.9)!important;text-transform:none!important;letter-spacing:0!important;}
body.is-geo-view .geo-map-stats strong{font-size:18px!important;line-height:1.05!important;margin-top:3px!important;font-weight:950!important;text-shadow:0 1px 1px rgba(0,0,0,.35)!important;}
body.is-geo-view .geo-stat-icon{font-size:0!important;margin:0!important;}

body.is-geo-view .geo-fish-marker{background:transparent!important;border:0!important;}
body.is-geo-view .geo-fish-marker-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 7px rgba(255,245,220,.55));}
body.is-geo-view .geo-fish-svg{width:100%;height:100%;overflow:visible!important;}
body.is-geo-view .geo-fish-marker.is-caught .geo-fish-marker-inner{filter:drop-shadow(0 0 10px rgba(242,190,69,.9));}
body.is-geo-view .geo-fish-marker.is-selected .geo-fish-marker-inner{transform:scale(1.16);}
body.is-geo-view .geo-fish-marker.is-selected::before{
  content:"";position:absolute;left:50%;top:50%;width:58px;height:58px;transform:translate(-50%,-50%);
  border-radius:50%;border:2px solid rgba(242,190,69,.62);box-shadow:0 0 0 10px rgba(242,190,69,.13),0 0 24px rgba(242,190,69,.52);animation:geoFishPulse 1.8s ease-in-out infinite;
}
@keyframes geoFishPulse{0%,100%{transform:translate(-50%,-50%) scale(.9);opacity:.55}50%{transform:translate(-50%,-50%) scale(1.18);opacity:.2}}

body.is-geo-view .geo-place-popup{min-width:132px!important;border-radius:16px!important;background:rgba(12,18,16,.94)!important;color:#fff!important;padding:12px!important;font-family:Inter,system-ui,sans-serif!important;font-size:14px!important;box-shadow:0 14px 36px rgba(0,0,0,.38)!important;}
body.is-geo-view .geo-place-popup strong{font-size:18px!important;color:#fff!important;display:block!important;margin-bottom:2px!important;}
body.is-geo-view .geo-place-popup button{margin-top:8px!important;border-radius:10px!important;border:1px solid rgba(255,255,255,.18)!important;background:#fff!important;color:#102018!important;font-weight:900!important;padding:7px 10px!important;}
body.is-geo-view .geo-popup-status{display:flex!important;align-items:center!important;gap:7px!important;margin-top:9px!important;color:#74d978!important;font-size:15px!important;font-weight:900!important;}
body.is-geo-view .geo-popup-fish{display:inline-flex!important;width:25px!important;height:18px!important;}
body.is-geo-view .geo-popup-fish .geo-fish-svg{width:25px!important;height:18px!important;}

body.is-geo-view .geo-mine-panel{
  top:calc(env(safe-area-inset-top,0px) + 62px)!important;left:10px!important;right:10px!important;max-height:52vh!important;overflow:auto!important;
  border-radius:18px!important;background:linear-gradient(180deg,rgba(16,23,20,.96),rgba(8,13,11,.94))!important;border:1px solid rgba(255,255,255,.2)!important;
  box-shadow:0 18px 50px rgba(0,0,0,.38)!important;z-index:850!important;
}

@media (max-width:390px){
  body.is-geo-view .geo-topbar{left:5px!important;right:5px!important;height:38px!important;min-height:38px!important;padding:4px 5px 4px 8px!important;grid-template-columns:minmax(84px,1fr) auto!important;}
  body.is-geo-view .geo-topbar-title{font-size:11px!important;gap:4px!important;}
  .geo-icon-logo-fish{width:25px!important;height:19px!important;min-width:25px!important;}
  body.is-geo-view .geo-login-link,body.is-geo-view .geo-main-btn,body.is-geo-view .geo-menu-toggle{height:28px!important;min-height:28px!important;font-size:10px!important;padding:0 7px!important;border-radius:14px!important;gap:3px!important;}
  body.is-geo-view .geo-start-main{min-width:62px!important;}
  body.is-geo-view .geo-btn-icon{width:14px!important;height:14px!important;min-width:14px!important;}
  body.is-geo-view .geo-menu-toggle{width:30px!important;min-width:30px!important;font-size:19px!important;}
  body.is-geo-view .leaflet-control-zoom{margin-top:52px!important;margin-left:8px!important;}
  body.is-geo-view .leaflet-control-zoom a{width:34px!important;height:34px!important;line-height:32px!important;}
  body.is-geo-view .geo-menu-panel{width:min(236px,calc(100vw - 16px))!important;}
  body.is-geo-view .geo-menu-panel .geo-menu-btn{height:43px!important;min-height:43px!important;font-size:13px!important;grid-template-columns:29px 1fr 13px!important;gap:9px!important;}
  body.is-geo-view .geo-menu-icon{width:24px!important;height:24px!important;min-width:24px!important;}
  body.is-geo-view .geo-side-controls{right:9px!important;gap:10px!important;}
  body.is-geo-view .geo-target-btn,body.is-geo-view .geo-layer-toggle{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;}
  body.is-geo-view .geo-layer-panel{left:8px!important;bottom:96px!important;width:146px!important;}
  body.is-geo-view .geo-layer-choice{height:42px!important;font-size:13px!important;padding:0 11px!important;}
  body.is-geo-view .geo-map-stats{left:6px!important;right:6px!important;bottom:6px!important;min-height:82px!important;border-radius:16px!important;padding:8px 2px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-item{min-height:64px!important;padding:0 3px!important;grid-template-rows:27px auto auto!important;}
  body.is-geo-view .geo-map-stats small{font-size:8.8px!important;line-height:1.1!important;}
  body.is-geo-view .geo-map-stats strong{font-size:16px!important;}
  .geo-icon-bluefish,.geo-icon-goldfish{width:34px!important;height:24px!important;}
  .geo-icon-trashbag,.geo-icon-shell{width:31px!important;height:31px!important;}
}

/* === GEO UI FINAL FIX 2026-04-27 === */
body.is-geo-view .geo-topbar{
  position:absolute!important;
  top:calc(env(safe-area-inset-top,0px) + 7px)!important;
  left:8px!important;
  right:8px!important;
  height:36px!important;
  min-height:36px!important;
  display:grid!important;
  grid-template-columns:minmax(74px,1fr) auto!important;
  align-items:center!important;
  gap:5px!important;
  padding:4px 5px 4px 9px!important;
  border-radius:13px!important;
  background:linear-gradient(180deg,rgba(14,22,19,.88),rgba(8,13,12,.82))!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(9px)!important;
  z-index:900!important;
  max-width:none!important;
}
body.is-geo-view .geo-topbar-title{
  height:28px!important;min-height:28px!important;padding:0!important;margin:0!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  font:900 12px/1 Inter,system-ui,sans-serif!important;color:#fff!important;letter-spacing:.01em!important;
  background:transparent!important;border:0!important;box-shadow:none!important;white-space:nowrap!important;min-width:0!important;
}
body.is-geo-view .geo-icon-logo-fish{display:none!important;}
body.is-geo-view .geo-topbar-main{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;min-width:0!important;}
body.is-geo-view .geo-login-link,
body.is-geo-view .geo-main-btn,
body.is-geo-view .geo-menu-toggle{
  height:28px!important;min-height:28px!important;padding:0 9px!important;margin:0!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;
  border-radius:11px!important;border:1px solid rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(34,44,40,.94),rgba(12,18,16,.92))!important;
  color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 5px 14px rgba(0,0,0,.18)!important;
  font:850 11px/1 Inter,system-ui,sans-serif!important;text-decoration:none!important;text-shadow:none!important;
}
body.is-geo-view .geo-login-link.geo-icon-only,
body.is-geo-view .geo-main-btn.geo-icon-only,
body.is-geo-view .geo-menu-toggle{width:31px!important;min-width:31px!important;padding:0!important;}
body.is-geo-view .geo-start-main{min-width:54px!important;padding:0 10px!important;}
body.is-geo-view .geo-btn-icon,
body.is-geo-view .geo-ui-icon{background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;display:inline-block!important;}
body.is-geo-view .geo-btn-icon{width:18px!important;height:18px!important;min-width:18px!important;}
body.is-geo-view .geo-icon-user{background-image:url('assets/ui/icon-login.svg')!important;}
body.is-geo-view .geo-icon-close{background-image:url('assets/ui/icon-close.svg')!important;}
body.is-geo-view .geo-icon-menu-lines{width:18px!important;height:18px!important;min-width:18px!important;background-image:url('assets/ui/icon-menu.svg')!important;}

body.is-geo-view .leaflet-control-zoom{
  margin-top:48px!important;margin-left:9px!important;border-radius:12px!important;overflow:hidden!important;
  border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 9px 22px rgba(0,0,0,.22)!important;
}
body.is-geo-view .leaflet-control-zoom a{
  width:34px!important;height:34px!important;line-height:32px!important;
  background:rgba(11,17,15,.88)!important;color:#fff!important;border-color:rgba(255,255,255,.10)!important;
  font-size:22px!important;text-shadow:none!important;
}

body.is-geo-view .geo-menu-panel{
  position:absolute!important;right:0!important;top:calc(100% + 7px)!important;left:auto!important;
  width:190px!important;max-width:calc(100vw - 18px)!important;padding:5px 0!important;
  border-radius:12px!important;background:linear-gradient(180deg,rgba(14,22,19,.96),rgba(7,12,10,.94))!important;
  border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 16px 34px rgba(0,0,0,.30)!important;
  overflow:hidden!important;z-index:920!important;backdrop-filter:blur(9px)!important;
}
body.is-geo-view .geo-menu-panel::before{display:none!important;}
body.is-geo-view .geo-menu-panel.hidden{display:none!important;}
body.is-geo-view .geo-menu-panel .geo-menu-btn{
  height:36px!important;min-height:36px!important;width:100%!important;margin:0!important;padding:0 8px!important;
  display:grid!important;grid-template-columns:24px minmax(0,1fr) 10px!important;align-items:center!important;gap:7px!important;
  border:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;background:transparent!important;
  color:#fff!important;font:800 12px/1.08 Inter,system-ui,sans-serif!important;text-align:left!important;white-space:nowrap!important;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn:last-child{border-bottom:0!important;}
body.is-geo-view .geo-menu-icon{width:22px!important;height:22px!important;min-width:22px!important;}
body.is-geo-view .geo-menu-arrow{font-size:20px!important;line-height:1!important;opacity:.8!important;}
body.is-geo-view .geo-icon-fish-outline{background-image:url('assets/icons/fish-blue.png')!important;}
body.is-geo-view .geo-icon-pin{background-image:url('assets/ui/icon-location.svg')!important;}
body.is-geo-view .geo-icon-trashbag-outline{background-image:url('assets/icons/trash-bag-green.png')!important;}
body.is-geo-view .geo-icon-shell-outline{background-image:url('assets/icons/shell-purple.png')!important;}

body.is-geo-view .geo-side-controls{
  position:absolute!important;right:10px!important;top:auto!important;bottom:116px!important;z-index:845!important;
  display:flex!important;flex-direction:column!important;gap:9px!important;transform:none!important;
}
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;padding:0!important;
  border-radius:12px!important;background:linear-gradient(180deg,rgba(27,35,32,.94),rgba(9,14,12,.92))!important;
  border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 10px 23px rgba(0,0,0,.26)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
body.is-geo-view .geo-target-btn .geo-ui-icon,
body.is-geo-view .geo-layer-toggle .geo-ui-icon{width:23px!important;height:23px!important;min-width:23px!important;}
body.is-geo-view .geo-icon-crosshair{background-image:url('assets/ui/icon-target.svg')!important;}
body.is-geo-view .geo-icon-layers{background-image:url('assets/ui/icon-layers.svg')!important;}

body.is-geo-view .geo-layer-panel{
  display:none!important;position:absolute!important;right:10px!important;left:auto!important;bottom:202px!important;top:auto!important;
  width:148px!important;padding:4px 0!important;border-radius:12px!important;overflow:hidden!important;z-index:850!important;
  background:linear-gradient(180deg,rgba(14,22,19,.96),rgba(7,12,10,.94))!important;border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.30)!important;backdrop-filter:blur(9px)!important;
}
body.is-geo-view .geo-layer-panel.is-open{display:block!important;}
body.is-geo-view .geo-layer-choice{
  height:34px!important;min-height:34px!important;width:100%!important;padding:0 9px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;
  border:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;background:transparent!important;color:#fff!important;
  font:800 12px/1 Inter,system-ui,sans-serif!important;text-align:left!important;
}
body.is-geo-view .geo-layer-choice:last-child{border-bottom:0!important;}
body.is-geo-view .geo-layer-choice.is-active{background:linear-gradient(180deg,rgba(76,146,86,.50),rgba(35,85,47,.48))!important;}
body.is-geo-view .geo-layer-choice .geo-ui-icon{width:21px!important;height:21px!important;min-width:21px!important;}
body.is-geo-view .geo-icon-map{background-image:url('assets/ui/icon-map.svg')!important;}
body.is-geo-view .geo-icon-ortho{background-image:url('assets/ui/icon-ortho.svg')!important;}
body.is-geo-view .geo-icon-alert{
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Cpath%20d%3D%27M32%207L59%2055H5L32%207Z%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%275%27%20stroke-linejoin%3D%27round%27/%3E%3Cpath%20d%3D%27M32%2023v16%27%20stroke%3D%27white%27%20stroke-width%3D%276%27%20stroke-linecap%3D%27round%27/%3E%3Ccircle%20cx%3D%2732%27%20cy%3D%2748%27%20r%3D%273%27%20fill%3D%27white%27/%3E%3C/svg%3E")!important;
}


body.is-geo-view .geo-map-stats{
  position:absolute!important;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;z-index:830!important;
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important;
  padding:4px 3px!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(14,22,19,.93),rgba(7,12,10,.90))!important;
  border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 12px 28px rgba(0,0,0,.25)!important;backdrop-filter:blur(8px)!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  min-width:0!important;height:47px!important;min-height:47px!important;padding:2px 3px!important;margin:0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:1px!important;
  border:0!important;border-right:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;background:transparent!important;color:#fff!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item:last-child{border-right:0!important;}
body.is-geo-view .geo-map-stats .geo-stat-icon{width:20px!important;height:20px!important;min-width:20px!important;}
body.is-geo-view .geo-icon-bluefish{background-image:url('assets/icons/fish-blue.png')!important;}
body.is-geo-view .geo-icon-goldfish{background-image:url('assets/icons/fish-gold.png')!important;}
body.is-geo-view .geo-icon-trashbag{background-image:url('assets/icons/trash-bag-green.png')!important;}
body.is-geo-view .geo-icon-shell{background-image:url('assets/icons/shell-purple.png')!important;}
body.is-geo-view .geo-map-stats small{font-size:8.5px!important;line-height:1!important;font-weight:750!important;color:rgba(255,255,255,.86)!important;text-transform:none!important;letter-spacing:0!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.is-geo-view .geo-map-stats strong{font-size:14px!important;line-height:1!important;margin:0!important;font-weight:950!important;color:#fff!important;text-shadow:none!important;}

body.is-geo-view .geo-fish-marker{background:transparent!important;border:0!important;}
body.is-geo-view .geo-fish-marker::before{display:none!important;animation:none!important;box-shadow:none!important;}
body.is-geo-view .geo-fish-marker-inner{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;filter:none!important;transform:none!important;}
body.is-geo-view .geo-fish-marker-inner img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;}
body.is-geo-view .geo-fish-marker.is-caught .geo-fish-marker-inner{filter:none!important;}
body.is-geo-view .geo-fish-marker.is-selected .geo-fish-marker-inner{transform:scale(1.10)!important;}
body.is-geo-view .geo-popup-fish img{width:28px;height:22px;vertical-align:middle;}
body.is-geo-view .geo-place-popup{min-width:126px!important;border-radius:12px!important;background:rgba(12,18,16,.94)!important;color:#fff!important;padding:10px!important;font-family:Inter,system-ui,sans-serif!important;font-size:13px!important;box-shadow:0 12px 28px rgba(0,0,0,.34)!important;}
body.is-geo-view .geo-place-popup button{margin-top:7px!important;border-radius:9px!important;border:1px solid rgba(255,255,255,.18)!important;background:#fff!important;color:#102018!important;font-weight:900!important;padding:7px 9px!important;}

body.is-geo-view .geo-mine-panel{
  left:8px!important;right:auto!important;top:52px!important;width:190px!important;max-width:calc(100vw - 18px)!important;
  padding:9px!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(14,22,19,.96),rgba(7,12,10,.94))!important;
  border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 16px 34px rgba(0,0,0,.30)!important;color:#fff!important;z-index:870!important;
}
body.is-geo-view .geo-mine-head strong{font-size:12px!important;}
body.is-geo-view .geo-mine-grid{grid-template-columns:1fr!important;gap:5px!important;}
body.is-geo-view .geo-mine-grid div{min-height:32px!important;padding:5px 7px!important;border-radius:9px!important;display:grid!important;grid-template-columns:24px 32px 1fr!important;align-items:center!important;gap:5px!important;}
body.is-geo-view .geo-mine-grid span{font-size:16px!important;line-height:1!important;}
body.is-geo-view .geo-mine-grid strong{font-size:13px!important;}
body.is-geo-view .geo-mine-grid small{font-size:9px!important;line-height:1.05!important;}

@media (max-width:420px){
  body.is-geo-view .geo-topbar{left:6px!important;right:6px!important;height:34px!important;min-height:34px!important;grid-template-columns:minmax(66px,1fr) auto!important;padding:3px 4px 3px 8px!important;}
  body.is-geo-view .geo-topbar-title{font-size:11px!important;height:27px!important;min-height:27px!important;}
  body.is-geo-view .geo-login-link,body.is-geo-view .geo-main-btn,body.is-geo-view .geo-menu-toggle{height:27px!important;min-height:27px!important;border-radius:10px!important;}
  body.is-geo-view .geo-login-link.geo-icon-only,body.is-geo-view .geo-main-btn.geo-icon-only,body.is-geo-view .geo-menu-toggle{width:29px!important;min-width:29px!important;}
  body.is-geo-view .geo-start-main{min-width:50px!important;padding:0 8px!important;font-size:10.5px!important;}
  body.is-geo-view .geo-topbar-main{gap:4px!important;}
  body.is-geo-view .leaflet-control-zoom{margin-top:45px!important;margin-left:8px!important;}
  body.is-geo-view .leaflet-control-zoom a{width:32px!important;height:32px!important;line-height:30px!important;}
  body.is-geo-view .geo-menu-panel{width:178px!important;right:0!important;}
  body.is-geo-view .geo-menu-panel .geo-menu-btn{height:34px!important;min-height:34px!important;font-size:11px!important;grid-template-columns:22px minmax(0,1fr) 9px!important;gap:6px!important;}
  body.is-geo-view .geo-menu-icon{width:20px!important;height:20px!important;min-width:20px!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:104px!important;}
  body.is-geo-view .geo-target-btn,body.is-geo-view .geo-layer-toggle{width:35px!important;height:35px!important;min-width:35px!important;min-height:35px!important;}
  body.is-geo-view .geo-layer-panel{right:8px!important;bottom:184px!important;width:140px!important;}
  body.is-geo-view .geo-map-stats{left:6px!important;right:6px!important;bottom:6px!important;border-radius:11px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-item{height:43px!important;min-height:43px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-icon{width:18px!important;height:18px!important;min-width:18px!important;}
  body.is-geo-view .geo-map-stats small{font-size:7.5px!important;}
  body.is-geo-view .geo-map-stats strong{font-size:13px!important;}
  body.is-geo-view .geo-mine-panel{top:48px!important;width:178px!important;}
}

/* === GEO MENU SLIDE + LAYOUT TUNE 20260428 === */
body.is-geo-view .geo-topbar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  padding:6px 8px!important;
  left:8px!important;
  right:8px!important;
  top:calc(env(safe-area-inset-top,0px) + 8px)!important;
  border-radius:0!important;
  align-items:start!important;
}
body.is-geo-view .geo-topbar-title{
  color:#fff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.45)!important;
  font-size:14px!important;
  min-height:32px!important;
  padding:0 2px!important;
}
body.is-geo-view .geo-login-link,
body.is-geo-view .geo-main-btn,
body.is-geo-view .geo-menu-toggle{
  border-radius:11px!important;
  border:1px solid rgba(255,255,255,.11)!important;
  background:rgba(24,34,30,.62)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.19)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
body.is-geo-view .geo-start-main{
  color:#092013!important;
  background:linear-gradient(180deg,rgba(139,222,147,.92),rgba(74,169,91,.88))!important;
  border-color:rgba(195,255,203,.24)!important;
}
body.is-geo-view .geo-menu-toggle{
  margin-right:2px!important;
}
body.is-geo-view .geo-menu-panel{
  top:calc(100% + 6px)!important;
  right:2px!important;
  width:min(214px, calc(100vw - 18px))!important;
  padding:7px!important;
  gap:4px!important;
  border-radius:13px!important;
  background:rgba(29,42,36,.76)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn{
  height:34px!important;
  min-height:34px!important;
  grid-template-columns:23px minmax(0,1fr) 10px!important;
  gap:7px!important;
  padding:0 5px!important;
  border-radius:9px!important;
  border-bottom:0!important;
  background:rgba(255,255,255,.045)!important;
  font-size:11.5px!important;
  line-height:1!important;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn[aria-expanded="true"]{
  background:rgba(116,202,126,.18)!important;
}
body.is-geo-view .geo-menu-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
}
body.is-geo-view .geo-menu-arrow{
  font-size:16px!important;
  transform:rotate(90deg);
  opacity:.75;
}
body.is-geo-view .geo-menu-subpanel{
  display:block;
  max-height:260px;
  opacity:1;
  overflow:hidden;
  margin:0 0 3px 0;
  border-radius:10px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.075);
  transition:max-height .22s ease, opacity .18s ease, margin .18s ease;
}
body.is-geo-view .geo-menu-subpanel.hidden{
  display:block!important;
  max-height:0!important;
  opacity:0!important;
  margin:0!important;
  border-width:0!important;
}
body.is-geo-view .geo-menu-mine-subpanel{
  padding:6px!important;
}
body.is-geo-view .geo-menu-subpanel.hidden.geo-menu-mine-subpanel{
  padding-top:0!important;
  padding-bottom:0!important;
}
body.is-geo-view .geo-mine-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
}
body.is-geo-view .geo-mine-grid div{
  min-height:28px!important;
  display:grid!important;
  grid-template-columns:22px 30px 1fr!important;
  gap:5px!important;
  align-items:center!important;
  padding:4px 6px!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.055)!important;
}
body.is-geo-view .geo-mine-grid .geo-ui-icon{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
}
body.is-geo-view .geo-mine-grid strong{font-size:12.5px!important;color:#fff!important;line-height:1!important;}
body.is-geo-view .geo-mine-grid small{font-size:8.5px!important;line-height:1!important;color:rgba(255,255,255,.78)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.is-geo-view .geo-eco-confirm{
  padding:7px!important;
  display:grid!important;
  gap:6px!important;
  color:rgba(255,255,255,.88)!important;
  font:750 11px/1.25 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-eco-confirm button{
  height:28px!important;
  border:0!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(132,218,143,.95),rgba(66,158,84,.92))!important;
  color:#06150c!important;
  font:900 12px/1 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .leaflet-top.leaflet-left{
  top:auto!important;
  left:auto!important;
  right:9px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 196px)!important;
  z-index:845!important;
}
body.is-geo-view .leaflet-control-zoom{
  margin:0!important;
}
body.is-geo-view .leaflet-control-zoom a{
  width:38px!important;
  height:38px!important;
  line-height:36px!important;
  font-size:22px!important;
  background:rgba(24,34,30,.76)!important;
  border-color:rgba(255,255,255,.10)!important;
}
body.is-geo-view .geo-side-controls{
  right:9px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
  gap:8px!important;
}
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  border-radius:11px!important;
  background:rgba(24,34,30,.76)!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-layer-panel{
  right:54px!important;
  left:auto!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
  width:146px!important;
  border-radius:11px!important;
  background:rgba(29,42,36,.82)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 14px 28px rgba(0,0,0,.25)!important;
}
body.is-geo-view .geo-layer-choice{height:32px!important;min-height:32px!important;font-size:11.5px!important;padding:0 8px!important;}
body.is-geo-view .geo-icon-depth{background-image:url('assets/ui/icon-layers.svg')!important;}
body.is-geo-view .geo-map-stats{
  left:9px!important;
  right:9px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 7px)!important;
  min-height:50px!important;
  padding:4px 3px!important;
  border-radius:12px!important;
  background:rgba(29,42,36,.76)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  box-shadow:0 12px 26px rgba(0,0,0,.23)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  height:43px!important;
  min-height:43px!important;
  padding:1px 3px!important;
  gap:0!important;
  justify-content:center!important;
  border-right:1px solid rgba(255,255,255,.065)!important;
}
body.is-geo-view .geo-map-stats .geo-stat-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}
body.is-geo-view .geo-map-stats small{font-size:7.8px!important;max-width:100%;}
body.is-geo-view .geo-map-stats strong{font-size:14px!important;}
@media (max-width:420px){
  body.is-geo-view .geo-topbar{left:6px!important;right:6px!important;top:calc(env(safe-area-inset-top,0px) + 6px)!important;}
  body.is-geo-view .geo-topbar-title{font-size:11.5px!important;}
  body.is-geo-view .geo-menu-panel{width:198px!important;right:1px!important;}
  body.is-geo-view .geo-menu-panel .geo-menu-btn{height:32px!important;min-height:32px!important;font-size:11px!important;grid-template-columns:21px minmax(0,1fr) 9px!important;}
  body.is-geo-view .leaflet-top.leaflet-left{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 186px)!important;}
  body.is-geo-view .leaflet-control-zoom a{width:35px!important;height:35px!important;line-height:33px!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 98px)!important;}
  body.is-geo-view .geo-target-btn,body.is-geo-view .geo-layer-toggle{width:35px!important;height:35px!important;min-width:35px!important;min-height:35px!important;}
  body.is-geo-view .geo-layer-panel{right:49px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 98px)!important;width:138px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-item{height:40px!important;min-height:40px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-icon{width:22px!important;height:22px!important;min-width:22px!important;}
  body.is-geo-view .geo-map-stats small{font-size:7.1px!important;}
  body.is-geo-view .geo-map-stats strong{font-size:13px!important;}
}

/* === Geofishing BETA v185 focused tune: buttons, controls, bottom stats, GPS zoom === */
body.is-geo-view .geo-topbar{
  top:calc(env(safe-area-inset-top,0px) + 7px)!important;
  left:8px!important;
  right:8px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(96px,1fr) auto!important;
  align-items:center!important;
  gap:6px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.is-geo-view .geo-topbar-title{
  height:38px!important;
  min-height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:0 10px!important;
  border-radius:13px!important;
  color:#fff!important;
  background:rgba(10,16,14,.72)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.22)!important;
  font-size:13px!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  line-height:1!important;
}
body.is-geo-view .geo-topbar-main{
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
}
body.is-geo-view .geo-login-link,
body.is-geo-view .geo-main-btn,
body.is-geo-view .geo-menu-toggle{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:0!important;
  border-radius:13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(10,16,14,.72)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
  color:#fff!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-start-main{
  width:auto!important;
  min-width:104px!important;
  padding:0 14px!important;
  background:linear-gradient(180deg,rgba(92,178,107,.93),rgba(54,132,70,.93))!important;
  border-color:rgba(220,255,225,.18)!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.is-geo-view .geo-login-link .geo-ui-icon,
body.is-geo-view .geo-main-btn .geo-ui-icon,
body.is-geo-view .geo-menu-toggle .geo-ui-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  filter:none!important;
}

/* Right-side map controls: one clean stack near lower right */
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  top:auto!important;
  left:auto!important;
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 198px)!important;
  z-index:740!important;
}
body.is-geo-view .leaflet-control-zoom{
  margin:0!important;
  border-radius:13px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(10,16,14,.72)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
}
body.is-geo-view .leaflet-control-zoom a{
  width:38px!important;
  height:38px!important;
  line-height:36px!important;
  font-size:24px!important;
  font-weight:500!important;
  background:transparent!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.10)!important;
  text-shadow:none!important;
}
body.is-geo-view .geo-side-controls{
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 98px)!important;
  top:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  z-index:735!important;
}
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  padding:0!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(10,16,14,.72)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-target-btn .geo-ui-icon,
body.is-geo-view .geo-layer-toggle .geo-ui-icon{
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  filter:none!important;
}
body.is-geo-view .geo-layer-panel{
  right:58px!important;
  left:auto!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 98px)!important;
  top:auto!important;
  border-radius:13px!important;
  background:rgba(10,16,14,.78)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}

/* Bottom stats panel: icon + label + number, compact and centered */
body.is-geo-view .geo-map-stats{
  left:8px!important;
  right:8px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 6px)!important;
  min-height:104px!important;
  height:70px!important;
  padding:7px 5px!important;
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  align-items:stretch!important;
  gap:0!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,rgba(14,22,20,.78),rgba(7,12,11,.82))!important;
  border:1px solid rgba(255,255,255,.105)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  height:auto!important;
  min-height:56px!important;
  width:100%!important;
  min-width:0!important;
  padding:0 4px!important;
  display:grid!important;
  grid-template-rows:26px 17px 18px!important;
  align-items:center!important;
  justify-items:center!important;
  text-align:center!important;
  border-right:1px solid rgba(255,255,255,.14)!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item:last-child{border-right:0!important;}
body.is-geo-view .geo-map-stats .geo-stat-icon{
  width:34px!important;
  height:26px!important;
  min-width:34px!important;
  display:block!important;
  margin:0 auto!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.45))!important;
}
body.is-geo-view .geo-map-stats .geo-icon-trashbag,
body.is-geo-view .geo-map-stats .geo-icon-shell{
  width:29px!important;
  height:29px!important;
  min-width:29px!important;
}
body.is-geo-view .geo-map-stats small{
  display:block!important;
  margin:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:8.4px!important;
  line-height:1.05!important;
  font-weight:650!important;
  color:rgba(255,255,255,.86)!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.is-geo-view .geo-map-stats strong{
  display:block!important;
  margin:0!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:950!important;
  text-shadow:none!important;
}
body.is-geo-view .geo-stat-blue strong{color:#55b9ff!important;}
body.is-geo-view .geo-stat-gold strong{color:#ffc857!important;}
body.is-geo-view .geo-stat-green strong{color:#72ce7d!important;}
body.is-geo-view .geo-stat-purple strong{color:#c783ff!important;}

@media (max-width:390px){
  body.is-geo-view .geo-topbar{left:6px!important;right:6px!important;grid-template-columns:minmax(82px,1fr) auto!important;}
  body.is-geo-view .geo-topbar-title{height:36px!important;min-height:36px!important;font-size:12px!important;padding:0 8px!important;border-radius:12px!important;}
  body.is-geo-view .geo-login-link,
  body.is-geo-view .geo-main-btn,
  body.is-geo-view .geo-menu-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;border-radius:12px!important;}
  body.is-geo-view .geo-start-main{min-width:62px!important;padding:0 11px!important;font-size:11px!important;}
  body.is-geo-view .geo-topbar-main{gap:4px!important;}
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 190px)!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 96px)!important;gap:9px!important;}
  body.is-geo-view .leaflet-control-zoom a,
  body.is-geo-view .geo-target-btn,
  body.is-geo-view .geo-layer-toggle{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;}
  body.is-geo-view .leaflet-control-zoom a{line-height:34px!important;}
  body.is-geo-view .geo-map-stats{left:6px!important;right:6px!important;height:66px!important;min-height:66px!important;padding:6px 4px!important;border-radius:13px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-item{grid-template-rows:24px 16px 17px!important;min-height:52px!important;padding:0 3px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-icon{width:30px!important;height:23px!important;min-width:30px!important;}
  body.is-geo-view .geo-map-stats .geo-icon-trashbag,
  body.is-geo-view .geo-map-stats .geo-icon-shell{width:26px!important;height:26px!important;min-width:26px!important;}
  body.is-geo-view .geo-map-stats small{font-size:7.4px!important;}
  body.is-geo-view .geo-map-stats strong{font-size:15px!important;}
}

/* === Geofishing BETA v188 focused final corrections === */
body.is-geo-view .geo-topbar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  padding:0!important;
  left:8px!important;
  right:8px!important;
  top:calc(env(safe-area-inset-top,0px) + 8px)!important;
  height:40px!important;
  min-height:40px!important;
  display:grid!important;
  grid-template-columns:minmax(86px,1fr) auto!important;
  gap:6px!important;
  align-items:center!important;
}
body.is-geo-view .geo-topbar-title{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  height:40px!important;
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  color:#fff!important;
  text-shadow:0 2px 9px rgba(0,0,0,.55)!important;
  font:900 13px/1 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-topbar-main{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  height:40px!important;
}
body.is-geo-view .geo-login-link.geo-icon-only,
body.is-geo-view .geo-main-btn.geo-icon-only,
body.is-geo-view .geo-menu-toggle{
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  border-radius:12px!important;
}
body.is-geo-view .geo-start-main{
  height:40px!important;
  min-height:40px!important;
  min-width:70px!important;
  padding:0 14px!important;
  border-radius:12px!important;
}
body.is-geo-view .geo-login-link,
body.is-geo-view .geo-main-btn,
body.is-geo-view .geo-menu-toggle{
  background:rgba(10,16,14,.72)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-login-link .geo-ui-icon,
body.is-geo-view .geo-main-btn .geo-ui-icon,
body.is-geo-view .geo-menu-toggle .geo-ui-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
}

body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  top:auto!important;
  left:auto!important;
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 202px)!important;
  z-index:740!important;
}
body.is-geo-view .leaflet-control-zoom{
  margin:0!important;
  border-radius:12px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(10,16,14,.72)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
}
body.is-geo-view .leaflet-control-zoom a{
  width:40px!important;
  height:40px!important;
  line-height:38px!important;
  font-size:23px!important;
  background:transparent!important;
  color:#fff!important;
}
body.is-geo-view .geo-side-controls{
  position:absolute!important;
  top:auto!important;
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  transform:none!important;
  z-index:735!important;
}
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  padding:0!important;
  border-radius:12px!important;
  background:rgba(10,16,14,.72)!important;
  border:1px solid rgba(255,255,255,.13)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-target-btn .geo-ui-icon,
body.is-geo-view .geo-layer-toggle .geo-ui-icon{
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
}

body.is-geo-view .geo-menu-panel{
  width:188px!important;
  max-width:calc(100vw - 18px)!important;
  right:0!important;
  top:calc(100% + 7px)!important;
  padding:5px!important;
  border-radius:12px!important;
  background:rgba(29,42,36,.80)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn{
  height:34px!important;
  min-height:34px!important;
  grid-template-columns:22px minmax(0,1fr) 10px!important;
  gap:7px!important;
  padding:0 6px!important;
  font-size:11.5px!important;
  line-height:1!important;
  align-items:center!important;
}
body.is-geo-view .geo-menu-icon{
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
}
body.is-geo-view .geo-menu-arrow{
  font-size:15px!important;
}

body.is-geo-view .geo-map-stats{
  left:0!important;
  right:0!important;
  width:100%!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;
  height:68px!important;
  min-height:68px!important;
  padding:7px 5px!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:14px 14px 0 0!important;
  background:linear-gradient(180deg,rgba(14,22,20,.80),rgba(7,12,11,.84))!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
  border-bottom:0!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  min-height:54px!important;
  height:54px!important;
  grid-template-rows:27px 15px 17px!important;
  justify-items:center!important;
  align-items:center!important;
  padding:0 4px!important;
}
body.is-geo-view .geo-map-stats .geo-stat-icon{
  width:33px!important;
  height:25px!important;
  min-width:33px!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.is-geo-view .geo-map-stats .geo-icon-trashbag,
body.is-geo-view .geo-map-stats .geo-icon-shell{
  width:29px!important;
  height:29px!important;
  min-width:29px!important;
}
body.is-geo-view .geo-map-stats small{
  font-size:8px!important;
  line-height:1!important;
}
body.is-geo-view .geo-map-stats strong{
  font-size:15px!important;
  line-height:1!important;
}
body.is-geo-view .geo-layer-panel{
  right:58px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-topbar{left:6px!important;right:6px!important;height:38px!important;min-height:38px!important;grid-template-columns:minmax(78px,1fr) auto!important;}
  body.is-geo-view .geo-topbar-title{height:38px!important;min-height:38px!important;font-size:12px!important;}
  body.is-geo-view .geo-login-link.geo-icon-only,
  body.is-geo-view .geo-main-btn.geo-icon-only,
  body.is-geo-view .geo-menu-toggle,
  body.is-geo-view .geo-target-btn,
  body.is-geo-view .geo-layer-toggle{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;}
  body.is-geo-view .geo-start-main{height:38px!important;min-height:38px!important;min-width:62px!important;padding:0 11px!important;}
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 196px)!important;}
  body.is-geo-view .leaflet-control-zoom a{width:38px!important;height:38px!important;line-height:36px!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;gap:9px!important;}
  body.is-geo-view .geo-map-stats{bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;height:66px!important;min-height:66px!important;padding:6px 4px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-item{height:52px!important;min-height:52px!important;grid-template-rows:25px 15px 16px!important;padding:0 3px!important;}
  body.is-geo-view .geo-map-stats .geo-stat-icon{width:30px!important;height:23px!important;min-width:30px!important;}
  body.is-geo-view .geo-map-stats .geo-icon-trashbag,
  body.is-geo-view .geo-map-stats .geo-icon-shell{width:26px!important;height:26px!important;min-width:26px!important;}
  body.is-geo-view .geo-map-stats small{font-size:7.3px!important;}
  body.is-geo-view .geo-map-stats strong{font-size:14px!important;}
}

/* GEO v188 confirmed micro-fix: header/menu/control/footer alignment */
body.is-geo-view .geo-topbar-title{
  transform:translateY(-3px)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.is-geo-view .geo-topbar-main{gap:7px!important;}
body.is-geo-view .geo-login-link.geo-icon-only,
body.is-geo-view .geo-main-btn.geo-icon-only,
body.is-geo-view .geo-menu-toggle{
  width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;border-radius:12px!important;
}
body.is-geo-view .geo-start-main{height:36px!important;min-height:36px!important;min-width:64px!important;padding:0 12px!important;border-radius:12px!important;}
body.is-geo-view .geo-menu-panel{width:220px!important;max-width:calc(100vw - 18px)!important;padding:6px!important;border-radius:12px!important;}
body.is-geo-view .geo-menu-panel .geo-menu-btn{height:36px!important;min-height:36px!important;grid-template-columns:24px minmax(0,1fr) 11px!important;gap:7px!important;padding:0 7px!important;align-items:center!important;}
body.is-geo-view .geo-menu-icon{width:22px!important;height:22px!important;min-width:22px!important;}
body.is-geo-view .geo-menu-arrow{font-size:15px!important;}
body.is-geo-view .geo-menu-subpanel{margin:0 0 5px 0!important;padding:7px 8px!important;border-radius:10px!important;}
body.is-geo-view .geo-eco-confirm{display:grid!important;grid-template-columns:1fr auto!important;gap:7px!important;align-items:center!important;}
body.is-geo-view .geo-eco-confirm.hidden{display:none!important;}
body.is-geo-view .geo-eco-confirm button{min-height:28px!important;padding:0 10px!important;border-radius:9px!important;}
body.is-geo-view .geo-mine-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}
body.is-geo-view .geo-mine-grid div{min-height:48px!important;padding:7px!important;}
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{top:auto!important;left:auto!important;right:10px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 152px)!important;z-index:740!important;}
body.is-geo-view .leaflet-control-zoom{width:42px!important;border-radius:12px!important;}
body.is-geo-view .leaflet-control-zoom a{width:42px!important;height:38px!important;line-height:37px!important;}
body.is-geo-view .geo-side-controls{right:10px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;gap:10px!important;}
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border-radius:12px!important;}
body.is-geo-view .geo-map-stats{left:0!important;right:0!important;width:100%!important;bottom:calc(env(safe-area-inset-bottom,0px) + 18px)!important;border-radius:0!important;height:68px!important;min-height:68px!important;padding:7px 5px!important;}
body.is-geo-view .geo-map-stats .geo-stat-item{min-height:54px!important;height:54px!important;}
@media (max-width:390px){
  body.is-geo-view .geo-topbar-title{transform:translateY(-2px)!important;}
  body.is-geo-view .geo-login-link.geo-icon-only,
  body.is-geo-view .geo-main-btn.geo-icon-only,
  body.is-geo-view .geo-menu-toggle{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;}
  body.is-geo-view .geo-start-main{height:34px!important;min-height:34px!important;min-width:60px!important;}
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 150px)!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:calc(env(safe-area-inset-bottom,0px) + 102px)!important;}
}

/* === Geofishing BETA v191 confirmed changes: menu, eco flow, controls, footer === */
body.is-geo-view::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1500;
  box-shadow:inset 0 0 0 3px rgba(67,126,83,.46), inset 0 0 18px rgba(76,148,96,.34);
}
body.is-geo-view .geo-topbar{
  top:8px!important;
  left:8px!important;
  right:8px!important;
}
body.is-geo-view .geo-topbar-title{
  transform:none!important;
  align-self:start!important;
}
body.is-geo-view .geo-menu-panel .geo-menu-btn{
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  gap:8px!important;
}
body.is-geo-view .geo-eco-btn{
  margin-top:0!important;
}
body.is-geo-view .geo-menu-subpanel{
  margin:0 0 6px 0!important;
}
body.is-geo-view .geo-eco-confirm{
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:8px!important;
  min-height:38px!important;
}
body.is-geo-view .geo-eco-confirm button,
.geo-simple-modal-actions button{
  border:0;
  border-radius:10px;
  min-height:32px;
  padding:0 14px;
  color:#062012;
  font-weight:900;
  background:linear-gradient(135deg,#76d88e,#4fbf76);
  box-shadow:0 8px 18px rgba(32,98,54,.24);
}
body.is-geo-view .geo-mine-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
}
body.is-geo-view .geo-mine-grid div{
  display:grid!important;
  grid-template-columns:30px 52px 1fr!important;
  align-items:center!important;
  min-height:42px!important;
  padding:7px 8px!important;
  text-align:left!important;
}
body.is-geo-view .geo-mine-grid small{
  justify-self:start!important;
}
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 172px)!important;
}
body.is-geo-view .leaflet-control-zoom{
  display:grid!important;
  gap:8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.is-geo-view .leaflet-control-zoom a,
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  border-radius:12px!important;
}
body.is-geo-view .leaflet-control-zoom a{
  line-height:40px!important;
}
body.is-geo-view .geo-side-controls{
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 92px)!important;
  gap:8px!important;
}
body.is-geo-view .geo-map-stats{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  min-height:86px!important;
  height:86px!important;
  padding:8px 5px calc(env(safe-area-inset-bottom,0px) + 12px)!important;
  border-radius:0!important;
  background:linear-gradient(180deg,rgba(10,24,16,.86),rgba(5,12,8,.96))!important;
}
body.is-geo-view .leaflet-control-attribution{
  background:rgba(5,12,8,.58)!important;
  color:rgba(235,255,238,.84)!important;
  border-radius:8px!important;
  padding:2px 5px!important;
  filter:brightness(.86)!important;
}
body.is-geo-view .leaflet-control-attribution a{color:rgba(235,255,238,.92)!important;}
.geo-simple-modal{
  position:fixed;
  inset:0;
  z-index:2100;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(2,8,5,.58);
  backdrop-filter:blur(5px);
}
.geo-simple-modal-card{
  width:min(440px,calc(100vw - 34px));
  border:1px solid rgba(126,218,147,.25);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(16,34,22,.97),rgba(8,17,11,.98));
  color:#ecfff0;
  box-shadow:0 22px 60px rgba(0,0,0,.42);
  padding:18px;
}
.geo-simple-modal-text{
  white-space:pre-line;
  font-size:14px;
  line-height:1.45;
  font-weight:700;
}
.geo-simple-modal-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:16px;
}
.geo-wow-layer{
  position:fixed;
  inset:0;
  z-index:2050;
  pointer-events:none;
  opacity:0;
  transition:opacity .22s ease;
  overflow:hidden;
}
.geo-wow-layer.is-visible{opacity:1;}
.geo-wow-stars span{
  position:absolute;
  left:var(--x);
  top:var(--y);
  color:#ffd76a;
  font-size:clamp(13px,4vw,24px);
  text-shadow:0 0 13px rgba(255,215,106,.86);
  animation:geoStarFloat 4s ease-out var(--d) both;
}
@keyframes geoStarFloat{
  0%{transform:translateY(18px) scale(.55) rotate(0deg);opacity:0;}
  20%{opacity:1;}
  100%{transform:translateY(-36px) scale(1.15) rotate(70deg);opacity:0;}
}
.geo-wow-worm{
  display:grid;
  place-items:center;
  color:#ffd76a;
  background:radial-gradient(circle at center,rgba(255,215,106,.20),transparent 42%);
}
.geo-wow-glow{
  width:min(210px,54vw);
  filter:drop-shadow(0 0 14px rgba(255,215,106,.82));
  animation:geoWormWave 2s ease-in-out both;
}
.geo-wow-worm-svg{display:block;width:100%;height:auto;}
@keyframes geoWormWave{
  0%{transform:translateY(18px) scale(.72) rotate(-6deg);opacity:0;}
  20%{opacity:1;}
  55%{transform:translateY(0) scale(1.03) rotate(4deg);}
  100%{transform:translateY(-10px) scale(.95) rotate(0deg);opacity:0;}
}
@media (max-width:420px){
  body.is-geo-view .geo-topbar{top:6px!important;left:6px!important;right:6px!important;}
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{right:8px!important;bottom:158px!important;}
  body.is-geo-view .geo-side-controls{right:8px!important;bottom:82px!important;}
  body.is-geo-view .geo-map-stats{min-height:82px!important;height:82px!important;}
}

/* GEO v191 bugfix: footer visibility, exact right-control sizing, map marker color */
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 184px)!important;
}
body.is-geo-view .leaflet-control-zoom{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  margin:0!important;
}
body.is-geo-view .leaflet-control-zoom a,
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  box-sizing:border-box!important;
  border-radius:12px!important;
  background:rgba(8,15,13,.94)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.34)!important;
  opacity:1!important;
}
body.is-geo-view .leaflet-control-zoom a{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  color:#fff!important;
}
body.is-geo-view .geo-side-controls{
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 92px)!important;
  gap:8px!important;
}
body.is-geo-view .geo-map-stats{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  min-height:92px!important;
  height:92px!important;
  padding:8px 6px calc(env(safe-area-inset-bottom,0px) + 16px)!important;
  border-radius:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  background:linear-gradient(180deg,rgba(10,24,16,.90),rgba(5,12,8,.98))!important;
  overflow:visible!important;
}
body.is-geo-view .geo-map-stats .geo-stat-item{
  height:66px!important;
  min-height:66px!important;
  grid-template-rows:30px 18px 18px!important;
  padding:0 4px!important;
  box-sizing:border-box!important;
}
body.is-geo-view .geo-map-stats .geo-stat-icon{
  width:32px!important;
  height:28px!important;
  min-width:32px!important;
  min-height:28px!important;
}
body.is-geo-view .geo-map-stats .geo-icon-trashbag,
body.is-geo-view .geo-map-stats .geo-icon-shell{
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
}
body.is-geo-view .geo-map-stats small{
  font-size:8px!important;
  line-height:1.05!important;
  max-width:100%!important;
}
body.is-geo-view .geo-map-stats strong{
  font-size:18px!important;
  line-height:1!important;
  margin-top:0!important;
}
body.is-geo-view .leaflet-control-attribution{
  bottom:1px!important;
  right:2px!important;
  background:rgba(5,12,8,.68)!important;
  color:rgba(235,255,238,.88)!important;
  border-radius:7px!important;
  backdrop-filter:blur(3px)!important;
}
@media (max-width:390px){
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
    right:8px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 188px)!important;
  }
  body.is-geo-view .leaflet-control-zoom a,
  body.is-geo-view .geo-target-btn,
  body.is-geo-view .geo-layer-toggle{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
    border-radius:11px!important;
  }
  body.is-geo-view .geo-side-controls{
    right:8px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 98px)!important;
    gap:8px!important;
  }
  body.is-geo-view .geo-map-stats{
    bottom:0!important;
    height:90px!important;
    min-height:90px!important;
    padding:8px 4px calc(env(safe-area-inset-bottom,0px) + 16px)!important;
  }
  body.is-geo-view .geo-map-stats .geo-stat-item{
    height:64px!important;
    min-height:64px!important;
    grid-template-rows:29px 17px 18px!important;
    padding:0 3px!important;
  }
  body.is-geo-view .geo-map-stats small{font-size:7.4px!important;}
  body.is-geo-view .geo-map-stats strong{font-size:18px!important;}
}

/* GEO v191 confirmed alignment fix: lift footer and right controls only */
body.is-geo-view .geo-map-stats{
  bottom:24px!important;
}
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  top:auto!important;
  left:auto!important;
  right:10px!important;
  bottom:218px!important;
  margin:0!important;
}
body.is-geo-view .leaflet-control-zoom{
  width:42px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:8px!important;
  margin:0!important;
}
body.is-geo-view .geo-side-controls{
  top:auto!important;
  right:10px!important;
  bottom:118px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:8px!important;
  transform:none!important;
}
body.is-geo-view .leaflet-control-zoom a,
body.is-geo-view .geo-target-btn,
body.is-geo-view .geo-layer-toggle{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  flex:0 0 42px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-map-stats{
    bottom:24px!important;
  }
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
    right:8px!important;
    bottom:212px!important;
  }
  body.is-geo-view .leaflet-control-zoom{
    width:38px!important;
    gap:8px!important;
  }
  body.is-geo-view .geo-side-controls{
    right:8px!important;
    bottom:120px!important;
    gap:8px!important;
  }
  body.is-geo-view .leaflet-control-zoom a,
  body.is-geo-view .geo-target-btn,
  body.is-geo-view .geo-layer-toggle{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
    flex-basis:38px!important;
  }
}

/* GEO v191 bottom-title correction: move title to dark footer strip only */
body.is-geo-view .geo-map-wrap-fullscreen{
  position:relative!important;
}
body.is-geo-view .geo-map-wrap-fullscreen::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:24px;
  background:linear-gradient(180deg,rgba(10,24,16,.94),rgba(5,12,8,.99))!important;
  z-index:700;
  pointer-events:none;
}
body.is-geo-view .geo-topbar{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  grid-template-columns:none!important;
}
body.is-geo-view .geo-topbar-main{
  margin-left:auto!important;
}
body.is-geo-view .geo-bottom-title{
  position:absolute!important;
  left:8px!important;
  bottom:3px!important;
  height:18px!important;
  min-height:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  z-index:730!important;
  pointer-events:none!important;
  color:#fff!important;
  text-shadow:0 2px 9px rgba(0,0,0,.55)!important;
  font:900 13px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
}
body.is-geo-view .geo-bottom-title span{
  display:block!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-bottom-title{
    left:6px!important;
    bottom:3px!important;
    font-size:12px!important;
  }
}


/* GEO layer panel: extra approved map buttons */
body.is-geo-view .geo-layer-panel{
  width:172px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
}
body.is-geo-view .geo-layer-choice{
  height:36px!important;
  min-height:36px!important;
}
body.is-geo-view .geo-layer-choice span:last-child{
  white-space:nowrap!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-layer-panel{
    right:49px!important;
    width:168px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 100px)!important;
  }
  body.is-geo-view .geo-layer-choice{
    height:34px!important;
    min-height:34px!important;
    font-size:11px!important;
  }
}

/* GEO map overlays: approved stronger visibility + raised map layer panel */
body.is-geo-view .geo-layer-panel{
  bottom:calc(env(safe-area-inset-bottom,0px) + 150px)!important;
}
body.is-geo-view .geo-ban-popup{
  color:#17221d!important;
  font:700 12px/1.35 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-ban-popup strong{
  font-weight:900!important;
}
body.is-geo-view .geo-ban-popup a{
  color:#0f6b43!important;
  font-weight:900!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-layer-panel{
    right:49px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 148px)!important;
  }
}

/* === v202 focused updates: readable ban popup and legacy navigation styling === */
body.is-geo-view .geo-ban-popup{
  color:#ffffff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
}
body.is-geo-view .geo-ban-popup strong{
  color:#ffffff!important;
}
body.is-geo-view .geo-ban-popup a{
  color:#d8ffe3!important;
  text-shadow:0 1px 2px rgba(0,0,0,.45)!important;
}




@media (max-width:520px){
}


/* === v205 user-approved updates: depth overlay + waterbody info popups/labels === */
#geoMap .geo-waterbody-label{
  display:none!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(6,12,13,.74)!important;
  color:#ffffff!important;
  box-shadow:0 4px 12px rgba(0,0,0,.24)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.65)!important;
  font:900 11px/1.1 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  pointer-events:none!important;
}
#geoMap.geo-show-waterbody-labels .geo-waterbody-label{
  display:block!important;
}
#geoMap .geo-river-label{
  background:rgba(0,70,92,.70)!important;
}
#geoMap .geo-lake-label{
  background:rgba(0,74,95,.72)!important;
}
body.is-geo-view .geo-waterbody-popup{
  min-width:220px!important;
  max-width:320px!important;
  color:#ffffff!important;
  font:500 12px/1.38 Inter,system-ui,sans-serif!important;
  text-shadow:0 1px 1px rgba(0,0,0,.35)!important;
}

body.is-geo-view .geo-waterbody-card{
  background:rgba(6,18,20,.78)!important;
  border:1px solid rgba(216,255,227,.16)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  padding:10px 12px!important;
}
body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content-wrapper{
  background:rgba(4,12,14,.18)!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content{
  margin:6px!important;
}
body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-tip{
  background:rgba(6,18,20,.78)!important;
}

body.is-geo-view .geo-waterbody-card > strong{
  display:block!important;
  margin:0 0 7px!important;
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:760!important;
}
body.is-geo-view .geo-waterbody-popup div{
  margin:2px 0!important;
}
body.is-geo-view .geo-waterbody-popup a{
  color:#d8ffe3!important;
  font-weight:650!important;
}
body.is-geo-view .geo-waterbody-section{
  margin-top:8px!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
}
body.is-geo-view .geo-waterbody-section > strong{
  display:block!important;
  margin-bottom:4px!important;
  color:#d8ffe3!important;
  font-weight:720!important;
}
body.is-geo-view .geo-waterbody-note{
  margin-top:5px!important;
  color:rgba(255,255,255,.82)!important;
  font-weight:500!important;
}
body.is-geo-view .geo-waterbody-restriction + .geo-waterbody-restriction{
  margin-top:7px!important;
  padding-top:6px!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}

/* === v251 Etapp A: lightweight waterbody and ban popups === */
body.is-geo-view .geo-waterbody-popup,
body.is-geo-view .geo-ban-popup{
  color:#ffffff!important;
  font:400 12px/1.38 Inter,system-ui,sans-serif!important;
  text-shadow:none!important;
}

body.is-geo-view .geo-waterbody-card,
body.is-geo-view .geo-ban-popup{
  background:rgba(6,18,20,.74)!important;
  border:1px solid rgba(216,255,227,.14)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  padding:10px 12px!important;
}

body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content-wrapper,
body.is-geo-view .geo-ban-popup-wrap .leaflet-popup-content-wrapper{
  background:transparent!important;
  border-radius:16px!important;
  box-shadow:none!important;
  padding:0!important;
}

body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content,
body.is-geo-view .geo-ban-popup-wrap .leaflet-popup-content{
  margin:6px!important;
}

body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-tip,
body.is-geo-view .geo-ban-popup-wrap .leaflet-popup-tip{
  background:rgba(6,18,20,.74)!important;
  box-shadow:none!important;
}

body.is-geo-view .geo-waterbody-card > strong,
body.is-geo-view .geo-ban-popup > strong{
  display:block!important;
  margin:0 0 7px!important;
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
}

body.is-geo-view .geo-waterbody-popup strong,
body.is-geo-view .geo-ban-popup strong{
  color:#ffffff!important;
  font-weight:650!important;
}

body.is-geo-view .geo-waterbody-popup a,
body.is-geo-view .geo-ban-popup a{
  color:#d8ffe3!important;
  font-weight:560!important;
  text-shadow:none!important;
}

/* === v252: ban popup clarification sections === */
body.is-geo-view .geo-ban-section{
  margin-top:8px!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}

body.is-geo-view .geo-ban-section > strong{
  display:block!important;
  margin-bottom:3px!important;
  font-size:12px!important;
}

body.is-geo-view .geo-ban-exception{
  background:rgba(42,95,55,.22)!important;
  border:1px solid rgba(176,255,194,.18)!important;
  border-radius:10px!important;
  padding:7px 8px!important;
}

body.is-geo-view .geo-ban-popup ul{
  margin:5px 0 0 16px!important;
  padding:0!important;
}

body.is-geo-view .geo-ban-popup li{
  margin:1px 0!important;
}

body.is-geo-view .geo-ban-note{
  margin-top:7px!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:rgba(255,255,255,.84)!important;
}

/* === v253: Viljandi ligipääsu testkihi popup === */
body.is-geo-view .geo-access-popup{
  min-width:220px!important;
  max-width:300px!important;
  color:#ffffff!important;
  font:400 12px/1.38 Inter,system-ui,sans-serif!important;
  background:rgba(6,18,20,.76)!important;
  border:1px solid rgba(216,255,227,.15)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  padding:10px 12px!important;
}
body.is-geo-view .geo-access-popup-wrap .leaflet-popup-content-wrapper{
  background:transparent!important;
  border-radius:16px!important;
  box-shadow:none!important;
  padding:0!important;
}
body.is-geo-view .geo-access-popup-wrap .leaflet-popup-content{
  margin:6px!important;
}
body.is-geo-view .geo-access-popup-wrap .leaflet-popup-tip{
  background:rgba(6,18,20,.76)!important;
  box-shadow:none!important;
}
body.is-geo-view .geo-access-popup > strong{
  display:block!important;
  margin:0 0 6px!important;
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:650!important;
}
body.is-geo-view .geo-access-status{
  margin:0 0 7px!important;
  font-weight:650!important;
}
body.is-geo-view .geo-access-green .geo-access-status{color:#42f58a!important;}
body.is-geo-view .geo-access-yellow .geo-access-status{color:#ffd34d!important;}
body.is-geo-view .geo-access-red .geo-access-status{color:#ff7474!important;}
body.is-geo-view .geo-access-blue .geo-access-status{color:#7adfff!important;}
body.is-geo-view .geo-access-lightblue .geo-access-status{color:#7adfff!important;}
body.is-geo-view .geo-access-message{
  margin-top:7px!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}
body.is-geo-view .geo-access-note{
  margin-top:7px!important;
  color:rgba(255,255,255,.82)!important;
  font-size:11px!important;
  line-height:1.35!important;
}


/* Viljandi depth test layer */
.geo-viljandi-depth-popup{
  color:#f4fbff;
  font-size:13px;
  line-height:1.42;
  padding:10px 11px;
  border-radius:12px;
  background:rgba(7,22,34,.88);
  border:1px solid rgba(122,223,255,.28);
}
.geo-viljandi-depth-popup strong{display:block;margin-bottom:5px;font-weight:600;color:#ffffff;}
.geo-depth-message{margin-top:5px;color:#d8f7ff;}
.geo-depth-note{margin-top:7px;color:rgba(244,251,255,.72);font-size:12px;}
.geo-viljandi-depth-popup-wrap .leaflet-popup-content-wrapper{background:transparent!important;box-shadow:none!important;padding:0!important;border-radius:12px!important;}
.geo-viljandi-depth-popup-wrap .leaflet-popup-content{margin:0!important;}
.geo-viljandi-depth-popup-wrap .leaflet-popup-tip{background:rgba(7,22,34,.88)!important;box-shadow:none!important;}

/* v258: Viljandi järve täpne raster-hover ainult väikese numbrina */
.geo-depth-hover-tooltip{
  position:absolute!important;
  z-index:650!important;
  pointer-events:none!important;
  min-width:0!important;
  max-width:74px!important;
  padding:3px 6px!important;
  border-radius:8px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  background:rgba(4,18,28,.62)!important;
  box-shadow:none!important;
  color:#ffffff!important;
  font:700 12px/1.15 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  transform:translate3d(0,0,0)!important;
}

/* v269: live-sihik ainult sügavuse mõõtmiseks */
.geo-depth-radar-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.geo-depth-radar-marker{
  position:relative!important;
  width:54px!important;
  height:54px!important;
  border-radius:50%!important;
  transform:translate3d(0,0,0)!important;
  pointer-events:none!important;
  cursor:none!important;
  opacity:.96!important;
  overflow:visible!important;
}
.geo-depth-radar-marker::before,
.geo-depth-radar-marker::after{
  content:none!important;
}
.geo-depth-radar-dial{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:18px!important;
  height:18px!important;
  transform:translate(-50%,-50%)!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  z-index:3!important;
}
.geo-depth-radar-cross::before,
.geo-depth-radar-cross::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  background:rgba(255,196,52,.92)!important;
  transform:translate(-50%,-50%)!important;
  border-radius:1px!important;
  box-shadow:0 0 2px rgba(0,0,0,.42)!important;
}
.geo-depth-radar-cross::before{width:12px!important;height:1px!important;}
.geo-depth-radar-cross::after{width:1px!important;height:12px!important;}
.geo-depth-radar-value{
  position:absolute!important;
  left:50%!important;
  top:4px!important;
  transform:translateX(-50%)!important;
  min-width:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.97)!important;
  font:400 12px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  white-space:nowrap!important;
  z-index:5!important;
  text-shadow:0 1px 3px rgba(0,0,0,.85), 0 0 8px rgba(4,18,28,.5)!important;
  box-shadow:none!important;
}
.geo-depth-radar-warning{
  position:absolute!important;
  left:50%!important;
  top:-34px!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:230px!important;
  padding:4px 8px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,220,96,.48)!important;
  background:rgba(7,18,21,.78)!important;
  color:#fff0b8!important;
  font:800 11px/1.15 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  white-space:normal!important;
  text-shadow:0 1px 3px rgba(0,0,0,.85)!important;
  box-shadow:0 4px 12px rgba(0,0,0,.28)!important;
  z-index:7!important;
  pointer-events:none!important;
  opacity:1!important;
  transition:opacity 1.2s ease, transform 1.2s ease!important;
}
.geo-depth-radar-warning.is-fading{
  opacity:0!important;
  transform:translateX(-50%) translateY(-5px)!important;
}
.geo-depth-radar-warning.is-strict{
  border-color:rgba(255,209,88,.62)!important;
  background:rgba(43,25,18,.86)!important;
  color:#ffe7a6!important;
}
.geo-depth-radar-label-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
}
.geo-depth-radar-label-icon span{
  display:inline-block!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:rgba(255,255,255,.72)!important;
  font:400 8px/1 Inter,system-ui,sans-serif!important;
  text-shadow:0 1px 3px rgba(0,0,0,.72)!important;
  white-space:nowrap!important;
}
.geo-depth-radar-ring{
  pointer-events:none!important;
  filter:drop-shadow(0 0 1px rgba(0,0,0,.18))!important;
}
.geo-depth-radar-north-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.geo-depth-radar-north-marker{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  color:rgba(188,246,255,.92)!important;
  font:400 10px/1 Inter,system-ui,sans-serif!important;
  text-shadow:0 1px 3px rgba(0,0,0,.72)!important;
  pointer-events:none!important;
}
.geo-depth-radar-triangle{
  display:block!important;
  width:auto!important;
  height:auto!important;
  border:0!important;
  color:rgba(255,196,52,.96)!important;
  font:300 18px/.85 Inter,system-ui,sans-serif!important;
  letter-spacing:-.08em!important;
  transform:rotate(-90deg)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.28))!important;
}
.geo-depth-radar-triangle::before{content:">"!important;}
@media (max-width: 640px){
  .geo-depth-radar-marker{width:48px!important;height:48px!important;}
  .geo-depth-radar-dial{width:16px!important;height:16px!important;}
  .geo-depth-radar-cross::before{width:10px!important;height:1px!important;}
  .geo-depth-radar-cross::after{width:1px!important;height:10px!important;}
  .geo-depth-radar-value{top:2px!important;font-size:11px!important;}
  .geo-depth-radar-label-icon span{font-size:8px!important;}
  .geo-depth-radar-north-marker{font-size:9px!important;}
  .geo-depth-radar-triangle{font-size:16px!important;}
}

/* v274: Geofishing seadete menüü raamistik */
.geo-settings-panel{
  display:grid;
  gap:8px;
  padding:9px;
}
.geo-settings-section{
  display:grid;
  gap:3px;
  padding:9px 10px;
  border-radius:14px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.10);
}
.geo-settings-section strong{
  color:rgba(255,255,255,.92);
  font:700 12px/1.15 Inter,system-ui,sans-serif;
  letter-spacing:.02em;
}
.geo-settings-section small{
  color:rgba(255,255,255,.62);
  font:500 11px/1.35 Inter,system-ui,sans-serif;
}

/* v275: Geofishing spidomeeter */
.geo-speedometer{
  position:absolute;
  z-index:690;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(3,12,19,.56);
  color:#fff;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
  text-shadow:0 1px 3px rgba(0,0,0,.65);
  pointer-events:auto;
}
.geo-speedometer.speed-neutral{
  background:rgba(3,12,19,.56);
  color:#fff;
}
.geo-speedometer.speed-ok{
  background:rgba(30,145,72,.72);
  color:#fff;
}
.geo-speedometer.speed-warning{
  background:rgba(190,38,38,.76);
  color:#fff;
}
.geo-speedometer-main{
  top:76px;
  left:50%;
  transform:translateX(-50%);
  width:3cm;
  min-width:112px;
  height:2cm;
  min-height:70px;
  border-radius:20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
}
.geo-speedometer-mini{
  top:76px;
  left:12px;
  min-width:78px;
  min-height:44px;
  border-radius:16px;
  padding:7px 10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  cursor:pointer;
}
.geo-speedometer .geo-speed-value{
  font:800 24px/1 Inter,system-ui,sans-serif;
  letter-spacing:-.04em;
}
.geo-speedometer .geo-speed-unit{
  font:600 10px/1 Inter,system-ui,sans-serif;
  letter-spacing:.04em;
  opacity:.84;
}
.geo-speedometer-main .geo-speed-value{
  font-size:30px;
}
.geo-speedometer-main .geo-speed-unit{
  font-size:11px;
}
.geo-settings-options{
  display:grid;
  grid-template-columns:1fr;
  gap:6px;
  margin-top:6px;
}
.geo-settings-options-two{
  grid-template-columns:1fr 1fr;
}
.geo-settings-option{
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.78);
  padding:8px 9px;
  font:700 11px/1.15 Inter,system-ui,sans-serif;
  cursor:pointer;
  text-align:center;
}
.geo-settings-option.is-active{
  background:rgba(98,184,216,.24);
  border-color:rgba(98,184,216,.42);
  color:#fff;
}
@media (max-width:640px){
  .geo-speedometer-main{
    top:72px;
    width:3cm;
    height:1.85cm;
    min-height:64px;
    border-radius:18px;
  }
  .geo-speedometer-mini{
    top:72px;
    left:10px;
    min-width:72px;
    min-height:40px;
    padding:6px 9px;
  }
  .geo-speedometer-main .geo-speed-value{font-size:27px;}
  .geo-speedometer .geo-speed-value{font-size:21px;}
}

/* v276: spidomeetri parandused ja lihtsam seadete paneel */
.geo-topbar-main{
  align-items:center;
}
.geo-topbar-main .geo-speedometer-mini{
  position:relative;
  top:auto;
  left:auto;
  min-width:0;
  min-height:0;
  height:44px;
  padding:0 12px;
  border-radius:16px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  flex:0 0 auto;
  box-shadow:0 10px 28px rgba(0,0,0,.16);
}
.geo-topbar-main .geo-speedometer-mini.hidden{
  display:none!important;
}
.geo-topbar-main .geo-speedometer-mini .geo-speed-value{
  font:800 17px/1 Inter,system-ui,sans-serif;
  letter-spacing:-.04em;
}
.geo-topbar-main .geo-speedometer-mini .geo-speed-unit{
  font:600 9px/1 Inter,system-ui,sans-serif;
  opacity:.82;
}
.geo-speedometer-main{
  top:76px;
}
.geo-settings-panel{
  padding:6px!important;
  gap:6px!important;
  max-height:min(62vh, 430px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.geo-settings-section{
  padding:7px 6px!important;
  border:0!important;
  background:transparent!important;
  gap:6px!important;
}
.geo-settings-section strong{
  display:block;
  padding:2px 2px 0;
  font:700 12px/1.1 Inter,system-ui,sans-serif;
}
.geo-settings-section small{
  display:block;
  padding:0 2px;
  opacity:.72;
}
.geo-settings-options{
  display:flex!important;
  flex-wrap:wrap;
  gap:6px!important;
  margin-top:2px!important;
}
.geo-settings-options-two{
  display:flex!important;
}
.geo-settings-option{
  flex:1 1 auto;
  min-width:86px;
  border-radius:999px!important;
  padding:8px 10px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  color:rgba(255,255,255,.78)!important;
  font:700 11px/1 Inter,system-ui,sans-serif!important;
}
.geo-settings-option.is-active{
  background:rgba(98,184,216,.23)!important;
  border-color:rgba(98,184,216,.45)!important;
  color:#fff!important;
}
@media (max-width:640px){
  .geo-topbar-main .geo-speedometer-mini{
    height:42px;
    padding:0 10px;
    border-radius:15px;
  }
  .geo-topbar-main .geo-speedometer-mini .geo-speed-value{
    font-size:16px;
  }
  .geo-speedometer-main{
    top:72px;
  }
  .geo-settings-panel{
    max-height:min(58vh, 390px);
  }
}

/* v279: spidomeetri asukoht ja seadete akordion */
.geo-speedometer-main.hidden{
  display:none!important;
}
.geo-speedometer-mini.hidden{
  display:flex!important;
}
.geo-speedometer-mini{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  z-index:760!important;
  height:38px!important;
  min-height:38px!important;
  min-width:92px!important;
  width:auto!important;
  padding:0 12px!important;
  border-radius:14px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  cursor:default!important;
}
.geo-speedometer-mini .geo-speed-value{
  font:800 16px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:-.03em!important;
}
.geo-speedometer-mini .geo-speed-unit{
  font:700 10px/1 Inter,system-ui,sans-serif!important;
  opacity:.86!important;
}
.geo-settings-panel{
  padding:4px!important;
  gap:3px!important;
  max-height:min(66vh, 460px)!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.geo-settings-section{
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
}
.geo-settings-section-toggle{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:0;
  border-radius:12px;
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.9);
  padding:0 10px;
  font:800 12px/1 Inter,system-ui,sans-serif;
  text-align:left;
  cursor:pointer;
}
.geo-settings-section-toggle[aria-expanded="true"]{
  background:rgba(82,132,82,.28);
}
.geo-settings-section-toggle[aria-expanded="true"] .geo-menu-arrow{
  transform:rotate(90deg);
}
.geo-settings-section-body{
  display:grid;
  gap:6px;
  padding:7px 2px 9px;
}
.geo-settings-section-body.hidden{
  display:none!important;
}
.geo-settings-options{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0!important;
}
.geo-settings-option{
  min-height:34px!important;
  border-radius:12px!important;
}
.geo-settings-placeholder{
  padding:8px 10px;
  color:rgba(255,255,255,.64);
  font:600 11px/1.35 Inter,system-ui,sans-serif;
}
@media (max-width:640px){
  .geo-speedometer-mini{
    top:8px!important;
    left:8px!important;
    height:36px!important;
    min-height:36px!important;
    min-width:84px!important;
    padding:0 10px!important;
  }
  .geo-speedometer-mini .geo-speed-value{
    font-size:15px!important;
  }
  .geo-speedometer-mini .geo-speed-unit{
    font-size:9px!important;
  }
}

/* v280: trolling mode värviloogika */
.geo-speedometer.speed-neutral{
  background:rgba(3,12,19,.56)!important;
  color:#fff!important;
}
.geo-speedometer.speed-ok{
  background:rgba(24,132,73,.78)!important;
  border-color:rgba(96,230,150,.42)!important;
  color:#fff!important;
}
.geo-speedometer.speed-warning{
  background:rgba(185,38,38,.82)!important;
  border-color:rgba(255,120,120,.46)!important;
  color:#fff!important;
}
.geo-settings-trolling-options{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
}
.geo-settings-trolling-options .geo-settings-option:first-child{
  grid-column:1 / -1;
}

/* v281: veekogupõhine sügavuse korrigeerimine */
.geo-depth-adjust-card{
  display:grid;
  gap:8px;
  padding:2px;
}
.geo-depth-adjust-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:4px 2px 2px;
  color:rgba(255,255,255,.9);
  font:800 12px/1 Inter,system-ui,sans-serif;
}
.geo-depth-adjust-head strong{
  font:800 12px/1 Inter,system-ui,sans-serif;
  color:rgba(255,255,255,.84);
}
.geo-depth-adjust-head strong.is-adjusted{
  color:#fff;
}
.geo-depth-adjust-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
.geo-depth-adjust-reset{
  width:100%;
}

/* v282: paadirežiimi sügavus ja suunanoole marker */
.geo-speedometer-mini{
  min-width:132px!important;
}
.geo-speedometer-mini .geo-speed-depth{
  font:700 10px/1 Inter,system-ui,sans-serif!important;
  color:rgba(255,255,255,.94)!important;
  white-space:nowrap!important;
}
.geo-speedometer-mini .geo-speed-divider{
  font:700 11px/1 Inter,system-ui,sans-serif!important;
  color:rgba(255,255,255,.58)!important;
}
.geo-boat-heading-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
}
.geo-boat-heading-triangle{
  width:0!important;
  height:0!important;
  border-left:8px solid transparent!important;
  border-right:8px solid transparent!important;
  border-bottom:18px solid rgba(255,196,52,.96)!important;
  filter:drop-shadow(0 1px 3px rgba(0,0,0,.62))!important;
  transform-origin:50% 58%!important;
}
@media (max-width:640px){
  .geo-speedometer-mini{
    min-width:124px!important;
  }
  .geo-speedometer-mini .geo-speed-depth{
    font-size:9px!important;
  }
}

/* v283: paadirežiimi GPS-silumine ja näidikute asend */
.geo-topbar{
  grid-template-columns:156px minmax(0, auto)!important;
  gap:6px!important;
  align-items:center!important;
}
.geo-speedometer-mini{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  justify-self:start!important;
  align-self:center!important;
  width:152px!important;
  min-width:152px!important;
  max-width:152px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 8px!important;
  border-radius:17px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  white-space:nowrap!important;
}
.geo-speedometer-mini .geo-speed-value{
  font:800 16px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:-.035em!important;
}
.geo-speedometer-mini .geo-speed-unit,
.geo-speedometer-mini .geo-speed-depth{
  font:700 10px/1 Inter,system-ui,sans-serif!important;
}
.geo-speedometer-mini .geo-speed-divider{
  font:700 10px/1 Inter,system-ui,sans-serif!important;
}
.geo-speedometer-main{
  top:62px!important;
  height:1.85cm!important;
  min-height:66px!important;
}
.geo-speedometer-main .geo-speed-value{
  font-size:36px!important;
  line-height:.95!important;
}
.geo-speedometer-main .geo-speed-unit{
  font-size:14px!important;
}
@media (max-width:640px){
  .geo-topbar{
    left:7px!important;
    right:7px!important;
    top:calc(env(safe-area-inset-top,0px) + 7px)!important;
    grid-template-columns:148px minmax(0, auto)!important;
    gap:5px!important;
    padding:5px 6px!important;
    min-height:46px!important;
  }
  .geo-speedometer-mini{
    width:146px!important;
    min-width:146px!important;
    max-width:146px!important;
    height:36px!important;
    min-height:36px!important;
    padding:0 7px!important;
    gap:3px!important;
  }
  .geo-speedometer-mini .geo-speed-value{
    font-size:15px!important;
  }
  .geo-speedometer-mini .geo-speed-unit,
  .geo-speedometer-mini .geo-speed-depth,
  .geo-speedometer-mini .geo-speed-divider{
    font-size:9px!important;
  }
  .geo-speedometer-main{
    top:58px!important;
    min-height:68px!important;
  }
  .geo-speedometer-main .geo-speed-value{
    font-size:38px!important;
  }
  .geo-speedometer-main .geo-speed-unit{
    font-size:15px!important;
  }
}
@media (max-width:380px){
  .geo-topbar{
    grid-template-columns:136px minmax(0, auto)!important;
  }
  .geo-speedometer-mini{
    width:134px!important;
    min-width:134px!important;
    max-width:134px!important;
  }
  .geo-speedometer-mini .geo-speed-value{
    font-size:14px!important;
  }
  .geo-speedometer-mini .geo-speed-unit,
  .geo-speedometer-mini .geo-speed-depth,
  .geo-speedometer-mini .geo-speed-divider{
    font-size:8px!important;
  }
}

/* v283c: ülal vasaku kiirus+sügavus näidiku kitsendus, et see ei kataks kontoikooni */
body.is-geo-view .geo-topbar{
  grid-template-columns:minmax(118px,126px) minmax(0,auto)!important;
  gap:4px!important;
  padding:5px 5px 5px 6px!important;
}
body.is-geo-view .geo-topbar-main{
  gap:4px!important;
  justify-self:end!important;
  min-width:0!important;
}
body.is-geo-view .geo-speedometer-mini{
  width:126px!important;
  min-width:126px!important;
  max-width:126px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 6px!important;
  gap:3px!important;
  justify-self:start!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-value{
  font-size:18px!important;
  letter-spacing:-.045em!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
body.is-geo-view .geo-speedometer-mini .geo-speed-divider{
  font-size:9px!important;
  line-height:1!important;
}
body.is-geo-view .geo-login-link,
body.is-geo-view .geo-main-btn{
  min-width:40px!important;
  height:38px!important;
  min-height:38px!important;
}
body.is-geo-view .geo-start-main{
  min-width:74px!important;
  padding:0 9px!important;
}
body.is-geo-view .geo-menu-toggle{
  width:40px!important;
  min-width:40px!important;
  height:38px!important;
  min-height:38px!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-topbar{
    grid-template-columns:minmax(108px,116px) minmax(0,auto)!important;
    gap:3px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
  body.is-geo-view .geo-speedometer-mini{
    width:116px!important;
    min-width:116px!important;
    max-width:116px!important;
    padding:0 5px!important;
    gap:2px!important;
  }
  body.is-geo-view .geo-speedometer-mini .geo-speed-value{
    font-size:17px!important;
  }
  body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
  body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
  body.is-geo-view .geo-speedometer-mini .geo-speed-divider{
    font-size:8px!important;
  }
  body.is-geo-view .geo-login-link,
  body.is-geo-view .geo-main-btn{
    min-width:37px!important;
    height:37px!important;
    min-height:37px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
  body.is-geo-view .geo-start-main{
    min-width:68px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
  body.is-geo-view .geo-menu-toggle{
    width:37px!important;
    min-width:37px!important;
    height:37px!important;
    min-height:37px!important;
  }
}

/* v283d: ainult ülal vasaku kiirus+sügavus näidiku täpsem kitsendus */
body.is-geo-view .geo-topbar{
  gap:3px!important;
  padding-left:4px!important;
  padding-right:4px!important;
}
body.is-geo-view .geo-topbar-main{
  gap:4px!important;
  min-width:0!important;
  flex:0 1 auto!important;
}
body.is-geo-view .geo-speedometer-mini{
  flex:0 0 112px!important;
  width:112px!important;
  min-width:112px!important;
  max-width:112px!important;
  box-sizing:border-box!important;
  padding-left:5px!important;
  padding-right:5px!important;
  gap:2px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-value{
  font-size:17px!important;
  letter-spacing:-.05em!important;
  flex:0 0 auto!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
body.is-geo-view .geo-speedometer-mini .geo-speed-divider{
  font-size:8px!important;
  line-height:1!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-speedometer-mini{
    flex-basis:106px!important;
    width:106px!important;
    min-width:106px!important;
    max-width:106px!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
  body.is-geo-view .geo-speedometer-mini .geo-speed-value{
    font-size:16px!important;
  }
  body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
  body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
  body.is-geo-view .geo-speedometer-mini .geo-speed-divider{
    font-size:7.5px!important;
  }
}

/* v284: kasutaja asukoht kollase kolmnurgana, mitte helesinise ringina */
.geo-user-heading-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
}
.geo-user-heading-triangle{
  width:0!important;
  height:0!important;
  border-left:8px solid transparent!important;
  border-right:8px solid transparent!important;
  border-bottom:20px solid rgba(255,196,52,.98)!important;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.70))!important;
  transform-origin:50% 58%!important;
}

/* v284b: seistes väike helendav sinine asukohatäpp, paadirežiimis kollane suunakolmnurk */
.geo-user-location-dot-icon{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
}
.geo-user-location-dot{
  width:10px!important;
  height:10px!important;
  border-radius:50%!important;
  background:rgba(91,202,255,.96)!important;
  border:2px solid rgba(229,250,255,.96)!important;
  box-shadow:
    0 0 0 4px rgba(91,202,255,.18),
    0 0 10px rgba(91,202,255,.72),
    0 1px 3px rgba(0,0,0,.42)!important;
  transform:translate(4px,4px)!important;
}

/* v285: GPS täpsuse väike indikaator testimiseks */
.geo-gps-accuracy{
  position:absolute;
  left:8px;
  top:52px;
  z-index:755;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(3,12,19,.54);
  color:#fff;
  font:800 10px/1 Inter,system-ui,sans-serif;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
  box-shadow:0 8px 18px rgba(0,0,0,.14);
  pointer-events:none;
}
.geo-gps-accuracy.hidden{
  display:none!important;
}
.geo-gps-accuracy.gps-good{
  background:rgba(24,132,73,.76);
}
.geo-gps-accuracy.gps-ok{
  background:rgba(3,12,19,.56);
}
.geo-gps-accuracy.gps-weak{
  background:rgba(185,38,38,.78);
}
@media (max-width:390px){
  .geo-gps-accuracy{
    top:49px;
    left:7px;
    font-size:9px;
    min-height:21px;
    padding:0 7px;
  }
}

/* v286: GPS täpsus footerisse Geofishing nime järele, ilma kastita */
.geo-bottom-title{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  white-space:nowrap!important;
}
.geo-bottom-title .geo-gps-accuracy{
  position:static!important;
  left:auto!important;
  top:auto!important;
  z-index:auto!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  color:rgba(255,255,255,.72)!important;
  font:800 9px/1 Inter,system-ui,sans-serif!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:none!important;
  text-shadow:0 1px 3px rgba(0,0,0,.7)!important;
  pointer-events:none!important;
}
.geo-bottom-title .geo-gps-accuracy.hidden{
  display:none!important;
}
.geo-bottom-title .geo-gps-accuracy.gps-good,
.geo-bottom-title .geo-gps-accuracy.gps-ok,
.geo-bottom-title .geo-gps-accuracy.gps-weak{
  background:transparent!important;
}
.geo-bottom-title .geo-gps-accuracy.gps-good{
  color:rgba(168,255,205,.82)!important;
}
.geo-bottom-title .geo-gps-accuracy.gps-ok{
  color:rgba(255,255,255,.72)!important;
}
.geo-bottom-title .geo-gps-accuracy.gps-weak{
  color:rgba(255,170,170,.86)!important;
}

/* v287: Seaded alamenüü vahe + prügi/ussikarbid ühe nupu alla */
.geo-settings-section + .geo-settings-section{
  margin-top:6px!important;
}
.geo-eco-choice{
  display:grid;
  gap:6px;
  padding:6px!important;
}
.geo-eco-choice-btn{
  width:100%;
  min-height:38px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:12px;
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.86);
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  padding:0 10px;
  font:800 12px/1 Inter,system-ui,sans-serif;
  cursor:pointer;
  text-align:left;
}
.geo-eco-choice-btn:active{
  transform:translateY(.5px);
}
.geo-eco-choice .geo-eco-confirm{
  margin:0;
  padding:8px!important;
  border-radius:12px;
}

/* v287c: Registreeri prügi alammenüü peab püsima avatuna */
#geoEcoPanel.hidden{
  display:none!important;
}
#geoEcoPanel:not(.hidden){
  display:grid!important;
}
#geoEcoPanel .hidden{
  display:none!important;
}


/* v287d: Viljandi järve paadipiirangute infokaart */
body.is-geo-view .geo-waterbody-card-boat{
  max-height:72vh!important;
  overflow:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
body.is-geo-view .geo-boat-info{
  display:grid!important;
  gap:8px!important;
  color:#ffffff!important;
}
body.is-geo-view .geo-boat-info-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:7px 9px!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
body.is-geo-view .geo-boat-info-line-main{
  background:rgba(216,255,227,.12)!important;
  border-color:rgba(216,255,227,.18)!important;
}
body.is-geo-view .geo-boat-info-line strong,
body.is-geo-view .geo-boat-info-section > strong,
body.is-geo-view .geo-boat-info-sources > strong,
body.is-geo-view .geo-boat-info-checked > strong{
  color:#d8ffe3!important;
  font-weight:750!important;
}
body.is-geo-view .geo-boat-info-line span{
  color:#ffffff!important;
  font-weight:760!important;
  text-align:right!important;
}
body.is-geo-view .geo-boat-info-section{
  margin-top:2px!important;
  padding-top:8px!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}
body.is-geo-view .geo-boat-info-section:first-child{
  border-top:0!important;
  padding-top:0!important;
}
body.is-geo-view .geo-boat-info-list{
  margin:5px 0 0 0!important;
  padding:0!important;
  list-style:none!important;
  display:grid!important;
  gap:4px!important;
}
body.is-geo-view .geo-boat-info-list li{
  position:relative!important;
  padding-left:13px!important;
  color:rgba(255,255,255,.92)!important;
  font-weight:500!important;
}
body.is-geo-view .geo-boat-info-list li::before{
  content:'•'!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  color:#d8ffe3!important;
  font-weight:900!important;
}
body.is-geo-view .geo-boat-info-grid{
  display:grid!important;
  gap:6px!important;
}
body.is-geo-view .geo-boat-info-sources{
  display:grid!important;
  gap:4px!important;
  margin-top:4px!important;
  padding-top:8px!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}
body.is-geo-view .geo-boat-info-checked{
  color:rgba(255,255,255,.82)!important;
  font-weight:520!important;
}

/* v287e: käsitsi lülitatav paadirežiim ja piirkiiruse hoiatus */
body.is-geo-view .geo-boat-mode-btn{
  min-width:62px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 8px!important;
  gap:4px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(228,235,239,.92))!important;
  color:#30434d!important;
  border:1px solid rgba(24,35,45,.10)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.10)!important;
}
body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-icon{
  font-size:15px!important;
  line-height:1!important;
  filter:grayscale(1) saturate(0) brightness(.74)!important;
}
body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-text{
  font:900 10px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.05em!important;
}
body.is-geo-view .geo-boat-mode-btn.is-active{
  color:#e9fbff!important;
  background:linear-gradient(180deg, rgba(33,211,255,.35), rgba(15,79,112,.82))!important;
  border-color:rgba(75,224,255,.78)!important;
  box-shadow:
    0 0 0 1px rgba(130,240,255,.22) inset,
    0 0 10px rgba(47,232,255,.72),
    0 0 22px rgba(47,232,255,.46),
    0 10px 24px rgba(0,0,0,.18)!important;
  text-shadow:0 0 8px rgba(47,232,255,.75)!important;
}
body.is-geo-view .geo-boat-mode-btn.is-active .geo-boat-mode-icon{
  filter:none!important;
  text-shadow:0 0 8px rgba(47,232,255,.9),0 0 18px rgba(47,232,255,.58)!important;
}
body.is-geo-view .geo-speed-limit-hint.hidden{display:none!important;}
body.is-geo-view .geo-speed-limit-hint:not(.hidden){
  position:absolute!important;
  right:5px!important;
  bottom:2px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:10px!important;
  padding:0 4px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.16)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:rgba(255,255,255,.92)!important;
  font:900 7px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
  pointer-events:none!important;
  text-shadow:none!important;
}
body.is-geo-view .geo-speed-limit-hint-main:not(.hidden){
  right:50%!important;
  bottom:6px!important;
  transform:translateX(50%)!important;
  font-size:9px!important;
  min-height:14px!important;
  padding:0 6px!important;
}
body.is-geo-view .geo-speedometer.speed-limit-prewarning{
  background:rgba(218,133,28,.82)!important;
  color:#fff!important;
  border-color:rgba(255,213,114,.54)!important;
  box-shadow:0 0 0 1px rgba(255,220,120,.18) inset,0 10px 28px rgba(0,0,0,.20)!important;
}
body.is-geo-view .geo-speedometer.speed-limit-warning{
  background:rgba(205,32,38,.88)!important;
  color:#fff!important;
  border-color:rgba(255,155,155,.62)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.14) inset,0 0 16px rgba(255,60,60,.72),0 12px 32px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-speed-limit-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:910!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  background:rgba(190,20,28,.18)!important;
  color:#fff!important;
  text-align:center!important;
  pointer-events:none!important;
  backdrop-filter:saturate(1.15)!important;
  -webkit-backdrop-filter:saturate(1.15)!important;
  text-shadow:0 2px 10px rgba(0,0,0,.48)!important;
}
body.is-geo-view .geo-speed-limit-overlay.hidden{display:none!important;}
body.is-geo-view .geo-speed-limit-overlay strong{
  padding:10px 14px!important;
  border-radius:999px!important;
  background:rgba(125,0,8,.58)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  font:900 16px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.06em!important;
}
body.is-geo-view .geo-speed-limit-overlay span{
  padding:6px 10px!important;
  border-radius:999px!important;
  background:rgba(0,0,0,.28)!important;
  font:900 12px/1 Inter,system-ui,sans-serif!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-boat-mode-btn{
    min-width:55px!important;
    padding:0 6px!important;
    gap:3px!important;
  }
  body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-icon{font-size:13px!important;}
  body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-text{font-size:9px!important;}
  body.is-geo-view .geo-start-main{min-width:58px!important;padding-left:7px!important;padding-right:7px!important;}
}
@media (max-width:340px){
  body.is-geo-view .geo-topbar{
    grid-template-columns:minmax(88px,92px) minmax(0,1fr)!important;
    gap:3px!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
  body.is-geo-view .geo-speedometer-mini{
    flex-basis:92px!important;
    width:92px!important;
    min-width:92px!important;
    max-width:92px!important;
    padding-left:3px!important;
    padding-right:3px!important;
    gap:1px!important;
  }
  body.is-geo-view .geo-speedometer-mini .geo-speed-value{font-size:14px!important;}
  body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
  body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
  body.is-geo-view .geo-speedometer-mini .geo-speed-divider{font-size:7px!important;}
  body.is-geo-view .geo-login-link,
  body.is-geo-view .geo-main-btn,
  body.is-geo-view .geo-menu-toggle{
    min-width:33px!important;
    width:auto!important;
    height:34px!important;
    min-height:34px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }
  body.is-geo-view .geo-boat-mode-btn{min-width:46px!important;gap:2px!important;}
  body.is-geo-view .geo-start-main{min-width:50px!important;font-size:10px!important;}
  body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-text{font-size:8px!important;}
}


/* v287f: kompaktne kaardivaade, PAAT ikooninupp ja ekraanile mahtuv info */
body.is-geo-view .geo-map-stats{display:none!important;}
body.is-geo-view .geo-topbar{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  left:6px!important;
  right:6px!important;
  top:calc(env(safe-area-inset-top,0px) + 6px)!important;
  grid-template-columns:none!important;
  min-height:42px!important;
  height:auto!important;
  padding:4px 5px!important;
}
body.is-geo-view .geo-topbar-main{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
body.is-geo-view .geo-speedometer-mini{
  flex:0 0 112px!important;
  width:112px!important;
  min-width:112px!important;
  max-width:112px!important;
  height:38px!important;
  min-height:38px!important;
  border-radius:13px!important;
  padding:0 5px!important;
  gap:2px!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-limit-hint{display:none!important;}
body.is-geo-view .geo-speedometer-mini .geo-speed-value{font-size:17px!important;line-height:1!important;}
body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
body.is-geo-view .geo-speedometer-mini .geo-speed-divider{font-size:8px!important;line-height:1!important;}
body.is-geo-view .geo-login-link.geo-icon-only,
body.is-geo-view .geo-main-btn.geo-icon-only,
body.is-geo-view .geo-boat-mode-btn,
body.is-geo-view .geo-menu-toggle{
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  border-radius:13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(16,28,36,.78)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 8px 18px rgba(0,0,0,.20)!important;
}
body.is-geo-view .geo-start-main{
  height:38px!important;
  min-height:38px!important;
  min-width:62px!important;
  padding:0 8px!important;
  border-radius:13px!important;
}
body.is-geo-view .geo-boat-mode-btn .geo-boat-mode-text{display:none!important;}
body.is-geo-view .geo-boat-mode-btn .geo-btn-icon,
body.is-geo-view .geo-boat-mode-btn .geo-ui-icon{
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  filter:grayscale(1) saturate(0) brightness(1.15) drop-shadow(0 1px 1px rgba(0,0,0,.35))!important;
}
body.is-geo-view .geo-icon-boat{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M12 35h40l-6 12H20L12 35Z' fill='none' stroke='white' stroke-width='5' stroke-linejoin='round'/%3E%3Cpath d='M24 35V18h17l7 17' fill='none' stroke='white' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 52c4 3 8 3 12 0 4 3 8 3 12 0 4 3 8 3 12 0' fill='none' stroke='white' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E")!important;
}
body.is-geo-view .geo-boat-mode-btn.is-active{
  background:linear-gradient(180deg, rgba(23,128,170,.78), rgba(9,52,83,.92))!important;
  border-color:rgba(80,230,255,.92)!important;
  box-shadow:0 0 0 1px rgba(130,240,255,.22) inset,0 0 12px rgba(47,232,255,.78),0 0 26px rgba(47,232,255,.50),0 10px 24px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-boat-mode-btn.is-active .geo-btn-icon,
body.is-geo-view .geo-boat-mode-btn.is-active .geo-ui-icon{
  filter:drop-shadow(0 0 7px rgba(47,232,255,.95)) drop-shadow(0 0 16px rgba(47,232,255,.72))!important;
}
body.is-geo-view .geo-speedometer-main .geo-speed-limit-hint-main:not(.hidden){
  display:inline-flex!important;
}
body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content{
  width:min(310px, calc(100vw - 34px))!important;
  margin:7px!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-waterbody-card-boat{
  max-height:calc(100dvh - 158px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  padding:11px!important;
  font-size:12px!important;
  line-height:1.28!important;
}
body.is-geo-view .geo-boat-info{gap:6px!important;}
body.is-geo-view .geo-boat-info-line{padding:6px 8px!important;border-radius:10px!important;}
body.is-geo-view .geo-boat-info-section{padding-top:6px!important;}
body.is-geo-view .geo-boat-info-list{gap:3px!important;margin-top:4px!important;}
body.is-geo-view .geo-boat-info-list li{padding-left:11px!important;font-size:11.5px!important;line-height:1.22!important;}
body.is-geo-view .geo-boat-info-sources{gap:3px!important;padding-top:6px!important;}
body.is-geo-view .geo-boat-info-checked{font-size:11px!important;}
@media (max-width:390px){
  body.is-geo-view .geo-topbar{gap:5px!important;padding-left:4px!important;padding-right:4px!important;}
  body.is-geo-view .geo-topbar-main{gap:5px!important;}
  body.is-geo-view .geo-speedometer-mini{flex-basis:104px!important;width:104px!important;min-width:104px!important;max-width:104px!important;height:36px!important;min-height:36px!important;}
  body.is-geo-view .geo-login-link.geo-icon-only,
  body.is-geo-view .geo-main-btn.geo-icon-only,
  body.is-geo-view .geo-boat-mode-btn,
  body.is-geo-view .geo-menu-toggle{width:36px!important;min-width:36px!important;max-width:36px!important;height:36px!important;min-height:36px!important;}
  body.is-geo-view .geo-start-main{height:36px!important;min-height:36px!important;min-width:56px!important;font-size:10px!important;}
  body.is-geo-view .geo-speedometer-mini .geo-speed-value{font-size:16px!important;}
  body.is-geo-view .geo-speedometer-mini .geo-speed-unit,
  body.is-geo-view .geo-speedometer-mini .geo-speed-depth,
  body.is-geo-view .geo-speedometer-mini .geo-speed-divider{font-size:7.2px!important;}
  body.is-geo-view .geo-waterbody-card-boat{max-height:calc(100dvh - 142px)!important;padding:10px!important;}
}
@media (max-width:340px){
  body.is-geo-view .geo-topbar{gap:3px!important;}
  body.is-geo-view .geo-topbar-main{gap:3px!important;}
  body.is-geo-view .geo-speedometer-mini{flex-basis:92px!important;width:92px!important;min-width:92px!important;max-width:92px!important;padding-left:3px!important;padding-right:3px!important;}
  body.is-geo-view .geo-login-link.geo-icon-only,
  body.is-geo-view .geo-main-btn.geo-icon-only,
  body.is-geo-view .geo-boat-mode-btn,
  body.is-geo-view .geo-menu-toggle{width:33px!important;min-width:33px!important;max-width:33px!important;height:34px!important;min-height:34px!important;}
  body.is-geo-view .geo-start-main{height:34px!important;min-height:34px!important;min-width:48px!important;padding-left:5px!important;padding-right:5px!important;font-size:9.5px!important;}
  body.is-geo-view .geo-boat-mode-btn .geo-btn-icon,
  body.is-geo-view .geo-boat-mode-btn .geo-ui-icon{width:20px!important;height:20px!important;min-width:20px!important;}
}

/* v287g: Viljandi järve info alamtulbadeks/plokkideks */
body.is-geo-view .geo-waterbody-card-lake-info{
  display:block!important;
  max-height:calc(100dvh - 148px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
body.is-geo-view .geo-lake-info{
  display:grid!important;
  gap:6px!important;
  margin-top:7px!important;
}
body.is-geo-view .geo-lake-info-panel{
  margin:0!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.055)!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-lake-info-panel[open]{
  border-color:rgba(216,255,227,.20)!important;
  background:rgba(216,255,227,.065)!important;
}
body.is-geo-view .geo-lake-info-panel summary{
  min-height:34px!important;
  padding:8px 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  cursor:pointer!important;
  user-select:none!important;
  list-style:none!important;
  color:#ffffff!important;
  font:780 12px/1.15 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-lake-info-panel summary::-webkit-details-marker{
  display:none!important;
}
body.is-geo-view .geo-lake-info-panel summary::after{
  content:'›'!important;
  color:#d8ffe3!important;
  font-size:18px!important;
  line-height:1!important;
  transform:rotate(90deg)!important;
  opacity:.95!important;
}
body.is-geo-view .geo-lake-info-panel[open] summary::after{
  transform:rotate(-90deg)!important;
}
body.is-geo-view .geo-lake-info-panel summary em{
  margin-left:auto!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.09)!important;
  color:#d8ffe3!important;
  font-style:normal!important;
  font:800 10px/1 Inter,system-ui,sans-serif!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-lake-info-panel-body{
  margin:0!important;
  padding:0 10px 10px!important;
  border-top:1px solid rgba(255,255,255,.09)!important;
}
body.is-geo-view .geo-lake-info-note{
  color:rgba(255,255,255,.86)!important;
  font:560 11.5px/1.35 Inter,system-ui,sans-serif!important;
  margin-top:8px!important;
}
body.is-geo-view .geo-lake-info .geo-boat-info{
  margin-top:8px!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-waterbody-card-lake-info{
    max-height:calc(100dvh - 128px)!important;
    padding:9px!important;
  }
  body.is-geo-view .geo-lake-info{gap:5px!important;}
  body.is-geo-view .geo-lake-info-panel summary{min-height:31px!important;padding:7px 9px!important;font-size:11.5px!important;}
  body.is-geo-view .geo-lake-info-panel-body{padding:0 9px 8px!important;}
}

/* v287h: kiirusenäidiku max-kiiruse rida, menüüvaated ja infoakna kasutatavus */
body.is-geo-view .geo-speedometer-main{
  position:absolute!important;
  height:auto!important;
  min-height:82px!important;
  padding:8px 10px 7px!important;
  gap:1px!important;
}
body.is-geo-view .geo-speedometer-main .geo-speed-value{
  line-height:.9!important;
}
body.is-geo-view .geo-speedometer-main .geo-speed-unit{
  display:block!important;
  line-height:1!important;
  margin-top:1px!important;
}
body.is-geo-view .geo-speedometer-main .geo-speed-limit-hint-main:not(.hidden){
  position:static!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  display:inline-flex!important;
  margin-top:4px!important;
  min-height:16px!important;
  padding:2px 8px!important;
  border-radius:999px!important;
  font:900 9px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.02em!important;
  background:rgba(255,255,255,.18)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  color:rgba(255,255,255,.94)!important;
}
body.is-geo-view .geo-speedometer-mini .geo-speed-limit-hint,
body.is-geo-view .geo-speedometer-mini .geo-speed-limit-hint:not(.hidden){
  display:none!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content-wrapper,
body.is-geo-view .geo-waterbody-popup-wrap .leaflet-popup-content-wrapper{
  border-radius:18px!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content{
  width:min(292px, calc(100vw - 58px))!important;
  margin:8px!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-close-button{
  left:11px!important;
  right:auto!important;
  top:12px!important;
  width:32px!important;
  height:32px!important;
  border-radius:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:rgba(15,27,35,.92)!important;
  border:1px solid rgba(255,255,255,.20)!important;
  color:#fff!important;
  font:900 24px/1 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;
  box-shadow:0 8px 18px rgba(0,0,0,.28)!important;
  z-index:4!important;
}
body.is-geo-view .geo-waterbody-card-lake-info,
body.is-geo-view .geo-waterbody-card-boat{
  width:100%!important;
  max-height:min(68dvh, calc(100dvh - 154px))!important;
  padding:46px 10px 10px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
body.is-geo-view .geo-waterbody-card-lake-info > strong{
  display:block!important;
  padding-left:38px!important;
  min-height:28px!important;
  line-height:1.05!important;
}
body.is-geo-view .geo-lake-info-panel summary em:empty{
  display:none!important;
}
body.is-geo-view .geo-layer-panel{
  max-height:min(74vh, 520px)!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-speedometer-main{
    min-height:78px!important;
    padding-top:7px!important;
    padding-bottom:6px!important;
  }
  body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content{
    width:min(282px, calc(100vw - 54px))!important;
  }
  body.is-geo-view .geo-waterbody-card-lake-info,
  body.is-geo-view .geo-waterbody-card-boat{
    max-height:min(66dvh, calc(100dvh - 138px))!important;
    padding:44px 9px 9px!important;
  }
}


/* v287i: infotahvli kompaktne päis, ekraanikeskne avamine, alumiste nuppude asend ja Geofishing footer */
body.is-geo-view .leaflet-popup.geo-waterbody-popup-wrap-boat{
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  bottom:auto!important;
  right:auto!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  z-index:1200!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-tip-container,
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-tip{
  display:none!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content-wrapper{
  border-radius:16px!important;
  max-width:calc(100vw - 28px)!important;
  max-height:calc(100dvh - 92px)!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content{
  width:min(310px, calc(100vw - 32px))!important;
  margin:0!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-close-button{
  left:10px!important;
  right:auto!important;
  top:10px!important;
  width:30px!important;
  height:30px!important;
  border-radius:10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  background:rgba(15,27,35,.96)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  font:900 23px/1 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;
  box-shadow:0 8px 18px rgba(0,0,0,.32)!important;
  z-index:10!important;
}
body.is-geo-view .geo-waterbody-card-lake-info,
body.is-geo-view .geo-waterbody-card-boat{
  width:100%!important;
  max-height:calc(100dvh - 92px)!important;
  padding:8px 9px 9px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
body.is-geo-view .geo-waterbody-card-lake-info > strong,
body.is-geo-view .geo-waterbody-card-boat > strong{
  display:flex!important;
  align-items:center!important;
  min-height:30px!important;
  margin:0 0 6px!important;
  padding:0 4px 0 41px!important;
  line-height:1!important;
  font-size:13px!important;
  letter-spacing:.05em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.is-geo-view .geo-lake-info{
  margin-top:0!important;
  gap:5px!important;
}
body.is-geo-view .geo-lake-info-panel summary{
  min-height:30px!important;
  padding:7px 9px!important;
}
body.is-geo-view .geo-lake-info-panel-body{
  padding:0 9px 8px!important;
}
body.is-geo-view .geo-boat-info-line.geo-boat-info-line-main{
  margin-top:2px!important;
}
body.is-geo-view .geo-side-controls{
  bottom:calc(env(safe-area-inset-bottom,0px) + 56px)!important;
}
body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
  bottom:calc(env(safe-area-inset-bottom,0px) + 148px)!important;
}
body.is-geo-view .geo-bottom-title{
  gap:7px!important;
}
body.is-geo-view .geo-bottom-brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-flag{
  font-size:12px!important;
  line-height:1!important;
}
body.is-geo-view .geo-bottom-copy{
  font-size:10px!important;
  line-height:1!important;
  opacity:.82!important;
  font-weight:800!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content{
    width:min(298px, calc(100vw - 30px))!important;
  }
  body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-content-wrapper{
    max-height:calc(100dvh - 78px)!important;
  }
  body.is-geo-view .geo-waterbody-card-lake-info,
  body.is-geo-view .geo-waterbody-card-boat{
    max-height:calc(100dvh - 78px)!important;
    padding:7px 8px 8px!important;
  }
  body.is-geo-view .geo-waterbody-card-lake-info > strong,
  body.is-geo-view .geo-waterbody-card-boat > strong{
    min-height:28px!important;
    padding-left:39px!important;
    font-size:12.5px!important;
  }
  body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-close-button{
    left:9px!important;
    top:8px!important;
    width:29px!important;
    height:29px!important;
  }
  body.is-geo-view .geo-side-controls{
    bottom:calc(env(safe-area-inset-bottom,0px) + 52px)!important;
  }
  body.is-geo-view .leaflet-control-container .leaflet-top.leaflet-left{
    bottom:calc(env(safe-area-inset-bottom,0px) + 136px)!important;
  }
}

/* v287k: footer järjekord + infoakna sulgemise X kindlalt vasakul */
body.geo-lake-info-modal-open{
  overflow:hidden;
}
body.is-geo-view .geo-lake-info-modal{
  position:fixed;
  inset:0;
  z-index:2600;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  padding:calc(env(safe-area-inset-top, 0px) + 62px) 12px calc(env(safe-area-inset-bottom, 0px) + 34px);
  pointer-events:auto;
  background:rgba(2,8,5,.06);
}
body.is-geo-view .geo-lake-info-modal-panel{
  width:min(360px, 100%);
  max-width:calc(100vw - 24px);
  max-height:100%;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(180deg, rgba(15,27,35,.97), rgba(7,15,20,.98));
  box-shadow:0 22px 70px rgba(0,0,0,.46);
  color:#f4fbff;
}
body.is-geo-view .geo-lake-info-modal-head{
  flex:0 0 auto;
  min-height:36px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:5px 9px;
  border-bottom:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
}
body.is-geo-view .geo-lake-info-modal-close{
  width:30px;
  height:30px;
  min-width:30px;
  min-height:30px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(0,0,0,.30);
  color:#fff;
  font:900 23px/1 Inter,system-ui,sans-serif;
  cursor:pointer;
  box-shadow:0 6px 14px rgba(0,0,0,.26);
}
body.is-geo-view .geo-lake-info-modal-head > strong{
  min-width:0;
  flex:1 1 auto;
  display:block;
  font:900 13px/1 Inter,system-ui,sans-serif;
  letter-spacing:.06em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.is-geo-view .geo-waterbody-card-lake-info-modal{
  flex:1 1 auto!important;
  width:100%!important;
  max-height:none!important;
  min-height:0!important;
  padding:8px 9px 10px!important;
  border-radius:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
body.is-geo-view .geo-waterbody-card-lake-info-modal .geo-lake-info{
  margin-top:0!important;
}
@media (min-width:600px){
  body.is-geo-view .geo-lake-info-modal{
    padding:calc(env(safe-area-inset-top, 0px) + 72px) 18px calc(env(safe-area-inset-bottom, 0px) + 42px);
  }
  body.is-geo-view .geo-lake-info-modal-panel{
    width:min(420px, calc(100vw - 48px));
  }
}
@media (max-width:390px){
  body.is-geo-view .geo-lake-info-modal{
    padding:calc(env(safe-area-inset-top, 0px) + 58px) 10px calc(env(safe-area-inset-bottom, 0px) + 30px);
  }
  body.is-geo-view .geo-lake-info-modal-panel{
    width:calc(100vw - 20px);
    border-radius:15px;
  }
  body.is-geo-view .geo-lake-info-modal-head{
    min-height:34px;
    padding:4px 8px;
  }
  body.is-geo-view .geo-lake-info-modal-close{
    width:29px;
    height:29px;
    min-width:29px;
    min-height:29px;
  }
}
body.is-geo-view .geo-bottom-title{
  left:6px!important;
  right:92px!important;
  width:auto!important;
  max-width:calc(100vw - 104px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-bottom-title .geo-gps-accuracy{
  order:1!important;
  flex:0 0 auto!important;
  max-width:78px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:9px!important;
}
body.is-geo-view .geo-bottom-brand{
  order:2!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.is-geo-view .geo-bottom-flag,
body.is-geo-view .geo-bottom-copy{
  flex:0 0 auto!important;
}
body.is-geo-view .geo-bottom-copy{
  font-size:11px!important;
  opacity:.86!important;
}


/* v287k: ainult footer ja infoakna X parandus */
body.is-geo-view .geo-lake-info-modal-head{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:5px 9px 5px 48px!important;
}
body.is-geo-view .geo-lake-info-modal-close{
  position:absolute!important;
  left:9px!important;
  right:auto!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  order:-1!important;
  margin:0!important;
}
body.is-geo-view .geo-lake-info-modal-head > strong{
  text-align:left!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-close-button{
  left:8px!important;
  right:auto!important;
  top:8px!important;
}
body.is-geo-view .geo-bottom-title{
  left:6px!important;
  right:92px!important;
  width:auto!important;
  max-width:calc(100vw - 104px)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-brand{
  order:1!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  flex:0 0 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-flag{
  font-size:12px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
}
body.is-geo-view .geo-bottom-copy{
  font-size:10px!important;
  line-height:1!important;
  opacity:.86!important;
  font-weight:800!important;
}
body.is-geo-view .geo-bottom-title .geo-gps-accuracy{
  order:2!important;
  flex:0 1 auto!important;
  max-width:88px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:9px!important;
}


/* v287l: AINULT parandused - infoakna X paremale, footer ühele reale, prügi alammenüü püsima */
body.is-geo-view .geo-lake-info-modal-head{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:5px 48px 5px 9px!important;
}
body.is-geo-view .geo-lake-info-modal-close{
  position:absolute!important;
  left:auto!important;
  right:9px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  order:initial!important;
  margin:0!important;
}
body.is-geo-view .geo-lake-info-modal-head > strong{
  text-align:left!important;
}
body.is-geo-view .geo-waterbody-popup-wrap-boat .leaflet-popup-close-button{
  left:auto!important;
  right:8px!important;
  top:8px!important;
}
body.is-geo-view .geo-bottom-title{
  left:6px!important;
  right:92px!important;
  width:auto!important;
  max-width:calc(100vw - 104px)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-brand{
  order:1!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  flex:0 0 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-flag{
  font-size:12px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
}
body.is-geo-view .geo-bottom-copy{
  font-size:10px!important;
  line-height:1!important;
  opacity:.86!important;
  font-weight:800!important;
}
body.is-geo-view .geo-bottom-title .geo-gps-accuracy{
  order:2!important;
  flex:0 1 auto!important;
  max-width:88px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:9px!important;
}
#geoEcoPanel:not(.hidden){
  display:grid!important;
  max-height:320px!important;
  opacity:1!important;
  margin:0 0 6px 0!important;
  border-width:1px!important;
  pointer-events:auto!important;
}
#geoEcoPanel .geo-eco-confirm:not(.hidden){
  display:grid!important;
}

/* Geofishing BETA v4.6.11: olemasolev footer kahe kompaktse reana, ilma eraldi attribution-kastita */
body.is-geo-view .geo-bottom-title{
  left:5px!important;right:5px!important;bottom:2px!important;width:auto!important;max-width:calc(100vw - 10px)!important;
  min-height:31px!important;height:auto!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  justify-content:center!important;gap:1px!important;padding:2px 5px!important;box-sizing:border-box!important;overflow:hidden!important;white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-primary{display:flex!important;align-items:center!important;gap:6px!important;min-width:0!important;max-width:100%!important;line-height:1!important;}
body.is-geo-view .geo-bottom-brand{display:inline-flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important;min-width:0!important;white-space:nowrap!important;}
body.is-geo-view .geo-bottom-copy{color:rgba(255,255,255,.91)!important;text-decoration:none!important;font-size:10px!important;line-height:1!important;font-weight:850!important;}
body.is-geo-view .geo-bottom-title .geo-bottom-beta{margin-left:0!important;font-size:9px!important;line-height:1!important;}
body.is-geo-view .geo-bottom-title .geo-gps-accuracy{
  position:static!important;display:inline-flex!important;align-items:center!important;flex:0 1 auto!important;min-width:0!important;max-width:190px!important;
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:9px!important;line-height:1!important;margin:0!important;padding:0!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
body.is-geo-view .geo-bottom-title .geo-gps-accuracy.hidden{display:none!important;}
body.is-geo-view .geo-bottom-sources{display:flex!important;align-items:center!important;gap:3px!important;width:100%!important;min-width:0!important;overflow:hidden!important;color:rgba(235,246,239,.78)!important;font:650 8.5px/1 Inter,system-ui,sans-serif!important;white-space:nowrap!important;}
body.is-geo-view .geo-bottom-sources a,body.is-geo-view .geo-bottom-source-button{color:inherit!important;font:inherit!important;text-decoration:none!important;}
body.is-geo-view .geo-bottom-source-button{display:inline!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;cursor:pointer!important;}
body.is-geo-view .geo-bottom-sources a:hover,body.is-geo-view .geo-bottom-source-button:hover{text-decoration:underline!important;}
body.is-geo-view .geo-footer-esri{display:inline-flex!important;align-items:center!important;gap:3px!important;}
body.is-geo-view .geo-footer-esri.hidden{display:none!important;}
@media (max-width:620px){
  body.is-geo-view .geo-bottom-title{min-height:29px!important;padding:2px 4px!important;}
  body.is-geo-view .geo-bottom-copy{font-size:9px!important;}
  body.is-geo-view .geo-bottom-title .geo-bottom-beta{font-size:8px!important;}
  body.is-geo-view .geo-bottom-title .geo-gps-accuracy{max-width:116px!important;font-size:8px!important;}
  body.is-geo-view .geo-bottom-sources{font-size:7.5px!important;gap:2px!important;}
}


/* v287n: eemalda ainult Leafleti attributionis olev Ukraina lipu ikoon; Leafleti link ja OSM omistus jäävad alles */
.leaflet-control-attribution .leaflet-attribution-flag{
  display:none !important;
}

/* === Geofishing single-map shell v002: ilm ja graafik kaardi peal, vaikimisi kinni === */
#geoToolOverlay.geo-tool-overlay.hidden,
body.is-geo-view #geoToolOverlay.geo-tool-overlay.hidden{
  display:none!important;
  pointer-events:none!important;
}
body.is-geo-view.is-geo-tool-open #geoToolOverlay.geo-tool-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:1300!important;
  display:block!important;
  width:100%!important;
  height:var(--app-viewport-height,100vh)!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  pointer-events:auto!important;
}
.geo-tool-backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,9,8,.46);
  backdrop-filter:blur(3px);
}
.geo-tool-panel{
  position:absolute;
  top:calc(env(safe-area-inset-top,0px) + 58px);
  right:12px;
  bottom:calc(env(safe-area-inset-bottom,0px) + 12px);
  width:min(560px,calc(100vw - 24px));
  border-radius:24px;
  border:1px solid rgba(255,255,255,.25);
  background:linear-gradient(180deg,rgba(248,250,247,.98),rgba(231,239,232,.97));
  box-shadow:0 24px 70px rgba(0,0,0,.38);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.geo-tool-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px 12px;
  color:#142017;
  border-bottom:1px solid rgba(20,32,23,.10);
  background:rgba(255,255,255,.72);
}
.geo-tool-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(20,32,23,.58);
  margin-bottom:2px;
}
.geo-tool-head strong{font-size:20px;line-height:1.05;}
.geo-tool-close{
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid rgba(20,32,23,.12);
  background:#142017;
  color:#fff;
  font-size:21px;
  font-weight:900;
  cursor:pointer;
}
.geo-tool-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:10px 12px;
  background:rgba(255,255,255,.52);
  border-bottom:1px solid rgba(20,32,23,.08);
}
.geo-tool-tab{
  min-height:38px;
  border-radius:14px;
  border:1px solid rgba(20,32,23,.10);
  background:#fff;
  color:#142017;
  font-weight:900;
  font-size:13px;
  cursor:pointer;
}
.geo-tool-tab.is-active{
  background:linear-gradient(180deg,#5ed080,#3c9f5c);
  color:#fff;
  border-color:rgba(24,95,47,.24);
}
.geo-tool-content{
  flex:1;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:14px;
}
.geo-tool-content .card{
  width:100%;
  box-sizing:border-box;
}
.geo-tool-message{
  background:#fff;
  border-radius:18px;
  padding:18px;
  border:1px solid rgba(20,32,23,.10);
  box-shadow:0 10px 24px rgba(32,56,70,.08);
  color:#142017;
}
.geo-tool-message h2{
  margin:0 0 10px;
  font-size:22px;
}
.geo-tool-message p{
  margin:0 0 10px;
  line-height:1.45;
}
.geo-tool-doc-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:10px;
  margin-top:12px;
}
.geo-tool-doc-grid a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:0 12px;
  border-radius:12px;
  background:linear-gradient(180deg,#f7faf8,#edf4ef);
  border:1px solid rgba(20,32,23,.10);
  color:#142017;
  font-weight:850;
  text-decoration:none;
}
body.is-geo-view .geo-quick-tools{
  position:absolute;
  right:12px;
  top:calc(env(safe-area-inset-top,0px) + 62px);
  z-index:825;
  display:grid;
  gap:8px;
}
body.is-geo-view .geo-quick-tool{
  min-width:82px;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.24);
  background:linear-gradient(180deg,rgba(16,23,19,.94),rgba(8,13,11,.90));
  color:#fff;
  font-weight:950;
  font-size:13px;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  cursor:pointer;
}
body.is-geo-view .geo-menu-panel{
  max-height:calc(var(--app-viewport-height,100vh) - 76px)!important;
  overflow:auto!important;
}
body.is-geo-tool-open .geo-quick-tools,
body.is-geo-tool-open .geo-side-controls,
body.is-geo-tool-open .geo-layer-panel{
  pointer-events:none;
}
@media (max-width:640px){
  .geo-tool-panel{
    top:calc(env(safe-area-inset-top,0px) + 46px);
    left:8px;
    right:8px;
    bottom:calc(env(safe-area-inset-bottom,0px) + 8px);
    width:auto;
    border-radius:22px;
  }
  .geo-tool-head{padding:12px 12px 10px;}
  .geo-tool-head strong{font-size:18px;}
  .geo-tool-close{width:40px;height:40px;}
  .geo-tool-tabs{padding:8px;gap:6px;}
  .geo-tool-tab{font-size:12px;min-height:36px;}
  .geo-tool-content{padding:10px;}
  body.is-geo-view .geo-quick-tools{
    right:8px;
    left:auto;
    top:calc(env(safe-area-inset-top,0px) + 56px);
  }
  body.is-geo-view .geo-quick-tool{
    min-width:70px;
    min-height:34px;
    font-size:12px;
    padding:0 10px;
  }
}

/* Geofishing beta feedback v003 */
.geo-form select{width:100%;border-radius:14px;border:1px solid rgba(24,35,45,.1);background:rgba(255,255,255,.92);padding:12px;font:800 13px/1.45 Inter,system-ui,sans-serif;color:#18232d}
.geo-form .geo-checkbox{display:flex;grid-template-columns:none;align-items:center;gap:10px;font-weight:800;line-height:1.35}
.geo-form .geo-checkbox input{width:auto;min-width:18px;height:18px}
.geo-tool-link{margin-top:10px;width:fit-content;min-width:180px}


/* Public beta v004 */
.header-account,
.geo-login-link#geoLogoutLink {
  display: none !important;
}
.geo-public-beta-badge {
  position: absolute;
  left: 14px;
  top: 62px;
  z-index: 850;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.86);
  color: #173926;
  border: 1px solid rgba(21, 76, 42, .18);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  pointer-events: none;
}
@media (max-width: 620px) {
  .geo-public-beta-badge { left: 10px; top: 54px; font-size: 10px; padding: 6px 8px; }
}


/* Public beta v.4.1 refinements */
.geo-public-beta-badge{display:none!important;}
body.is-geo-view .geo-bottom-title .geo-bottom-beta{
  display:inline-flex!important;
  align-items:center!important;
  margin-left:6px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  color:rgba(255,255,255,.86)!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-side-controls{
  position:absolute!important;
  top:calc(env(safe-area-inset-top,0px) + 84px)!important;
  right:10px!important;
  bottom:auto!important;
  z-index:920!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:8px!important;
  transform:none!important;
}
body.is-geo-view .geo-map-control-btn,
body.is-geo-view .geo-side-controls .geo-target-btn,
body.is-geo-view .geo-side-controls .geo-layer-toggle,
body.is-geo-view .geo-side-controls .geo-boat-mode-btn{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  flex:0 0 42px!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(8,15,13,.94)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.34)!important;
  font:900 23px/1 Inter,system-ui,sans-serif!important;
  opacity:1!important;
}
body.is-geo-view .geo-side-controls .geo-ui-icon{
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  filter:grayscale(1) saturate(0) brightness(1.2) drop-shadow(0 1px 1px rgba(0,0,0,.35))!important;
}
body.is-geo-view .geo-side-controls .geo-boat-mode-btn.is-active{
  background:linear-gradient(180deg, rgba(23,128,170,.82), rgba(9,52,83,.96))!important;
  border-color:rgba(80,230,255,.94)!important;
  box-shadow:0 0 0 1px rgba(130,240,255,.22) inset,0 0 12px rgba(47,232,255,.78),0 0 26px rgba(47,232,255,.50),0 10px 24px rgba(0,0,0,.24)!important;
}
body.is-geo-view .geo-side-controls .geo-boat-mode-btn.is-active .geo-ui-icon{
  filter:drop-shadow(0 0 7px rgba(47,232,255,.95)) drop-shadow(0 0 16px rgba(47,232,255,.72))!important;
}
body.is-geo-view #geoMap .leaflet-control-zoom{display:none!important;}
.geo-form input[type="file"]{
  width:100%;
  border-radius:14px;
  border:1px solid rgba(24,35,45,.1);
  background:rgba(255,255,255,.92);
  padding:10px;
  font:800 12px/1.35 Inter,system-ui,sans-serif;
  color:#18232d;
}
@media (max-width:620px){
  body.is-geo-view .geo-side-controls{
    top:calc(env(safe-area-inset-top,0px) + 78px)!important;
    right:8px!important;
    gap:7px!important;
  }
  body.is-geo-view .geo-map-control-btn,
  body.is-geo-view .geo-side-controls .geo-target-btn,
  body.is-geo-view .geo-side-controls .geo-layer-toggle,
  body.is-geo-view .geo-side-controls .geo-boat-mode-btn{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
    max-width:38px!important;
    max-height:38px!important;
    flex-basis:38px!important;
    border-radius:12px!important;
    font-size:21px!important;
  }
  body.is-geo-view .geo-side-controls .geo-ui-icon{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
  }
  body.is-geo-view .geo-bottom-title .geo-bottom-beta{font-size:8.5px!important;margin-left:4px!important;padding:2px 5px!important;}
}


/* Public beta v4.3 confirmed corrections */
body.is-geo-view .geo-menu-btn.geo-menu-btn-no-icon{
  grid-template-columns:1fr 16px!important;
}
body.is-geo-view .geo-menu-btn.geo-menu-btn-no-icon span:first-child{
  grid-column:1!important;
}
body.is-geo-view .geo-menu-btn.geo-menu-btn-no-icon .geo-menu-arrow{
  grid-column:2!important;
}
body.is-geo-view .geo-bottom-title .geo-bottom-beta{
  display:inline!important;
  margin-left:4px!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
  color:inherit!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-side-controls{
  top:auto!important;
  right:10px!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
  transform:none!important;
  z-index:820!important;
}
@media (max-width:620px){
  body.is-geo-view .geo-side-controls{
    top:auto!important;
    right:8px!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 104px)!important;
  }
  body.is-geo-view .geo-bottom-title .geo-bottom-beta{
    font-size:9px!important;
    margin-left:4px!important;
    padding:0!important;
  }
}


/* v7: järve infoakna toetaja, hallikad allikalingid ja kompaktsem info */
body.is-geo-view .geo-lake-info a,
body.is-geo-view .geo-boat-info-sources a,
body.is-geo-view .geo-sponsor-contact a{
  color:rgba(221,226,229,.82)!important;
  text-decoration-color:rgba(221,226,229,.32)!important;
  text-underline-offset:2px!important;
}
body.is-geo-view .geo-lake-info a:hover,
body.is-geo-view .geo-boat-info-sources a:hover,
body.is-geo-view .geo-sponsor-contact a:hover{
  color:#f2f4f5!important;
  text-decoration-color:rgba(242,244,245,.58)!important;
}
body.is-geo-view .geo-lake-title-name{
  display:inline!important;
}
body.is-geo-view .geo-lake-title-sponsor{
  display:inline!important;
  margin-left:8px!important;
  color:rgba(255,255,255,.72)!important;
  font:800 10px/1.2 Inter,system-ui,sans-serif!important;
  letter-spacing:0!important;
  text-transform:none!important;
  white-space:normal!important;
}
body.is-geo-view .geo-lake-sponsor-link{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:rgba(221,226,229,.88)!important;
  font:900 10px/1.2 Inter,system-ui,sans-serif!important;
  text-decoration:underline!important;
  text-decoration-color:rgba(221,226,229,.34)!important;
  text-underline-offset:2px!important;
  cursor:pointer!important;
}
body.is-geo-view .geo-sponsor-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2700!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  box-sizing:border-box!important;
  background:rgba(0,0,0,.28)!important;
}
body.is-geo-view .geo-sponsor-modal-card{
  position:relative!important;
  width:min(340px,100%)!important;
  border-radius:15px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(180deg, rgba(18,29,34,.98), rgba(8,14,18,.99))!important;
  color:#f4fbff!important;
  padding:15px 15px 13px!important;
  box-shadow:0 18px 56px rgba(0,0,0,.46)!important;
  font:560 12px/1.38 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-sponsor-modal-card > strong{
  display:block!important;
  padding-right:34px!important;
  margin-bottom:8px!important;
  font:900 15px/1.15 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-sponsor-modal-card p{
  margin:7px 0!important;
  color:rgba(255,255,255,.87)!important;
}
body.is-geo-view .geo-sponsor-contact{
  display:grid!important;
  gap:5px!important;
  margin-top:10px!important;
}
body.is-geo-view .geo-sponsor-modal-close{
  position:absolute!important;
  right:9px!important;
  top:8px!important;
  width:30px!important;
  height:30px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.20)!important;
  background:rgba(0,0,0,.28)!important;
  color:#fff!important;
  font:900 22px/1 Inter,system-ui,sans-serif!important;
  cursor:pointer!important;
}

/* v19: tagasihoidlik punakas rõhutus Viljandi ohutus- ja piiranguinfole */
body.is-geo-view .geo-wave-free-info > strong,
body.is-geo-view .geo-lake-info-panel-caution summary span{
  color:#d98f80!important;
}
body.is-geo-view .geo-lake-info-panel-caution{
  border-color:rgba(217,143,128,.22)!important;
}
body.is-geo-view .geo-lake-info-panel-caution[open]{
  border-color:rgba(217,143,128,.30)!important;
  background:rgba(217,143,128,.060)!important;
}
body.is-geo-view .geo-lake-info-panel-caution summary::after{
  color:#d98f80!important;
}


/* v25: taastatud varasem ikoonistiil, väiksem ja ilma tekstisildita */

body.is-geo-view .geo-safety-place-image-icon{
  background:transparent!important;
  border:0!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));
}


/* v33: Teata ohust — topeltkinnitusega 112 / SMS / 1247 */
body.geo-emergency-modal-open{overflow:hidden!important;}
body.is-geo-view .geo-emergency-modal{
  position:fixed;
  inset:0;
  z-index:2090;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(2,8,5,.58);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
body.is-geo-view .geo-emergency-card{
  width:min(460px,calc(100vw - 34px));
  max-height:calc(var(--app-viewport-height,100vh) - 34px);
  overflow:auto;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.16);
  background:linear-gradient(180deg,rgba(14,28,20,.98),rgba(7,15,10,.98));
  color:#effff1;
  box-shadow:0 24px 70px rgba(0,0,0,.48);
}
body.is-geo-view .geo-emergency-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 12px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
body.is-geo-view .geo-emergency-head strong{
  font-size:17px;
  line-height:1.2;
  font-weight:950;
}
body.is-geo-view .geo-emergency-close{
  width:34px;
  height:34px;
  min-width:34px;
  border:0;
  border-radius:12px;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:24px;
  line-height:1;
  font-weight:900;
}
body.is-geo-view .geo-emergency-body{
  padding:14px 16px 8px;
  display:grid;
  gap:8px;
}
body.is-geo-view .geo-emergency-body p{
  margin:0;
  font-size:13px;
  line-height:1.38;
  color:rgba(239,255,241,.92);
}
body.is-geo-view .geo-emergency-note{
  margin-top:4px!important;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.07);
  color:rgba(239,255,241,.86)!important;
}
body.is-geo-view .geo-emergency-actions{
  display:grid;
  gap:8px;
  padding:12px 16px 16px;
}
body.is-geo-view .geo-emergency-btn,
body.is-geo-view .geo-emergency-inline{
  border:0;
  border-radius:12px;
  min-height:42px;
  padding:0 14px;
  font-weight:950;
  color:#082014;
  background:linear-gradient(180deg,#78d890,#4dbb70);
  box-shadow:0 10px 24px rgba(24,80,43,.24);
  cursor:pointer;
}
body.is-geo-view .geo-emergency-btn.is-danger{
  color:#fff;
  background:linear-gradient(180deg,#e56a5d,#b94339);
}
body.is-geo-view .geo-emergency-btn.is-secondary{
  color:#effff1;
  background:rgba(255,255,255,.10);
  box-shadow:none;
  border:1px solid rgba(255,255,255,.12);
}
body.is-geo-view .geo-emergency-inline{
  width:100%;
  margin-top:8px;
}

/* v34: Hädaabi aken alati infoakna peal + nähtav SMS eelvaade */
body.is-geo-view .geo-emergency-modal{
  z-index:3400!important;
}
.geo-simple-modal{
  z-index:3500!important;
}
body.is-geo-view .geo-emergency-preview-label{
  margin-top:6px;
  font-size:12px;
  line-height:1.2;
  font-weight:950;
  color:#effff1;
}
body.is-geo-view .geo-emergency-preview{
  width:100%;
  min-height:164px;
  box-sizing:border-box;
  resize:vertical;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#effff1;
  padding:10px 11px;
  font:800 12px/1.38 Inter,system-ui,sans-serif;
  outline:none;
}
body.is-geo-view .geo-emergency-preview:focus{
  border-color:rgba(125,218,147,.58);
  box-shadow:0 0 0 3px rgba(92,195,114,.16);
}
@media(max-width:640px){
  body.is-geo-view .geo-emergency-card{
    width:calc(100vw - 24px)!important;
  }
  body.is-geo-view .geo-emergency-preview{
    min-height:146px;
    font-size:11.5px;
  }
}

/* v36: järvega seotud sündmused */
body.is-geo-view .geo-icon-calendar{
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2064%2064%27%3E%3Crect%20x%3D%2710%27%20y%3D%2714%27%20width%3D%2744%27%20height%3D%2740%27%20rx%3D%276%27%20fill%3D%27none%27%20stroke%3D%27white%27%20stroke-width%3D%274%27/%3E%3Cpath%20d%3D%27M10%2025h44M22%208v12M42%208v12%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%3Cpath%20d%3D%27M23%2035h4M31%2035h4M39%2035h4M23%2043h4M31%2043h4%27%20stroke%3D%27white%27%20stroke-width%3D%274%27%20stroke-linecap%3D%27round%27/%3E%3C/svg%3E")!important;
}
body.is-geo-view .geo-menu-btn.is-event-active{
  background:rgba(255,220,105,.16)!important;
}
body.is-geo-view .geo-events-modal{
  position:fixed!important;
  inset:0!important;
  z-index:25050!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:14px!important;
  background:rgba(0,0,0,.42)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}
body.is-geo-view .geo-events-card{
  width:min(560px,calc(100vw - 24px))!important;
  max-height:min(88vh,760px)!important;
  overflow:hidden!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(17,26,23,.98),rgba(7,12,10,.97))!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 26px 70px rgba(0,0,0,.45)!important;
  color:#fff!important;
  font-family:Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-events-head{
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:12px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
}
body.is-geo-view .geo-events-head strong{font-size:16px!important;font-weight:900!important;}
body.is-geo-view .geo-events-close{
  width:34px!important;height:34px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.08)!important;color:#fff!important;font-size:22px!important;line-height:1!important;
}
body.is-geo-view .geo-events-body{
  padding:12px 14px 14px!important;
  max-height:calc(min(88vh,760px) - 52px)!important;
  overflow:auto!important;
}
body.is-geo-view .geo-event-empty,
body.is-geo-view .geo-event-card{
  border-radius:14px!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  padding:10px 11px!important;
  margin-bottom:9px!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.is-geo-view .geo-event-card.is-today{border-color:rgba(255,222,99,.45)!important;background:rgba(255,222,99,.11)!important;}
body.is-geo-view .geo-event-card strong{font-weight:900!important;}
body.is-geo-view .geo-event-small{margin-top:5px!important;font-size:11px!important;opacity:.78!important;}
body.is-geo-view .geo-event-toggle,
body.is-geo-view .geo-event-submit,
body.is-geo-view .geo-event-small-btn{
  border:0!important;border-radius:12px!important;background:linear-gradient(180deg,#5ed080,#3c9f5c)!important;
  color:#07140d!important;font-weight:900!important;padding:10px 12px!important;font-size:13px!important;
}
body.is-geo-view .geo-event-toggle{width:100%!important;margin:4px 0 10px!important;}
body.is-geo-view .geo-event-form-wrap.hidden{display:none!important;}
body.is-geo-view .geo-event-form{display:grid!important;gap:10px!important;}
body.is-geo-view .geo-event-form label{display:grid!important;gap:5px!important;font-size:12px!important;font-weight:850!important;color:rgba(255,255,255,.92)!important;}
body.is-geo-view .geo-event-form input,
body.is-geo-view .geo-event-form select{
  width:100%!important;box-sizing:border-box!important;border-radius:11px!important;border:1px solid rgba(255,255,255,.16)!important;
  background:rgba(255,255,255,.08)!important;color:#fff!important;padding:10px 10px!important;font-size:13px!important;outline:none!important;
}
body.is-geo-view .geo-event-form input::placeholder{color:rgba(255,255,255,.44)!important;opacity:1!important;}
body.is-geo-view .geo-event-form select option{color:#111!important;}
body.is-geo-view .geo-event-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;}
body.is-geo-view .geo-event-organizer-grid,
body.is-geo-view .geo-event-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
body.is-geo-view .geo-event-fieldset,
body.is-geo-view .geo-event-location{
  border-radius:13px!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.10)!important;padding:10px!important;
}
body.is-geo-view .geo-event-fieldset strong,
body.is-geo-view .geo-event-location strong{display:block!important;margin-bottom:7px!important;font-size:12px!important;}
body.is-geo-view .geo-event-impact-fieldset{padding:8px 9px!important;}
body.is-geo-view .geo-event-impact-fieldset strong{margin-bottom:5px!important;font-size:11px!important;opacity:.9!important;}
body.is-geo-view .geo-event-check,
body.is-geo-view .geo-event-terms{
  display:flex!important;grid-template-columns:none!important;align-items:flex-start!important;gap:7px!important;font-size:11.5px!important;line-height:1.25!important;font-weight:750!important;
}
body.is-geo-view .geo-event-check{padding:3px 0!important;}
body.is-geo-view .geo-event-check input,
body.is-geo-view .geo-event-terms input{width:auto!important;min-width:14px!important;margin:1px 0 0!important;flex:0 0 auto!important;}
body.is-geo-view .geo-event-terms{border:0!important;background:transparent!important;padding:0 2px!important;color:rgba(255,255,255,.88)!important;}
body.is-geo-view .geo-event-location{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px!important;}
body.is-geo-view .geo-event-location strong{width:100%!important;margin-bottom:0!important;}
body.is-geo-view #geoEventLocationStatus{font-size:12px!important;opacity:.86!important;width:100%!important;}
body.is-geo-view .geo-event-small-btn{background:rgba(255,255,255,.11)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important;padding:8px 10px!important;}
body.is-geo-view .geo-event-submit{width:100%!important;}
body.is-geo-view .geo-event-status{min-height:18px!important;font-size:12px!important;opacity:.9!important;text-align:center!important;}
body.is-geo-view .geo-event-flag-icon{background:transparent!important;border:0!important;}
body.is-geo-view .geo-event-flag-pin{
  width:32px!important;height:32px!important;border-radius:999px!important;background:rgba(14,22,19,.88)!important;
  display:flex!important;align-items:center!important;justify-content:center!important;font-size:20px!important;
  border:1px solid rgba(255,255,255,.75)!important;box-shadow:0 3px 10px rgba(0,0,0,.45)!important;
}
body.is-geo-view .geo-event-popup{font-family:Inter,system-ui,sans-serif!important;font-size:12px!important;line-height:1.35!important;color:#13251b!important;}
body.is-geo-view .geo-event-popup strong{font-weight:900!important;}
@media(max-width:720px){
  body.is-geo-view .geo-event-grid{grid-template-columns:1fr!important;}
  body.is-geo-view .geo-events-card{width:calc(100vw - 18px)!important;}
}


/* v38 sündmuse vormi täpsustused */
body.is-geo-view .geo-event-impact-fieldset{
  border:0!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
}
body.is-geo-view .geo-event-impact-title{
  font-size:11.5px!important;
  font-weight:900!important;
  color:rgba(255,255,255,.9)!important;
  margin:0 0 4px!important;
}
body.is-geo-view .geo-event-impact-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:3px 8px!important;
}
body.is-geo-view .geo-event-check{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:1px 0!important;
  margin:0!important;
  font-size:11.5px!important;
  line-height:1.15!important;
  font-weight:750!important;
}
body.is-geo-view .geo-event-check input,
body.is-geo-view .geo-event-terms input{
  order:0!important;
  width:14px!important;
  min-width:14px!important;
  height:14px!important;
  margin:0!important;
  flex:0 0 14px!important;
}
body.is-geo-view .geo-event-check span,
body.is-geo-view .geo-event-terms span{order:1!important;}
body.is-geo-view .geo-event-terms{
  display:flex!important;
  align-items:flex-start!important;
  gap:7px!important;
  border:0!important;
  background:transparent!important;
  padding:0 2px!important;
  margin:0!important;
  font-size:11.5px!important;
  line-height:1.22!important;
  color:rgba(255,255,255,.88)!important;
}
@media (max-width:640px){
  body.is-geo-view .geo-event-impact-list{grid-template-columns:1fr!important;}
}


/* v39 sündmuse vormi paigutuse täpsustused */
body.is-geo-view .geo-events-list.hidden{display:none!important;}
body.is-geo-view .geo-event-impact-fieldset{
  border:0!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
}
body.is-geo-view .geo-event-impact-list{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:3px 10px!important;
  align-items:center!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check,
body.is-geo-view label.geo-event-terms{
  display:flex!important;
  flex-direction:row!important;
  grid-template-columns:none!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:auto!important;
  margin:0!important;
  padding:1px 0!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check input[type="checkbox"],
body.is-geo-view label.geo-event-terms input[type="checkbox"]{
  order:0!important;
  appearance:auto!important;
  -webkit-appearance:auto!important;
  display:inline-block!important;
  width:14px!important;
  min-width:14px!important;
  max-width:14px!important;
  height:14px!important;
  margin:1px 0 0!important;
  flex:0 0 14px!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check span,
body.is-geo-view label.geo-event-terms span{
  order:1!important;
  display:inline!important;
  width:auto!important;
  min-width:0!important;
  line-height:1.18!important;
}
body.is-geo-view .geo-event-location{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:3px 10px!important;
}
body.is-geo-view .geo-event-location strong{
  grid-column:1!important;
  grid-row:1!important;
  width:auto!important;
  margin:0!important;
}
body.is-geo-view #geoEventLocationStatus{
  grid-column:1!important;
  grid-row:2!important;
  width:auto!important;
  margin:0!important;
}
body.is-geo-view .geo-event-location .geo-event-small-btn{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  justify-self:end!important;
  white-space:nowrap!important;
}
@media (max-width:640px){
  body.is-geo-view .geo-event-impact-list{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;}
  body.is-geo-view .geo-event-location{grid-template-columns:1fr!important;}
  body.is-geo-view .geo-event-location .geo-event-small-btn{grid-column:1!important;grid-row:auto!important;justify-self:stretch!important;white-space:normal!important;}
}

/* v40 sündmuste nähtavus ja vormi linnukesed */
body.is-geo-view .geo-events-list:empty{
  display:none!important;
}
body.is-geo-view .geo-event-impact-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px 12px!important;
  align-items:start!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check,
body.is-geo-view label.geo-event-terms{
  display:grid!important;
  grid-template-columns:16px minmax(0,1fr)!important;
  align-items:start!important;
  justify-content:start!important;
  column-gap:6px!important;
  row-gap:0!important;
  width:100%!important;
  margin:0!important;
  padding:1px 0!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check input[type="checkbox"],
body.is-geo-view label.geo-event-terms input[type="checkbox"]{
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
  align-self:start!important;
  width:14px!important;
  min-width:14px!important;
  max-width:14px!important;
  height:14px!important;
  margin:1px 0 0!important;
  flex:0 0 14px!important;
}
body.is-geo-view .geo-event-impact-list label.geo-event-check span,
body.is-geo-view label.geo-event-terms span{
  grid-column:2!important;
  grid-row:1!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  line-height:1.18!important;
}
body.is-geo-view .geo-event-notice{
  border:1px solid rgba(255,222,99,.38)!important;
  background:rgba(255,222,99,.11)!important;
  border-radius:14px!important;
  padding:9px 10px!important;
  margin:0 0 9px!important;
  color:#fff!important;
}
body.is-geo-view .geo-event-notice-title{
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.02em!important;
  margin:0 0 6px!important;
  color:#ffe27a!important;
}
body.is-geo-view .geo-event-notice-item{
  font-size:12px!important;
  line-height:1.28!important;
}
body.is-geo-view .geo-event-notice-item + .geo-event-notice-item{
  margin-top:7px!important;
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.13)!important;
}
@media (max-width:640px){
  body.is-geo-view .geo-event-impact-list{grid-template-columns:1fr!important;}
}

/* v41: sündmuse lipu marker ja popup samasse stiili teiste markeritega */
body.is-geo-view .geo-event-flag-image-icon{
  background:transparent!important;
  border:0!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.45));
}
body.is-geo-view .geo-access-popup.geo-event-popup{
  color:#ffffff!important;
  font:400 12px/1.38 Inter,system-ui,sans-serif!important;
}
body.is-geo-view .geo-access-popup.geo-event-popup > strong{
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:650!important;
}
body.is-geo-view .geo-event-source-note{
  opacity:.82!important;
}
body.is-geo-view .geo-event-submit-success{
  border-radius:14px!important;
  background:rgba(94,208,128,.12)!important;
  border:1px solid rgba(94,208,128,.32)!important;
  padding:12px!important;
  color:#ffffff!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.is-geo-view .geo-event-submit-success strong{
  display:block!important;
  margin:0 0 6px!important;
  color:#8df3a4!important;
  font-weight:950!important;
}
body.is-geo-view .geo-event-submit-success p{
  margin:0!important;
}

/* v43: Päevarežiim – ainult päikese ikooniga lüliti ja heledam päevavaade */
body.is-geo-view .geo-day-mode-toggle{
  font-size:18px!important;
  line-height:1!important;
  color:#ffe36a!important;
  text-shadow:0 1px 4px rgba(0,0,0,.55)!important;
}
body.is-geo-view .geo-day-mode-toggle.is-active{
  background:linear-gradient(180deg,rgba(255,227,106,.30),rgba(255,196,52,.18))!important;
  border-color:rgba(255,227,106,.72)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 0 14px rgba(255,220,96,.30)!important;
}
/* Päevarežiim ei filtreeri aluskaarti ega maismaad. Sinine päevakiht kuvatakse ainult veealal. */
body.is-geo-view.geo-day-mode .geo-depth-radar-cross::before,
body.is-geo-view.geo-day-mode .geo-depth-radar-cross::after{
  background:#fff36a!important;
  box-shadow:0 0 0 1px rgba(3,20,30,.82),0 0 7px rgba(255,243,106,.70)!important;
}
body.is-geo-view.geo-day-mode .geo-depth-radar-value{
  color:#ffffff!important;
  font-weight:700!important;
  text-shadow:0 1px 0 rgba(0,0,0,.95),0 0 7px rgba(0,32,54,.95)!important;
}
body.is-geo-view.geo-day-mode .geo-depth-radar-label-icon span,
body.is-geo-view.geo-day-mode .geo-depth-radar-north-marker{
  color:#ffffff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 6px rgba(0,35,58,.85)!important;
}
@media (max-width:390px){
  body.is-geo-view .geo-day-mode-toggle{
    font-size:17px!important;
  }
}

/* v44: Vahemaa mõõtmine – parempoolne nupp, lipud ja joone peal mõõt */
body.is-geo-view .geo-measure-toggle .geo-measure-icon{
  position:relative!important;
  display:block!important;
  width:23px!important;
  height:23px!important;
  min-width:23px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M6.5 15.5A11.5 11.5 0 0 1 25.5 15.5' fill='none' stroke='white' stroke-width='2.3' stroke-linecap='round' stroke-dasharray='2.2 3.2' opacity='.98'/%3E%3Ccircle cx='16' cy='7.2' r='2.4' fill='white'/%3E%3Cpath d='M16 9.5 9.2 27' fill='none' stroke='white' stroke-width='2.7' stroke-linecap='round'/%3E%3Cpath d='M16 9.5 23 27' fill='none' stroke='white' stroke-width='2.7' stroke-linecap='round'/%3E%3Cpath d='M11.9 20.6h8.2' fill='none' stroke='white' stroke-width='2.1' stroke-linecap='round' opacity='.95'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
}
body.is-geo-view .geo-measure-toggle .geo-measure-icon::before,
body.is-geo-view .geo-measure-toggle .geo-measure-icon::after{
  content:none!important;
  display:none!important;
}
body.is-geo-view .geo-measure-toggle.is-active{
  background:linear-gradient(180deg,rgba(255,66,66,.34),rgba(130,12,12,.78))!important;
  border-color:rgba(255,120,120,.62)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.10) inset,0 0 14px rgba(255,48,48,.28)!important;
}
body.is-geo-view .geo-measure-line{
  filter:drop-shadow(0 1px 3px rgba(0,0,0,.72));
}

body.geo-distance-measuring .leaflet-marker-icon:not(.geo-measure-flag-icon),
body.geo-distance-measuring .leaflet-interactive:not(.geo-measure-line){
  pointer-events:none!important;
}

body.is-geo-view .geo-measure-flag-icon{
  background:transparent!important;
  border:0!important;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.55));
}
body.is-geo-view .geo-measure-flag-pole{
  position:absolute!important;
  left:6px!important;
  top:3px!important;
  width:3px!important;
  height:29px!important;
  border-radius:2px!important;
  background:linear-gradient(180deg,#f5f5f5,#7e7e7e)!important;
  box-shadow:0 0 0 1px rgba(0,0,0,.36)!important;
}
body.is-geo-view .geo-measure-flag-b .geo-measure-flag-pole{
  height:38px!important;
}
body.is-geo-view .geo-measure-flag-cloth{
  position:absolute!important;
  left:8px!important;
  top:4px!important;
  width:18px!important;
  height:13px!important;
  border-radius:2px 4px 4px 2px!important;
  background:#e52020!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 1px 2px rgba(0,0,0,.42)!important;
  overflow:hidden!important;
}
body.is-geo-view .geo-measure-flag-b .geo-measure-flag-red{
  top:4px!important;
  background:#e52020!important;
}
body.is-geo-view .geo-measure-flag-b .geo-measure-flag-black{
  top:19px!important;
  background:#111!important;
  border-color:rgba(255,255,255,.66)!important;
}
body.is-geo-view .geo-measure-distance-label-icon{
  background:transparent!important;
  border:0!important;
  width:auto!important;
  height:auto!important;
}
body.is-geo-view .geo-measure-distance-label-icon span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:translate(-50%,-50%)!important;
  min-width:max-content!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  background:rgba(10,16,14,.86)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  color:#fff!important;
  font:950 12px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.75)!important;
  box-shadow:0 6px 16px rgba(0,0,0,.32)!important;
  white-space:nowrap!important;
}
.geo-measure-hold-progress{
  position:fixed!important;
  z-index:20000!important;
  top:calc(env(safe-area-inset-top,0px) + 132px)!important;
  bottom:calc(env(safe-area-inset-bottom,0px) + 86px)!important;
  left:18px!important;
  width:9px!important;
  height:auto!important;
  margin:0!important;
  border-radius:999px!important;
  pointer-events:none!important;
  background:rgba(6,12,10,.62)!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.42),0 0 0 1px rgba(0,0,0,.28)!important;
  overflow:hidden!important;
}
.geo-measure-hold-progress::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:var(--geo-measure-progress,0%)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#cffff0 0%,#70f58b 55%,#20d562 100%)!important;
  box-shadow:0 0 16px rgba(112,245,139,.68)!important;
}
.geo-measure-hold-progress::after{
  content:""!important;
  position:absolute!important;
  left:-6px!important;
  right:-6px!important;
  top:calc(var(--geo-measure-progress,0%) - 2px)!important;
  height:5px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 0 13px rgba(112,245,139,.95)!important;
}
.geo-measure-confirm-pulse{
  position:fixed!important;
  z-index:19999!important;
  left:0!important;
  top:0!important;
  width:22px!important;
  height:22px!important;
  margin-left:-11px!important;
  margin-top:-11px!important;
  border-radius:50%!important;
  pointer-events:none!important;
  border:3px solid rgba(112,245,139,.96)!important;
  box-shadow:0 0 0 0 rgba(112,245,139,.55)!important;
  animation:geoMeasureConfirmPulse .68s ease-out forwards!important;
}
@keyframes geoMeasureConfirmPulse{
  0%{transform:scale(.65);opacity:1;box-shadow:0 0 0 0 rgba(112,245,139,.55)}
  100%{transform:scale(3.1);opacity:0;box-shadow:0 0 0 18px rgba(112,245,139,0)}
}

body.geo-distance-measuring .leaflet-popup-pane{
  pointer-events:none!important;
}
body.geo-distance-measuring .geo-waterbody-popup-wrap,
body.geo-distance-measuring .geo-access-popup-wrap,
body.geo-distance-measuring .geo-ban-popup-wrap{
  display:none!important;
}

@media (max-width:390px){
  body.is-geo-view .geo-measure-toggle .geo-measure-icon{width:22px!important;height:22px!important;min-width:22px!important;}
}

/* Geofishing user markers v1 */
.geo-user-marker-icon{
  filter:none;
}
.geo-user-marker-icon.is-draft{
  filter:none;
}
.geo-user-markers-modal{
  position:fixed;
  inset:0;
  z-index:18000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.58);
  backdrop-filter:blur(6px);
}
.geo-user-markers-card{
  width:min(560px, calc(100vw - 24px));
  max-height:min(760px, calc(100vh - 32px));
  overflow:auto;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.15);
  background:linear-gradient(180deg, rgba(14,29,22,.98), rgba(6,15,11,.98));
  color:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.48);
}
.geo-user-markers-body{
  padding:14px;
}
.geo-user-marker-intro{
  margin:0 0 12px;
  color:rgba(255,255,255,.76);
  font-size:13px;
  line-height:1.35;
}
.geo-user-marker-form{
  display:grid;
  gap:12px;
}
.geo-user-marker-form label{
  display:grid;
  gap:6px;
  font-size:13px;
  font-weight:850;
}

.geo-user-marker-type-field{
  display:grid;
  gap:8px;
  font-size:13px;
  font-weight:850;
}
.geo-user-marker-type-picker{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
}
.geo-user-marker-type-choice{
  appearance:none;
  border:1px solid rgba(255,255,255,.14);
  border-radius:13px;
  background:rgba(255,255,255,.055);
  color:#fff;
  min-height:104px;
  padding:8px 5px 7px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  cursor:pointer;
  font:800 10.5px/1.12 Inter,system-ui,sans-serif;
  text-align:center;
}
.geo-user-marker-type-choice img{
  width:48px;
  height:68px;
  object-fit:contain;
  display:block;
  filter:none;
}
.geo-user-marker-type-choice span{
  display:block;
  max-width:100%;
  color:rgba(255,255,255,.78);
}
.geo-user-marker-type-choice.is-selected{
  border-color:rgba(112,245,139,.70);
  background:rgba(112,245,139,.13);
  box-shadow:0 0 0 1px rgba(112,245,139,.16) inset;
}
.geo-user-marker-type-choice.is-selected span{
  color:#fff;
}
.geo-user-marker-type-choice:focus-visible{
  outline:2px solid rgba(112,245,139,.9);
  outline-offset:2px;
}
.geo-user-marker-form input,
.geo-user-marker-form select,
.geo-user-marker-form textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(6,14,10,.72);
  color:#fff;
  padding:11px 12px;
  font:700 14px/1.25 Inter,system-ui,sans-serif;
  outline:none;
}
.geo-user-marker-form textarea{
  min-height:78px;
  resize:vertical;
}
.geo-user-marker-location{
  display:grid;
  gap:7px;
  padding:11px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.88);
  font-size:13px;
}
.geo-user-marker-rules{
  display:grid;
  gap:6px;
  padding:12px;
  border-radius:14px;
  background:rgba(255,213,77,.09);
  border:1px solid rgba(255,213,77,.22);
  color:rgba(255,255,255,.88);
  font-size:12.5px;
  line-height:1.35;
}
.geo-user-marker-rules p{margin:0;}
.geo-user-marker-muted{
  color:rgba(255,255,255,.58);
  font-weight:700;
}
.geo-user-marker-popup strong{
  display:block;
  margin-bottom:4px;
  color:#062016;
  font-weight:950;
}
.geo-user-marker-note{
  margin:5px 0 7px;
  color:#143226;
  line-height:1.28;
}
.geo-user-marker-code{
  margin-top:6px;
  color:rgba(8,35,24,.66);
  font-size:10.5px;
  font-weight:750;
  letter-spacing:.02em;
}
.geo-user-marker-small{
  margin-top:3px;
  color:rgba(8,35,24,.58);
  font-size:10.5px;
  line-height:1.2;
}
.geo-user-marker-popup-wrap .leaflet-popup-content-wrapper{
  border-radius:14px;
}
.geo-user-marker-popup-wrap .leaflet-popup-content{
  margin:10px 12px;
  min-width:150px;
}
body.geo-user-markers-modal-open{
  overflow:hidden;
}
@media (max-width:390px){
  .geo-user-markers-modal{padding:10px;align-items:flex-start;}
  .geo-user-markers-card{max-height:calc(100vh - 20px);border-radius:16px;}
  .geo-user-markers-body{padding:12px;}
  .geo-user-marker-form{gap:10px;}
  .geo-user-marker-type-picker{grid-template-columns:repeat(3, minmax(0, 1fr));gap:7px;}
  .geo-user-marker-type-choice{min-height:96px;padding:7px 4px 6px;font-size:10px;}
  .geo-user-marker-type-choice img{width:42px;height:60px;}
}

/* Geofishing user marker location confirmation controls */
.geo-user-marker-pick-controls {
  position: fixed;
  left: 12px;
  right: 12px;
  bottom: calc(14px + env(safe-area-inset-bottom, 0px));
  z-index: 1850;
  display: flex;
  justify-content: center;
  pointer-events: none;
}
.geo-user-marker-pick-card {
  width: min(520px, 100%);
  border: 1px solid rgba(23, 71, 55, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 10px 34px rgba(12, 36, 28, 0.18);
  padding: 12px 14px 14px;
  color: #12372b;
  pointer-events: auto;
}
.geo-user-marker-pick-card strong {
  display: block;
  font-size: 14px;
  margin-bottom: 5px;
}
.geo-user-marker-pick-card p {
  margin: 0 0 10px;
  font-size: 12.5px;
  line-height: 1.35;
  color: rgba(18, 55, 43, 0.82);
}
.geo-user-marker-pick-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.geo-user-marker-pick-actions .geo-event-submit,
.geo-user-marker-pick-actions .geo-event-small-btn {
  width: auto;
  min-height: 38px;
  margin: 0;
}
@media (max-width: 520px) {
  .geo-user-marker-pick-controls {
    left: 8px;
    right: 8px;
    bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  }
  .geo-user-marker-pick-card {
    border-radius: 16px;
    padding: 11px;
  }
  .geo-user-marker-pick-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .geo-user-marker-pick-actions .geo-event-submit {
    grid-column: 1 / -1;
  }
}

/* === GEO marker popup readability fix v7 ===
   Kasutajamarkeri infoaken peab olema sama loetav kui teised Geofishingu infoaknad. */
body.is-geo-view .geo-user-marker-popup{
  min-width:220px!important;
  max-width:300px!important;
  color:#ffffff!important;
  font:400 12px/1.38 Inter,system-ui,sans-serif!important;
  background:rgba(6,18,20,.76)!important;
  border:1px solid rgba(216,255,227,.15)!important;
  border-radius:14px!important;
  box-shadow:none!important;
  padding:10px 12px!important;
  text-shadow:none!important;
}
body.is-geo-view .geo-user-marker-popup-wrap .leaflet-popup-content-wrapper{
  background:transparent!important;
  border-radius:16px!important;
  box-shadow:none!important;
  padding:0!important;
}
body.is-geo-view .geo-user-marker-popup-wrap .leaflet-popup-content{
  margin:6px!important;
  min-width:auto!important;
}
body.is-geo-view .geo-user-marker-popup-wrap .leaflet-popup-tip{
  background:rgba(6,18,20,.76)!important;
  box-shadow:none!important;
}
body.is-geo-view .geo-user-marker-popup strong{
  display:block!important;
  margin:0 0 6px!important;
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:650!important;
  letter-spacing:.01em!important;
}
body.is-geo-view .geo-user-marker-note{
  margin:5px 0 7px!important;
  color:rgba(255,255,255,.88)!important;
  line-height:1.32!important;
}
body.is-geo-view .geo-user-marker-code{
  margin-top:6px!important;
  color:rgba(216,255,227,.70)!important;
  font-size:10.5px!important;
  font-weight:650!important;
  letter-spacing:.02em!important;
}
body.is-geo-view .geo-user-marker-small{
  margin-top:3px!important;
  color:rgba(255,255,255,.72)!important;
  font-size:10.5px!important;
  line-height:1.25!important;
}

/* === GEO marker popup micro effect v8 ===
   Kiire mängulik, kuid tagasihoidlik "välja hüppe" efekt markeri infoaknale. */
@keyframes geoUserMarkerPopupPopV8 {
  0% {
    opacity: 0;
    transform: translate3d(0, 8px, 0) scale(.94);
  }
  68% {
    opacity: 1;
    transform: translate3d(0, -3px, 0) scale(1.025);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}
body.is-geo-view .leaflet-popup.geo-user-marker-popup-game-pop .leaflet-popup-content-wrapper,
body.is-geo-view .leaflet-popup.geo-user-marker-popup-game-pop .leaflet-popup-tip-container {
  transform-origin: 50% 100%;
  animation: geoUserMarkerPopupPopV8 .18s cubic-bezier(.18,.89,.32,1.28) both;
  will-change: transform, opacity;
}
@media (prefers-reduced-motion: reduce) {
  body.is-geo-view .leaflet-popup.geo-user-marker-popup-game-pop .leaflet-popup-content-wrapper,
  body.is-geo-view .leaflet-popup.geo-user-marker-popup-game-pop .leaflet-popup-tip-container {
    animation: none!important;
  }
}


/* === GEO marker popup v9 cleanup === */
body.is-geo-view .geo-user-marker-popup-wrap .leaflet-popup-close-button{
  display:none!important;
}
.geo-event-flag-div-icon{
  width:32px!important;
  height:32px!important;
  border-radius:50%;
  display:flex!important;
  align-items:center;
  justify-content:center;
  background:rgba(8,18,14,.92);
  border:2px solid rgba(141,243,164,.85);
  color:#8df3a4;
  font-size:20px;
  line-height:1;
  box-shadow:none!important;
}
.geo-event-flag-div-icon span{
  transform:translateY(-1px);
}

/* === Geofishing STEM embedded view v1 ===
   STEM opens inside BETA so the live map and its state remain in memory. */
body.is-stem-view{
  overflow:hidden!important;
}
.geo-stem-overlay{
  position:fixed;
  inset:0;
  z-index:24000;
  display:flex;
  flex-direction:column;
  width:100%;
  height:100vh;
  height:100dvh;
  background:#eef4f5;
}
.geo-stem-overlay.hidden{
  display:none!important;
}
.geo-stem-toolbar{
  flex:0 0 auto;
  min-height:52px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:7px 10px;
  padding-top:max(7px, env(safe-area-inset-top));
  background:rgba(255,255,255,.97);
  border-bottom:1px solid rgba(24,35,45,.12);
  box-shadow:0 8px 24px rgba(24,35,45,.10);
}
.geo-stem-back{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:38px;
  padding:0 12px;
  border:1px solid rgba(24,35,45,.12);
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#edf3f6);
  color:#203844;
  font:800 13px/1 Inter,system-ui,sans-serif;
  cursor:pointer;
}
.geo-stem-back:focus-visible{
  outline:3px solid rgba(90,168,255,.42);
  outline-offset:2px;
}
.geo-stem-title{
  justify-self:center;
  color:#18232d;
  font:900 14px/1 Inter,system-ui,sans-serif;
  letter-spacing:.04em;
  white-space:nowrap;
}
.geo-stem-toolbar-spacer{
  justify-self:end;
  width:1px;
}
.geo-stem-frame-wrap{
  flex:1 1 auto;
  min-height:0;
  background:#eef4f5;
}
#geoStemFrame{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#eef4f5;
}
@media (max-width:560px){
  .geo-stem-toolbar{
    grid-template-columns:auto 1fr;
  }
  .geo-stem-title{
    justify-self:end;
    padding-right:4px;
  }
  .geo-stem-toolbar-spacer{
    display:none;
  }
}


/* BETA v4.6.3: autoriõiguste ja andmeallikate modaal */
.geo-data-modal{z-index:2200;}
.geo-data-card{
  width:min(620px,100%);
  max-height:min(84vh,var(--app-viewport-height,84vh));
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(126,218,147,.25);
  background:linear-gradient(180deg,rgba(16,34,22,.98),rgba(8,17,11,.99));
  color:#ecfff0;
}
.geo-data-card .geo-modal-head{flex:0 0 auto;margin-bottom:8px;}
.geo-data-card .geo-modal-close{color:#ecfff0;}
.geo-data-body{overflow:auto;overscroll-behavior:contain;padding-right:4px;}
.geo-data-body section{padding:10px 0;border-top:1px solid rgba(126,218,147,.15);}
.geo-data-body section:first-child{border-top:0;padding-top:2px;}
.geo-data-body h3{margin:0 0 6px;font-size:14px;line-height:1.25;color:#d9ffe2;}
.geo-data-body p{margin:0 0 8px;font-size:12px;line-height:1.48;color:rgba(236,255,240,.88);}
.geo-data-body a{color:#9ae5ac;font-weight:800;}
@media (max-width:640px){
  .geo-data-card{max-height:82vh;}
}

/* BETA v4.6.6 – mere koordinaadivõrk, tugevamad viited ja märklaua koordinaadid */
.geo-depth-radar-coords{
  position:absolute!important;
  left:50%!important;
  top:50px!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:230px!important;
  padding:3px 6px!important;
  border:1px solid rgba(188,246,255,.24)!important;
  border-radius:8px!important;
  background:rgba(5,20,30,.66)!important;
  color:rgba(224,250,255,.94)!important;
  font:600 9px/1.15 Inter,system-ui,sans-serif!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
  text-shadow:0 1px 3px rgba(0,0,0,.8)!important;
  box-shadow:0 3px 10px rgba(0,0,0,.18)!important;
  pointer-events:none!important;
  z-index:6!important;
}
.geo-coordinate-grid-label{
  background:transparent!important;
  border:0!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.geo-coordinate-grid-label span{
  display:inline-block!important;
  padding:2px 4px!important;
  border-radius:5px!important;
  border:1px solid rgba(210,248,255,.18)!important;
  background:rgba(5,24,35,.48)!important;
  color:rgba(226,251,255,.88)!important;
  font:700 9px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
  text-shadow:0 1px 3px rgba(0,0,0,.82)!important;
  box-shadow:0 1px 4px rgba(0,0,0,.16)!important;
}
.geo-coordinate-grid-label-lat span{transform:translateX(0)!important;}
.geo-reference-overlay-tile{
  filter:saturate(.78) contrast(1.16) brightness(1.08)!important;
}
.geo-sea-depth-overview-tile{
  filter:brightness(1.10) contrast(1.10)!important;
}
body.is-geo-view.geo-day-mode .geo-coordinate-grid-label span{
  background:rgba(244,252,253,.72)!important;
  border-color:rgba(11,54,68,.20)!important;
  color:rgba(5,43,56,.88)!important;
  text-shadow:0 1px 1px rgba(255,255,255,.75)!important;
}
@media (max-width:640px){
  .geo-depth-radar-coords{top:46px!important;font-size:8px!important;max-width:205px!important;padding:3px 5px!important;}
  .geo-coordinate-grid-label span{font-size:8px!important;padding:2px 3px!important;}
}



/* BETA v4.6.8 – kohalik töökindel alusvaade, loetavam koordinaadivõrk ja märklaua koordinaadid */
body.is-geo-view .geo-map-wrap-fullscreen,
body.is-geo-view .geo-map-fullscreen{
  background:#cbd5cc!important;
}
.geo-depth-radar-coords{
  top:50px!important;
  max-width:260px!important;
  padding:5px 8px!important;
  border:1px solid rgba(15,39,52,.34)!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.94)!important;
  color:#102936!important;
  font:800 11px/1.2 Inter,system-ui,sans-serif!important;
  letter-spacing:.012em!important;
  text-shadow:none!important;
  box-shadow:0 3px 12px rgba(0,0,0,.18)!important;
}
.geo-coordinate-grid-label span{
  padding:3px 6px!important;
  border-radius:5px!important;
  border:1px solid rgba(13,42,56,.36)!important;
  background:rgba(255,255,255,.94)!important;
  color:#0e2b39!important;
  font:850 11px/1.05 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  text-shadow:none!important;
  box-shadow:0 2px 7px rgba(0,0,0,.18)!important;
}
.geo-reference-overlay-tile{
  filter:saturate(.88) contrast(1.25) brightness(1.02)!important;
}
.geo-sea-depth-visual-tile{
  filter:saturate(1.08) contrast(1.15) brightness(.98)!important;
}
.geo-sea-depth-overview-tile{
  filter:saturate(1.08) brightness(1.15) contrast(1.22)!important;
}
@media (max-width:640px){
  .geo-depth-radar-coords{top:47px!important;font-size:10px!important;max-width:235px!important;padding:4px 7px!important;}
  .geo-coordinate-grid-label span{font-size:10px!important;padding:3px 5px!important;}
}

/* BETA v4.6.8 lõplik loetavus – tugevam paberkaardi võrk ja selgem merepõhja reljeef */
.geo-depth-radar-coords{
  max-width:285px!important;
  padding:6px 10px!important;
  background:#fff!important;
  color:#0a2634!important;
  border-color:rgba(8,35,48,.46)!important;
  font-size:12px!important;
  line-height:1.2!important;
}
.geo-coordinate-grid-label span{
  min-width:56px!important;
  padding:4px 7px!important;
  background:#fff!important;
  color:#081f2b!important;
  border-color:rgba(5,31,44,.48)!important;
  font-size:12px!important;
  line-height:1.05!important;
  text-align:center!important;
}
.geo-sea-depth-visual-tile{
  filter:saturate(1.16) contrast(1.30) brightness(.96)!important;
}
.geo-sea-depth-overview-tile{
  filter:saturate(1.24) brightness(1.02) contrast(1.42)!important;
}
@media (max-width:640px){
  .geo-depth-radar-coords{font-size:11px!important;max-width:255px!important;padding:5px 8px!important;}
  .geo-coordinate-grid-label span{font-size:11px!important;min-width:52px!important;padding:4px 6px!important;}
}
.geo-depth-line-main{filter:drop-shadow(0 0 1px rgba(0,28,46,.78));}
.geo-depth-line-minor{filter:drop-shadow(0 0 1px rgba(0,35,55,.72));}
body.is-geo-view.geo-day-mode .geo-depth-radar-ring{filter:drop-shadow(0 0 1px rgba(255,255,255,.95));}


/* Geofishing BETA v4.6.15: Ruhnu läbipaistev veealune XYZ-reljeefikiht. */
.geo-ruhnu-approved-visual-tile{
  filter:none!important;
  image-rendering:auto;
  backface-visibility:hidden;
}

/* Geofishing BETA v4.6.15 — lukustatud Ruhnu visuaali taastamine ja ainult kinnitatud UI-parandused. */
html,
body,
body.is-geo-view,
body.is-geo-view .app,
body.is-geo-view #geoView,
body.is-geo-view .geo-card-fullscreen,
body.is-geo-view .geo-map-wrap-fullscreen,
body.is-geo-view .geo-map-fullscreen{
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
body.is-geo-view,
body.is-geo-view .geo-card-fullscreen,
body.is-geo-view .geo-map-wrap-fullscreen,
body.is-geo-view .geo-map-fullscreen{
  background:#081d2a!important;
}
body.is-geo-view .geo-map-wrap-fullscreen::after{
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:25px!important;
  background:#071318!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Kinnitatud v2 Ruhnu tile-pilt jääb muutmata. */
.geo-ruhnu-approved-visual-tile{
  filter:none!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Koordinaatide numbrid on alati kaardi vasakus ja alumises servas. */
body.is-geo-view .geo-coordinate-edge-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:850!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
body.is-geo-view .geo-coordinate-edge-overlay.hidden{display:none!important;}
body.is-geo-view .geo-coordinate-edge-label{
  position:absolute!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:50px!important;
  padding:3px 6px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(5,31,44,.42)!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#081f2b!important;
  font:850 10px/1.05 Inter,system-ui,sans-serif!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-shadow:none!important;
  box-shadow:0 2px 7px rgba(0,0,0,.18)!important;
}
body.is-geo-view .geo-coordinate-edge-label-lng{
  bottom:31px!important;
  transform:translateX(-50%)!important;
}
body.is-geo-view .geo-coordinate-edge-label-lat{
  left:5px!important;
  transform:translateY(-50%)!important;
}

/* Footer: Geofishing vasakul, Andmed paremal ja nupp klikitav. */
body.is-geo-view .geo-bottom-title{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:none!important;
  height:25px!important;
  min-height:25px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:3px 6px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
  z-index:900!important;
}
body.is-geo-view .geo-bottom-primary{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex:1 1 auto!important;
  min-width:0!important;
  line-height:1!important;
  pointer-events:none!important;
}
body.is-geo-view .geo-bottom-brand{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  flex:0 0 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.is-geo-view .geo-bottom-sources{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex:0 0 auto!important;
  width:auto!important;
  margin-left:auto!important;
  overflow:visible!important;
  color:rgba(235,246,239,.96)!important;
  font:750 9px/1 Inter,system-ui,sans-serif!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
}
body.is-geo-view .geo-bottom-source-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:2px 5px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:5px!important;
  background:rgba(255,255,255,.08)!important;
  color:inherit!important;
  font:inherit!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
body.is-geo-view .geo-footer-esri{display:none!important;}

@media (max-width:620px){
  body.is-geo-view .geo-coordinate-edge-label{min-width:46px!important;padding:3px 5px!important;font-size:9px!important;}
  body.is-geo-view .geo-coordinate-edge-label-lng{bottom:30px!important;}
  body.is-geo-view .geo-bottom-title{height:24px!important;min-height:24px!important;padding:3px 5px!important;gap:5px!important;}
  body.is-geo-view .geo-bottom-sources{font-size:8px!important;}
}


/* Geofishing BETA v4.6.16 — ainult kinnitatud Ruhnu kihi, laadimise, zoominumbri ja Andmed-akna parandused. */
.geo-ruhnu-approved-visual-tile{
  filter:none!important;
  opacity:1!important;
  image-rendering:auto!important;
}
/* Kerge üldine overview ei tohi enam ametlike joonte peal olla. */
.geo-sea-depth-overview-tile{pointer-events:none!important;}
body.is-geo-view .geo-map-zoom{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  color:rgba(235,246,239,.92)!important;
  font:800 8px/1 Inter,system-ui,sans-serif!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
}
/* Andmed avaneb alati nähtava ekraani keskel, mitte alumise serva küljes. */
body.is-geo-view .geo-data-modal{
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
}
body.is-geo-view .geo-data-card{
  margin:auto!important;
  max-height:min(82vh,var(--app-viewport-height,82vh))!important;
}
@media (max-width:640px){
  body.is-geo-view .geo-data-modal{align-items:center!important;padding:10px!important;}
  body.is-geo-view .geo-data-card{max-height:min(84vh,var(--app-viewport-height,84vh))!important;}
  body.is-geo-view .geo-map-zoom{font-size:7px!important;}
}


/* Geofishing BETA v4.6.17 — ainult vana heleda merekihi eemaldus,
   Ruhnu tumeda kihi püsivus, lokaalsed sügavusjooned, vaateulatus ja Andmed-akna keskkoht. */
/* Vana hele visual ja overview on koodis välja lülitatud; CSS on lisaturve brauseri vana DOM/cache vastu. */
body.is-geo-view .geo-sea-depth-visual-tile,
body.is-geo-view .geo-sea-depth-overview-tile{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}
body.is-geo-view .geo-ruhnu-approved-visual-tile{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}
/* Andmed-aken on alati päris vaateakna keskel. */
.geo-data-modal{
  position:fixed!important;
  inset:0!important;
  align-items:center!important;
  justify-content:center!important;
  padding:16px!important;
}
.geo-data-modal:not(.hidden){display:flex!important;}
.geo-data-modal.hidden{display:none!important;}
.geo-data-modal .geo-data-card{
  position:relative!important;
  margin:0!important;
  transform:none!important;
  max-height:min(82vh,820px)!important;
}
body.is-geo-view .geo-map-zoom{
  font-variant-numeric:tabular-nums!important;
}
@media(max-width:640px){
  .geo-data-modal{padding:10px!important;}
  .geo-data-modal .geo-data-card{max-height:84vh!important;}
}

/* Geofishing BETA: sektoripõhine läbipaistev merepõhja XYZ-kiht. */
body.is-geo-view .geo-sea-sector-visual-tile{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Päevarežiimi kerge veeala kiht: järvede päevarežiimi täpne sinine sügavuspalett, maismaa alfa 0. */
body.is-geo-view .geo-sea-sector-day-tile{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  image-rendering:auto!important;
  backface-visibility:hidden!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

body.is-geo-view #geoMap .leaflet-control,
body.is-geo-view #geoMap .leaflet-control a,
body.is-geo-view #geoMap button,
body.is-geo-view #geoMap input,
body.is-geo-view #geoMap select,
body.is-geo-view #geoMap textarea{
  cursor:pointer!important;
}


/* Geofishing BETA v4.6.18 – märklaua skaalaringide nähtavus ja infoploki püsiv vahe. */
.geo-depth-radar-coords{
  top:62px!important;
}
@media (max-width:640px){
  .geo-depth-radar-coords{top:56px!important;}
}

/* Geofishing BETA v4.6.19 — kaldaserv, maismaa puhtus, kursor ja märklaua kontrast. */
/* Sügavuskaardi kursor on alati nähtav: maismaal/algvaates lohistamiskäsi,
   mere sügavusmudeli kohal täpne sihik. */
body.is-geo-view #geoMap.geo-depth-cursor-mode,
body.is-geo-view #geoMap.geo-depth-cursor-mode .leaflet-map-pane,
body.is-geo-view #geoMap.geo-depth-cursor-mode .leaflet-overlay-pane{
  cursor:grab!important;
}
body.is-geo-view #geoMap.geo-depth-cursor-mode.geo-depth-cursor-sea,
body.is-geo-view #geoMap.geo-depth-cursor-mode.geo-depth-cursor-sea .leaflet-map-pane,
body.is-geo-view #geoMap.geo-depth-cursor-mode.geo-depth-cursor-sea .leaflet-overlay-pane{
  cursor:crosshair!important;
}
body.is-geo-view #geoMap.geo-depth-cursor-mode.leaflet-dragging,
body.is-geo-view #geoMap.geo-depth-cursor-mode.leaflet-dragging .leaflet-map-pane,
body.is-geo-view #geoMap.geo-depth-cursor-mode.leaflet-dragging .leaflet-overlay-pane{
  cursor:grabbing!important;
}
body.is-geo-view #geoMap .leaflet-control,
body.is-geo-view #geoMap .leaflet-control *,
body.is-geo-view #geoMap button,
body.is-geo-view #geoMap a{
  cursor:pointer!important;
}

/* Aluskaart/ortofoto jääb maismaal muutmata. Vee tile'i alfa on ainus lõikemask. */
body.is-geo-view.geo-day-mode .geo-local-base-tile,
body.is-geo-view.geo-day-mode .geo-street-base-tile,
body.is-geo-view.geo-day-mode .geo-ortho-base-tile,
body.is-geo-view .geo-local-base-tile,
body.is-geo-view .geo-street-base-tile,
body.is-geo-view .geo-ortho-base-tile{
  filter:none!important;
}



/* Geofishing BETA v12 — deterministic reticle contrast; no blend-mode dependency. */
body.is-geo-view.geo-day-mode .geo-depth-radar-ring{mix-blend-mode:normal!important;filter:none!important;vector-effect:non-scaling-stroke!important;}
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-light .geo-depth-radar-value,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-light .geo-depth-radar-label-icon span,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-light .geo-depth-radar-north-marker{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 6px rgba(0,35,58,.85)!important;}
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-dark .geo-depth-radar-value,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-dark .geo-depth-radar-label-icon span,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-dark .geo-depth-radar-north-marker{color:#07364a!important;text-shadow:0 1px 1px rgba(255,255,255,.96),0 0 4px rgba(255,255,255,.78)!important;}
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-dark .geo-depth-radar-cross::before,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-dark .geo-depth-radar-cross::after{background:#07364a!important;box-shadow:0 0 0 1px rgba(255,255,255,.95),0 0 5px rgba(255,255,255,.82)!important;}
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-light .geo-depth-radar-cross::before,
body.is-geo-view.geo-day-mode #geoMap.geo-reticle-light .geo-depth-radar-cross::after{background:#fff36a!important;box-shadow:0 0 0 1px rgba(3,20,30,.82),0 0 7px rgba(255,243,106,.70)!important;}

/* v14: kompaktne kuvarežiimi valik */
body.is-geo-view .geo-display-mode-section .geo-settings-section-body{
  gap:0!important;
}
body.is-geo-view .geo-display-mode-options{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
}
body.is-geo-view .geo-display-mode-options .geo-settings-option{
  min-width:0!important;
  width:100%!important;
  padding:8px 5px!important;
  white-space:nowrap!important;
  font-size:11px!important;
  letter-spacing:.04em!important;
}
body.is-geo-view .geo-day-mode-toggle.is-auto{
  border-color:rgba(103,214,244,.72)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 0 12px rgba(74,193,225,.24)!important;
}
body.is-geo-view .geo-day-mode-toggle.is-auto.is-active{
  border-color:rgba(255,227,106,.80)!important;
  box-shadow:0 0 0 1px rgba(103,214,244,.34) inset,0 0 15px rgba(255,220,96,.30)!important;
}


/* v15: prindi/salvesta kaardivaade koos Geofishingu autorimärke ja asukohaga. */
body.is-geo-view .geo-print-toggle .geo-print-icon{display:grid!important;place-items:center!important;width:23px!important;height:23px!important;min-width:23px!important;}
body.is-geo-view .geo-print-toggle .geo-print-icon svg{width:22px!important;height:22px!important;display:block!important;fill:currentColor!important;}
.geo-print-attribution{display:none;}
@media print{
  @page{size:landscape;margin:0;}
  html,body{width:100%!important;height:100%!important;margin:0!important;padding:0!important;background:#fff!important;overflow:hidden!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;}
  body.geo-map-printing *{visibility:hidden!important;}
  body.geo-map-printing #geoMap,body.geo-map-printing #geoMap *{visibility:visible!important;}
  body.geo-map-printing #geoMap{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;margin:0!important;border:0!important;border-radius:0!important;z-index:999999!important;background:#fff!important;}
  body.geo-map-printing #geoMap .leaflet-control-container,
  body.geo-map-printing #geoMap .geo-side-controls,
  body.geo-map-printing #geoMap .geo-speed-mini,
  body.geo-map-printing #geoMap .geo-day-mode-btn,
  body.geo-map-printing #geoMap .geo-menu-toggle,
  body.geo-map-printing #geoMap .geo-layer-panel{display:none!important;}
  body.geo-map-printing #geoMap .geo-print-attribution{display:flex!important;visibility:visible!important;position:absolute!important;left:12mm!important;right:12mm!important;bottom:8mm!important;z-index:1000000!important;box-sizing:border-box!important;flex-direction:column!important;gap:1.5mm!important;padding:3mm 4mm!important;border:1px solid rgba(7,34,47,.42)!important;border-radius:2mm!important;background:rgba(255,255,255,.93)!important;color:#082531!important;font:600 8.5pt/1.3 Inter,Arial,sans-serif!important;box-shadow:0 1mm 4mm rgba(0,0,0,.14)!important;}
  body.geo-map-printing #geoMap .geo-print-attribution strong{font-size:11pt!important;letter-spacing:.01em!important;}
  body.geo-map-printing #geoMap .geo-print-attribution span{font-size:9pt!important;font-weight:800!important;}
  body.geo-map-printing #geoMap .geo-print-attribution small{font-size:7.5pt!important;line-height:1.25!important;}
}
