/* FX board (task #277): the chip in the top bar and the window with the chart. One file for the cabinets (mockup/ and client-app/ keep equal copies). */
.fxb-slot { display: inline-flex }
.fxb-chip { gap: 8px; max-width: 100%; position: relative }
.fxb-chip .fxb-pair { display: inline-flex; align-items: baseline; gap: 5px }
.fxb-chip b { color: var(--fg); font-weight: 600 }
.fxb-chip .fxb-pair + .fxb-pair { padding-left: 8px; border-left: 1px solid var(--line) }
.fxb-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--bad); flex: none; box-shadow: 0 0 0 3px var(--bad-soft) }
.fxb-chg { font-size: .85em; font-weight: 500; white-space: nowrap }
.fxb-chg.up { color: var(--ok) }
.fxb-chg.down { color: var(--bad) }
.fxb-chg.flat { color: var(--muted) }
@media (max-width: 640px) { .fxb-chip .fxb-2 { display: none } .fxb-chip .fxb-pair + .fxb-pair { border: 0; padding: 0 } }

.fxb-win { min-width: 0 }
.fxb-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 10px }
.fxb-card { display: flex; flex-direction: column; gap: 4px; text-align: left; padding: 12px 14px; border-radius: 12px; border: 2px solid var(--line); background: var(--surface); color: var(--fg); font-family: inherit; cursor: pointer }
.fxb-card.on { border-color: var(--accent); background: var(--accent-soft) }
.fxb-pair-name { font-size: 12.5px; color: var(--muted); font-weight: 600 }
.fxb-big { font-size: 30px; font-weight: 600; line-height: 1.1 }
.fxb-deltas { display: flex; flex-direction: column; gap: 2px; font-size: 12.5px; color: var(--muted) }
.fxb-bar { align-items: center; gap: 10px; flex-wrap: wrap }
.fxb-read { font-size: 14px }
.fxb-chart { touch-action: pan-y }
.fxb-svg { width: 100%; height: auto; display: block; cursor: crosshair; touch-action: pan-y }
.fxb-line { fill: none; stroke: var(--accent); stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; vector-effect: non-scaling-stroke }
.fxb-area { fill: var(--accent-soft); opacity: .7; stroke: none }
.fxb-grid { stroke: var(--line); stroke-width: 1; stroke-dasharray: 3 4; vector-effect: non-scaling-stroke }
.fxb-axis { fill: var(--muted); font-size: 11px }
.fxb-cross { stroke: var(--muted); stroke-width: 1; vector-effect: non-scaling-stroke }
.fxb-dotc { fill: var(--accent); stroke: var(--surface); stroke-width: 2 }
.fxb-meta { margin: 0; padding-left: 18px; display: flex; flex-direction: column; gap: 2px }
.fxb-mark { margin: 0 0 8px; padding: 8px 10px; border-radius: 10px; display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap }
.fxb-mark.bad { background: var(--bad-soft); color: var(--bad) }
.fxb-mark.warn { background: var(--warn-soft); color: var(--warn) }
@media (max-width: 480px) { .fxb-big { font-size: 24px } .fxb-cards { gap: 8px } }
