/* v743: Options Map dark theme with PWA stale-CSS safe fallback. */
#optionsmap .om741{max-width:1700px;margin:0 auto;min-width:0;color:var(--text,#d8e4ed)}
#optionsmap .om741-head{display:flex;align-items:start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 12px}
#optionsmap .om741-head h2{margin:0 0 4px;font-size:clamp(20px,2vw,28px);font-weight:850}
#optionsmap .om741-sub,#optionsmap .om741-foot{font-size:11px;line-height:1.55;opacity:.76}
#optionsmap .om741-badge{font-size:10px;font-weight:800;border:1px solid var(--line,#39566a);border-radius:7px;padding:5px 9px;white-space:nowrap}
#optionsmap .om741-badge.ok{color:#69db98}#optionsmap .om741-badge.warn{color:#efbc64}#optionsmap .om741-badge.bad{color:#ef7b7b}
#optionsmap .om741-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0}
#optionsmap .om741-actions label{display:flex;gap:6px;align-items:center;font-size:11px;font-weight:650}
#optionsmap .om741-actions select,#optionsmap .om741-actions button{background:var(--panel,#12273b);color:var(--text,#d9e4ed);border:1px solid var(--line,#345);border-radius:7px;font:650 12px system-ui;padding:8px 10px;min-height:35px;cursor:pointer}
#optionsmap .om741-actions button:disabled{opacity:.5;cursor:wait}
#optionsmap .om741-actions input{accent-color:#a56ccd}
#optionsmap .om741-layout{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:12px}
#optionsmap .om741-chart-wrap{min-width:0;background:#101f2c;border:1px solid #345066;border-radius:10px;overflow:hidden;position:relative;align-self:start}
#optionsmap .om741-chartbar{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#162738;color:#d7e5f1;padding:8px 12px;font:650 11px system-ui;min-height:35px}
#optionsmap .om741-viewport{position:relative;height:clamp(450px,61vh,730px);touch-action:pan-y;user-select:none;cursor:crosshair}
#optionsmap #om741canvas{display:block;width:100%;height:100%}
#optionsmap .om741-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;color:#a8bbcb;font-size:13px;pointer-events:none}
#optionsmap .om741-foot{padding:9px 12px;background:#132536;color:#a7bac9;opacity:1;border-top:1px solid #2a4156}
#optionsmap .om741-legend{border:1px solid var(--line,#344959);background:var(--panel,#112c41);padding:12px;border-radius:10px;min-width:0}
#optionsmap .om741-legend h3{font-size:13px;margin:0 0 9px}
#optionsmap .om741-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 12px}
#optionsmap .om741-stat{border:1px solid var(--line,#344959);padding:8px;border-radius:7px;min-width:0}
#optionsmap .om741-stat span{display:block;font-size:10px;opacity:.7;margin-bottom:4px}
#optionsmap .om741-stat b{font-size:15px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
#optionsmap .om741-levellist{display:grid;gap:4px;max-height:375px;overflow:auto}
#optionsmap .om741-level{display:flex;justify-content:space-between;gap:8px;align-items:center;font:650 11px system-ui;padding:6px 5px;border-bottom:1px solid var(--line,#344959)}
#optionsmap .om741-level b{font-variant-numeric:tabular-nums;white-space:nowrap}
#optionsmap .om741-level i{font-style:normal;font-size:9px;opacity:.72}
#optionsmap .om741-guide{font-size:11px;line-height:1.55;margin-top:12px;color:var(--muted,#9badbe)}
#optionsmap .om741-note{margin:10px 0;padding:9px 10px;border:1px solid var(--line,#344959);border-radius:8px;font-size:11px;line-height:1.5}
#optionsmap .om741-note strong{display:block;margin-bottom:3px}
#optionsmap .om741-kbd{font:700 10px monospace;border:1px solid var(--line,#345);border-radius:3px;padding:0 4px}
@media(max-width:1050px){#optionsmap .om741-layout{grid-template-columns:1fr}#optionsmap .om741-legend{display:grid;grid-template-columns:1fr 1fr;gap:12px}#optionsmap .om741-legend h3{grid-column:1/-1}#optionsmap .om741-levellist{max-height:230px}}
@media(max-width:610px){#optionsmap .om741-head h2{font-size:20px}#optionsmap .om741-layout{gap:8px}#optionsmap .om741-legend{display:block}#optionsmap .om741-viewport{height:clamp(430px,64vh,680px)}#optionsmap .om741-actions label{font-size:10px}#optionsmap .om741-actions select,#optionsmap .om741-actions button{font-size:11px;padding:6px 8px;min-height:33px}#optionsmap .om741-levellist{max-height:250px}}

/* v742: readable chart toolbar, mobile contrast, no white chart panels. */
#optionsmap .om741-chart-wrap{box-shadow:0 8px 26px rgba(0,0,0,.14)}
#optionsmap .om741-chartbar{border-bottom:1px solid #2a4156}
#optionsmap .om741-viewport{background:#0e1b29}
#optionsmap .om741-empty{background:rgba(14,27,41,.90);color:#bdd0e1}
#optionsmap .om741-chartbar span{color:#a8bccd;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#optionsmap .om741-levellist .om741-level{color:var(--text)}
#optionsmap .om742-init{min-height:160px;padding:22px}
@media(max-width:610px){#optionsmap .om741-chartbar{flex-wrap:wrap}#optionsmap .om741-chartbar span{max-width:100%}}

/* v743: prevent a cached v741 light chart header / frame from shining through.
   The chart uses a dark palette regardless of the dashboard's theme. */
html body #optionsmap .om741-chart-wrap{
  background:#101f2c!important;
  border:1px solid #284358!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
}
html body #optionsmap .om741-chartbar{
  background:#142738!important;
  color:#dce8f2!important;
  border-bottom:1px solid #2b4458!important;
}
html body #optionsmap .om741-chartbar b{color:#dce8f2!important}
html body #optionsmap .om741-chartbar span{color:#aabfd2!important}
html body #optionsmap .om741-foot{
  background:#132536!important;
  color:#aabecf!important;
  border-top:1px solid #2a4255!important;
}


/* v744: TradingView Lightweight Charts keeps all panels fully dark; labels are
   custom DOM in a collision-free overlay, but the horizontal levels stay true. */
#optionsmap .om744-chart{position:absolute;inset:0;display:none;z-index:1;overflow:hidden}
#optionsmap .om744-labels{position:absolute;inset:0;pointer-events:none;z-index:3;display:none;overflow:hidden}
#optionsmap .om744-ready .om744-chart,#optionsmap .om744-ready .om744-labels{display:block}
#optionsmap .om744-ready #om741canvas{display:none}
#optionsmap .om744-ready{touch-action:pan-y;cursor:crosshair}
#optionsmap .om744-ready .om741-empty{z-index:4}
#optionsmap .om744-level-label{position:absolute;white-space:nowrap;transform:translateY(-50%);font:700 10px/15px system-ui;letter-spacing:.05px;background:rgba(14,27,41,.93);border-radius:3px;padding:0 3px;text-shadow:0 1px 1px #0e1b29;max-width:min(155px,55%);overflow:hidden;text-overflow:ellipsis;box-shadow:0 0 0 1px #0e1b2959}
#optionsmap .om744-tvcredit{margin-top:12px;font-size:10px;color:#99b0c2}
#optionsmap .om744-tvcredit a{color:#92c5fa;text-decoration:underline}
@media(max-width:610px){#optionsmap .om744-level-label{font-size:9px;max-width:138px}}


/* v747: touch-only transparent hit zones directly over the axes.
   Width/height are synchronized with actual TradingView scale dimensions in JS.
   Do not intercept the chart body or desktop mouse axis manipulation. */
#optionsmap .om747-touch-axis{display:none;position:absolute;z-index:6;background:transparent;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}
#optionsmap .om747-axis-y{top:0;right:0;width:87px;bottom:29px}
#optionsmap .om747-axis-x{left:0;bottom:0;height:29px;right:87px}
@media (pointer:coarse){#optionsmap .om747-touch-axis{display:block}}
/* Keep entire Options Map panel unchanged; only content scales. */
#optionsmap .om744-ready{touch-action:auto}
