/* Market data hub and tools (/market-data). Uses the site's tokens (--card, --line, --ink, --up, --down). */
.md-page{padding-bottom:40px}
/* F&O snapshot cards */
.md-snap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.md-sc{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:20px}
.md-sc header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.md-sc-n{display:grid;gap:2px}.md-sc-n b{font:800 15px var(--display);letter-spacing:-.01em}.md-sc-n small{font-size:12px;color:var(--ink-3)}
.md-sc-p{display:grid;justify-items:end;gap:2px}.md-sc-p b{font:800 16px var(--display);font-variant-numeric:tabular-nums}.md-sc-p em{font:700 12px var(--font);font-style:normal}
.md-kv{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin:0}
.md-kv div{display:grid;gap:1px;min-width:0}
.md-kv dt{font-size:11px;font-weight:650;color:var(--ink-3);text-transform:uppercase;letter-spacing:.02em}
.md-kv dd{margin:0;font:750 14px var(--font);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.md-kv dd small{font-size:11px;font-weight:650;color:var(--ink-3)}
.md-bar{display:flex;height:6px;border-radius:99px;overflow:hidden;background:var(--line)}
.md-bar i{display:block;height:100%}.md-bar i.up{background:var(--up)}.md-bar i.down{background:var(--down)}
.md-bar-l{display:flex;justify-content:space-between;margin:-6px 0 0;font-size:11px;font-weight:650}
.md-empty{display:flex;gap:8px;align-items:center;font-size:13px;margin:0}.md-empty .si{width:16px;height:16px;flex:none}
.md-sc-go{margin-top:auto;display:inline-flex;align-items:center;gap:6px;font:700 13px var(--font);color:var(--ink);text-decoration:none}
.md-sc-go .si{width:14px;height:14px;transition:transform .15s}.md-sc-go:hover .si{transform:translateX(3px)}
/* futures buildup */
.md-bu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.md-bu:has(> :nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.md-bu-c{padding:16px;border-radius:20px}
.md-bu-c h3{margin:0 0 10px;font:800 14px var(--display);display:flex;justify-content:space-between}
.md-bu-c h3 small{font-weight:700;color:var(--ink-3)}
.md-bu-c ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.md-bu-c li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;font-size:13px;font-variant-numeric:tabular-nums}
.md-bu-c li a{display:flex;align-items:center;gap:8px;min-width:0;color:var(--ink);text-decoration:none}
.md-bu-c li a b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.md-bu-c .s-av{width:24px;height:24px;border-radius:7px;font-size:9px}
.md-bu-c li span{font-weight:700;text-align:right}
/* tool catalogue */
.md-gh{margin:22px 0 10px;font:800 13px var(--font);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);display:flex;gap:8px;align-items:center}
.md-gh small{font-size:11px;padding:1px 8px;border-radius:99px;background:var(--line);color:var(--ink-2)}
.md-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.md-tool{display:flex;align-items:center;gap:12px;padding:14px;border-radius:18px;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
a.md-tool:hover{transform:translateY(-1px);box-shadow:0 10px 26px -14px rgba(0,0,0,.35)}
a.md-tool:active{transform:scale(.99)}
.md-tool .gm-tile{width:42px;height:42px;border-radius:12px}
.md-tool.soon .gm-tile{filter:saturate(.35);opacity:.75}
.md-tool-t{display:grid;gap:2px;min-width:0;flex:1}
.md-tool-t b{font:750 14px var(--font)}
.md-tool-t small{font-size:12px;color:var(--ink-3);line-height:1.35}
.md-pill{flex:none;font:700 11px var(--font);font-style:normal;padding:3px 9px;border-radius:99px;border:1px dashed var(--line);color:var(--ink-3)}
.md-pill.on{border:0;background:#007673;color:#fff}
.md-disc{font-size:12px;margin-top:14px}
@media (max-width:1100px){.md-snap{grid-template-columns:repeat(3,minmax(0,1fr))}.md-bu{grid-template-columns:repeat(2,minmax(0,1fr))}.md-tools{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.md-snap{grid-template-columns:minmax(0,1fr)}.md-bu,.md-bu:has(> :nth-child(2):last-child){grid-template-columns:minmax(0,1fr)}.md-tools{grid-template-columns:minmax(0,1fr)}}
/* tool page (coming soon) and health */
.md-soon{display:grid;gap:14px;max-width:760px}
.md-tbl{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.md-tbl th,.md-tbl td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.md-tbl th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3)}
.md-tbl td.r,.md-tbl th.r{text-align:right}
.md-btn2{background:var(--card);color:var(--ink);border:1px solid var(--line)}
/* ---------- tool pages (/market-data/{tool}) ---------- */
.md-tool-page{display:grid;gap:14px;padding-top:18px}
.md-th{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap}
.md-th-l{display:flex;gap:14px;align-items:center;min-width:0}
.md-th-l .gm-tile{width:52px;height:52px;border-radius:15px;flex:none}
.md-th-k{margin:0;font:700 12px var(--font);color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}
.md-th-k a{color:inherit;text-decoration:none}.md-th-k a:hover{color:var(--ink)}
.md-th-h{margin:2px 0;font:800 clamp(22px,3vw,32px)/1.1 var(--display);letter-spacing:-.02em}
.md-th-h span{color:var(--ink-3)}
.md-th-s{margin:0;color:var(--ink-2);font-size:14px}
.md-th-r{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.md-th-px{display:grid;justify-items:end;gap:1px}
.md-th-px small{font:700 11px var(--font);color:var(--ink-3);text-transform:uppercase}
.md-th-px b{font:800 22px var(--display);font-variant-numeric:tabular-nums}
.md-th-px em{font:700 13px var(--font);font-style:normal;font-variant-numeric:tabular-nums}
.md-bar2{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end;padding:12px 14px;border-radius:18px;position:sticky;top:calc(var(--nav-h,64px) + 6px);z-index:5}
.md-opts{display:contents}
.md-opt{display:grid;gap:4px;font-size:13px;min-width:0}
.md-opt>span{font:700 11px var(--font);color:var(--ink-3);text-transform:uppercase;letter-spacing:.03em}
.md-opt select,.md-opt input{height:36px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:600 13px var(--font);padding:0 10px;min-width:0;max-width:220px}
.md-opt input{width:150px}
.md-symw{display:flex;gap:4px;align-items:center}
.md-symw select{max-width:180px}
.md-step{width:30px;height:36px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:700 16px var(--font);cursor:pointer}
.md-seg{display:inline-flex;padding:3px;border-radius:11px;background:var(--line);gap:2px;flex-wrap:wrap}
.md-seg button{border:0;background:none;color:var(--ink-2);font:650 12px var(--font);padding:0 10px;height:30px;border-radius:8px;cursor:pointer;white-space:nowrap}
.md-seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.md-main{display:grid;gap:14px;min-width:0;transition:opacity .2s}
.md-loading .md-main{opacity:.65}
.md-box{padding:16px;border-radius:20px;min-width:0}
.md-bh{margin:0 0 10px;font:800 15px var(--display);letter-spacing:-.01em;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.md-bh small{font:600 12px var(--font);color:var(--ink-3)}
.md-chart{width:100%;min-height:200px}
.md-g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.md-g3{display:grid;grid-template-columns:2fr 1fr;gap:14px}
.md-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.md-kpi{padding:12px 14px;border-radius:16px;display:grid;gap:2px}
.md-kpi small{font:700 11px var(--font);color:var(--ink-3);text-transform:uppercase;letter-spacing:.03em}
.md-kpi b{font:800 18px var(--display);font-variant-numeric:tabular-nums;white-space:nowrap}
.md-kpi em{font-size:12px;font-style:normal;color:var(--ink-3)}
.md-ins ul{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px;line-height:1.5}
.md-none p{margin:0;color:var(--ink-3)}
.md-skel{height:380px;border-radius:20px;background:linear-gradient(90deg,var(--card) 0%,var(--line) 50%,var(--card) 100%);background-size:200% 100%;animation:mdsk 1.2s infinite linear}
@keyframes mdsk{to{background-position:-200% 0}}
.md-tbox{padding:14px}
.md-tbar{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.md-tbar input{height:34px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:0 10px;font:600 13px var(--font);width:min(260px,100%)}
.md-dl{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;font:650 12px var(--font);padding:0 12px;height:34px;cursor:pointer}
.md-tw{overflow:auto;max-height:640px;border-radius:12px}
.md-st thead th{position:sticky;top:0;background:var(--card);z-index:1;cursor:pointer;user-select:none;white-space:nowrap}
.md-st th.sa::after{content:' ▲';font-size:9px}.md-st th.sd::after{content:' ▼';font-size:9px}
.md-st td{white-space:nowrap}
.md-st tbody tr:hover td{background:color-mix(in srgb,var(--line) 45%,transparent)}
.md-st a{color:var(--ink);font-weight:700;text-decoration:none}.md-st a:hover{text-decoration:underline}
.md-tag{display:inline-block;padding:2px 8px;border-radius:99px;font:700 11px var(--font)}
.md-tag.L{background:rgba(22,163,74,.14);color:#15803d}.md-tag.S{background:rgba(220,38,38,.13);color:#b91c1c}
.md-tag.C{background:rgba(59,130,246,.14);color:#1d4ed8}.md-tag.U{background:rgba(245,158,11,.16);color:#b45309}.md-tag.N{background:var(--line);color:var(--ink-3)}
.md-cyc{display:flex;gap:2px}.md-cyc i{width:9px;height:18px;border-radius:2px;display:block}
.md-cyc i.L{background:#16a34a}.md-cyc i.S{background:#dc2626}.md-cyc i.C{background:#3b82f6}.md-cyc i.U{background:#f59e0b}.md-cyc i.N{background:#cbd5e1}.md-cyc i.x{background:transparent;border:1px dashed var(--line)}
.md-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--ink-2);margin:0 0 8px}.md-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.md-heat{background:color-mix(in srgb,var(--c) var(--a),transparent)}
.md-info{display:grid;gap:12px}
.md-info-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.md-info p{margin:0;line-height:1.6;color:var(--ink-2)}
.md-steps{margin:0;padding-left:20px;display:grid;gap:6px;color:var(--ink-2);line-height:1.5}
.md-symlinks{display:flex;flex-wrap:wrap;gap:6px}
.md-symlinks a{font:650 12px var(--font);padding:4px 10px;border-radius:99px;border:1px solid var(--line);color:var(--ink-2);text-decoration:none}
.md-symlinks a:hover{color:var(--ink);border-color:var(--ink-3)}
.md-replay{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.md-replay input[type=range]{flex:1;min-width:160px;accent-color:#007673}
.md-replay b{font-variant-numeric:tabular-nums;min-width:48px}
.md-ibtn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:10px;height:34px;min-width:34px;padding:0 10px;font:700 13px var(--font);cursor:pointer}
.md-ibtn.pri{background:#007673;border-color:#007673;color:#fff}
.md-ibtn:disabled{opacity:.45;cursor:default}
/* timeseries chain */
.md-ts td.c{background:color-mix(in srgb,var(--up) var(--a,0%),transparent)}.md-ts td.p{background:color-mix(in srgb,var(--down) var(--a,0%),transparent)}
.md-ts td.k{font-weight:800;text-align:center;background:var(--line)}.md-ts tr.atm td.k{background:#007673;color:#fff}
/* strategy builder */
.sb-g{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:14px;align-items:start}
.sb-chain{max-height:560px;overflow:auto;border-radius:12px}
.sb-chain td{padding:6px 8px}
.sb-chain tr.atm td{border-top:2px solid #007673}
.sb-chain .sb-bs{display:inline-flex;gap:3px}
.sb-bs button{border:0;border-radius:6px;font:800 11px var(--font);width:22px;height:22px;cursor:pointer;color:#fff}
.sb-bs .b{background:var(--up)}.sb-bs .s{background:var(--down)}
.sb-legs{display:grid;gap:6px}
.sb-leg{display:grid;grid-template-columns:auto 1fr auto auto auto auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;font-size:13px;font-variant-numeric:tabular-nums}
.sb-leg.off{opacity:.45}
.sb-leg input[type=number]{width:56px;height:30px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:0 6px}
.sb-leg select{height:30px;border-radius:8px;border:1px solid var(--line);background:var(--card);color:var(--ink);max-width:110px}
.sb-x{border:0;background:none;color:var(--ink-3);font-size:18px;cursor:pointer}
.sb-tpl{display:flex;gap:6px;flex-wrap:wrap}
.sb-tpl button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:99px;font:650 12px var(--font);padding:6px 12px;cursor:pointer}
.sb-tpl button:hover{border-color:#007673;color:#007673}
.sb-tabs{margin-bottom:8px}
@media (max-width:1000px){.md-g2,.md-g3,.sb-g,.md-info-g{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){.md-bar2{position:static}.md-opt select,.md-opt input{max-width:150px}.md-th-r{width:100%;justify-content:space-between}.md-th-px{justify-items:start}.sb-leg{grid-template-columns:auto 1fr auto auto;}}
