/* Reference dashboard: scoped to Home, with real paginated trading data. */
.sc-reference-dashboard { --ov-bg:#0b1721; --ov-panel:#101f2b; --ov-border:#233a4c; --ov-muted:#9eb9ce; --ov-text:#eaf2fa; --ov-cyan:#16c5ef; --ov-green:#2cdba1; --ov-red:#ff6d77; --ov-purple:#8680ff; background:radial-gradient(ellipse at 70% 0%,#11243155,transparent 60%),var(--ov-bg); color:var(--ov-text); height:100dvh; overflow:hidden; }
.sc-reference-dashboard .sc-dashboard-main { margin:0 !important; padding:12px 18px 18px 120px !important; min-height:0; height:100dvh; display:grid; grid-template-rows:auto auto minmax(0,1fr); gap:16px; background:transparent !important; overflow:visible; }
.sc-reference-dashboard :is(button,input,select) { font-family:inherit; }
.sc-reference-dashboard button { cursor:pointer; }
.sc-reference-dashboard button:disabled { opacity:.4; cursor:not-allowed; }
.sc-reference-dashboard :is(input,select) { color-scheme:dark; }
.ov-page-header { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:52px; }
.ov-page-header h1 { margin:0 0 3px; color:#f1f5fb; font-size:32px; line-height:1.15; font-weight:650; letter-spacing:-.75px; }
.ov-page-header p { margin:0; color:var(--ov-muted); font-size:14px; line-height:1.4; }
.ov-header-tools { display:flex; align-items:center; gap:28px; }
.sc-reference-dashboard .ov-button { min-height:40px; display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:8px 16px; border:1px solid #304b60; border-radius:6px; color:#cde3f4; background:linear-gradient(120deg,#1a3041,#142633); font-size:13px; line-height:20px; white-space:nowrap; }
.sc-reference-dashboard .ov-button:hover { border-color:#537d99; background:#1c374b; }
.sc-reference-dashboard .ov-button.is-active { border-color:#17b7df; color:#67ddff; }
.ov-button svg { width:19px; height:19px; }
.ov-button b { font-size:10px; background:#1a506c; padding:0 5px; border-radius:4px; }
.sc-reference-dashboard .ov-date { background:#101e2a; padding:8px 12px; }
.ov-market-status { display:flex; flex-direction:column; align-items:flex-end; gap:4px; white-space:nowrap; font-size:13px; }
.ov-market-status strong { color:#ff8b8c; font-weight:600; }
.ov-market-status strong i { display:inline-block; width:10px; height:10px; border-radius:50%; background:var(--ov-red); margin-right:9px; }
.ov-market-status.is-open strong { color:var(--ov-green); }
.ov-market-status.is-open strong i { background:var(--ov-green); }
.ov-market-status > span { color:#88a4bc; }
.ov-stats { display:grid; grid-template-columns:1fr 1fr 1.16fr 1.16fr; gap:16px; }
.ov-stat { display:flex; align-items:center; gap:20px; min-height:84px; min-width:0; padding:14px 20px; background:linear-gradient(110deg,#13263550,transparent),var(--ov-panel); border:1px solid var(--ov-border); border-radius:7px; }
.ov-stat-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:11px; background:#0c91ca24; color:#12b8f2; flex-shrink:0; }
.ov-stat-icon svg { width:31px; height:31px; }
.ov-stat-label { display:flex; flex-direction:column; gap:4px; white-space:nowrap; }
.ov-stat-label > span { color:#a9c3d9; font-size:13px; }
.ov-stat-label strong { font-size:25px; line-height:1.15; letter-spacing:-.45px; font-weight:650; }
.ov-purple .ov-stat-icon { color:var(--ov-purple); background:#7970eb22; }
.ov-green .ov-stat-icon { color:var(--ov-green); background:#16ad7d24; }
.ov-red .ov-stat-icon { color:var(--ov-red); background:#d8476120; }
.ov-stat-share { display:flex; align-items:center; flex:1; min-width:50px; gap:10px; padding-top:24px; color:var(--ov-green); font-size:12px; }
.ov-red .ov-stat-share { color:#ff9098; }
.ov-stat-share > i { display:block; flex:1; height:6px; background:#233a4a; border-radius:5px; min-width:25px; }
.ov-stat-share b { display:block; height:100%; background:var(--ov-green); border-radius:5px; }
.ov-red .ov-stat-share b { background:var(--ov-red); }
.ov-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:18px; min-height:0; }
.ov-flow { display:flex; flex-direction:column; min-height:0; min-width:0; background:var(--ov-panel); border:1px solid var(--ov-border); border-radius:8px; position:relative; --ov-row:36px; }
.ov-flow-toolbar { position:relative; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; padding:14px 20px 8px; }
.ov-flow-title { display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.ov-flow-title h2 { margin:0; color:#eaf3fd; font-size:21px; line-height:1.3; font-weight:600; letter-spacing:-.4px; }
.ov-flow-title > span { color:#afc8dd; font-size:12px; white-space:nowrap; }
.ov-flow-title small { color:#87b5cf; font-size:10px; }
.ov-flow-actions { display:flex; align-items:center; gap:12px; }
.ov-search { display:flex; align-items:center; gap:9px; padding:0 11px; margin:0; height:40px; background:#0e1e2b; border:1px solid #37556c; border-radius:7px; color:#b6d3e8; }
.ov-search > svg { width:20px; height:20px; }
.ov-search input { width:235px; min-width:0; border:0; outline:none; background:transparent; color:#e0effb; font-size:12px; height:36px; }
.ov-search input::-webkit-search-cancel-button { display:none; }
.ov-search input::placeholder { color:#809db6; }
.ov-search button { display:flex; align-items:center; justify-content:center; border:0; background:transparent; color:#a9c7df; padding:0; width:20px; height:24px; }
.ov-search button svg { width:17px; height:17px; }
.ov-flow-controls { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px 12px; padding:0 14px 0 20px; border-bottom:1px solid var(--ov-border); }
.ov-activity-tabs { display:flex; align-items:center; gap:15px; align-self:stretch; }
.ov-activity-tabs button { height:46px; padding:0 15px; color:#bdd1e5; background:transparent; border:0; border-bottom:3px solid transparent; font-size:13px; white-space:nowrap; }
.ov-activity-tabs button:first-child { padding-left:15px; }
.ov-activity-tabs button.is-active { color:#6dddff; border-bottom-color:var(--ov-cyan); }
.ov-table-preferences { display:flex; align-items:center; justify-content:flex-end; gap:17px; }
.ov-toggle { display:inline-flex; align-items:center; gap:10px; position:relative; font-size:11px; color:#b4cde1; margin:0; white-space:nowrap; cursor:pointer; min-height:32px; }
.ov-toggle input { position:absolute; right:0; width:36px; height:24px; margin:0; opacity:0; cursor:pointer; z-index:1; }
.ov-toggle i { width:36px; height:20px; border-radius:12px; background:#294053; position:relative; box-shadow:inset 0 1px 3px #0005; }
.ov-toggle i::before { content:''; display:block; height:14px; width:14px; background:#a5c4dd; border-radius:50%; position:absolute; top:3px; left:3px; transition:transform .15s; }
.ov-toggle input:checked+i { background:#136c8b; }
.ov-toggle input:checked+i::before { transform:translateX(16px); background:#5bd7fa; }
.ov-toggle input:focus-visible+i { outline:2px solid var(--ov-cyan); outline-offset:3px; }
.ov-density-label { display:flex; align-items:center; gap:12px; font-size:11px; color:#a7bfd6; margin:0; padding-left:12px; border-left:1px solid #294052; }
.ov-density-label > div { display:flex; align-items:center; border:1px solid #2b4559; border-radius:5px; padding-left:7px; }
.ov-density-label svg { width:16px; height:16px; color:#c5dcf0; }
.ov-density-label select { color:#d9e8f5; background:#112330; border:0; height:30px; max-width:108px; font-size:11px; border-radius:5px; }
.ov-table-region { flex:1; min-height:0; overflow:auto; scrollbar-color:#365369 #0d1d29; scrollbar-width:thin; overscroll-behavior:contain; border-radius:0; }
.ov-table { border-collapse:separate; border-spacing:0; table-layout:fixed; width:100%; min-width:1110px; margin:0; color:#d5e5f2; font-size:13px; font-variant-numeric:tabular-nums; }
.ov-table .ov-col-updated { width:8%; }.ov-table .ov-col-ticker { width:6%; }.ov-table .ov-col-type { width:7%; }.ov-table .ov-col-contract { width:7%; }.ov-table .ov-col-sentiment { width:10%; }.ov-table .ov-col-sweepScore { width:10%; }.ov-table .ov-col-volOi { width:6%; }.ov-table .ov-col-strike { width:11%; }.ov-table .ov-col-expiration { width:9%; }.ov-table .ov-col-premium { width:8%; }.ov-table .ov-col-details { width:14%; }.ov-table .ov-col-action { width:4%; }
.ov-table th { position:sticky; top:0; z-index:1; background:#102331; color:#bfd8ec; height:48px; border-bottom:1px solid #2a4357; font-weight:400; padding:0 12px; white-space:nowrap; text-align:left; vertical-align:middle !important; }
.ov-table th button { display:flex; align-items:center; gap:5px; border:0; padding:0; background:transparent; color:inherit; font-size:13px; font-weight:400; white-space:nowrap; }
.ov-table th svg { width:14px; height:14px; }
.ov-table td { height:var(--ov-row); padding:0 12px; border-bottom:1px solid #263b4b33; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; line-height:1.35; vertical-align:middle; }
.ov-table tbody tr:nth-child(odd) { background:#09192265; }
.ov-table tbody tr:hover { background:#183449; }
.ov-table tbody tr.is-selected { background:linear-gradient(90deg,#1e4966,#142f46); }
.ov-table tbody tr.is-selected td { border-block-color:#376078; }
.ov-table tbody tr.is-selected td:first-child { box-shadow:inset 4px 0 #13d6df; }
.ov-ticker { color:#edf5ff; font-weight:650; font-size:13px; background:transparent; border:0; padding:5px 0; }
.ov-ticker:hover { color:#58d2fa; }
.ov-badge { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-width:0; width:100%; max-width:68px; padding:4px 6px; line-height:16px; border-radius:5px; font-size:11px; font-weight:600; }
.ov-type-trade { background:linear-gradient(#393766,#292748); color:#c3bcf8; }.ov-type-sweep { background:linear-gradient(#106183,#12405a); color:#b1ecff; }.ov-contract-call { background:linear-gradient(#075b4d,#064337); color:#9feccd; }.ov-contract-put { background:linear-gradient(#5c303c,#47232d); color:#ff939d; }
.ov-trade-sentiment { display:flex; align-items:center; gap:7px; }.ov-trade-sentiment i { display:inline-block; width:11px; height:11px; border-radius:50%; flex-shrink:0; background:#89a2b8; }.ov-bullish i { background:var(--ov-green); }.ov-bearish i { background:var(--ov-red); }
.ov-score { display:flex; gap:10px; align-items:center; }.ov-score > i { display:block; height:9px; background:#233b4d; border-radius:5px; flex:1; min-width:26px; }.ov-score b { display:block; height:100%; background:linear-gradient(90deg,#696cf1,#9690ff); border-radius:5px; }.ov-score > span { min-width:20px; }
.ov-strike { color:#d8e9f5; }.ov-premium { color:#f1f6ff; font-weight:650; }
.ov-row-open { display:grid; place-items:center; width:24px; height:28px; border:0; background:transparent; color:#9fc2de; padding:0; }.ov-row-open svg { width:20px; height:20px; }
.ov-density-compact { --ov-row:28px; }.ov-density-compact .ov-badge { padding-block:2px; }.ov-density-comfortable { --ov-row:46px; }
.ov-pagination { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; padding:14px 16px; min-height:64px; border-top:1px solid var(--ov-border); color:#aec7dc; }
.ov-pagination p { margin:0; font-size:12px; white-space:nowrap; }.ov-pagination strong { font-weight:400; }.ov-pagination nav { display:flex; gap:7px; align-items:center; }.ov-pagination nav button { display:grid; place-items:center; min-width:29px; height:32px; padding:0 7px; border:1px solid transparent; border-radius:5px; color:#bad2e6; background:transparent; font-size:12px; }.ov-pagination nav button[aria-label="Previous page"],.ov-pagination nav button[aria-label="Next page"] { border-color:#233e52; }.ov-pagination nav button svg { width:17px; }.ov-pagination nav button[aria-current="page"] { color:#87e4ff; border-color:#10bfe9; background:#144262; box-shadow:0 0 10px #12c5ef15; }.ov-pagination nav > span { font-size:12px; }.ov-pagination > label { display:flex; align-items:center; gap:15px; color:#90abc3; font-size:11px; margin:0; white-space:nowrap; }.ov-pagination select { height:32px; border:1px solid #30485d; color:#cce0f0; background:#102331; border-radius:5px; padding:0 7px; }
.ov-empty { min-height:210px; height:calc(100% - 48px); display:flex; flex-direction:column; gap:12px; justify-content:center; align-items:center; text-align:center; color:var(--ov-muted); font-size:13px; padding:24px; }.ov-empty > svg { width:36px; height:36px; color:#5a829f; }.ov-empty h3 { font-size:18px; margin:0; color:#d6eafa; }.ov-empty p { font-size:12px; margin:0; max-width:370px; line-height:1.65; }.ov-spinner { width:24px; height:24px; border:2px solid #2d4b62; border-top-color:var(--ov-cyan); border-radius:50%; animation:ov-spin .8s linear infinite; }@keyframes ov-spin { to {transform:rotate(360deg);} }
.ov-filter-panel { position:absolute; top:calc(100% + 2px); right:20px; z-index:8; width:min(410px,calc(100% - 20px)); background:#132735; border:1px solid #3b596e; border-radius:8px; padding:18px; box-shadow:0 18px 50px #0009; max-height:calc(100dvh - 190px); overflow:auto; }.ov-filter-panel header { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }.ov-filter-panel h3 { color:#e3f0fc; font-size:17px; margin:0; }.ov-filter-panel header button { display:grid; place-items:center; width:26px; height:26px; border:0; background:transparent; color:#b4cadf; }.ov-filter-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }.ov-filter-grid > label { font-size:11px; color:#b6cfe4; display:flex; flex-direction:column; gap:7px; margin:0; }.ov-filter-grid > .ov-toggle { flex-direction:row; justify-content:space-between; align-self:end; }.ov-filter-grid input:not([type="checkbox"]),.ov-filter-grid select { width:100%; min-width:0; border:1px solid #38576e; border-radius:5px; height:36px; padding:6px 8px; background:#0e202e; color:#d3e9f8; font-size:12px; }.ov-range { margin:18px 0; padding-top:18px; border-top:1px solid #2d475b; }.ov-range h4 { font-size:13px; color:#d3eafa; margin:0 0 5px; }.ov-range p { font-size:10px; color:#8eacc3; margin:0 0 13px; }.ov-range .ov-button { margin-top:12px; }.ov-text-button { color:#60d4f7; border:0; background:transparent; font-size:12px; padding:0; }.ov-error,.ov-inline-error { color:#ffa2a5 !important; font-size:12px; line-height:1.5; }.ov-inline-error { margin:0; padding:8px 18px; background:#67263533; }
.ov-trade-dialog { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); background:#102432; border:1px solid #3d5b71; width:min(660px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; border-radius:10px; color:#c2d9ea; outline:0; padding:24px; }.ov-trade-dialog header { display:flex; justify-content:space-between; gap:20px; }.ov-trade-dialog header span { color:#56c9ee; font-size:10px; letter-spacing:.12em; }.ov-trade-dialog h2 { color:#eaf5fe; font-size:26px; margin:7px 0; }.ov-trade-dialog p { font-size:12px; color:#a9c5da; line-height:1.7; }.ov-trade-dialog header button { width:32px; height:32px; border:0; border-radius:6px; color:#a8c6dd; background:#1d3a50; }.ov-detail-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding:24px 0; border-block:1px solid #2d475c; }.ov-detail-grid > div { display:flex; flex-direction:column; gap:7px; }.ov-detail-grid span { color:#95b3cb; font-size:11px; }.ov-detail-grid strong { font-size:16px; color:#e4f3fd; font-weight:500; }.ov-trade-description { margin:18px 0; }.ov-trade-dialog footer { display:flex; flex-wrap:wrap; gap:12px; margin-top:20px; }.ov-trade-dialog .ov-button { display:inline-flex; align-items:center; gap:8px; border:1px solid #375c77; border-radius:6px; background:#183a50; color:#d0eafa; padding:10px 14px; font-size:12px; }.ov-trade-dialog .ov-button svg { width:18px; height:18px; }
.ov-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (max-width:1500px) { .ov-stat { padding:12px 14px; gap:12px; }.ov-stat-icon { width:44px; height:44px; }.ov-stat-share { flex-direction:column; align-items:flex-start; gap:5px; padding-top:18px; }.ov-stat-share > i { width:100%; min-height:5px; flex:none; }.ov-layout { grid-template-columns:minmax(0,1fr) 280px; gap:16px; }.ov-flow-actions { gap:8px; }.ov-search input { width:190px; }.ov-flow-toolbar { padding:12px 14px 8px; }.ov-flow-controls { padding-inline:14px; }.ov-flow-title h2 { font-size:20px; }.ov-activity-tabs { gap:5px; }.ov-activity-tabs button { padding-inline:10px; }.ov-table-preferences { gap:12px; }.ov-pagination { padding-inline:12px; gap:9px; }.ov-pagination nav { gap:3px; }.ov-pagination nav button { padding-inline:5px; }.ov-pagination > label { gap:7px; } }
@media (max-width:1151px) { .sc-reference-dashboard { height:auto; overflow:visible; }.sc-reference-dashboard .sc-dashboard-main { height:auto; min-height:calc(100dvh - 64px); padding:18px 18px 24px !important; grid-template-rows:auto auto auto; }.ov-layout { grid-template-columns:minmax(0,1fr); }.ov-flow { min-height:620px; }.ov-table-region { max-height:650px; min-height:340px; }.ov-flow-toolbar { gap:12px; }.ov-flow-actions { flex:1; justify-content:flex-end; }.ov-search input { width:220px; }.ov-page-header h1 { font-size:28px; }.ov-stat-label strong { font-size:23px; }.ov-stat-label > span { font-size:11px; }.ov-stat { gap:10px; }.ov-stat-icon { width:34px; height:40px; }.ov-stat-icon svg { width:25px; }.ov-header-tools { gap:16px; } }
@media (max-width:760px) { .sc-reference-dashboard .sc-dashboard-main { padding:16px 12px 24px !important; gap:14px; }.ov-page-header { align-items:flex-start; flex-wrap:wrap; gap:14px; }.ov-page-header h1 { font-size:28px; }.ov-page-header p { font-size:12px; }.ov-header-tools { justify-content:space-between; width:100%; }.ov-market-status { font-size:11px; }.ov-stats { grid-template-columns:1fr 1fr; gap:9px; }.ov-stat { min-height:77px; padding:12px; gap:10px; }.ov-stat-label strong { font-size:22px; }.ov-stat-share { display:none; }.ov-flow-toolbar { padding:14px 12px 8px; }.ov-flow-title { width:100%; }.ov-flow-actions { flex-wrap:wrap; justify-content:flex-start; width:100%; gap:8px; }.ov-search { width:100%; }.ov-search input { width:100%; }.ov-flow-actions > .ov-button { min-height:34px; padding:6px 12px; font-size:12px; }.ov-flow-controls { padding:0 10px 10px; gap:4px; }.ov-activity-tabs { width:100%; gap:15px; }.ov-activity-tabs button { height:43px; }.ov-table-preferences { justify-content:space-between; flex-wrap:wrap; width:100%; gap:5px; }.ov-toggle { gap:7px; font-size:10px; }.ov-density-label { margin-left:auto; font-size:10px; padding-left:8px; gap:6px; }.ov-density-label select { max-width:96px; font-size:10px; }.ov-density-label > span { display:none; }.ov-table-region { min-height:370px; max-height:600px; }.ov-pagination { justify-content:space-between; gap:12px; padding:12px; }.ov-pagination nav { order:3; width:100%; justify-content:center; }.ov-pagination p { font-size:11px; }.ov-filter-panel { right:10px; top:100%; }.ov-detail-grid { grid-template-columns:1fr 1fr; gap:18px; }.ov-trade-dialog { padding:20px; } }
@media (prefers-reduced-motion:reduce) { .ov-toggle i::before { transition:none; }.ov-spinner { animation:none; } }

.ov-has-range .ov-table { min-width:1240px; }
.ov-has-range .ov-col-updated { width:14%; }
.ov-has-range .ov-col-details { width:8%; }
.ov-toggle input:disabled+i { opacity:.45; }
@media (min-width:1152px) and (max-height:650px) { .sc-reference-dashboard { height:auto; overflow:visible; }.sc-reference-dashboard .sc-dashboard-main { height:auto; min-height:100dvh; grid-template-rows:auto auto minmax(420px,1fr); }.ov-table-region { height:260px; flex:1 1 260px; } }
