/* UtiliNexus 2.8.45.17 — GPS / Mapping Precision */

.unx-gps-tracking-banner{
  display:flex;
  align-items:center;
  gap:11px;
  margin:8px 0 10px;
  padding:11px 13px;
  border:1px solid #29465f;
  border-radius:12px;
  background:#081827;
}

.unx-gps-tracking-banner>div:last-child{
  display:grid;
  gap:2px;
}

.unx-gps-tracking-banner b{
  font-size:12px;
  letter-spacing:.075em;
}

.unx-gps-tracking-banner span{
  color:#91a7ba;
  font-size:11px;
  line-height:1.4;
}

.unx-gps-tracking-banner.live{
  border-color:#19be7f;
  background:linear-gradient(90deg,rgba(24,210,142,.12),#081827 48%);
}

.unx-gps-tracking-banner.live b{
  color:#76e8b8;
}

.unx-gps-tracking-banner.off b{
  color:#b9c9d7;
}

.unx-gps-tracking-banner.stopping{
  border-color:#ffc43d;
  background:linear-gradient(90deg,rgba(255,196,61,.12),#081827 48%);
}

.unx-gps-tracking-banner.stopping b{
  color:#ffd775;
}

.unx-gps-live-dot,
.unx-gps-off-dot{
  flex:0 0 11px;
  width:11px;
  height:11px;
  border-radius:50%;
}

.unx-gps-live-dot{
  background:#18d28e;
  box-shadow:0 0 0 5px rgba(24,210,142,.11),0 0 16px rgba(24,210,142,.7);
  animation:unxGpsPulse 1.5s ease-in-out infinite;
}

.unx-gps-off-dot{
  background:#70869a;
  box-shadow:0 0 0 5px rgba(112,134,154,.08);
}

@keyframes unxGpsPulse{
  50%{box-shadow:0 0 0 8px rgba(24,210,142,.04),0 0 22px rgba(24,210,142,.85)}
}

.utility-card.unx-tracking-active{
  border-color:#18d28e !important;
  box-shadow:0 0 0 1px rgba(24,210,142,.25),0 0 24px rgba(24,210,142,.08);
}

.utility-card button:disabled{
  opacity:.42;
  cursor:not-allowed;
  filter:saturate(.45);
}

/* Coordinate list: utility color is applied to the label and the rail. */
.coord-row{
  position:relative;
  grid-template-columns:minmax(88px,120px) minmax(0,1fr) auto !important;
  border-left:4px solid var(--utility-color,#a7b1be);
}

.coord-row::before{
  content:"";
  position:absolute;
  left:-4px;
  top:0;
  bottom:0;
  width:4px;
  background:var(--utility-color,#a7b1be);
  box-shadow:0 0 9px color-mix(in srgb,var(--utility-color,#a7b1be) 42%,transparent);
}

.coord-row>b{
  color:var(--utility-color,#dce7f2);
}

.coord-row>span:nth-child(2){
  min-width:0;
  overflow-wrap:anywhere;
}

.gps-accuracy{
  display:block;
  margin-top:2px;
  color:#7792a9;
}

/* Bigger final map means the print/share snapshot has real usable resolution. */
.final-record .final-map{
  height:650px !important;
  min-height:650px !important;
}

.field-layout #fieldMap{
  min-height:580px;
}

.record-map-card{
  overflow:visible;
}

.record-basemap .map-mode-btn.active,
.basemap-toggle .map-mode-btn.active{
  border-color:#168cff !important;
  background:#0b3159 !important;
  color:#fff !important;
}

@media(max-width:760px){
  .final-record .final-map{
    height:58vh !important;
    min-height:430px !important;
  }

  .coord-row{
    grid-template-columns:92px minmax(0,1fr) !important;
  }

  .coord-row .point-kind{
    grid-column:1/-1;
    justify-self:start;
  }
}


/* UtiliNexus 2.8.45.46 — GPS Precision Phase 1 */
.unx-gps-precision-hud{
  display:grid;grid-template-columns:auto auto auto minmax(220px,1fr);gap:8px;align-items:stretch;
  margin:8px 0 10px;padding:8px;border:1px solid #29465f;border-radius:12px;background:#06131f;
}
.unx-gps-precision-hud>div{border:1px solid #203b50;border-radius:9px;background:#081827;padding:8px 10px;display:grid;gap:2px}
.unx-gps-precision-hud small{font-size:8px;color:#718da3;letter-spacing:.07em;font-weight:900}
.unx-gps-precision-hud b{font-size:11px}.unx-hud-fix{grid-template-columns:auto auto;column-gap:7px;align-items:center!important}
.unx-hud-fix i{width:10px;height:10px;border-radius:50%;background:#ff6262;box-shadow:0 0 0 4px rgba(255,98,98,.1)}
.unx-hud-fix span{font-size:9px;font-weight:950;color:#ff9b9b}.unx-hud-fix b{grid-column:1/-1;font-size:16px}
.unx-gps-precision-hud[data-quality=excellent] .unx-hud-fix{border-color:#2c7959}.unx-gps-precision-hud[data-quality=excellent] .unx-hud-fix i{background:#31e69a}.unx-gps-precision-hud[data-quality=excellent] .unx-hud-fix span{color:#8ef0bf}
.unx-gps-precision-hud[data-quality=good] .unx-hud-fix{border-color:#2f6b96}.unx-gps-precision-hud[data-quality=good] .unx-hud-fix i{background:#42a5ff}.unx-gps-precision-hud[data-quality=good] .unx-hud-fix span{color:#9fd1ff}
.unx-gps-precision-hud[data-quality=fair] .unx-hud-fix{border-color:#7c612b}.unx-gps-precision-hud[data-quality=fair] .unx-hud-fix i{background:#ffc44d}.unx-gps-precision-hud[data-quality=fair] .unx-hud-fix span{color:#ffd98a}
.unx-hud-note{font-size:9px;color:#7f98ab;line-height:1.45;align-content:center}
.unx-coordinate-quality{justify-self:end;border:1px solid #36516a;border-radius:999px;padding:3px 6px;font-size:7px!important;font-weight:950;letter-spacing:.04em}
.coord-row[data-gps-quality=good] .unx-coordinate-quality{color:#8ec8ff;border-color:#2d6d9d;background:#09233a}
.coord-row[data-gps-quality=fair] .unx-coordinate-quality{color:#ffd681;border-color:#765b2d;background:#241a08}
.coord-row[data-gps-quality=poor] .unx-coordinate-quality{color:#ff9a9a;border-color:#7e4141;background:#2a1114}
.coord-row[data-gps-quality=excellent] .unx-coordinate-quality{color:#8ee7bc;border-color:#2e7257;background:#09251b}
.final-record .final-map,.field-layout #fieldMap{touch-action:pan-x pan-y;}
.maplibregl-ctrl-zoom-in,.maplibregl-ctrl-zoom-out{width:42px!important;height:42px!important}
@media(max-width:800px){.unx-gps-precision-hud{grid-template-columns:1fr 1fr}.unx-hud-note{grid-column:1/-1}.unx-coordinate-quality{grid-column:1/-1;justify-self:start}}
