/* ============ MULTI-ASSET SHARED ============ */
.clstabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.clstabs button{padding:7px 14px;border-radius:9px;font-size:12.5px;font-weight:700;color:var(--text2);background:var(--surface2);border:1px solid var(--border)}
.clstabs button.on{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}
.instrow{display:flex;align-items:center;gap:9px;padding:9px 14px;cursor:pointer;font-size:13px}
.instrow:hover{background:var(--surface2)}
.instrow.on{background:var(--accent-soft)}
.instrow .nm{flex:1;min-width:0}
.instrow .nm b{display:block;font-weight:700;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.instrow .nm small{font-size:10.5px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.instrow .px{font-family:var(--ff-mono);font-size:12.5px;text-align:right}
.instrow .ch{font-family:var(--ff-mono);font-size:11.5px;font-weight:600;width:54px;text-align:right}
.bidask{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.bidask button{padding:11px 12px;border-radius:11px;border:1px solid var(--border);background:var(--surface2);text-align:left}
.bidask button .l{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text3)}
.bidask button .v{font-family:var(--ff-mono);font-size:18px;font-weight:600;margin-top:3px}
.bidask button.sell:hover,.bidask button.sell.on{border-color:var(--down);background:var(--down-soft)}
.bidask button.sell .v{color:var(--down)}
.bidask button.buy:hover,.bidask button.buy.on{border-color:var(--up);background:var(--up-soft)}
.bidask button.buy .v{color:var(--up)}
.spreadchip{text-align:center;font-family:var(--ff-mono);font-size:11px;color:var(--text3);margin:-6px 0 12px}
.slider{width:100%;accent-color:var(--accent);margin:8px 0 2px}
.sllabel{display:flex;justify-content:space-between;font-size:11px;color:var(--text3);font-family:var(--ff-mono)}
.mkthours{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:3px 9px;border-radius:20px}
.mkthours i{width:7px;height:7px;border-radius:50%;display:inline-block}
.mkthours.open{color:var(--up);background:var(--up-soft)}
.mkthours.open i{background:var(--up)}
.mkthours.shut{color:var(--text3);background:var(--surface3)}
.mkthours.shut i{background:var(--text3)}
/* option chain */
.chain{width:100%;border-collapse:collapse;font-family:var(--ff-mono);font-size:12.5px}
.chain th{padding:10px 8px;font-family:var(--ff);font-size:11px;font-weight:600;color:var(--text3);border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}
.chain td{padding:8px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}
.chain .strike{text-align:center;font-weight:700;background:var(--surface2);font-family:var(--ff-display)}
.chain tr:hover td{background:var(--surface2)}
.chain .itm{background:var(--accent-soft)}
.chain .side-c td{color:var(--text)}
.chain .buyc{color:var(--accent);cursor:pointer;font-weight:700}
.chain .buyc:hover{text-decoration:underline}
.chainhead{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
/* tap / simple / predict */
.tapwrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:22px;align-items:start}
@media(max-width:900px){.tapwrap{grid-template-columns:1fr}}
.tapchart{height:340px;position:relative;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}
@media(max-width:900px){.tapchart{height:250px}}
.tapstack{display:flex;flex-direction:column;gap:7px}
.taptarget{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:.14s}
.taptarget:hover{border-color:var(--accent-line);transform:translateX(3px)}
.taptarget.on{border-color:var(--accent);background:var(--accent-soft)}
.taptarget .lv{font-family:var(--ff-mono);font-size:15px;font-weight:600}
.taptarget .mu{font-family:var(--ff-display);font-size:19px;font-weight:900;color:var(--accent2)}
.taptarget .dist{font-size:11px;color:var(--text3)}
.updown{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.updown button{padding:18px 12px;border-radius:14px;font-family:var(--ff-display);font-weight:900;font-size:17px;border:1px solid transparent;color:#fff;display:flex;flex-direction:column;align-items:center;gap:5px}
.updown button small{font-family:var(--ff);font-size:11px;font-weight:600;opacity:.9}
.updown .up{background:var(--up)}
.updown .dn{background:var(--down)}
.updown button:hover{filter:brightness(1.08)}
.durrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(64px,1fr));gap:6px}
.durrow button{padding:9px 6px;border-radius:9px;font-family:var(--ff-mono);font-size:12.5px;font-weight:700;background:var(--surface2);border:1px solid var(--border);color:var(--text2)}
.durrow button.on{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}
.payoutbox{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin:14px 0}
.payoutbox .big{font-family:var(--ff-display);font-size:27px;font-weight:900;color:var(--up)}
.payoutbox .l{font-size:11.5px;color:var(--text3)}
.livebets{max-height:280px;overflow-y:auto}
.livebet{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:12.5px}
.livebet .st{width:8px;height:8px;border-radius:50%;flex-shrink:0}
/* prediction markets */
.pmgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.pmcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:20px;display:flex;flex-direction:column;gap:14px}
.pmcard:hover{border-color:var(--accent-line)}
.pmcard h3{font-size:15px;line-height:1.45}
.pmbar{height:9px;border-radius:5px;background:var(--down-soft);overflow:hidden;display:flex}
.pmbar>i{display:block;height:100%;background:var(--up)}
.pmodds{display:flex;justify-content:space-between;font-family:var(--ff-mono);font-size:12.5px;font-weight:600}
.pmbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}
.pmbtns button{padding:11px;border-radius:10px;font-weight:800;font-size:13px}
.pmbtns .y{background:var(--up-soft);color:var(--up);border:1px solid color-mix(in srgb,var(--up) 40%,transparent)}
.pmbtns .n{background:var(--down-soft);color:var(--down);border:1px solid color-mix(in srgb,var(--down) 40%,transparent)}
.pmbtns button:hover{filter:brightness(1.1)}
.pmmeta{display:flex;justify-content:space-between;font-size:11px;color:var(--text3)}
/* copy trading */
.cpgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.cpcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:20px}
.cpcard:hover{border-color:var(--accent-line)}
.cphead{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.cphead .av{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-family:var(--ff-display);font-weight:900;font-size:16px;color:#fff;flex-shrink:0}
.cphead b{font-size:15px;display:block}
.cphead small{font-size:11.5px;color:var(--text3)}
.cpstats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.cpstats div{text-align:center}
.cpstats .v{font-family:var(--ff-mono);font-size:16px;font-weight:600}
.cpstats .l{font-size:10.5px;color:var(--text3);margin-top:3px}
.cpspark{height:44px;margin-bottom:14px}
.rankbadge{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-family:var(--ff-display);font-weight:900;font-size:12px;flex-shrink:0}
.rank1{background:var(--warn);color:#000}.rank2{background:#B9C4D6;color:#000}.rank3{background:#C97B3C;color:#fff}
.rankn{background:var(--surface3);color:var(--text3)}
/* prop trading */
.propgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.propcard{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:24px;position:relative}
.propcard.pick{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-line)}
.propcard .tier{font-family:var(--ff-display);font-weight:900;font-size:19px}
.propcard .cap{font-family:var(--ff-mono);font-size:29px;font-weight:600;margin:10px 0 4px}
.propcard .fee{font-size:12.5px;color:var(--text3);margin-bottom:18px}
.propcard ul{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:9px}
.propcard li{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:var(--text2)}
.propcard li b{font-family:var(--ff-mono);font-weight:600;color:var(--text)}
.stages{display:flex;gap:0;margin:22px 0 30px;flex-wrap:wrap}
.stage{flex:1;min-width:150px;padding:16px 18px;border:1px solid var(--border);background:var(--surface);position:relative}
.stage:first-child{border-radius:var(--r) 0 0 var(--r)}
.stage:last-child{border-radius:0 var(--r) var(--r) 0}
@media(max-width:700px){.stage{border-radius:var(--r)!important;margin-bottom:8px}}
.stage.done{background:var(--up-soft);border-color:color-mix(in srgb,var(--up) 40%,transparent)}
.stage.cur{background:var(--accent-soft);border-color:var(--accent-line)}
.stage .n{font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text3)}
.stage b{display:block;font-size:14px;margin:6px 0 4px}
.stage p{font-size:11.5px;color:var(--text3);margin:0;line-height:1.55}
/* operator: payments / integrations */
.pspgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.pspcard{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:9px}
.pspcard:hover{border-color:var(--accent-line)}
.psplogo{height:34px;border-radius:8px;display:grid;place-items:center;font-family:var(--ff-display);font-weight:900;font-size:13px;letter-spacing:.02em;color:#fff}
.pspcard b{font-size:13px}
.pspcard small{font-size:11px;color:var(--text3);line-height:1.5}
.pspcard .tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto;padding-top:6px}
.pspcard .tags span{font-size:10px;font-weight:600;color:var(--text3);background:var(--surface2);border:1px solid var(--border);padding:2px 6px;border-radius:5px}
.funnel{display:flex;gap:0;flex-wrap:wrap;margin:20px 0}
.fstep{flex:1;min-width:130px;padding:18px;border:1px solid var(--border);background:var(--surface);text-align:center}
.fstep:first-child{border-radius:var(--r) 0 0 var(--r)}
.fstep:last-child{border-radius:0 var(--r) var(--r) 0}
@media(max-width:760px){.fstep{border-radius:var(--r)!important;margin-bottom:8px}}
.fstep .v{font-family:var(--ff-mono);font-size:22px;font-weight:600}
.fstep .l{font-size:11.5px;color:var(--text3);margin-top:5px}
.fstep .r{font-size:11px;color:var(--accent);margin-top:5px;font-weight:700}
.ndd-menu.wide{display:grid;grid-template-columns:1fr 1fr;min-width:430px;gap:0 4px}
.ndd-menu .grp{grid-column:1/-1;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--text3);padding:10px 12px 5px}
@media(max-width:1240px){.nav-links .ndd-menu.wide{min-width:300px;grid-template-columns:1fr}}
