.options-shell .intel-hero {
    background:
        linear-gradient(115deg, rgb(255 255 255 / 0.97), rgb(246 250 253 / 0.96)),
        radial-gradient(circle at 92% 12%, rgb(4 113 58 / 0.12), transparent 18rem);
}

.options-shell .intel-hero h1 {
    margin-bottom: 0.35rem;
}

.options-live-region {
    transition: opacity 160ms ease;
}

.options-live-region.is-loading {
    opacity: 0.62;
}

.options-tone-positive {
    border-color: #b8ddc5 !important;
    background: linear-gradient(135deg, rgb(4 113 58 / 0.12), rgb(255 255 255 / 0.96)) !important;
}

.options-tone-negative {
    border-color: #e8c0a8 !important;
    background: linear-gradient(135deg, rgb(192 74 0 / 0.13), rgb(255 255 255 / 0.96)) !important;
}

.options-tone-warning {
    border-color: #ead49d !important;
    background: linear-gradient(135deg, rgb(168 119 0 / 0.13), rgb(255 255 255 / 0.96)) !important;
}

.options-tone-neutral {
    border-color: #d9e4ef !important;
    background: #fbfdff !important;
}

.options-hero-score strong {
    font-size: 1.35rem;
}

.options-signal-brief {
    align-items: center;
    border-left: 0.32rem solid #cbd8e6;
}

.options-signal-brief.options-tone-positive {
    border-left-color: #04713a !important;
}

.options-signal-brief.options-tone-negative {
    border-left-color: #c04a00 !important;
}

.options-signal-brief.options-tone-warning {
    border-left-color: #a87700 !important;
}

.options-highlight-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.85rem;
}

.options-insight-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.6rem;
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid #d9e4ef;
}

.options-insight-icon {
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    align-items: center;
    justify-content: center;
    border: 1px solid rgb(0 51 102 / 0.18);
    background: rgb(255 255 255 / 0.72);
    color: var(--brand-deep);
}

.options-insight-icon .bi {
    width: 1rem;
    height: 1rem;
}

.options-shell .bi,
.options-shell svg.bi {
    flex: 0 0 auto;
    width: 0.88rem;
    height: 0.88rem;
    max-width: 0.88rem;
    max-height: 0.88rem;
}

.options-insight-card span {
    display: block;
    color: var(--muted);
    font-size: 0.66rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.options-insight-card strong {
    display: block;
    margin-top: 0.1rem;
    color: var(--brand-deep);
    font-size: 1.05rem;
    overflow-wrap: anywhere;
}

.options-insight-card p {
    margin: 0.15rem 0 0;
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.35;
}

.options-meter {
    display: grid;
    gap: 0.35rem;
}

.options-meter-track {
    height: 0.62rem;
    overflow: hidden;
    border: 1px solid #cbd8e6;
    background: #eef3f7;
}

.options-meter-track span {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #003366, #04713a);
}

.options-signal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.options-angle-panel {
    margin-top: 0.85rem;
}

.options-angle-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.options-angle-card {
    min-width: 0;
    padding: 0.95rem;
    border: 1px solid #d9e4ef;
    background:
        linear-gradient(180deg, rgb(255 255 255 / 0.96), rgb(248 251 254 / 0.96)),
        #fbfdff;
    box-shadow: 0 0.7rem 1.6rem rgb(0 28 56 / 0.035);
}

.options-angle-head {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 0.65rem;
    padding-bottom: 0.55rem;
    border-bottom: 1px solid #dce6ef;
}

.options-angle-head span {
    display: block;
    color: var(--muted);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.options-angle-head h3 {
    margin: 0;
    color: var(--brand-deep);
    font-size: 1rem;
}

.options-angle-head a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.85rem;
    padding: 0.2rem 0.55rem;
    border: 1px solid #cbd8e6;
    background: #ffffff;
    color: var(--brand-deep);
    font-weight: 900;
    text-decoration: none;
}

.options-angle-head a:hover,
.options-angle-head a:focus-visible {
    border-color: var(--brand-deep);
    background: #f4f8fc;
    text-decoration: none;
}

.options-angle-card > p {
    margin: 0 0 0.75rem;
    color: var(--muted);
    font-weight: 800;
    line-height: 1.45;
}

.options-depth-list {
    display: grid;
    gap: 0.45rem;
}

.options-depth-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content;
    gap: 0.75rem;
    align-items: center;
    min-width: 0;
    padding: 0.62rem 0.68rem;
    border-left: 0.22rem solid #cbd8e6;
    border: 1px solid #dce6ef;
    border-left-width: 0.24rem;
    background: #ffffff;
    color: inherit;
    text-decoration: none;
}

.options-depth-row:hover,
.options-depth-row:focus-visible {
    background: #f8fbfe;
    text-decoration: none;
}

.options-depth-row-main {
    min-width: 0;
}

.options-depth-row strong {
    display: block;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-depth-row em {
    display: block;
    color: var(--muted);
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 900;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.options-depth-row--positive {
    border-left-color: #04713a;
    background: linear-gradient(90deg, rgb(4 113 58 / 0.07), #ffffff 4.5rem);
}

.options-depth-row--negative {
    border-left-color: #b42318;
    background: linear-gradient(90deg, rgb(180 35 24 / 0.07), #ffffff 4.5rem);
}

.options-depth-row--warning {
    border-left-color: #8a96a3;
    background: linear-gradient(90deg, rgb(82 101 121 / 0.08), #ffffff 4.5rem);
}

.options-depth-row--neutral {
    border-left-color: #8a96a3;
    background: linear-gradient(90deg, rgb(82 101 121 / 0.07), #ffffff 4.5rem);
}

.options-depth-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: end;
    min-width: 3.25rem;
    max-width: 100%;
    min-height: 2.25rem;
    padding: 0.25rem 0.42rem;
    box-sizing: border-box;
    border: 1px solid #b9c8d7;
    background: #ffffff;
    color: var(--brand-deep);
    font-size: 0.92rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    overflow-wrap: anywhere;
}

.options-depth-row--positive .options-depth-badge {
    border-color: #9ed4b2;
    background: #effaf3;
    color: #04713a;
}

.options-depth-row--negative .options-depth-badge {
    border-color: #edb7ad;
    background: #fff2ef;
    color: #b42318;
}

.options-depth-row--warning .options-depth-badge,
.options-depth-row--neutral .options-depth-badge {
    border-color: #cbd8e6;
    background: #f4f7fa;
    color: #526579;
}

.options-band-link {
    color: inherit;
    text-decoration: none;
}

.options-band-link:hover,
.options-band-link:focus {
    background: #f8fbfe;
    text-decoration: none;
}

.options-band-link.is-active {
    border-left: 0.24rem solid #003366;
    padding-left: 0.5rem;
    background: linear-gradient(90deg, rgb(0 51 102 / 0.08), rgb(255 255 255 / 0.96));
}

.options-band-panel {
    margin-top: 0.85rem;
}

.options-band-list {
    display: grid;
    gap: 0.75rem;
}

.options-band-card {
    display: grid;
    grid-template-columns: 5.6rem minmax(0, 1fr);
    min-width: 0;
    border: 1px solid #d7e2ec;
    background: #ffffff;
}

.options-band-card--bullish {
    border-left: 0.3rem solid #04713a;
}

.options-band-card--bearish {
    border-left: 0.3rem solid #c04a00;
}

.options-band-card--volatility {
    border-left: 0.3rem solid #a87700;
}

.options-band-card--mixed {
    border-left: 0.3rem solid #7d8fa3;
}

.options-band-rank {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.25rem;
    padding: 0.85rem 0.55rem;
    border-right: 1px solid #dce6ef;
    background: #f8fbfe;
}

.options-band-rank span {
    color: var(--muted);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
}

.options-band-rank strong {
    color: var(--brand-deep);
    font-size: 1.55rem;
}

.options-band-main {
    display: grid;
    gap: 0.7rem;
    min-width: 0;
    padding: 0.85rem;
}

.options-band-title {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.7rem;
    align-items: start;
}

.options-band-title strong {
    display: block;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-band-title p {
    margin: 0.12rem 0 0;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 900;
}

.options-band-insight {
    margin: 0;
    color: var(--muted);
    font-weight: 800;
    line-height: 1.45;
}

.options-band-metrics,
.options-band-score-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.45rem;
}

.options-band-metrics div,
.options-band-score-grid div {
    min-width: 0;
    padding: 0.5rem;
    border: 1px solid #d7e2ec;
    background: #fbfdff;
}

.options-band-metrics span,
.options-band-score-grid span {
    display: block;
    color: var(--muted);
    font-size: 0.64rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.options-band-metrics strong,
.options-band-score-grid strong {
    display: block;
    margin-top: 0.1rem;
    color: var(--brand-deep);
    font-size: 1rem;
    overflow-wrap: anywhere;
}

.options-band-score-grid div {
    position: relative;
    padding-bottom: 0.85rem;
}

.options-band-score-grid em {
    position: absolute;
    right: 0.5rem;
    bottom: 0.38rem;
    left: 0.5rem;
    display: block;
    height: 0.25rem;
    max-width: calc(100% - 1rem);
    background: linear-gradient(90deg, #003366, #04713a);
}

.options-framework-panel,
.options-anomaly-panel {
    min-width: 0;
}

.options-framework-grid,
.options-normal-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.65rem;
}

.options-framework-card,
.options-normal-card {
    min-width: 0;
    padding: 0.72rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-framework-card span,
.options-normal-card span,
.options-anomaly-grid span,
.options-pressure-row span,
.options-window-stack span {
    display: block;
    color: var(--muted);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.options-framework-card strong,
.options-normal-card strong,
.options-anomaly-grid strong {
    display: block;
    margin-top: 0.14rem;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-framework-card p,
.options-anomaly-panel p {
    margin: 0.3rem 0 0;
    color: var(--muted);
    font-weight: 800;
    line-height: 1.4;
}

.options-anomaly-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.2rem;
    height: 3rem;
    border: 1px solid #b9c8d7;
    background: rgb(255 255 255 / 0.75);
    color: var(--brand-deep);
    font-size: 1.2rem;
}

.options-anomaly-panel .options-meter {
    margin-top: 0.7rem;
}

.options-anomaly-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
    margin-top: 0.7rem;
}

.options-anomaly-grid div {
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid #d9e4ef;
    background: rgb(255 255 255 / 0.68);
}

.options-normal-card em {
    display: block;
    margin-top: 0.08rem;
    color: var(--muted);
    font-style: normal;
    font-weight: 900;
}

.options-window-stack {
    display: grid;
    gap: 0.38rem;
    margin-top: 0.5rem;
}

.options-window-stack > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem;
    align-items: center;
}

.options-window-stack .options-meter {
    grid-column: 1 / -1;
}

.options-pressure-trend {
    display: grid;
    gap: 0.6rem;
}

.options-pressure-row {
    display: grid;
    grid-template-columns: minmax(6rem, 0.35fr) minmax(0, 1fr);
    gap: 0.75rem;
    align-items: start;
    min-width: 0;
    padding: 0.58rem 0 0.58rem 0.55rem;
    border-bottom: 1px solid #dce6ef;
    border-left: 0.22rem solid #cbd8e6;
}

.options-pressure-row strong {
    display: block;
    color: var(--brand-deep);
}

.options-pressure-lines {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem 0.65rem;
}

.options-pressure-lines > div {
    min-width: 0;
}

.options-help-title {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
}

.options-help-title--between {
    justify-content: space-between;
}

.options-mini-help {
    display: inline-flex;
    gap: 0.35rem;
    align-items: center;
}

.options-help-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border: 1px solid #b9c8d7;
    background: #f8fbfe;
    color: var(--brand-deep);
    font-size: 0.95rem;
    font-weight: 900;
    cursor: pointer;
}

.options-help-button:hover,
.options-help-button:focus-visible {
    border-color: var(--brand-deep);
    outline: 2px solid rgb(0 51 102 / 0.18);
    outline-offset: 2px;
}

.options-help-button--small {
    width: 1.45rem;
    height: 1.45rem;
    font-size: 0.78rem;
}

.options-signal-card {
    display: grid;
    gap: 0.75rem;
    min-width: 0;
    padding: 0.9rem;
    border: 1px solid var(--line);
    background: #ffffff;
}

.options-signal-card a,
.options-signal-card strong,
.options-signal-card p {
    overflow-wrap: anywhere;
}

.options-signal-top,
.options-contract-row,
.options-heat-row {
    display: grid;
    gap: 0.65rem;
    align-items: center;
}

.options-signal-top {
    grid-template-columns: minmax(0, 1fr) auto;
}

.options-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    border: 1px solid #b9c8d7;
    background: #f8fbfe;
    color: var(--brand-deep);
    font-size: 1.15rem;
    font-weight: 900;
}

.options-tag-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.options-tag {
    display: inline-flex;
    min-height: 1.65rem;
    align-items: center;
    max-width: 100%;
    padding: 0.18rem 0.45rem;
    border: 1px solid #d4e0eb;
    background: #f8fbfe;
    color: var(--brand-deep);
    font-size: 0.7rem;
    font-weight: 900;
    line-height: 1.2;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.options-tag-bullish {
    color: #04713a;
    background: #eef8f2;
}

.options-tag-bearish {
    color: #a33a00;
    background: #fff4ed;
}

.options-tag-volatility {
    color: #003366;
    background: #eef5fb;
}

.options-intent-tag {
    border-color: #b9c8d7;
}

.options-intent-mini {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.55rem;
    padding: 0.65rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-intent-mini div {
    min-width: 0;
}

.options-intent-mini span,
.options-intent-panel span,
.options-intent-evidence span,
.options-intent-metrics span {
    display: block;
    color: var(--muted);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.options-intent-mini strong,
.options-intent-panel strong,
.options-intent-evidence strong,
.options-intent-metrics strong {
    display: block;
    margin-top: 0.12rem;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-intent-mini em,
.options-intent-evidence em {
    display: block;
    margin-top: 0.18rem;
    color: var(--muted);
    font-size: 0.74rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1.35;
}

.options-factor-grid,
.options-detail-stats,
.options-premium-mini,
.options-premium-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.55rem;
}

.options-factor-grid div,
.options-detail-stats div,
.options-premium-mini div,
.options-premium-grid article {
    min-width: 0;
    padding: 0.55rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-factor-grid span,
.options-detail-stats span,
.options-premium-mini span,
.options-premium-grid span {
    display: block;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.options-factor-grid strong,
.options-detail-stats strong,
.options-premium-mini strong,
.options-premium-grid strong {
    display: block;
    margin-top: 0.12rem;
    color: var(--brand-deep);
    font-size: 1rem;
}

.options-premium-grid p {
    margin: 0.25rem 0 0;
    color: var(--muted);
    font-weight: 700;
}

.options-signal-card .options-factor-grid,
.options-signal-card .options-premium-mini {
    gap: 0.45rem;
}

.options-signal-card .options-factor-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.options-signal-card .options-premium-mini {
    grid-template-columns: repeat(auto-fit, minmax(7.2rem, 1fr));
}

.options-signal-card .options-factor-grid span,
.options-signal-card .options-premium-mini span {
    font-size: 0.64rem;
    letter-spacing: 0.04em;
    overflow-wrap: anywhere;
}

.options-pagination {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    align-items: center;
    justify-content: center;
    margin-top: 0.9rem;
    padding-top: 0.9rem;
    border-top: 1px solid #dce6ef;
}

.options-pagination a,
.options-pagination span,
.options-pagination strong {
    display: inline-flex;
    min-height: 2.15rem;
    align-items: center;
    padding: 0.32rem 0.7rem;
    border: 1px solid #cbd8e6;
    background: #fbfdff;
    color: var(--brand-deep);
    font-weight: 900;
}

.options-pagination span {
    color: var(--muted);
}

.options-help-modal[hidden] {
    display: none;
}

.options-help-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 1rem;
}

.options-help-backdrop {
    position: absolute;
    inset: 0;
    border: 0;
    background: rgb(3 20 38 / 0.54);
    cursor: pointer;
}

.options-help-dialog {
    position: relative;
    z-index: 1;
    width: min(46rem, 100%);
    max-height: min(42rem, calc(100vh - 2rem));
    overflow: auto;
    padding: 1.15rem;
    border: 1px solid #b9c8d7;
    background: #ffffff;
    box-shadow: 0 1.5rem 4rem rgb(3 20 38 / 0.28);
}

.options-help-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid #cbd8e6;
    background: #f8fbfe;
    color: var(--brand-deep);
    font-weight: 900;
    cursor: pointer;
}

.options-help-dialog h2 {
    margin-right: 2.75rem;
}

.options-help-dialog > p:not(.intel-kicker):not(.options-help-disclaimer) {
    margin: 0.55rem 0 0;
    color: var(--muted);
    font-weight: 700;
    line-height: 1.5;
}

.options-help-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.75rem;
}

.options-help-grid article {
    padding: 0.7rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-help-read-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
    margin-top: 0.85rem;
}

.options-help-read-grid article {
    padding: 0.75rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-help-read-grid article:first-child {
    border-color: #b8ddc5;
    background: #f3fbf6;
}

.options-help-read-grid article:last-child {
    border-color: #e8c0a8;
    background: #fff7f1;
}

.options-help-grid h3,
.options-help-read-grid h3 {
    margin: 0 0 0.28rem;
    color: var(--brand-deep);
    font-size: 1rem;
}

.options-help-grid p,
.options-help-read-grid p,
.options-help-disclaimer {
    margin: 0;
    color: var(--muted);
    font-weight: 700;
    line-height: 1.45;
}

.options-help-disclaimer {
    margin-top: 0.8rem;
    padding-top: 0.8rem;
    border-top: 1px solid #dce6ef;
}

.options-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
    gap: 0.85rem;
    align-items: start;
    margin-top: 0.85rem;
}

.options-institutional-grid,
.options-visual-grid {
    display: grid;
    gap: 0.85rem;
    align-items: start;
    margin-top: 0.85rem;
}

.options-institutional-grid {
    grid-template-columns: minmax(0, 1.18fr) minmax(23rem, 0.82fr);
}

.options-framework-panel,
.options-anomaly-panel {
    grid-column: 1;
}

.options-market-panel {
    grid-column: 2;
    grid-row: 1 / span 2;
}

.options-visual-grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.92fr);
}

.options-visual-grid--data {
    grid-template-columns: minmax(0, 1.18fr) minmax(21rem, 0.82fr);
}

.options-visual-grid--contracts {
    grid-template-columns: minmax(0, 1fr) minmax(24rem, 0.92fr);
}

.options-strike-preview-panel {
    grid-row: span 2;
}

.options-related-panel .intel-panel-head,
.options-related-panel .options-related-grid {
    margin-left: 0;
    margin-right: 0;
}

.options-panel-link {
    display: inline-flex;
    flex: 0 0 auto;
    min-height: 2rem;
    align-items: center;
    justify-content: center;
    padding: 0.28rem 0.62rem;
    border: 1px solid #b9c8d7;
    background: #ffffff;
    color: var(--brand-deep);
    font-size: 0.82rem;
    font-weight: 900;
    text-decoration: none;
}

.options-panel-link:hover,
.options-panel-link:focus-visible {
    border-color: var(--brand-deep);
    background: #f4f8fc;
    text-decoration: none;
}

.options-market-panel .options-factor-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.options-framework-grid--compact {
    grid-template-columns: repeat(auto-fit, minmax(10.5rem, 1fr));
}

.options-normal-grid--compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.options-score-bars {
    margin-top: 0.8rem;
}

.options-detail-stats {
    margin-top: 0.85rem;
}

.options-intent-panel {
    margin-top: 0.85rem;
    border-left: 0.32rem solid #cbd8e6;
}

.options-intent-panel .intel-panel-head {
    margin-bottom: 0.65rem;
}

.options-intent-panel.options-tone-positive {
    border-left-color: #04713a !important;
}

.options-intent-panel.options-tone-negative {
    border-left-color: #c04a00 !important;
}

.options-intent-panel.options-tone-warning {
    border-left-color: #a87700 !important;
}

.options-intent-score {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3.8rem;
    min-height: 2.35rem;
    padding: 0.22rem 0.55rem;
    border: 1px solid #b9c8d7;
    background: rgb(255 255 255 / 0.76);
    font-size: 1rem;
    text-align: center;
}

.options-intent-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 0.48fr);
    gap: 0.65rem;
    align-items: start;
}

.options-intent-core {
    display: grid;
    gap: 0.55rem;
    min-width: 0;
}

.options-intent-core-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.74fr);
    gap: 0.55rem;
    align-items: stretch;
}

.options-intent-main,
.options-divergence-card,
.options-why-card,
.options-cluster-card {
    min-width: 0;
    padding: 0.66rem;
    border: 1px solid #d9e4ef;
    background: rgb(255 255 255 / 0.82);
}

.options-intent-main > strong,
.options-divergence-card > strong,
.options-cluster-card > strong {
    font-size: 1rem;
    line-height: 1.2;
}

.options-intent-main p,
.options-divergence-card p,
.options-why-card p,
.options-cluster-card p {
    margin: 0.28rem 0 0;
    color: var(--muted);
    font-weight: 800;
    line-height: 1.35;
}

.options-intent-metrics,
.options-intent-evidence {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.4rem;
}

.options-intent-metrics {
    margin-top: 0;
}

.options-intent-metrics div,
.options-intent-evidence div {
    min-width: 0;
    padding: 0.45rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-cluster-list {
    display: grid;
    gap: 0.36rem;
    margin-top: 0.48rem;
}

.options-cluster-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.45rem;
    align-items: center;
    min-width: 0;
    padding: 0.46rem;
    border: 1px solid #d9e4ef;
    border-left: 0.22rem solid #cbd8e6;
    background: #ffffff;
}

.options-cluster-row.options-tone-positive {
    border-left-color: #04713a !important;
}

.options-cluster-row.options-tone-negative {
    border-left-color: #c04a00 !important;
}

.options-cluster-row span {
    margin-top: 0.1rem;
    color: var(--muted);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: 0;
    text-transform: none;
}

.options-cluster-row em {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 4.1rem;
    padding: 0.28rem 0.42rem;
    border: 1px solid #cbd8e6;
    background: #fbfdff;
    color: var(--brand-deep);
    font-style: normal;
    font-weight: 900;
}

.options-intent-evidence {
    margin-top: 0;
}

.options-intent-watchouts {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0;
}

.options-intent-watchouts span {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: 0.18rem 0.45rem;
    border: 1px solid #d7e2ec;
    background: #ffffff;
    color: var(--muted);
    font-size: 0.7rem;
    font-weight: 900;
    line-height: 1.25;
}

.options-detail-panel {
    margin-top: 0.85rem;
}

.options-data-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(20rem, 0.88fr);
    gap: 0.85rem;
    align-items: start;
    margin-top: 0.85rem;
}

.options-data-panel {
    min-width: 0;
}

.options-data-panel:first-child {
    grid-row: span 2;
}

.options-contract-list,
.options-heatmap,
.options-history-list,
.options-expiry-list,
.options-skew-list,
.options-event-list,
.options-related-list {
    display: grid;
    border-top: 1px solid #dce6ef;
}

.options-contract-list--preview,
.options-heatmap--preview,
.options-expiry-list--preview,
.options-skew-list--preview,
.options-pressure-trend--preview {
    min-height: 0;
}

.options-contract-row,
.options-event-row {
    grid-template-columns: minmax(8rem, 0.9fr) minmax(6rem, 0.45fr) minmax(6rem, 0.5fr) repeat(4, minmax(4.5rem, 0.38fr));
    padding: 0.6rem 0;
    border-bottom: 1px solid #dce6ef;
}

.options-contract-row span,
.options-heat-row span,
.options-baseline-card span,
.options-history-row span,
.options-expiry-row span,
.options-skew-row span,
.options-event-row span {
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.options-contract-row strong,
.options-heat-row strong,
.options-baseline-card strong,
.options-history-row strong,
.options-expiry-row strong,
.options-skew-row strong,
.options-event-row strong {
    display: block;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-heat-row {
    grid-template-columns: minmax(5.5rem, 0.4fr) minmax(0, 1fr) minmax(0, 1fr);
    padding: 0.72rem 0;
    border-bottom: 1px solid #dce6ef;
}

.options-heat-band {
    display: grid;
    gap: 0.3rem;
    min-width: 0;
}

.options-heat-band > span {
    display: inline-flex;
    gap: 0.32rem;
    align-items: center;
    min-width: 0;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.options-heat-track {
    height: 0.55rem;
    border: 1px solid #cbd8e6;
    background: #eef3f7;
}

.options-heat-track span {
    display: block;
    height: 100%;
}

.options-heat-track-call span {
    background: #04713a;
}

.options-heat-track-put span {
    background: #c04a00;
}

.options-call-band span {
    color: #04713a;
}

.options-put-band span {
    color: #a33a00;
}

.options-contracts-panel .options-contract-list {
    max-height: 42rem;
    overflow: auto;
    padding-right: 0.35rem;
}

.options-contracts-panel .options-contract-list::-webkit-scrollbar {
    width: 0.55rem;
}

.options-contracts-panel .options-contract-list::-webkit-scrollbar-thumb {
    background: #c5d5e5;
}

.options-accordion-stack {
    display: grid;
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.options-shell > .options-accordion {
    margin-top: 0.85rem;
}

.options-accordion {
    border: 1px solid var(--line);
    background: #ffffff;
    box-shadow: var(--shadow-soft);
}

.options-accordion summary {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    cursor: pointer;
    list-style: none;
}

.options-accordion summary::-webkit-details-marker {
    display: none;
}

.options-accordion summary h2 {
    margin: 0.15rem 0 0;
}

.options-accordion summary > span {
    display: inline-flex;
    flex-shrink: 0;
    gap: 0.35rem;
    align-items: center;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 900;
}

.options-accordion summary .bi {
    width: 0.9rem;
    height: 0.9rem;
    transition: transform 160ms ease;
}

.options-accordion[open] summary {
    border-bottom: 1px solid #dce6ef;
    background:
        linear-gradient(135deg, rgb(0 51 102 / 0.045), transparent 60%),
        #ffffff;
}

.options-accordion[open] summary .bi {
    transform: rotate(180deg);
}

.options-accordion > .options-heatmap,
.options-accordion > .options-expiry-list,
.options-accordion > .options-skew-list,
.options-accordion > .options-contract-list {
    margin: 0 1rem 1rem;
}

.options-contract-row--call {
    border-left: 0.22rem solid #04713a;
    padding-left: 0.45rem;
}

.options-contract-row--put {
    border-left: 0.22rem solid #c04a00;
    padding-left: 0.45rem;
}

.options-contract-list--preview .options-contract-row {
    grid-template-columns: minmax(9rem, 1fr) repeat(3, minmax(4.8rem, 0.42fr)) repeat(3, minmax(4rem, 0.34fr));
}

.options-drilldown-panel {
    margin-top: 0.85rem;
}

.options-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    align-items: center;
    margin-bottom: 0.75rem;
    color: var(--muted);
    font-size: 0.82rem;
    font-weight: 900;
}

.options-breadcrumbs a {
    color: var(--brand-deep);
    text-decoration: none;
}

.options-breadcrumbs a:hover,
.options-breadcrumbs a:focus-visible {
    text-decoration: underline;
}

.options-breadcrumbs .terminal-separator::before {
    content: "/";
    color: #8aa0b5;
}

.options-drilldown-list {
    display: grid;
    gap: 0.55rem;
    margin-top: 0.8rem;
    border-top: 1px solid #dce6ef;
}

.options-drilldown-row {
    display: grid;
    gap: 0.65rem;
    align-items: center;
    min-width: 0;
    padding: 0.78rem 0.7rem;
    border: 1px solid #d9e4ef;
    border-top: 0;
    background:
        linear-gradient(135deg, rgb(0 51 102 / 0.025), transparent 60%),
        #fbfdff;
}

.options-drilldown-strikes .options-drilldown-row {
    grid-template-columns: minmax(6.5rem, 0.38fr) minmax(0, 1fr) minmax(0, 1fr);
}

.options-drilldown-contracts .options-drilldown-row {
    grid-template-columns: minmax(10rem, 1fr) minmax(5rem, 0.36fr) minmax(6rem, 0.42fr) repeat(4, minmax(4.5rem, 0.34fr));
}

.options-drilldown-history .options-drilldown-row {
    grid-template-columns: minmax(6rem, 0.45fr) minmax(7rem, 0.45fr) repeat(4, minmax(5.5rem, 0.42fr));
}

.options-drilldown-row span,
.options-drilldown-row small {
    display: block;
    color: var(--muted);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.25;
    text-transform: uppercase;
}

.options-drilldown-row strong {
    display: block;
    margin-top: 0.12rem;
    color: var(--brand-deep);
    overflow-wrap: anywhere;
}

.options-drilldown-row .options-heat-track {
    margin-top: 0.35rem;
}

.options-drilldown-row .options-call-band span,
.options-drilldown-row .options-call-band strong {
    color: #04713a;
}

.options-drilldown-row .options-put-band span,
.options-drilldown-row .options-put-band strong {
    color: #a33a00;
}

.options-baseline-grid,
.options-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.options-baseline-card,
.options-related-grid article {
    min-width: 0;
    padding: 0.7rem;
    border: 1px solid #d9e4ef;
    background: #fbfdff;
}

.options-baseline-card {
    display: grid;
    gap: 0.35rem;
}

.options-baseline-card em,
.options-event-row em,
.options-related-list span {
    display: block;
    color: var(--muted);
    font-style: normal;
    font-weight: 700;
}

.options-baseline-card p {
    margin: 0;
    color: var(--muted);
    font-weight: 700;
}

.options-history-row,
.options-expiry-row,
.options-skew-row,
.options-event-row {
    display: grid;
    gap: 0.65rem;
    align-items: center;
    padding: 0.62rem 0;
    border-bottom: 1px solid #dce6ef;
}

.options-history-row {
    grid-template-columns: minmax(8rem, 0.55fr) minmax(10rem, 1fr) minmax(8rem, 0.6fr);
}

.options-history-row > div:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.options-expiry-row {
    grid-template-columns: repeat(4, minmax(5.5rem, 0.5fr)) minmax(9rem, 1fr);
}

.options-expiry-bar {
    height: 0.55rem;
    border: 1px solid #cbd8e6;
    background: #eef3f7;
}

.options-expiry-bar span {
    display: block;
    height: 100%;
    background: linear-gradient(90deg, #003366, #04713a);
}

.options-skew-row {
    grid-template-columns: minmax(8rem, 1fr) repeat(3, minmax(4.5rem, 0.4fr));
}

.options-event-row {
    grid-template-columns: minmax(6.5rem, 0.5fr) minmax(12rem, 1.2fr) minmax(10rem, 1fr) repeat(3, minmax(5.5rem, 0.45fr));
}

.options-event-row--wide {
    grid-template-columns: minmax(6.5rem, 0.45fr) minmax(12rem, 1.15fr) minmax(10rem, 1fr) repeat(3, minmax(5.5rem, 0.45fr));
}

.options-related-grid h3 {
    margin: 0 0 0.45rem;
    color: var(--brand-deep);
    font-size: 1rem;
}

.options-related-list a {
    display: grid;
    gap: 0.15rem;
    padding: 0.48rem 0;
    border-bottom: 1px solid #dce6ef;
}

.options-related-list a:last-child {
    border-bottom: 0;
}

@media (max-width: 1200px) {
    .options-signal-grid {
        grid-template-columns: 1fr 1fr;
    }

    .options-angle-grid,
    .options-framework-grid,
    .options-normal-grid,
    .options-intent-layout,
    .options-intent-core-row {
        grid-template-columns: 1fr 1fr;
    }

    .options-highlight-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .options-anomaly-grid,
    .options-detail-grid,
    .options-institutional-grid,
    .options-visual-grid,
    .options-visual-grid--data,
    .options-visual-grid--contracts,
    .options-data-grid,
    .options-factor-grid,
    .options-detail-stats,
    .options-premium-mini,
    .options-premium-grid,
    .options-intent-evidence,
    .options-intent-metrics,
    .options-baseline-grid,
    .options-related-grid {
        grid-template-columns: 1fr 1fr;
    }

    .options-market-panel,
    .options-strike-preview-panel {
        grid-column: auto;
        grid-row: auto;
    }

    .options-institutional-grid,
    .options-visual-grid,
    .options-visual-grid--data,
    .options-visual-grid--contracts {
        grid-template-columns: 1fr;
    }

    .options-contract-row,
    .options-heat-row,
    .options-history-row,
    .options-expiry-row,
    .options-skew-row,
    .options-event-row,
    .options-event-row--wide {
        grid-template-columns: 1fr 1fr;
    }

    .options-contract-list--preview .options-contract-row,
    .options-drilldown-contracts .options-drilldown-row,
    .options-drilldown-history .options-drilldown-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .options-drilldown-strikes .options-drilldown-row {
        grid-template-columns: 1fr;
    }

    .options-signal-card .options-factor-grid,
    .options-signal-card .options-premium-mini {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .options-band-card {
        grid-template-columns: 4.8rem minmax(0, 1fr);
    }

    .options-band-metrics,
    .options-band-score-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .options-data-panel:first-child {
        grid-row: auto;
    }
}

@media (max-width: 560px) {
    .options-signal-grid,
    .options-angle-grid,
    .options-framework-grid,
    .options-normal-grid,
    .options-anomaly-grid,
    .options-detail-grid,
    .options-institutional-grid,
    .options-visual-grid,
    .options-visual-grid--data,
    .options-visual-grid--contracts,
    .options-data-grid,
    .options-factor-grid,
    .options-detail-stats,
    .options-premium-mini,
    .options-premium-grid,
    .options-contract-row,
    .options-heat-row,
    .options-intent-mini,
    .options-baseline-grid,
    .options-related-grid,
    .options-history-row,
    .options-expiry-row,
    .options-skew-row,
    .options-event-row,
    .options-event-row--wide,
    .options-contract-list--preview .options-contract-row,
    .options-drilldown-contracts .options-drilldown-row,
    .options-drilldown-history .options-drilldown-row {
        grid-template-columns: 1fr;
    }

    .options-pressure-row,
    .options-pressure-lines {
        grid-template-columns: 1fr;
    }

    .options-highlight-grid {
        grid-template-columns: 1fr;
    }

    .options-help-grid,
    .options-help-read-grid {
        grid-template-columns: 1fr;
    }

    .options-band-card {
        grid-template-columns: 1fr;
    }

    .options-band-rank {
        grid-template-columns: auto auto;
        justify-content: space-between;
        border-right: 0;
        border-bottom: 1px solid #dce6ef;
    }

    .options-band-title,
    .options-band-metrics,
    .options-intent-layout,
    .options-intent-core-row,
    .options-intent-evidence,
    .options-intent-metrics,
    .options-band-score-grid {
        grid-template-columns: 1fr;
    }
}
