/* Option Chain tab + options panels. Uses the app's existing tokens (--panel, --line, --up, --down ...). */
.oc-controls{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center;padding:12px 16px}
.oc-controls label{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.oc-controls label.check{cursor:pointer}
.oc-controls select{min-width:140px}
.oc-overview,.oc-summary,.oc-mon,.oc-actions{margin-top:12px}
.oc-empty{padding:6px 2px;font-size:13px}
.oc-ov-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}
.oc-ov-sub{font-size:12.5px;color:var(--muted);margin-bottom:8px}
.oc-chip{font-size:11.5px;padding:2px 9px;border:1px solid var(--line);border-radius:999px;background:var(--panel-2);color:var(--muted);white-space:nowrap}
.oc-ov-row{cursor:pointer}.oc-ov-row:hover,.oc-ov-row:focus{background:var(--panel-2);outline:none}
.oc-expiries{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.oc-exp{background:var(--panel);border:1px solid var(--line);color:var(--text);padding:6px 12px;border-radius:8px;font:inherit;font-size:12.5px;cursor:pointer}
.oc-exp:hover{background:var(--panel-2)}
.oc-exp.active{border-color:var(--warn);box-shadow:0 0 0 1px var(--warn) inset}
.oc-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px 18px}
.oc-stat{display:flex;flex-direction:column;gap:2px}
.oc-k{font-size:11.5px;color:var(--muted)}
.oc-stat b{font-size:15px}
.oc-notes{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
.oc-note-chip{font-size:11.5px;padding:3px 10px;border-radius:6px;background:var(--panel-2);border:1px solid var(--line);color:var(--muted)}
.oc-note-chip.warn,.oc-note.warn{color:#f5c26b;border-color:#6b5320}
.oc-stale{color:#f5c26b;font-size:12px}
.oc-note{font-size:11.5px;color:var(--muted)}
.oc-wrap{overflow-x:auto;padding:0}
.oc-table{width:100%;border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums}
.oc-table th{padding:7px 8px;text-align:right;color:var(--muted);font-weight:500;font-size:11.5px;border-bottom:1px solid var(--line);white-space:nowrap;position:sticky;top:0;background:var(--panel)}
.oc-table td{padding:7px 8px;text-align:right;border-bottom:1px solid rgba(38,48,61,.6);white-space:nowrap}
.oc-table th.oc-calls{color:#e07577;text-align:center;letter-spacing:.08em}
.oc-table th.oc-puts{color:#52b08a;text-align:center;letter-spacing:.08em}
.oc-table .oc-strike-h,.oc-table .oc-strike{text-align:center;background:var(--panel-2)}
.oc-table .oc-strike b{font-size:13.5px}
.oc-table .oc-strike small{display:block;font-size:10px;color:var(--warn);font-weight:600}
.oc-px b{display:block}.oc-px small{display:block;font-size:10.5px;color:var(--muted)}
.oc-px.oc-ill{opacity:.55}
.oc-q,.oc-v,.oc-g,.oc-delta{color:var(--muted)}
.oc-oi{min-width:96px;font-weight:600}.oc-oi small{display:block;font-weight:400;font-size:10.5px}
.oc-ce-itm td:nth-child(-n+9){background-color:rgba(79,156,249,.045)}
.oc-pe-itm td:nth-last-child(-n+9){background-color:rgba(79,156,249,.045)}
.oc-atm td{background-color:rgba(245,158,11,.10)!important;border-top:1px solid var(--warn);border-bottom:1px solid var(--warn)}
.oc-b{font-style:normal;font-size:9.5px;font-weight:700;padding:1px 5px;border-radius:4px;margin:2px 2px 0;display:inline-block}
.oc-b.mp{background:#3a3120;color:#f5c26b}.oc-b.cw{background:#3b1f22;color:#f19a9d}.oc-b.pw{background:#173626;color:#7ee2a8}
.oc-mon-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}
.oc-mon-ctl{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.oc-seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.oc-seg button{background:var(--panel);border:0;color:var(--muted);padding:6px 12px;font:inherit;font-size:12.5px;cursor:pointer}
.oc-seg button.active{background:var(--accent);color:#08111e;font-weight:600}
.oc-suggest,.oc-read{margin-top:10px;padding:10px 14px;border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:8px;background:var(--panel-2)}
.oc-suggest .oc-sug-head,.oc-bias{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.oc-bias b,.oc-sug-head b{font-size:20px}
.oc-sig{margin:8px 0;padding-left:18px;font-size:13px}
.oc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 18px;margin:12px 0}
.oc-chart canvas{width:100%;display:block}
.oc-bu{font-size:11.5px;font-weight:600;padding:1px 7px;border-radius:5px}
.oc-bu.long-buildup,.oc-bu.short-covering{color:#7ee2a8}.oc-bu.short-buildup,.oc-bu.long-unwinding{color:#f19a9d}
.oc-log summary{cursor:pointer;color:var(--muted);margin:10px 0}
.oc-panel{margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-2)}
.oc-panel h4{font-size:13.5px;margin-bottom:8px}
.oc-actions .controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.sb-whatif label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}
.sb-whatif input[type=range]{width:150px}
@media (max-width:900px){.oc-controls{gap:10px}.oc-oi{min-width:70px}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
