/* Options Executor (/admin/options-executor) — oe-* on design-tokens.css, sharing the Strategy Lab's sl-* surfaces. */
.oe-page .oe-badge-live { color: var(--danger); background: var(--danger-bg); }

.oe-strip { margin: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: var(--space-3); }
.oe-tile { padding: var(--space-3) var(--space-4); display: flex; flex-direction: column; gap: 2px; border-left: 4px solid var(--border-primary); }
.oe-tile dt { font-size: var(--text-xs); color: var(--text-muted); text-transform: uppercase; letter-spacing: var(--tracking-wide); }
.oe-tile dd { margin: 0; font-size: var(--text-lg); font-weight: var(--weight-bold); font-variant-numeric: tabular-nums; }
.oe-tile small { color: var(--text-muted); font-size: var(--text-xs); }
.oe-tile--good { border-left-color: var(--bullish); }
.oe-tile--warn { border-left-color: var(--warning, #d08a00); }
.oe-tile--bad { border-left-color: var(--bearish); }

.oe-down { border-left: 4px solid var(--bearish); }

.oe-cards { display: flex; flex-direction: column; gap: var(--space-2); border-left: 4px solid var(--bearish); }
.oe-alert { display: grid; grid-template-columns: auto 1fr; gap: var(--space-1) var(--space-3); align-items: baseline; padding: var(--space-2) 0; border-top: 1px solid var(--border-primary); }
.oe-alert:first-of-type { border-top: 0; }
.oe-alert-class { font-family: var(--font-mono); font-size: var(--text-xs); font-weight: var(--weight-semibold); padding: 0 6px; border-radius: var(--radius-sm); color: var(--danger); background: var(--danger-bg); }
.oe-alert--halted .oe-alert-class { color: var(--warning, #d08a00); background: var(--card-bg); border: 1px solid var(--border-primary); }
.oe-alert-text { word-break: break-word; }
.oe-alert-text code { font-size: var(--text-xs); }
.oe-alert-meta { grid-column: 2; color: var(--text-muted); font-size: var(--text-xs); }

.oe-section-title { margin-top: var(--space-2); }
.oe-exec { cursor: default; }
.oe-exec--done { opacity: 0.72; }
.oe-state { margin-left: auto; font-family: var(--font-mono); font-size: var(--text-xs); font-weight: var(--weight-semibold); padding: 1px 8px; border-radius: var(--radius-full); border: 1px solid var(--border-primary); color: var(--text-secondary); white-space: nowrap; }
.oe-state--live { color: var(--bullish); border-color: var(--bullish); }
.oe-state--enteringlongs, .oe-state--enteringshorts, .oe-state--exiting { color: var(--warning, #d08a00); border-color: var(--warning, #d08a00); }
.oe-state--recovery, .oe-state--exitawaitingreconciliation, .oe-state--settlementpending { color: var(--bearish); border-color: var(--bearish); }
.oe-exec-meta { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-3); color: var(--text-muted); font-size: var(--text-xs); font-family: var(--font-mono); }
.oe-overlays { color: var(--bearish); }
.oe-legs { width: 100%; }
.oe-legs .oe-leg-name { white-space: nowrap; }
.oe-leg--diff td { background: var(--warning-bg, rgba(208, 138, 0, 0.08)); }
.oe-foreign { color: var(--warning, #d08a00); font-weight: var(--weight-semibold); }
.oe-short { color: var(--bearish); }
.oe-long { color: var(--bullish); }
.oe-exec-foot { font-size: var(--text-sm); }

.oe-decision { font-family: var(--font-mono); font-size: var(--text-xs); padding: 0 6px; border-radius: var(--radius-sm); border: 1px solid var(--border-primary); }
.oe-decision--accepted { color: var(--bullish); border-color: var(--bullish); }
.oe-decision--refused { color: var(--text-secondary); }
.oe-reason { max-width: 520px; word-break: break-word; }

@media (max-width: 640px) {
    .oe-alert { grid-template-columns: 1fr; }
    .oe-alert-meta { grid-column: 1; }
    .oe-reason { max-width: 60vw; }
}
