/* ===== FxPro trading-bridge: page-specific components ===== */

/* ---- TICKER MARQUEE ---- */
.ticker-marquee{background:#10141a;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden}
.ticker-viewport{overflow:hidden;position:relative}
.ticker-track{display:inline-flex;gap:2rem;white-space:nowrap;padding:.55rem 1rem;animation:ticker 32s linear infinite;will-change:transform}
.ticker-item{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;font-variant-numeric:tabular-nums}
.ticker-item .sym{font-weight:700;color:var(--text-light)}
.ticker-item .up{color:var(--bull)}
.ticker-item .down{color:var(--bear)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ticker-track{animation:none}}

/* ---- HERO ---- */
.hero{padding:3.5rem 0;position:relative}
.hero h1{font-size:clamp(1.9rem,5vw,3.1rem);line-height:1.08;margin:0 0 1rem}
.hero .lede{font-size:1.08rem;color:var(--text-muted);max-width:54ch;margin:0 0 1.6rem}
.section.hero-split{display:block}
.hero-art{background:var(--panel);border:1px solid var(--border);border-radius:6px;min-height:230px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);overflow:hidden}

/* ---- MARKET PANELS / BENTO ---- */
.bento-grid{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:640px){.bento-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:780px){.bento-grid{grid-template-columns:repeat(4,1fr)}.bento-grid .span-2{grid-column:span 2}.bento-grid .span-2-row{grid-row:span 2}}

.panel{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:1.25rem;color:#141820;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.panel.is-dark,.panel--dark{background:var(--panel-dark);color:var(--text-light)}
.panel.is-dark *,.panel--dark *{color:inherit}
.panel:hover{transform:translateY(-3px);border-color:var(--border-bright);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.panel .panel-title{font-size:.95rem;font-weight:700;margin:0 0 .5rem}
.panel .num,.panel .price,.panel .spread{font-variant-numeric:tabular-nums}
.dash-card{background:#fff;border:1px solid var(--border);border-radius:6px;padding:1.1rem;color:#141820}
.dash-card .text-muted{color:#5A6472}

/* market dark panels for hub */
.market-panel{background:var(--panel-dark);border:1px solid var(--border);border-radius:6px;padding:1.1rem;color:var(--text-light)}
.market-panel *{color:inherit}
.market-panel .price{font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums;display:block}
.market-panel .chg{font-size:.85rem;font-variant-numeric:tabular-nums}
.market-panel .chg.up{color:var(--bull)}
.market-panel .chg.down{color:var(--bear)}
.market-panel .text-muted{color:var(--text-muted)}

/* ---- BORDER BEAM / FEATURED ---- */
.panel--featured,.border-beam{position:relative;overflow:hidden}
.panel--featured::before,.border-beam::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(115deg,transparent 30%,var(--cta-brand) 50%,transparent 70%);background-size:300% 300%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:beam 4.5s linear infinite;pointer-events:none}
@keyframes beam{0%{background-position:0% 50%}100%{background-position:300% 50%}}
@media(prefers-reduced-motion:reduce){.panel--featured::before,.border-beam::before{animation:none}}

/* ---- COMPARISON MATRIX / TABLES ---- */
.matrix-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:6px}
table.matrix,table.data-table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--panel-dark);color:var(--text-light)}
table.matrix th,table.matrix td,table.data-table th,table.data-table td{padding:.7rem .8rem;text-align:left;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}
table.matrix thead th,table.data-table thead th{background:#10141a;font-weight:700;position:sticky;top:var(--header-h);z-index:2}
table.matrix tbody tr:hover{background:rgba(59,130,246,.08)}
table .is-highlight{background:rgba(0,197,130,.12)}
table .col-hl{background:rgba(59,130,246,.12)}
table th[data-sort]::after{content:"\2195";opacity:.5;margin-left:.3rem;font-size:.75rem}
.row-detail{display:none;background:#10141a}
.row-detail.is-open{display:table-row}
.row-detail td{padding:1rem;color:var(--text-muted)}

/* cookie types table (light card context) */
table.cookie-table{width:100%;border-collapse:collapse;font-size:.88rem}
table.cookie-table th,table.cookie-table td{padding:.65rem;border:1px solid var(--border);text-align:left;color:var(--text-light)}
table.cookie-table thead th{background:#10141a}

/* ---- PLATFORM RAIL / LINK RAIL ---- */
.link-rail{display:grid;gap:.85rem;grid-template-columns:1fr}
@media(min-width:640px){.link-rail{grid-template-columns:repeat(2,1fr)}}
@media(min-width:780px){.link-rail{grid-template-columns:repeat(4,1fr)}}
.rail-card{display:block;background:var(--panel-dark);border:1px solid var(--border);border-radius:6px;padding:1.1rem;color:var(--text-light);text-decoration:none;transition:transform .2s,border-color .2s}
.rail-card *{color:inherit}
.rail-card:hover{transform:translateY(-3px);border-color:var(--border-bright)}
.rail-card .text-muted{color:var(--text-muted)}

/* ---- TABS ---- */
.tab-list{display:flex;flex-wrap:wrap;gap:.4rem;border-bottom:1px solid var(--border);margin-bottom:1.2rem}
.tab-btn{background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted);padding:.6rem .9rem;cursor:pointer;font:inherit;font-weight:600}
.tab-btn.is-active{color:var(--text-light);border-bottom-color:var(--cta-brand)}
.tab-btn:hover{color:var(--text-light)}
.tab-panel{display:none}
.tab-panel.is-active{display:block;animation:fade .35s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.tab-panel.is-active{animation:none}}

/* ---- ACCORDION ---- */
.accordion-item{border:1px solid var(--border);border-radius:6px;margin-bottom:.6rem;background:var(--panel-dark);overflow:hidden}
.accordion-trigger,.faq-trigger{width:100%;text-align:left;background:transparent;border:none;color:var(--text-light);font:inherit;font-weight:600;padding:1rem 1.1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.accordion-trigger::after,.faq-trigger::after{content:"+";font-size:1.3rem;color:var(--cta-brand);transition:transform .25s}
.accordion-item.is-open .accordion-trigger::after,.accordion-item.is-open .faq-trigger::after{transform:rotate(45deg)}
.accordion-panel,.faq-body,.accordion-body{max-height:0;overflow:hidden;transition:max-height .3s ease}
.accordion-panel>*,.faq-body>*,.accordion-body>*{padding:0 1.1rem}
.accordion-panel>*:first-child,.faq-body>*:first-child{padding-top:.2rem}
.accordion-panel>*:last-child,.faq-body>*:last-child{padding-bottom:1rem}
.accordion-panel,.accordion-panel *{color:var(--text-muted)}
@media(prefers-reduced-motion:reduce){.accordion-panel,.faq-body,.accordion-body{transition:none}}

/* ---- FILTER / SPORT CHIPS ---- */
.chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.2rem}
.sport-chip,.filter-chip,.status-chip{background:var(--panel-dark);border:1px solid var(--border);color:var(--text-muted);padding:.45rem .9rem;border-radius:3px;cursor:pointer;font:inherit;font-size:.85rem;font-weight:600}
.sport-chip.is-active,.filter-chip.is-active,.status-chip.is-active{background:var(--cta-brand);border-color:var(--cta-brand);color:#fff}
.sport-chip:hover,.filter-chip:hover{border-color:var(--border-bright);color:var(--text-light)}
.sport-card{margin-bottom:.6rem}

/* ---- STEPS / RAIL ---- */
.steps,.slider-track,.rail-steps{counter-reset:step}
.steps{display:grid;gap:1rem;grid-template-columns:1fr;list-style:none;padding:0;margin:0}
@media(min-width:780px){.steps{grid-template-columns:repeat(4,1fr)}}
.step{position:relative;background:var(--panel-dark);border:1px solid var(--border);border-radius:6px;padding:1.2rem 1.1rem 1.1rem;color:var(--text-light)}
.step *{color:inherit}
.step .text-muted{color:var(--text-muted)}
.step::before{counter-increment:step;content:counter(step);position:absolute;top:-.8rem;left:1rem;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--cta-brand);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;font-variant-numeric:tabular-nums}
.step.is-active{border-color:var(--cta-brand)}
.step.is-done::before{background:var(--bull)}
.step-connector,.steps::after{display:none}
@media(min-width:780px){.step-connector-animate .step:not(:last-child)::after{content:"";position:absolute;top:0;right:-.6rem;width:1.2rem;height:1px;background:var(--border)}}
.step-progress{height:4px;background:var(--border);border-radius:2px;overflow:hidden;margin-bottom:1.4rem}
.step-progress-fill{height:100%;width:0;background:var(--cta-brand);transition:width .35s ease}
.rail-steps{display:flex;gap:1rem;overflow-x:auto;padding:1rem 0;list-style:none;margin:0}
.rail-steps .step{min-width:230px;flex:0 0 auto}

/* ---- SLIDER ---- */
.slider{position:relative}
.slider-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:1rem 0;scrollbar-width:thin}
.slider-track>*{scroll-snap-align:start;flex:0 0 80%}
@media(min-width:640px){.slider-track>*{flex:0 0 45%}}
.slider-prev,.slider-next{background:var(--panel-dark);border:1px solid var(--border);color:var(--text-light);width:2.4rem;height:2.4rem;border-radius:3px;cursor:pointer;font-size:1.1rem}
.slider-prev:hover,.slider-next:hover{border-color:var(--cta-brand)}

/* ---- MOCK FRAMES ---- */
.mock-frame{background:#fff;border:1px solid var(--border);border-radius:6px;overflow:hidden;color:#141820;display:none}
.mock-frame.is-active,.mock-frame:only-child{display:block}
.mock-frame .mock-bar{background:#10141a;padding:.55rem .9rem;display:flex;gap:.4rem;align-items:center}
.mock-frame .mock-bar .dot{width:.6rem;height:.6rem;border-radius:50%;background:#3a4250}
.mock-frame .mock-body{padding:1.2rem;min-height:200px}
.mock-frame .text-muted{color:#5A6472}
.frame-tabs{display:flex;gap:.4rem;margin-bottom:1rem}
.frame-btn{background:var(--panel-dark);border:1px solid var(--border);color:var(--text-muted);padding:.45rem .9rem;border-radius:3px;cursor:pointer;font:inherit;font-weight:600}
.frame-btn.is-active{background:var(--cta-brand);color:#fff;border-color:var(--cta-brand)}

/* device frame switch */
[data-frame-switch] .mock-frame{display:none}
[data-frame-switch] .mock-frame.is-active{display:block}

/* ---- INFO CARDS / FLIP ---- */
.info-grid{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:640px){.info-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:780px){.info-grid{grid-template-columns:repeat(3,1fr)}}
.info-card{background:var(--panel-dark);border:1px solid var(--border);border-radius:6px;padding:1.3rem;color:var(--text-light);transition:transform .3s ease,box-shadow .3s ease}
.info-card *{color:inherit}
.info-card .text-muted{color:var(--text-muted)}
.info-card:hover{transform:perspective(700px) rotateX(2deg) rotateY(-2deg) translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.4)}
@media(prefers-reduced-motion:reduce){.info-card:hover{transform:none}}

/* ---- EDUCATIONAL GRID / PANELS ---- */
.edu-grid{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:640px){.edu-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:780px){.edu-grid{grid-template-columns:repeat(3,1fr)}}

/* ---- TIMELINE ---- */
.timeline{position:relative;padding-left:1.6rem;list-style:none;margin:0}
.timeline::before{content:"";position:absolute;left:.35rem;top:.4rem;bottom:.4rem;width:2px;background:var(--border)}
.timeline-item{position:relative;margin-bottom:1.6rem;color:var(--text-light)}
.timeline-item *{color:inherit}
.timeline-item .text-muted{color:var(--text-muted)}
.timeline-item::before{content:"";position:absolute;left:-1.55rem;top:.35rem;width:.7rem;height:.7rem;border-radius:50%;background:var(--border);border:2px solid var(--bg-base)}
.timeline-item.is-active::before{background:var(--cta-brand)}

/* ---- CTA BAND ---- */
.cta-band{background:linear-gradient(135deg,#10141a,#181A20);border:1px solid var(--border);border-radius:8px;padding:2.4rem 1.5rem;text-align:center;color:var(--text-light)}
.cta-band *{color:inherit}
.cta-band h2{font-size:clamp(1.4rem,3.5vw,2rem);margin:0 0 .7rem}
.cta-band .text-muted{color:var(--text-muted)}
.cta-band .btn-row{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap;margin-top:1.3rem}

/* CTA pulse */
.cta-pulse{animation:ctapulse 2.6s ease-in-out infinite}
@keyframes ctapulse{0%,100%{box-shadow:0 0 0 0 rgba(255,140,0,.35)}50%{box-shadow:0 0 0 10px rgba(255,140,0,0)}}
@media(prefers-reduced-motion:reduce){.cta-pulse{animation:none}}

/* ---- CALLOUTS ---- */
.callout{border-radius:6px;padding:1.1rem 1.2rem;border:1px solid;margin:1.2rem 0}
.callout--warning,.disclaimer{background:#fff8e6;color:#3d2f00;border-color:#e8cf80}
.callout--warning *,.disclaimer *{color:#3d2f00}
.callout--info,.panel--info{background:#eef4ff;color:#0f2744;border-color:#b8cdf0}
.callout--info *,.panel--info *{color:#0f2744}
.callout .callout-title{font-weight:700;margin:0 0 .4rem}
.callout a{color:#1D5BBF;text-decoration:underline}

/* ---- PROMO / COPY-REF ---- */
.copy-ref{color:var(--cta-brand);background:#0d1117;padding:.7rem 1rem;border-radius:4px;font-family:ui-monospace,Menlo,Consolas,monospace;display:inline-flex;align-items:center;gap:.8rem;letter-spacing:.05em;border:1px dashed var(--cta-brand)}
.promo-stack{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}
.promo-stack .copy-ref{color:var(--cta-brand)}
.code-block{font-family:ui-monospace,Menlo,Consolas,monospace;background:#0d1117;color:var(--cta-brand);padding:1rem 1.2rem;border-radius:4px;font-size:1.3rem;letter-spacing:.12em;border:1px dashed var(--cta-brand);display:inline-block}
.btn-copy{background:var(--cta-brand);color:#fff;border:none;border-radius:3px;padding:.5rem .9rem;cursor:pointer;font:inherit;font-weight:600}
.btn-copy.is-copied{background:var(--bull)}

/* ---- TOOLTIP ---- */
.has-tooltip{position:relative;border-bottom:1px dotted var(--cta-brand);cursor:help}
.tooltip-bubble{position:absolute;bottom:130%;left:50%;transform:translateX(-50%);background:#0d1117;color:var(--text-light);border:1px solid var(--border);padding:.5rem .7rem;border-radius:4px;font-size:.8rem;width:max-content;max-width:240px;opacity:0;visibility:hidden;transition:opacity .2s;z-index:20;font-weight:400}
.has-tooltip:hover .tooltip-bubble,.has-tooltip:focus .tooltip-bubble{opacity:1;visibility:visible}

/* ---- LIGHTBOX ---- */
.lightbox-overlay{position:fixed;inset:0;background:rgba(5,7,10,.88);display:none;align-items:center;justify-content:center;z-index:200;padding:1.5rem}
.lightbox-overlay.is-open{display:flex}
.lightbox-inner{position:relative;max-width:90vw;max-height:90vh}
.lightbox-content img{max-width:90vw;max-height:85vh;border-radius:6px}
.lightbox-close{position:absolute;top:-2.4rem;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1}

/* ---- METHOD DRAWER ---- */
.method-drawer{position:fixed;inset:0;background:rgba(5,7,10,.7);display:none;justify-content:flex-end;z-index:180}
.method-drawer.is-open{display:flex}
.method-drawer .drawer-inner{background:var(--panel-dark);width:min(420px,92vw);height:100%;padding:1.6rem;overflow-y:auto;color:var(--text-light);border-left:1px solid var(--border)}
.method-drawer .drawer-inner *{color:inherit}
.method-drawer .text-muted{color:var(--text-muted)}
.drawer-close{background:none;border:1px solid var(--border);color:var(--text-light);border-radius:3px;padding:.3rem .7rem;cursor:pointer;float:right}

/* ---- CHECKLIST ---- */
.checklist{list-style:none;padding:0;margin:0}
.checklist-item{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem;border:1px solid var(--border);border-radius:4px;margin-bottom:.5rem;background:var(--panel-dark);color:var(--text-light)}
.checklist-item.is-checked{border-color:var(--bull);background:rgba(0,197,130,.08)}
.checklist-item.is-checked label{text-decoration:line-through;color:var(--text-muted)}
.checklist-item input{margin-top:.2rem;accent-color:var(--bull)}

/* ---- MOCK ACCOUNT CARD ---- */
.mock-account-card{background:linear-gradient(135deg,#10141a,#1d2530);border:1px solid var(--border);border-radius:8px;padding:1.4rem;color:var(--text-light);font-variant-numeric:tabular-nums}
.mock-account-card *{color:inherit}
.mock-account-card .balance{font-size:1.9rem;font-weight:700}
.mock-account-card .text-muted{color:var(--text-muted)}

/* ---- MAP PLACEHOLDER ---- */
.map-placeholder{overflow:hidden;border-radius:6px;border:1px solid var(--border)}
.map-placeholder img{width:100%;display:block;transition:transform .4s ease}
.map-placeholder:hover img{transform:scale(1.08)}
@media(prefers-reduced-motion:reduce){.map-placeholder:hover img{transform:none}}

/* ---- TOC / STICKY NAV ---- */
.toc-nav,.privacy-toc{position:sticky;top:calc(var(--header-h) + 1rem);background:var(--panel-dark);border:1px solid var(--border);border-radius:6px;padding:1rem;list-style:none;margin:0}
.toc-nav a,.privacy-toc a{display:block;padding:.35rem .4rem;color:var(--text-muted);text-decoration:none;font-size:.88rem;border-left:2px solid transparent}
.toc-nav a.is-active,.privacy-toc a.is-active{color:var(--text-light);border-left-color:var(--cta-brand)}

/* ---- PROSE LEGAL ---- */
.prose-legal{max-width:72ch}
.prose-legal h2{margin-top:2rem;font-size:1.3rem}
.prose-legal p,.prose-legal li{color:var(--text-muted);line-height:1.7}
.prose-legal a{color:var(--link);text-decoration:underline}
.legal-layout{display:grid;gap:1.5rem;grid-template-columns:1fr}
@media(min-width:780px){.legal-layout{grid-template-columns:240px 1fr}}
.last-updated-badge{display:inline-block;background:var(--panel-dark);border:1px solid var(--border);color:var(--text-muted);padding:.3rem .7rem;border-radius:3px;font-size:.8rem}

/* ---- BACK TO TOP / STICKY CTA ---- */
.back-to-top{position:fixed;bottom:1.2rem;right:1.2rem;background:var(--cta-brand);color:#fff;border:none;width:2.8rem;height:2.8rem;border-radius:4px;cursor:pointer;opacity:0;visibility:hidden;transition:opacity .25s;z-index:90;font-size:1.2rem}
.back-to-top.is-shown{opacity:1;visibility:visible}
.sticky-cta-mobile{position:fixed;left:0;right:0;bottom:0;background:var(--panel-dark);border-top:1px solid var(--border);padding:.7rem 1rem;transform:translateY(110%);transition:transform .3s;z-index:95}
.sticky-cta-mobile.is-shown{transform:translateY(0)}
@media(min-width:780px){.sticky-cta-mobile{display:none}}

/* ---- COMPARISON CARDS (mt4/mt5) ---- */
.compare-cards{display:grid;gap:1rem;grid-template-columns:1fr}
@media(min-width:780px){.compare-cards{grid-template-columns:repeat(2,1fr)}}
.compare-cards.is-toggled{grid-template-columns:1fr}

/* reveal */
.reveal,.panel-reveal{opacity:1}
.js-ready .reveal,.js-ready .panel-reveal,.js-ready [data-reveal]{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.js-ready .reveal.is-visible,.js-ready .panel-reveal.is-visible,.js-ready [data-reveal].is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js-ready .reveal,.js-ready .panel-reveal,.js-ready [data-reveal]{opacity:1;transform:none;transition:none}}

/* stagger */
.js-ready .stagger>*{opacity:0;transform:translateY(14px);transition:opacity .45s ease,transform .45s ease}
.js-ready .stagger.is-visible>*{opacity:1;transform:none}
.js-ready .stagger.is-visible>*:nth-child(2){transition-delay:.08s}
.js-ready .stagger.is-visible>*:nth-child(3){transition-delay:.16s}
.js-ready .stagger.is-visible>*:nth-child(4){transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.js-ready .stagger>*{opacity:1;transform:none}}

/* print */
@media print{.site-header,.site-footer,.back-to-top,.sticky-cta-mobile,.scroll-progress{display:none!important}.panel,.step,.accordion-item{break-inside:avoid}body{background:#fff;color:#000}}

/* agent-ui-fixes v1 + agent-light-theme v2 */
.acc-icon{display:none!important}
.accordion-trigger::after,.faq-trigger::after{content:'+';font-size:1.4rem;color:var(--brand);flex-shrink:0}
.accordion-item.is-open .accordion-trigger::after,.faq-item.is-open .faq-trigger::after{transform:rotate(45deg)}
.faq-trigger{width:100%;text-align:left;appearance:none;border:0;background:transparent;font:inherit;font-weight:600;padding:var(--sp-3) var(--sp-4);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);color:var(--text-light)}
.faq-item+.faq-item,.faq-item+.accordion-item,.accordion-item+.faq-item{border-top:1px solid var(--border)}
.accordion-panel,.faq-body,.accordion-body{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-body .accordion-panel-inner,.accordion-body .accordion-panel-inner,.accordion-body>p{padding:0 var(--sp-4) var(--sp-4);color:var(--text-muted)}
.accordion-body>p{margin:0}
/* agent-a11y-contrast v3 — WCAG AA floors (betting + trading) */
:root{--a11y-text:#141820;--a11y-muted:#5a6472;--a11y-muted-on-dark:#b8c2d0;--a11y-link:#1d5bbf;--a11y-link-on-dark:#7eb8ff;--a11y-warning-bg:#fff8e6;--a11y-warning-text:#3d2f00;--a11y-warning-muted:#5c4a1a;--a11y-info-bg:#eef4ff;--a11y-info-text:#0f2744;--a11y-info-muted:#3d5a80}
body.theme-light .text-muted,.section-light .text-muted,.content-section .text-muted{color:var(--a11y-muted)!important}
.section-dark>.text-muted,.hero>.text-muted,.site-footer>.text-muted,.band-pitch>.text-muted{color:var(--a11y-muted-on-dark)!important}
.section-dark .panel:not(.is-dark):not(.panel--dark) .text-muted,.section-dark .card:not(.is-dark) .text-muted,.hero .panel:not(.is-dark):not(.panel--dark) .text-muted,.hero .card:not(.is-dark) .text-muted{color:var(--a11y-muted)!important}
.panel:not(.is-dark):not(.panel--dark),.card:not(.is-dark):not(.panel--dark),.dash-card,.callout:not(.callout--dark):not(.rg-callout),.hub-card,.info-card:not(.is-dark),.feature-card,.promo-card,.mock-frame,.access-card,.pathway-card,.spec-card,.ficha-card,.data-card,.hero-card,.requirements-callout,.sport-card,.panel-grid .panel:not(.is-dark):not(.panel--dark),.card-grid .card,.steps-card,.sidebar-card,.comparison-card,.guide-card{color:var(--a11y-text)!important}
.panel:not(.is-dark):not(.panel--dark) *,.card:not(.is-dark):not(.panel--dark) *,.dash-card *,.callout:not(.callout--dark) *,.hub-card *,.mock-frame *,.access-card *{color:inherit}
.panel .text-muted,.card .text-muted,.dash-card .text-muted,.hub-card .text-muted,.mock-frame .text-muted,.access-card .text-muted,.callout:not(.callout--dark) .text-muted{color:var(--a11y-muted)!important}
.panel:not(.is-dark):not(.panel--dark) h2,.panel:not(.is-dark):not(.panel--dark) h3,.panel:not(.is-dark):not(.panel--dark) h4,.card:not(.is-dark) h2,.card:not(.is-dark) h3,.callout:not(.callout--dark) h2,.callout:not(.callout--dark) h3{color:var(--a11y-text)}
.hero .panel:not(.is-dark):not(.panel--dark),.hero .card:not(.is-dark),.hero .mock-frame,.hero-split__visual .panel:not(.is-dark):not(.panel--dark),.section-dark .panel:not(.is-dark):not(.panel--dark),.section-dark .card:not(.is-dark){color:var(--a11y-text)!important}
.panel .steps .step,.panel .step,.callout .step,.pathway-card .step{color:var(--a11y-text)}
.panel .steps .step p,.callout:not(.callout--dark) p,.callout:not(.callout--dark) li{color:var(--a11y-muted)}
.mock-frame .mock-row{color:var(--a11y-text)}
.mock-frame .mock-row .up,.mock-frame .up{color:var(--bull)!important}
.mock-frame .mock-row .down,.mock-frame .down{color:var(--bear)!important}
.card-grid .card h3,.hub-card h3,.promo-card h3,.sport-card h3{color:var(--a11y-text)!important}
body.theme-light .panel,body.theme-light .card,body.theme-light .callout:not(.callout--dark){color:var(--a11y-text)!important}
.callout--warning,.disclaimer,.compliance-note,.compliance-block,.notice--warn,.rg-callout,.alert--warn{background:var(--a11y-warning-bg)!important;color:var(--a11y-warning-text)!important;border-color:color-mix(in srgb,var(--a11y-warning-text) 25%,transparent)!important}
.callout--warning .text-muted,.disclaimer .text-muted,.compliance-note .text-muted,.rg-callout .text-muted{color:var(--a11y-warning-muted)!important}
.callout--info,.info-banner,.panel--info,.standards-block,.info-card--blue,.access-standards{background:var(--a11y-info-bg)!important;color:var(--a11y-info-text)!important;border-color:color-mix(in srgb,var(--a11y-info-text) 20%,transparent)!important}
.callout--info .text-muted,.panel--info .text-muted,.standards-block .text-muted,.info-card--blue .text-muted{color:var(--a11y-info-muted)!important}
.callout--info h2,.callout--info h3,.panel--info h3,.standards-block h3{color:var(--a11y-info-text)!important}
.section-light a:not(.btn):not(.nav-link):not(.header-logo),.content-section a:not(.btn){color:var(--a11y-link)}
.panel a:not(.btn),.card a:not(.btn){color:var(--a11y-link);text-decoration:underline;text-underline-offset:2px}
.section-dark a:not(.btn):not(.nav-link),.hero a:not(.btn):not(.nav-link){color:var(--a11y-link-on-dark)}
.site-footer a{color:var(--a11y-link-on-dark)}
body.theme-light .site-header .nav-link{color:#334155}
body.theme-light .site-header .nav-item.active>.nav-link,body.theme-light .site-header .nav-link:hover{color:var(--brand)}
body.theme-dark .site-header .nav-link,body:not(.theme-light) .site-header .nav-link{color:#e2e8f0}
.site-header .nav-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.site-footer{color:var(--a11y-muted-on-dark)}
.site-footer .footer-col h4,.site-footer h4{color:#e2e8f0}
.theme-light .accordion-trigger,.theme-light .faq-trigger,.panel .accordion-trigger,.panel .faq-trigger,.card .accordion-trigger,.card .faq-trigger{color:var(--a11y-text)!important}
.accordion-panel-inner,.faq-body .accordion-panel-inner,.accordion-body>p{color:var(--a11y-muted)}
.section-dark .accordion-item:not(.panel .accordion-item):not(.card .accordion-item) .accordion-trigger,.section-dark .accordion-item:not(.panel .accordion-item):not(.card .accordion-item) .faq-trigger{color:var(--text-light)}
.section-dark .data-table-wrap,.hero .data-table-wrap{background:var(--panel,#fff);color:var(--a11y-text)}
.section-dark .data-table th,.section-dark .data-table td{color:var(--a11y-text)}
.section-dark .data-table .text-muted{color:var(--a11y-muted)!important}
.section-light .eyebrow,.section-light .page-kicker,.content-section .eyebrow{color:var(--brand)}
.panel .eyebrow,.card .eyebrow{color:var(--brand)!important}
body.theme-dark .panel .text-muted,body.theme-dark .dash-card .text-muted,body:not(.theme-light) .panel .text-muted{color:var(--a11y-muted-on-dark)!important}
body.brand-exness.theme-light .hero,body.brand-exness.theme-light .winner-head{color:#141820!important}
.ticker-viewport{overflow:hidden;width:100%}
.ticker-marquee{display:flex;width:max-content;animation:tickerScroll 38s linear infinite}
.ticker-viewport:hover .ticker-marquee{animation-play-state:paused}
.ticker-track{display:flex;flex-shrink:0;gap:var(--space-xl,2rem);padding-right:var(--space-xl,2rem);white-space:nowrap;animation:none!important}
body.brand-exness,body.brand-exness.theme-light{--brand:var(--cta-brand,#F59E0B);--bg-base:#f4f6f9;--panel:#fff;--panel-2:#eef1f6;--border:#d5dbe5;--line:#d5dbe5;--text-light:#141820;--text-muted:#5a6472;--brand-ink:#141820;--shadow:0 6px 24px rgba(20,24,32,.08);background:var(--bg-base)!important;color:var(--text-light)!important}
body.brand-exness.theme-light .btn-ghost{color:#141820!important;border-color:#d5dbe5!important;background:#fff!important}
body.brand-exness .site-header{background:rgba(255,255,255,.96)!important;border-bottom:1px solid var(--border)!important}
body.brand-exness .site-header.is-stuck{background:rgba(255,255,255,.98)!important;box-shadow:0 4px 18px rgba(20,24,32,.08)!important}
body.brand-exness .section-dark,body.brand-exness .dark-section,body.brand-exness .hero{background:linear-gradient(160deg,#fff,#eef1f6)!important;color:#141820!important;border-color:var(--border)}
body.brand-exness .site-footer{background:var(--panel-2)!important}
body.brand-exness .panel,body.brand-exness .dash-card,body.brand-exness .card,body.brand-exness .accordion-item{background:var(--panel)!important;border-color:var(--border)!important}
body.brand-exness .header-logo,body.brand-exness a.brand,body.brand-exness .header-inner>.brand{display:none!important}
@media(min-width:780px){body.brand-exness #main-nav{margin-left:0}}
/* agent-exness-layout v1 */
body.brand-exness .section--dark,body.brand-exness .section-dark,body.brand-exness .hero,body.brand-exness .winner-head{background:linear-gradient(160deg,#fff,#eef1f6)!important;color:#141820!important}
body.brand-exness .section--dark .hero-lead,body.brand-exness .hero .hero-lead{color:#5a6472!important}
body.brand-exness .panel--dark{background:#fff!important;color:#141820!important;border:1px solid var(--border,#d5dbe5)!important}
body.brand-exness .panel--dark .text-muted{color:#5a6472!important}
body.brand-exness.theme-light .mock-frame{color:#e8ecf1!important}
body.brand-exness.theme-light .mock-frame .text-muted,body.brand-exness .panel--dark .mock-frame .text-muted{color:#b8c2d0!important}
.section.hero-split{display:block!important;position:relative;padding:var(--sp-8,4rem) 0}
.section.hero-split>.hero-grid-bg{position:absolute;inset:0;z-index:0}
.section.hero-split>.container{position:relative;z-index:1}
body.brand-exness .tab-panel .panel,body.brand-exness .tab-panel p,body.brand-exness .matrix td,body.brand-exness .data-table td{color:#141820!important}
body.brand-exness.theme-light table.matrix thead th,body.brand-exness.theme-light table.matrix tbody th,body.brand-exness.theme-light table.data-table thead th{color:#fff!important;background:#11141a!important}
body.brand-exness .tab-panel .text-muted,body.brand-exness .matrix .text-muted{color:#5a6472!important}
.section.hero-split>.container>.grid-2{display:grid;gap:var(--sp-6,1.5rem);align-items:center}
@media(min-width:780px){.section.hero-split>.container>.grid-2{grid-template-columns:1.1fr .9fr}}
.footer-grid{display:grid;gap:var(--sp-5,1.25rem);grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:780px){.footer-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
body.brand-exness .site-footer{color:#5a6472!important}
body.brand-exness .site-footer a{color:#1d5bbf!important}
body.brand-exness .footer-col__heading,body.brand-exness .footer-grid h4{color:#141820!important}
.steps,.slider-track,.rail-steps{counter-reset:step}
.promo-stack .copy-ref,.panel--dark .copy-ref{color:var(--cta-brand,#F59E0B)!important;background:#0d1117!important}
/* agent-trading-qa v1 — see lib/trading-site-qa.js */


/* agent-fxpro-dark-fix v1 — dark panels light text; light surfaces dark text; copy width */
:root{--maxw:1240px}

body.theme-dark .panel.is-dark,
body.theme-dark .panel.panel--dark,
body.theme-dark .panel--dark,
body.brand-fxpro.theme-dark .panel.is-dark,
body.brand-fxpro.theme-dark .panel.panel--dark,
body.brand-fxpro.theme-dark .panel--dark,
body.theme-dark .step,
body.theme-dark .market-panel,
body.theme-dark .info-card,
body.theme-dark .rail-card,
body.theme-dark .accordion-item{
  color:var(--text-light)!important;
}

body.theme-dark .hero .panel.is-dark,
body.theme-dark .hero .panel.panel--dark,
body.theme-dark .hero-split__visual .panel,
body.theme-dark .section--dark .panel.is-dark,
body.theme-dark .section--dark .panel.panel--dark,
body.theme-dark .section-dark .panel.is-dark,
body.theme-dark .section-dark .panel.panel--dark{
  color:var(--text-light)!important;
}

body.theme-dark .panel.is-dark h2,
body.theme-dark .panel.is-dark h3,
body.theme-dark .panel.is-dark h4,
body.theme-dark .panel.panel--dark h2,
body.theme-dark .panel.panel--dark h3,
body.theme-dark .panel.panel--dark h4,
body.theme-dark .panel--dark h2,
body.theme-dark .panel--dark h3,
body.theme-dark .panel--dark h4,
body.theme-dark .step h2,
body.theme-dark .step h3,
body.theme-dark .step h4{
  color:var(--text-light)!important;
}

body.theme-dark .panel.is-dark .text-muted,
body.theme-dark .panel.panel--dark .text-muted,
body.theme-dark .panel--dark .text-muted,
body.theme-dark .step .text-muted,
body.theme-dark .market-panel .text-muted{
  color:var(--text-muted)!important;
}

.mock-frame,
.mock-frame .dash-card,
.section--light .panel:not(.is-dark):not(.panel--dark){
  color:#141820!important;
}

.mock-frame .badge,
.section--light .badge,
.mock-frame .dash-card .badge{
  background:#eef1f6!important;
  color:#141820!important;
  border-color:#c5ccd6!important;
}

.mock-frame .badge--bull{
  color:var(--bull)!important;
  border-color:var(--bull)!important;
  background:#ecfdf5!important;
}

.mock-frame .badge--system{
  color:var(--system)!important;
  border-color:var(--system)!important;
  background:#eff6ff!important;
}

.lede,
.hero-copy>p,
.hero-left>p,
.section-sub{
  max-width:65ch;
}

.hero .lede,
.hero-copy .lede{
  max-width:62ch;
}

.container .text-center>p.text-muted{
  max-width:72ch;
  margin-left:auto;
  margin-right:auto;
}

@media(min-width:780px){
  .rail-steps{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    overflow-x:visible!important;
    gap:1rem;
    padding-bottom:0;
  }
  .rail-steps .step{
    min-width:0!important;
    flex:none!important;
  }
  .rail-steps.steps-4{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

.section--dark .panel.is-dark .panel-title,
.section--dark .panel.panel--dark .panel-title{
  color:var(--text-light)!important;
}

body.theme-dark .hero .panel.is-dark .text-muted,
body.theme-dark .section--dark .panel.is-dark .text-muted{
  color:var(--text-muted)!important;
}
body.theme-dark .panel.is-dark .badge,
body.theme-dark .panel.panel--dark .badge,
body.theme-dark .panel--dark .badge{
  background:#252830!important;
  color:var(--text-muted)!important;
  border-color:var(--border)!important;
}
body.theme-dark .panel.is-dark .badge--bull,
body.theme-dark .panel.panel--dark .badge--bull{
  color:var(--bull)!important;
  border-color:var(--bull)!important;
}
body.theme-dark .panel.is-dark .badge--system,
body.theme-dark .panel.panel--dark .badge--system{
  color:var(--system)!important;
  border-color:var(--system)!important;
}

/* agent-hero-viewport v1 — first screen + hero-split grid on container */
@media(min-width:780px){
  .section.hero,
  section.hero,
  section.section--dark:has(> .container.hero-split),
  .section:first-of-type:has(> .container.hero-split),
  main > .section:first-of-type:has(.hero-split),
  section[id^="hero"]{
    min-height:calc(100svh - var(--header-h));
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding-top:clamp(2rem,5vh,4rem);
    padding-bottom:clamp(2rem,5vh,4rem);
  }
  .section.hero > .container,
  section:has(> .container.hero-split) > .container.hero-split,
  .container.hero-split{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:clamp(1.25rem,3vw,2.5rem);
    align-items:center;
    width:100%;
  }
  .container.hero-split > .grid-2{
    display:grid;
    grid-column:1 / -1;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:inherit;
    align-items:center;
  }
}


/* agent-exness-contrast-fix v4 */
body.brand-exness.theme-light{
  --brand:var(--cta-brand,#F59E0B);
  --brand-ink:#141820;
  --bg-base:#f4f6f9;
  --panel:#ffffff;
  --panel-2:#eef1f6;
  --border:#d5dbe5;
  --line:#d5dbe5;
  --text-light:#141820;
  --text-muted:#5a6472;
  --link:#1d5bbf;
}
body.brand-exness.theme-light .btn-ghost{color:#141820!important;border-color:#d5dbe5!important;background:#fff!important}
body.brand-exness.theme-light table.matrix td,
body.brand-exness.theme-light table.data-table td{color:#141820!important;background:#fff!important}
body.brand-exness.theme-light table.matrix thead th,
body.brand-exness.theme-light table.matrix tbody th,
body.brand-exness.theme-light table.data-table thead th{color:#fff!important;background:#11141a!important}
/* agent-hero-split-section v1 — MT5 had hero-split on <section> */
.section.hero-split{display:block!important;position:relative;padding:var(--sp-8,4rem) 0}
.section.hero-split>.hero-grid-bg{position:absolute;inset:0;z-index:0}
.section.hero-split>.container{position:relative;z-index:1}
body.brand-exness.theme-light .mock-frame{color:#e8ecf1!important}
body.brand-exness.theme-light .mock-frame .text-muted{color:#b8c2d0!important}
.steps,.slider-track,.rail-steps{counter-reset:step}
.promo-stack .copy-ref,.panel--dark .copy-ref{color:var(--cta-brand,#F59E0B)!important;background:#0d1117!important}
