/* screens/fx-dealing.css — VECTOR FX ディーリング */
.sp-stage--fx-dealing .sp-stage__canvas {
  background: #05070c;
  color: #d8dae0;
  font-family: "SF Mono", "Menlo", "Consolas", "Roboto Mono", monospace;
  display: flex; flex-direction: column;
  overflow: hidden;
}
.fx-wrap {
  position: absolute; inset: 0;
  display: grid;
  grid-template-rows: auto 1fr 200px;
}
.fx-head {
  padding: 12px 24px;
  background: linear-gradient(180deg, #0d1220 0%, #05070c 100%);
  border-bottom: 1px solid #26314f;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 13px; letter-spacing: .05em;
}
.fx-head__left, .fx-head__right { display: flex; gap: 16px; align-items: center; }
.fx-head__brand { color: #62b0ff; font-weight: 700; letter-spacing: .18em; }
.fx-head__desk { color: #8b9dc4; font-size: 11px; letter-spacing: .12em; }
.fx-head__mode {
  padding: 2px 10px; border-radius: 2px; font-size: 11px; letter-spacing: .12em;
  background: rgba(74, 222, 128, .1); color: #4ade80;
}
.fx-head__mode.is-hot {
  background: rgba(255, 178, 71, .18); color: #ffb247; animation: fx-hot 1.2s ease-in-out;
}
@keyframes fx-hot { 0%{background:rgba(255,178,71,.4);}100%{background:rgba(255,178,71,.18);} }
.fx-head__clock { color: #d8dae0; font-variant-numeric: tabular-nums; }

.fx-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 1px;
  background: #14192a;
}
.fx-cell {
  background: #05070c;
  padding: 14px 18px;
  display: flex; flex-direction: column;
}
.fx-cell__head {
  display: flex; justify-content: space-between; align-items: baseline; gap: 12px;
  margin-bottom: 8px;
}
.fx-cell__pair {
  font-weight: 700; letter-spacing: .12em; font-size: 13px; color: #b7c2d9;
}
.fx-cell__rate {
  font-size: clamp(22px, 3vw, 34px); font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: #f2f2f4;
}
.fx-cell__rate.up   { color: #4ade80; }
.fx-cell__rate.down { color: #ff6b6b; }
.fx-cell__chg { font-size: 12px; font-variant-numeric: tabular-nums; }
.fx-cell__chg.up   { color: #4ade80; }
.fx-cell__chg.down { color: #ff6b6b; }
.fx-cell__chart {
  flex: 1 1 auto; width: 100%; height: 100%; min-height: 60px;
}

.fx-log {
  background: #030509;
  border-top: 1px solid #26314f;
  padding: 8px 20px 12px;
  overflow: hidden;
  display: flex; flex-direction: column;
}
.fx-log h3 {
  margin: 0 0 6px;
  font-size: 10px; letter-spacing: .18em; color: #6a7ba1;
  text-transform: uppercase;
}
.fx-log ul { list-style: none; margin: 0; padding: 0; overflow-y: auto; flex: 1 1 auto; }
.fx-log__row {
  display: grid;
  grid-template-columns: 80px 70px 50px 90px 100px 60px;
  gap: 12px;
  padding: 3px 0;
  font-size: 12px;
  border-bottom: 1px dotted #14192a;
  align-items: center;
}
.fx-log__ts, .fx-log__id, .fx-log__rate, .fx-log__amt { font-variant-numeric: tabular-nums; }
.fx-log__ts { color: #6a7ba1; }
.fx-log__id { color: #8b9dc4; }
.fx-log__pair { color: #b7c2d9; letter-spacing: .05em; }
.fx-log__side { font-weight: 700; letter-spacing: .1em; }
.fx-log__row--buy  .fx-log__side { color: #4ade80; }
.fx-log__row--sell .fx-log__side { color: #ff6b6b; }
.fx-log__rate, .fx-log__amt { text-align: right; color: #d8dae0; }

@media (max-width: 800px) {
  .fx-wrap { grid-template-rows: auto 1fr 160px; }
  .fx-head { padding: 10px 14px; font-size: 11px; }
  .fx-grid { grid-template-columns: 1fr; grid-template-rows: repeat(4, 1fr); }
  .fx-cell { padding: 10px 14px; }
  .fx-log { padding: 6px 12px 10px; }
  .fx-log__row { grid-template-columns: 60px 60px 40px 70px 80px 50px; gap: 6px; font-size: 10px; }
}
