/* ── Modal ── */
.modal-overlay {
  position: fixed; top: 0; left: 0; width: 100%; height: 100%;
  background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(4px);
  z-index: 1000; display: flex; align-items: center; justify-content: center;
}
.modal-overlay.hidden { display: none; }
.modal-card {
  background: #13161f; border: 1px solid #1e2433;
  border-radius: 16px; width: 100%; max-width: 500px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.modal-header {
  padding: 20px 24px; border-bottom: 1px solid #1e2433;
  display: flex; justify-content: space-between; align-items: center;
}
.modal-header h3 { font-size: 1.1rem; color: #f1f5f9; }
.modal-body { padding: 24px; max-height: 70vh; overflow-y: auto; }
.modal-footer {
  padding: 16px 24px; border-top: 1px solid #1e2433;
  display: flex; justify-content: flex-end; gap: 12px;
}
.api-preview {
  background: #0f1117; border: 1px solid #2d3748;
  border-radius: 8px; margin-top: 20px; overflow: hidden;
}
.api-preview-header {
  background: #1a1f2e; padding: 8px 12px;
  border-bottom: 1px solid #2d3748; display: flex; gap: 8px; align-items: center;
}
.method-badge { background: #10b981; color: #000; font-size: 0.7rem; font-weight: 700; padding: 2px 6px; border-radius: 4px; }
.api-url { font-family: monospace; font-size: 0.8rem; color: #94a3b8; }
.api-body { padding: 12px; font-family: monospace; font-size: 0.8rem; color: #a5b4fc; white-space: pre-wrap; }

/* ── Requests Page Badges ── */
.req-type-badge { font-size: 0.7rem; padding: 3px 8px; border-radius: 4px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; }
.req-repair { background: #6366f120; color: #a5b4fc; }
.req-maintenance { background: #0ea5e920; color: #7dd3fc; }

.req-status-badge { font-size: 0.75rem; padding: 4px 10px; border-radius: 12px; font-weight: 500; text-transform: capitalize; }
.req-st-pending { background: #f59e0b20; color: #fbbf24; border: 1px solid #f59e0b40; }
.req-st-approved { background: #10b98120; color: #34d399; border: 1px solid #10b98140; }
.req-st-rejected { background: #ef444420; color: #f87171; border: 1px solid #ef444440; }

/* ── Map Tooltips (Requests) ── */
.req-tooltip {
  background: transparent; border: none; box-shadow: none;
}
.req-tooltip-inner {
  background: #ef4444; color: white; font-weight: bold; font-size: 0.75rem;
  padding: 2px 6px; border-radius: 10px; border: 2px solid white;
  box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}
