:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef2f4;--panel:#f9fbfb;--panel-2:#f3f6f6;--control:#edf2f1;--control-hover:#dfe8e6;--line:#cdd8d6;--muted:#52625e;--text:#17211f;--subtle:#334744;--green:#056f4c;--green-soft:#07884f1c;--amber:#8a4f00;--amber-soft:#da810021;--red:#ad2931;--red-soft:#c93d3d1f;--blue:#176da3;--blue-soft:#1e6bd61f;--track:#e6edf5;--heat-em:#17202b94;--primary-tile-bg:linear-gradient(180deg, #07884f1f, #fff);--error-bg:#fff7df;--shadow:none;--selection:#d9ece6;--surface-strong:#e6eeec;--focus:#176da3}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d1312;--panel:#121a18;--panel-2:#17211f;--control:#182320;--control-hover:#263633;--line:#2b3c38;--muted:#91a39f;--text:#edf4f2;--subtle:#c6d3d0;--green:#48c997;--green-soft:#36d58c29;--amber:#f6b84b;--amber-soft:#f6b84b26;--red:#ff6b6b;--red-soft:#ff6b6b29;--blue:#58a6ff;--blue-soft:#58a6ff24;--track:#0d1116;--heat-em:#ffffff9e;--primary-tile-bg:linear-gradient(180deg, #36d58c21, #14181d);--error-bg:#271d0c;--shadow:none;--selection:#1c3a32;--surface-strong:#20302c;--focus:#6eb6df}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Ubuntu Sans,Noto Sans CJK SC,PingFang SC,sans-serif}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.shell{min-height:100vh;padding:18px}.topbar{grid-template-columns:minmax(220px,.7fr) minmax(720px,1.5fr);align-items:stretch;gap:16px;margin-bottom:16px;display:grid}.title-block{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.brand-heading{align-items:center;gap:12px;min-width:0;display:flex}.brand-logo{flex:0 0 42px;width:42px;height:42px;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--green);letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}h1{letter-spacing:0;margin:0;font-size:34px;line-height:1.05}.market-strip{grid-template-columns:1.15fr 1fr .8fr .9fr;gap:10px;display:grid}.market-tile,.panel,.expiry-card{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}.market-tile{border-radius:8px;flex-direction:column;justify-content:center;min-height:76px;padding:13px 14px;display:flex}.market-tile span,.metric span,.quote-line span,.bar-line span,.field label,.timestamp,.micro{color:var(--muted);font-size:12px}.market-tile strong{font-variant-numeric:tabular-nums;align-items:center;gap:7px;margin-top:5px;font-size:20px;display:flex}.market-tile em{color:var(--muted);align-items:center;gap:3px;margin-top:5px;font-size:12px;font-style:normal;display:flex}.market-tile.primary{background:var(--primary-tile-bg)}.theme-toggle{border:1px solid var(--line);background:var(--panel);width:34px;height:34px;color:var(--text);box-shadow:none;border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;display:inline-flex}.theme-toggle:hover{border-color:var(--control-hover);background:var(--control)}.up{color:var(--green)!important}.down{color:var(--red)!important}.neutral{color:var(--muted)!important}.status.ok strong{color:var(--green)}.status.partial strong{color:var(--blue)}.status.error strong,.status.stale strong{color:var(--amber)}.workspace{grid-template-columns:260px minmax(640px,1fr) 340px;align-items:start;gap:16px;display:grid}.panel{border-radius:8px}.sidebar,.detail{max-height:calc(100vh - 36px);padding:14px;position:sticky;top:18px;overflow:auto}.main-column{flex-direction:column;gap:16px;min-width:0;display:flex}.panel-title{align-items:center;gap:8px;margin-bottom:14px;font-weight:800;display:flex}.panel-title.spread{justify-content:space-between}.panel-title.spread span{align-items:center;gap:8px;display:flex}.panel-title em{color:var(--muted);font-size:12px;font-style:normal;font-weight:600}.field{margin-bottom:18px}.field label{margin-bottom:8px;font-weight:700;display:block}.segmented{border:1px solid var(--line);background:var(--control);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:4px;display:grid}.segmented.vertical{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented button,.expiry-list button,.toggle,.expiry-card,.table-row,.heat{transition:border-color .15s,background .15s,transform .15s}.segmented button{min-height:34px;color:var(--muted);background:0 0;border:0;border-radius:6px;font-weight:700}.segmented button.active{background:var(--blue-soft);color:var(--text)}.expiry-list{grid-template-columns:1fr 1fr;gap:7px;max-height:280px;display:grid;overflow:auto}.expiry-list button{border:1px solid var(--line);background:var(--control);min-height:44px;color:var(--text);border-radius:7px}.expiry-list button.active{border-color:var(--green);background:var(--green-soft)}.expiry-list em{color:var(--muted);margin-top:2px;font-size:11px;font-style:normal;display:block}.range-line{grid-template-columns:1fr 50px;align-items:center;gap:10px;display:grid}input[type=range]{width:100%;accent-color:var(--green)}.range-line strong{font-variant-numeric:tabular-nums;text-align:right}.toggle{border:1px solid var(--line);color:var(--subtle);background:var(--control);border-radius:8px;align-items:center;gap:9px;padding:11px;font-size:13px;font-weight:700;display:flex}.toggle input{width:16px;height:16px;accent-color:var(--green)}.expiry-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.expiry-card{min-height:112px;color:var(--text);text-align:left;border-radius:8px;padding:12px}.expiry-card:hover,.table-row:hover,.heat:hover{border-color:var(--control-hover);transform:translateY(-1px)}.expiry-card span,.expiry-card em{color:var(--muted);font-size:12px;font-style:normal;display:block}.expiry-card strong{font-variant-numeric:tabular-nums;margin:5px 0 8px;font-size:22px;display:block}.mini-bars{gap:3px;height:5px;margin-top:10px;display:flex}.mini-bars i,.mini-bars b{border-radius:999px;min-width:3px;display:block}.mini-bars i{background:var(--green)}.mini-bars b{background:var(--blue)}.heatmap-panel,.table-panel{padding:14px}.heatmap-grid{flex-direction:column;gap:10px;display:flex;overflow-x:auto}.heat-row{grid-template-columns:70px 1fr;align-items:stretch;gap:8px;min-width:780px;display:grid}.heat-expiry{border-right:1px solid var(--line);flex-direction:column;justify-content:center;display:flex}.heat-expiry strong{font-size:14px}.heat-expiry span{color:var(--muted);font-size:12px}.heat-cells{grid-template-columns:repeat(18,minmax(72px,1fr));gap:6px;display:grid}.heat{border:1px solid var(--line);min-height:62px;color:var(--text);text-align:left;border-radius:7px;padding:7px;position:relative}.heat strong,.heat span,.heat em{font-variant-numeric:tabular-nums;display:block}.heat strong{font-size:14px}.heat span{color:var(--subtle);margin-top:4px;font-size:12px}.heat em{color:var(--heat-em);font-size:11px;font-style:normal;position:absolute;bottom:6px;right:7px}.heat-high{background:#36d58c4d;border-color:#36d58c7a}.heat-mid{background:#36d58c2e;border-color:#36d58c47}.heat-low{background:#58a6ff2b}.heat-muted{background:var(--control);opacity:.78}.heat-risk{background:var(--amber-soft);border-color:#f6b84b80}.heat.selected,.table-row.active{border-color:var(--green)}.heat.selected:after,.table-row.active:after{border:2px solid var(--green);border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0}.contracts-table{overflow-x:auto}.table-head,.table-row{grid-template-columns:minmax(190px,1.7fr) .7fr .9fr .65fr .65fr .85fr .85fr 1.2fr;align-items:center;gap:12px;min-width:980px;display:grid}.table-head{color:var(--muted);padding:0 10px 9px;font-size:12px;font-weight:800}.table-row{border:1px solid var(--line);background:var(--control);width:100%;min-height:58px;color:var(--text);text-align:left;border-radius:8px;margin-bottom:7px;padding:9px 10px;position:relative}.table-row span{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.table-row strong,.table-row em{text-overflow:ellipsis;display:block;overflow:hidden}.table-row em{color:var(--muted);margin-top:3px;font-size:11px;font-style:normal}.flag-list{flex-wrap:wrap;gap:5px;display:flex}.flag-list i,.flags span,.flags .clean{background:var(--amber-soft);color:var(--amber);border-radius:999px;align-items:center;gap:4px;padding:3px 6px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.detail{padding:14px}.selected-contract{border:1px solid var(--line);background:var(--control);border-radius:8px;padding:13px}.selected-contract span,.selected-contract em{color:var(--muted);font-size:12px;font-style:normal}.selected-contract strong{margin:5px 0;font-size:28px;display:block}.metric-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.metric{border:1px solid var(--line);background:var(--control);border-radius:8px;min-height:66px;padding:10px}.metric strong{font-variant-numeric:tabular-nums;margin-top:8px;font-size:18px;display:block}.metric.strong{background:var(--green-soft);border-color:#36d58c73}.detail-section{margin-top:18px}.detail-section h2{margin:0 0 9px;font-size:14px}.quote-line{background:var(--green-soft);border:1px solid #36d58c40;border-radius:8px;grid-template-columns:52px 1fr 80px;align-items:center;min-height:38px;padding:8px 10px;display:grid}.quote-line.ask{background:var(--red-soft);border-color:#ff6b6b40;margin-top:7px}.quote-line strong{font-variant-numeric:tabular-nums}.quote-line strong small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:800;display:block}.quote-line em{color:var(--muted);text-align:right;font-size:12px;font-style:normal}.greeks{grid-template-columns:1fr 1fr;gap:8px;display:grid}.flags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.flags .clean{background:var(--green-soft);color:var(--green)}.vol-bars{flex-direction:column;gap:9px;display:flex}.bar-line{grid-template-columns:66px 1fr 58px;align-items:center;gap:8px;display:grid}.bar-line div{background:var(--track);border-radius:999px;height:8px;overflow:hidden}.bar-line i{border-radius:inherit;background:var(--blue);height:100%;display:block}.bar-line strong{text-align:right;font-size:12px}.oi-balance{grid-template-columns:52px 1fr 55px;align-items:center;gap:8px;display:grid}.oi-balance div{background:var(--track);border-radius:999px;height:10px;display:flex;overflow:hidden}.oi-balance i,.oi-balance b{display:block}.oi-balance i{background:var(--green)}.oi-balance b{background:var(--blue)}.timestamp{align-items:center;gap:6px;margin-top:16px;display:flex}.empty-state{min-height:120px;color:var(--muted);justify-content:center;align-items:center;display:flex}.error-toast{background:var(--error-bg);max-width:520px;color:var(--amber);box-shadow:var(--shadow);border:1px solid #f6b84b61;border-radius:8px;padding:12px 14px;font-size:13px;position:fixed;bottom:18px;right:18px}.view-tabs{border:1px solid var(--line);background:var(--control);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0 0 16px;padding:4px;display:inline-grid}.view-tabs button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:800;display:inline-flex}.futures-workspace{flex-direction:column;gap:16px;display:flex}.futures-overview,.basis-curve-panel,.funding-panel,.basis-history-panel,.futures-table-panel{padding:14px}.basis-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.futures-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:stretch;gap:16px;display:grid}.basis-curve{flex-direction:column;gap:11px;display:flex}.basis-row{border:1px solid var(--line);background:var(--control);border-radius:8px;grid-template-columns:138px minmax(180px,1fr) 88px 74px;align-items:center;gap:12px;min-height:58px;padding:10px;display:grid}.basis-row strong,.basis-row span,.basis-row em,.futures-row strong,.futures-row em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.basis-row span,.basis-row em{color:var(--muted);font-size:12px;font-style:normal}.basis-row>strong{font-variant-numeric:tabular-nums;text-align:right}.basis-bar{background:var(--track);border-radius:999px;height:14px;position:relative;overflow:hidden}.basis-bar b{background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:50%}.basis-bar i{border-radius:999px;min-width:2px;position:absolute;top:3px;bottom:3px}.basis-bar i.up{background:var(--green)}.basis-bar i.down{background:var(--red)}.basis-bar i.neutral{background:var(--muted)}.funding-stack{gap:8px;display:grid}.db-line{border:1px solid var(--line);background:var(--control);color:var(--muted);border-radius:8px;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;margin-top:12px;padding:10px;font-size:12px;font-weight:800;display:grid}.db-line strong{color:var(--text);font-variant-numeric:tabular-nums}.futures-table{overflow-x:auto}.futures-head,.futures-row{grid-template-columns:minmax(145px,1.2fr) minmax(180px,1.25fr) .7fr .7fr .75fr .65fr .75fr minmax(150px,1fr);align-items:center;gap:12px;min-width:1080px;display:grid}.futures-head{color:var(--muted);padding:0 10px 9px;font-size:12px;font-weight:800}.futures-row{border:1px solid var(--line);background:var(--control);font-variant-numeric:tabular-nums;border-radius:8px;min-height:56px;margin-bottom:7px;padding:9px 10px}.futures-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.futures-row em{color:var(--muted);margin-top:3px;font-size:11px;font-style:normal}.history-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.history-card{border:1px solid var(--line);background:var(--control);border-radius:8px;grid-template-columns:112px 1fr;align-items:center;gap:12px;min-height:90px;padding:11px;display:grid}.history-card strong,.history-card span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.history-card span{color:var(--muted);margin-top:4px;font-size:12px}.sparkline-wrap{grid-template-columns:1fr 68px;align-items:center;gap:8px;min-width:0;display:grid}.sparkline-wrap svg{width:100%;min-width:0;height:58px}.sparkline-wrap polyline{fill:none;stroke:var(--blue);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px}.sparkline-wrap strong{font-variant-numeric:tabular-nums;text-align:right}.sparkline-empty{background:var(--track);min-height:58px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;font-weight:800;display:flex}@media (max-width:1320px){.topbar,.workspace{grid-template-columns:1fr}.basis-metrics,.history-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.futures-grid{grid-template-columns:1fr}.sidebar,.detail{max-height:none;position:static}.sidebar{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.sidebar .panel-title,.sidebar .toggle{grid-column:1/-1}.expiry-list{max-height:180px}}@media (max-width:760px){.shell{padding:10px}.topbar{gap:10px;margin-bottom:10px}.title-block{align-items:center}.brand-heading{gap:9px}.brand-logo{flex-basis:34px;width:34px;height:34px}h1{font-size:22px}.market-strip{grid-template-columns:1fr 1fr;gap:8px}.market-tile{min-height:64px;padding:9px 10px}.market-tile strong{font-size:17px}.theme-toggle{flex-basis:44px;width:44px;height:44px}.workspace,.metric-grid,.greeks{grid-template-columns:1fr}.workspace,.main-column{gap:10px}.view-tabs{width:100%;margin-bottom:10px;display:grid}.futures-workspace{gap:10px}.sidebar,.heatmap-panel,.table-panel,.detail,.futures-overview,.basis-curve-panel,.funding-panel,.basis-history-panel,.futures-table-panel{padding:10px}.basis-metrics,.history-cards{grid-template-columns:1fr 1fr}.basis-row{grid-template-columns:110px minmax(140px,1fr) 72px 62px;gap:8px;min-width:520px}.basis-curve{padding-bottom:2px;overflow-x:auto}.history-card{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;gap:10px}.sidebar .panel-title,.expiry-field,.liquidity-toggle{grid-column:1/-1}.field{margin-bottom:0}.field label{margin-bottom:6px}.segmented button{min-height:44px}.expiry-list{scrollbar-width:thin;gap:7px;max-height:none;padding-bottom:2px;display:flex;overflow-x:auto}.expiry-list button{min-width:72px;min-height:44px;padding:6px 8px}.range-line{grid-template-columns:1fr;gap:4px}.range-line strong{text-align:left}.expiry-strip{scrollbar-width:thin;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.expiry-card{min-width:132px;min-height:96px;padding:10px}.expiry-card strong{font-size:18px}.panel-title{margin-bottom:10px}.heat-row{grid-template-columns:56px 1fr;min-width:650px}.heat-cells{grid-template-columns:repeat(18,minmax(64px,1fr))}.heat{min-height:56px;padding:6px}.table-head,.table-row{grid-template-columns:minmax(150px,1.4fr) .7fr .9fr .6fr .65fr .75fr .8fr 1fr;min-width:820px}.selected-contract strong{font-size:22px}.quote-line{grid-template-columns:48px 1fr 72px}}body{background-color:var(--bg);background-image:linear-gradient(color-mix(in srgb, var(--line) 22%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--line) 18%, transparent) 1px, transparent 1px);background-size:32px 32px;background-attachment:fixed}h1{letter-spacing:-.035em;font-family:Noto Serif CJK SC,Songti SC,serif;font-weight:700}.shell{max-width:1880px;margin:0 auto;padding:16px}.topbar{grid-template-columns:minmax(280px,.72fr) minmax(680px,1.7fr);gap:12px;margin-bottom:12px}.market-tile,.panel,.expiry-card{border-color:var(--line);box-shadow:none}.market-tile,.expiry-card,.panel,.theme-toggle{border-radius:5px}.market-tile{background:color-mix(in srgb, var(--panel) 96%, transparent);min-height:70px}.market-tile.primary{border-top:2px solid var(--green);background:var(--panel)}.eyebrow{color:var(--muted);letter-spacing:.12em;margin-bottom:4px;font-size:11px}.view-tabs{border:1px solid var(--line);background:var(--panel);border-radius:6px;width:fit-content;min-height:42px;margin-bottom:12px;padding:3px}.view-tabs button{border-radius:3px;min-height:36px}.view-tabs button.active{background:var(--text);color:var(--panel)}.workspace{grid-template-columns:248px minmax(620px,1fr) 326px;gap:12px}.sidebar,.detail{max-height:calc(100dvh - 24px);top:12px}.panel-title{letter-spacing:.015em;min-height:32px}.panel-title>span,.panel-title.spread>span{color:var(--text)}.segmented button,.expiry-list button,.view-tabs button{transition:background-color .14s,color .14s,border-color .14s}.segmented button.active,.expiry-list button.active{background:var(--selection);color:var(--text)}.delta-presets{grid-template-columns:repeat(4,minmax(0,1fr))}.expiry-card{border-top-color:var(--line);background:var(--panel)}.expiry-card.active{border-color:var(--green);background:var(--selection)}.heat,.table-row,.futures-row,.basis-row,.history-card{box-shadow:none;border-radius:3px}.table-head{z-index:3;background:var(--panel);border-bottom:1px solid var(--line);padding-block:9px;position:sticky;top:0}.table-row{background:0 0;border-width:0 0 1px;margin:0}.table-row:nth-child(odd){background:color-mix(in srgb, var(--panel-2) 55%, transparent)}.table-row:hover{background:var(--control)}.table-row.active{background:var(--selection)}.table-head,.table-row{grid-template-columns:minmax(158px,1.55fr) .78fr .92fr .66fr .62fr .88fr .76fr;gap:10px;min-width:0}.table-head>:nth-child(8),.table-row>:nth-child(8){display:none}.yield-cell strong,.yield-cell em{display:block}.yield-cell em{color:var(--muted);margin-top:3px;font-size:11px;font-style:normal}.desktop-sort{color:var(--muted);align-items:center;gap:7px;display:flex}.desktop-sort select,.mobile-result-bar select{color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-weight:700}.desktop-sort em{margin-left:4px}.metric.strong{border-left:2px solid var(--green);background:var(--selection)}.payoff-preview{border:1px solid var(--line);background:var(--control);border-radius:4px;padding:8px}.payoff-preview svg{width:100%;height:96px;display:block;overflow:visible}.payoff-preview line{stroke:var(--line);stroke-dasharray:4 4}.payoff-preview polyline{fill:none;stroke:var(--green);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px}.payoff-preview circle{fill:var(--panel);stroke:var(--green);stroke-width:2px}.payoff-axis,.payoff-range{justify-content:space-between;align-items:center;font-size:10px;display:flex}.payoff-axis{color:var(--muted)}.payoff-range{margin-top:6px;font-weight:800}.payoff-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;padding:24px}.mobile-options,.mobile-sheet-dialog{display:none}@media (min-width:1600px){.table-head,.table-row{grid-template-columns:minmax(178px,1.55fr) .76fr .9fr .64fr .62fr .86fr .76fr 1.05fr}.table-head>:nth-child(8),.table-row>:nth-child(8){display:block}}@media (max-width:899px){body{background-image:none}.shell{min-height:100dvh;padding:8px 10px calc(20px + env(safe-area-inset-bottom))}.topbar{margin-bottom:8px;display:block}.title-block{align-items:center;min-height:44px}.brand-logo{flex-basis:32px;width:32px;height:32px}.eyebrow{display:none}h1{font-size:21px}.theme-toggle{flex-basis:44px;width:44px;height:44px}.market-strip{grid-template-columns:minmax(0,1fr) 112px;gap:6px}.market-tile{min-height:52px;padding:7px 10px}.market-tile:nth-child(2),.market-tile:nth-child(3){display:none}.market-tile strong{margin-top:2px;font-size:18px}.market-tile em{margin-top:1px}.market-tile.status strong{font-size:12px}.view-tabs{z-index:30;background:color-mix(in srgb, var(--panel) 96%, transparent);grid-template-columns:1fr 1fr;width:100%;min-height:44px;margin:8px 0;display:grid;position:sticky;top:0}.view-tabs button{touch-action:manipulation;min-height:40px}.desktop-options-workspace{display:none}.mobile-options{display:block}.mobile-filter-summary,.mobile-result-bar{justify-content:space-between;align-items:center;gap:10px;display:flex}.mobile-filter-summary{border:1px solid var(--line);background:var(--panel);border-radius:5px;min-height:52px;padding:6px 8px 6px 10px}.mobile-filter-summary>div{min-width:0}.mobile-filter-summary strong,.mobile-filter-summary span{display:block}.mobile-filter-summary strong{font-size:14px}.mobile-filter-summary span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.mobile-filter-summary button{border:1px solid var(--line);background:var(--control);min-width:96px;min-height:44px;color:var(--text);border-radius:4px;justify-content:center;align-items:center;gap:7px;font-size:13px;font-weight:800;display:inline-flex}.mobile-result-bar{min-height:42px;color:var(--muted);padding-inline:4px;font-size:12px}.mobile-result-bar>span strong{color:var(--text);font-size:15px}.mobile-result-bar label{align-items:center;gap:5px;min-height:40px;display:flex}.mobile-candidate-list{gap:8px;display:grid}.option-card{border:1px solid var(--line);background:var(--panel);width:100%;min-height:142px;color:var(--text);text-align:left;touch-action:manipulation;border-radius:7px;gap:8px;padding:11px 12px;transition:border-color .13s,background-color .13s,transform .1s;display:grid}.option-card:active{background:var(--control);transform:scale(.99)}.option-card-kicker,.option-card-strike,.option-card-yield,.option-card-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.option-card-kicker b{color:var(--green);letter-spacing:.12em;font-size:11px}.option-card-kicker em,.option-card-strike em{color:var(--muted);font-size:12px;font-style:normal}.option-card-strike strong{font-family:Noto Serif CJK SC,Songti SC,serif;font-size:23px;line-height:1}.option-card-yield{border-block:1px solid var(--line);padding-block:8px}.option-card-yield>span{align-items:baseline;gap:8px;display:flex}.option-card-yield small{color:var(--muted);font-size:11px}.option-card-yield strong{font-variant-numeric:tabular-nums;font-size:18px}.option-card-yield>span:last-child strong{color:var(--green)}.option-card-data,.option-card-footer{color:var(--muted);font-size:12px}.option-card-footer .good{color:var(--green)}.option-card-footer .warn{color:var(--amber)}.mobile-empty{border:1px dashed var(--line);border-radius:6px;min-height:180px;padding:24px}.mobile-sheet-dialog{z-index:1000;width:100%;max-width:none;height:100%;max-height:none;color:var(--text);background:0 0;border:0;justify-content:center;align-items:flex-end;margin:0;padding:0;display:none;position:fixed;inset:0}.mobile-sheet-dialog[open]{display:flex}.mobile-sheet-dialog::backdrop{background:#030a0894}.mobile-sheet{border:1px solid var(--line);background:var(--panel);width:min(100%,560px);max-height:min(88dvh,760px);color:var(--text);border-bottom:0;border-radius:16px 16px 0 0;grid-template-rows:auto auto minmax(0,1fr) auto;animation:.22s cubic-bezier(.22,1,.36,1) sheet-enter;display:grid;overflow:hidden;box-shadow:0 -18px 60px #030a083d}.detail-sheet{max-height:96dvh}.sheet-handle{background:var(--line);border-radius:99px;width:36px;height:4px;margin:7px auto 3px}.sheet-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px 12px 10px 16px;display:flex}.sheet-header span{color:var(--green);letter-spacing:.12em;font-size:10px;font-weight:800}.sheet-header h2{margin:2px 0 0;font-family:Noto Serif CJK SC,Songti SC,serif;font-size:21px}.sheet-header p{color:var(--muted);margin:3px 0 0;font-size:11px}.sheet-header>button{border:1px solid var(--line);background:var(--control);width:44px;height:44px;color:var(--text);border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;display:inline-flex}.sheet-content{overscroll-behavior:contain;padding:16px;overflow-y:auto}.sheet-field{margin-bottom:20px}.sheet-field>label,.sheet-field>label:first-child{color:var(--text);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:800;display:flex}.sheet-field .segmented button,.sheet-expiries button{min-height:44px}.sheet-field p{color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.45}.sheet-expiries{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.sheet-expiries button{border:1px solid var(--line);background:var(--control);color:var(--text);border-radius:4px;font-size:12px;font-weight:800}.sheet-expiries button.active{border-color:var(--green);background:var(--selection)}.sheet-expiries small{color:var(--muted);margin-top:2px;font-size:10px;display:block}.sheet-field.range-field input[type=range]{width:100%;min-height:44px}.sheet-toggle{border:1px solid var(--line);background:var(--control);border-radius:5px;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:10px 12px;display:flex}.sheet-toggle span,.sheet-toggle strong,.sheet-toggle small{display:block}.sheet-toggle small{color:var(--muted);margin-top:3px}.sheet-toggle input{width:22px;height:22px;accent-color:var(--green)}.sheet-footer{padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel);grid-template-columns:96px 1fr;gap:8px;display:grid}.sheet-footer button{border-radius:5px;min-height:48px;font-weight:800}.sheet-footer .secondary{border:1px solid var(--line);background:var(--control);color:var(--text)}.sheet-footer .primary{border:1px solid var(--text);background:var(--text);color:var(--panel)}.detail-sheet-content{padding-top:12px}.detail-hero-metrics{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.detail-hero-metrics .metric{border:1px solid var(--line);border-radius:4px;min-width:0;padding:10px 8px}.detail-hero-metrics .metric strong{font-size:17px}.mobile-detail-section{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.mobile-detail-section h3{margin:0 0 10px;font-size:13px}.mobile-detail-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.mobile-detail-grid .metric{background:var(--control);border-radius:3px;min-width:0;padding:9px 10px}.mobile-quote-row{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;grid-template-columns:48px 1fr auto;align-items:center;min-height:44px;display:grid}.mobile-quote-row span,.mobile-quote-row em{color:var(--muted);font-size:12px;font-style:normal}.method-note p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.futures-workspace{gap:8px}.futures-overview,.basis-curve-panel,.funding-panel,.basis-history-panel,.futures-table-panel{padding:10px}.basis-metrics{grid-template-columns:1fr 1fr}.basis-row{grid-template-columns:118px minmax(44px,1fr) 70px;gap:8px;min-width:0;padding:8px}.basis-row>em,.futures-head{display:none}.futures-row{grid-template-columns:1fr 1fr;gap:8px;min-width:0;padding:12px}.futures-row>span:first-child{border-bottom:1px solid var(--line);grid-column:1/-1;padding-bottom:8px}.history-cards{grid-template-columns:1fr}.history-card{grid-template-columns:94px 1fr}}@media (min-width:600px) and (max-width:899px){.shell{padding-inline:14px}.mobile-candidate-list{grid-template-columns:1fr 1fr}.mobile-sheet-dialog{justify-content:flex-end;align-items:stretch}.mobile-sheet{border-block:0;border-radius:0;width:min(440px,58vw);max-height:100dvh;animation-name:drawer-enter}}@media (max-width:389px){.shell{padding-inline:8px}.option-card{padding-inline:10px}.option-card-data{font-size:11px}.sheet-expiries{grid-template-columns:repeat(3,1fr)}}@media (max-height:500px) and (orientation:landscape) and (max-width:899px){.topbar{display:none}.view-tabs{width:220px;position:static}.mobile-sheet-dialog{justify-content:flex-end;align-items:stretch}.mobile-sheet{border-radius:0;width:min(420px,70vw);max-height:100dvh}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes sheet-enter{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes drawer-enter{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.futures-terminal{--futures-accent:var(--green);gap:12px}.stale-data-banner{border:1px solid var(--amber);background:var(--amber-soft);color:var(--text);align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:750;display:flex}.source-status-line{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.source-status-line span{border:1px solid var(--line);color:var(--muted);border-radius:3px;padding:3px 6px;font-size:10px;font-weight:800}.source-status-line span.ok{border-color:var(--green);color:var(--green)}.source-status-line span.partial{border-color:var(--blue);color:var(--blue)}.source-status-line span.stale,.source-status-line span.error{border-color:var(--amber);color:var(--amber)}.futures-terminal[data-status=stale] .futures-price-line strong,.futures-terminal[data-status=stale] .futures-kpi strong,.futures-terminal[data-status=error] .futures-price-line strong,.futures-terminal[data-status=error] .futures-kpi strong{opacity:.58}.futures-command{padding:0;overflow:hidden}.futures-hero{grid-template-columns:minmax(300px,.9fr) minmax(700px,2.1fr);min-height:164px;display:grid}.futures-hero-copy{border-right:1px solid var(--line);background:linear-gradient(120deg, color-mix(in srgb, var(--green) 9%, transparent), transparent 56%), var(--panel);padding:22px 24px}.futures-kicker,.futures-price-line,.pressure-block>div:first-child,.pulse-axis,.chart-reading,.carry-note{justify-content:space-between;align-items:center;gap:12px;display:flex}.futures-kicker span,.futures-kicker em{letter-spacing:.12em;font-size:10px;font-style:normal;font-weight:900}.futures-kicker span{color:var(--green)}.futures-kicker em{color:var(--muted)}.futures-hero h2{letter-spacing:-.035em;margin:14px 0 8px;font-family:Noto Serif CJK SC,Songti SC,serif;font-size:clamp(20px,2vw,30px);line-height:1.1}.futures-price-line{justify-content:flex-start;align-items:baseline}.futures-price-line>strong{font-variant-numeric:tabular-nums;letter-spacing:-.045em;font-size:clamp(26px,3vw,40px)}.futures-price-line>span{font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.futures-hero-copy>p{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:7px 0 0;font-size:11px;display:flex}.futures-hero-copy>p b{color:var(--subtle);font-weight:700}.futures-kpi-rail{background:var(--panel);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.futures-kpi{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-width:0;padding:20px;display:flex}.futures-kpi:last-child{border-right:0}.futures-kpi>span{color:var(--muted);font-size:11px;font-weight:800}.futures-kpi>strong{font-variant-numeric:tabular-nums;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin:10px 0 8px;font-size:clamp(20px,2vw,29px);overflow:hidden}.futures-kpi>em{min-height:30px;color:var(--muted);font-size:11px;font-style:normal;line-height:1.4}.market-regime{border-top:1px solid var(--line);background:var(--control);grid-template-columns:120px minmax(210px,.7fr) minmax(360px,2fr);align-items:center;gap:16px;min-height:48px;padding:8px 24px;display:grid}.market-regime>span{color:var(--muted);letter-spacing:.04em;align-items:center;gap:7px;font-size:11px;font-weight:900;display:inline-flex}.market-regime>strong{font-size:13px}.market-regime>p{color:var(--muted);margin:0;font-size:12px;line-height:1.5}.market-regime.up>strong,.market-regime.up>span svg{color:var(--green)}.market-regime.down>strong,.market-regime.down>span svg{color:var(--red)}.futures-primary-grid{grid-template-columns:minmax(0,1.65fr) minmax(350px,.75fr);gap:12px;display:grid}.futures-pulse-panel,.positioning-panel,.term-structure-panel,.futures-terminal .futures-table-panel{padding:14px}.pulse-chart{min-height:280px;padding-top:28px;position:relative}.pulse-chart svg{width:100%;height:250px;display:block;overflow:visible}.pulse-chart svg line{stroke:var(--line);stroke-dasharray:3 5;stroke-width:1px}.pulse-chart polyline{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.pulse-chart .price-line{stroke:var(--text);stroke-width:2.2px}.pulse-chart .oi-line{stroke:var(--green);stroke-dasharray:5 4;stroke-width:1.8px}.horizon-tabs{border:1px solid var(--line);background:var(--control);border-radius:4px;grid-template-columns:repeat(3,42px);gap:2px;padding:2px;display:inline-grid;position:absolute;top:-2px;right:0}.horizon-tabs button{min-height:28px;color:var(--muted);background:0 0;border:0;border-radius:2px;padding:0;font-size:10px;font-weight:900}.horizon-tabs button.active{background:var(--text);color:var(--panel)}.pulse-axis{color:var(--muted);margin-top:-4px;font-size:10px}.chart-reading{border-top:1px solid var(--line);min-height:36px;color:var(--muted);justify-content:flex-start;margin-top:8px;padding-top:8px;font-size:11px}.chart-reading>span{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.chart-reading i{background:var(--text);width:18px;height:2px}.chart-reading .oi-dot{border-top:2px dashed var(--green);background:0 0;height:0}.chart-reading p{text-align:right;margin:0 0 0 auto}.pulse-empty{border:1px dashed var(--line);min-height:310px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.pulse-empty strong{color:var(--text);font-size:13px}.pulse-empty span{font-size:11px}.exchange-compare{border:1px solid var(--line);background:var(--control);border-radius:3px;overflow:hidden}.compare-row{border-top:1px solid var(--line);grid-template-columns:1.4fr 1fr 1fr;align-items:center;gap:8px;padding:8px 12px;display:grid}.compare-row:first-child{border-top:0}.compare-row>span:first-child{color:var(--muted);font-size:10px;font-weight:800}.compare-row strong{font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.compare-head{background:var(--surface-strong)}.compare-head span{color:var(--muted);letter-spacing:.05em;font-size:10px;font-weight:800}.compare-head span:not(:first-child){text-align:right}.exchange-risk-row{grid-template-columns:1fr 1fr;gap:6px;margin-bottom:18px;display:grid}.exchange-risk-row>span{border:1px solid var(--line);min-width:0;min-height:38px;color:var(--muted);border-radius:3px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:10px;font-weight:800;display:flex}.exchange-risk-row strong{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.exchange-risk-row .risk-low{color:var(--green)}.exchange-risk-row .risk-medium{color:var(--amber)}.exchange-risk-row .risk-high{color:var(--red)}.pressure-block{margin-top:16px}.pressure-block>div:first-child{color:var(--muted);font-size:10px;font-weight:800}.pressure-block>div:first-child strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:11px}.split-track{background:var(--red-soft);border-radius:1px;height:8px;margin-top:7px;position:relative;overflow:hidden}.split-track:after{background:var(--panel);content:"";width:1px;position:absolute;top:-2px;bottom:-2px;left:50%}.split-track i{background:var(--green);height:100%;display:block}.split-track i.accounts{background:var(--blue)}.split-track i.liquidations{background:var(--red)}.data-caveat{border-top:1px solid var(--line);color:var(--muted);margin:20px 0 0;padding-top:12px;font-size:10px;line-height:1.55}.term-curve{gap:4px;display:grid}.term-row{border-bottom:1px solid var(--line);grid-template-columns:105px minmax(220px,1fr) 82px 100px;align-items:center;gap:14px;min-height:48px;padding:8px 10px;display:grid}.term-row:last-child{border-bottom:0}.term-row strong,.term-row span,.term-row em{font-variant-numeric:tabular-nums;display:block}.term-row>div:first-child strong{font-size:12px}.term-row span,.term-row em{color:var(--muted);margin-top:3px;font-size:10px;font-style:normal}.term-row>strong,.term-row>em{text-align:right}.carry-note{border-top:1px solid var(--line);min-height:42px;color:var(--muted);margin-top:8px;padding:8px 10px;font-size:10px}.carry-note span{color:var(--subtle);white-space:nowrap;font-weight:900}.carry-note p{text-align:center;margin:0}.futures-terminal .futures-head,.futures-terminal .futures-row{grid-template-columns:minmax(150px,1.2fr) .82fr .62fr .8fr .82fr .9fr .88fr .62fr .52fr;min-width:1140px}.futures-terminal .futures-head{z-index:2;border-bottom:1px solid var(--line);background:var(--panel);padding:8px 10px;position:sticky;top:0}.futures-terminal .futures-row{background:0 0;border-width:0 0 1px;border-radius:0;min-height:58px;margin:0}.futures-terminal .futures-row:nth-child(odd){background:color-mix(in srgb, var(--panel-2) 55%, transparent)}.futures-terminal .futures-row:hover{background:var(--control)}@media (max-width:1320px){.futures-hero{grid-template-columns:300px 1fr}.futures-kpi-rail{grid-template-columns:1fr 1fr}.futures-kpi:nth-child(2){border-right:0}.futures-kpi:nth-child(-n+2){border-bottom:1px solid var(--line)}.futures-primary-grid{grid-template-columns:minmax(0,1.35fr) minmax(330px,.75fr)}}@media (max-width:899px){.futures-terminal{gap:8px}.futures-command,.futures-pulse-panel,.positioning-panel,.term-structure-panel,.futures-terminal .futures-table-panel{padding:0}.futures-hero{min-height:0;display:block}.futures-hero-copy{border-right:0;border-bottom:1px solid var(--line);padding:16px 14px 14px}.futures-kicker span{letter-spacing:.08em}.futures-hero h2{margin:11px 0 5px;font-size:21px}.futures-price-line>strong{font-size:30px}.futures-hero-copy>p b{display:none}.futures-kpi-rail{grid-template-columns:1fr 1fr}.futures-kpi{border-bottom:1px solid var(--line);min-height:104px;padding:12px}.futures-kpi:nth-child(2n){border-right:0}.futures-kpi:nth-child(n+3){border-bottom:0}.futures-kpi>strong{margin:7px 0 5px;font-size:20px}.futures-kpi>em{min-height:0;font-size:10px}.market-regime{grid-template-columns:auto 1fr;gap:4px 10px;padding:11px 12px}.market-regime>p{grid-column:1/-1;font-size:11px}.futures-primary-grid{grid-template-columns:1fr;gap:8px}.futures-pulse-panel>.panel-title,.positioning-panel>.panel-title,.term-structure-panel>.panel-title,.futures-terminal .futures-table-panel>.panel-title{border-bottom:1px solid var(--line);margin:0;padding:10px 12px}.pulse-chart{min-height:220px;padding:56px 10px 0}.pulse-chart svg{height:170px}.horizon-tabs{grid-template-columns:repeat(3,44px);top:8px;right:10px}.horizon-tabs button{min-height:44px}.chart-reading{flex-wrap:wrap;margin:0 10px;padding:10px 0}.chart-reading p{text-align:left;width:100%;margin:2px 0 0}.pulse-empty{min-height:220px;margin:10px}.exchange-compare{margin:10px 10px 0}.exchange-risk-row{margin:0 10px 18px}.pressure-block{margin:16px 12px 0}.data-caveat{margin:18px 12px 12px}.term-curve{padding:4px 10px}.term-row{grid-template-columns:76px minmax(80px,1fr) 68px;gap:8px;padding-inline:2px}.term-row>em{display:none}.carry-note{margin:0 10px 10px;display:block}.carry-note span:last-child{display:none}.carry-note p{text-align:left;margin-top:5px;line-height:1.5}.futures-terminal .futures-table{padding:8px;overflow:visible}.futures-terminal .futures-head{display:none}.futures-terminal .futures-row{border:1px solid var(--line);background:var(--panel);border-radius:4px;grid-template-columns:1fr 1fr;gap:0;min-width:0;min-height:0;margin-bottom:8px;padding:0;display:grid}.futures-terminal .futures-row>span{border-bottom:1px solid var(--line);text-align:right;min-height:52px;padding:9px 10px;font-size:12px}.futures-terminal .futures-row>span:nth-child(2n){border-left:1px solid var(--line)}.futures-terminal .futures-row>span:before{color:var(--muted);content:attr(data-label);margin-bottom:5px;font-size:9px;font-weight:800;display:block}.futures-terminal .futures-row>span:first-child{text-align:left;border-left:0;grid-column:1/-1;min-height:58px;padding:10px 12px}.futures-terminal .futures-row>span:first-child:before,.futures-terminal .futures-row>span:nth-child(2),.futures-terminal .futures-row>span:nth-child(7),.futures-terminal .futures-row>span:nth-child(9){display:none}.futures-terminal .futures-table-panel>.db-line{margin:0 8px 8px}}
