/* TradeFloor deck shell for inner pages — ticker, nav, footer, progress.
   All selectors are tf-prefixed so they never collide with page styles. */

#tfProg{position:fixed;top:0;left:0;right:0;height:2px;z-index:90;background:linear-gradient(90deg,#34D399,#6EE7B7);transform:scaleX(0);transform-origin:0 50%;pointer-events:none}

#tfTape{position:fixed;top:0;left:0;right:0;height:28px;z-index:60;background:#09090B;border-bottom:1px solid rgba(255,255,255,.06);overflow:hidden}
#tfTape .m{height:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,black 4%,black 96%,transparent);mask-image:linear-gradient(90deg,transparent,black 4%,black 96%,transparent)}
#tfTape .t{display:flex;gap:40px;width:max-content;align-items:center;height:100%;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10.5px;color:#A1A1AA;white-space:nowrap;animation:tfMq 56s linear infinite}
#tfTape .g{display:flex;gap:40px;align-items:center;flex-shrink:0}
@keyframes tfMq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tf-dot{display:inline-block;width:5px;height:5px;border-radius:99px;background:#34D399;vertical-align:1px;animation:tfPulse 1.8s ease-in-out infinite}
@keyframes tfPulse{0%,100%{opacity:1}50%{opacity:.35}}

#tfNav{position:fixed;top:28px;left:0;right:0;z-index:50;transition:background .2s ease,border-color .2s ease;border-bottom:1px solid transparent}
#tfNav.scrolled{background:rgba(9,9,11,.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom-color:rgba(255,255,255,.06)}
#tfNav .tf-in{max-width:1440px;margin:0 auto;padding:0 clamp(18px,3.4vw,44px);height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.tf-logo{display:flex;align-items:center;gap:8px;color:#FAFAFA;text-decoration:none}
.tf-logo:hover{text-decoration:none}
.tf-logo-mark{width:24px;height:24px;border-radius:5px;background:#FAFAFA;color:#09090B;display:inline-flex;align-items:center;justify-content:center}
.tf-logo-name{font-family:'Space Grotesk','Inter',sans-serif;font-size:17px;font-weight:600;letter-spacing:-.03em}
.tf-logo-tag{font-family:'JetBrains Mono',monospace;font-size:10px;color:#34D399;margin-left:2px}
.tf-mid{display:flex;gap:2px}
.tf-btn{display:inline-flex;align-items:center;gap:.55rem;padding:.78rem 1.25rem;border-radius:6px;font-family:'Inter',sans-serif;font-weight:500;font-size:14px;line-height:1;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .2s ease;text-decoration:none}
.tf-btn:hover{text-decoration:none}
.tf-btn-pri{background:#FAFAFA;color:#09090B!important;border-color:#FAFAFA}
.tf-btn-pri:hover{background:#fff;box-shadow:0 0 0 1px rgba(250,250,250,.25),0 8px 32px -8px rgba(52,211,153,.35)}
.tf-btn-ghost{background:transparent;color:#A1A1AA!important;padding:.55rem .8rem}
.tf-btn-ghost:hover{color:#FAFAFA!important}
.tf-btn-ghost.tf-active{color:#FAFAFA!important}
.tf-drawer a.tf-dl.tf-active{color:#FAFAFA}
@media(max-width:1120px){.tf-mid{display:none}}

/* ===== mobile nav: hamburger + drawer (injected by shell.js) ===== */
.tf-burger{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:transparent;color:#FAFAFA;cursor:pointer;padding:0;flex-shrink:0}
.tf-burger:hover{background:rgba(255,255,255,.06)}
.tf-burger svg{display:block}
.tf-drawer{display:none;position:fixed;top:84px;left:0;right:0;z-index:48;background:rgba(9,9,11,.98);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);padding:6px clamp(18px,3.4vw,44px) 24px;flex-direction:column;max-height:calc(100vh - 84px);overflow-y:auto}
.tf-drawer.open{display:flex}
.tf-drawer a.tf-dl{font-family:'Space Grotesk','Inter',sans-serif;font-size:17px;font-weight:500;color:#E4E4E7;text-decoration:none;padding:14px 6px;border-bottom:1px solid rgba(255,255,255,.05)}
.tf-drawer a.tf-dl:hover{color:#FAFAFA;text-decoration:none}
.tf-drawer .tf-drawer-ctas{display:flex;gap:10px;margin-top:18px}
.tf-drawer .tf-drawer-ctas .tf-btn{flex:1;justify-content:center;padding:.85rem 1rem}
@media(max-width:1120px){.tf-burger{display:inline-flex}.tf-cta-group{display:none!important}}
@media(min-width:1121px){.tf-drawer{display:none!important}}

#tfFoot{border-top:1px solid rgba(255,255,255,.06);padding:64px 0 36px;background:#09090B}
#tfFoot .tf-wrap{max-width:1440px;margin:0 auto;padding:0 clamp(18px,3.4vw,44px)}
.tf-fmark{display:flex;align-items:baseline;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:52px}
.tf-fword{font-family:'Space Grotesk','Inter',sans-serif;font-weight:500;font-size:clamp(52px,9vw,124px);line-height:1;letter-spacing:-.05em;color:#FAFAFA}
.tf-fword i{color:#34D399;font-style:normal}
.tf-fmeta{font-family:'JetBrains Mono',monospace;font-size:11px;color:#71717A;text-align:right}
.tf-cols{display:grid;grid-template-columns:1.2fr .7fr .7fr .7fr .7fr;gap:36px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.06)}
.tf-cols .tf-tag{max-width:300px;font-size:13.5px;line-height:1.55;color:#A1A1AA;margin:0;font-family:'Inter',sans-serif}
.tf-h{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.08em;color:#71717A;text-transform:uppercase}
.tf-cols ul{margin:14px 0 0;padding:0;list-style:none}
.tf-cols li{margin-bottom:9px}
.tf-cols li a{font-family:'Inter',sans-serif;font-size:13.5px;color:#A1A1AA;text-decoration:none}
.tf-cols li a:hover{color:#FAFAFA;text-decoration:none}
.tf-base{padding-top:24px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-family:'JetBrains Mono',monospace;font-size:11px;color:#71717A}
.tf-disc{margin-top:18px;font-family:'Inter',sans-serif;font-size:10.5px;line-height:1.7;color:#52525B;max-width:980px}
@media(max-width:1020px){.tf-cols{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){#tfTape .t,.tf-dot{animation:none}}

/* ===== product mega-dropdown (hover) — injected by shell.js ===== */
.tf-has-mega{position:relative;display:inline-flex;align-items:center}
.tf-mega-caret{margin-left:5px;font-size:8px;color:#52525B;transition:transform .2s ease,color .2s ease;display:inline-block}
.tf-has-mega:hover .tf-mega-caret{transform:rotate(180deg);color:#A1A1AA}
.tf-mega{position:fixed;top:90px;left:50%;transform:translateX(-50%) translateY(6px);width:min(880px,95vw);z-index:55;background:rgba(12,12,15,.97);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 28px 80px -22px rgba(0,0,0,.75);padding:22px 24px;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.tf-mega.open{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.tf-mega--who{width:min(300px,90vw);padding:14px}
.tf-mega--who .tf-meg-item{padding:8px 10px}
.tf-mega-grid{display:flex;gap:14px}
.tf-meg-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.tf-meg-h{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:#52525B;padding:4px 8px 6px;white-space:nowrap}
.tf-meg-item{display:flex;flex-direction:column;gap:2px;padding:7px 8px;border-radius:8px;text-decoration:none;transition:background .14s ease}
.tf-meg-item:hover{background:rgba(255,255,255,.05);text-decoration:none}
.tf-meg-name{font-family:'Space Grotesk','Inter',sans-serif;font-size:13px;font-weight:500;color:#FAFAFA;letter-spacing:-.01em}
.tf-meg-item:hover .tf-meg-name{color:#34D399}
.tf-meg-desc{font-family:'JetBrains Mono',monospace;font-size:9.5px;color:#71717A;line-height:1.35}
.tf-mega-foot{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);font-family:'JetBrains Mono',monospace;font-size:10.5px;color:#52525B}
.tf-mega-foot a{color:#34D399;text-decoration:none}
.tf-mega-foot a:hover{text-decoration:none;color:#6EE7B7}
@media(max-width:1120px){.tf-mega{display:none}}
@media(prefers-reduced-motion:reduce){.tf-mega,.tf-mega-caret{transition:none}}
