/* Service picker (sign-up) + admin pricing pages. Matches the FuelCard Sky & Navy palette. */
:root {
  --fc-teal-900: #0B2545;
  --fc-teal-700: #1D4E89;
  --fc-teal-500: #2F80ED;
  --fc-amber: #F2A541;
  --fc-amber-soft: #fdf3e2;
  --fc-line: #E3EAF5;
  --fc-muted: #64748B;
}

.svc-picker { border: 0; padding: 0; margin: 4px 0 14px; min-width: 0; }
.svc-legend {
  display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap;
  width: 100%; font-size: 16px; font-weight: 700; color: #0B2545; margin-bottom: 10px; float: none;
}
.svc-legend-link { font-size: 13px; font-weight: 600; color: var(--fc-teal-500); }

.svc-card {
  position: relative; display: grid; grid-template-columns: 22px minmax(0, 1fr); column-gap: 12px;
  border: 1.5px solid var(--fc-line); border-radius: 12px; padding: 14px 16px; margin-bottom: 10px;
  background: #fff; transition: border-color .15s, box-shadow .15s, background .15s;
}
.svc-card:hover { border-color: #9CC5FA; }
.svc-card:has(.svc-check:checked) { border-color: var(--fc-teal-500); background: #EEF5FF; box-shadow: 0 0 0 3px rgba(47,128,237,.08); }
.svc-card.is-required { background: #F8FAFD; }

.svc-check { width: 20px; height: 20px; margin-top: 2px; accent-color: var(--fc-teal-700); cursor: pointer; }
.svc-check:disabled { cursor: default; }
.svc-body { display: block; cursor: pointer; margin: 0; min-width: 0; }
.svc-top { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; flex-wrap: wrap; }
.svc-name { font-weight: 700; color: #0B2545; }
.svc-tag {
  display: inline-block; margin-left: 6px; padding: 1px 8px; border-radius: 999px;
  background: var(--fc-teal-700); color: #fff; font-size: 11px; font-weight: 700; vertical-align: 2px;
}
.svc-price strong { font-size: 17px; color: var(--fc-teal-900); }
.svc-price small { color: var(--fc-muted); font-size: 13px; margin-left: 3px; }
.svc-summary { display: block; color: var(--fc-muted); font-size: 14px; margin-top: 2px; }

.svc-more, .svc-note { grid-column: 2; }
.svc-more { margin-top: 6px; font-size: 14px; }
.svc-more summary, .svc-details summary { cursor: pointer; color: var(--fc-teal-500); font-weight: 600; font-size: 13px; }
.svc-more > div { white-space: pre-line; color: #39444f; padding: 6px 0 0; }
.svc-details { margin-top: 4px; font-size: 14px; }
.svc-note {
  margin: 8px 0 0; padding: 6px 10px; border-radius: 8px; background: var(--fc-amber-soft);
  color: #7a4f0d; font-size: 13px;
}
.svc-foot { font-size: 13px; color: var(--fc-muted); margin: 6px 0 0; }
.svc-empty { color: var(--fc-muted); }
