/* Stage 422 — production workspace surface hardening.
   One stable shell, chart-first hierarchy, controlled overflow, no public debug clutter. */
:root{
  --s422-bg:#050A12;
  --s422-bg-2:#07111f;
  --s422-panel:#0A1524;
  --s422-panel-2:#0D1B2E;
  --s422-line:rgba(132,161,205,.24);
  --s422-line-strong:rgba(142,181,255,.36);
  --s422-text:#EAF2FF;
  --s422-muted:#94A6C1;
  --s422-muted-2:#6F819D;
  --s422-accent:#64A3FF;
  --s422-good:#2CF2AE;
  --s422-warn:#F6C96B;
  --s422-danger:#FF6B86;
  --s422-radius-xl:24px;
  --s422-radius-lg:18px;
  --s422-radius-md:14px;
  --s422-shadow:0 24px 80px rgba(0,0,0,.38);
  --s422-ticket-w:392px;
  --s422-topbar-h:64px;
  --s422-bottom-h:138px;
}
html.stage422-terminal-pro,body.stage422-terminal-pro{height:100%;overflow:hidden!important;background:var(--s422-bg)!important;color:var(--s422-text)!important}
body.stage422-terminal-pro{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important}
body.stage422-terminal-pro *{box-sizing:border-box}
body.stage422-terminal-pro img{max-width:100%}
/* Hard separation: old landing/legacy body surfaces must not compete with the terminal shell. */
body.stage422-terminal-pro>header,
body.stage422-terminal-pro>aside,
body.stage422-terminal-pro>main.main,
body.stage422-terminal-pro>#heroHeader,
body.stage422-terminal-pro>.workspace-rail-shell,
body.stage422-terminal-pro>.experience-strip,
body.stage422-terminal-pro>.shell-grid,
body.stage422-terminal-pro>.page-section,
body.stage422-terminal-pro>.split-2,
body.stage422-terminal-pro>.diagnostics-band,
body.stage422-terminal-pro>.action-dock{display:none!important}
body.stage422-terminal-pro #stage399TerminalShell{
  position:fixed!important;inset:0!important;z-index:30!important;display:grid!important;
  grid-template-rows:var(--s422-topbar-h) minmax(0,1fr)!important;
  background:
    radial-gradient(circle at 20% -5%,rgba(89,146,255,.16),transparent 32%),
    radial-gradient(circle at 78% 0%,rgba(44,242,174,.08),transparent 34%),
    linear-gradient(180deg,#07111F 0%,#050A12 70%,#03070D 100%)!important;
  overflow:hidden!important;
}
body.stage422-terminal-pro .q399-topbar{
  height:var(--s422-topbar-h)!important;display:grid!important;grid-template-columns:auto minmax(320px,1fr) minmax(260px,380px)!important;
  align-items:center!important;gap:14px!important;padding:9px 16px!important;border-bottom:1px solid var(--s422-line)!important;
  background:rgba(5,10,18,.88)!important;backdrop-filter:blur(22px)!important;box-shadow:0 12px 50px rgba(0,0,0,.34)!important;
  min-width:0!important;
}
body.stage422-terminal-pro .q399-brand{min-width:0!important;gap:10px!important;align-items:center!important}
body.stage422-terminal-pro .q399-brand-mark{width:40px!important;height:40px!important;border-radius:14px!important;overflow:hidden!important;background:rgba(100,163,255,.12)!important;border:1px solid rgba(100,163,255,.26)!important;box-shadow:none!important}
body.stage422-terminal-pro .q399-brand-title{min-width:0!important;display:flex!important;flex-direction:column!important;gap:1px!important}
body.stage422-terminal-pro .q399-brand-title strong{font-size:14px!important;line-height:1.1!important;white-space:nowrap!important;color:#F4F8FF!important}
body.stage422-terminal-pro .q399-brand-title span{font-size:10px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--s422-muted)!important;white-space:nowrap!important}
body.stage422-terminal-pro .q399-nav{height:44px!important;min-width:0!important;display:flex!important;gap:8px!important;align-items:center!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px!important;scrollbar-width:none!important}
body.stage422-terminal-pro .q399-nav::-webkit-scrollbar{display:none}
body.stage422-terminal-pro .q399-nav button{
  flex:0 0 auto!important;height:38px!important;padding:0 14px!important;border-radius:13px!important;border:1px solid rgba(132,161,205,.20)!important;
  background:rgba(9,20,35,.64)!important;color:#B9C8DF!important;font-size:12px!important;font-weight:700!important;letter-spacing:.01em!important;box-shadow:none!important;
}
body.stage422-terminal-pro .q399-nav button.is-active{background:linear-gradient(180deg,rgba(100,163,255,.24),rgba(60,105,190,.14))!important;color:#fff!important;border-color:rgba(100,163,255,.42)!important}
body.stage422-terminal-pro .q399-nav button[data-q399-action="show-legacy"]{display:none!important}
body.stage422-terminal-pro .q399-account-strip{min-width:0!important;height:44px!important;display:grid!important;grid-template-columns:minmax(120px,1fr) auto!important;gap:10px!important;align-items:center!important;padding:0!important;border:0!important;background:transparent!important}
body.stage422-terminal-pro .q399-account-select{height:38px!important;width:100%!important;min-width:0!important;border-radius:12px!important;background:#081426!important;color:var(--s422-text)!important;border:1px solid var(--s422-line)!important;padding:0 11px!important}
body.stage422-terminal-pro .q399-balance{height:38px!important;min-width:126px!important;border-radius:12px!important;border:1px solid rgba(44,242,174,.18)!important;background:rgba(44,242,174,.07)!important;padding:5px 10px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
body.stage422-terminal-pro .q399-balance small{color:var(--s422-muted)!important;font-size:9px!important;letter-spacing:.08em!important;text-transform:uppercase!important}
body.stage422-terminal-pro .q399-balance strong{font-size:13px!important;color:#DFFFEF!important;line-height:1.1!important}
body.stage422-terminal-pro .q399-body{height:calc(100vh - var(--s422-topbar-h))!important;min-height:0!important;overflow:hidden!important;padding:14px!important}
body.stage422-terminal-pro .q399-workspace,
body.stage422-terminal-pro .q399-page.is-active{height:100%!important;min-height:0!important;overflow:hidden!important}
body.stage422-terminal-pro .q399-page:not(.is-active){display:none!important}
body.stage422-terminal-pro .q399-page.is-active[data-q399-panel="trading"]{display:grid!important;grid-template-rows:minmax(0,1fr) var(--s422-bottom-h)!important;gap:12px!important}
body.stage422-terminal-pro .q399-trading-grid{height:100%!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(620px,1fr) minmax(336px,var(--s422-ticket-w))!important;gap:12px!important;overflow:hidden!important}
body.stage422-terminal-pro .q399-chart-zone{
  position:relative!important;height:100%!important;min-height:0!important;overflow:hidden!important;border-radius:var(--s422-radius-xl)!important;
  background:linear-gradient(180deg,rgba(8,18,33,.98),rgba(3,8,15,.98))!important;border:1px solid rgba(132,161,205,.24)!important;
  box-shadow:var(--s422-shadow)!important;contain:layout paint style!important;
}
body.stage422-terminal-pro .q399-right-ticket{height:100%!important;min-height:0!important;overflow:auto!important;display:flex!important;flex-direction:column!important;gap:12px!important;padding-right:2px!important;scrollbar-width:thin!important;scrollbar-color:rgba(132,161,205,.32) transparent!important}
body.stage422-terminal-pro .q399-ticket-card,
body.stage422-terminal-pro .q399-ai-panel,
body.stage422-terminal-pro .q399-dock-card{
  border:1px solid var(--s422-line)!important;background:linear-gradient(180deg,rgba(13,27,46,.94),rgba(7,15,28,.96))!important;
  border-radius:var(--s422-radius-lg)!important;box-shadow:0 18px 48px rgba(0,0,0,.26)!important;color:var(--s422-text)!important;
}
body.stage422-terminal-pro .q399-ticket-card{padding:14px!important;display:flex!important;flex-direction:column!important;gap:12px!important}
body.stage422-terminal-pro .q399-ticket-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0!important}
body.stage422-terminal-pro .q399-ticket-head strong,.stage422-terminal-pro .q399-ai-panel h3{font-size:13px!important;line-height:1.2!important;letter-spacing:.02em!important;color:#F4F8FF!important;margin:0!important}
body.stage422-terminal-pro .q399-contract-type{font-size:10px!important;color:#B8C7DC!important;border:1px solid rgba(132,161,205,.22)!important;border-radius:999px!important;padding:5px 8px!important;background:rgba(132,161,205,.08)!important}
body.stage422-terminal-pro .q399-ticket-section{margin:0!important;padding:0!important;display:grid!important;gap:6px!important}
body.stage422-terminal-pro .q399-ticket-label{font-size:10px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--s422-muted)!important}
body.stage422-terminal-pro .q399-ticket-field select,
body.stage422-terminal-pro .q399-ticket-field input,
body.stage422-terminal-pro .q399-stepper input,
body.stage422-terminal-pro .q404-field input,
body.stage422-terminal-pro .q404-field select{
  height:40px!important;width:100%!important;border-radius:12px!important;background:#071426!important;color:var(--s422-text)!important;border:1px solid rgba(132,161,205,.28)!important;padding:0 11px!important;outline:none!important;
}
body.stage422-terminal-pro .q399-stepper{display:grid!important;grid-template-columns:40px minmax(0,1fr) auto 40px!important;gap:7px!important;align-items:center!important}
body.stage422-terminal-pro .q399-stepper button,
body.stage422-terminal-pro .q399-quote-button,
body.stage422-terminal-pro .q399-buy-button,
body.stage422-terminal-pro .q399-ai-grid button,
body.stage422-terminal-pro .q404-builder button,
body.stage422-terminal-pro #q410Panel button{
  min-height:38px!important;border-radius:12px!important;border:1px solid rgba(132,161,205,.24)!important;background:rgba(15,31,52,.92)!important;color:#EAF2FF!important;font-weight:800!important;box-shadow:none!important;cursor:pointer!important;
}
body.stage422-terminal-pro .q399-buy-button{height:44px!important;background:linear-gradient(135deg,#2CF2AE,#64A3FF)!important;color:#02101B!important;border:0!important;box-shadow:0 14px 36px rgba(44,242,174,.18)!important}
body.stage422-terminal-pro .q399-quote-button{height:42px!important;background:rgba(100,163,255,.14)!important;border-color:rgba(100,163,255,.30)!important}
body.stage422-terminal-pro .q399-ticket-note{font-size:11px!important;line-height:1.45!important;color:#AAB9D2!important;border-radius:12px!important;background:rgba(132,161,205,.07)!important;border:1px solid rgba(132,161,205,.16)!important;padding:10px!important}
body.stage422-terminal-pro .q399-ai-panel{padding:14px!important;display:grid!important;gap:12px!important}
body.stage422-terminal-pro .q399-ai-status{font-size:12px!important;line-height:1.45!important;color:#AFC0D8!important;border-radius:12px!important;background:rgba(100,163,255,.08)!important;border:1px solid rgba(100,163,255,.18)!important;padding:10px!important}
body.stage422-terminal-pro .q399-ai-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
body.stage422-terminal-pro .q399-ai-grid .danger{background:rgba(255,107,134,.12)!important;border-color:rgba(255,107,134,.26)!important;color:#FFD6DE!important}
body.stage422-terminal-pro .q399-bottom-dock{height:var(--s422-bottom-h)!important;min-height:0!important;display:grid!important;grid-template-columns:1.15fr .85fr .85fr!important;gap:12px!important;overflow:hidden!important}
body.stage422-terminal-pro .q399-dock-card{min-height:0!important;overflow:hidden!important;padding:12px!important}
body.stage422-terminal-pro .q399-dock-card h4{margin:0 0 8px!important;font-size:12px!important;color:#DDEAFF!important;letter-spacing:.02em!important}
body.stage422-terminal-pro .q399-dock-table{width:100%!important;font-size:11px!important;border-collapse:collapse!important;color:#AFC0D8!important}
body.stage422-terminal-pro .q399-dock-table td{padding:4px 0!important;border-bottom:1px solid rgba(132,161,205,.10)!important}
body.stage422-terminal-pro .q399-dock-table td:last-child{text-align:right!important;color:#DDEAFF!important}
/* Chart chrome and overlays */
body.stage422-terminal-pro #q408ChartCanvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:1!important}
body.stage422-terminal-pro #q408OscillatorCanvas{position:absolute!important;left:0!important;right:0!important;bottom:0!important;height:24%!important;z-index:2!important;opacity:.95!important;border-top:1px solid rgba(132,161,205,.10)!important}
body.stage422-terminal-pro .q399-symbol-card{left:14px!important;top:14px!important;right:auto!important;z-index:18!important;border-radius:16px!important;background:rgba(5,12,22,.72)!important;backdrop-filter:blur(16px)!important;border:1px solid rgba(132,161,205,.24)!important;box-shadow:none!important}
body.stage422-terminal-pro .q399-chart-toolbar{left:14px!important;top:94px!important;z-index:18!important;border-radius:16px!important;background:rgba(5,12,22,.68)!important;backdrop-filter:blur(14px)!important;border:1px solid rgba(132,161,205,.22)!important}
body.stage422-terminal-pro .q399-chart-range{right:14px!important;top:14px!important;z-index:18!important;background:rgba(5,12,22,.70)!important;backdrop-filter:blur(14px)!important;border-radius:16px!important;border:1px solid rgba(132,161,205,.22)!important}
body.stage422-terminal-pro #q408Toolbar{left:14px!important;right:auto!important;top:146px!important;max-width:min(720px,calc(100% - 310px))!important;z-index:17!important;background:rgba(5,12,22,.70)!important;backdrop-filter:blur(14px)!important;border:1px solid rgba(132,161,205,.22)!important;border-radius:16px!important}
body.stage422-terminal-pro #q408Toolbar button,
body.stage422-terminal-pro #q408Toolbar select{height:34px!important;border-radius:10px!important;border:1px solid rgba(132,161,205,.22)!important;background:rgba(8,18,33,.90)!important;color:#DDEAFF!important;font-size:11px!important}
body.stage422-terminal-pro #q408IndicatorPanel{right:14px!important;top:70px!important;width:268px!important;max-height:calc(100% - 154px)!important;z-index:17!important;overflow:auto!important;border-radius:16px!important;background:rgba(5,12,22,.72)!important;backdrop-filter:blur(16px)!important;border:1px solid rgba(132,161,205,.22)!important;box-shadow:none!important;opacity:.96!important}
body.stage422-terminal-pro #q409Panel{left:14px!important;bottom:72px!important;top:auto!important;width:min(360px,calc(100% - 32px))!important;max-height:46px!important;overflow:hidden!important;z-index:19!important;opacity:.92!important;transition:max-height .18s ease!important;border-radius:16px!important;background:rgba(5,12,22,.72)!important;backdrop-filter:blur(16px)!important;border:1px solid rgba(132,161,205,.22)!important}
body.stage422-terminal-pro #q409Panel:hover,body.stage422-terminal-pro #q409Panel:focus-within{max-height:260px!important}
body.stage422-terminal-pro #q410Panel{left:14px!important;right:14px!important;bottom:14px!important;position:absolute!important;z-index:20!important;max-height:48px!important;overflow:hidden!important;opacity:.96!important;transition:max-height .18s ease!important}
body.stage422-terminal-pro #q410Panel:hover,body.stage422-terminal-pro #q410Panel:focus-within{max-height:230px!important}
body.stage422-terminal-pro #q410Panel .stage410-card{border-radius:16px!important;background:rgba(5,12,22,.78)!important;backdrop-filter:blur(16px)!important;border:1px solid rgba(100,163,255,.24)!important;box-shadow:none!important}
body.stage422-terminal-pro #q410Panel .stage410-actions,body.stage422-terminal-pro #q410Panel .stage410-status{display:none!important}
body.stage422-terminal-pro #q410Panel:hover .stage410-actions,body.stage422-terminal-pro #q410Panel:focus-within .stage410-actions,
body.stage422-terminal-pro #q410Panel:hover .stage410-status,body.stage422-terminal-pro #q410Panel:focus-within .stage410-status{display:grid!important}
/* Hide/move diagnostic surfaces from the public default view. They can be opened with the Advanced tray. */
body.stage422-terminal-pro:not(.stage422-debug-open) .stage405-validation-card,
body.stage422-terminal-pro:not(.stage422-debug-open) #qlion-stage406-panel,
body.stage422-terminal-pro:not(.stage422-debug-open) #stage407Panel,
body.stage422-terminal-pro:not(.stage422-debug-open) .stage407-panel,
body.stage422-terminal-pro:not(.stage422-debug-open) #s419Guardrail,
body.stage422-terminal-pro:not(.stage422-debug-open) .stage418-smoke-panel,
body.stage422-terminal-pro:not(.stage422-debug-open) .stage421-status-strip,
body.stage422-terminal-pro:not(.stage422-debug-open) [data-stage405-status],
body.stage422-terminal-pro:not(.stage422-debug-open) .debug-panel,
body.stage422-terminal-pro:not(.stage422-debug-open) .qa-panel{display:none!important}
body.stage422-terminal-pro .stage422-debug-toggle{
  position:fixed!important;right:18px!important;bottom:18px!important;z-index:120!important;height:38px!important;border-radius:999px!important;
  border:1px solid rgba(132,161,205,.24)!important;background:rgba(5,12,22,.82)!important;color:#DDEAFF!important;backdrop-filter:blur(16px)!important;padding:0 14px!important;font-size:12px!important;font-weight:800!important;box-shadow:0 16px 46px rgba(0,0,0,.30)!important;cursor:pointer!important;
}
body.stage422-terminal-pro.stage422-debug-open .stage405-validation-card,
body.stage422-terminal-pro.stage422-debug-open #s419Guardrail,
body.stage422-terminal-pro.stage422-debug-open .stage418-smoke-panel,
body.stage422-terminal-pro.stage422-debug-open #stage407Panel{
  position:fixed!important;right:16px!important;top:78px!important;width:360px!important;max-height:calc(100vh - 118px)!important;overflow:auto!important;z-index:110!important;border-radius:18px!important;box-shadow:0 24px 80px rgba(0,0,0,.40)!important;
}
body.stage422-terminal-pro.stage422-debug-open #s419Guardrail{top:160px!important}
body.stage422-terminal-pro.stage422-debug-open .stage418-smoke-panel{top:240px!important}
/* Make all tables and forms sane in constrained panels. */
body.stage422-terminal-pro table{max-width:100%!important}
body.stage422-terminal-pro input,body.stage422-terminal-pro select,body.stage422-terminal-pro button{font:inherit!important}
body.stage422-terminal-pro :focus-visible{outline:2px solid rgba(100,163,255,.72)!important;outline-offset:2px!important}
body.stage422-terminal-pro .q399-toast{z-index:160!important}
@media(max-width:1280px){
  :root{--s422-ticket-w:350px;--s422-bottom-h:126px}
  body.stage422-terminal-pro .q399-trading-grid{grid-template-columns:minmax(560px,1fr) minmax(318px,350px)!important}
  body.stage422-terminal-pro #q408IndicatorPanel{width:236px!important}
  body.stage422-terminal-pro #q408Toolbar{max-width:calc(100% - 270px)!important}
}
@media(max-width:1080px){
  html.stage422-terminal-pro,body.stage422-terminal-pro{overflow:auto!important}
  body.stage422-terminal-pro #stage399TerminalShell{position:relative!important;min-height:100vh!important;grid-template-rows:auto 1fr!important;overflow:visible!important}
  body.stage422-terminal-pro .q399-topbar{height:auto!important;grid-template-columns:1fr!important;align-items:start!important}
  body.stage422-terminal-pro .q399-body{height:auto!important;overflow:visible!important;padding:12px!important}
  body.stage422-terminal-pro .q399-page.is-active[data-q399-panel="trading"]{grid-template-rows:auto!important;overflow:visible!important}
  body.stage422-terminal-pro .q399-trading-grid{grid-template-columns:1fr!important;overflow:visible!important}
  body.stage422-terminal-pro .q399-chart-zone{height:66vh!important;min-height:520px!important}
  body.stage422-terminal-pro .q399-right-ticket{height:auto!important;overflow:visible!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.stage422-terminal-pro .q399-bottom-dock{height:auto!important;grid-template-columns:1fr!important}
  body.stage422-terminal-pro #q408IndicatorPanel{display:none!important}
}
@media(max-width:720px){
  body.stage422-terminal-pro .q399-chart-zone{height:58vh!important;min-height:430px!important;border-radius:18px!important}
  body.stage422-terminal-pro .q399-right-ticket{grid-template-columns:1fr!important}
  body.stage422-terminal-pro .q399-nav{padding-bottom:6px!important}
  body.stage422-terminal-pro .q399-symbol-card{max-width:calc(100% - 28px)!important}
  body.stage422-terminal-pro #q408Toolbar{display:none!important}
  body.stage422-terminal-pro #q410Panel{display:none!important}
}
@media(prefers-reduced-motion:reduce){body.stage422-terminal-pro *,body.stage422-terminal-pro *::before,body.stage422-terminal-pro *::after{transition:none!important;animation:none!important}}
