/* GP35 M96 Exchange Functionality + Terminal Frontend - terminal scoped only */
html[data-gp-page="globatrade-terminal"] .gp-m96-dock,
.gp-m96-dock {
  margin: 10px 12px 0;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
.gp-m96-card {
  border: 1px solid rgba(31, 41, 55, .12);
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border-radius: 16px;
  padding: 12px 13px;
  color: #111827;
  box-shadow: 0 10px 26px rgba(15,23,42,.06);
  min-height: 78px;
}
.gp-m96-card small { display:block; color:#64748b; font-size:11px; letter-spacing:.08em; text-transform:uppercase; margin-bottom:5px; }
.gp-m96-card strong { display:block; font-size:18px; line-height:1.15; color:#0f172a; }
.gp-m96-card span { display:block; color:#475569; font-size:12px; margin-top:4px; }
.gp-m96-card.ok strong { color:#0f766e; }
.gp-m96-card.warn strong { color:#b45309; }
.gp-m96-card.danger strong { color:#b91c1c; }
.gp-m96-terminal-badge { display:inline-flex; align-items:center; gap:6px; border:1px solid rgba(15,23,42,.12); background:#fff; color:#0f172a; border-radius:999px; padding:5px 9px; font-size:12px; font-weight:700; }
.gp-m96-paper-panel {
  margin-top: 10px;
  border: 1px solid rgba(59,130,246,.20);
  background: #f8fbff;
  border-radius: 14px;
  padding: 10px;
}
.gp-m96-paper-panel h3 { margin:0 0 6px; font-size:13px; color:#0f172a; }
.gp-m96-paper-panel p { margin:0 0 8px; color:#64748b; font-size:12px; }
.gp-m96-paper-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.gp-m96-paper-actions button, .gp-m96-mini-btn {
  border:0; border-radius:999px; padding:8px 11px; cursor:pointer; font-weight:800; background:#111827; color:#fff;
}
.gp-m96-paper-actions button.secondary, .gp-m96-mini-btn.secondary { background:#e2e8f0; color:#0f172a; }
.gp-m96-paper-actions button[disabled] { opacity:.55; cursor:not-allowed; }
.gp-m96-message { margin-top:8px; min-height:18px; color:#334155; font-size:12px; }
.gp-m96-bottom-grid { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap:10px; }
.gp-m96-bottom-card { border:1px solid rgba(15,23,42,.10); background:#fff; border-radius:14px; padding:12px; }
.gp-m96-bottom-card small { color:#64748b; display:block; margin-bottom:6px; }
.gp-m96-bottom-card strong { color:#0f172a; font-size:18px; }
.gp-m96-orders { margin-top:12px; display:grid; gap:7px; }
.gp-m96-order-row { display:grid; grid-template-columns: 1.2fr .8fr .9fr .9fr .9fr; gap:8px; align-items:center; background:#f8fafc; border:1px solid rgba(15,23,42,.08); border-radius:12px; padding:9px; color:#0f172a; font-size:12px; }
.gp-m96-order-row button { border:0; border-radius:999px; background:#e2e8f0; color:#0f172a; padding:5px 8px; cursor:pointer; font-weight:700; }
.gp-m96-toast { position: fixed; right: 18px; bottom: 18px; z-index: 9999; background:#111827; color:#fff; border-radius:14px; padding:11px 14px; box-shadow:0 18px 42px rgba(0,0,0,.24); opacity:0; transform:translateY(10px); transition:.18s ease; pointer-events:none; max-width:320px; }
.gp-m96-toast.show { opacity:1; transform:translateY(0); }
.gp-m96-engine-strip { display:flex; gap:8px; align-items:center; flex-wrap:wrap; margin: 8px 0 0; }
.gp-m96-engine-strip span { border:1px solid rgba(15,23,42,.10); border-radius:999px; padding:5px 8px; font-size:11px; color:#334155; background:#fff; }
@media (max-width: 1180px){ .gp-m96-dock{ grid-template-columns: repeat(2,minmax(0,1fr)); } .gp-m96-bottom-grid{ grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px){ .gp-m96-dock{ grid-template-columns: 1fr; margin-left:8px; margin-right:8px; } .gp-m96-bottom-grid{ grid-template-columns:1fr; } .gp-m96-order-row{ grid-template-columns:1fr 1fr; } }

.admin-m96-qa { max-width: 1280px; margin: 0 auto; padding: 26px; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:#0f172a; }
.admin-m96-qa header { background: linear-gradient(135deg,#061a35,#0d3472); color:#fff; border-radius:24px; padding:28px; margin-bottom:18px; }
.admin-m96-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:14px; }
.admin-m96-tile { border:1px solid rgba(15,23,42,.10); background:#fff; border-radius:18px; padding:16px; box-shadow:0 12px 26px rgba(15,23,42,.06); }
.admin-m96-tile small { color:#64748b; display:block; margin-bottom:8px; }
.admin-m96-tile strong { color:#0f172a; font-size:20px; }
.admin-m96-log { margin-top:14px; background:#0b1220; color:#dbeafe; border-radius:18px; padding:16px; white-space:pre-wrap; overflow:auto; }
