/* Developers page — layout additions.
   Chrome and tokens come from /assets/css/site.css; plan cards from /pricing/css/style.css. */

.dv-cap { min-height: 0; }
.dv-cap p { margin: 0; }

/* ── Code samples ─────────────────────────────────────── */
.dv-code { margin: 0; border: 1px solid var(--ln); background: rgba(11,26,110,.35); min-width: 0; }
.sw .dv-code { background: var(--blue); color: var(--ivory); border-color: var(--blue); }
.dv-code figcaption { padding: 10px 14px; border-bottom: 1px solid rgba(247,245,239,.3); color: inherit; opacity: .8; }
.dv-code pre { margin: 0; padding: 16px; overflow-x: auto; font: 400 13.5px/1.55 var(--f-mono); color: var(--ivory); }
.dv-code code { font: inherit; }

/* ── Credit table ─────────────────────────────────────── */
.dv-tablewrap { overflow-x: auto; }
.dv-table { width: 100%; border-collapse: collapse; min-width: 520px; }
.dv-table thead th { text-align: left; font: 400 11px/1.1 var(--f-mono); text-transform: uppercase; letter-spacing: .04em; color: var(--dim); padding: 0 16px 10px 0; }
.dv-table tbody th { text-align: left; font-weight: 500; font-size: 16px; padding-right: 16px; }
.dv-table td, .dv-table tbody th { padding-block: 12px; border-top: 1px solid rgba(34,59,195,.18); vertical-align: baseline; }
.dv-table td { padding-right: 16px; }
.dv-table code { font: 400 12.5px/1.4 var(--f-mono); color: var(--dim); }
.dv-table .r { text-align: right; padding-right: 0; white-space: nowrap; font: 400 15px/1.2 var(--f-mono); }
.dv-table thead .r { font-size: 11px; }
.dv-fine { font-size: 13px; margin-top: 14px; max-width: 70ch; }

/* ── Steps ────────────────────────────────────────────── */
.dv-steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 24px; }
.dv-steps li { border-top: 1px solid var(--ln); padding-top: 14px; display: grid; gap: 8px; align-content: start; }
.dv-steps h3, .dv-steps p { margin: 0; }
.dv-steps code { font: 400 13px/1 var(--f-mono); }

@media (max-width: 760px) {
  .dv-steps { grid-template-columns: 1fr; gap: 18px; }
}
