:root {
  --bg:#020617;
  --alert:#dc2626;
  --alert-dark:#991b1b;
  --text:#f8fafc;
  --muted:#94a3b8;
  --yellow:#facc15;
}

body {
  margin:0;
  font-family:system-ui, Arial, sans-serif;
  background:radial-gradient(circle at top,#1e293b,#020617);
  color:var(--text);
}

.top {
  background:linear-gradient(90deg,var(--alert),var(--alert-dark));
  padding:20px;
  text-align:center;
}

main {
  max-width:780px;
  margin:auto;
  padding:16px;
}

.card {
  background:rgba(2,6,23,.9);
  border:1px solid #1e293b;
  border-radius:16px;
  padding:18px;
  margin-bottom:18px;
}

.danger {
  color:var(--yellow);
  font-weight:bold;
}

.btn {
  width:100%;
  padding:18px;
  font-size:18px;
  font-weight:bold;
  border-radius:14px;
  border:none;
  cursor:pointer;
}

.emergency-btn {
  background:black;
  color:red;
  border:2px solid red;
}

.sos-btn {
  background:var(--alert);
  color:white;
  margin-top:10px;
}

.countdown {
  text-align:center;
  background:linear-gradient(180deg,#7f1d1d,#450a0a);
}

#timer {
  font-size:64px;
  color:var(--yellow);
}

.abort-btn {
  background:#020617;
  color:white;
}

.map-link {
  display:block;
  margin-top:10px;
  color:#38bdf8;
  font-weight:bold;
}

.status-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}

.status-btn {
  padding:14px;
  border-radius:12px;
  background:#1e293b;
  color:white;
  border:none;
  font-weight:bold;
}

.status-text {
  margin-top:12px;
  font-weight:bold;
  color:var(--yellow);
}

.small-btn, .tool-btn {
  background:#1e293b;
  color:white;
  margin-top:10px;
}

.hidden { display:none; }

footer {
  text-align:center;
  font-size:12px;
  color:var(--muted);
  padding:20px;
}


#locationOverlay {
  position: fixed;
  inset: 0;
  background: rgba(2,6,23,0.95);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.overlay-box {
  background: #020617;
  border: 2px solid #dc2626;
  border-radius: 18px;
  padding: 25px;
  max-width: 420px;
  text-align: center;
}

.overlay-box h2 {
  margin-top: 0;
}

.overlay-box .small {
  font-size: 13px;
  color: #94a3b8;
}


