html, body { height: 100%; margin: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
#map { position: fixed; inset: 0; }

.hud {
  position: fixed; left: 14px; right: 14px; bottom: 14px;
  display: grid; gap: 10px;
}

.brand {
  background: rgba(255,255,255,0.9);
  border-radius: 14px;
  padding: 12px 14px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  backdrop-filter: blur(6px);
}
.logo { font-size: 26px; font-weight: 700; letter-spacing: -0.5px; }
.tag { color: #444; margin-top: 2px; }

.actions { display: flex; gap: 10px; flex-wrap: wrap; }
.btn {
  appearance: none; border: 0; cursor: pointer;
  padding: 12px 14px; border-radius: 12px;
  background: rgba(255,255,255,0.9);
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  text-decoration: none; color: #111; font-weight: 600;
}
.btn.primary { background: rgba(20, 110, 255, 0.92); color: white; }

.hint {
  background: rgba(255,255,255,0.9);
  border-radius: 12px;
  padding: 10px 12px;
  color: #444;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}


.share-fab{
  position: fixed !important;

  inset: auto !important;   /* ⚠️ neutralise tout inset */

  top: auto !important;
  left: auto !important;

  right: 20px !important;
  bottom: 150px !important;   /* ajuste ici */

  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: none;

  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(10px);

  display: grid;
  place-items: center;

  cursor: pointer;
  z-index: 9999;
  box-shadow: 0 6px 20px rgba(0,0,0,0.35);
}

.share-fab svg { fill: white; }

.share-sheet {
  position: fixed;
  inset: 0;
  display: none;
  z-index: 10000;
}
.share-sheet.active { display: block; }

.share-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.4);
}

.share-panel {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: rgba(20,20,20,0.95);
  backdrop-filter: blur(15px);
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  padding: 20px;
  text-align: center;
  animation: shareSlideUp 0.25s ease;
}

@keyframes shareSlideUp {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}

.share-handle {
  width: 40px;
  height: 4px;
  background: rgba(255,255,255,0.3);
  margin: 0 auto 15px;
  border-radius: 4px;
}

.share-text { color: rgba(255,255,255,0.85); margin: 10px 0 4px; }

.share-btn {
  width: 100%;
  padding: 12px;
  margin-top: 10px;
  border-radius: 12px;
  border: none;
  cursor: pointer;
  background: rgba(255,255,255,0.1);
  color: white;
  font-size: 15px;
}
.share-btn.primary { background: rgba(77,163,255,0.95); }

.share-close {
  margin-top: 15px;
  background: none;
  border: none;
  color: rgba(255,255,255,0.65);
  cursor: pointer;
  font-size: 14px;
}

#qrcode { display:flex; justify-content:center; margin: 8px 0; }
