.tv-options .tv-options-label { display:block; margin-bottom:.5rem; font-size:.875rem; font-weight:500; color:#111827; }
.tv-options .tv-options-help { font-size:.8125rem; line-height:1.5; color:#4b5563; overflow-wrap:anywhere; }
.tv-options [data-instrument-meta] { overflow-wrap:anywhere; }
.tv-options-mode-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.tv-options-mode-tabs button { text-align:left; padding:1rem; border:1px solid #d1d5db; border-radius:.5rem; color:#374151; background:#f9fafb; }
.tv-options-mode-tabs button[aria-selected="true"] { border-color:#2563eb; background:#eff6ff; color:#1e40af; box-shadow:inset 0 0 0 1px #2563eb; }
.dark .tv-options-mode-tabs button { background:#1f2937; border-color:#4b5563; color:#d1d5db; }
.dark .tv-options-mode-tabs button[aria-selected="true"] { background:#172554; border-color:#60a5fa; color:#bfdbfe; box-shadow:inset 0 0 0 1px #60a5fa; }
.tv-options-mode-tabs button:focus-visible, .tv-options-slider:focus-visible, .tv-options-results:focus-visible { outline:2px solid #2563eb; outline-offset:4px; }
.dark .tv-options-mode-tabs button:focus-visible, .dark .tv-options-slider:focus-visible, .dark .tv-options-results:focus-visible { outline-color:#60a5fa; }
.tv-options-mode-panel[hidden] { display:none !important; }
.tv-options-layout { display:grid; grid-template-columns:minmax(0,1fr); }
.tv-options-layout > * { min-width:0; }
.tv-options-explanation { grid-column:1 / -1; }
.tv-options-results { scroll-margin-top:1rem; }
.tv-options-slider { width:100%; accent-color:#2563eb; cursor:pointer; min-height:1.5rem; }
.dark .tv-options-slider { accent-color:#60a5fa; }
.dark .tv-options .tv-options-label { color:#fff; }
.dark .tv-options .tv-options-help { color:#d1d5db; }
.tv-options .tv-option-leg-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.tv-options .tv-options-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.tv-options .tv-options-metric { min-width:0; padding:1rem; background:#fff; border:1px solid #e5e7eb; border-radius:.5rem; }
.tv-options .tv-options-metric-value { margin:.5rem 0; font-size:1.25rem; line-height:1.4; font-weight:700; color:#111827; overflow-wrap:anywhere; }
.dark .tv-options .tv-options-metric { background:#111827; border-color:#374151; }
.dark .tv-options .tv-options-metric-value { color:#fff; }
.tv-options button:disabled { opacity:.5; cursor:not-allowed; }
.tv-options input:disabled { opacity:.7; cursor:not-allowed; }
.tv-options [aria-invalid="true"] { border-color:#dc2626; }
.tv-options .tv-options-search-results { margin-top:.5rem; border:1px solid #d1d5db; border-radius:.5rem; overflow:hidden; }
.tv-options .tv-options-search-results button { display:block; width:100%; text-align:left; padding:.75rem; font-size:.875rem; overflow-wrap:anywhere; color:#111827; background:#f9fafb; }
.tv-options .tv-options-search-results li+li { border-top:1px solid #d1d5db; }
.tv-options .tv-options-search-results button:hover { background:#eff6ff; }
.dark .tv-options .tv-options-search-results { border-color:#4b5563; }
.dark .tv-options .tv-options-search-results li+li { border-color:#4b5563; }
.dark .tv-options .tv-options-search-results button { background:#374151; color:#fff; }
.dark .tv-options .tv-options-search-results button:hover { background:#4b5563; }
.tv-options .tv-options-chart-wrap { min-width:0; background:#fff; border:1px solid #e5e7eb; border-radius:.5rem; }
.dark .tv-options .tv-options-chart-wrap { background:#111827; border-color:#4b5563; }
.tv-options [data-options-chart] { display:block; width:100%; height:360px; }
.tv-options .tv-payoff-grid { stroke:#e5e7eb; stroke-width:1; }
.tv-options .tv-payoff-axis { stroke:#6b7280; stroke-width:1; }
.tv-options .tv-payoff-label { fill:#4b5563; font-size:12px; font-family:inherit; }
.tv-options .tv-payoff-line { stroke:#1d4ed8; fill:none; stroke-width:3; stroke-linejoin:round; }
.tv-options .tv-payoff-point { fill:#1d4ed8; stroke:#fff; stroke-width:2; }
.tv-options .tv-payoff-positive { fill:#16a34a; opacity:.06; }
.tv-options .tv-payoff-negative { fill:#dc2626; opacity:.06; }
.tv-options .tv-payoff-scenario { stroke:#6b7280; stroke-width:1; stroke-dasharray:4 4; }
.tv-options .tv-payoff-breakeven { stroke:#7c3aed; stroke-width:1.5; stroke-dasharray:3 4; }
.dark .tv-options .tv-payoff-breakeven { stroke:#c4b5fd; }
.dark .tv-options .tv-payoff-grid { stroke:#374151; }
.dark .tv-options .tv-payoff-axis { stroke:#9ca3af; }
.dark .tv-options .tv-payoff-label { fill:#d1d5db; }
.dark .tv-options .tv-payoff-line { stroke:#60a5fa; }
.dark .tv-options .tv-payoff-point { fill:#60a5fa; stroke:#111827; }
.dark .tv-options .tv-payoff-positive,.dark .tv-options .tv-payoff-negative { opacity:.12; }
.tv-options [role="region"]:focus-visible { outline:2px solid #2563eb; outline-offset:4px; }
.dark .tv-options [role="region"]:focus-visible { outline-color:#60a5fa; }
@media (max-width:359px) { .tv-options .tv-options-metrics { grid-template-columns:minmax(0,1fr); } }
@media (min-width:640px) { .tv-options .tv-option-leg-fields { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (min-width:1200px) {
 .tv-options-layout { grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); align-items:start; }
 .tv-options-layout .tv-option-leg-fields { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .tv-options-results { position:sticky; top:1rem; max-height:calc(100vh - 2rem); overflow:auto; border-top:0; border-left:1px solid #e5e7eb; border-radius:0 .5rem .5rem 0; }
 .dark .tv-options-results { border-left-color:#374151; }
}
