/* DeltaV Cockpit — styles for [deltav_price], [deltav_cockpit], [deltav_liquidity_lock].
   (c) 2026 BANKON — Apache-2.0 — all rights reserved.
   Crew Dragon idiom from cockpit.zip styled.css: black field, monospace telemetry, hairline
   strokes, one accent per panel. Everything is scoped under .dvc, with `all: initial` on the
   root so a WordPress theme cannot bleed in. */

.dvc {
  all: initial;
  --dvc-black: #05070A;
  --dvc-panel: #0A0E14;
  --dvc-line: #1B2430;
  --dvc-white: #E8EEF2;
  --dvc-dim: #7A8A99;
  --dvc-plasma: #3FA9F5;
  --dvc-ignition: #FF7A18;
  --dvc-danger: #FF3B30;
  --dvc-go: #36D399;
  --dvc-gold: #d4af37;
  --dvc-gold-soft: rgba(212, 175, 55, .30);
  --dvc-mono: 'JetBrains Mono', 'SF Mono', 'Roboto Mono', ui-monospace, Menlo, Consolas, monospace;
  --dvc-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  display: block;
  box-sizing: border-box;
  position: relative;
  margin: 24px auto;
  max-width: 1200px;
  background: var(--dvc-black);
  color: var(--dvc-white);
  font-family: var(--dvc-mono);
  font-size: 13px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  border-radius: 10px;
  overflow: hidden;
  text-align: left;
}
.dvc *, .dvc *::before, .dvc *::after { box-sizing: border-box; }
.dvc p, .dvc h2, .dvc ul, .dvc table { margin: 0; padding: 0; }
.dvc a { color: var(--dvc-plasma); text-decoration: none; border-bottom: 1px dotted currentColor; }
.dvc a:hover { border-bottom-style: solid; }
.dvc code { font-family: var(--dvc-mono); }
.dvc [hidden] { display: none !important; }

.dvc .dvc-plasma { color: var(--dvc-plasma); }
.dvc .dvc-ignition { color: var(--dvc-ignition); }
.dvc .dvc-danger { color: var(--dvc-danger); }
.dvc .dvc-go { color: var(--dvc-go); }
.dvc .dvc-white { color: var(--dvc-white); }
.dvc .dvc-dim { color: var(--dvc-dim); }
.dvc .dvc-gold { color: var(--dvc-gold); }

/* ── buttons ── */
.dvc .dvc-btn {
  display: inline-block; padding: 8px 14px; background: transparent; border: 1px solid var(--dvc-line);
  border-radius: 4px; color: var(--dvc-white); font-family: var(--dvc-mono); font-size: 11px;
  letter-spacing: .12em; cursor: pointer; text-transform: uppercase; transition: background .2s, color .2s;
  text-decoration: none; line-height: 1.3;
}
.dvc .dvc-btn:hover { border-color: var(--dvc-dim); }
.dvc .dvc-btn:focus-visible { outline: 2px solid var(--dvc-plasma); outline-offset: 2px; }
.dvc .dvc-btn-ignition { border-color: var(--dvc-ignition); color: var(--dvc-ignition); }
.dvc .dvc-btn-ignition:hover { background: var(--dvc-ignition); color: var(--dvc-black); }
.dvc .dvc-btn-plasma { border-color: var(--dvc-plasma); color: var(--dvc-plasma); }
.dvc .dvc-btn-plasma:hover { background: var(--dvc-plasma); color: var(--dvc-black); }
.dvc .dvc-btn-danger { border-color: var(--dvc-danger); color: var(--dvc-danger); }
.dvc .dvc-btn-danger:hover { background: var(--dvc-danger); color: var(--dvc-black); }
.dvc .dvc-btn-go { border-color: var(--dvc-go); color: var(--dvc-go); }
.dvc .dvc-btn-go:hover { background: var(--dvc-go); color: var(--dvc-black); }
.dvc .dvc-btn-ghost { color: var(--dvc-dim); }
.dvc .dvc-btn-gold { background: linear-gradient(180deg, #f0d67a, #d4af37); border-color: #e7c65a; color: #0b0b10; font-weight: 700; }
.dvc .dvc-btn:disabled, .dvc .dvc-btn.is-disabled { border-color: var(--dvc-line); color: var(--dvc-dim); cursor: default; background: transparent; }

/* ── shared: frame, CA row, pairs ── */
.dvc .dvc-frame { padding: 28px 26px 22px; }
.dvc .dvc-eyebrow { font-size: 11px; letter-spacing: .28em; text-transform: uppercase; color: var(--dvc-plasma); margin-bottom: 10px; }
.dvc .dvc-headline { font-size: 32px; font-weight: 700; color: #fff; display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; }
.dvc .dvc-unit { font-size: 12px; font-weight: 400; color: var(--dvc-dim); letter-spacing: .1em; }
.dvc .dvc-sub, .dvc .dvc-note { font-size: 12px; color: var(--dvc-dim); margin-top: 6px; }
.dvc .dvc-seat { font-size: 12px; color: var(--dvc-white); margin-top: 14px; border-left: 2px solid var(--dvc-ignition); padding-left: 10px; }
.dvc .dvc-foot { font-size: 11px; color: var(--dvc-dim); margin-top: 18px; line-height: 1.6; }

.dvc .dvc-ca {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 18px;
  padding: 12px; border: 1px solid var(--dvc-line); border-radius: 6px; background: var(--dvc-panel);
}
.dvc .dvc-label { width: 100%; font-size: 10px; letter-spacing: .18em; color: var(--dvc-dim); text-transform: uppercase; }
.dvc .dvc-addr { flex: 1 1 0; min-width: 0; white-space: nowrap; overflow-x: auto; scrollbar-width: none; font-size: clamp(10.5px, 3vw, 14px); color: var(--dvc-white); }
.dvc .dvc-addr::-webkit-scrollbar { display: none; }
.dvc .dvc-ca .dvc-btn { flex: none; }
.dvc .dvc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }

.dvc .dvc-pairs-wrap { margin-top: 18px; overflow-x: auto; }
.dvc .dvc-pairs { width: 100%; border-collapse: collapse; font-size: 12px; }
.dvc .dvc-pairs th { text-align: left; font-weight: 400; font-size: 10px; letter-spacing: .16em; color: var(--dvc-dim); padding: 6px 8px; border-bottom: 1px solid var(--dvc-line); }
.dvc .dvc-pairs td { padding: 7px 8px; border-bottom: 1px solid rgba(255, 255, 255, .04); white-space: nowrap; }
.dvc .dvc-pairs td[colspan] { white-space: normal; }

/* ── [deltav_price] ── */
.dvc-price { max-width: 640px; border: 1px solid var(--dvc-line); }

/* ── [deltav_cockpit] ── */
.dvc-cockpit { border: 1px solid var(--dvc-line); }
/* the starfield is the window's size, fixed behind the cockpit (cockpit.js draws it at DV.perf's pixel ratio and frame cap) */
.dvc .dvc-stars { position: fixed; inset: 0; width: 100%; height: 100%; opacity: .45; pointer-events: none; }
.dvc .dvc-strip, .dvc .dvc-preflight, .dvc .dvc-grid, .dvc .dvc-foot { position: relative; }
.dvc .dvc-strip {
  display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 18px;
  padding: 10px 18px; border-bottom: 1px solid var(--dvc-line); background: var(--dvc-panel);
}
.dvc .dvc-brand { display: flex; align-items: center; gap: 12px; }
.dvc .dvc-logo { font-size: 15px; font-weight: 700; letter-spacing: .08em; }
.dvc .dvc-sub { margin: 0; font-size: 9px; letter-spacing: .16em; }
.dvc .dvc-telemetry { display: flex; flex-wrap: wrap; gap: 6px 20px; font-size: 10px; color: var(--dvc-dim); letter-spacing: .1em; }
.dvc .dvc-telemetry b { font-weight: 600; }

.dvc .dvc-preflight { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 36px 18px 26px; text-align: center; }
.dvc.dvc-is-connected .dvc-preflight { flex-direction: row; flex-wrap: wrap; justify-content: center; padding: 14px 18px; gap: 10px 16px; }
.dvc.dvc-is-connected .dvc-pf-note, .dvc.dvc-is-connected .dvc-utilities { display: none; }
.dvc .dvc-pf-label { font-size: 11px; color: var(--dvc-dim); letter-spacing: .2em; }
.dvc .dvc-pf-status { font-size: 11px; color: var(--dvc-white); min-height: 1em; }
.dvc .dvc-pf-note { font-size: 11px; color: var(--dvc-dim); max-width: 460px; line-height: 1.7; }
.dvc .dvc-utilities { list-style: none; max-width: 540px; display: flex; flex-direction: column; gap: 6px; text-align: left; }
.dvc .dvc-utilities li { font-size: 11px; color: var(--dvc-dim); line-height: 1.5; border-left: 2px solid var(--dvc-line); padding-left: 10px; }
.dvc .dvc-utilities li::before { content: "▸ "; color: var(--dvc-plasma); }

.dvc .dvc-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 12px; padding: 12px; }
.dvc .dvc-panel {
  position: relative; background: var(--dvc-panel); border: 1px solid var(--dvc-line); border-radius: 4px;
  display: flex; flex-direction: column; min-width: 0; overflow: hidden;
}
.dvc .dvc-panel-h {
  display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 8px 12px;
  border-bottom: 1px solid var(--dvc-line); font-size: 10px; letter-spacing: .18em; color: var(--dvc-dim);
}
.dvc .dvc-panel-b { padding: 14px; flex: 1; min-width: 0; }
.dvc .dvc-span4 { grid-column: span 4; } .dvc .dvc-span5 { grid-column: span 5; }
.dvc .dvc-span7 { grid-column: span 7; } .dvc .dvc-span8 { grid-column: span 8; }
.dvc .dvc-span6 { grid-column: span 6; } .dvc .dvc-span12 { grid-column: span 12; }
.dvc .dvc-hatch {
  flex: 1; display: flex; align-items: center; justify-content: center; text-align: center;
  min-height: 120px; padding: 18px; font-size: 10px; letter-spacing: .12em; color: var(--dvc-dim);
  background: repeating-linear-gradient(135deg, transparent 0 10px, rgba(255, 255, 255, .015) 10px 20px);
}
.dvc .dvc-is-sealed { opacity: .8; }

.dvc .dvc-deck { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 12px; }
.dvc .dvc-readout { border: 1px solid var(--dvc-line); border-radius: 4px; padding: 10px 12px; }
.dvc .dvc-k { font-size: 9px; color: var(--dvc-dim); letter-spacing: .16em; }
.dvc .dvc-v { font-size: 20px; font-weight: 600; margin-top: 4px; word-break: break-all; }

.dvc .dvc-fuel { display: flex; gap: 16px; }
.dvc .dvc-tank { position: relative; flex: 0 0 64px; min-height: 200px; border: 1px solid var(--dvc-line); border-radius: 3px; overflow: hidden; background: var(--dvc-black); }
.dvc .dvc-tank-fill { position: absolute; bottom: 0; left: 0; right: 0; background: linear-gradient(to top, var(--dvc-ignition), var(--dvc-plasma)); transition: height 1s cubic-bezier(.2, .8, .2, 1); }
.dvc .dvc-fuel-read { flex: 1; min-width: 0; }
.dvc .dvc-readout-lg { font-size: 26px; font-weight: 600; margin: 4px 0; word-break: break-all; }
.dvc .dvc-pill { display: inline-block; margin-top: 12px; padding: 5px 10px; border: 1px solid currentColor; border-radius: 3px; font-size: 10px; letter-spacing: .12em; }
.dvc .dvc-note-sm { font-size: 10px; color: var(--dvc-dim); line-height: 1.6; margin-top: 12px; }
.dvc .dvc-center { text-align: center; }

.dvc .dvc-brobot { display: flex; flex-direction: column; }
.dvc .dvc-brobot-log { flex: 1; max-height: 260px; min-height: 140px; overflow: auto; display: flex; flex-direction: column; gap: 8px; margin-bottom: 8px; }
.dvc .dvc-brobot-line { font-size: 12px; line-height: 1.45; }
.dvc .dvc-brobot-input { display: flex; gap: 6px; }
.dvc .dvc-brobot-input input {
  flex: 1; min-width: 0; background: var(--dvc-black); border: 1px solid var(--dvc-line); border-radius: 3px;
  color: var(--dvc-white); font-family: var(--dvc-mono); font-size: 12px; padding: 7px 10px; outline: none;
}
.dvc .dvc-brobot-input input:focus { border-color: var(--dvc-plasma); }

.dvc .dvc-demo { font-size: 10px; color: var(--dvc-ignition); border: 1px dashed var(--dvc-ignition); border-radius: 3px; padding: 8px 10px; margin-bottom: 10px; line-height: 1.5; }
.dvc .dvc-prop { border: 1px solid var(--dvc-line); border-radius: 3px; padding: 10px; margin-bottom: 10px; }
.dvc .dvc-prop-meta { font-size: 9px; color: var(--dvc-dim); letter-spacing: .1em; }
.dvc .dvc-prop-title { font-size: 13px; margin: 5px 0; }
.dvc .dvc-row { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 10px; }
.dvc .dvc-qbar { flex: 1; height: 4px; background: var(--dvc-line); border-radius: 2px; overflow: hidden; }
.dvc .dvc-qbar > div { height: 100%; background: var(--dvc-plasma); }
.dvc .dvc-prop-actions { display: flex; flex-wrap: wrap; gap: 6px; }

.dvc .dvc-cmap { position: relative; height: 200px; }
.dvc .dvc-cmap svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.dvc .dvc-cnode { position: absolute; transform: translate(-50%, -50%); text-align: center; }
.dvc .dvc-cdot { width: 10px; height: 10px; border-radius: 50%; margin: 0 auto; background: var(--dvc-plasma); }
.dvc .dvc-cdot.is-home { width: 16px; height: 16px; background: var(--dvc-ignition); box-shadow: 0 0 16px var(--dvc-ignition); }
.dvc .dvc-cname { font-size: 9px; margin-top: 4px; letter-spacing: .08em; }
.dvc .dvc-crole { font-size: 8px; color: var(--dvc-dim); }

.dvc .dvc-advisory { border: 1px solid var(--dvc-ignition); border-radius: 3px; padding: 12px 14px; margin-bottom: 14px; }
.dvc .dvc-adv-h { font-size: 11px; color: var(--dvc-ignition); letter-spacing: .14em; margin-bottom: 6px; }
.dvc .dvc-adv-b { font-size: 12px; line-height: 1.6; }
.dvc .dvc-log-entry { display: flex; gap: 12px; margin-bottom: 9px; }
.dvc .dvc-log-stamp { font-size: 10px; color: var(--dvc-ignition); letter-spacing: .12em; flex: 0 0 140px; }
.dvc .dvc-log-text { font-size: 11px; color: var(--dvc-dim); line-height: 1.5; }

.dvc-cockpit > .dvc-foot { margin: 0; padding: 14px 18px; text-align: center; font-size: 9px; letter-spacing: .14em; border-top: 1px solid var(--dvc-line); }

/* ── [deltav_liquidity_lock] — the gold proof block ── */
.dvc-lock { max-width: 560px; background: linear-gradient(180deg, #101017 0%, #0b0b10 100%); border: 1px solid var(--dvc-gold-soft); border-radius: 14px; font-family: var(--dvc-sans); }
.dvc .dvc-lock-headline { font-size: 26px; line-height: 1.15; font-weight: 700; color: #fff; }
.dvc .dvc-lock-headline em { color: var(--dvc-gold); font-style: normal; padding: 0 6px; }
.dvc .dvc-lock-remaining { margin: 20px 0 2px; font-size: 22px; font-weight: 600; color: var(--dvc-gold); font-family: var(--dvc-mono); }
.dvc .dvc-lock-unlock { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--dvc-dim); font-family: var(--dvc-mono); }
.dvc .dvc-proof { list-style: none; margin-top: 22px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .06); }
.dvc .dvc-proof li { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 6px 0; font-size: 12.5px; font-family: var(--dvc-mono); }
.dvc .dvc-proof li > span:first-child { color: var(--dvc-dim); letter-spacing: .06em; text-transform: uppercase; font-size: 11px; }
.dvc-lock a { color: var(--dvc-gold); }

/* ── small screens: one column, 16px gutters, no sideways scroll ── */
@media (max-width: 900px) {
  .dvc .dvc-panel { grid-column: span 12 !important; }
}
@media (max-width: 480px) {
  .dvc { margin: 16px 0; border-radius: 6px; }
  .dvc .dvc-frame { padding: 22px 16px 18px; }
  .dvc .dvc-grid { padding: 8px; gap: 8px; }
  .dvc .dvc-strip { padding: 10px 16px; }
  .dvc .dvc-headline { font-size: 26px; }
  .dvc .dvc-lock-headline { font-size: 22px; }
  .dvc .dvc-log-entry { flex-direction: column; gap: 2px; }
  .dvc .dvc-log-stamp { flex: none; }
  .dvc .dvc-fuel { flex-direction: column; }
  .dvc .dvc-tank { flex: none; min-height: 18px; height: 18px; width: 100%; }
  .dvc .dvc-tank-fill { height: 100% !important; right: auto; width: var(--dvc-fill, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .dvc .dvc-stars { display: none; }
  .dvc * { transition: none !important; }
}

/* ── participant self-service (participant.js) ─────────────────────────────── */
.dvc .dvc-stats { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 6px 14px; margin: 0; font: 12px/1.5 var(--dvc-mono); }
.dvc .dvc-stats dt { color: var(--dvc-dim); letter-spacing: .08em; }
.dvc .dvc-stats dd { margin: 0; color: var(--dvc-white); overflow-wrap: anywhere; }
.dvc .dvc-stats dd[title] { cursor: help; text-decoration: underline dotted var(--dvc-line); text-underline-offset: 3px; }
.dvc .dvc-self { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--dvc-line); }
.dvc .dvc-self .dvc-k { margin-bottom: 8px; }
.dvc .dvc-self-row { display: flex; flex-wrap: wrap; gap: 8px; }
.dvc .dvc-self-row input { flex: 1 1 160px; min-width: 0; min-height: 36px; padding: 0 10px; background: var(--dvc-black); color: var(--dvc-white);
  border: 1px solid var(--dvc-line); border-radius: 6px; font: 13px var(--dvc-mono); }
.dvc .dvc-self-row input:focus-visible { outline: 2px solid var(--dvc-plasma); outline-offset: 1px; }
.dvc .dvc-btn[disabled] { opacity: .4; cursor: not-allowed; }
.dvc .dvc-self-status { min-height: 1.4em; margin: 8px 0 0; font: 12px var(--dvc-mono); color: var(--dvc-dim); }
.dvc .dvc-self-status a { color: var(--dvc-plasma); }
@media (max-width: 560px) { .dvc .dvc-stats { grid-template-columns: 1fr; } .dvc .dvc-stats dd { margin-bottom: 6px; } }

.dvc-is-connected .dvc-preflight a[href*="login333"]{display:none}

/* DAIO panel (daio.js) */
.dvd-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 14px;margin:0 0 10px;font-size:12px}
.dvd-facts dt{color:var(--dvc-dim);letter-spacing:.08em}
.dvd-facts dd{margin:0;overflow-wrap:anywhere}
.dvd-status{min-height:1.3em;font-size:12px;margin:6px 0;overflow-wrap:anywhere}
.dvd-status.dvc-go{color:var(--dvc-go)}.dvd-status.dvc-danger{color:var(--dvc-danger)}
.dvd-prop{margin-top:10px}
.dvd-actions{margin:6px 0;padding-left:1.2em;font-size:12px;color:var(--dvc-dim)}
.dvd-vote{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px;padding-top:8px;border-top:1px dashed var(--dvc-line)}
.dvd-vote select{max-width:100%;min-height:34px;background:var(--dvc-black);color:var(--dvc-white);border:1px solid var(--dvc-line);font:inherit;font-size:12px}
.dvd-propose{margin:8px 0;border:1px solid var(--dvc-line);padding:8px 10px}
.dvd-propose summary{cursor:pointer;color:var(--dvc-ignition);letter-spacing:.1em}
.dvd-field{display:flex;flex-direction:column;gap:4px;margin:8px 0;font-size:12px;color:var(--dvc-dim)}
.dvd-field input{min-height:34px;background:var(--dvc-black);color:var(--dvc-white);border:1px solid var(--dvc-line);font:inherit;padding:0 8px;min-width:0}
.dvc .dvc-btn-go{border-color:var(--dvc-go);color:var(--dvc-go)}

.dvc .dvc-h1{margin:0;font:inherit;letter-spacing:inherit;color:inherit}
@media (max-width:640px){.dvc .dvc-btn{min-height:44px}.dvc-flightlinks a,.dvc-callsigns a{display:inline-flex;align-items:center;min-height:44px}}

/* sealed panels: a slim bar that says why, not a screen of stripes */
.dvc .dvc-panel.dvc-is-sealed{min-height:0}
.dvc .dvc-panel.dvc-is-sealed .dvc-panel-b{display:none}
.dvc .dvc-panel.dvc-is-sealed .dvc-hatch{position:static;min-height:0;padding:12px 14px;font-size:11px}
.dvc .dvc-panel.dvc-is-sealed{align-self:start}

/* ── v1.2.4: inside the cockpit of an interchain transport vehicle ─────────────────────────────────────────────── */
/* the sign-in, sealed until the login perspective is delivered (operator): blurred, inert, with a plain note */
.dvc .dvc-sealed { position: relative; }
.dvc .dvc-sealed .dvc-sealed__body { filter: blur(5px) saturate(.6); opacity: .55; pointer-events: none; user-select: none; }
.dvc .dvc-sealed__note { position: relative; z-index: 1; margin: 0 0 10px; padding: 10px 14px; border: 1px solid var(--dvc-gold-soft); border-radius: 6px;
  background: rgba(5, 7, 10, .85); color: var(--dvc-white); font-size: 12.5px; line-height: 1.55; }
.dvc .dvc-sealed__note b { display: block; color: var(--dvc-gold); letter-spacing: .12em; font-size: 11.5px; margin-bottom: 2px; }

/* the main display: small in the console, the whole canopy on EXPAND */
.dvc .dvc-display-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; }
.dvc .dvc-seg { display: inline-flex; border: 1px solid var(--dvc-line); border-radius: 6px; overflow: hidden; }
.dvc .dvc-seg button { all: unset; cursor: pointer; padding: 6px 11px; font: 11.5px var(--dvc-mono); letter-spacing: .08em; color: var(--dvc-dim); }
.dvc .dvc-seg button[aria-pressed="true"] { background: rgba(63, 169, 245, .14); color: var(--dvc-plasma); }
.dvc .dvc-seg button:focus-visible { outline: 1px solid var(--dvc-plasma); }
.dvc .dvc-display-chart { height: 240px; border: 1px solid var(--dvc-line); border-radius: 6px; overflow: hidden; }
.dvc .dvc-display-chart[data-empty]::after { content: attr(data-empty); display: block; padding: 16px; color: var(--dvc-dim); }
.dvc .dvc-helm-chg { font-variant-numeric: tabular-nums; }
.dvc .dvc-helm-chg.is-up { color: var(--dvc-go); } .dvc .dvc-helm-chg.is-down { color: var(--dvc-danger); }
.dvc .dvc-display.is-full { position: fixed; inset: 0; z-index: 220; margin: 0; border-radius: 0; display: flex; flex-direction: column;
  background: var(--dvc-black); box-shadow: inset 0 0 0 2px var(--dvc-gold-soft); }
.dvc .dvc-display.is-full .dvc-panel-b { flex: 1; display: flex; flex-direction: column; min-height: 0; }
.dvc .dvc-display.is-full .dvc-display-chart { flex: 1; height: auto; }
html.dvc-noscroll, html.dvc-noscroll body { overflow: hidden; }

/* the helm: one controller per job */
.dvc .dvc-helm { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.dvc .dvc-ctl { display: flex; flex-direction: column; gap: 6px; padding: 12px; border: 1px solid var(--dvc-line); border-radius: 6px;
  background: linear-gradient(180deg, rgba(63, 169, 245, .05), transparent 60%); min-width: 0; }
.dvc .dvc-ctl .dvc-btn { align-self: flex-start; margin-top: auto; }
.dvc .dvc-ctl-v { font-size: 17px; color: var(--dvc-white); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.dvc .dvc-ctl-f { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 11.5px; letter-spacing: .08em; color: var(--dvc-dim); }
.dvc .dvc-ctl-f select { font: 12.5px var(--dvc-mono); color: var(--dvc-white); background: var(--dvc-black); border: 1px solid var(--dvc-line);
  border-radius: 4px; padding: 5px 6px; min-height: 32px; max-width: 60%; }
.dvc .dvc-ctl-f b { color: var(--dvc-white); font-weight: 400; }
.dvc .dvc-gauge { height: 6px; border-radius: 3px; background: var(--dvc-line); overflow: hidden; }
.dvc .dvc-gauge i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--dvc-ignition), var(--dvc-gold)); transition: width .6s; }
.dvc .dvc-beacons { list-style: none; display: grid; gap: 6px; }
.dvc .dvc-beacons li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 2px 8px; font-size: 12px; }
.dvc .dvc-beacons small { grid-column: 2 / -1; color: var(--dvc-dim); font-size: 11px; }
.dvc .dvc-beacons li > span:not(.dvc-helm-dot) { color: var(--dvc-dim); letter-spacing: .08em; font-size: 10.5px; }
.dvc .dvc-helm-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--dvc-dim); }
.dvc .dvc-beacons .is-live .dvc-helm-dot { background: var(--dvc-go); box-shadow: 0 0 8px var(--dvc-go); }
.dvc .dvc-beacons .is-reserved .dvc-helm-dot { background: var(--dvc-gold); }
.dvc .dvc-beacons .is-planned .dvc-helm-dot { background: transparent; border: 1px solid var(--dvc-dim); }
.dvc .dvc-beacons .is-unreachable .dvc-helm-dot { background: var(--dvc-danger); }

/* the services lounge */
.dvc .dvc-services { list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.dvc .dvc-services li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; padding: 10px 12px; border: 1px solid var(--dvc-line); border-radius: 6px; }
.dvc .dvc-services b { color: var(--dvc-white); font-weight: 600; }
.dvc .dvc-services p { flex-basis: 100%; color: var(--dvc-dim); font-size: 12px; }
.dvc .dvc-services a { font-size: 12px; }
.dvc .dvc-services-open { border-style: dashed !important; border-color: var(--dvc-gold-soft) !important; }
.dvc .dvc-tag { margin-left: auto; padding: 0 7px; border: 1px solid var(--dvc-dim); border-radius: 9px; color: var(--dvc-dim); font-size: 10px; letter-spacing: .1em; }
.dvc .dvc-tag.is-live { border-color: var(--dvc-go); color: var(--dvc-go); }
.dvc .dvc-tag.is-planned { border-style: dashed; }
.dvc .dvc-tag.is-open { border-color: var(--dvc-gold); color: var(--dvc-gold); }

/* COMMS */
.dvc .dvc-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.dvc .dvc-chip { all: unset; cursor: pointer; padding: 3px 9px; border: 1px solid var(--dvc-line); border-radius: 12px; font: 11px var(--dvc-mono); color: var(--dvc-dim); }
.dvc .dvc-chip[aria-pressed="true"] { border-color: var(--dvc-plasma); color: var(--dvc-plasma); }
.dvc .dvc-chip:focus-visible { outline: 1px solid var(--dvc-plasma); }
.dvc .dvc-comms { list-style: none; display: grid; gap: 10px; max-height: 420px; overflow: auto; padding-right: 4px; }
.dvc .dvc-comms a { color: var(--dvc-white); border-bottom: 0; line-height: 1.45; }
.dvc .dvc-comms a:hover { color: var(--dvc-plasma); }
.dvc .dvc-comms-meta { display: block; margin-top: 2px; color: var(--dvc-dim); font-size: 11px; }
.dvc .dvc-comms-meta em { font-style: normal; margin-left: 6px; color: var(--dvc-plasma); }
@media (max-width: 760px) {
  .dvc .dvc-display-chart { height: 200px; }
  .dvc .dvc-seg button { padding: 10px 10px; }
  .dvc .dvc-chip { padding: 8px 10px; }
}

/* the price banner: a rolling scroll, on/off */
.dvc .dvc-tick-toggle { all: unset; cursor: pointer; padding: 2px 8px; border: 1px solid var(--dvc-line); border-radius: 10px; font: 10.5px var(--dvc-mono); letter-spacing: .1em; color: var(--dvc-dim); }
.dvc .dvc-tick-toggle[aria-pressed="true"] { border-color: var(--dvc-gold-soft); color: var(--dvc-gold); }
.dvc .dvc-tick-toggle:focus-visible { outline: 1px solid var(--dvc-plasma); }
.dvc .dvc-ticker { overflow: hidden; border-bottom: 1px solid var(--dvc-line); background: rgba(212, 175, 55, .03); white-space: nowrap; }
.dvc .dvc-ticker[hidden] { display: none; }
.dvc .dvc-ticker__track { display: inline-flex; padding: 7px 0; animation: dvc-ticker 38s linear infinite; }
.dvc .dvc-ticker:hover .dvc-ticker__track, .dvc .dvc-ticker:focus-within .dvc-ticker__track { animation-play-state: paused; }
.dvc .dvc-ticker__row { display: inline-flex; gap: 28px; padding-right: 28px; }
.dvc .dvc-tick { font-size: 12px; color: var(--dvc-white); font-variant-numeric: tabular-nums; }
.dvc .dvc-tick b { color: var(--dvc-gold); font-weight: 600; margin-right: 4px; letter-spacing: .04em; }
.dvc .dvc-tick em { font-style: normal; margin-left: 4px; }
.dvc a.dvc-tick { text-decoration: none; } .dvc a.dvc-tick:hover b, .dvc a.dvc-tick:focus-visible b { text-decoration: underline; } .dvc a.dvc-tick:focus-visible { outline: 1px solid var(--dvc-plasma); }
.dvc .dvc-tick em.is-up { color: var(--dvc-go); } .dvc .dvc-tick em.is-down { color: var(--dvc-danger); }
@keyframes dvc-ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .dvc .dvc-ticker__track { animation: none; } .dvc .dvc-ticker { overflow-x: auto; } }

/* the pilot's seat */
.dvc .dvc-seat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 10px; }
.dvc .dvc-gauge--vip i { background: linear-gradient(90deg, var(--dvc-plasma), var(--dvc-gold)); }
.dvc[data-pilot="vip"] .dvc-gauge--vip i { background: var(--dvc-gold); box-shadow: 0 0 10px var(--dvc-gold-soft); }
.dvc .dvc-helm-you { font-size: 11.5px; letter-spacing: .08em; color: var(--dvc-dim); }
.dvc .dvc-helm-you.is-vip { color: var(--dvc-gold); }
/* boarding: the canopy recognises its pilot */
.dvc .dvc-boarding { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 3; list-style: none; margin: 0; padding: 14px 18px;
  min-width: min(440px, 86%); background: rgba(5, 7, 10, .78); border: 1px solid var(--dvc-gold-soft); border-radius: 8px; transition: opacity .8s; }
.dvc .dvc-boarding li { font-size: 12px; letter-spacing: .1em; color: var(--dvc-white); opacity: 0; transform: translateY(4px); transition: opacity .4s, transform .4s; padding: 2px 0; }
.dvc .dvc-boarding li::before { content: "▸ "; color: var(--dvc-gold); }
.dvc .dvc-boarding li.is-on { opacity: 1; transform: none; }
.dvc .dvc-boarding.is-done { opacity: 0; pointer-events: none; }
@media (prefers-reduced-motion: reduce) { .dvc .dvc-boarding li { transition: none; } }
/* phones (v1.4.0): the log sits in the canopy's lower band, under the HUD's PILOT and CLASS lines and above the cycle label,
   and reads as one card over the ring's chips until it fades */
@media (max-width: 640px) { .dvc .dvc-boarding { top: auto; bottom: 34px; transform: translateX(-50%); width: calc(100% - 24px); min-width: 0;
  padding: 10px 12px; z-index: 6; background: rgba(5, 7, 10, .94); } .dvc .dvc-boarding li { font-size: 11px; letter-spacing: .06em; } }

/* the VIP route planner: chainmarketcap as a THRUST Bridge service */
.dvc .dvc-routes-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; margin: 10px 0; }
.dvc .dvc-routes-bar .dvc-chips { margin: 0; }
.dvc .dvc-routes-q { font: 12.5px var(--dvc-mono); color: var(--dvc-white); background: var(--dvc-black); border: 1px solid var(--dvc-line); border-radius: 4px; padding: 6px 8px; min-height: 32px; }
.dvc .dvc-routes-wrap { max-height: 520px; overflow: auto; border: 1px solid var(--dvc-line); border-radius: 6px; }
.dvc .dvc-routes { width: 100%; border-collapse: collapse; font-size: 12px; font-variant-numeric: tabular-nums; }
.dvc .dvc-routes th { position: sticky; top: 0; background: var(--dvc-panel); text-align: left; font-weight: 400; color: var(--dvc-dim); letter-spacing: .08em; font-size: 10.5px; padding: 8px; border-bottom: 1px solid var(--dvc-line); }
.dvc .dvc-routes td { padding: 7px 8px; border-bottom: 1px solid rgba(27, 36, 48, .6); vertical-align: middle; }
.dvc .dvc-routes td b { color: var(--dvc-white); font-weight: 600; }
.dvc .dvc-routes td small { display: block; color: var(--dvc-dim); font-size: 10.5px; }
.dvc .dvc-routes td.is-up { color: var(--dvc-go); } .dvc .dvc-routes td.is-down { color: var(--dvc-danger); }
.dvc .dvc-routes tr.is-home, .dvc .dvc-routes tr.is-bridge { background: rgba(212, 175, 55, .05); }
.dvc .dvc-routes .dvc-btn { padding: 4px 8px; font-size: 10.5px; }
.dvc .dvc-route { display: inline-block; padding: 1px 7px; border: 1px solid var(--dvc-line); border-radius: 9px; font-size: 10px; letter-spacing: .06em; color: var(--dvc-dim); white-space: nowrap; }
.dvc .dvc-route--home, .dvc .dvc-route--bridge { border-color: var(--dvc-gold); color: var(--dvc-gold); }
.dvc .dvc-route--xthrust { border-color: var(--dvc-plasma); color: var(--dvc-plasma); }
.dvc .dvc-route--layerzero { border-style: dashed; color: var(--dvc-white); }
@media (max-width: 760px) { .dvc .dvc-routes th:nth-child(5), .dvc .dvc-routes td:nth-child(5), .dvc .dvc-routes th:nth-child(6), .dvc .dvc-routes td:nth-child(6) { display: none; } }

/* signed in: the price board and the trade panel */
.dvc .dvc-trade { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.dvc .dvc-trade b { color: var(--dvc-white); font-weight: 600; }
.dvc .dvc-board td small { display: block; font-size: 10.5px; }
.dvc .dvc-board td small.is-up { color: var(--dvc-go); } .dvc .dvc-board td small.is-down { color: var(--dvc-danger); }
.dvc .dvc-dimz { color: var(--dvc-dim); opacity: .6; }
.dvc .dvc-board td { white-space: nowrap; }

/* ── phones and tablets (v1.3.7): a finger needs a 44 px target, and iOS zooms into any field under 16 px ── */
@media (pointer: coarse) {
  .dvc button, .dvc .dvc-btn, .dvc .dvc-tick-toggle, .dvc select, .dvc summary,
  .dvc input:not([type=checkbox]):not([type=radio]):not([type=range]) { min-height: 44px; }
  .dvc button, .dvc .dvc-tick-toggle { min-width: 44px; }
  .dvc input:not([type=checkbox]):not([type=radio]):not([type=range]), .dvc select, .dvc textarea { font-size: 16px !important; }
}
/* phones (v1.3.7): nothing reads under 12 px. Every rule above that sets a smaller size, at 12 px under 640 px
   (the same selectors, so the same weight; written from this sheet's own rules) */
@media (max-width:640px){.dvc .dvc-btn,.dvc .dvc-eyebrow,.dvc .dvc-foot,.dvc .dvc-label,.dvc .dvc-pairs th,.dvc .dvc-sub,.dvc .dvc-telemetry,.dvc .dvc-pf-label,.dvc .dvc-pf-status,.dvc .dvc-pf-note,.dvc .dvc-utilities li,.dvc .dvc-panel-h,.dvc .dvc-hatch,.dvc .dvc-k,.dvc .dvc-pill,.dvc .dvc-note-sm,.dvc .dvc-demo,.dvc .dvc-prop-meta,.dvc .dvc-row,.dvc .dvc-cname,.dvc .dvc-crole,.dvc .dvc-adv-h,.dvc .dvc-log-stamp,.dvc .dvc-log-text,.dvc-cockpit > .dvc-foot,.dvc .dvc-proof li > span:first-child,.dvc .dvc-panel.dvc-is-sealed .dvc-hatch,.dvc .dvc-sealed__note b,.dvc .dvc-seg button,.dvc .dvc-ctl-f,.dvc .dvc-beacons small,.dvc .dvc-beacons li > span:not(.dvc-helm-dot),.dvc .dvc-tag,.dvc .dvc-chip,.dvc .dvc-comms-meta,.dvc .dvc-tick-toggle,.dvc .dvc-helm-you,.dvc .dvc-routes th,.dvc .dvc-routes td small,.dvc .dvc-routes .dvc-btn,.dvc .dvc-route,.dvc .dvc-board td small{font-size:12px}}
@media (max-width: 640px) { .dvc .dvc-addr { font-size: 12px; } }

/* the cabin light (v1.5.2): REMAIN SEATED, blinking amber while THRUST changes orbit; steady under reduced motion */
.dvc .dvc-cabin { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 0 12px; border: 1px solid rgba(255, 181, 71, .6);
  border-radius: 18px; color: #FFB547; text-decoration: none; font: 700 11px/1.2 ui-monospace, Menlo, Consolas, monospace; letter-spacing: .14em; }
.dvc .dvc-cabin small { font-weight: 600; letter-spacing: .06em; opacity: .8; }
/* before you enter (v1.6.1, operator: "the cockpit expression from before you enter should be calm and inviting"): the
   cabin light glows a steady warm gold and says WELCOME ABOARD; the warp drifts slowly. Signed in: REMAIN SEATED as before */
.dvc .dvc-cabin__out { display: none; }
.dvc:not(.dvc-is-connected) .dvc-cabin__in { display: none; }
.dvc:not(.dvc-is-connected) .dvc-cabin__out { display: inline; }
.dvc:not(.dvc-is-connected) .dvc-cabin { border-color: rgba(242, 214, 117, .45); color: #F2D675; }
.dvc:not(.dvc-is-connected) .dvc-cabin__lamp { background: #F2D675; box-shadow: 0 0 8px rgba(242, 214, 117, .7); }
.dvc .dvc-cabin__lamp { width: 10px; height: 10px; border-radius: 50%; background: #FFB547; box-shadow: 0 0 10px #FFB547; }
@media (prefers-reduced-motion: no-preference) {
  .dvc .dvc-cabin__lamp { animation: dvc-cabin-blink 1.1s steps(1, end) infinite; }
  .dvc .dvc-cabin { animation: dvc-cabin-glow 2.2s ease-in-out infinite; }
  .dvc:not(.dvc-is-connected) .dvc-cabin__lamp { animation: dvc-cabin-breathe 5s ease-in-out infinite; }
  .dvc:not(.dvc-is-connected) .dvc-cabin { animation: none; }
}
@keyframes dvc-cabin-blink { 50% { opacity: .15; box-shadow: none; } }
@keyframes dvc-cabin-glow { 50% { box-shadow: 0 0 14px rgba(255, 181, 71, .35); } }
@keyframes dvc-cabin-breathe { 50% { opacity: .55; box-shadow: 0 0 4px rgba(242, 214, 117, .4); } }
@media (max-width: 640px) { .dvc .dvc-cabin { min-height: 44px; } .dvc .dvc-cabin small { display: none; } }
