/* /Components/Account/BrokerageCard.razor.rz.scp.css */
/* The /account "Connected brokerage" section. The site is dark-only; colours come from app.css tokens. */
.bk[b-86eru04kg2] {
    position: relative;
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    background: var(--bg-gradient-card);
    overflow: hidden;
    padding: var(--space-5);
}

/* ---- hero ------------------------------------------------------------------------------------------------ */

.bk-hero[b-86eru04kg2] {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--space-6);
    margin: calc(var(--space-5) * -1) calc(var(--space-5) * -1) var(--space-5);
    padding: var(--space-6) var(--space-5);
    border-bottom: 1px solid var(--border);
    background:
        radial-gradient(ellipse 60% 120% at 100% 0%, rgba(26, 140, 255, 0.18), transparent 60%),
        radial-gradient(ellipse 50% 100% at 0% 100%, rgba(19, 223, 255, 0.12), transparent 60%),
        linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px) 0 0 / 100% 24px,
        linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px) 0 0 / 24px 100%;
}

.bk-hero-text[b-86eru04kg2] {
    flex: 1;
    min-width: 0;
}

.bk-eyebrow[b-86eru04kg2] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    font-size: var(--text-xs);
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--primary);
}

.bk-preview[b-86eru04kg2] {
    font-size: var(--text-2xs);
    padding: 2px 8px;
    border-radius: var(--radius-sm);
    background: var(--warning-bg);
    color: var(--warning);
    letter-spacing: 0.04em;
}

.bk-hero h2[b-86eru04kg2] {
    margin: var(--space-2) 0 var(--space-2);
    font-size: clamp(1.25rem, 2.4vw, 1.75rem);
    font-weight: 700;
    line-height: 1.2;
    background: linear-gradient(90deg, var(--text-primary) 0%, var(--primary) 70%, #1a8cff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.bk-lede[b-86eru04kg2] {
    font-size: var(--text-sm);
    color: var(--text-secondary);
    margin: 0;
    line-height: var(--leading-relaxed);
    max-width: 60ch;
}

.bk-lede strong[b-86eru04kg2] {
    color: var(--text-primary);
}

.bk-trust[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    list-style: none;
    padding: 0;
    margin: var(--space-4) 0 0;
}

.bk-trust li[b-86eru04kg2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border: 1px solid var(--border);
    border-radius: var(--radius-full);
    background: rgba(255, 255, 255, 0.03);
    font-size: var(--text-xs);
    color: var(--text-secondary);
}

.bk-trust svg[b-86eru04kg2] {
    color: var(--success);
}

/* TickIQ ⇄ Alpaca: the wire flows while an account is linked */
.bk-link[b-86eru04kg2] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.bk-node[b-86eru04kg2] {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    border: 1px solid var(--border);
    background: rgba(255, 255, 255, 0.03);
}

.bk-node.tickiq[b-86eru04kg2] {
    border-color: var(--primary-border);
    box-shadow: 0 0 24px var(--primary-glow), inset 0 0 12px rgba(19, 223, 255, 0.08);
}

.bk-node.tickiq img[b-86eru04kg2] {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.bk-node.broker[b-86eru04kg2] {
    color: var(--text-secondary);
}

.bk-node.broker span[b-86eru04kg2] {
    font-size: var(--text-2xs);
    font-weight: 600;
    letter-spacing: 0.04em;
}

.bk-link.on .bk-node.broker[b-86eru04kg2] {
    color: var(--success);
    border-color: rgba(16, 235, 107, 0.35);
    box-shadow: 0 0 20px rgba(16, 235, 107, 0.15);
}

.bk-wire[b-86eru04kg2] {
    position: relative;
    width: 96px;
    height: 20px;
}

.bk-wire svg[b-86eru04kg2] {
    width: 100%;
    height: 100%;
    overflow: visible;
}

.bk-wire-track[b-86eru04kg2] {
    stroke: var(--border);
    stroke-width: 2;
}

.bk-wire-flow[b-86eru04kg2] {
    stroke: var(--text-muted);
    stroke-width: 2;
    stroke-dasharray: 4 8;
    stroke-linecap: round;
}

.bk-link.on .bk-wire-flow[b-86eru04kg2] {
    stroke: var(--primary);
    filter: drop-shadow(0 0 3px var(--primary));
    animation: bk-flow-b-86eru04kg2 1.1s linear infinite;
}

@keyframes bk-flow-b-86eru04kg2 {
    to { stroke-dashoffset: -24; }
}

.bk-wire-lock[b-86eru04kg2] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    color: var(--success);
}

/* ---- messages ------------------------------------------------------------------------------------------- */

.bk-muted[b-86eru04kg2] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.bk-status[b-86eru04kg2] {
    font-size: var(--text-sm);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    margin-bottom: var(--space-4);
}

.bk-status.ok[b-86eru04kg2] {
    background: var(--success-bg);
    color: var(--success);
}

.bk-status.warn[b-86eru04kg2] {
    background: var(--warning-bg);
    color: var(--warning);
}

.bk-error[b-86eru04kg2] {
    margin: var(--space-2) 0 0;
    font-size: var(--text-sm);
    color: var(--warning);
}

/* ---- account cards -------------------------------------------------------------------------------------- */

.bk-accounts[b-86eru04kg2] {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--space-4);
}

.bk-accounts.multi[b-86eru04kg2] {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.bk-acct[b-86eru04kg2] {
    position: relative;
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: var(--space-4);
    background: rgba(255, 255, 255, 0.02);
    overflow: hidden;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.bk-acct[b-86eru04kg2]::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--bk-accent, var(--primary)), transparent);
    opacity: 0.8;
}

.bk-acct.live[b-86eru04kg2] { --bk-accent: var(--success); }
.bk-acct.paper[b-86eru04kg2] { --bk-accent: var(--info); }

.bk-acct:hover[b-86eru04kg2] {
    border-color: rgba(255, 255, 255, 0.12);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.bk-acct.skeleton[b-86eru04kg2] {
    min-height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.02) 0%, rgba(255, 255, 255, 0.05) 50%, rgba(255, 255, 255, 0.02) 100%) 0 0 / 200% 100%;
    animation: bk-shimmer-b-86eru04kg2 1.4s ease-in-out infinite;
}

@keyframes bk-shimmer-b-86eru04kg2 {
    to { background-position: -200% 0; }
}

.bk-acct-head[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2);
}

.bk-acct-name[b-86eru04kg2] {
    font-weight: 600;
    font-size: var(--text-md, 1rem);
}

.bk-env[b-86eru04kg2],
.bk-pill[b-86eru04kg2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: var(--text-2xs);
    font-weight: 700;
    padding: 3px 8px;
    border-radius: var(--radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.bk-env.live[b-86eru04kg2] {
    background: var(--success-bg);
    color: var(--success);
}

.bk-env.paper[b-86eru04kg2] {
    background: var(--info-bg);
    color: #7fb0ff;
}

.bk-dot[b-86eru04kg2] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.bk-env.live .bk-dot[b-86eru04kg2] {
    box-shadow: 0 0 0 0 rgba(16, 235, 107, 0.6);
    animation: bk-pulse-b-86eru04kg2 2s ease-out infinite;
}

@keyframes bk-pulse-b-86eru04kg2 {
    0% { box-shadow: 0 0 0 0 rgba(16, 235, 107, 0.55); }
    70% { box-shadow: 0 0 0 6px rgba(16, 235, 107, 0); }
    100% { box-shadow: 0 0 0 0 rgba(16, 235, 107, 0); }
}

.bk-pill[b-86eru04kg2] {
    margin-left: auto;
}

.bk-pill.ok[b-86eru04kg2] {
    background: var(--success-bg);
    color: var(--success);
}

.bk-pill.info[b-86eru04kg2] {
    background: var(--info-bg);
    color: #7fb0ff;
}

.bk-pill.warn[b-86eru04kg2] {
    background: var(--warning-bg);
    color: var(--warning);
}

.bk-spin[b-86eru04kg2] {
    width: 9px;
    height: 9px;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: bk-rotate-b-86eru04kg2 0.8s linear infinite;
}

@keyframes bk-rotate-b-86eru04kg2 {
    to { transform: rotate(360deg); }
}

.bk-equity[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--space-2) var(--space-3);
    margin-top: var(--space-4);
}

.bk-label[b-86eru04kg2] {
    width: 100%;
    font-size: var(--text-xs);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.bk-equity-value[b-86eru04kg2] {
    font-family: var(--font-mono);
    font-size: clamp(1.5rem, 3vw, 2rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
}

.bk-change[b-86eru04kg2] {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    font-weight: 600;
    padding: 2px 8px;
    border-radius: var(--radius-sm);
}

.bk-change.up[b-86eru04kg2],
.bk-kpis dd.up[b-86eru04kg2] {
    color: var(--success);
}

.bk-change.up[b-86eru04kg2] {
    background: var(--success-bg);
}

.bk-change.down[b-86eru04kg2],
.bk-kpis dd.down[b-86eru04kg2] {
    color: var(--error);
}

.bk-change.down[b-86eru04kg2] {
    background: var(--error-bg);
}

.bk-spark[b-86eru04kg2] {
    margin: var(--space-3) calc(var(--space-4) * -1) 0;
    height: 64px;
}

.bk-spark-cap[b-86eru04kg2] {
    font-size: var(--text-2xs);
    color: var(--text-muted);
    margin-top: 2px;
}

.bk-kpis[b-86eru04kg2] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));   /* six figures: always two full rows */
    gap: 1px;
    margin: var(--space-4) 0 0;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--border);
}

.bk-kpis > div[b-86eru04kg2] {
    padding: var(--space-2) var(--space-3);
    background: var(--bg-elevated);
}

.bk-kpis dt[b-86eru04kg2] {
    font-size: var(--text-2xs);
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.bk-kpis dd[b-86eru04kg2] {
    margin: 2px 0 0;
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.bk-acct-foot[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
    margin-top: var(--space-3);
}

.bk-sync[b-86eru04kg2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--text-xs);
    color: var(--text-muted);
}

.bk-sync .bk-dot[b-86eru04kg2] {
    color: var(--text-muted);
}

.bk-sync.streaming .bk-dot[b-86eru04kg2] {
    color: var(--success);
    animation: bk-pulse-b-86eru04kg2 2s ease-out infinite;
}

.bk-sync.delayed[b-86eru04kg2] {
    color: var(--warning);
}

.bk-sync.delayed .bk-dot[b-86eru04kg2] {
    color: var(--warning);
}

.bk-acct-actions[b-86eru04kg2] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
}

.bk-link-btn[b-86eru04kg2] {
    background: none;
    border: none;
    padding: 4px 0;
    font-size: var(--text-xs);
    color: var(--text-muted);
    cursor: pointer;
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.bk-link-btn:hover[b-86eru04kg2] {
    color: var(--error);
    text-decoration-color: currentColor;
}

/* ---- launch tiles --------------------------------------------------------------------------------------- */

.bk-launch[b-86eru04kg2] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--space-3);
    margin-top: var(--space-4);
}

.bk-tile[b-86eru04kg2] {
    position: relative;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: rgba(255, 255, 255, 0.02);
    color: inherit;
    text-decoration: none;
    transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.bk-tile:hover[b-86eru04kg2] {
    transform: translateY(-2px);
    border-color: var(--primary-border);
    box-shadow: 0 6px 24px rgba(19, 223, 255, 0.12);
}

.bk-tile-icon[b-86eru04kg2] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #fff;
}

.bk-tile-icon.cockpit[b-86eru04kg2] { background: linear-gradient(135deg, #13dfff, #1a8cff); }
.bk-tile-icon.chart[b-86eru04kg2] { background: linear-gradient(135deg, #10eb6b, #0fb5a0); }
.bk-tile-icon.edge[b-86eru04kg2] { background: linear-gradient(135deg, #a78bfa, #3b82f6); }

.bk-tile-text[b-86eru04kg2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.bk-tile-text strong[b-86eru04kg2] {
    font-size: var(--text-sm);
}

.bk-tile-text span[b-86eru04kg2] {
    font-size: var(--text-xs);
    color: var(--text-muted);
    line-height: 1.35;
}

.bk-tile-arrow[b-86eru04kg2] {
    margin-left: auto;
    color: var(--text-muted);
    transition: transform 0.15s ease, color 0.15s ease;
}

.bk-tile:hover .bk-tile-arrow[b-86eru04kg2] {
    color: var(--primary);
    transform: translateX(3px);
}

/* ---- buttons, connect, disclosure ------------------------------------------------------------------------ */

.bk-actions[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    margin-top: var(--space-3);
}

.bk-btn[b-86eru04kg2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: var(--text-sm);
    font-weight: 500;
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
    background: rgba(255, 255, 255, 0.03);
    color: var(--text-secondary);
    cursor: pointer;
    transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.bk-btn:hover:not(:disabled)[b-86eru04kg2] {
    border-color: var(--primary-border);
    color: var(--text-primary);
}

.bk-btn:disabled[b-86eru04kg2] {
    opacity: 0.6;
    cursor: default;
}

.bk-btn.primary[b-86eru04kg2] {
    border-color: transparent;
    background: linear-gradient(135deg, #13dfff, #1a8cff);
    color: #04121a;
    font-weight: 600;
}

.bk-btn.primary:hover:not(:disabled)[b-86eru04kg2] {
    color: #04121a;
    box-shadow: 0 0 20px var(--primary-glow-strong);
}

.bk-btn.danger[b-86eru04kg2] {
    border-color: var(--error);
    color: var(--error);
}

.bk-btn.sm[b-86eru04kg2] {
    padding: 4px 10px;
    font-size: var(--text-xs);
}

.bk-btn.lg[b-86eru04kg2] {
    padding: var(--space-3) var(--space-5);
}

.bk-connect[b-86eru04kg2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--space-2) var(--space-3);
    margin-top: var(--space-4);
}

.bk-confirm[b-86eru04kg2] {
    margin-top: var(--space-3);
    padding: var(--space-3);
    border-radius: var(--radius-md);
    background: var(--error-bg);
    font-size: var(--text-sm);
}

.bk-confirm p[b-86eru04kg2] {
    margin: 0 0 var(--space-2) 0;
}

.bk-check[b-86eru04kg2] {
    display: flex;
    gap: var(--space-2);
    align-items: flex-start;
    margin: 0 0 var(--space-2) 0;
    cursor: pointer;
}

.bk-check input[b-86eru04kg2] {
    margin-top: 3px;
}

.bk-disclosure[b-86eru04kg2] {
    margin-top: var(--space-4);
    padding: var(--space-4);
    border: 1px solid var(--primary-border);
    border-radius: var(--radius-lg);
    background: var(--primary-soft);
    font-size: var(--text-sm);
    line-height: var(--leading-relaxed);
}

.bk-disclosure h4[b-86eru04kg2] {
    margin: 0 0 var(--space-2) 0;
    font-size: var(--text-base, 1rem);
}

.bk-disclosure p[b-86eru04kg2] {
    margin: 0 0 var(--space-2) 0;
}

.bk-disclosure a[b-86eru04kg2],
.bk-foot a[b-86eru04kg2] {
    color: var(--primary);
}

.bk-foot[b-86eru04kg2] {
    margin: var(--space-4) 0 0 0;
    font-size: var(--text-xs);
}

/* ---- small screens -------------------------------------------------------------------------------------- */

@media (max-width: 900px) {
    .bk-launch[b-86eru04kg2] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .bk[b-86eru04kg2] {
        padding: var(--space-4);
    }

    .bk-hero[b-86eru04kg2] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--space-4);
        margin: calc(var(--space-4) * -1) calc(var(--space-4) * -1) var(--space-4);
        padding: var(--space-5) var(--space-4);
    }

    .bk-link[b-86eru04kg2] {
        align-self: center;
    }

    .bk-accounts.multi[b-86eru04kg2] {
        grid-template-columns: 1fr;
    }

    .bk-kpis[b-86eru04kg2] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bk-spark[b-86eru04kg2] {
        margin: var(--space-3) calc(var(--space-4) * -1) 0;
    }

    .bk-pill[b-86eru04kg2] {
        margin-left: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bk-link.on .bk-wire-flow[b-86eru04kg2],
    .bk-env.live .bk-dot[b-86eru04kg2],
    .bk-sync.streaming .bk-dot[b-86eru04kg2],
    .bk-acct.skeleton[b-86eru04kg2],
    .bk-spin[b-86eru04kg2] {
        animation: none;
    }
}
/* /Components/Admin/Social/SocialPostCard.razor.rz.scp.css */
.pc[b-l1stgo0iqs] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; overflow: hidden; }
.pc.pick[b-l1stgo0iqs] { border-color: #226d78; }
.pc.compact[b-l1stgo0iqs] { grid-template-columns: 1fr; }
.pc-preview[b-l1stgo0iqs] { background: #0b0e13; padding: 12px; display: flex; flex-direction: column; gap: 8px; border-right: 1px solid #1b2028; }
.pc-body[b-l1stgo0iqs] { padding: 14px 16px; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.pc-img[b-l1stgo0iqs] { width: 100%; border-radius: 8px; display: block; }
.pc-title[b-l1stgo0iqs] { color: #fff; font-size: 16px; font-weight: 600; line-height: 1.35; }

.pc-row[b-l1stgo0iqs] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.pc-row.small[b-l1stgo0iqs] { font-size: 12px; }
.pc-row.between[b-l1stgo0iqs] { justify-content: space-between; }
.pc-row.links a[b-l1stgo0iqs] { color: #58a6ff; }
.push[b-l1stgo0iqs] { margin-left: auto; }
.dim[b-l1stgo0iqs] { color: #7d8590; }
.small[b-l1stgo0iqs] { font-size: 12px; }
.bad[b-l1stgo0iqs] { color: #f0a5a9; }
.warn[b-l1stgo0iqs] { color: #e0a838; }
.empty[b-l1stgo0iqs] { color: #7d8590; padding: 30px; text-align: center; }

.seg[b-l1stgo0iqs] { background: transparent; color: #9aa4b2; border: 1px solid transparent; border-radius: 6px; padding: 4px 10px; font-size: 12px; cursor: pointer; }
.seg.on[b-l1stgo0iqs] { background: #0f2e2b; color: #5fcdde; border-color: #226d78; font-weight: 600; }

.chip[b-l1stgo0iqs] { font-size: 11px; padding: 2px 8px; border-radius: 10px; border: 1px solid #2b313a; color: #c3ccd8; background: #161b22; }
.chip.gold[b-l1stgo0iqs] { color: #5fcdde; border-color: #226d78; background: #0f2e2b; font-weight: 700; }
.chip.dim[b-l1stgo0iqs] { color: #7d8590; }
.chip.bad[b-l1stgo0iqs] { color: #f0a5a9; border-color: #d1434b; background: #2a1215; }

.note[b-l1stgo0iqs] { color: #9aa4b2; font-size: 13px; margin-top: 4px; }
.note b[b-l1stgo0iqs] { color: #e6e6e6; }
.note.bad[b-l1stgo0iqs] { color: #f0a5a9; }

.caption[b-l1stgo0iqs] { width: 100%; min-height: 160px; box-sizing: border-box; background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px; padding: 10px; font: 13px/1.5 'JetBrains Mono', monospace; resize: vertical; }
.caption.short[b-l1stgo0iqs] { min-height: 90px; font-family: inherit; }
.flag[b-l1stgo0iqs] { font-size: 12px; color: #f0a5a9; background: #2a1215; border: 1px solid #5a2228; border-radius: 6px; padding: 4px 8px; }

.approve[b-l1stgo0iqs] { display: flex; flex-direction: column; gap: 8px; padding: 10px; background: #0b0e13; border: 1px solid #1b2028; border-radius: 8px; }
.check[b-l1stgo0iqs] { display: flex; align-items: center; gap: 6px; cursor: pointer; }
.hand[b-l1stgo0iqs] { font-size: 11px; color: #e0a838; }
.slot[b-l1stgo0iqs] { background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px; padding: 5px 8px; font-size: 13px; color-scheme: dark; }

.btn[b-l1stgo0iqs] { background: #161b22; color: #d6dbe1; border: 1px solid #2b313a; border-radius: 6px; padding: 7px 12px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.btn.primary[b-l1stgo0iqs] { background: #0e91a5; color: #fff; border-color: #0e91a5; }
.btn.ghost[b-l1stgo0iqs] { background: transparent; border-color: transparent; color: #9aa4b2; }
.btn.ghost:hover[b-l1stgo0iqs] { color: #e6e6e6; }
.btn.danger:hover[b-l1stgo0iqs] { color: #f0a5a9; }
.btn:disabled[b-l1stgo0iqs] { opacity: .55; cursor: default; }

.msg[b-l1stgo0iqs] { font-size: 13px; white-space: pre-line; padding: 8px 10px; border-radius: 6px; }
.msg.ok[b-l1stgo0iqs] { color: #7ee787; background: #0f2416; }
.msg.bad[b-l1stgo0iqs] { color: #f0a5a9; background: #2a1215; }

.deliveries[b-l1stgo0iqs] { display: flex; flex-direction: column; gap: 6px; }
.delivery[b-l1stgo0iqs] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 12px; border: 1px solid #1b2028; border-radius: 8px; padding: 6px 10px; background: #0b0e13; }
.delivery b[b-l1stgo0iqs] { color: #e6e6e6; }
.delivery a[b-l1stgo0iqs] { color: #58a6ff; }
.delivery .full[b-l1stgo0iqs] { flex-basis: 100%; }
.actions[b-l1stgo0iqs] { display: flex; flex-wrap: wrap; gap: 10px; }
.link[b-l1stgo0iqs] { background: none; border: none; padding: 0; color: #58a6ff; cursor: pointer; font-size: 12px; }
.link.dim[b-l1stgo0iqs] { color: #7d8590; }
.link.warn[b-l1stgo0iqs] { color: #e0a838; }
.link:disabled[b-l1stgo0iqs] { opacity: .5; }

.status[b-l1stgo0iqs] { font-size: 10px; padding: 2px 8px; border-radius: 4px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; white-space: nowrap; }
.st-sent[b-l1stgo0iqs] { background: #0f2416; color: #7ee787; }
.st-scheduled[b-l1stgo0iqs] { background: #12324f; color: #58a6ff; }
.st-hand[b-l1stgo0iqs] { background: #3a2a12; color: #e0a838; }
.st-unknown[b-l1stgo0iqs] { background: #3a2a12; color: #f5b942; }
.st-bad[b-l1stgo0iqs] { background: #2a1215; color: #f0a5a9; }
.st-muted[b-l1stgo0iqs] { background: #1b2028; color: #8b95a3; }

.phone[b-l1stgo0iqs] { margin: 0 auto; width: 360px; max-width: 100%; border: 4px solid #2b313a; border-radius: 28px; background: #000; padding: 12px; color: #fff; font-size: 13px; }
.phone-head[b-l1stgo0iqs] { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
.phone-head img[b-l1stgo0iqs] { width: 32px; height: 32px; border-radius: 8px; }
.phone-head div[b-l1stgo0iqs] { display: flex; flex-direction: column; line-height: 1.2; }
.phone-head span[b-l1stgo0iqs] { color: #8b98a5; font-size: 12px; }
.phone-text[b-l1stgo0iqs] { white-space: pre-line; margin-bottom: 8px; max-height: 9.5em; overflow: hidden; }
.phone-img[b-l1stgo0iqs] { width: 100%; border-radius: 12px; border: 1px solid #2f3336; display: block; }

@media (max-width: 1000px) {
    .pc[b-l1stgo0iqs] { grid-template-columns: 1fr; }
    .pc-preview[b-l1stgo0iqs] { border-right: none; border-bottom: 1px solid #1b2028; }
}
/* /Components/Alerts/AddAlertModal.razor.rz.scp.css */
/* Modal Overlay */
.modal-overlay[b-c7jrc3fjvm] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    backdrop-filter: blur(4px);
}

/* Modal Container */
.alert-modal[b-c7jrc3fjvm] {
    background: var(--bg-card, #1a1a2e);
    border-radius: 12px;
    width: 90%;
    max-width: 520px;
    max-height: 85vh;
    overflow-y: auto;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
}

/* Header */
.modal-header[b-c7jrc3fjvm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-header, rgba(255, 255, 255, 0.02));
}

.modal-header h3[b-c7jrc3fjvm] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.modal-header h3 i[b-c7jrc3fjvm] {
    color: var(--accent-blue, #60a5fa);
}

.modal-close[b-c7jrc3fjvm] {
    background: none;
    border: none;
    color: var(--text-muted, #888);
    font-size: 1.2rem;
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 6px;
    transition: all 0.2s;
}

.modal-close:hover[b-c7jrc3fjvm] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary, #fff);
}

/* Body */
.modal-body[b-c7jrc3fjvm] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Error Message */
.alert-error[b-c7jrc3fjvm] {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #ef4444;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Form Groups */
.form-group[b-c7jrc3fjvm] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-group label[b-c7jrc3fjvm] {
    font-size: 0.8rem;
    color: var(--text-muted, #888);
    font-weight: 500;
}

.form-group input[b-c7jrc3fjvm],
.form-group select[b-c7jrc3fjvm],
.form-group textarea[b-c7jrc3fjvm] {
    background: var(--bg-input, rgba(255, 255, 255, 0.05));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    color: var(--text-primary, #fff);
    font-size: 0.9rem;
    transition: border-color 0.2s;
}

.form-group input:focus[b-c7jrc3fjvm],
.form-group select:focus[b-c7jrc3fjvm],
.form-group textarea:focus[b-c7jrc3fjvm] {
    outline: none;
    border-color: var(--accent-blue, #60a5fa);
}

.form-group textarea[b-c7jrc3fjvm] {
    min-height: 60px;
    resize: vertical;
}

.form-row[b-c7jrc3fjvm] {
    display: flex;
    gap: 0.75rem;
}

.flex-1[b-c7jrc3fjvm] {
    flex: 1;
}

.flex-half[b-c7jrc3fjvm] {
    flex: 0.5;
}

/* Alert Type Buttons */
.alert-type-buttons[b-c7jrc3fjvm] {
    display: flex;
    gap: 0.5rem;
}

.type-btn[b-c7jrc3fjvm] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem 0.5rem;
    background: var(--bg-input, rgba(255, 255, 255, 0.05));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    border-radius: 8px;
    color: var(--text-muted, #888);
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.2s;
}

.type-btn i[b-c7jrc3fjvm] {
    font-size: 1.1rem;
}

.type-btn:hover[b-c7jrc3fjvm] {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-primary, #fff);
}

.type-btn.active[b-c7jrc3fjvm] {
    background: rgba(96, 165, 250, 0.15);
    border-color: var(--accent-blue, #60a5fa);
    color: var(--accent-blue, #60a5fa);
}

.type-btn.small[b-c7jrc3fjvm] {
    flex-direction: row;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
}

/* Condition Sections */
.condition-section[b-c7jrc3fjvm] {
    background: var(--bg-input, rgba(255, 255, 255, 0.03));
    border-radius: 8px;
    padding: 1rem;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.05));
}

.condition-section h4[b-c7jrc3fjvm] {
    margin: 0 0 0.75rem 0;
    font-size: 0.85rem;
    color: var(--text-secondary, #aaa);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.condition-section.secondary[b-c7jrc3fjvm] {
    background: rgba(139, 92, 246, 0.05);
    border-color: rgba(139, 92, 246, 0.2);
}

.section-header[b-c7jrc3fjvm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.secondary-type-buttons[b-c7jrc3fjvm] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

/* Toggle Switch */
.toggle-switch[b-c7jrc3fjvm] {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
}

.toggle-switch input[b-c7jrc3fjvm] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-switch .slider[b-c7jrc3fjvm] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--bg-muted, #333);
    border-radius: 24px;
    transition: 0.3s;
}

.toggle-switch .slider[b-c7jrc3fjvm]:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background: white;
    border-radius: 50%;
    transition: 0.3s;
}

.toggle-switch input:checked + .slider[b-c7jrc3fjvm] {
    background: var(--accent-blue, #60a5fa);
}

.toggle-switch input:checked + .slider[b-c7jrc3fjvm]:before {
    transform: translateX(20px);
}

/* Notification Options */
.notification-options[b-c7jrc3fjvm] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.checkbox-option[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-input, rgba(255, 255, 255, 0.03));
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.2s;
}

.checkbox-option:hover:not(.disabled)[b-c7jrc3fjvm] {
    background: rgba(255, 255, 255, 0.06);
}

.checkbox-option.disabled[b-c7jrc3fjvm] {
    opacity: 0.5;
    cursor: not-allowed;
}

.checkbox-option input[type="checkbox"][b-c7jrc3fjvm] {
    width: 18px;
    height: 18px;
    accent-color: var(--accent-blue, #60a5fa);
}

.checkbox-label[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-primary, #fff);
}

.checkbox-label i[b-c7jrc3fjvm] {
    color: var(--text-muted, #888);
}

.checkbox-label .badge[b-c7jrc3fjvm] {
    font-size: 0.65rem;
    padding: 0.15rem 0.4rem;
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Alert Preview */
.alert-preview[b-c7jrc3fjvm] {
    background: linear-gradient(135deg, rgba(96, 165, 250, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
    border: 1px solid rgba(96, 165, 250, 0.2);
    border-radius: 8px;
    padding: 0.875rem;
}

.preview-label[b-c7jrc3fjvm] {
    font-size: 0.7rem;
    color: var(--text-muted, #888);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.375rem;
}

.preview-text[b-c7jrc3fjvm] {
    font-size: 0.9rem;
    color: var(--text-primary, #fff);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.preview-text i[b-c7jrc3fjvm] {
    color: var(--accent-blue, #60a5fa);
}

/* Footer */
.modal-footer[b-c7jrc3fjvm] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-header, rgba(255, 255, 255, 0.02));
}

.usage-info[b-c7jrc3fjvm] {
    font-size: 0.75rem;
    color: var(--text-muted, #666);
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.footer-buttons[b-c7jrc3fjvm] {
    display: flex;
    gap: 0.5rem;
}

.btn-secondary[b-c7jrc3fjvm],
.btn-primary[b-c7jrc3fjvm] {
    padding: 0.625rem 1.25rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-secondary[b-c7jrc3fjvm] {
    background: transparent;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.2));
    color: var(--text-secondary, #aaa);
}

.btn-secondary:hover[b-c7jrc3fjvm] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-primary, #fff);
}

.btn-primary[b-c7jrc3fjvm] {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    border: none;
    color: white;
}

.btn-primary:hover:not(:disabled)[b-c7jrc3fjvm] {
    background: linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);
    transform: translateY(-1px);
}

.btn-primary:disabled[b-c7jrc3fjvm] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Spinner */
.spinner-border-sm[b-c7jrc3fjvm] {
    width: 1rem;
    height: 1rem;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-c7jrc3fjvm 0.8s linear infinite;
}

@keyframes spin-b-c7jrc3fjvm {
    to {
        transform: rotate(360deg);
    }
}

/* Scrollbar */
.alert-modal[b-c7jrc3fjvm]::-webkit-scrollbar {
    width: 6px;
}

.alert-modal[b-c7jrc3fjvm]::-webkit-scrollbar-track {
    background: transparent;
}

.alert-modal[b-c7jrc3fjvm]::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.2);
    border-radius: 3px;
}

.alert-modal[b-c7jrc3fjvm]::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.3);
}

/* Last price + nudge chips under the price input */
.price-hint[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: 0.5rem;
    font-size: 0.78rem;
    color: var(--text-muted, #888);
}

.nudge-chips[b-c7jrc3fjvm] {
    display: inline-flex;
    gap: 0.35rem;
}

.nudge-chips button[b-c7jrc3fjvm] {
    padding: 0.2rem 0.55rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    color: var(--text-secondary, #aaa);
    font-size: 0.72rem;
    cursor: pointer;
}

.nudge-chips button:hover[b-c7jrc3fjvm] {
    background: rgba(96, 165, 250, 0.15);
    border-color: var(--accent-blue, #60a5fa);
    color: var(--accent-blue, #60a5fa);
}

/* Only once / Every time */
.trigger-toggle[b-c7jrc3fjvm] {
    display: flex;
    gap: 0.5rem;
}

.trigger-hint[b-c7jrc3fjvm] {
    margin-top: 0.5rem;
    font-size: 0.78rem;
    color: var(--text-muted, #888);
}

/* What a condition is evaluated against (daily values; VWAP: today's session). Amber when the dialog was
   opened from an intraday chart, where that is easy to get wrong. */
.scope-note[b-c7jrc3fjvm] {
    margin-top: 0.45rem;
    font-size: 0.78rem;
    line-height: 1.35;
    color: var(--text-muted, #888);
}

.scope-note.amber[b-c7jrc3fjvm] {
    color: #e0a526;
}

.scope-note .scope-warn[b-c7jrc3fjvm] {
    display: block;
    margin-top: 0.2rem;
    color: #ff6b6b;
}

/* Alerts evaluate the standard indicator settings, never the chart's editable ones */
.scope-note .scope-std[b-c7jrc3fjvm] {
    display: block;
    margin-top: 0.2rem;
}

/* Channel badges that are links (Upgrade / Add phone) or a state (On for all alerts) */
.checkbox-label a.badge[b-c7jrc3fjvm] {
    text-decoration: none;
    cursor: pointer;
    pointer-events: auto;
}

.checkbox-option.disabled .checkbox-label a.badge[b-c7jrc3fjvm] {
    opacity: 1;
}

.checkbox-label .badge.setup[b-c7jrc3fjvm] {
    background: rgba(0, 205, 237, 0.15);
    color: #00cded;
}

.checkbox-label .badge.on[b-c7jrc3fjvm] {
    background: rgba(34, 197, 94, 0.15);
    color: #4ade80;
}

/* SMS / webhook rows with inline setup */
.channel-block[b-c7jrc3fjvm] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.channel-row[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bg-input, rgba(255, 255, 255, 0.03));
    border-radius: 6px;
}

.channel-row .checkbox-option[b-c7jrc3fjvm] {
    flex: 1;
    background: transparent;
}

.channel-meta[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding-right: 0.75rem;
    font-size: 0.75rem;
    color: var(--text-muted, #888);
    white-space: nowrap;
}

.channel-target[b-c7jrc3fjvm] {
    font-family: ui-monospace, "Cascadia Mono", monospace;
    color: var(--text-secondary, #aaa);
}

.channel-target.url[b-c7jrc3fjvm] {
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.channel-meta .badge[b-c7jrc3fjvm] {
    align-self: center;
    margin: 0;
    line-height: 1.3;
    font-size: 0.65rem;
    padding: 0.2rem 0.5rem;
    border: 1px solid rgba(0, 205, 237, 0.35);
    border-radius: 4px;
    background: rgba(0, 205, 237, 0.15);
    color: #00cded;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
}

.channel-meta .badge:hover[b-c7jrc3fjvm] {
    background: rgba(0, 205, 237, 0.25);
}

.link-btn[b-c7jrc3fjvm] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--accent-blue, #60a5fa);
    font-size: 0.75rem;
    cursor: pointer;
}

.link-btn:hover:not(:disabled)[b-c7jrc3fjvm] {
    text-decoration: underline;
}

.link-btn:disabled[b-c7jrc3fjvm] {
    opacity: 0.5;
    cursor: default;
}

.link-btn.danger[b-c7jrc3fjvm] {
    color: #f87171;
}

.inline-setup[b-c7jrc3fjvm] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.75rem;
    border: 1px solid rgba(96, 165, 250, 0.25);
    border-radius: 8px;
    background: rgba(96, 165, 250, 0.05);
}

.inline-setup > label:first-child[b-c7jrc3fjvm] {
    font-size: 0.75rem;
    color: var(--text-secondary, #aaa);
}

.inline-setup input[type="tel"][b-c7jrc3fjvm],
.inline-setup input[type="url"][b-c7jrc3fjvm] {
    width: 100%;
    padding: 0.55rem 0.7rem;
    background: var(--bg-input, rgba(255, 255, 255, 0.05));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.12));
    border-radius: 6px;
    color: var(--text-primary, #fff);
    font-size: 0.875rem;
}

.inline-setup input:focus[b-c7jrc3fjvm] {
    outline: none;
    border-color: var(--accent-blue, #60a5fa);
}

.consent-option[b-c7jrc3fjvm] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.72rem;
    line-height: 1.4;
    color: var(--text-muted, #999);
    cursor: pointer;
}

.consent-option input[b-c7jrc3fjvm] {
    margin-top: 0.15rem;
    width: 16px;
    height: 16px;
    flex: none;
    accent-color: var(--accent-blue, #60a5fa);
}

.inline-hint[b-c7jrc3fjvm] {
    font-size: 0.72rem;
    color: var(--text-muted, #888);
}

.inline-actions[b-c7jrc3fjvm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.btn-primary.small[b-c7jrc3fjvm],
.btn-secondary.small[b-c7jrc3fjvm] {
    padding: 0.4rem 0.8rem;
    font-size: 0.78rem;
}

.inline-msg[b-c7jrc3fjvm] {
    font-size: 0.75rem;
    padding: 0 0.25rem;
}

.inline-msg.ok[b-c7jrc3fjvm] {
    color: #4ade80;
}

.inline-msg.err[b-c7jrc3fjvm] {
    color: #f87171;
}

/* Pro-only alert types on a free account */
.type-btn.locked[b-c7jrc3fjvm] { opacity: 0.55; }
.type-btn.locked:hover[b-c7jrc3fjvm] { opacity: 0.8; }
/* ...and on any account while the plan check runs: neutral (no lock, not clickable) */
.type-btn.checking[b-c7jrc3fjvm] { opacity: 0.55; cursor: progress; }
.type-btn .lock[b-c7jrc3fjvm] { margin-left: 4px; font-size: 0.75em; color: #a78bfa; }

/* Phones: the dialog is a bottom sheet (full width, thumb reach) and the condition row's
   select / value fields share the width instead of overflowing it */
@media (max-width: 600px) {
    .modal-overlay[b-c7jrc3fjvm] {
        align-items: flex-end;
    }

    .alert-modal[b-c7jrc3fjvm] {
        width: 100%;
        max-width: none;
        max-height: 92vh;
        border-radius: 20px 20px 0 0;
        border-bottom: none;
        padding-bottom: env(safe-area-inset-bottom, 0px);
        animation: alert-sheet-in-b-c7jrc3fjvm 280ms cubic-bezier(0.32, 0.72, 0, 1);
    }

    .form-row > .form-group[b-c7jrc3fjvm] {
        min-width: 0;
    }

    .form-row select[b-c7jrc3fjvm],
    .form-row input[b-c7jrc3fjvm] {
        width: 100%;
        min-width: 0;
    }

    @keyframes alert-sheet-in-b-c7jrc3fjvm {
        from { transform: translateY(24px); opacity: 0; }
        to { transform: none; opacity: 1; }
    }
}

@media (max-width: 600px) and (prefers-reduced-motion: reduce) {
    .alert-modal[b-c7jrc3fjvm] {
        animation: none;
    }
}
/* /Components/Alerts/AlertNotification.razor.rz.scp.css */
/* Alert Modal Styles - Centered popup modal for important alerts */

/* Modal overlay - darkens the background */
.alert-modal-overlay[b-7xpzfisa30] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(4px);
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.alert-modal-overlay.entering[b-7xpzfisa30] {
    animation: overlayFadeIn-b-7xpzfisa30 0.3s ease forwards;
}

.alert-modal-overlay.exiting[b-7xpzfisa30] {
    animation: overlayFadeOut-b-7xpzfisa30 0.3s ease forwards;
}

@keyframes overlayFadeIn-b-7xpzfisa30 {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes overlayFadeOut-b-7xpzfisa30 {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

/* Modal container */
.alert-modal[b-7xpzfisa30] {
    position: relative;
    background: linear-gradient(145deg, rgba(13, 17, 28, 0.98), rgba(20, 26, 42, 0.98));
    border: 2px solid rgba(0, 205, 237, 0.6);
    border-radius: 20px;
    box-shadow: 
        0 25px 80px rgba(0, 0, 0, 0.6),
        0 0 60px rgba(0, 205, 237, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    max-width: 440px;
    width: 100%;
    padding: 32px;
    text-align: center;
    overflow: hidden;
}

.alert-modal.entering[b-7xpzfisa30] {
    animation: modalPopIn-b-7xpzfisa30 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

.alert-modal.exiting[b-7xpzfisa30] {
    animation: modalPopOut-b-7xpzfisa30 0.3s ease forwards;
}

@keyframes modalPopIn-b-7xpzfisa30 {
    from {
        transform: scale(0.8) translateY(20px);
        opacity: 0;
    }
    to {
        transform: scale(1) translateY(0);
        opacity: 1;
    }
}

@keyframes modalPopOut-b-7xpzfisa30 {
    from {
        transform: scale(1) translateY(0);
        opacity: 1;
    }
    to {
        transform: scale(0.8) translateY(20px);
        opacity: 0;
    }
}

/* Alert type-specific colors */
.alert-modal.price[b-7xpzfisa30] {
    border-color: rgba(0, 200, 83, 0.7);
    box-shadow: 
        0 25px 80px rgba(0, 0, 0, 0.6),
        0 0 60px rgba(0, 200, 83, 0.35);
}

.alert-modal.indicator[b-7xpzfisa30] {
    border-color: rgba(66, 165, 245, 0.7);
    box-shadow: 
        0 25px 80px rgba(0, 0, 0, 0.6),
        0 0 60px rgba(66, 165, 245, 0.35);
}

.alert-modal.candlestickpattern[b-7xpzfisa30] {
    border-color: rgba(156, 39, 176, 0.7);
    box-shadow: 
        0 25px 80px rgba(0, 0, 0, 0.6),
        0 0 60px rgba(156, 39, 176, 0.35);
}

.alert-modal.composite[b-7xpzfisa30] {
    border-color: rgba(255, 152, 0, 0.7);
    box-shadow: 
        0 25px 80px rgba(0, 0, 0, 0.6),
        0 0 60px rgba(255, 152, 0, 0.35);
}

/* Pulsing alert icon */
.modal-alert-icon[b-7xpzfisa30] {
    position: relative;
    width: 100px;
    height: 100px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-primary, #00cded);
}

.modal-alert-icon svg[b-7xpzfisa30] {
    position: relative;
    z-index: 2;
    animation: bellShake-b-7xpzfisa30 0.5s ease-in-out infinite;
}

@keyframes bellShake-b-7xpzfisa30 {
    0%, 100% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(-15deg);
    }
    75% {
        transform: rotate(15deg);
    }
}

.pulse-ring[b-7xpzfisa30] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    border: 3px solid var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: pulseRing-b-7xpzfisa30 1.5s ease-out infinite;
}

.pulse-ring.delay[b-7xpzfisa30] {
    animation-delay: 0.5s;
}

@keyframes pulseRing-b-7xpzfisa30 {
    0% {
        transform: translate(-50%, -50%) scale(0.8);
        opacity: 1;
    }
    100% {
        transform: translate(-50%, -50%) scale(1.6);
        opacity: 0;
    }
}

/* Alert type-specific icon colors */
.alert-modal.price .modal-alert-icon[b-7xpzfisa30] {
    color: #00c853;
}

.alert-modal.price .pulse-ring[b-7xpzfisa30] {
    border-color: #00c853;
}

.alert-modal.indicator .modal-alert-icon[b-7xpzfisa30] {
    color: #42a5f5;
}

.alert-modal.indicator .pulse-ring[b-7xpzfisa30] {
    border-color: #42a5f5;
}

.alert-modal.candlestickpattern .modal-alert-icon[b-7xpzfisa30] {
    color: #9c27b0;
}

.alert-modal.candlestickpattern .pulse-ring[b-7xpzfisa30] {
    border-color: #9c27b0;
}

.alert-modal.composite .modal-alert-icon[b-7xpzfisa30] {
    color: #ff9800;
}

.alert-modal.composite .pulse-ring[b-7xpzfisa30] {
    border-color: #ff9800;
}

/* Alert badge */
.alert-badge[b-7xpzfisa30] {
    display: inline-block;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.25), rgba(255, 152, 0, 0.25));
    color: #ffc107;
    font-size: 12px;
    font-weight: 700;
    padding: 6px 16px;
    border-radius: 20px;
    letter-spacing: 1px;
    margin-bottom: 20px;
    animation: badgePulse-b-7xpzfisa30 2s ease-in-out infinite;
}

@keyframes badgePulse-b-7xpzfisa30 {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(255, 193, 7, 0.4);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(255, 193, 7, 0);
    }
}

/* Modal content */
.modal-content[b-7xpzfisa30] {
    margin-bottom: 24px;
}

/* Symbol display */
.symbol-display[b-7xpzfisa30] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 16px;
}

.symbol-display .symbol[b-7xpzfisa30] {
    font-size: 36px;
    font-weight: 800;
    color: var(--text-primary, #e6f1ff);
    letter-spacing: 2px;
}

.type-badge[b-7xpzfisa30] {
    font-size: 10px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: rgba(0, 205, 237, 0.2);
    color: var(--accent-primary, #00cded);
}

.type-badge.price[b-7xpzfisa30] {
    background: rgba(0, 200, 83, 0.2);
    color: #00c853;
}

.type-badge.indicator[b-7xpzfisa30] {
    background: rgba(66, 165, 245, 0.2);
    color: #42a5f5;
}

.type-badge.candlestickpattern[b-7xpzfisa30] {
    background: rgba(156, 39, 176, 0.2);
    color: #9c27b0;
}

.type-badge.composite[b-7xpzfisa30] {
    background: rgba(255, 152, 0, 0.2);
    color: #ff9800;
}

/* Condition text */
.condition-text[b-7xpzfisa30] {
    font-size: 18px;
    color: var(--text-secondary, #8892b0);
    line-height: 1.5;
    margin-bottom: 20px;
}

/* Trigger details */
.trigger-details[b-7xpzfisa30] {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    padding: 16px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 12px;
    margin-bottom: 16px;
}

.detail-item[b-7xpzfisa30] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}

.detail-label[b-7xpzfisa30] {
    font-size: 11px;
    color: var(--text-muted, #5a6a8a);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value[b-7xpzfisa30] {
    font-size: 18px;
    font-weight: 700;
    font-family: 'JetBrains Mono', monospace;
}

.detail-value.price[b-7xpzfisa30] {
    color: var(--accent-primary, #00cded);
}

.detail-value.indicator[b-7xpzfisa30] {
    color: #42a5f5;
}

.detail-value.time[b-7xpzfisa30] {
    color: var(--text-secondary, #8892b0);
    font-size: 14px;
}

/* Custom note */
.custom-note[b-7xpzfisa30] {
    background: rgba(255, 193, 7, 0.1);
    border-left: 3px solid #ffc107;
    padding: 12px 16px;
    border-radius: 0 8px 8px 0;
    text-align: left;
    font-size: 13px;
    color: var(--text-secondary, #8892b0);
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.custom-note i[b-7xpzfisa30] {
    color: #ffc107;
    margin-top: 2px;
}

/* Action buttons */
.modal-actions[b-7xpzfisa30] {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.action-btn[b-7xpzfisa30] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 24px;
    border: none;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.action-btn.view-chart[b-7xpzfisa30] {
    background: linear-gradient(135deg, var(--accent-primary, #00cded), #1a8cff);
    color: #0d111c;
}

.action-btn.view-chart:hover[b-7xpzfisa30] {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 205, 237, 0.4);
}

.action-btn.dismiss[b-7xpzfisa30] {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-secondary, #8892b0);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.action-btn.dismiss:hover[b-7xpzfisa30] {
    background: rgba(255, 255, 255, 0.12);
    color: var(--text-primary, #e6f1ff);
}

/* Queue indicator */
.queue-indicator[b-7xpzfisa30] {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    background: rgba(255, 193, 7, 0.2);
    color: #ffc107;
    font-size: 12px;
    font-weight: 600;
    padding: 8px;
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
}

/* Background glow effect */
.alert-modal[b-7xpzfisa30]::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle at center, rgba(0, 205, 237, 0.1), transparent 40%);
    animation: rotateGlow-b-7xpzfisa30 8s linear infinite;
    pointer-events: none;
}

@keyframes rotateGlow-b-7xpzfisa30 {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.alert-modal.price[b-7xpzfisa30]::before {
    background: radial-gradient(circle at center, rgba(0, 200, 83, 0.1), transparent 40%);
}

.alert-modal.indicator[b-7xpzfisa30]::before {
    background: radial-gradient(circle at center, rgba(66, 165, 245, 0.1), transparent 40%);
}

.alert-modal.candlestickpattern[b-7xpzfisa30]::before {
    background: radial-gradient(circle at center, rgba(156, 39, 176, 0.1), transparent 40%);
}

.alert-modal.composite[b-7xpzfisa30]::before {
    background: radial-gradient(circle at center, rgba(255, 152, 0, 0.1), transparent 40%);
}

/* Light theme adjustments */
:global([data-theme="light"]) .alert-modal[b-7xpzfisa30] {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    border-color: rgba(0, 175, 202, 0.5);
}

:global([data-theme="light"]) .alert-modal-overlay[b-7xpzfisa30] {
    background: rgba(0, 0, 0, 0.5);
}

:global([data-theme="light"]) .symbol-display .symbol[b-7xpzfisa30] {
    color: #1a1d24;
}

:global([data-theme="light"]) .condition-text[b-7xpzfisa30] {
    color: #64748b;
}

:global([data-theme="light"]) .trigger-details[b-7xpzfisa30] {
    background: rgba(0, 0, 0, 0.05);
}

:global([data-theme="light"]) .action-btn.dismiss[b-7xpzfisa30] {
    background: rgba(0, 0, 0, 0.05);
    color: #64748b;
    border-color: rgba(0, 0, 0, 0.1);
}

:global([data-theme="light"]) .action-btn.dismiss:hover[b-7xpzfisa30] {
    background: rgba(0, 0, 0, 0.1);
    color: #334155;
}

/* Responsive */
@media (max-width: 500px) {
    .alert-modal[b-7xpzfisa30] {
        padding: 24px 20px;
        border-radius: 16px;
    }
    
    .modal-alert-icon[b-7xpzfisa30] {
        width: 80px;
        height: 80px;
    }
    
    .modal-alert-icon svg[b-7xpzfisa30] {
        width: 40px;
        height: 40px;
    }
    
    .pulse-ring[b-7xpzfisa30] {
        width: 60px;
        height: 60px;
    }
    
    .symbol-display .symbol[b-7xpzfisa30] {
        font-size: 28px;
    }
    
    .condition-text[b-7xpzfisa30] {
        font-size: 16px;
    }
    
    .trigger-details[b-7xpzfisa30] {
        gap: 16px;
        padding: 12px;
    }
    
    .detail-value[b-7xpzfisa30] {
        font-size: 16px;
    }
    
    .modal-actions[b-7xpzfisa30] {
        flex-direction: column;
    }
    
    .action-btn[b-7xpzfisa30] {
        width: 100%;
    }
}
/* /Components/Alerts/AlertsPanel.razor.rz.scp.css */
/* Alerts Panel Container */
.alerts-panel[b-o4ccf5xjvj] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.75rem;
    gap: 0.75rem;
}

/* Header */
.alerts-header[b-o4ccf5xjvj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
}

.header-title[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.header-title i[b-o4ccf5xjvj] {
    color: var(--accent-blue, #60a5fa);
}

.usage-badge[b-o4ccf5xjvj] {
    font-size: 0.7rem;
    padding: 0.2rem 0.5rem;
    border-radius: 10px;
    background: rgba(96, 165, 250, 0.15);
    color: var(--accent-blue, #60a5fa);
    font-weight: 600;
}

.usage-badge.limit-reached[b-o4ccf5xjvj] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

/* Add Alert Button */
.add-alert-btn[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.625rem;
    background: linear-gradient(135deg, rgba(96, 165, 250, 0.15) 0%, rgba(139, 92, 246, 0.15) 100%);
    border: 1px dashed rgba(96, 165, 250, 0.4);
    border-radius: 8px;
    color: var(--accent-blue, #60a5fa);
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.add-alert-btn:hover:not(:disabled)[b-o4ccf5xjvj] {
    background: linear-gradient(135deg, rgba(96, 165, 250, 0.25) 0%, rgba(139, 92, 246, 0.25) 100%);
    border-style: solid;
}

.add-alert-btn:disabled[b-o4ccf5xjvj] {
    opacity: 0.5;
    cursor: not-allowed;
}

.add-alert-btn .limit-text[b-o4ccf5xjvj] {
    font-size: 0.65rem;
    color: #ef4444;
    margin-left: 0.25rem;
}

/* Filter Tabs */
.filter-tabs[b-o4ccf5xjvj] {
    display: flex;
    gap: 0.25rem;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    padding: 0.25rem;
}

.filter-tab[b-o4ccf5xjvj] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.375rem 0.5rem;
    background: none;
    border: none;
    border-radius: 6px;
    color: var(--text-muted, #888);
    font-size: 0.7rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.filter-tab:hover[b-o4ccf5xjvj] {
    color: var(--text-primary, #fff);
}

.filter-tab.active[b-o4ccf5xjvj] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary, #fff);
}

.filter-tab .count[b-o4ccf5xjvj] {
    font-size: 0.6rem;
    padding: 0.1rem 0.35rem;
    background: var(--accent-blue, #60a5fa);
    color: white;
    border-radius: 8px;
    font-weight: 600;
}

/* Alerts List */
.alerts-list[b-o4ccf5xjvj] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Loading State */
.loading-state[b-o4ccf5xjvj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 2rem 1rem;
    color: var(--text-muted, #888);
    font-size: 0.8rem;
}

.spinner[b-o4ccf5xjvj] {
    width: 24px;
    height: 24px;
    border: 2px solid rgba(255, 255, 255, 0.1);
    border-top-color: var(--accent-blue, #60a5fa);
    border-radius: 50%;
    animation: spin-b-o4ccf5xjvj 0.8s linear infinite;
}

@keyframes spin-b-o4ccf5xjvj {
    to { transform: rotate(360deg); }
}

/* Empty State */
.empty-state[b-o4ccf5xjvj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem 1rem;
    color: var(--text-muted, #888);
    text-align: center;
}

.empty-state i[b-o4ccf5xjvj] {
    font-size: 2rem;
    opacity: 0.5;
}

.empty-state span[b-o4ccf5xjvj] {
    font-size: 0.8rem;
}

.empty-action[b-o4ccf5xjvj] {
    margin-top: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--accent-blue, #60a5fa);
    border: none;
    border-radius: 6px;
    color: white;
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    transition: opacity 0.2s;
}

.empty-action:hover:not(:disabled)[b-o4ccf5xjvj] {
    opacity: 0.9;
}

.empty-action:disabled[b-o4ccf5xjvj] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Alert Item - Compact 2-row layout */
.alert-item[b-o4ccf5xjvj] {
    background: var(--bg-card, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.08));
    border-radius: 8px;
    padding: 0.5rem 0.625rem;
    transition: all 0.2s;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.alert-item:hover[b-o4ccf5xjvj] {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.15);
}

.alert-item.triggered[b-o4ccf5xjvj] {
    border-left: 3px solid var(--accent-blue, #60a5fa);
}

.alert-item.expired[b-o4ccf5xjvj] {
    opacity: 0.6;
    border-left: 3px solid var(--text-muted, #666);
}

.alert-item.disabled[b-o4ccf5xjvj] {
    opacity: 0.5;
}

/* Row 1: Symbol + Condition + Actions */
.alert-row-1[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.alert-info[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.alert-symbol[b-o4ccf5xjvj] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
    flex-shrink: 0;
}

.alert-condition[b-o4ccf5xjvj] {
    font-size: 0.7rem;
    color: var(--text-secondary, #aaa);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Row 2: Name + Meta Info */
.alert-row-2[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.65rem;
    color: var(--text-muted, #666);
}

.alert-name[b-o4ccf5xjvj] {
    font-style: italic;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 120px;
}

.row-separator[b-o4ccf5xjvj] {
    color: var(--text-muted, #555);
}

.triggered-at[b-o4ccf5xjvj],
.expired-at[b-o4ccf5xjvj],
.expires-in[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.65rem;
    color: var(--text-muted, #666);
}

.cooldown-badge[b-o4ccf5xjvj] {
    font-size: 0.55rem;
    padding: 0.1rem 0.3rem;
    background: rgba(251, 191, 36, 0.2);
    color: #fbbf24;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 0.15rem;
}

/* Alert Actions - Compact */
.alert-actions[b-o4ccf5xjvj] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.action-btn[b-o4ccf5xjvj] {
    padding: 0.25rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid transparent;
    border-radius: 4px;
    color: var(--text-muted, #888);
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.7rem;
    line-height: 1;
}

.action-btn:hover[b-o4ccf5xjvj] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary, #fff);
}

.action-btn.reactivate:hover[b-o4ccf5xjvj] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
    border-color: rgba(34, 197, 94, 0.3);
}

.action-btn.toggle:hover[b-o4ccf5xjvj] {
    background: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.3);
}

.action-btn.delete:hover[b-o4ccf5xjvj] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border-color: rgba(239, 68, 68, 0.3);
}

/* Upgrade Banner */
.upgrade-banner[b-o4ccf5xjvj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem;
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.15) 0%, rgba(236, 72, 153, 0.15) 100%);
    border: 1px solid rgba(139, 92, 246, 0.3);
    border-radius: 8px;
    font-size: 0.7rem;
    color: #a78bfa;
}

.upgrade-banner i[b-o4ccf5xjvj] {
    color: #fbbf24;
}

/* Scrollbar */
.alerts-list[b-o4ccf5xjvj]::-webkit-scrollbar {
    width: 4px;
}

.alerts-list[b-o4ccf5xjvj]::-webkit-scrollbar-track {
    background: transparent;
}

.alerts-list[b-o4ccf5xjvj]::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.15);
    border-radius: 2px;
}

.alerts-list[b-o4ccf5xjvj]::-webkit-scrollbar-thumb:hover {
    background: rgba(255, 255, 255, 0.25);
}

.action-btn.edit:hover[b-o4ccf5xjvj] {
    background: rgba(96, 165, 250, 0.15);
    color: #60a5fa;
    border-color: rgba(96, 165, 250, 0.3);
}

.repeat-badge[b-o4ccf5xjvj] {
    font-size: 0.55rem;
    padding: 0.1rem 0.3rem;
    background: rgba(96, 165, 250, 0.15);
    color: #60a5fa;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 0.2rem;
}

.upgrade-banner a[b-o4ccf5xjvj] {
    color: inherit;
    text-decoration: underline;
}

/* A stock of a monitor (/monitor): edited on that page */
.monitor-badge[b-o4ccf5xjvj] {
    font-size: 0.55rem;
    padding: 0.1rem 0.3rem;
    background: rgba(167, 139, 250, 0.16);
    color: #c4b5fd;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    flex-shrink: 0;
    white-space: nowrap;
}
/* /Components/Charts/BrokerTradesPanel.razor.rz.scp.css */
/* Trades tab (Alpaca Connect): the journal panel's look (JournalPanel.razor.css) */
.trades-panel[b-7lerp69a1w] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.75rem;
    gap: 0.625rem;
    overflow-y: auto;
}

.trades-header[b-7lerp69a1w] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
}

.header-title[b-7lerp69a1w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.header-title i[b-7lerp69a1w] { color: #22c55e; }

.scope-toggle[b-7lerp69a1w] {
    display: flex;
    gap: 2px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    padding: 2px;
}

.scope-btn[b-7lerp69a1w] {
    border: none;
    background: transparent;
    color: var(--text-muted, #888);
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.25rem 0.55rem;
    border-radius: 6px;
    cursor: pointer;
}

.scope-btn.active[b-7lerp69a1w] {
    background: rgba(34, 197, 94, 0.16);
    color: #22c55e;
}

.controls[b-7lerp69a1w] {
    display: flex;
    gap: 0.4rem;
}

.ctl[b-7lerp69a1w] {
    flex: 1;
    min-width: 0;
    font-size: 0.72rem;
    padding: 0.3rem 0.4rem;
    border-radius: 6px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.12));
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #fff);
}

.empty-state[b-7lerp69a1w], .loading-state[b-7lerp69a1w] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 0.5rem;
    color: var(--text-muted, #888);
    font-size: 0.78rem;
    text-align: center;
}

.empty-state i[b-7lerp69a1w] { font-size: 1.4rem; }
.empty-state a[b-7lerp69a1w] { color: #38bdf8; }

.spinner[b-7lerp69a1w] {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.15);
    border-top-color: #22c55e;
    border-radius: 50%;
    animation: spin-b-7lerp69a1w 0.8s linear infinite;
}

@keyframes spin-b-7lerp69a1w { to { transform: rotate(360deg); } }

.trades-list[b-7lerp69a1w] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.trade[b-7lerp69a1w] {
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.07));
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.02);
}

.trade.highlight[b-7lerp69a1w] { border-color: rgba(56, 189, 248, 0.6); }

.trade-head[b-7lerp69a1w] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
    padding: 0.45rem 0.55rem;
    border: none;
    background: transparent;
    color: var(--text-primary, #fff);
    font-size: 0.75rem;
    cursor: pointer;
    text-align: left;
}

.sym[b-7lerp69a1w] { font-weight: 700; }
.side[b-7lerp69a1w] { font-size: 0.65rem; font-weight: 700; padding: 1px 6px; border-radius: 4px; }
.side.long[b-7lerp69a1w] { background: rgba(34, 197, 94, 0.15); color: #22c55e; }
.side.short[b-7lerp69a1w] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }
.when[b-7lerp69a1w], .dur[b-7lerp69a1w] { color: var(--text-muted, #888); }
.pnl[b-7lerp69a1w] { margin-left: auto; font-weight: 700; }
.pnl.gain[b-7lerp69a1w], .gain[b-7lerp69a1w] { color: #22c55e; }
.pnl.loss[b-7lerp69a1w], .loss[b-7lerp69a1w] { color: #ef4444; }
.pnl.neutral[b-7lerp69a1w] { color: var(--text-muted, #888); font-weight: 500; }
.noted[b-7lerp69a1w] { color: #38bdf8; }
.draft-dot[b-7lerp69a1w] { width: 7px; height: 7px; border-radius: 50%; background: #f59e0b; }

/* Positions view: the watchlist's row (day % beside the symbol, live price over the day's $ move) plus shares and
   open P&L */
.positions-list[b-7lerp69a1w] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.pos[b-7lerp69a1w] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    width: 100%;
    padding: 0.4rem 0.55rem;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.07));
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.02);
    color: var(--text-primary, #fff);
    cursor: pointer;
    text-align: left;
    font: inherit;
}

.pos:hover[b-7lerp69a1w] { border-color: rgba(34, 197, 94, 0.3); background: rgba(255, 255, 255, 0.04); }
.pos.current[b-7lerp69a1w] { border-color: rgba(34, 197, 94, 0.45); background: rgba(34, 197, 94, 0.06); }

.pos-left[b-7lerp69a1w], .pos-right[b-7lerp69a1w] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.pos-right[b-7lerp69a1w] {
    align-items: flex-end;
    flex-shrink: 0;
}

.pos-sym-row[b-7lerp69a1w], .pos-meta[b-7lerp69a1w] {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    white-space: nowrap;
}

.pos .sym[b-7lerp69a1w] { font-size: 0.78rem; }

.pos .day[b-7lerp69a1w], .pos-meta[b-7lerp69a1w], .pos .last[b-7lerp69a1w] {
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    font-variant-numeric: tabular-nums;
}

.pos .day[b-7lerp69a1w] { font-size: 0.64rem; font-weight: 600; white-space: nowrap; }
.pos-meta[b-7lerp69a1w] { font-size: 0.64rem; }
.pos-meta .side[b-7lerp69a1w] { font-family: inherit; font-size: 0.6rem; padding: 0 5px; }
.pos .last[b-7lerp69a1w] { font-size: 0.78rem; font-weight: 700; color: var(--text-primary, #fff); transition: color 0.3s ease; }
.pos .last.tick-up[b-7lerp69a1w] { color: #86efac; }
.pos .last.tick-down[b-7lerp69a1w] { color: #fca5a5; }
.pos .neutral[b-7lerp69a1w] { color: var(--text-muted, #888); }

.trade-body[b-7lerp69a1w] {
    padding: 0.2rem 0.6rem 0.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    font-size: 0.74rem;
}

.facts[b-7lerp69a1w] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 0.35rem;
}

.facts div[b-7lerp69a1w] { display: flex; flex-direction: column; gap: 0.05rem; }
.facts span[b-7lerp69a1w] { color: var(--text-muted, #888); font-size: 0.66rem; }

.section-title[b-7lerp69a1w] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-muted, #999);
    margin-top: 0.2rem;
}

.hypo[b-7lerp69a1w] {
    text-transform: none;
    font-weight: 600;
    color: #38bdf8;
    margin-left: 0.3rem;
}

.windows[b-7lerp69a1w] { width: 100%; border-collapse: collapse; font-size: 0.72rem; }
.windows th[b-7lerp69a1w] { text-align: left; font-weight: 600; color: var(--text-muted, #888); padding: 0.15rem 0; }
.windows td[b-7lerp69a1w] { padding: 0.15rem 0; }
.windows tr.current td[b-7lerp69a1w] { color: #38bdf8; font-weight: 600; }

.note[b-7lerp69a1w] {
    display: flex;
    gap: 0.35rem;
    color: var(--text-muted, #999);
    font-size: 0.72rem;
}

.note.warn[b-7lerp69a1w] { color: #f59e0b; }

.fineprint[b-7lerp69a1w] {
    font-size: 0.64rem;
    color: var(--text-muted, #777);
    line-height: 1.35;
}

.actions[b-7lerp69a1w] { display: flex; flex-wrap: wrap; gap: 0.35rem; align-items: center; }

.act[b-7lerp69a1w] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.7rem;
    padding: 0.3rem 0.55rem;
    border-radius: 6px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.14));
    background: transparent;
    color: var(--text-primary, #ddd);
    cursor: pointer;
}

.act:hover:not(:disabled)[b-7lerp69a1w] { border-color: #38bdf8; color: #38bdf8; }
.act.primary[b-7lerp69a1w] { border-color: rgba(34, 197, 94, 0.5); color: #22c55e; }
.act.small[b-7lerp69a1w] { font-size: 0.65rem; padding: 0.15rem 0.4rem; }
.act:disabled[b-7lerp69a1w] { opacity: 0.6; cursor: default; }
.saved[b-7lerp69a1w] { color: #22c55e; font-size: 0.7rem; }

.notes[b-7lerp69a1w], .tags[b-7lerp69a1w] {
    width: 100%;
    font-size: 0.74rem;
    padding: 0.4rem 0.5rem;
    border-radius: 6px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.12));
    background: rgba(255, 255, 255, 0.03);
    color: var(--text-primary, #fff);
    resize: vertical;
}

.upsell[b-7lerp69a1w] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.72rem;
    padding: 0.5rem;
    border-radius: 8px;
    border: 1px dashed rgba(245, 158, 11, 0.45);
    background: rgba(245, 158, 11, 0.07);
    color: #f59e0b;
    cursor: pointer;
    text-align: left;
}

.detached[b-7lerp69a1w] { font-size: 0.72rem; color: var(--text-muted, #999); }
.detached summary[b-7lerp69a1w] { cursor: pointer; }
.detached-note[b-7lerp69a1w] { border-top: 1px solid rgba(255, 255, 255, 0.06); padding: 0.4rem 0; display: flex; flex-direction: column; gap: 0.2rem; }
.dn-text[b-7lerp69a1w] { color: var(--text-primary, #ddd); white-space: pre-wrap; }
.dn-tags[b-7lerp69a1w] { color: #38bdf8; }
/* /Components/Charts/CellPanelHost.razor.rz.scp.css */
/* A panel in a grid cell (P4-G): a slim header and a scrolling body, on the chart canvas colours. */

.cph[b-jnj74l5wgk] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 0;
    background: var(--bg-primary, #0a0e17);
    color: var(--text-primary, #e6edf7);
    font-size: 12px;
    cursor: default;
}

/* ── Header ── */
.cph-head[b-jnj74l5wgk] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    height: 30px;
    padding: 0 6px 0 10px;
    border-bottom: 1px solid rgba(120, 138, 168, 0.18);
    background: linear-gradient(180deg, rgba(30, 40, 60, 0.45), rgba(14, 20, 32, 0.55));
}

.cph-icon[b-jnj74l5wgk] {
    font-size: 12px;
    color: var(--accent-primary, #00cded);
    opacity: 0.85;
}

.cph-title[b-jnj74l5wgk] {
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.02em;
    white-space: nowrap;
    color: rgba(220, 230, 245, 0.92);
}

.cph-spacer[b-jnj74l5wgk] { flex: 1 1 auto; }

.cph-btn[b-jnj74l5wgk],
.cph-iconbtn[b-jnj74l5wgk] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 20px;
    padding: 0 7px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: rgba(24, 31, 45, 0.6);
    color: rgba(165, 178, 205, 0.85);
    font: inherit;
    font-size: 10.5px;
    white-space: nowrap;
    cursor: pointer;
    transition: color var(--dur-fast, 0.12s) ease, border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.cph-iconbtn[b-jnj74l5wgk] { width: 20px; padding: 0; justify-content: center; }

.cph-btn:hover[b-jnj74l5wgk],
.cph-iconbtn:hover[b-jnj74l5wgk] {
    color: #e9f3ff;
    border-color: rgba(0, 205, 237, 0.4);
    background: rgba(32, 42, 58, 0.8);
}

.cph-iconbtn:disabled[b-jnj74l5wgk] { opacity: 0.5; cursor: default; }

.cph-x:hover[b-jnj74l5wgk] {
    color: #fff;
    background: rgba(255, 82, 82, 0.5);
    border-color: var(--color-bearish, #ff5252);
}

/* Segmented switch (news scope, gainers/losers) */
.cph-seg[b-jnj74l5wgk] {
    display: inline-flex;
    border: 1px solid rgba(120, 138, 168, 0.22);
    border-radius: var(--r-sm, 4px);
    overflow: hidden;
    margin-left: 4px;
}

.cph-seg-btn[b-jnj74l5wgk] {
    height: 18px;
    padding: 0 7px;
    border: 0;
    background: transparent;
    color: rgba(165, 178, 205, 0.75);
    font: inherit;
    font-size: 10.5px;
    cursor: pointer;
    max-width: 90px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cph-seg-btn + .cph-seg-btn[b-jnj74l5wgk] { border-left: 1px solid rgba(120, 138, 168, 0.22); }
.cph-seg-btn:hover[b-jnj74l5wgk] { color: #e9f3ff; }
.cph-seg-btn.on[b-jnj74l5wgk] {
    color: #97f1ff;
    background: rgba(0, 205, 237, 0.16);
}

.cph-select[b-jnj74l5wgk] {
    height: 20px;
    margin-left: 4px;
    padding: 0 4px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: rgba(24, 31, 45, 0.8);
    color: rgba(200, 212, 235, 0.9);
    font: inherit;
    font-size: 10.5px;
}

/* ── Body ── */
.cph-body[b-jnj74l5wgk] {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.cph-list[b-jnj74l5wgk] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.cph-row[b-jnj74l5wgk] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 5px 10px;
    border: 0;
    border-bottom: 1px solid rgba(120, 138, 168, 0.1);
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: background var(--dur-fast, 0.12s) ease;
}

.cph-row:hover[b-jnj74l5wgk] { background: rgba(0, 205, 237, 0.08); }
.cph-row.active[b-jnj74l5wgk] { background: rgba(0, 205, 237, 0.12); box-shadow: inset 2px 0 0 var(--accent-primary, #00cded); }

.cph-sym[b-jnj74l5wgk] {
    font-family: var(--font-mono, "JetBrains Mono", monospace);
    font-weight: 600;
    font-size: 12px;
    min-width: 48px;
    color: #e9f3ff;
}

.cph-note[b-jnj74l5wgk] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: rgba(165, 178, 205, 0.7);
    font-size: 11px;
}

.cph-date[b-jnj74l5wgk] {
    color: rgba(200, 212, 235, 0.85);
    font-size: 11px;
    white-space: nowrap;
}

.cph-chip[b-jnj74l5wgk] {
    padding: 1px 5px;
    border-radius: 3px;
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: rgba(165, 178, 205, 0.85);
    background: rgba(120, 138, 168, 0.18);
    white-space: nowrap;
}

.cph-chip.pre[b-jnj74l5wgk] { color: #ffd166; background: rgba(255, 209, 102, 0.15); }
.cph-chip.after[b-jnj74l5wgk] { color: #9ec5ff; background: rgba(110, 160, 255, 0.16); }
.cph-chip.up[b-jnj74l5wgk] { color: var(--color-bullish, #0fd863); background: rgba(15, 216, 99, 0.14); }
.cph-chip.down[b-jnj74l5wgk] { color: var(--color-bearish, #ff5252); background: rgba(255, 82, 82, 0.14); }

.cph-move[b-jnj74l5wgk],
.cph-score[b-jnj74l5wgk],
.cph-pct[b-jnj74l5wgk] {
    font-family: var(--font-mono, "JetBrains Mono", monospace);
    font-size: 11px;
    white-space: nowrap;
    min-width: 46px;
    text-align: right;
}

.cph-score[b-jnj74l5wgk] { color: rgba(220, 230, 245, 0.9); min-width: 24px; }
.cph-move[b-jnj74l5wgk] { color: #ffd166; }
.cph-pct.up[b-jnj74l5wgk] { color: var(--color-bullish, #0fd863); }
.cph-pct.down[b-jnj74l5wgk] { color: var(--color-bearish, #ff5252); }

/* News rows */
.cph-news[b-jnj74l5wgk] {
    flex-direction: column;
    align-items: stretch;
    gap: 2px;
}

.cph-meta[b-jnj74l5wgk] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    color: rgba(165, 178, 205, 0.65);
}

.cph-source[b-jnj74l5wgk] { color: var(--accent-primary, #00cded); font-weight: 600; }
.cph-tag[b-jnj74l5wgk] { font-family: var(--font-mono, "JetBrains Mono", monospace); color: rgba(200, 212, 235, 0.8); }
.cph-time[b-jnj74l5wgk] { margin-left: auto; white-space: nowrap; }

.cph-headline[b-jnj74l5wgk] {
    font-size: 11.5px;
    line-height: 1.3;
    color: rgba(230, 237, 247, 0.92);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.cph-empty[b-jnj74l5wgk] {
    padding: 18px 14px;
    color: rgba(165, 178, 205, 0.6);
    font-size: 11.5px;
    text-align: center;
}

.cph-foot-link[b-jnj74l5wgk] {
    flex-shrink: 0;
    padding: 5px 10px;
    border: 0;
    border-top: 1px solid rgba(120, 138, 168, 0.14);
    background: rgba(0, 205, 237, 0.06);
    color: var(--accent-primary, #00cded);
    font: inherit;
    font-size: 10.5px;
    cursor: pointer;
}

.cph-teaser[b-jnj74l5wgk] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 12px;
}

/* The alerts panel and mini overview bring their own layout; give them the cell and let them scroll. */
.cph-embed[b-jnj74l5wgk] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    padding: 6px 8px;
}
/* /Components/Charts/ChartExplainPanel.razor.rz.scp.css */
/* "Explain this chart" panel - sits above the indicator rows in the sidebar's Indicators tab */

.explain-panel[b-7ggryhp21q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 8px 8px 10px;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--border-color, rgba(100, 120, 150, 0.2));
}

.explain-title[b-7ggryhp21q] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.explain-title svg[b-7ggryhp21q] {
    opacity: 0.7;
    flex-shrink: 0;
}

.explain-ai-tag[b-7ggryhp21q] {
    margin-left: auto;
    padding: 1px 5px;
    border-radius: var(--r-sm, 4px);
    background: rgba(99, 102, 241, 0.18);
    border: 1px solid rgba(99, 102, 241, 0.4);
    color: #a5b4fc;
    font-size: 9px;
    letter-spacing: 0.4px;
}

.explain-empty[b-7ggryhp21q] {
    font-size: 11px;
    color: var(--text-muted, #666);
    padding: 4px 0;
}

.explain-actions[b-7ggryhp21q] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.explain-btn[b-7ggryhp21q] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border: 1px solid rgba(99, 102, 241, 0.45);
    border-radius: var(--r-sm, 4px);
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.22), rgba(139, 92, 246, 0.22));
    color: var(--text-primary, #e6f1ff);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-fast, 120ms) ease, border-color var(--dur-fast, 120ms) ease;
}

.explain-btn:hover:not(:disabled)[b-7ggryhp21q] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.38), rgba(139, 92, 246, 0.38));
    border-color: rgba(139, 92, 246, 0.7);
}

.explain-btn:disabled[b-7ggryhp21q] {
    cursor: default;
    opacity: 0.6;
}

.explain-btn.loading[b-7ggryhp21q] {
    opacity: 0.85;
}

.explain-spinner[b-7ggryhp21q] {
    width: 11px;
    height: 11px;
    border: 2px solid rgba(255, 255, 255, 0.25);
    border-top-color: #c7d2fe;
    border-radius: 50%;
    animation: explain-spin-b-7ggryhp21q 0.8s linear infinite;
}

@keyframes explain-spin-b-7ggryhp21q {
    to { transform: rotate(360deg); }
}

.explain-cost[b-7ggryhp21q] {
    font-size: 10px;
    color: var(--text-muted, #666);
    white-space: nowrap;
}

.explain-cost-sep[b-7ggryhp21q] {
    margin: 0 4px;
}

.explain-error[b-7ggryhp21q] {
    padding: 6px 8px;
    border-radius: var(--r-sm, 4px);
    background: rgba(239, 83, 80, 0.12);
    border: 1px solid rgba(239, 83, 80, 0.35);
    color: #f8b4b4;
    font-size: 11px;
    line-height: 1.35;
}

.explain-text[b-7ggryhp21q] {
    font-size: 12px;
    line-height: 1.5;
    color: var(--text-primary, #e6f1ff);
}

.explain-text p[b-7ggryhp21q] {
    margin: 0 0 8px;
}

.explain-text p:last-child[b-7ggryhp21q] {
    margin-bottom: 0;
}

.explain-text.fallback[b-7ggryhp21q] {
    color: var(--text-secondary, #8892b0);
}

.explain-disclaimer[b-7ggryhp21q] {
    font-size: 10px;
    font-style: italic;
    color: var(--text-muted, #666);
    border-left: 2px solid rgba(99, 102, 241, 0.5);
    padding-left: 6px;
}

.explain-meta[b-7ggryhp21q] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 10px;
    color: var(--text-muted, #666);
}

.explain-note[b-7ggryhp21q] {
    color: var(--color-warning, #ffab40);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}
/* /Components/Charts/ChartLayoutsMenu.razor.rz.scp.css */
/* Saved layouts menu (R4.3). Styled like the chart toolbar's indicator pills and their dropdowns
   (ChartLightweight.razor.css .ind-btn.pill / .ind-dropdown.modern) - the page's styles are scoped
   to the page, so the same look is restated here under the lay-* names. */

.lay-wrap[b-2hvo6rjyeb] {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 3px;
}

/* ── The pill ── */
.lay-btn[b-2hvo6rjyeb] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 180px;
    padding: 5px 9px 5px 11px;
    border-radius: var(--r-sm, 4px);
    color: rgba(165, 178, 205, 0.85);
    background: linear-gradient(180deg, rgba(46, 58, 78, 0.55), rgba(24, 31, 45, 0.65));
    border: 1px solid rgba(120, 138, 168, 0.22);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 2px rgba(0, 0, 0, 0.25);
    font: inherit;
    cursor: pointer;
    transition:
        background var(--dur-med, 0.2s) ease,
        border-color var(--dur-med, 0.2s) ease,
        box-shadow var(--dur-med, 0.2s) ease,
        color var(--dur-med, 0.2s) ease,
        transform var(--dur-fast, 0.12s) cubic-bezier(0.34, 1.56, 0.64, 1);
}

.lay-btn[b-2hvo6rjyeb]::after {
    content: '';
    flex-shrink: 0;
    width: 5px;
    height: 5px;
    margin-left: 1px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    opacity: 0.55;
    transform: translateY(-1px) rotate(45deg);
    transition: transform var(--dur-med, 0.2s) cubic-bezier(0.22, 1, 0.36, 1), opacity var(--dur-fast, 0.12s) ease;
}

.lay-btn:hover[b-2hvo6rjyeb] {
    color: #e9f3ff;
    background: linear-gradient(180deg, rgba(58, 72, 96, 0.7), rgba(32, 42, 58, 0.8));
    border-color: rgba(0, 205, 237, 0.4);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 4px 12px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(0, 205, 237, 0.08);
    transform: translateY(-1px);
}

.lay-btn:active[b-2hvo6rjyeb] { transform: translateY(0) scale(0.96); }
.lay-btn:hover[b-2hvo6rjyeb]::after { opacity: 0.8; }

/* A layout is active: brand-tinted glass. */
.lay-btn.on[b-2hvo6rjyeb] {
    color: #97f1ff;
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    border-color: rgba(0, 205, 237, 0.55);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.18),
        0 0 14px rgba(0, 205, 237, 0.22);
}

.lay-btn.open[b-2hvo6rjyeb] {
    border-color: rgba(0, 205, 237, 0.7);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.2),
        0 0 0 2px rgba(0, 205, 237, 0.18),
        0 0 18px rgba(0, 205, 237, 0.3);
}

.lay-btn.open[b-2hvo6rjyeb]::after {
    opacity: 0.95;
    transform: translateY(1px) rotate(225deg);
}

.lay-btn.locked[b-2hvo6rjyeb] { opacity: 0.75; }
.lay-btn.locked:hover[b-2hvo6rjyeb] { opacity: 1; }

.lay-label[b-2hvo6rjyeb] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.lay-count[b-2hvo6rjyeb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    background: rgba(120, 138, 168, 0.22);
    border-radius: var(--r-sm, 4px);
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    color: rgba(220, 230, 245, 0.9);
    font-variant-numeric: tabular-nums;
}

.lay-btn.on .lay-count[b-2hvo6rjyeb] {
    background: linear-gradient(135deg, #12dfff, #00bdda);
    color: #06170f;
    box-shadow: 0 0 8px rgba(18, 223, 255, 0.45);
}

[b-2hvo6rjyeb] .lay-lock {
    display: inline-flex;
    flex-shrink: 0;
    margin-left: 3px;
    vertical-align: -1px;
    color: #a78bfa;
}

/* ── The dropdown ── */
.lay-dropdown[b-2hvo6rjyeb] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    min-width: 230px;
    max-width: 300px;
    background: linear-gradient(180deg, rgba(20, 26, 40, 0.99), rgba(12, 16, 26, 0.99));
    border: 1px solid rgba(120, 135, 160, 0.18);
    border-radius: var(--r-lg, 10px);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
    padding: 5px;
    z-index: var(--z-dropdown, 100);
    backdrop-filter: blur(10px);
    transform-origin: top left;
    animation: lay-drop-in-b-2hvo6rjyeb 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes lay-drop-in-b-2hvo6rjyeb {
    from { opacity: 0; transform: translateY(-6px) scale(0.97); }
    to   { opacity: 1; transform: none; }
}

.lay-row[b-2hvo6rjyeb] {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 0 2px 0 0;
    border-radius: var(--r-md, 6px);
}

.lay-row:hover[b-2hvo6rjyeb] { background: rgba(255, 255, 255, 0.05); }
.lay-row.active[b-2hvo6rjyeb] { background: rgba(0, 205, 237, 0.08); }
.lay-row.naming[b-2hvo6rjyeb] { padding: 3px 2px 3px 6px; }

.lay-name[b-2hvo6rjyeb],
.lay-item[b-2hvo6rjyeb] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
    padding: 7px 10px;
    background: transparent;
    border: 0;
    border-radius: var(--r-md, 6px);
    color: rgba(200, 212, 235, 0.9);
    font-size: 11px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.lay-name:disabled[b-2hvo6rjyeb],
.lay-item:disabled[b-2hvo6rjyeb] { cursor: default; opacity: 0.6; }
.lay-item:hover[b-2hvo6rjyeb] { background: rgba(255, 255, 255, 0.05); color: #e9f3ff; }
.lay-item.disabled[b-2hvo6rjyeb] { opacity: 0.45; }
.lay-item.locked[b-2hvo6rjyeb] { opacity: 0.75; }
.lay-item.locked:hover[b-2hvo6rjyeb] { opacity: 1; }

.lay-name-text[b-2hvo6rjyeb] {
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lay-row.active .lay-name[b-2hvo6rjyeb] { color: #97f1ff; }

/* The active marker: a brand dot, hollow for the others. */
.lay-dot[b-2hvo6rjyeb] {
    flex-shrink: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1.5px solid rgba(120, 138, 168, 0.5);
}

.lay-row.active .lay-dot[b-2hvo6rjyeb] {
    border-color: #00cded;
    background: #00cded;
    box-shadow: 0 0 6px rgba(0, 205, 237, 0.6);
}

.lay-icon[b-2hvo6rjyeb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 22px;
    height: 22px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: var(--r-sm, 4px);
    color: rgba(136, 146, 176, 0.6);
    cursor: pointer;
    opacity: 0;
    transition: opacity var(--dur-fast, 0.12s) ease, color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.lay-row:hover .lay-icon[b-2hvo6rjyeb],
.lay-row:focus-within .lay-icon[b-2hvo6rjyeb],
.lay-row.naming .lay-icon[b-2hvo6rjyeb] { opacity: 1; }
.lay-icon:hover[b-2hvo6rjyeb] { color: #e9f3ff; background: rgba(255, 255, 255, 0.08); }
.lay-icon.ok[b-2hvo6rjyeb] { color: #94f8bd; }
.lay-icon:disabled[b-2hvo6rjyeb] { opacity: 0.4; cursor: default; }

.lay-input[b-2hvo6rjyeb] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 5px 8px;
    background: rgba(0, 0, 0, 0.35);
    border: 1px solid rgba(0, 205, 237, 0.4);
    border-radius: var(--r-sm, 4px);
    color: #e9f3ff;
    font: inherit;
    font-size: 11px;
    outline: none;
}

.lay-input:focus[b-2hvo6rjyeb] { border-color: rgba(0, 205, 237, 0.8); box-shadow: 0 0 0 2px rgba(0, 205, 237, 0.15); }

.lay-confirm[b-2hvo6rjyeb] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 6px 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 11px;
    color: rgba(200, 212, 235, 0.9);
}

.lay-mini[b-2hvo6rjyeb] {
    flex-shrink: 0;
    padding: 4px 8px;
    background: rgba(120, 138, 168, 0.16);
    border: 1px solid transparent;
    border-radius: var(--r-sm, 4px);
    color: rgba(220, 230, 245, 0.9);
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
}

.lay-mini:hover[b-2hvo6rjyeb] { background: rgba(120, 138, 168, 0.28); }
.lay-mini.danger[b-2hvo6rjyeb] { background: rgba(255, 82, 82, 0.18); color: #ff8a8a; }
.lay-mini.danger:hover[b-2hvo6rjyeb] { background: rgba(255, 82, 82, 0.3); }
.lay-mini:disabled[b-2hvo6rjyeb] { opacity: 0.5; cursor: default; }

.lay-badge[b-2hvo6rjyeb] {
    margin-left: auto;
    padding: 2px 6px;
    border-radius: var(--r-sm, 4px);
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    background: rgba(120, 135, 160, 0.14);
    color: rgba(150, 160, 185, 0.85);
    font-variant-numeric: tabular-nums;
}

.lay-badge.pro[b-2hvo6rjyeb] { background: rgba(139, 92, 246, 0.22); color: #c4b5fd; }

.lay-divider[b-2hvo6rjyeb] {
    height: 1px;
    margin: 5px 8px;
    background: linear-gradient(90deg, transparent, rgba(100, 120, 150, 0.25), transparent);
}

.lay-note[b-2hvo6rjyeb] {
    padding: 6px 10px;
    font-size: 10px;
    line-height: 1.4;
    color: rgba(136, 146, 176, 0.8);
}

.lay-error[b-2hvo6rjyeb] {
    margin: 4px 2px 0;
    padding: 6px 10px;
    border-radius: var(--r-md, 6px);
    background: rgba(255, 82, 82, 0.12);
    font-size: 10px;
    line-height: 1.4;
    color: #ff8a8a;
}

/* ── Conflict modal ── */
.lay-modal-overlay[b-2hvo6rjyeb] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(5, 8, 14, 0.7);
    backdrop-filter: blur(3px);
    z-index: var(--z-modal, 1000);
}

.lay-modal[b-2hvo6rjyeb] {
    width: min(100%, 380px);
    padding: 18px 20px 16px;
    background: linear-gradient(180deg, rgba(22, 28, 42, 0.99), rgba(14, 18, 28, 0.99));
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-lg, 10px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.6);
    color: rgba(220, 230, 245, 0.92);
}

.lay-modal h3[b-2hvo6rjyeb] {
    margin: 0 0 8px;
    font-size: 14px;
    font-weight: 700;
    color: #e9f3ff;
    overflow-wrap: anywhere;
}

.lay-modal p[b-2hvo6rjyeb] {
    margin: 0 0 16px;
    font-size: 12px;
    line-height: 1.5;
    color: rgba(165, 178, 205, 0.9);
}

.lay-modal-actions[b-2hvo6rjyeb] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.lay-modal-btn[b-2hvo6rjyeb] {
    padding: 7px 12px;
    background: rgba(120, 138, 168, 0.16);
    border: 1px solid rgba(120, 138, 168, 0.25);
    border-radius: var(--r-sm, 4px);
    color: rgba(220, 230, 245, 0.92);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
}

.lay-modal-btn:hover[b-2hvo6rjyeb] { background: rgba(120, 138, 168, 0.28); }

.lay-modal-btn.primary[b-2hvo6rjyeb] {
    background: linear-gradient(135deg, #12dfff, #00bdda);
    border-color: transparent;
    color: #06170f;
}

.lay-modal-btn.primary:hover[b-2hvo6rjyeb] { filter: brightness(1.08); }

@media (prefers-reduced-motion: reduce) {
    .lay-btn[b-2hvo6rjyeb],
    .lay-btn[b-2hvo6rjyeb]::after,
    .lay-icon[b-2hvo6rjyeb] { transition: none; }
    .lay-btn:hover[b-2hvo6rjyeb],
    .lay-btn:active[b-2hvo6rjyeb] { transform: none; }
    .lay-dropdown[b-2hvo6rjyeb] { animation: none; }
}
/* /Components/Charts/ChartNavigator.razor.rz.scp.css */
/* The list walk bar between the chart toolbar and the chart grid. */
.chart-nav[b-q23t35ok50] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-height: 30px;
    padding: 3px 12px;
    background: rgba(13, 17, 28, 0.98);
    border-bottom: 1px solid rgba(0, 205, 237, 0.12);
    color: var(--text-secondary, #9fb0c7);
    font-size: 12px;
    line-height: 1.3;
}

.chart-nav-title[b-q23t35ok50] {
    color: var(--text-primary, #e6f1ff);
    font-weight: 600;
}

.chart-nav-title[b-q23t35ok50]::after {
    content: "·";
    margin-left: 8px;
    color: var(--text-muted, #6b7a90);
    font-weight: 400;
}

.chart-nav-pos[b-q23t35ok50] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.chart-nav-btn[b-q23t35ok50] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 22px;
    padding: 0 0 2px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: var(--r-sm, 4px);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #e6f1ff);
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    transition: background var(--dur-fast, 120ms), border-color var(--dur-fast, 120ms);
}

.chart-nav-btn:hover:not(:disabled)[b-q23t35ok50] {
    background: rgba(0, 205, 237, 0.14);
    border-color: rgba(0, 205, 237, 0.45);
}

.chart-nav-btn:disabled[b-q23t35ok50] {
    opacity: 0.35;
    cursor: default;
}

.chart-nav-btn + .chart-nav-btn[b-q23t35ok50] {
    margin-left: -4px;
}

.chart-nav-chip[b-q23t35ok50] {
    max-width: min(60vw, 520px);
    padding: 2px 9px;
    border-radius: 999px;
    background: rgba(0, 205, 237, 0.10);
    border: 1px solid rgba(0, 205, 237, 0.25);
    color: var(--text-primary, #e6f1ff);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.chart-nav-chip.muted[b-q23t35ok50] {
    background: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.12);
    color: var(--text-secondary, #9fb0c7);
}

.chart-nav-spacer[b-q23t35ok50] {
    flex: 1 1 0;
    min-width: 4px;
}

.chart-nav-back[b-q23t35ok50] {
    color: var(--accent-primary, #00cded);
    text-decoration: none;
    white-space: nowrap;
}

.chart-nav-back:hover[b-q23t35ok50] {
    text-decoration: underline;
}

.chart-nav-close[b-q23t35ok50] {
    padding: 0 4px;
    border: none;
    background: none;
    color: var(--text-muted, #6b7a90);
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}

.chart-nav-close:hover[b-q23t35ok50] {
    color: var(--text-primary, #e6f1ff);
}

.chart-nav-expired[b-q23t35ok50] {
    border-bottom-color: rgba(255, 255, 255, 0.08);
}

@media (max-width: 640px) {
    .chart-nav[b-q23t35ok50] {
        gap: 6px;
        padding: 3px 8px;
    }

    .chart-nav-chip[b-q23t35ok50] {
        max-width: 100%;
        flex-basis: 100%;
        order: 10;
    }
}
/* /Components/Charts/CompareMenu.razor.rz.scp.css */
/* Compare / relative-strength menu (P2-B). Styled like the chart toolbar's indicator pills and their
   dropdowns (ChartLightweight.razor.css .ind-btn.pill / .ind-dropdown.modern, restated here under the
   cmp-* names like ChartLayoutsMenu does, since the page's styles are scoped to the page). */

.cmp-wrap[b-6seyy8qhbm] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 4px;
    margin-left: 3px;
}

/* ── The pill ── */
.cmp-btn[b-6seyy8qhbm] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px 5px 11px;
    border-radius: var(--r-sm, 4px);
    color: rgba(165, 178, 205, 0.85);
    background: linear-gradient(180deg, rgba(46, 58, 78, 0.55), rgba(24, 31, 45, 0.65));
    border: 1px solid rgba(120, 138, 168, 0.22);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 2px rgba(0, 0, 0, 0.25);
    font: inherit;
    cursor: pointer;
    transition:
        background var(--dur-med, 0.2s) ease,
        border-color var(--dur-med, 0.2s) ease,
        box-shadow var(--dur-med, 0.2s) ease,
        color var(--dur-med, 0.2s) ease,
        transform var(--dur-fast, 0.12s) cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cmp-btn[b-6seyy8qhbm]::after {
    content: '';
    flex-shrink: 0;
    width: 5px;
    height: 5px;
    margin-left: 1px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    opacity: 0.55;
    transform: translateY(-1px) rotate(45deg);
    transition: transform var(--dur-med, 0.2s) cubic-bezier(0.22, 1, 0.36, 1), opacity var(--dur-fast, 0.12s) ease;
}

.cmp-btn:hover[b-6seyy8qhbm] {
    color: #e9f3ff;
    background: linear-gradient(180deg, rgba(58, 72, 96, 0.7), rgba(32, 42, 58, 0.8));
    border-color: rgba(0, 205, 237, 0.4);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 4px 12px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(0, 205, 237, 0.08);
    transform: translateY(-1px);
}

.cmp-btn:active[b-6seyy8qhbm] { transform: translateY(0) scale(0.96); }
.cmp-btn:hover[b-6seyy8qhbm]::after { opacity: 0.8; }

.cmp-btn.on[b-6seyy8qhbm] {
    color: #97f1ff;
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    border-color: rgba(0, 205, 237, 0.55);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.18),
        0 0 14px rgba(0, 205, 237, 0.22);
}

.cmp-btn.open[b-6seyy8qhbm] {
    border-color: rgba(0, 205, 237, 0.7);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.2),
        0 0 0 2px rgba(0, 205, 237, 0.18),
        0 0 18px rgba(0, 205, 237, 0.3);
}

.cmp-btn.open[b-6seyy8qhbm]::after {
    opacity: 0.95;
    transform: translateY(1px) rotate(225deg);
}

.cmp-label[b-6seyy8qhbm] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    white-space: nowrap;
}

.cmp-count[b-6seyy8qhbm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    background: linear-gradient(135deg, #12dfff, #00bdda);
    border-radius: var(--r-sm, 4px);
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    color: #06170f;
    box-shadow: 0 0 8px rgba(18, 223, 255, 0.45);
    font-variant-numeric: tabular-nums;
}

/* ── Chips: the compare symbols next to the pill ── */
.cmp-chip[b-6seyy8qhbm] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 24px;
    padding: 0 4px 0 8px;
    border-radius: 12px;
    border: 1px solid color-mix(in srgb, var(--cc, #ffa726) 55%, transparent);
    background: color-mix(in srgb, var(--cc, #ffa726) 14%, rgba(24, 31, 45, 0.7));
    color: #e9f3ff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.4px;
    white-space: nowrap;
}

.cmp-chip-dot[b-6seyy8qhbm] {
    flex-shrink: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--cc, #ffa726);
    box-shadow: 0 0 6px color-mix(in srgb, var(--cc, #ffa726) 70%, transparent);
}

.cmp-chip-x[b-6seyy8qhbm],
.cmp-icon[b-6seyy8qhbm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: rgba(200, 212, 235, 0.7);
    cursor: pointer;
}

.cmp-chip-x:hover[b-6seyy8qhbm],
.cmp-icon:hover[b-6seyy8qhbm] { background: rgba(255, 255, 255, 0.12); color: #fff; }

/* ── The dropdown ── */
.cmp-dropdown[b-6seyy8qhbm] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    width: 250px;
    background: linear-gradient(180deg, rgba(20, 26, 40, 0.99), rgba(12, 16, 26, 0.99));
    border: 1px solid rgba(120, 135, 160, 0.18);
    border-radius: var(--r-lg, 10px);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
    padding: 6px;
    z-index: var(--z-dropdown, 100);
    backdrop-filter: blur(10px);
    transform-origin: top left;
    animation: cmp-drop-in-b-6seyy8qhbm 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes cmp-drop-in-b-6seyy8qhbm {
    from { opacity: 0; transform: translateY(-6px) scale(0.97); }
    to   { opacity: 1; transform: none; }
}

.cmp-title[b-6seyy8qhbm] {
    padding: 4px 8px 3px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: rgba(136, 146, 176, 0.9);
}

.cmp-search[b-6seyy8qhbm] { position: relative; padding: 0 4px; }

.cmp-input[b-6seyy8qhbm] {
    width: 100%;
    box-sizing: border-box;
    padding: 6px 8px;
    border-radius: var(--r-md, 6px);
    border: 1px solid rgba(120, 138, 168, 0.28);
    background: rgba(10, 14, 23, 0.8);
    color: #e9f3ff;
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    outline: none;
}

.cmp-input[b-6seyy8qhbm]::placeholder { text-transform: none; letter-spacing: 0; font-weight: 500; color: rgba(136, 146, 176, 0.7); }
.cmp-input:focus[b-6seyy8qhbm] { border-color: rgba(0, 205, 237, 0.55); box-shadow: 0 0 0 2px rgba(0, 205, 237, 0.14); }
.cmp-input:disabled[b-6seyy8qhbm] { opacity: 0.55; cursor: not-allowed; }
.cmp-input.small[b-6seyy8qhbm] { margin: 4px 4px 2px; width: calc(100% - 8px); font-size: 10px; padding: 5px 8px; }

.cmp-results[b-6seyy8qhbm] {
    margin: 3px 0 2px;
    border-radius: var(--r-md, 6px);
    border: 1px solid rgba(120, 138, 168, 0.18);
    background: rgba(16, 21, 33, 0.98);
    overflow: hidden;
}

.cmp-result[b-6seyy8qhbm] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    width: 100%;
    padding: 6px 8px;
    border: 0;
    background: transparent;
    color: rgba(200, 212, 235, 0.9);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.cmp-result:hover[b-6seyy8qhbm] { background: rgba(0, 205, 237, 0.1); color: #e9f3ff; }
.cmp-result-sym[b-6seyy8qhbm] { font-size: 11px; font-weight: 800; letter-spacing: 0.4px; min-width: 44px; }
.cmp-result-name[b-6seyy8qhbm] { font-size: 10px; opacity: 0.7; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.cmp-list[b-6seyy8qhbm] { padding: 2px 4px 0; }

.cmp-row[b-6seyy8qhbm] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 4px 4px 4px 6px;
    border-radius: var(--r-md, 6px);
}

.cmp-row:hover[b-6seyy8qhbm] { background: rgba(255, 255, 255, 0.05); }
.cmp-row-sym[b-6seyy8qhbm] { flex: 1 1 auto; font-size: 11px; font-weight: 700; letter-spacing: 0.4px; color: #e9f3ff; }

.cmp-item[b-6seyy8qhbm] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 7px 10px;
    background: transparent;
    border: 0;
    border-radius: var(--r-md, 6px);
    color: rgba(200, 212, 235, 0.9);
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.cmp-item:hover[b-6seyy8qhbm] { background: rgba(255, 255, 255, 0.05); color: #e9f3ff; }
.cmp-item.locked[b-6seyy8qhbm] { opacity: 0.8; }
.cmp-item.locked:hover[b-6seyy8qhbm] { opacity: 1; }
.cmp-item > span:first-child[b-6seyy8qhbm] { flex: 1 1 auto; }

.cmp-badge[b-6seyy8qhbm] {
    padding: 2px 5px;
    border-radius: var(--r-sm, 4px);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

.cmp-badge.pro[b-6seyy8qhbm] { background: rgba(167, 139, 250, 0.18); color: #c4b5fd; }

[b-6seyy8qhbm] .cmp-lock {
    display: inline-flex;
    flex-shrink: 0;
    color: #a78bfa;
}

.cmp-note[b-6seyy8qhbm] {
    padding: 3px 8px 4px;
    font-size: 10px;
    line-height: 1.35;
    color: rgba(136, 146, 176, 0.85);
}

.cmp-note.warn[b-6seyy8qhbm] { color: #ffb74d; }

.cmp-divider[b-6seyy8qhbm] { height: 1px; margin: 5px 4px; background: rgba(120, 135, 160, 0.16); }

.cmp-opt[b-6seyy8qhbm] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: var(--r-md, 6px);
    color: rgba(200, 212, 235, 0.9);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
}

.cmp-opt:hover[b-6seyy8qhbm] { background: rgba(255, 255, 255, 0.05); color: #e9f3ff; }
.cmp-opt input[b-6seyy8qhbm] { accent-color: #00cded; margin: 0; }
.cmp-hint[b-6seyy8qhbm] { margin-left: auto; font-size: 10px; font-weight: 600; color: rgba(136, 146, 176, 0.85); }

.cmp-seg[b-6seyy8qhbm] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 2px 4px;
}

.cmp-seg-btn[b-6seyy8qhbm] {
    flex: 1 1 auto;
    padding: 5px 8px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: rgba(24, 31, 45, 0.65);
    color: rgba(165, 178, 205, 0.9);
    font: inherit;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.3px;
    white-space: nowrap;
    cursor: pointer;
}

.cmp-seg-btn:hover[b-6seyy8qhbm] { color: #e9f3ff; border-color: rgba(0, 205, 237, 0.4); }
.cmp-seg-btn.selected[b-6seyy8qhbm] {
    color: #97f1ff;
    background: rgba(0, 205, 237, 0.16);
    border-color: rgba(0, 205, 237, 0.55);
}

@media (max-width: 768px) {
    .cmp-chip-text[b-6seyy8qhbm] { display: none; }
    .cmp-chip[b-6seyy8qhbm] { padding-left: 6px; }
}

@media (prefers-reduced-motion: reduce) {
    .cmp-btn[b-6seyy8qhbm] { transition: none; }
    .cmp-dropdown[b-6seyy8qhbm] { animation: none; }
}
/* /Components/Charts/EmptyCellMenu.razor.rz.scp.css */
/* The empty cell's quick-fill menu (P4-G): fills the cell, scrolls inside, stays readable in a 6-grid. */

.ecm[b-fyits7acma] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    min-height: 0;
    padding: 10px 12px 8px;
    gap: 8px;
    color: var(--text-primary, #e6edf7);
    font-size: 12px;
    cursor: default;
}

/* ── Tabs ── */
.ecm-tabs[b-fyits7acma] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.ecm-tab[b-fyits7acma] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: rgba(24, 31, 45, 0.6);
    color: rgba(165, 178, 205, 0.8);
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: color var(--dur-fast, 0.12s) ease, border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.ecm-tab:hover[b-fyits7acma] { color: #e9f3ff; border-color: rgba(0, 205, 237, 0.4); }
.ecm-tab.on[b-fyits7acma] {
    color: #97f1ff;
    background: rgba(0, 205, 237, 0.16);
    border-color: rgba(0, 205, 237, 0.5);
}

/* ── Search ── */
.ecm-search[b-fyits7acma] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    width: 100%;
    padding: 7px 10px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(0, 205, 237, 0.3);
    background: rgba(0, 205, 237, 0.08);
    color: rgba(200, 212, 235, 0.9);
    font: inherit;
    font-size: 12px;
    text-align: left;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.ecm-search:hover[b-fyits7acma] { border-color: rgba(0, 205, 237, 0.6); background: rgba(0, 205, 237, 0.14); color: #fff; }
.ecm-search svg[b-fyits7acma] { color: var(--accent-primary, #00cded); flex-shrink: 0; }

/* ── Source chips ── */
.ecm-sources[b-fyits7acma] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    flex-shrink: 0;
}

.ecm-chip[b-fyits7acma] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    border-radius: 999px;
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: rgba(24, 31, 45, 0.5);
    color: rgba(165, 178, 205, 0.8);
    font: inherit;
    font-size: 10.5px;
    white-space: nowrap;
    cursor: pointer;
    transition: color var(--dur-fast, 0.12s) ease, border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.ecm-chip:hover[b-fyits7acma] { color: #e9f3ff; border-color: rgba(0, 205, 237, 0.4); }
.ecm-chip.on[b-fyits7acma] { color: #97f1ff; background: rgba(0, 205, 237, 0.14); border-color: rgba(0, 205, 237, 0.5); }
.ecm-chip.locked[b-fyits7acma] { opacity: 0.75; }
.ecm-lock[b-fyits7acma] { opacity: 0.8; }

/* ── Lists ── */
.ecm-list[b-fyits7acma] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.ecm-note[b-fyits7acma] {
    padding: 10px 4px;
    color: rgba(165, 178, 205, 0.6);
    font-size: 11px;
}

.ecm-symbols[b-fyits7acma] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.ecm-sym[b-fyits7acma] {
    display: inline-flex;
    align-items: baseline;
    gap: 5px;
    padding: 3px 8px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.2);
    background: rgba(24, 31, 45, 0.55);
    color: #e9f3ff;
    font: inherit;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.ecm-sym:hover[b-fyits7acma] { border-color: rgba(0, 205, 237, 0.5); background: rgba(0, 205, 237, 0.12); }

.ecm-sym-text[b-fyits7acma] {
    font-family: var(--font-mono, "JetBrains Mono", monospace);
    font-weight: 600;
    font-size: 11.5px;
}

.ecm-sym-detail[b-fyits7acma] {
    font-family: var(--font-mono, "JetBrains Mono", monospace);
    font-size: 10px;
    color: rgba(165, 178, 205, 0.7);
}

.ecm-sym-detail.up[b-fyits7acma] { color: var(--color-bullish, #0fd863); }
.ecm-sym-detail.down[b-fyits7acma] { color: var(--color-bearish, #ff5252); }

.ecm-fill[b-fyits7acma] {
    flex-shrink: 0;
    width: 100%;
    padding: 6px 10px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(0, 205, 237, 0.45);
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    color: #97f1ff;
    font: inherit;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: box-shadow var(--dur-fast, 0.12s) ease;
}

.ecm-fill:hover[b-fyits7acma] { box-shadow: 0 0 14px rgba(0, 205, 237, 0.25); }

/* ── Panels ── */
.ecm-panels[b-fyits7acma] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.ecm-panel[b-fyits7acma] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 6px 8px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid transparent;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.12s) ease, background var(--dur-fast, 0.12s) ease;
}

.ecm-panel:hover[b-fyits7acma] { background: rgba(0, 205, 237, 0.08); border-color: rgba(0, 205, 237, 0.3); }

.ecm-panel-icon[b-fyits7acma] {
    flex-shrink: 0;
    width: 22px;
    text-align: center;
    font-size: 14px;
    color: var(--accent-primary, #00cded);
}

.ecm-panel-text[b-fyits7acma] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.ecm-panel-title[b-fyits7acma] {
    font-weight: 600;
    font-size: 11.5px;
    color: #e9f3ff;
}

.ecm-panel-desc[b-fyits7acma] {
    font-size: 10.5px;
    color: rgba(165, 178, 205, 0.65);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ecm-pro[b-fyits7acma] {
    margin-left: 5px;
    padding: 0 5px;
    border-radius: 3px;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #ffd166;
    background: rgba(255, 209, 102, 0.15);
    vertical-align: middle;
}
/* /Components/Charts/IndicatorSettingsPopover.razor.rz.scp.css */
/* The indicator settings popover: opens beside the toolbar dropdown it belongs to (the parent
   .dropdown-wrap is position: relative). Same surface as .ind-dropdown.modern. */
.isp[b-vy2mqsodld] {
    position: absolute;
    top: 0;
    left: 100%;
    margin-left: 6px;
    width: 300px;
    max-width: calc(100vw - 24px);
    background: linear-gradient(180deg, rgba(20, 26, 40, 0.99), rgba(12, 16, 26, 0.99));
    border: 1px solid rgba(120, 135, 160, 0.18);
    border-radius: 10px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
    padding: 8px 10px 10px;
    z-index: 1001;
    color: #e1e5ea;
    font-size: 11px;
    text-align: left;
    cursor: default;
    font-weight: 500;
}

.isp-head[b-vy2mqsodld] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.isp-title[b-vy2mqsodld] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: #8892b0;
}

.isp-close[b-vy2mqsodld] {
    background: transparent;
    border: none;
    color: #8892b0;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    padding: 0 2px;
}

.isp-close:hover[b-vy2mqsodld] { color: #e1e5ea; }

/* MA kinds: a row per line */
.isp-grid.ma[b-vy2mqsodld] {
    display: grid;
    grid-template-columns: 24px 1fr 62px 76px 24px;
    gap: 5px 6px;
    align-items: center;
}

/* the single-instance kinds: label / control pairs */
.isp-grid.one[b-vy2mqsodld] {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 6px 8px;
    align-items: center;
}

.isp-col[b-vy2mqsodld] {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    color: rgba(136, 146, 176, 0.8);
}

.isp-lbl[b-vy2mqsodld] {
    color: #8892b0;
    font-weight: 600;
}

.isp-num[b-vy2mqsodld],
.isp-sel[b-vy2mqsodld] {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    height: 24px;
    padding: 0 6px;
    border-radius: 5px;
    border: 1px solid rgba(120, 135, 160, 0.3);
    background: rgba(255, 255, 255, 0.04);
    color: #e1e5ea;
    font: 500 11px "JetBrains Mono", Inter, monospace;
}

.isp-sel[b-vy2mqsodld] { font-family: Inter, "SF Pro Display", -apple-system, sans-serif; }

.isp-num:focus[b-vy2mqsodld],
.isp-sel:focus[b-vy2mqsodld] {
    outline: none;
    border-color: var(--accent-primary, #00cded);
    box-shadow: 0 0 0 2px rgba(0, 205, 237, 0.18);
}

.isp-num.bad[b-vy2mqsodld] {
    border-color: #ef4444;
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.2);
}

.isp-num:disabled[b-vy2mqsodld],
.isp-sel:disabled[b-vy2mqsodld],
.isp-swatch:disabled[b-vy2mqsodld] {
    opacity: 0.45;
    cursor: not-allowed;
}

/* colour swatch button: --sw is the colour */
.isp-swatch[b-vy2mqsodld] {
    width: 22px;
    height: 22px;
    border-radius: 5px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    background: var(--sw, #8892b0);
    cursor: pointer;
    padding: 0;
}

.isp-swatch.open[b-vy2mqsodld] { outline: 2px solid var(--accent-primary, #00cded); outline-offset: 1px; }

.isp-colour[b-vy2mqsodld] { position: relative; display: flex; align-items: center; }

/* the palette: the drawing toolbar's 12 colours + a free pick; spans the grid row below its swatch */
.isp-palette[b-vy2mqsodld] {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(6, 22px);
    gap: 6px;
    padding: 8px;
    border-radius: 8px;
    background: rgba(10, 14, 23, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.28);
}

.isp-colour .isp-palette[b-vy2mqsodld] {
    position: absolute;
    top: 26px;
    left: 0;
    z-index: 2;
    box-shadow: 0 10px 32px rgba(0, 0, 0, 0.5);
}

.isp-chip[b-vy2mqsodld] {
    width: 22px;
    height: 22px;
    border-radius: 5px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    background: var(--sw);
    cursor: pointer;
    padding: 0;
}

.isp-chip.on[b-vy2mqsodld] { outline: 2px solid var(--accent-primary, #00cded); outline-offset: 1px; }

.isp-custom[b-vy2mqsodld] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #8892b0;
    font-size: 11px;
    cursor: pointer;
}

.isp-custom input[type="color"][b-vy2mqsodld] {
    width: 28px;
    height: 20px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 4px;
    background: transparent;
    cursor: pointer;
}

.isp-remove[b-vy2mqsodld],
.isp-lock[b-vy2mqsodld] {
    background: transparent;
    border: none;
    color: #8892b0;
    cursor: pointer;
    padding: 0;
    font-size: 14px;
    line-height: 1;
}

.isp-remove:hover[b-vy2mqsodld] { color: #f87171; }

.isp-lock[b-vy2mqsodld] {
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: #a78bfa;
}

.isp-add[b-vy2mqsodld] {
    margin-top: 8px;
    width: 100%;
    height: 26px;
    border-radius: 6px;
    border: 1px dashed rgba(120, 135, 160, 0.35);
    background: transparent;
    color: #c5cee0;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}

.isp-add:hover[b-vy2mqsodld] { border-color: var(--accent-primary, #00cded); color: var(--accent-primary, #00cded); }
.isp-add.locked[b-vy2mqsodld] { color: #8892b0; }

.isp-pro[b-vy2mqsodld] {
    padding: 1px 5px;
    border-radius: 4px;
    background: rgba(99, 102, 241, 0.18);
    color: #a78bfa;
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.isp-errors[b-vy2mqsodld] {
    margin: 8px 0 0;
    padding: 6px 8px 6px 20px;
    border-radius: 6px;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #fca5a5;
    font-size: 10.5px;
    line-height: 1.4;
}

.isp-actions[b-vy2mqsodld] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 10px;
}

.isp-spacer[b-vy2mqsodld] { flex: 1; }

.isp-btn[b-vy2mqsodld] {
    height: 26px;
    padding: 0 12px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid rgba(120, 135, 160, 0.3);
    background: rgba(255, 255, 255, 0.04);
    color: #c5cee0;
}

.isp-btn.ghost:hover[b-vy2mqsodld] { background: rgba(255, 255, 255, 0.08); color: #e1e5ea; }

.isp-btn.primary[b-vy2mqsodld] {
    border-color: var(--accent-primary, #00cded);
    background: var(--accent-primary, #00cded);
    color: #0a0e17;
}

.isp-btn.primary:hover[b-vy2mqsodld] { filter: brightness(1.08); }

@media (max-width: 720px) {
    .isp[b-vy2mqsodld] {
        left: 0;
        top: 100%;
        margin: 4px 0 0;
    }
}
/* /Components/Charts/JournalEntryModal.razor.rz.scp.css */
/* P4-F journal entry dialog: the alert dialog's look (AddAlertModal.razor.css) */
.modal-overlay[b-feh8owidg6] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    backdrop-filter: blur(4px);
}

.journal-modal[b-feh8owidg6] {
    background: var(--bg-card, #1a1a2e);
    border-radius: 12px;
    width: 90%;
    max-width: 460px;
    max-height: 85vh;
    overflow-y: auto;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    display: flex;
    flex-direction: column;
}

.modal-header[b-feh8owidg6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-header, rgba(255, 255, 255, 0.02));
}

.modal-header h3[b-feh8owidg6] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.modal-header h3 i[b-feh8owidg6] {
    color: #38bdf8;
}

.modal-close[b-feh8owidg6] {
    background: none;
    border: none;
    color: var(--text-muted, #888);
    font-size: 1.2rem;
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 6px;
    transition: all 0.2s;
}

.modal-close:hover[b-feh8owidg6] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary, #fff);
}

.modal-body[b-feh8owidg6] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-error[b-feh8owidg6] {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #ef4444;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.form-group[b-feh8owidg6] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-group label[b-feh8owidg6] {
    font-size: 0.8rem;
    color: var(--text-muted, #888);
    font-weight: 500;
}

.form-group input[b-feh8owidg6],
.form-group textarea[b-feh8owidg6] {
    background: var(--bg-input, rgba(255, 255, 255, 0.05));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    color: var(--text-primary, #fff);
    font-size: 0.9rem;
    transition: border-color 0.2s;
    color-scheme: dark;
}

.form-group input:focus[b-feh8owidg6],
.form-group textarea:focus[b-feh8owidg6] {
    outline: none;
    border-color: #38bdf8;
}

.form-group textarea[b-feh8owidg6] {
    min-height: 60px;
    resize: vertical;
}

.form-group .hint[b-feh8owidg6] {
    font-size: 0.7rem;
    color: var(--text-muted, #888);
}

.form-row[b-feh8owidg6] {
    display: flex;
    gap: 0.75rem;
}

.flex-1[b-feh8owidg6] {
    flex: 1;
    min-width: 0;
}

/* Direction */
.direction-buttons[b-feh8owidg6] {
    display: flex;
    gap: 0.5rem;
}

.dir-btn[b-feh8owidg6] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.6rem 0.5rem;
    background: var(--bg-input, rgba(255, 255, 255, 0.05));
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    border-radius: 8px;
    color: var(--text-muted, #888);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.dir-btn:hover[b-feh8owidg6] {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-primary, #fff);
}

.dir-btn.buy.active[b-feh8owidg6] {
    background: rgba(34, 197, 94, 0.15);
    border-color: #22c55e;
    color: #22c55e;
}

.dir-btn.sell.active[b-feh8owidg6],
.dir-btn.short.active[b-feh8owidg6] {
    background: rgba(239, 68, 68, 0.15);
    border-color: #ef4444;
    color: #ef4444;
}

/* The entry being closed */
.entry-recap[b-feh8owidg6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.06));
    font-size: 0.85rem;
    color: var(--text-primary, #fff);
}

.entry-recap .dir[b-feh8owidg6] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 0.15rem 0.45rem;
    border-radius: 6px;
}

.entry-recap .dir.buy[b-feh8owidg6] { background: rgba(34, 197, 94, 0.15); color: #22c55e; }
.entry-recap .dir.sell[b-feh8owidg6],
.entry-recap .dir.short[b-feh8owidg6] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }

.entry-recap .recap-date[b-feh8owidg6] {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-muted, #888);
}

/* P&L / cost basis preview */
.pnl-preview[b-feh8owidg6] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    font-size: 0.85rem;
    border: 1px solid transparent;
}

.pnl-preview span[b-feh8owidg6] { color: var(--text-muted, #888); }
.pnl-preview strong[b-feh8owidg6] { font-size: 1rem; }
.pnl-preview .pct[b-feh8owidg6] { font-size: 0.8rem; }

.pnl-preview.gain[b-feh8owidg6] { background: rgba(34, 197, 94, 0.1); border-color: rgba(34, 197, 94, 0.3); }
.pnl-preview.gain strong[b-feh8owidg6], .pnl-preview.gain .pct[b-feh8owidg6] { color: #22c55e; }
.pnl-preview.loss[b-feh8owidg6] { background: rgba(239, 68, 68, 0.1); border-color: rgba(239, 68, 68, 0.3); }
.pnl-preview.loss strong[b-feh8owidg6], .pnl-preview.loss .pct[b-feh8owidg6] { color: #ef4444; }
.pnl-preview.neutral[b-feh8owidg6] { background: rgba(255, 255, 255, 0.03); border-color: var(--border-color, rgba(255, 255, 255, 0.06)); }
.pnl-preview.neutral strong[b-feh8owidg6] { color: var(--text-primary, #fff); }

/* Footer */
.modal-footer[b-feh8owidg6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    border-top: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-header, rgba(255, 255, 255, 0.02));
}

.modal-footer .spacer[b-feh8owidg6] { flex: 1; }

.btn-primary[b-feh8owidg6],
.btn-secondary[b-feh8owidg6],
.btn-link[b-feh8owidg6] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.55rem 1rem;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    border: 1px solid transparent;
}

.btn-primary[b-feh8owidg6] {
    background: #38bdf8;
    color: #0a0e17;
}

.btn-primary:hover:not(:disabled)[b-feh8owidg6] { background: #7dd3fc; }

.btn-secondary[b-feh8owidg6] {
    background: transparent;
    border-color: var(--border-color, rgba(255, 255, 255, 0.15));
    color: var(--text-muted, #aaa);
}

.btn-secondary:hover:not(:disabled)[b-feh8owidg6] { color: var(--text-primary, #fff); background: rgba(255, 255, 255, 0.06); }

.btn-link[b-feh8owidg6] {
    background: transparent;
    color: var(--text-muted, #aaa);
    padding-left: 0.25rem;
}

.btn-link:hover:not(:disabled)[b-feh8owidg6] { color: #f59e0b; }

.btn-primary:disabled[b-feh8owidg6],
.btn-secondary:disabled[b-feh8owidg6],
.btn-link:disabled[b-feh8owidg6] {
    opacity: 0.5;
    cursor: not-allowed;
}

.spinner[b-feh8owidg6] {
    width: 12px;
    height: 12px;
    border: 2px solid rgba(0, 0, 0, 0.25);
    border-top-color: #0a0e17;
    border-radius: 50%;
    animation: spin-b-feh8owidg6 0.7s linear infinite;
}

@keyframes spin-b-feh8owidg6 { to { transform: rotate(360deg); } }

@media (max-width: 480px) {
    .form-row[b-feh8owidg6] { flex-direction: column; }
}
/* /Components/Charts/JournalPanel.razor.rz.scp.css */
/* P4-F journal tab: the alerts panel's look (AlertsPanel.razor.css) */
.journal-panel[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0.75rem;
    gap: 0.625rem;
}

.journal-header[b-4j7hrmjzf2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
}

.header-title[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.header-title i[b-4j7hrmjzf2] {
    color: #38bdf8;
}

.scope-toggle[b-4j7hrmjzf2] {
    display: flex;
    gap: 2px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    padding: 2px;
}

.scope-btn[b-4j7hrmjzf2] {
    border: none;
    background: transparent;
    color: var(--text-muted, #888);
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.25rem 0.55rem;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
}

.scope-btn.active[b-4j7hrmjzf2] {
    background: rgba(56, 189, 248, 0.18);
    color: #38bdf8;
}

.add-entry-btn[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.6rem;
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.15) 0%, rgba(34, 197, 94, 0.12) 100%);
    border: 1px dashed rgba(56, 189, 248, 0.4);
    border-radius: 8px;
    color: #38bdf8;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.add-entry-btn:hover:not(:disabled)[b-4j7hrmjzf2] {
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.25) 0%, rgba(34, 197, 94, 0.2) 100%);
    border-style: solid;
}

.add-entry-btn:disabled[b-4j7hrmjzf2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.hint[b-4j7hrmjzf2] {
    font-size: 0.68rem;
    color: var(--text-muted, #777);
    text-align: center;
    margin-top: -0.25rem;
}

.panel-error[b-4j7hrmjzf2] {
    background: rgba(239, 68, 68, 0.15);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #ef4444;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    font-size: 0.78rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Summary line */
.summary-line[b-4j7hrmjzf2] {
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.5rem 0.625rem;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.06));
}

.summary-line .stat[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.summary-line .label[b-4j7hrmjzf2] {
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted, #888);
}

.summary-line strong[b-4j7hrmjzf2] {
    font-size: 0.8rem;
    color: var(--text-primary, #fff);
    white-space: nowrap;
}

.gain[b-4j7hrmjzf2] { color: #22c55e !important; }
.loss[b-4j7hrmjzf2] { color: #ef4444 !important; }
.muted[b-4j7hrmjzf2] { color: var(--text-muted, #777) !important; font-weight: 500; }

/* Lists */
.entries-list[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    overflow-y: auto;
    flex: 1;
    min-height: 0;
}

.symbol-group[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.symbol-head[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.45rem 0.6rem;
    border-radius: 8px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.08));
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #fff);
    cursor: pointer;
    text-align: left;
    transition: all 0.15s;
}

.symbol-head:hover[b-4j7hrmjzf2] {
    background: rgba(56, 189, 248, 0.1);
    border-color: rgba(56, 189, 248, 0.4);
}

.symbol-head.current[b-4j7hrmjzf2] {
    border-color: rgba(56, 189, 248, 0.5);
}

.symbol-head .symbol[b-4j7hrmjzf2] {
    font-weight: 700;
    font-size: 0.85rem;
}

.symbol-head .count[b-4j7hrmjzf2] {
    font-size: 0.68rem;
    color: var(--text-muted, #888);
}

.symbol-head .pnl[b-4j7hrmjzf2] {
    margin-left: auto;
    font-size: 0.78rem;
    font-weight: 600;
}

.symbol-head i[b-4j7hrmjzf2] {
    color: var(--text-muted, #888);
    font-size: 0.7rem;
}

/* Entry rows */
.entry-row[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    padding: 0.55rem 0.65rem;
    border-radius: 8px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.08));
    background: rgba(255, 255, 255, 0.02);
    transition: border-color 0.2s, background 0.2s;
    cursor: default;
}

.entry-row.closed[b-4j7hrmjzf2] {
    opacity: 0.8;
}

.entry-row.highlight[b-4j7hrmjzf2] {
    border-color: #38bdf8;
    background: rgba(56, 189, 248, 0.08);
    box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.3);
}

.entry-main[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.entry-main .dir[b-4j7hrmjzf2] {
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 0.12rem 0.4rem;
    border-radius: 5px;
}

.entry-main .dir.buy[b-4j7hrmjzf2] { background: rgba(34, 197, 94, 0.15); color: #22c55e; }
.entry-main .dir.sell[b-4j7hrmjzf2],
.entry-main .dir.short[b-4j7hrmjzf2] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }

.entry-row.closed .entry-main .dir[b-4j7hrmjzf2] {
    background: rgba(156, 163, 175, 0.15);
    color: #9ca3af;
}

.entry-main .size[b-4j7hrmjzf2] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.entry-main .pnl[b-4j7hrmjzf2] {
    margin-left: auto;
    font-size: 0.8rem;
    font-weight: 600;
    white-space: nowrap;
}

.entry-main .pnl small[b-4j7hrmjzf2] {
    font-size: 0.68rem;
    font-weight: 500;
    margin-left: 0.2rem;
    opacity: 0.85;
}

.entry-meta[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.68rem;
    color: var(--text-muted, #888);
    flex-wrap: wrap;
}

.entry-meta .exit[b-4j7hrmjzf2] {
    color: #9ca3af;
}

.open-badge[b-4j7hrmjzf2] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 0.05rem 0.35rem;
    border-radius: 4px;
    background: rgba(56, 189, 248, 0.15);
    color: #38bdf8;
    font-weight: 700;
}

.entry-notes[b-4j7hrmjzf2] {
    display: flex;
    align-items: baseline;
    gap: 0.35rem;
    flex-wrap: wrap;
    font-size: 0.7rem;
}

.entry-notes .tag[b-4j7hrmjzf2] {
    color: #a78bfa;
    font-weight: 600;
}

.entry-notes .note[b-4j7hrmjzf2] {
    color: var(--text-secondary, #aaa);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

.entry-actions[b-4j7hrmjzf2] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    margin-top: 0.1rem;
}

.act[b-4j7hrmjzf2] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: transparent;
    color: var(--text-muted, #aaa);
    font-size: 0.68rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.act:hover:not(:disabled)[b-4j7hrmjzf2] {
    color: var(--text-primary, #fff);
    background: rgba(255, 255, 255, 0.06);
}

.act.close[b-4j7hrmjzf2] {
    color: #22c55e;
    border-color: rgba(34, 197, 94, 0.35);
}

.act.close:hover:not(:disabled)[b-4j7hrmjzf2] {
    background: rgba(34, 197, 94, 0.12);
}

.act.danger[b-4j7hrmjzf2] {
    margin-left: auto;
    color: #ef4444;
    border-color: rgba(239, 68, 68, 0.3);
}

.act.danger:hover:not(:disabled)[b-4j7hrmjzf2] {
    background: rgba(239, 68, 68, 0.12);
}

.act:disabled[b-4j7hrmjzf2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.confirm[b-4j7hrmjzf2] {
    margin-left: auto;
    font-size: 0.68rem;
    color: #ef4444;
    font-weight: 600;
}

.confirm + .act.danger[b-4j7hrmjzf2] {
    margin-left: 0;
}

/* States */
.empty-state[b-4j7hrmjzf2],
.loading-state[b-4j7hrmjzf2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.5rem 0.75rem;
    color: var(--text-muted, #888);
    font-size: 0.78rem;
    text-align: center;
}

.empty-state i[b-4j7hrmjzf2] {
    font-size: 1.4rem;
    opacity: 0.6;
}

.spinner[b-4j7hrmjzf2] {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.15);
    border-top-color: #38bdf8;
    border-radius: 50%;
    animation: spin-b-4j7hrmjzf2 0.8s linear infinite;
}

@keyframes spin-b-4j7hrmjzf2 { to { transform: rotate(360deg); } }
/* /Components/Charts/LightweightChart.razor.rz.scp.css */
/* Lightweight Chart Component Styles */

.lightweight-chart-container[b-614wsy5hp7] {
    position: relative;
    width: 100%;
    height: 100%;
    background: var(--chart-bg, #0a0e17);
}

.lightweight-chart-container.fill-mode[b-614wsy5hp7] {
    flex: 1;
    min-height: 0;
}

.lightweight-chart-canvas[b-614wsy5hp7] {
    width: 100%;
    height: 100%;
}

/* Loading Overlay */
.chart-loading-overlay[b-614wsy5hp7] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(10, 14, 23, 0.55);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    gap: 12px;
    z-index: 10;
    pointer-events: none;
    /* Delayed fade-in: sub-200ms loads never visibly flash */
    animation: overlay-in-b-614wsy5hp7 .25s ease .2s backwards;
}

@keyframes overlay-in-b-614wsy5hp7 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.chart-loading-overlay .loading-spinner[b-614wsy5hp7] {
    width: 22px;
    height: 22px;
    border: 2px solid rgba(0, 205, 237, 0.15);
    border-top-color: var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: spin-b-614wsy5hp7 1s linear infinite;
}

.chart-loading-overlay span[b-614wsy5hp7] {
    color: var(--text-secondary, #8892b0);
    font-size: 13px;
}

@keyframes spin-b-614wsy5hp7 {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    .chart-loading-overlay[b-614wsy5hp7] { animation: none; }
}
/* /Components/Charts/MtfReversalPanel.razor.rz.scp.css */
/* Multi-Timeframe Reversal Panel Styles - Compact Version */

.mtf-reversal-panel[b-wvaogwj6af] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 6px;
    height: 100%;
    overflow-y: auto;
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* EMPTY / LOADING STATES */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-empty-state[b-wvaogwj6af],
.mtf-loading[b-wvaogwj6af] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 20px 12px;
    color: var(--text-muted, #666);
}

.empty-icon[b-wvaogwj6af] {
    font-size: 1.5rem;
    opacity: 0.5;
}

.empty-text[b-wvaogwj6af] {
    font-size: 0.75rem;
    text-align: center;
}

.loading-spinner[b-wvaogwj6af] {
    width: 20px;
    height: 20px;
    border: 2px solid var(--border-color, #2a2a4a);
    border-top-color: var(--primary, #6366f1);
    border-radius: 50%;
    animation: spin-b-wvaogwj6af 0.8s linear infinite;
}

@keyframes spin-b-wvaogwj6af {
    to { transform: rotate(360deg); }
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* AGGREGATE CARD - Compact */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-aggregate-card[b-wvaogwj6af] {
    background: linear-gradient(135deg, rgba(255,255,255,0.04) 0%, rgba(255,255,255,0.01) 100%);
    border: 1px solid var(--border-color, #2a2a4a);
    border-radius: 6px;
    padding: 8px;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.mtf-aggregate-card.bullish[b-wvaogwj6af] {
    border-color: rgba(16, 185, 129, 0.4);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, rgba(16, 185, 129, 0.02) 100%);
}

.mtf-aggregate-card.bearish[b-wvaogwj6af] {
    border-color: rgba(239, 68, 68, 0.4);
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, rgba(239, 68, 68, 0.02) 100%);
}

.aggregate-direction-row[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
}

.aggregate-arrow[b-wvaogwj6af] {
    font-size: 1.1rem;
    font-weight: 700;
}

.aggregate-text[b-wvaogwj6af] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.aggregate-arrow.bullish[b-wvaogwj6af],
.aggregate-text.bullish[b-wvaogwj6af] {
    color: #10b981;
}

.aggregate-arrow.bearish[b-wvaogwj6af],
.aggregate-text.bearish[b-wvaogwj6af] {
    color: #ef4444;
}

.aggregate-arrow.neutral[b-wvaogwj6af],
.aggregate-text.neutral[b-wvaogwj6af] {
    color: #6b7280;
}

.signal-pulse[b-wvaogwj6af] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #10b981;
    animation: pulse-b-wvaogwj6af 1.5s ease-in-out infinite;
    margin-left: auto;
}

.mtf-aggregate-card.bearish .signal-pulse[b-wvaogwj6af] {
    background: #ef4444;
}

@keyframes pulse-b-wvaogwj6af {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(1.3); }
}

/* Confidence Bar - Compact */
.confidence-bar-container[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

.confidence-bar-bg[b-wvaogwj6af] {
    flex: 1;
    height: 4px;
    background: rgba(255,255,255,0.1);
    border-radius: 2px;
    overflow: hidden;
}

.confidence-bar-fill[b-wvaogwj6af] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.5s ease;
}

.confidence-bar-fill.bullish[b-wvaogwj6af] {
    background: linear-gradient(90deg, #10b981, #34d399);
}

.confidence-bar-fill.bearish[b-wvaogwj6af] {
    background: linear-gradient(90deg, #ef4444, #f87171);
}

.confidence-bar-fill.neutral[b-wvaogwj6af] {
    background: linear-gradient(90deg, #6b7280, #9ca3af);
}

.confidence-value[b-wvaogwj6af] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
    min-width: 32px;
    text-align: right;
}

/* Aggregate Meta */
.aggregate-meta[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.65rem;
    color: var(--text-secondary, #aaa);
}

.meta-separator[b-wvaogwj6af] {
    opacity: 0.5;
}

.meta-entry[b-wvaogwj6af] {
    font-weight: 500;
}

.meta-entry.immediate[b-wvaogwj6af] {
    color: #10b981;
}

.meta-entry.wait[b-wvaogwj6af] {
    color: #eab308;
}

.meta-entry.too-late[b-wvaogwj6af] {
    color: #ef4444;
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* TIMEFRAME ROWS - Compact */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-timeframes[b-wvaogwj6af] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    background: rgba(255,255,255,0.02);
    border-radius: 4px;
    padding: 4px;
}

.tf-row[b-wvaogwj6af] {
    display: grid;
    grid-template-columns: 26px 14px 1fr 28px 16px auto;
    align-items: center;
    gap: 4px;
    padding: 3px 4px;
    border-radius: 3px;
    transition: background 0.2s ease, box-shadow 0.2s ease;
}

.tf-row:hover[b-wvaogwj6af] {
    background: rgba(255,255,255,0.03);
}

/* Current timeframe highlight */
.tf-row.current[b-wvaogwj6af] {
    background: rgba(99, 102, 241, 0.15);
    border: 1px solid rgba(99, 102, 241, 0.4);
    box-shadow: 0 0 6px rgba(99, 102, 241, 0.2);
}

.tf-label[b-wvaogwj6af] {
    font-size: 0.65rem;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.tf-arrow[b-wvaogwj6af] {
    font-size: 0.7rem;
    text-align: center;
}

.tf-arrow.bullish[b-wvaogwj6af] { color: #10b981; }
.tf-arrow.bearish[b-wvaogwj6af] { color: #ef4444; }
.tf-arrow.neutral[b-wvaogwj6af] { color: #6b7280; }

.tf-bar-container[b-wvaogwj6af] {
    height: 3px;
    background: rgba(255,255,255,0.08);
    border-radius: 2px;
    overflow: hidden;
}

.tf-bar-bg[b-wvaogwj6af] {
    height: 100%;
    width: 100%;
}

.tf-bar-fill[b-wvaogwj6af] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.4s ease;
}

.tf-bar-fill.bullish[b-wvaogwj6af] { background: #10b981; }
.tf-bar-fill.bearish[b-wvaogwj6af] { background: #ef4444; }
.tf-bar-fill.neutral[b-wvaogwj6af] { background: #6b7280; }

.tf-stage.confirmed[b-wvaogwj6af] { color: #10b981; }
.tf-stage.forming[b-wvaogwj6af] { 
    color: #eab308; 
    animation: blink-b-wvaogwj6af 1s ease-in-out infinite;
}
.tf-stage.failed[b-wvaogwj6af] { color: #ef4444; }
.tf-stage.expired[b-wvaogwj6af],
.tf-stage.none[b-wvaogwj6af] { color: #6b7280; opacity: 0.5; }

@keyframes blink-b-wvaogwj6af {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* CONTEXT FOOTER */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-context-footer[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px;
    font-size: 0.7rem;
    font-weight: 500;
    color: var(--text-secondary, #aaa);
    background: rgba(255,255,255,0.02);
    border-radius: 4px;
}

.ctx-separator[b-wvaogwj6af] {
    opacity: 0.3;
}

.ctx-trend.uptrend[b-wvaogwj6af] { color: #10b981; }
.ctx-trend.downtrend[b-wvaogwj6af] { color: #ef4444; }
.ctx-trend.ranging[b-wvaogwj6af] { color: #eab308; }

.ctx-regime.strong[b-wvaogwj6af] { color: #10b981; }
.ctx-regime.weak[b-wvaogwj6af] { color: #eab308; }
.ctx-regime.range[b-wvaogwj6af] { color: #6b7280; }

.ctx-adx[b-wvaogwj6af] {
    color: var(--text-muted, #666);
}

.ctx-live[b-wvaogwj6af] {
    color: #ef4444;
    font-weight: 600;
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* STATS ROW */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-stats-row[b-wvaogwj6af] {
    display: flex;
    justify-content: space-between;
    padding: 8px;
    background: rgba(255,255,255,0.02);
    border-radius: 4px;
}

.stat-item[b-wvaogwj6af] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.stat-label[b-wvaogwj6af] {
    font-size: 0.65rem;
    color: var(--text-muted, #888);
    text-transform: uppercase;
}

.stat-value[b-wvaogwj6af] {
    font-size: 0.85rem;
    font-weight: 600;
}

.stat-value.excellent[b-wvaogwj6af] { color: #10b981; }
.stat-value.good[b-wvaogwj6af] { color: #34d399; }
.stat-value.moderate[b-wvaogwj6af] { color: #fbbf24; }
.stat-value.weak[b-wvaogwj6af] { color: #6b7280; }
.stat-value.bullish[b-wvaogwj6af] { color: #10b981; }
.stat-value.bearish[b-wvaogwj6af] { color: #ef4444; }
.stat-value.neutral[b-wvaogwj6af] { color: #6b7280; }

/* ═══════════════════════════════════════════════════════════════════════════ */
/* TRIGGERED INDICATORS SECTION */
/* ═══════════════════════════════════════════════════════════════════════════ */

.mtf-indicators-section[b-wvaogwj6af] {
    background: rgba(255,255,255,0.02);
    border-radius: 6px;
    overflow: hidden;
}

.mtf-indicators-section .section-header[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    cursor: pointer;
    font-size: 0.7rem;
    text-transform: uppercase;
    color: var(--text-muted, #888);
    border-bottom: 1px solid var(--border-color, #2a2a4a);
    transition: background 0.2s ease;
}

.mtf-indicators-section .section-header:hover[b-wvaogwj6af] {
    background: rgba(255,255,255,0.03);
}

.header-icon[b-wvaogwj6af] {
    font-size: 0.6rem;
}

.indicators-list[b-wvaogwj6af] {
    padding: 8px 10px;
}

.indicator-group[b-wvaogwj6af] {
    margin-bottom: 8px;
}

.indicator-group:last-child[b-wvaogwj6af] {
    margin-bottom: 0;
}

.group-label[b-wvaogwj6af] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 4px;
    display: block;
}

.group-label.bullish[b-wvaogwj6af] { color: #10b981; }
.group-label.bearish[b-wvaogwj6af] { color: #ef4444; }
.group-label.neutral[b-wvaogwj6af] { color: #6b7280; }

.group-items[b-wvaogwj6af] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.indicator-pill[b-wvaogwj6af] {
    font-size: 0.65rem;
    padding: 2px 6px;
    border-radius: 3px;
    background: rgba(255,255,255,0.05);
}

.indicator-pill.bullish[b-wvaogwj6af] {
    background: rgba(16, 185, 129, 0.1);
    color: #34d399;
}

.indicator-pill.bearish[b-wvaogwj6af] {
    background: rgba(239, 68, 68, 0.1);
    color: #f87171;
}

.indicator-pill.neutral[b-wvaogwj6af] {
    background: rgba(107, 114, 128, 0.1);
    color: #9ca3af;
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* REFRESH INDICATOR */
/* ═══════════════════════════════════════════════════════════════════════════ */

.refresh-indicator[b-wvaogwj6af] {
    margin-left: auto;
    font-size: 0.9rem;
    color: var(--text-muted, #888);
    animation: spin-b-wvaogwj6af 1s linear infinite;
}

/* ═══════════════════════════════════════════════════════════════════════════ */
/* BTC ANCHOR MINI (Crypto symbols only) */
/* ═══════════════════════════════════════════════════════════════════════════ */

.btc-anchor-mini[b-wvaogwj6af] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    background: linear-gradient(135deg, rgba(247, 147, 26, 0.1), rgba(247, 147, 26, 0.05));
    border: 1px solid rgba(247, 147, 26, 0.2);
    border-radius: 6px;
    margin-bottom: 8px;
    font-size: 0.7rem;
}

.btc-anchor-mini .anchor-icon[b-wvaogwj6af] {
    font-size: 1rem;
    color: #f7931a;
}

.btc-anchor-mini .anchor-regime[b-wvaogwj6af] {
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.05);
}

.btc-anchor-mini .anchor-regime.trending-up[b-wvaogwj6af] {
    color: #10b981;
    background: rgba(16, 185, 129, 0.15);
}

.btc-anchor-mini .anchor-regime.trending-down[b-wvaogwj6af] {
    color: #ef4444;
    background: rgba(239, 68, 68, 0.15);
}

.btc-anchor-mini .anchor-regime.high-vol[b-wvaogwj6af] {
    color: #f59e0b;
    background: rgba(245, 158, 11, 0.15);
}

.btc-anchor-mini .anchor-regime.low-vol[b-wvaogwj6af] {
    color: #6b7280;
    background: rgba(107, 114, 128, 0.15);
}

.btc-anchor-mini .anchor-regime.choppy[b-wvaogwj6af] {
    color: #8b5cf6;
    background: rgba(139, 92, 246, 0.15);
}

.btc-anchor-mini .anchor-24h[b-wvaogwj6af] {
    font-weight: 500;
}

.btc-anchor-mini .anchor-24h.positive[b-wvaogwj6af] {
    color: #10b981;
}

.btc-anchor-mini .anchor-24h.negative[b-wvaogwj6af] {
    color: #ef4444;
}

.btc-anchor-mini .anchor-strength[b-wvaogwj6af] {
    margin-left: auto;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 3px;
}

.btc-anchor-mini .anchor-strength.strong[b-wvaogwj6af] {
    color: #10b981;
    background: rgba(16, 185, 129, 0.15);
}

.btc-anchor-mini .anchor-strength.weak[b-wvaogwj6af] {
    color: #ef4444;
    background: rgba(239, 68, 68, 0.15);
}

/* ── Redesign spruce: pressure header + polish ── */
.mtf-tf-header[b-wvaogwj6af] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin: 14px 2px 6px;
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.mtf-tf-header .tf-header-title[b-wvaogwj6af] {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    color: #9ca3af;
}
.mtf-tf-header .tf-header-hint[b-wvaogwj6af] {
    font-size: 0.62rem;
    color: #6b7280;
    font-weight: 500;
}

/* Stat labels: allow the longer "Confirmed / Forming" label to sit cleanly */
.mtf-stats-row .stat-label[b-wvaogwj6af] {
    white-space: nowrap;
    font-size: 0.58rem;
    letter-spacing: 0.04em;
}
.mtf-stats-row .stat-item[b-wvaogwj6af] { cursor: help; }

/* Current-timeframe row: clearer accent */
.tf-row.current[b-wvaogwj6af] {
    background: rgba(96, 165, 250, 0.08);
    border-radius: 8px;
    box-shadow: inset 2px 0 0 #60a5fa;
}

/* Timeframe rows: subtle hover for scanability */
.tf-row[b-wvaogwj6af] {
    transition: background 0.15s ease;
    border-radius: 8px;
}
.tf-row:hover[b-wvaogwj6af] { background: rgba(255, 255, 255, 0.03); }

/* Aggregate card: a touch more depth */
.mtf-aggregate-card[b-wvaogwj6af] {
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

/* ── Per-timeframe bull/bear reversal-signal counts ── */
.tf-counts[b-wvaogwj6af] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: 'SF Mono', Monaco, Consolas, monospace;
    font-size: 11px;
    font-weight: 700;
    min-width: 64px;
    justify-content: flex-end;
}
.tf-count[b-wvaogwj6af] { color: #4b5563; }
.tf-count.bull.on[b-wvaogwj6af] { color: #34d399; }
.tf-count.bear.on[b-wvaogwj6af] { color: #f87171; }
.tf-count-total[b-wvaogwj6af] { color: #6b7280; font-weight: 500; }
/* /Components/Charts/NewsDetailModal.razor.rz.scp.css */
/* News article detail modal (moved from ChartLightweight.razor.css with its markup).
   .loading-spinner and @keyframes spin are also used elsewhere on the chart page, so they exist in both files. */

.score-label[b-dr89m4orr3] {
    font-size: 9px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: normal;
    line-height: 1.3;
}

/* ===== NEWS DETAIL MODAL ===== */
.news-modal-overlay[b-dr89m4orr3] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-modal-top);
    backdrop-filter: blur(4px);
}

.news-modal[b-dr89m4orr3] {
    background: linear-gradient(180deg, rgba(18, 24, 38, 0.98) 0%, rgba(13, 17, 28, 0.98) 100%);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: 16px;
    width: 560px;
    max-width: 95vw;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}

.news-modal.bullish[b-dr89m4orr3] {
    border-color: rgba(0, 230, 118, 0.4);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 40px rgba(0, 230, 118, 0.1);
}

.news-modal.bearish[b-dr89m4orr3] {
    border-color: rgba(255, 82, 82, 0.4);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 40px rgba(255, 82, 82, 0.1);
}

.news-modal.neutral[b-dr89m4orr3] {
    border-color: rgba(136, 146, 176, 0.3);
}

.news-modal-header[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(0, 205, 237, 0.15);
    background: rgba(0, 0, 0, 0.2);
}

.news-modal-title[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #f0f4f8);
}

.news-modal-icon[b-dr89m4orr3] {
    font-size: 20px;
}

.news-modal-close[b-dr89m4orr3] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
    border: none;
    color: var(--text-secondary, #8892b0);
    font-size: 22px;
    cursor: pointer;
    border-radius: var(--r-md);
    transition: background var(--dur-med), color var(--dur-med);
}

.news-modal-close:hover[b-dr89m4orr3] {
    background: rgba(255, 82, 82, 0.2);
    color: var(--color-bearish, #ff5252);
}

.news-modal-content[b-dr89m4orr3] {
    flex: 1;
    overflow-y: auto;
    padding: 20px;
}

/* Article Section */
.news-modal-article[b-dr89m4orr3] {
    margin-bottom: 20px;
}

.news-modal-source-row[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.news-modal-source[b-dr89m4orr3] {
    font-size: 12px;
    font-weight: 600;
    color: var(--accent-primary, #00cded);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.news-modal-time[b-dr89m4orr3] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
}

.news-modal-headline[b-dr89m4orr3] {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary, #f0f4f8);
    line-height: 1.4;
    margin: 0 0 12px 0;
}

.news-modal-summary[b-dr89m4orr3] {
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-secondary, #a8b2d1);
    margin: 0 0 8px 0;
}

.news-modal-author[b-dr89m4orr3] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
    font-style: italic;
}

/* AI Analysis Section */
.news-modal-ai-section[b-dr89m4orr3] {
    background: rgba(0, 205, 237, 0.05);
    border: 1px solid rgba(0, 205, 237, 0.15);
    border-radius: var(--r-lg);
    padding: 16px;
}

.news-ai-header[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}

.ai-badge[b-dr89m4orr3] {
    font-size: 13px;
    font-weight: 600;
    color: var(--accent-primary, #00cded);
    background: rgba(0, 205, 237, 0.1);
    padding: 4px 10px;
    border-radius: 20px;
}

.news-modal-novelty[b-dr89m4orr3] {
    font-size: 12px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 20px;
}

.news-modal-novelty.new[b-dr89m4orr3] {
    background: rgba(0, 230, 118, 0.15);
    color: var(--color-bullish, #00e676);
}

.news-modal-novelty.update[b-dr89m4orr3] {
    background: rgba(255, 193, 7, 0.15);
    color: #ffc107;
}

.news-modal-novelty.rehash[b-dr89m4orr3] {
    background: rgba(136, 146, 176, 0.15);
    color: var(--text-muted, #8892b0);
}

/* Direction & Event Row */
.news-ai-row.primary[b-dr89m4orr3] {
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}

.news-ai-direction[b-dr89m4orr3] {
    flex: 1;
    padding: 12px;
    border-radius: var(--r-lg);
    font-size: 16px;
    font-weight: 700;
    text-align: center;
}

.news-ai-direction.bullish[b-dr89m4orr3] {
    background: rgba(0, 230, 118, 0.15);
    color: var(--color-bullish, #00e676);
    border: 1px solid rgba(0, 230, 118, 0.3);
}

.news-ai-direction.bearish[b-dr89m4orr3] {
    background: rgba(255, 82, 82, 0.15);
    color: var(--color-bearish, #ff5252);
    border: 1px solid rgba(255, 82, 82, 0.3);
}

.news-ai-direction.neutral[b-dr89m4orr3] {
    background: rgba(136, 146, 176, 0.15);
    color: var(--text-muted, #8892b0);
    border: 1px solid rgba(136, 146, 176, 0.3);
}

.news-ai-event-type[b-dr89m4orr3] {
    flex: 1;
    padding: 12px;
    border-radius: var(--r-lg);
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    background: rgba(100, 120, 200, 0.1);
    color: var(--text-primary, #f0f4f8);
    border: 1px solid rgba(100, 120, 200, 0.2);
}

/* Scores Grid */
.news-ai-scores[b-dr89m4orr3] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 16px;
}

.news-score-card[b-dr89m4orr3] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: var(--r-lg);
    padding: 12px;
    text-align: center;
}

.score-label[b-dr89m4orr3] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #8892b0);
    margin-bottom: 6px;
}

.score-value[b-dr89m4orr3] {
    font-size: 24px;
    font-weight: 700;
    color: var(--text-primary, #f0f4f8);
}

.score-max[b-dr89m4orr3] {
    font-size: 12px;
    font-weight: 400;
    color: var(--text-secondary, #8892b0);
}

.score-bar[b-dr89m4orr3] {
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
    margin-top: 8px;
    overflow: hidden;
}

.score-fill[b-dr89m4orr3] {
    height: 100%;
    border-radius: 2px;
    transition: width 0.5s ease-out;
}

.news-score-card.impact .score-fill[b-dr89m4orr3] {
    background: linear-gradient(90deg, var(--accent-primary, #00cded), #0bdeff);
}

.news-score-card.urgency .score-fill[b-dr89m4orr3] {
    background: linear-gradient(90deg, #ff9800, #ffc107);
}

.news-score-card.reliability .score-fill[b-dr89m4orr3] {
    background: linear-gradient(90deg, #2196f3, #64b5f6);
}

/* Meta Info */
.news-ai-meta[b-dr89m4orr3] {
    display: flex;
    gap: 24px;
    margin-bottom: 16px;
    padding: 12px;
    background: rgba(0, 0, 0, 0.2);
    border-radius: var(--r-md);
}

.news-ai-horizon[b-dr89m4orr3],
.news-ai-factual[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.meta-label[b-dr89m4orr3] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
}

.meta-value[b-dr89m4orr3] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #f0f4f8);
}

.meta-value.yes[b-dr89m4orr3] {
    color: var(--color-bullish, #00e676);
}

.meta-value.no[b-dr89m4orr3] {
    color: var(--color-bearish, #ff5252);
}

/* Rationale */
.news-ai-rationale[b-dr89m4orr3] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: var(--r-md);
    padding: 12px;
    margin-bottom: 16px;
}

.rationale-label[b-dr89m4orr3] {
    font-size: 12px;
    font-weight: 600;
    color: var(--accent-primary, #00cded);
    display: block;
    margin-bottom: 6px;
}

.rationale-text[b-dr89m4orr3] {
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-primary, #f0f4f8);
    margin: 0;
}

/* Numbers Grid */
.news-ai-numbers[b-dr89m4orr3] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: var(--r-md);
    padding: 12px;
}

.numbers-label[b-dr89m4orr3] {
    font-size: 12px;
    font-weight: 600;
    color: var(--accent-primary, #00cded);
    display: block;
    margin-bottom: 10px;
}

.numbers-grid[b-dr89m4orr3] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.number-item[b-dr89m4orr3] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: var(--r-md);
}

.number-kind[b-dr89m4orr3] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
}

.number-value[b-dr89m4orr3] {
    font-size: 14px;
    font-weight: 700;
    color: var(--text-primary, #f0f4f8);
}

/* Loading State */
.news-modal-loading[b-dr89m4orr3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 40px;
    gap: 12px;
    color: var(--text-secondary, #8892b0);
}

.loading-spinner[b-dr89m4orr3] {
    width: 32px;
    height: 32px;
    border: 3px solid rgba(0, 205, 237, 0.2);
    border-top-color: var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: spin-b-dr89m4orr3 1s linear infinite;
}

@keyframes spin-b-dr89m4orr3 {
    to { transform: rotate(360deg); }
}

/* No Analysis State */
.news-modal-no-analysis[b-dr89m4orr3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 30px;
    gap: 10px;
    background: rgba(136, 146, 176, 0.05);
    border: 1px dashed rgba(136, 146, 176, 0.2);
    border-radius: var(--r-lg);
    color: var(--text-secondary, #8892b0);
    font-size: 13px;
}

.no-analysis-icon[b-dr89m4orr3] {
    font-size: 28px;
    opacity: 0.5;
}

/* Modal Footer */
.news-modal-footer[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 20px;
    border-top: 1px solid rgba(0, 205, 237, 0.15);
    background: rgba(0, 0, 0, 0.2);
}

.news-modal-btn[b-dr89m4orr3] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border-radius: var(--r-md);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-med), color var(--dur-med), transform var(--dur-med), box-shadow var(--dur-med);
    border: none;
}

.news-modal-btn.secondary[b-dr89m4orr3] {
    background: rgba(136, 146, 176, 0.1);
    color: var(--text-secondary, #8892b0);
    border: 1px solid rgba(136, 146, 176, 0.2);
}

.news-modal-btn.secondary:hover[b-dr89m4orr3] {
    background: rgba(136, 146, 176, 0.2);
    color: var(--text-primary, #f0f4f8);
}

.news-modal-btn.primary[b-dr89m4orr3] {
    background: var(--accent-primary, #00cded);
    color: #0a0e17;
}

.news-modal-btn.primary:hover[b-dr89m4orr3] {
    background: var(--accent-secondary, #0bdeff);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 205, 237, 0.3);
}
/* /Components/Charts/OscillatorSignalPane.razor.rz.scp.css */
/* ===== OSCILLATOR SIGNAL PANE - Stacked Dots Design =====
 * Shows stacked colored dots per bar when oscillators hit extremes
 * Red dots = bearish/overbought signals
 * Green dots = bullish/oversold signals
 * No dots when neutral
 */

.oscillator-signal-pane[b-kcmeidwmjy] {
    width: 100%;
    height: 50px;
    min-height: 50px;
    background: var(--bg-primary, #0a0e17);
    border-top: 1px solid rgba(0, 205, 237, 0.15);
    overflow-x: hidden;
    overflow-y: hidden;
    position: relative;
}

.oscillator-signal-pane.collapsed[b-kcmeidwmjy] {
    height: 0;
    min-height: 0;
    padding: 0;
    border-top: none;
    overflow: hidden;
}

/* ===== BAR SPACING VARIANTS =====
 * Different dot sizes based on chart bar spacing
 */

/* Tight spacing (6px) */
.oscillator-signal-pane[data-bar-spacing="6"] .oscillator-bar-stack[b-kcmeidwmjy] {
    width: 6px;
}
.oscillator-signal-pane[data-bar-spacing="6"] .signal-dot[b-kcmeidwmjy] {
    width: 4px;
    height: 4px;
}

/* Normal spacing (8px) - default */
.oscillator-signal-pane[data-bar-spacing="8"] .oscillator-bar-stack[b-kcmeidwmjy] {
    width: 8px;
}

/* Wide spacing (10px) */
.oscillator-signal-pane[data-bar-spacing="10"] .oscillator-bar-stack[b-kcmeidwmjy] {
    width: 10px;
}
.oscillator-signal-pane[data-bar-spacing="10"] .signal-dot[b-kcmeidwmjy] {
    width: 7px;
    height: 7px;
}

/* Extra wide spacing (12px) */
.oscillator-signal-pane[data-bar-spacing="12"] .oscillator-bar-stack[b-kcmeidwmjy] {
    width: 12px;
}
.oscillator-signal-pane[data-bar-spacing="12"] .signal-dot[b-kcmeidwmjy] {
    width: 8px;
    height: 8px;
}

/* ===== ANIMATION ===== */

@keyframes dot-pulse-b-kcmeidwmjy {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.3); opacity: 0.8; }
    100% { transform: scale(1); opacity: 1; }
}

.signal-dot.new[b-kcmeidwmjy] {
    animation: dot-pulse-b-kcmeidwmjy 0.5s ease-out;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 768px) {
    .oscillator-signal-pane[b-kcmeidwmjy] {
        height: 40px;
        min-height: 40px;
    }
}

/* ===== EMPTY STATE ===== */

.oscillator-signal-pane:empty[b-kcmeidwmjy]::after {
    content: 'No signals';
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--text-muted, #5a6785);
    font-size: 11px;
}

/* Moved from the inline <style> block in OscillatorSignalPane.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.oscillator-signal-pane)[b-kcmeidwmjy] {
    display: flex;
    position: relative;
    height: auto;
    min-height: 40px;
    background: var(--chart-bg, #0d111c);
    border-top: 1px solid var(--border-color, #2a2e39);
    overflow: visible;
}

:where(.oscillator-signal-pane).collapsed[b-kcmeidwmjy] {
    display: none;
}

:where(.signal-summary)[b-kcmeidwmjy] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 60px;         /* Match chart's rightPriceScale minimumWidth */
    min-width: 60px;
    padding: 4px 2px;
    background: var(--bg-secondary, #131722);
    border-left: 1px solid var(--border-color, #2a2e39);
    gap: 4px;
}

/* The rest of the old inline block (sent with every pane, and page-wide while one was shown). Same
   :where() rule. oscillatorPaneBridge.js only finds these elements and toggles .visible on the
   crosshair line, so they keep the scope attribute. */
:where(.signal-grid)[b-kcmeidwmjy] {
    position: relative;   /* Canvas fills this box */
    flex: 1;
    overflow: hidden;
}

:where(.signal-canvas)[b-kcmeidwmjy] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
}

:where(.crosshair-line)[b-kcmeidwmjy] {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
    background: rgba(0, 205, 237, 0.5);
    pointer-events: none;
    display: none;
    z-index: 10;
}

:where(.crosshair-line).visible[b-kcmeidwmjy] {
    display: block;
}

:where(.summary-item)[b-kcmeidwmjy] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 700;
    border-radius: 4px;
    padding: 2px 4px;
}

:where(.summary-item).bullish[b-kcmeidwmjy] {
    background: rgba(34, 197, 94, 0.2);
    color: #22c55e;
}

:where(.summary-item).bearish[b-kcmeidwmjy] {
    background: rgba(239, 68, 68, 0.2);
    color: #ef4444;
}
/* /Components/Charts/PlayCreatorModal.razor.rz.scp.css */
/* PlayCreatorModal.razor.css - Styling for the AI Play Creator modal */

/* Backdrop */
.play-creator-backdrop[b-2mdjiz9hd2] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10000;
    backdrop-filter: blur(4px);
    animation: fadeIn-b-2mdjiz9hd2 0.15s ease-out;
}

@keyframes fadeIn-b-2mdjiz9hd2 {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Modal Container */
.play-creator-modal[b-2mdjiz9hd2] {
    background: var(--bg-surface, #1a1d29);
    border-radius: 16px;
    width: min(600px, 95vw);
    max-height: 90vh;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    animation: slideUp-b-2mdjiz9hd2 0.2s ease-out;
    display: flex;
    flex-direction: column;
}

@keyframes slideUp-b-2mdjiz9hd2 {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Header */
.play-creator-header[b-2mdjiz9hd2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(139, 92, 246, 0.05));
}

.header-content[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.header-icon[b-2mdjiz9hd2] {
    font-size: 24px;
}

.header-text h3[b-2mdjiz9hd2] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.header-subtitle[b-2mdjiz9hd2] {
    font-size: 13px;
    color: var(--text-secondary, #9ca3af);
}

.header-actions[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.usage-badge[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4px 12px;
    background: rgba(99, 102, 241, 0.15);
    border-radius: 8px;
    border: 1px solid rgba(99, 102, 241, 0.3);
}

.usage-badge.depleted[b-2mdjiz9hd2] {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.3);
}

.usage-count[b-2mdjiz9hd2] {
    font-size: 16px;
    font-weight: 700;
    color: var(--accent-color, #6366f1);
}

.usage-badge.depleted .usage-count[b-2mdjiz9hd2] {
    color: #ef4444;
}

.usage-label[b-2mdjiz9hd2] {
    font-size: 10px;
    color: var(--text-secondary, #9ca3af);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.close-btn[b-2mdjiz9hd2] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: none;
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-secondary, #9ca3af);
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.close-btn:hover[b-2mdjiz9hd2] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-primary, #fff);
}

/* Body */
.play-creator-body[b-2mdjiz9hd2] {
    padding: 20px 24px;
    overflow-y: auto;
    flex: 1;
}

/* Play Type Tabs */
.play-type-tabs[b-2mdjiz9hd2] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin-bottom: 20px;
}

.play-tab[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 12px 8px;
    border-radius: 10px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-elevated, #252836);
    color: var(--text-secondary, #9ca3af);
    cursor: pointer;
    transition: all 0.15s ease;
    position: relative;
}

.play-tab:hover:not(.disabled)[b-2mdjiz9hd2] {
    border-color: var(--accent-color, #6366f1);
    background: rgba(99, 102, 241, 0.1);
}

.play-tab.active[b-2mdjiz9hd2] {
    border-color: var(--accent-color, #6366f1);
    background: rgba(99, 102, 241, 0.15);
    color: var(--text-primary, #fff);
}

.play-tab.disabled[b-2mdjiz9hd2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.tab-icon[b-2mdjiz9hd2] {
    font-size: 20px;
}

.tab-label[b-2mdjiz9hd2] {
    font-size: 12px;
    font-weight: 500;
}

.tab-unavailable[b-2mdjiz9hd2] {
    position: absolute;
    top: 4px;
    right: 4px;
    font-size: 9px;
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
    padding: 2px 6px;
    border-radius: 4px;
}

/* Configuration Section */
.play-config-section[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.config-group[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.config-row[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.config-row label[b-2mdjiz9hd2] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text-secondary, #9ca3af);
}

.config-input[b-2mdjiz9hd2],
.config-select[b-2mdjiz9hd2],
.config-textarea[b-2mdjiz9hd2] {
    padding: 10px 12px;
    border-radius: 8px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-elevated, #252836);
    color: var(--text-primary, #fff);
    font-size: 14px;
    transition: all 0.15s ease;
}

.config-input:focus[b-2mdjiz9hd2],
.config-select:focus[b-2mdjiz9hd2],
.config-textarea:focus[b-2mdjiz9hd2] {
    outline: none;
    border-color: var(--accent-color, #6366f1);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

.config-textarea[b-2mdjiz9hd2] {
    resize: vertical;
    min-height: 60px;
}

.config-select[b-2mdjiz9hd2] {
    cursor: pointer;
}

/* Button Group */
.button-group[b-2mdjiz9hd2] {
    display: flex;
    gap: 8px;
}

.option-btn[b-2mdjiz9hd2] {
    flex: 1;
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-elevated, #252836);
    color: var(--text-secondary, #9ca3af);
    font-size: 13px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.option-btn:hover[b-2mdjiz9hd2] {
    border-color: var(--accent-color, #6366f1);
}

.option-btn.active[b-2mdjiz9hd2] {
    border-color: var(--accent-color, #6366f1);
    background: rgba(99, 102, 241, 0.2);
    color: var(--text-primary, #fff);
}

/* Bull/Bear Bias Buttons */
.bias-group[b-2mdjiz9hd2] {
    display: flex;
    gap: 6px;
}

.bias-icon[b-2mdjiz9hd2] {
    font-size: 14px;
}

.bull-btn:hover[b-2mdjiz9hd2] {
    border-color: #22c55e;
    color: #22c55e;
}

.bear-btn:hover[b-2mdjiz9hd2] {
    border-color: #ef4444;
    color: #ef4444;
}

.option-btn.bullish-active[b-2mdjiz9hd2] {
    border-color: #22c55e !important;
    background: rgba(34, 197, 94, 0.2) !important;
    color: #22c55e !important;
}

.option-btn.bearish-active[b-2mdjiz9hd2] {
    border-color: #ef4444 !important;
    background: rgba(239, 68, 68, 0.2) !important;
    color: #ef4444 !important;
}

/* Checkbox Row */
.checkbox-row label[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 14px;
    color: var(--text-primary, #fff);
}

.checkbox-row input[type="checkbox"][b-2mdjiz9hd2] {
    width: 16px;
    height: 16px;
    accent-color: var(--accent-color, #6366f1);
}

/* Info Badge */
.info-badge[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(59, 130, 246, 0.1);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 8px;
    font-size: 13px;
    color: #93c5fd;
}

.info-icon[b-2mdjiz9hd2] {
    font-size: 16px;
}

/* Error Message */
.error-message[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 8px;
    color: #f87171;
    font-size: 13px;
    margin-top: 12px;
}

.error-message svg[b-2mdjiz9hd2] {
    flex-shrink: 0;
}

/* Footer */
.play-creator-footer[b-2mdjiz9hd2] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 24px;
    border-top: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: var(--bg-surface, #1a1d29);
}

.cancel-btn[b-2mdjiz9hd2] {
    padding: 10px 20px;
    border-radius: 8px;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    background: transparent;
    color: var(--text-secondary, #9ca3af);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.cancel-btn:hover[b-2mdjiz9hd2] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-primary, #fff);
}

.generate-btn[b-2mdjiz9hd2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    border-radius: 8px;
    border: none;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

.generate-btn:hover:not(:disabled)[b-2mdjiz9hd2] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.generate-btn:disabled[b-2mdjiz9hd2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.spinner[b-2mdjiz9hd2] {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: spin-b-2mdjiz9hd2 0.8s linear infinite;
}

@keyframes spin-b-2mdjiz9hd2 {
    to { transform: rotate(360deg); }
}

/* ========== Result View ========== */
.play-creator-result[b-2mdjiz9hd2] {
    padding: 20px 24px;
    overflow-y: auto;
    flex: 1;
}

.result-header[b-2mdjiz9hd2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
}

.result-confidence[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 12px 20px;
    border-radius: 12px;
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.2);
}

.result-confidence.high[b-2mdjiz9hd2] {
    background: rgba(34, 197, 94, 0.15);
    border-color: rgba(34, 197, 94, 0.3);
}

.result-confidence.medium[b-2mdjiz9hd2] {
    background: rgba(234, 179, 8, 0.15);
    border-color: rgba(234, 179, 8, 0.3);
}

.result-confidence.low[b-2mdjiz9hd2] {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.3);
}

.confidence-value[b-2mdjiz9hd2] {
    font-size: 24px;
    font-weight: 700;
    color: #22c55e;
}

.result-confidence.medium .confidence-value[b-2mdjiz9hd2] {
    color: #eab308;
}

.result-confidence.low .confidence-value[b-2mdjiz9hd2] {
    color: #ef4444;
}

.confidence-label[b-2mdjiz9hd2] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #9ca3af);
}

.result-meta[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.result-direction.bullish[b-2mdjiz9hd2] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}

.result-direction.bearish[b-2mdjiz9hd2] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.result-direction.neutral[b-2mdjiz9hd2] {
    background: rgba(234, 179, 8, 0.15);
    color: #eab308;
}

/* Entry/Target/Stop Section */
.result-levels[b-2mdjiz9hd2] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.level-card.entry[b-2mdjiz9hd2] {
    border-color: rgba(99, 102, 241, 0.3);
}

.level-card.target[b-2mdjiz9hd2] {
    border-color: rgba(34, 197, 94, 0.3);
}

.level-card.stop[b-2mdjiz9hd2] {
    border-color: rgba(239, 68, 68, 0.3);
}

.level-label[b-2mdjiz9hd2] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary, #9ca3af);
    margin-bottom: 4px;
}

.level-value[b-2mdjiz9hd2] {
    font-size: 18px;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.level-card.entry .level-value[b-2mdjiz9hd2] {
    color: #818cf8;
}

.level-card.target .level-value[b-2mdjiz9hd2] {
    color: #22c55e;
}

.level-card.stop .level-value[b-2mdjiz9hd2] {
    color: #ef4444;
}

/* Rationale Section */

.rationale-text[b-2mdjiz9hd2] {
    font-size: 13px;
    line-height: 1.6;
    color: var(--text-secondary, #9ca3af);
}

/* Options Legs */

.leg-action.buy[b-2mdjiz9hd2] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}

.leg-action.sell[b-2mdjiz9hd2] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

/* Result Actions */

.action-btn[b-2mdjiz9hd2] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.action-btn.primary[b-2mdjiz9hd2] {
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    border: none;
    color: #fff;
}

.action-btn.primary:hover[b-2mdjiz9hd2] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.action-btn.secondary[b-2mdjiz9hd2] {
    background: transparent;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    color: var(--text-secondary, #9ca3af);
}

.action-btn.secondary:hover[b-2mdjiz9hd2] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-primary, #fff);
}

/* Historical Stats */

.stat-item[b-2mdjiz9hd2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.stat-value[b-2mdjiz9hd2] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #fff);
}

.stat-label[b-2mdjiz9hd2] {
    font-size: 10px;
    text-transform: uppercase;
    color: var(--text-muted, #6b7280);
    text-align: center;
}

/* Mobile Responsiveness */
@media (max-width: 640px) {
    .play-creator-modal[b-2mdjiz9hd2] {
        border-radius: 16px 16px 0 0;
        max-height: 95vh;
    }

    .play-type-tabs[b-2mdjiz9hd2] {
        grid-template-columns: repeat(2, 1fr);
    }

    .result-levels[b-2mdjiz9hd2] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Charts/ProFeatureTeaser.razor.rz.scp.css */
.pro-teaser[b-kunqjkjuhf] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.12), rgba(168, 85, 247, 0.12));
    border: 1px solid rgba(99, 102, 241, 0.35);
    color: var(--text-primary, #e6f1ff);
    font-size: 12px;
    line-height: 1.3;
}

.pro-teaser.compact[b-kunqjkjuhf] {
    padding: 5px 8px;
    gap: 6px;
    font-size: 11px;
}

.pro-teaser.inline[b-kunqjkjuhf] {
    width: 100%;
    border-radius: 0;
    border-left: none;
    border-right: none;
}

.pro-teaser-lock[b-kunqjkjuhf] {
    display: inline-flex;
    color: #a78bfa;
    flex-shrink: 0;
}

.pro-teaser-text[b-kunqjkjuhf] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1;
}

.pro-teaser-title[b-kunqjkjuhf] {
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pro-teaser-blurb[b-kunqjkjuhf] {
    color: var(--text-secondary, #8892b0);
    font-size: 11px;
}

.pro-teaser-btn[b-kunqjkjuhf] {
    flex-shrink: 0;
    padding: 4px 10px;
    border: none;
    border-radius: 6px;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
}

.pro-teaser-btn:hover[b-kunqjkjuhf] {
    background: linear-gradient(135deg, #4f46e5, #7c3aed);
    color: #fff;
}
/* /Components/Charts/ReplayBar.razor.rz.scp.css */
/* The bar-replay strip between the chart toolbar and the chart grid (P4-A). Same footing as .chart-nav. */
.replay-bar[b-ybb7tc3x1i] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    min-height: 30px;
    padding: 3px 12px;
    background: rgba(13, 17, 28, 0.98);
    border-bottom: 1px solid rgba(239, 68, 68, 0.28);
    color: var(--text-secondary, #9fb0c7);
    font-size: 12px;
    line-height: 1.3;
}

.replay-chip[b-ybb7tc3x1i] {
    display: inline-flex;
    align-items: center;
    padding: 1px 7px;
    border-radius: 3px;
    background: #ef4444;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    animation: replay-pulse-b-ybb7tc3x1i 1.6s ease-in-out infinite;
}

@keyframes replay-pulse-b-ybb7tc3x1i {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.65; }
}

.replay-date[b-ybb7tc3x1i] {
    height: 22px;
    padding: 0 6px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: var(--r-sm, 4px);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #e6f1ff);
    font: inherit;
    font-size: 12px;
    color-scheme: dark;
}

.replay-date:focus-visible[b-ybb7tc3x1i],
.replay-speed:focus-visible[b-ybb7tc3x1i],
.replay-btn:focus-visible[b-ybb7tc3x1i],
.replay-exit:focus-visible[b-ybb7tc3x1i] {
    outline: 2px solid rgba(0, 205, 237, 0.6);
    outline-offset: 1px;
}

.replay-btn[b-ybb7tc3x1i],
.replay-exit[b-ybb7tc3x1i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    padding: 0 8px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: var(--r-sm, 4px);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #e6f1ff);
    font: inherit;
    font-size: 12px;
    line-height: 1;
    cursor: pointer;
    transition: background var(--dur-fast, 120ms), border-color var(--dur-fast, 120ms);
}

.replay-btn.icon[b-ybb7tc3x1i] {
    width: 28px;
    padding: 0;
    font-size: 13px;
}

.replay-btn:hover:not(:disabled)[b-ybb7tc3x1i],
.replay-exit:hover[b-ybb7tc3x1i] {
    background: rgba(0, 205, 237, 0.14);
    border-color: rgba(0, 205, 237, 0.45);
}

.replay-btn:disabled[b-ybb7tc3x1i] {
    opacity: 0.35;
    cursor: default;
}

.replay-btn.armed[b-ybb7tc3x1i] {
    background: rgba(0, 205, 237, 0.18);
    border-color: rgba(0, 205, 237, 0.6);
    color: var(--accent-primary, #00cded);
}

.replay-btn.play.on[b-ybb7tc3x1i] {
    background: rgba(239, 68, 68, 0.18);
    border-color: rgba(239, 68, 68, 0.55);
}

.replay-sep[b-ybb7tc3x1i] {
    width: 1px;
    height: 18px;
    background: rgba(100, 120, 150, 0.25);
    margin: 0 2px;
}

.replay-speed[b-ybb7tc3x1i] {
    height: 22px;
    padding: 0 4px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: var(--r-sm, 4px);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #e6f1ff);
    font: inherit;
    font-size: 12px;
    color-scheme: dark;
}

.replay-progress[b-ybb7tc3x1i] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    color: var(--text-primary, #e6f1ff);
}

.replay-end[b-ybb7tc3x1i] {
    color: var(--text-muted, #6b7a90);
    white-space: nowrap;
}

.replay-spacer[b-ybb7tc3x1i] {
    flex: 1;
}

.replay-exit[b-ybb7tc3x1i] {
    color: #fca5a5;
    border-color: rgba(239, 68, 68, 0.35);
}

.replay-exit:hover[b-ybb7tc3x1i] {
    background: rgba(239, 68, 68, 0.16);
    border-color: rgba(239, 68, 68, 0.6);
}

@media (max-width: 640px) {
    .replay-bar[b-ybb7tc3x1i] { padding: 3px 8px; gap: 4px; }
    .replay-end[b-ybb7tc3x1i] { display: none; }
}
/* /Components/Charts/SeasonalityCard.razor.rz.scp.css */
.seasonality-card[b-85go86c81v] {
    margin-top: 12px;
    padding: 12px;
    background: rgba(30, 40, 60, 0.4);
    border: 1px solid rgba(0, 205, 237, 0.15);
    border-radius: var(--r-md, 10px);
}

.seasonality-title[b-85go86c81v] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--text-secondary, #8892b0);
}

.seasonality-title svg[b-85go86c81v] {
    opacity: 0.7;
}

.seasonality-years[b-85go86c81v] {
    margin-left: auto;
    padding: 2px 6px;
    border-radius: var(--r-sm, 6px);
    background: rgba(232, 121, 249, 0.14);
    color: #e879f9;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 0.3px;
    text-transform: none;
}

.seasonality-summary[b-85go86c81v] {
    margin-bottom: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
}

.seasonality-note[b-85go86c81v] {
    font-size: 10px;
    color: var(--text-secondary, #8892b0);
}

/* Twelve columns: win rate, a track with the zero line at its middle, the month letter. */
.seasonality-bars[b-85go86c81v] {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 3px;
    margin-bottom: 8px;
}

.season-col[b-85go86c81v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 2px 0;
    border-radius: var(--r-sm, 6px);
    cursor: default;
}

.season-col.current[b-85go86c81v] {
    background: rgba(232, 121, 249, 0.1);
    box-shadow: inset 0 0 0 1px rgba(232, 121, 249, 0.45);
}

.season-col.empty[b-85go86c81v] {
    opacity: 0.4;
}

.season-win[b-85go86c81v] {
    font-size: 8px;
    line-height: 1;
    color: var(--text-secondary, #8892b0);
    font-variant-numeric: tabular-nums;
}

.season-track[b-85go86c81v] {
    position: relative;
    width: 100%;
    height: 52px;
}

.season-track[b-85go86c81v]::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    height: 1px;
    background: rgba(136, 146, 176, 0.35);
}

.season-bar[b-85go86c81v] {
    position: absolute;
    left: 50%;
    width: 6px;
    transform: translateX(-50%);
    min-height: 2px;
}

.season-bar.up[b-85go86c81v] {
    bottom: 50%;
    background: #26a69a;
    border-radius: 3px 3px 0 0;
}

.season-bar.down[b-85go86c81v] {
    top: 50%;
    background: #ef5350;
    border-radius: 0 0 3px 3px;
}

.season-month[b-85go86c81v] {
    font-size: 9px;
    line-height: 1;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
}

.season-col.current .season-month[b-85go86c81v] {
    color: #e879f9;
}
/* /Components/Charts/ShareMenu.razor.rz.scp.css */
/* Share menu (P4-G). The same pill-and-dropdown look as the Layouts menu next to it (ChartLayoutsMenu.razor.css). */

.shr-wrap[b-rqoy8w44bg] {
    position: relative;
    display: flex;
    align-items: center;
    margin-left: 3px;
}

.shr-btn[b-rqoy8w44bg] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 11px;
    border-radius: var(--r-sm, 4px);
    color: rgba(165, 178, 205, 0.85);
    background: linear-gradient(180deg, rgba(46, 58, 78, 0.55), rgba(24, 31, 45, 0.65));
    border: 1px solid rgba(120, 138, 168, 0.22);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 2px rgba(0, 0, 0, 0.25);
    font: inherit;
    cursor: pointer;
    transition:
        background var(--dur-med, 0.2s) ease,
        border-color var(--dur-med, 0.2s) ease,
        box-shadow var(--dur-med, 0.2s) ease,
        color var(--dur-med, 0.2s) ease,
        transform var(--dur-fast, 0.12s) cubic-bezier(0.34, 1.56, 0.64, 1);
}

.shr-btn:hover[b-rqoy8w44bg] {
    color: #e9f3ff;
    background: linear-gradient(180deg, rgba(58, 72, 96, 0.7), rgba(32, 42, 58, 0.8));
    border-color: rgba(0, 205, 237, 0.4);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 4px 12px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(0, 205, 237, 0.08);
    transform: translateY(-1px);
}

.shr-btn:active[b-rqoy8w44bg] { transform: translateY(0) scale(0.96); }

.shr-btn.open[b-rqoy8w44bg] {
    border-color: rgba(0, 205, 237, 0.7);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.2),
        0 0 0 2px rgba(0, 205, 237, 0.18),
        0 0 18px rgba(0, 205, 237, 0.3);
}

.shr-label[b-rqoy8w44bg] {
    font-size: 11.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

/* ── Dropdown ── */
.shr-dropdown[b-rqoy8w44bg] {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    z-index: 60;
    min-width: 290px;
    max-width: 360px;
    padding: 6px;
    border-radius: var(--r-md, 6px);
    background: rgba(13, 17, 28, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    font-size: 12px;
    color: rgba(220, 230, 245, 0.92);
}

.shr-item[b-rqoy8w44bg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    padding: 8px 10px;
    border-radius: var(--r-sm, 4px);
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.shr-item:hover:not(:disabled)[b-rqoy8w44bg] { background: rgba(0, 205, 237, 0.1); color: #fff; }
.shr-item:disabled[b-rqoy8w44bg] { opacity: 0.5; cursor: default; }

.shr-badge[b-rqoy8w44bg] {
    font-family: var(--font-mono, "JetBrains Mono", monospace);
    font-size: 10.5px;
    font-weight: 500;
    padding: 1px 6px;
    border-radius: 3px;
    color: #97f1ff;
    background: rgba(0, 205, 237, 0.14);
}

.shr-note[b-rqoy8w44bg] {
    padding: 2px 10px 8px;
    font-size: 11px;
    line-height: 1.4;
    color: rgba(165, 178, 205, 0.7);
}

.shr-busy[b-rqoy8w44bg] { color: #97f1ff; }

.shr-link[b-rqoy8w44bg] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 6px 4px;
}

.shr-input[b-rqoy8w44bg] {
    flex: 1 1 auto;
    min-width: 0;
    height: 26px;
    padding: 0 8px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(0, 205, 237, 0.3);
    background: rgba(0, 205, 237, 0.08);
    color: #e9f3ff;
    font: inherit;
    font-size: 11px;
}

.shr-mini[b-rqoy8w44bg] {
    flex-shrink: 0;
    height: 26px;
    padding: 0 9px;
    display: inline-flex;
    align-items: center;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(120, 138, 168, 0.25);
    background: rgba(24, 31, 45, 0.7);
    color: rgba(200, 212, 235, 0.9);
    font: inherit;
    font-size: 11px;
    text-decoration: none;
    cursor: pointer;
}

.shr-mini:hover[b-rqoy8w44bg] { border-color: rgba(0, 205, 237, 0.5); color: #fff; }

.shr-ok[b-rqoy8w44bg] {
    padding: 2px 10px 6px;
    font-size: 11px;
    color: #94f8bd;
}

.shr-error[b-rqoy8w44bg] {
    padding: 4px 10px 6px;
    font-size: 11px;
    color: #ff8a80;
}

.shr-upgrade[b-rqoy8w44bg] {
    display: block;
    margin: 0 6px 4px;
    padding: 6px 10px;
    border-radius: var(--r-sm, 4px);
    border: 1px solid rgba(0, 205, 237, 0.45);
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    color: #97f1ff;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
}
/* /Components/Charts/TradeCardModal.razor.rz.scp.css */
.tc-backdrop[b-ae3jee82wp] {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(2, 6, 23, 0.72);
    padding: 16px;
}

.tc-modal[b-ae3jee82wp] {
    width: min(760px, 100%);
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    background: #0f172a;
    border: 1px solid rgba(148, 163, 184, 0.25);
    border-radius: 12px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: #e5e7eb;
}

.tc-head[b-ae3jee82wp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.tc-x[b-ae3jee82wp] {
    border: none;
    background: transparent;
    color: #9ca3af;
    font-size: 1rem;
    cursor: pointer;
}

.tc-options[b-ae3jee82wp] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 16px;
    font-size: 0.8rem;
}

.tc-options label[b-ae3jee82wp] {
    display: flex;
    gap: 6px;
    align-items: center;
    cursor: pointer;
}

/* The card's own chart: real size, but off-screen (only the composited image is shown). */
.tc-offscreen[b-ae3jee82wp] {
    position: fixed;
    left: -10000px;
    top: 0;
    width: 1120px;
    height: 465px;
    pointer-events: none;
}

.tc-chart[b-ae3jee82wp] {
    width: 1120px;
    height: 465px;
}

.tc-preview[b-ae3jee82wp] {
    min-height: 160px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #0b1220;
}

.tc-preview img[b-ae3jee82wp] {
    width: 100%;
    height: auto;
    border-radius: 8px;
}

.tc-wait[b-ae3jee82wp], .tc-error[b-ae3jee82wp] {
    font-size: 0.82rem;
    color: #9ca3af;
    padding: 24px;
    text-align: center;
}

.tc-error[b-ae3jee82wp] { color: #f87171; }

.tc-foot[b-ae3jee82wp] {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
}

.tc-note[b-ae3jee82wp] {
    flex: 1;
    font-size: 0.72rem;
    color: #9ca3af;
}

.tc-link[b-ae3jee82wp] {
    flex: 1;
    min-width: 0;
    font-size: 0.8rem;
    padding: 6px 8px;
    border-radius: 6px;
    border: 1px solid rgba(148, 163, 184, 0.3);
    background: #0b1220;
    color: #e5e7eb;
}

.tc-btn[b-ae3jee82wp] {
    font-size: 0.8rem;
    padding: 6px 12px;
    border-radius: 6px;
    border: 1px solid rgba(148, 163, 184, 0.35);
    background: transparent;
    color: #e5e7eb;
    cursor: pointer;
}

.tc-btn.primary[b-ae3jee82wp] {
    border-color: rgba(34, 197, 94, 0.6);
    color: #22c55e;
}

.tc-btn:disabled[b-ae3jee82wp] {
    opacity: 0.5;
    cursor: default;
}
/* /Components/Dividends/DividendBehaviorProfile.razor.rz.scp.css */
/* Dividend Behavior Profile Component Styles - ULTRA COMPACT VERSION */

.behavior-profile-container[b-9oaa9ui7xu] {
    background: transparent;
    border-radius: 8px;
    padding: 0.25rem 0.5rem;
    border: none;
}

/* Loading & Empty States */
.profile-loading[b-9oaa9ui7xu],
.profile-empty[b-9oaa9ui7xu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 150px;
    color: var(--text-muted, #6c757d);
    gap: 0.5rem;
}

.profile-empty i[b-9oaa9ui7xu] {
    font-size: 2rem;
    opacity: 0.5;
}

.profile-empty small[b-9oaa9ui7xu] {
    opacity: 0.7;
}

/* Classification Header - ULTRA COMPACT */

.classification-header.classification-neutral[b-9oaa9ui7xu] {
    background: linear-gradient(135deg, rgba(108, 117, 125, 0.2), rgba(173, 181, 189, 0.1));
    border: 1px solid rgba(108, 117, 125, 0.3);
}

.classification-neutral .classification-badge[b-9oaa9ui7xu] {
    color: #adb5bd;
}

.intelligence-score[b-9oaa9ui7xu] {
    text-align: right;
}

.intelligence-score .score-label[b-9oaa9ui7xu] {
    display: block;
    font-size: 0.6rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 0.1rem;
}

.intelligence-score .score-value[b-9oaa9ui7xu] {
    font-size: 1.25rem;
    font-weight: 700;
    font-family: 'Source Code Pro', monospace;
}

.intelligence-score .score-value.score-high[b-9oaa9ui7xu] {
    color: #28a745;
}

.intelligence-score .score-value.score-medium[b-9oaa9ui7xu] {
    color: #ffc107;
}

.intelligence-score .score-value.score-low[b-9oaa9ui7xu] {
    color: #dc3545;
}

/* Behavior Summary - ULTRA COMPACT */
.behavior-summary[b-9oaa9ui7xu] {
    margin-bottom: 0.35rem;
    padding: 0.35rem 0.5rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    border-left: 2px solid var(--accent-color, #7c4dff);
}

.behavior-summary p[b-9oaa9ui7xu] {
    margin: 0;
    color: var(--text-secondary, #adb5bd);
    font-size: 0.7rem;
    line-height: 1.3;
}

/* Metrics Grid - ULTRA COMPACT 2x2 */
.behavior-metrics-grid[b-9oaa9ui7xu] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.35rem;
    margin-bottom: 0.35rem;
}

/* Behavior Pillar Cards - hero metric + score bar */
.bcard[b-9oaa9ui7xu] {
    --tint: #6c757d;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-top: 2px solid var(--tint);
    border-radius: 9px;
    padding: 0.5rem 0.6rem 0.55rem;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.bcard.card-positive[b-9oaa9ui7xu] { --tint: #22c55e; }
.bcard.card-negative[b-9oaa9ui7xu] { --tint: #ef4444; }
.bcard.card-neutral[b-9oaa9ui7xu]  { --tint: #eab308; }

.bcard-top[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem;
}

.bcard-title[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.62rem;
    font-weight: 600;
    color: var(--text-secondary, #adb5bd);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.bcard-title i[b-9oaa9ui7xu] { color: var(--tint); font-size: 0.7rem; }

.bcard-tag[b-9oaa9ui7xu] {
    font-size: 0.55rem;
    font-weight: 600;
    padding: 0.1rem 0.4rem;
    border-radius: 10px;
    color: var(--tint);
    background: color-mix(in srgb, var(--tint) 16%, transparent);
    white-space: nowrap;
}

.bcard-hero[b-9oaa9ui7xu] {
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.05;
    font-family: 'JetBrains Mono', 'Source Code Pro', monospace;
    color: var(--text-primary, #e0e0e0);
    letter-spacing: -0.5px;
}

.bcard-hero small[b-9oaa9ui7xu] { font-size: 0.7rem; font-weight: 600; color: var(--text-muted, #6c757d); }
.bcard-hero.text-success[b-9oaa9ui7xu] { color: #22c55e; }
.bcard-hero.text-danger[b-9oaa9ui7xu] { color: #ef4444; }

.bcard-sub[b-9oaa9ui7xu] {
    font-size: 0.58rem;
    color: var(--text-muted, #6c757d);
}

.bcard-meta[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.4rem;
    margin-top: 0.25rem;
    font-size: 0.58rem;
    color: var(--text-muted, #6c757d);
}

.bcard-meta b[b-9oaa9ui7xu] { color: var(--text-secondary, #adb5bd); font-family: 'JetBrains Mono', monospace; }
.bcard-meta b.text-success[b-9oaa9ui7xu] { color: #22c55e; }
.bcard-meta b.text-danger[b-9oaa9ui7xu] { color: #ef4444; }

.bcard-score[b-9oaa9ui7xu] {
    font-family: 'JetBrains Mono', monospace;
    font-weight: 700;
    color: var(--tint);
}

.bcard-score small[b-9oaa9ui7xu] { color: var(--text-muted, #6c757d); font-weight: 400; }

.bcard-track[b-9oaa9ui7xu] {
    height: 4px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.08);
    overflow: hidden;
    margin-top: 0.15rem;
}

.bcard-fill[b-9oaa9ui7xu] {
    height: 100%;
    border-radius: 2px;
    background: var(--tint);
    transition: width 0.3s ease;
}

/* Signals Section - ULTRA COMPACT */
.signals-section[b-9oaa9ui7xu] {
    margin-bottom: 0.35rem;
}

.signals-section h6[b-9oaa9ui7xu] {
    color: var(--text-secondary, #adb5bd);
    font-size: 0.6rem;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.signals-section h6 i[b-9oaa9ui7xu] {
    color: #ffc107;
    font-size: 0.7rem;
}

.signals-grid[b-9oaa9ui7xu] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.signal-card[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.15rem 0.35rem;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 500;
}

.signal-card.signal-buy[b-9oaa9ui7xu] {
    background: rgba(40, 167, 69, 0.15);
    color: #28a745;
    border: 1px solid rgba(40, 167, 69, 0.3);
}

.signal-card.signal-short[b-9oaa9ui7xu] {
    background: rgba(232, 62, 140, 0.15);
    color: #e83e8c;
    border: 1px solid rgba(232, 62, 140, 0.3);
}

.signal-card.signal-avoid[b-9oaa9ui7xu] {
    background: rgba(220, 53, 69, 0.15);
    color: #dc3545;
    border: 1px solid rgba(220, 53, 69, 0.3);
}

.signal-card.signal-neutral[b-9oaa9ui7xu] {
    background: rgba(173, 181, 189, 0.15);
    color: #adb5bd;
    border: 1px solid rgba(173, 181, 189, 0.3);
}

/* Intelligence Score Summary - ring + per-factor strength */
.score-summary[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 9px;
    padding: 0.6rem 0.7rem;
}

.score-ring[b-9oaa9ui7xu] {
    --pct: 0;
    --ring: #6c757d;
    flex-shrink: 0;
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: conic-gradient(var(--ring) calc(var(--pct) * 1%), rgba(255, 255, 255, 0.08) 0);
    display: flex;
    align-items: center;
    justify-content: center;
}

.score-ring.score-high[b-9oaa9ui7xu] { --ring: #22c55e; }
.score-ring.score-medium[b-9oaa9ui7xu] { --ring: #eab308; }
.score-ring.score-low[b-9oaa9ui7xu] { --ring: #ef4444; }

.score-ring-inner[b-9oaa9ui7xu] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--card-bg, #15151f);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.score-num[b-9oaa9ui7xu] {
    font-size: 1.15rem;
    font-weight: 800;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-primary, #e0e0e0);
}

.score-den[b-9oaa9ui7xu] { font-size: 0.5rem; color: var(--text-muted, #6c757d); }

.factors[b-9oaa9ui7xu] { flex: 1; min-width: 0; }

.factors-head[b-9oaa9ui7xu] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    font-size: 0.55rem;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--text-muted, #6c757d);
    font-weight: 600;
    margin-bottom: 0.3rem;
}

.factors-head-right[b-9oaa9ui7xu] { font-weight: 500; opacity: 0.8; }

.factor[b-9oaa9ui7xu] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.2rem;
}

.factor-label[b-9oaa9ui7xu] {
    flex: 0 0 96px;
    font-size: 0.58rem;
    color: var(--text-secondary, #adb5bd);
    white-space: nowrap;
}

.factor-label em[b-9oaa9ui7xu] {
    font-style: normal;
    color: var(--text-muted, #6c757d);
    font-size: 0.5rem;
}

.factor-track[b-9oaa9ui7xu] {
    flex: 1;
    height: 5px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 3px;
    overflow: hidden;
}

.factor-fill[b-9oaa9ui7xu] {
    height: 100%;
    border-radius: 3px;
    background: linear-gradient(90deg, #7c4dff, #a78bfa);
    transition: width 0.3s ease;
}

.factor-val[b-9oaa9ui7xu] {
    flex: 0 0 20px;
    text-align: right;
    font-size: 0.58rem;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-secondary, #adb5bd);
}

.factor-contrib[b-9oaa9ui7xu] {
    flex: 0 0 30px;
    text-align: right;
    font-size: 0.55rem;
    font-family: 'JetBrains Mono', monospace;
    color: #7c4dff;
}

.factors-note[b-9oaa9ui7xu] {
    font-size: 0.5rem;
    color: var(--text-muted, #6c757d);
    margin-top: 0.2rem;
    opacity: 0.85;
}

/* Responsive */
@media (max-width: 768px) {

    .intelligence-score[b-9oaa9ui7xu] {
        text-align: center;
    }
    
    .behavior-metrics-grid[b-9oaa9ui7xu] {
        grid-template-columns: 1fr;
    }
    
    .breakdown-label[b-9oaa9ui7xu] {
        flex: 0 0 100px;
        font-size: 0.75rem;
    }
    
    .signals-grid[b-9oaa9ui7xu] {
        flex-direction: column;
    }
    
    .signal-card[b-9oaa9ui7xu] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Dividends/DividendDailyPick.razor.rz.scp.css */


/* Main Picks Row */

.loading-inline[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--bs-secondary);
    font-size: 13px;
    flex: 1;
}

.loading-inline .spinner-border[b-ddbh0n3492] {
    width: 14px;
    height: 14px;
}

/* Pick Item */

.pick-item.no-pick[b-ddbh0n3492] {
    opacity: 0.5;
}

.pick-item.ai .pick-label[b-ddbh0n3492] {
    color: #10b981;
}

.pick-item.engine .pick-label[b-ddbh0n3492] {
    color: #6366f1;
}

.pick-action.buy-before[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.pick-action.short-gap[b-ddbh0n3492] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.pick-action.buy-after[b-ddbh0n3492] {
    background: rgba(59, 130, 246, 0.15);
    color: #3b82f6;
}

.pick-action.hold[b-ddbh0n3492] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

.pick-action.avoid[b-ddbh0n3492] {
    background: rgba(107, 114, 128, 0.15);
    color: #6b7280;
}

.pick-return.positive[b-ddbh0n3492] {
    color: #10b981;
}

.pick-return.negative[b-ddbh0n3492] {
    color: #ef4444;
}

.pick-confidence.high[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.pick-confidence.med[b-ddbh0n3492] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

.pick-confidence.low[b-ddbh0n3492] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

/* Actions */
.picks-actions[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
}

.btn-history[b-ddbh0n3492],
.btn-run[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 32px;
    height: 32px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    color: var(--bs-secondary);
    cursor: pointer;
    transition: all 0.2s;
    font-size: 13px;
}

.btn-history[b-ddbh0n3492] {
    width: auto;
    padding: 0 10px;
}

.btn-history:hover[b-ddbh0n3492],
.btn-run:hover[b-ddbh0n3492] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--bs-body-color);
}

.btn-history.active[b-ddbh0n3492] {
    background: var(--bs-primary);
    border-color: var(--bs-primary);
    color: white;
}

.btn-run:disabled[b-ddbh0n3492] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-run.running[b-ddbh0n3492] {
    background: rgba(245, 158, 11, 0.2);
    border-color: #f59e0b;
}

.history-stat[b-ddbh0n3492] {
    font-weight: 600;
    font-size: 12px;
}

/* History Panel */
.history-panel[b-ddbh0n3492] {
    margin-top: 12px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    overflow: hidden;
    animation: slideDown-b-ddbh0n3492 0.2s ease;
}

@keyframes slideDown-b-ddbh0n3492 {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.history-header[b-ddbh0n3492] {
    padding: 10px 14px;
    background: rgba(0, 0, 0, 0.15);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.history-stats[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 12px;
}

.history-stats .stat[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 4px;
    color: var(--bs-secondary);
}

.history-stats .stat strong[b-ddbh0n3492] {
    color: var(--bs-body-color);
}

.history-stats .stat.win i[b-ddbh0n3492] {
    color: #10b981;
}

.history-stats .stat.loss i[b-ddbh0n3492] {
    color: #ef4444;
}

.history-stats .stat.rate[b-ddbh0n3492] {
    font-weight: 600;
}

.history-stats .stat.rate.good[b-ddbh0n3492] {
    color: #10b981;
}

.history-stats .stat.rate.ok[b-ddbh0n3492] {
    color: #f59e0b;
}

.history-stats .stat.rate.poor[b-ddbh0n3492] {
    color: #ef4444;
}

/* History Table */
.history-table-wrap[b-ddbh0n3492] {
    overflow-x: auto;
    max-height: 300px;
    overflow-y: auto;
}

.history-table[b-ddbh0n3492] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.history-table th[b-ddbh0n3492] {
    background: rgba(0, 0, 0, 0.1);
    padding: 8px 10px;
    text-align: left;
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--bs-secondary);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    position: sticky;
    top: 0;
}

.history-table td[b-ddbh0n3492] {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
    vertical-align: middle;
}

.history-table tbody tr:hover[b-ddbh0n3492] {
    background: rgba(255, 255, 255, 0.02);
}

.history-table tbody tr.row-win[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.04);
}

.history-table tbody tr.row-loss[b-ddbh0n3492] {
    background: rgba(239, 68, 68, 0.04);
}

.link-symbol[b-ddbh0n3492] {
    font-weight: 600;
    color: var(--bs-primary);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    font-size: 12px;
}

.link-symbol:hover[b-ddbh0n3492] {
    color: #818cf8;
    text-decoration: underline;
}

.badge-source[b-ddbh0n3492] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 3px;
}

.badge-source.ai[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.badge-source.engine[b-ddbh0n3492] {
    background: rgba(99, 102, 241, 0.15);
    color: #6366f1;
}

.badge-action[b-ddbh0n3492] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 3px;
}

.badge-action.buy-before[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.badge-action.short-gap[b-ddbh0n3492] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.badge-action.buy-after[b-ddbh0n3492] {
    background: rgba(59, 130, 246, 0.15);
    color: #3b82f6;
}

.badge-action.hold[b-ddbh0n3492] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

.badge-action.avoid[b-ddbh0n3492] {
    background: rgba(107, 114, 128, 0.15);
    color: #6b7280;
}

.badge-result[b-ddbh0n3492] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 10px;
}

.badge-result.win[b-ddbh0n3492] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.badge-result.loss[b-ddbh0n3492] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.badge-result.pending[b-ddbh0n3492] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

td.positive[b-ddbh0n3492] {
    color: #10b981;
}

td.negative[b-ddbh0n3492] {
    color: #ef4444;
}

/* Responsive */
@media (max-width: 900px) {

    .picks-actions[b-ddbh0n3492] {
        flex-basis: 100%;
        justify-content: flex-end;
        margin-top: 8px;
        padding-top: 8px;
        border-top: 1px solid rgba(255, 255, 255, 0.05);
    }
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* RICH PICK CARDS + INLINE MINI EVENT STUDY (redesign)                     */
/* ═══════════════════════════════════════════════════════════════════════ */
.daily-picks-cards[b-ddbh0n3492] { display: flex; flex-direction: column; gap: 12px; }

.picks-cards-head[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.picks-cards-title[b-ddbh0n3492] {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.3px;
    color: #c9d2e0;
    text-transform: uppercase;
}

.picks-cards-title i[b-ddbh0n3492] { color: #00cded; margin-right: 4px; }

.picks-cards-grid[b-ddbh0n3492] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 12px;
}

.pick-card[b-ddbh0n3492] {
    background: linear-gradient(180deg, rgba(20, 27, 43, 0.9), rgba(14, 19, 30, 0.95));
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-left: 3px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: border-color 0.15s ease, transform 0.15s ease;
}

.pick-card:hover[b-ddbh0n3492] { transform: translateY(-1px); }
.pick-card.ai[b-ddbh0n3492] { border-left-color: #00cded; }
.pick-card.engine[b-ddbh0n3492] { border-left-color: #8b5cf6; }
.pick-card.empty[b-ddbh0n3492] { opacity: 0.6; }

.pick-card-head[b-ddbh0n3492] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

.src-badge[b-ddbh0n3492] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    padding: 2px 7px;
    border-radius: 5px;
}

.src-badge.ai[b-ddbh0n3492] { background: rgba(0, 205, 237, 0.15); color: #00cded; }
.src-badge.engine[b-ddbh0n3492] { background: rgba(139, 92, 246, 0.15); color: #b794f6; }

.pick-sym[b-ddbh0n3492] {
    background: none;
    border: none;
    color: #e1e5ea;
    font-size: 17px;
    font-weight: 800;
    cursor: pointer;
    padding: 0;
    letter-spacing: 0.3px;
}

.pick-sym:hover[b-ddbh0n3492] { color: #00cded; }

.pick-verdict[b-ddbh0n3492] {
    font-size: 11px;
    font-weight: 700;
    padding: 3px 9px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.06);
    color: #c9d2e0;
}

.pick-verdict.buy-before[b-ddbh0n3492] { background: rgba(34, 197, 94, 0.16); color: #4ade80; }
.pick-verdict.buy-after[b-ddbh0n3492] { background: rgba(15, 216, 99, 0.16); color: #0fd863; }
.pick-verdict.short-gap[b-ddbh0n3492] { background: rgba(239, 68, 68, 0.16); color: #f87171; }
.pick-verdict.hold[b-ddbh0n3492] { background: rgba(96, 165, 250, 0.16); color: #60a5fa; }
.pick-verdict.avoid[b-ddbh0n3492] { background: rgba(148, 163, 184, 0.16); color: #94a3b8; }

.pick-conf[b-ddbh0n3492] {
    margin-left: auto;
    font-size: 13px;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 6px;
}

.pick-conf.high[b-ddbh0n3492] { background: rgba(34, 197, 94, 0.15); color: #4ade80; }
.pick-conf.med[b-ddbh0n3492] { background: rgba(245, 158, 11, 0.15); color: #fbbf24; }
.pick-conf.low[b-ddbh0n3492] { background: rgba(148, 163, 184, 0.15); color: #94a3b8; }

.pick-empty-text[b-ddbh0n3492] { color: #66708a; font-size: 13px; font-style: italic; }

.pick-when[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 12.5px;
    color: #a8b3c7;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 7px;
    padding: 7px 10px;
}

.pick-when i[b-ddbh0n3492] { color: #00cded; }
.pick-when .when-label[b-ddbh0n3492] { color: #e1e5ea; font-weight: 700; }
.pick-when .when-sep[b-ddbh0n3492] { color: #4a5568; }
.pick-when .pick-ret[b-ddbh0n3492] { font-weight: 700; }
.pick-ret.positive[b-ddbh0n3492] { color: #4ade80; }
.pick-ret.negative[b-ddbh0n3492] { color: #f87171; }

.pick-why[b-ddbh0n3492] { font-size: 12.5px; line-height: 1.45; color: #b8c2d4; }

.pick-drivers[b-ddbh0n3492] { display: flex; flex-wrap: wrap; gap: 6px; }

.driver-chip[b-ddbh0n3492] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #9fb0c9;
    background: rgba(0, 205, 237, 0.08);
    border: 1px solid rgba(0, 205, 237, 0.18);
    border-radius: 6px;
    padding: 3px 8px;
}

.driver-chip i[b-ddbh0n3492] { color: #00cded; font-size: 10px; }

.pick-risk[b-ddbh0n3492] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    color: #d6a15c;
}

.pick-risk i[b-ddbh0n3492] { color: #f59e0b; }

/* Inline mini event study */
.pick-mini-es[b-ddbh0n3492] {
    margin-top: 2px;
    border-top: 1px solid rgba(255, 255, 255, 0.07);
    padding-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.mini-es-svg[b-ddbh0n3492] { width: 100%; height: 46px; display: block; overflow: visible; }

.mini-es-path[b-ddbh0n3492] {
    stroke: #00cded;
    stroke-width: 1.75;
    fill: none;
    stroke-linejoin: round;
    stroke-linecap: round;
    filter: drop-shadow(0 0 4px rgba(0, 205, 237, 0.35));
}

.mini-es-zero[b-ddbh0n3492] { stroke: rgba(255, 255, 255, 0.18); stroke-width: 1; stroke-dasharray: 3 3; }
.mini-es-ex[b-ddbh0n3492] { stroke: rgba(239, 68, 68, 0.55); stroke-width: 1; stroke-dasharray: 2 2; }

.mini-es-meta[b-ddbh0n3492] { display: flex; align-items: center; justify-content: space-between; }
.mini-es-n[b-ddbh0n3492] { font-size: 11px; color: #7b879c; }

.mini-es-more[b-ddbh0n3492] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    background: none;
    border: none;
    color: #00cded;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    padding: 0;
}

.mini-es-more:hover[b-ddbh0n3492] { color: #4ade80; }
.mini-es-more.standalone[b-ddbh0n3492] { padding: 6px 0; }
.mini-es-loading[b-ddbh0n3492] { font-size: 11.5px; color: #66708a; font-style: italic; }
/* /Components/Dividends/DividendHistoryTab.razor.rz.scp.css */
.div-history[b-0y7z6ycfgx] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    padding: 0.25rem 0.25rem 0.5rem;
}

.dh-loading[b-0y7z6ycfgx],
.dh-empty[b-0y7z6ycfgx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 160px;
    gap: 0.5rem;
    color: var(--text-muted, #6c757d);
}

.dh-empty i[b-0y7z6ycfgx] { font-size: 2rem; opacity: 0.5; }
.dh-empty small[b-0y7z6ycfgx] { opacity: 0.7; }

.dh-intro[b-0y7z6ycfgx] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.72rem;
    color: var(--text-secondary, #adb5bd);
}

.dh-intro i[b-0y7z6ycfgx] { color: var(--accent-color, #7c4dff); }

/* Table */
.dh-table-wrap[b-0y7z6ycfgx] {
    overflow-x: auto;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 10px;
}

.dh-table[b-0y7z6ycfgx] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.72rem;
}

.dh-table thead th[b-0y7z6ycfgx] {
    text-align: right;
    padding: 0.5rem 0.6rem;
    font-size: 0.58rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--text-muted, #6c757d);
    background: rgba(255, 255, 255, 0.03);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    white-space: nowrap;
}

.dh-table thead th:first-child[b-0y7z6ycfgx],
.dh-table thead th:nth-child(2)[b-0y7z6ycfgx] { text-align: left; }

.dh-table tbody td[b-0y7z6ycfgx] {
    padding: 0.45rem 0.6rem;
    text-align: right;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    font-family: 'JetBrains Mono', monospace;
    white-space: nowrap;
}

.dh-table tbody tr:last-child td[b-0y7z6ycfgx] { border-bottom: none; }
.dh-table tbody tr:hover[b-0y7z6ycfgx] { background: rgba(255, 255, 255, 0.03); }

.dh-date[b-0y7z6ycfgx] { text-align: left !important; color: var(--text-secondary, #adb5bd); font-family: inherit !important; }
.dh-amount[b-0y7z6ycfgx] { text-align: left !important; color: var(--text-primary, #e0e0e0); }

.dh-pos[b-0y7z6ycfgx] { color: #22c55e; }
.dh-neg[b-0y7z6ycfgx] { color: #ef4444; }
.dh-na[b-0y7z6ycfgx] { color: var(--text-muted, #6c757d); }

.dh-eff[b-0y7z6ycfgx] {
    margin-left: 0.35rem;
    font-size: 0.58rem;
    padding: 0.05rem 0.3rem;
    border-radius: 4px;
    background: rgba(234, 179, 8, 0.15);
    color: #eab308;
}

.dh-recovery[b-0y7z6ycfgx] {
    padding: 0.1rem 0.4rem;
    border-radius: 10px;
    font-size: 0.62rem;
    font-weight: 600;
}

.dh-recovery.rec-fast[b-0y7z6ycfgx] { background: rgba(34, 197, 94, 0.16); color: #4ade80; }
.dh-recovery.rec-mid[b-0y7z6ycfgx] { background: rgba(234, 179, 8, 0.16); color: #eab308; }
.dh-recovery.rec-slow[b-0y7z6ycfgx] { background: rgba(249, 115, 22, 0.16); color: #fb923c; }
.dh-recovery.rec-none[b-0y7z6ycfgx] { background: rgba(239, 68, 68, 0.16); color: #f87171; }

/* Distribution stats footer */
.dh-stats[b-0y7z6ycfgx] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.4rem;
}

.dh-stat[b-0y7z6ycfgx] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    align-items: center;
    padding: 0.45rem 0.3rem;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
}

.dh-stat-label[b-0y7z6ycfgx] {
    font-size: 0.55rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    color: var(--text-muted, #6c757d);
}

.dh-stat-value[b-0y7z6ycfgx] {
    font-size: 0.82rem;
    font-weight: 700;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-primary, #e0e0e0);
}

.dh-stat-value.good[b-0y7z6ycfgx] { color: #22c55e; }
.dh-stat-value.poor[b-0y7z6ycfgx] { color: #ef4444; }

@media (max-width: 768px) {
    .dh-stats[b-0y7z6ycfgx] { grid-template-columns: repeat(2, 1fr); }
}
/* /Components/Dividends/EventStudyChart.razor.rz.scp.css */
/* Event Study Chart Component Styles - Modern Two-Column Layout */

.event-study-chart-container[b-i7hasljj6d] {
    background: var(--card-bg, #1e1e2e);
    border-radius: 12px;
    padding: 0.75rem;
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
    height: 100%;
    display: flex;
    flex-direction: column;
}

.event-study-chart-container.enhanced[b-i7hasljj6d] {
    min-height: 380px;
}

/* Loading & Empty States */
.chart-loading[b-i7hasljj6d],
.chart-empty[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    color: var(--text-muted, #6c757d);
    gap: 1rem;
}

.chart-empty i[b-i7hasljj6d] {
    font-size: 2.5rem;
    opacity: 0.5;
}

.chart-empty small[b-i7hasljj6d] {
    opacity: 0.7;
}

/* Two-Column Grid Layout - Fill container height */
.chart-layout-grid[b-i7hasljj6d] {
    display: grid;
    grid-template-columns: 1fr 200px;
    gap: 0.75rem;
    flex: 1;
    min-height: 320px;
}

/* LEFT COLUMN - Chart Area */
.chart-column[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
}

/* Top bar: Legend + Toggle Pills */
.chart-top-bar[b-i7hasljj6d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
    gap: 0.5rem;
}

.legend-inline[b-i7hasljj6d] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

.legend-inline .legend-item[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.65rem;
    color: var(--text-muted, #6c757d);
}

.legend-inline .legend-item.primary[b-i7hasljj6d] {
    color: #22c55e;
    font-weight: 500;
}

.toggle-pills[b-i7hasljj6d] {
    display: flex;
    gap: 0.35rem;
}

.toggle-pills .pill[b-i7hasljj6d] {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 0.2rem 0.5rem;
    font-size: 0.6rem;
    color: var(--text-muted, #6c757d);
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.2rem;
}

.toggle-pills .pill:hover[b-i7hasljj6d] {
    background: rgba(255, 255, 255, 0.1);
}

.toggle-pills .pill.active[b-i7hasljj6d] {
    background: rgba(124, 77, 255, 0.2);
    border-color: rgba(124, 77, 255, 0.4);
    color: var(--accent-color, #7c4dff);
}

.toggle-pills .pill i[b-i7hasljj6d] {
    font-size: 0.55rem;
}

/* Toggle controls container */
.toggle-controls[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Weight Mode Toggle - Phase 3 */
.weight-mode-toggle[b-i7hasljj6d] {
    display: flex;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    padding: 2px;
    gap: 2px;
}

.weight-mode-toggle .mode-btn[b-i7hasljj6d] {
    background: transparent;
    border: none;
    padding: 0.2rem 0.45rem;
    font-size: 0.58rem;
    color: var(--text-muted, #6c757d);
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.2rem;
}

.weight-mode-toggle .mode-btn:hover[b-i7hasljj6d] {
    background: rgba(255, 255, 255, 0.08);
    color: #adb5bd;
}

.weight-mode-toggle .mode-btn.active[b-i7hasljj6d] {
    background: rgba(124, 77, 255, 0.25);
    color: var(--accent-color, #7c4dff);
    font-weight: 500;
}

/* Recency mode active state - amber accent */
.weight-mode-toggle .mode-btn.active:last-child[b-i7hasljj6d] {
    background: rgba(245, 158, 11, 0.2);
    color: #f59e0b;
}

.weight-mode-toggle .mode-btn i[b-i7hasljj6d] {
    font-size: 0.55rem;
}

/* SVG Chart Wrapper - Fill available space */
.chart-svg-wrapper[b-i7hasljj6d] {
    width: 100%;
    flex: 1;
    min-height: 280px;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    overflow: hidden;
}

.event-study-svg[b-i7hasljj6d] {
    width: 100%;
    height: 100%;
}

.event-study-svg[b-i7hasljj6d] {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
}

/* Grid lines */
[b-i7hasljj6d] .grid-line {
    stroke: rgba(255, 255, 255, 0.08);
    stroke-width: 1;
}

[b-i7hasljj6d] .zero-line {
    stroke: rgba(255, 255, 255, 0.3);
    stroke-width: 1.5;
    stroke-dasharray: 4, 4;
}

[b-i7hasljj6d] .ex-date-line {
    stroke: rgba(255, 107, 107, 0.6);
    stroke-width: 2;
    stroke-dasharray: 6, 3;
}

/* Curves */
[b-i7hasljj6d] .average-curve {
    fill: none;
    stroke: var(--accent-color, #7c4dff);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

[b-i7hasljj6d] .individual-curve {
    fill: none;
    stroke: rgba(124, 77, 255, 0.25);
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

[b-i7hasljj6d] .confidence-band {
    fill: rgba(124, 77, 255, 0.15);
    stroke: none;
}

/* Invisible hit area for better hover/click detection */
[b-i7hasljj6d] .data-point-hit-area {
    fill: transparent;
    stroke: none;
    cursor: pointer;
}

[b-i7hasljj6d] .data-point {
    fill: var(--accent-color, #7c4dff);
    stroke: var(--card-bg, #1e1e2e);
    stroke-width: 2;
    transition: r 0.15s ease, fill 0.15s ease, filter 0.15s ease;
}

[b-i7hasljj6d] .data-point:hover,
[b-i7hasljj6d] .data-point.hovered {
    fill: #22c55e;
    filter: drop-shadow(0 0 6px rgba(34, 197, 94, 0.6));
}

/* Weighted mode data points - amber color */
[b-i7hasljj6d] .data-point.weighted {
    fill: #f59e0b;
}

[b-i7hasljj6d] .data-point.weighted:hover,
[b-i7hasljj6d] .data-point.weighted.hovered {
    fill: #fbbf24;
    filter: drop-shadow(0 0 6px rgba(245, 158, 11, 0.6));
}

/* Tooltip group inside SVG */
[b-i7hasljj6d] .tooltip-group rect {
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.5));
}

[b-i7hasljj6d] .tooltip-group text {
    user-select: none;
}

[b-i7hasljj6d] .tooltip-group.pinned rect {
    filter: drop-shadow(0 4px 16px rgba(124, 77, 255, 0.4));
}

/* Axis labels */
[b-i7hasljj6d] .axis-label {
    fill: var(--text-muted, #6c757d);
    font-size: 11px;
    text-anchor: middle;
}

[b-i7hasljj6d] .y-axis-label {
    fill: var(--text-muted, #6c757d);
    font-size: 10px;
    text-anchor: end;
}

/* Metrics Grid */

.metric-label[b-i7hasljj6d] {
    font-size: 0.75rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.metric-value[b-i7hasljj6d] {
    font-size: 1.25rem;
    font-weight: 600;
    font-family: 'Source Code Pro', monospace;
}

.metric-value.positive[b-i7hasljj6d] {
    color: #28a745;
}

.metric-value.negative[b-i7hasljj6d] {
    color: #dc3545;
}

.metric-value.neutral[b-i7hasljj6d] {
    color: var(--text-secondary, #adb5bd);
}

/* Consistency Section */

.consistency-bar[b-i7hasljj6d] {
    width: 100%;
    height: 6px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
    overflow: hidden;
}

.consistency-fill[b-i7hasljj6d] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.consistency-fill.high[b-i7hasljj6d] {
    background: linear-gradient(90deg, #28a745, #20c997);
}

.consistency-fill.medium[b-i7hasljj6d] {
    background: linear-gradient(90deg, #ffc107, #fd7e14);
}

.consistency-fill.low[b-i7hasljj6d] {
    background: linear-gradient(90deg, #dc3545, #e83e8c);
}

.consistency-value[b-i7hasljj6d] {
    font-size: 0.7rem;
    color: var(--text-secondary, #adb5bd);
    font-family: 'Source Code Pro', monospace;
}

/* Legend */
.chart-legend[b-i7hasljj6d] {
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.legend-item[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--text-muted, #6c757d);
}

.legend-line[b-i7hasljj6d] {
    width: 24px;
    height: 3px;
    border-radius: 2px;
}

.legend-line.average[b-i7hasljj6d] {
    background: var(--accent-color, #7c4dff);
}

.legend-line.individual[b-i7hasljj6d] {
    background: rgba(124, 77, 255, 0.4);
}

.legend-band[b-i7hasljj6d] {
    width: 24px;
    height: 12px;
    background: rgba(124, 77, 255, 0.2);
    border-radius: 2px;
}

/* ============================================================ */
/* ENHANCED CHART STYLES - COMPACT VERSION                      */
/* ============================================================ */

/* Enhanced Container */
.event-study-chart-container.enhanced[b-i7hasljj6d] {
    padding: 0.5rem 0.75rem;
    background: transparent;
}

/* Premium Header - Compact */

/* Verdict Badge */

.verdict-favorable[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.verdict-neutral[b-i7hasljj6d] {
    background: rgba(234, 179, 8, 0.15);
    color: #eab308;
    border: 1px solid rgba(234, 179, 8, 0.3);
}

.verdict-weak[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Premium Controls */

/* Recovery Info */

/* Median Curve - PRIMARY with glow */
[b-i7hasljj6d] .median-curve {
    fill: none;
    stroke: #22c55e;
    stroke-width: 3;
    stroke-linecap: round;
    filter: drop-shadow(0 0 6px rgba(34, 197, 94, 0.6));
}

/* Average Curve - SECONDARY, faded */
[b-i7hasljj6d] .average-curve {
    fill: none;
    stroke: var(--accent-color, #7c4dff);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: 0.6;
}

/* Percentile Band */
[b-i7hasljj6d] .percentile-band {
    stroke: none;
}

/* Annotation styles */

[b-i7hasljj6d] .ex-label {
    fill: rgba(255, 107, 107, 0.9) !important;
    font-weight: 600;
}

/* "You are here" / NOW marker */
[b-i7hasljj6d] .now-marker line {
    stroke: #38bdf8;
    stroke-width: 1.5;
    stroke-dasharray: 2, 3;
    opacity: 0.85;
}

[b-i7hasljj6d] .now-pill {
    fill: #38bdf8;
    filter: drop-shadow(0 1px 4px rgba(56, 189, 248, 0.5));
}

[b-i7hasljj6d] .now-text {
    fill: #04141f;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.3px;
}

/* Premium Metrics Grid - COMPACT */

.metric-card[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(0, 0, 0, 0.2);
    padding: 0.35rem 0.6rem;
    border-radius: 6px;
    min-width: auto;
}

.metric-icon[b-i7hasljj6d] {
    font-size: 0.9rem;
    color: var(--text-muted, #6c757d);
    opacity: 0.7;
    display: none;  /* Hide icons for compactness */
}

.metric-content[b-i7hasljj6d] {
    display: flex;
    flex-direction: row;
    gap: 0.35rem;
    align-items: baseline;
}

.metric-content .metric-label[b-i7hasljj6d] {
    font-size: 0.6rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.2px;
}

.metric-content .metric-value[b-i7hasljj6d] {
    font-size: 0.85rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', 'Source Code Pro', monospace;
}

/* Stat Badges - COMPACT */
.stat-badge[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.5rem;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.stat-badge.positive[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.2);
}

.stat-badge.positive i[b-i7hasljj6d] {
    color: #22c55e;
}

.stat-badge.neutral[b-i7hasljj6d] {
    background: rgba(234, 179, 8, 0.1);
    border-color: rgba(234, 179, 8, 0.2);
}

.stat-badge.neutral i[b-i7hasljj6d] {
    color: #eab308;
}

.stat-badge.negative[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.2);
}

.stat-badge.negative i[b-i7hasljj6d] {
    color: #ef4444;
}

.stat-badge i[b-i7hasljj6d] {
    font-size: 0.75rem;
    opacity: 0.9;
}

.stat-value[b-i7hasljj6d] {
    font-size: 0.75rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', 'Source Code Pro', monospace;
    color: var(--text-primary, #e0e0e0);
}

.stat-label[b-i7hasljj6d] {
    font-size: 0.55rem;
    color: var(--text-muted, #6c757d);
    text-transform: lowercase;
}

/* Compact Legend */

.legend-hint[b-i7hasljj6d] {
    font-size: 0.5rem;
    color: var(--text-muted, #6c757d);
    opacity: 0.8;
}

.legend-line.median[b-i7hasljj6d] {
    background: #22c55e;
    height: 3px;
    box-shadow: 0 0 4px rgba(34, 197, 94, 0.6);
}

.legend-band.percentile[b-i7hasljj6d] {
    background: linear-gradient(180deg, rgba(99, 102, 241, 0.3) 0%, rgba(99, 102, 241, 0.1) 50%, rgba(99, 102, 241, 0.3) 100%);
}

/* Legend with tooltip */

/* ============================================================ */
/* PHASE 2 ENHANCEMENTS                                          */
/* ============================================================ */

/* Typical Play Card */

.play-icon[b-i7hasljj6d] {
    font-size: 1rem;
    opacity: 0.9;
}

.play-label[b-i7hasljj6d] {
    font-size: 0.5rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.play-type[b-i7hasljj6d] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-primary, #e0e0e0);
}

.play-timing[b-i7hasljj6d] {
    font-size: 0.55rem;
    font-weight: 500;
    color: #22c55e;
}

/* Verdict Details Expandable */
.verdict-badge-container[b-i7hasljj6d] {
    cursor: pointer;
    position: relative;
}

.verdict-expand[b-i7hasljj6d] {
    font-size: 0.6rem;
    opacity: 0.6;
    transition: transform 0.2s ease;
}

.verdict-badge-container.expanded .verdict-expand[b-i7hasljj6d] {
    transform: rotate(180deg);
}

.verdict-details[b-i7hasljj6d] {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 20;
    background: rgba(0, 0, 0, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 6px;
    padding: 0.5rem;
    margin-top: 0.25rem;
    min-width: 180px;
    backdrop-filter: blur(8px);
}

.reason[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.6rem;
    padding: 0.15rem 0;
}

.reason.positive[b-i7hasljj6d] { color: #22c55e; }
.reason.negative[b-i7hasljj6d] { color: #ef4444; }
.reason.neutral[b-i7hasljj6d] { color: #adb5bd; }

.reason i[b-i7hasljj6d] {
    font-size: 0.7rem;
}

/* Gap Efficiency Display */

/* Consistency Badge */

/* Chart Tooltip */

.tooltip-header[b-i7hasljj6d] {
    font-size: 0.65rem;
    font-weight: 600;
    color: var(--accent-color, #7c4dff);
    margin-bottom: 0.25rem;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* Metric Number Badge */

/* Bottom Timing Metric */

.bottom-timing .metric-value[b-i7hasljj6d] {
    color: #ef4444;
}

/* Responsive */
@media (max-width: 768px) {

    .metric-card[b-i7hasljj6d] {
        min-width: 100%;
    }
    
    .stat-badge[b-i7hasljj6d] {
        flex: 1;
        min-width: 100px;
    }
    
    .chart-legend[b-i7hasljj6d] {
        gap: 1rem;
    }
    
    /* Mobile: Stack columns */
    .chart-layout-grid[b-i7hasljj6d] {
        grid-template-columns: 1fr;
    }
    
    .stats-column[b-i7hasljj6d] {
        order: -1;
    }
}

/* ===== RIGHT COLUMN - Stats Panel ===== */
.stats-column[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    min-width: 200px;
}

/* Chart Info Bar */
.chart-info-bar[b-i7hasljj6d] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-start;
    padding: 0.35rem 0;
}

.sample-badge[b-i7hasljj6d],
.recovery-badge[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6rem;
    color: var(--text-muted, #6c757d);
    background: rgba(0, 0, 0, 0.2);
    padding: 0.2rem 0.5rem;
    border-radius: 10px;
}

.sample-badge strong[b-i7hasljj6d],
.recovery-badge strong[b-i7hasljj6d] {
    color: var(--accent-color, #7c4dff);
}

.recovery-badge strong[b-i7hasljj6d] {
    color: #22c55e;
}

/* Verdict Card (always expanded) */
.verdict-card[b-i7hasljj6d] {
    background: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    padding: 0.5rem;
    border: 1px solid transparent;
}

.verdict-card.verdict-favorable[b-i7hasljj6d] {
    border-color: rgba(34, 197, 94, 0.3);
    background: rgba(34, 197, 94, 0.08);
}

.verdict-card.verdict-neutral[b-i7hasljj6d] {
    border-color: rgba(234, 179, 8, 0.3);
    background: rgba(234, 179, 8, 0.08);
}

.verdict-card.verdict-weak[b-i7hasljj6d] {
    border-color: rgba(239, 68, 68, 0.3);
    background: rgba(239, 68, 68, 0.08);
}

.verdict-header[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.3rem;
}

.verdict-icon[b-i7hasljj6d] {
    font-size: 0.85rem;
}

.verdict-text[b-i7hasljj6d] {
    font-size: 0.7rem;
    font-weight: 600;
    flex: 1;
    color: var(--text-primary, #e0e0e0);
}

.verdict-reasons[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.verdict-reasons .reason[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.55rem;
    padding: 0.1rem 0;
    line-height: 1.2;
}

.verdict-reasons .reason.positive[b-i7hasljj6d] { color: #22c55e; }
.verdict-reasons .reason.negative[b-i7hasljj6d] { color: #ef4444; }
.verdict-reasons .reason.neutral[b-i7hasljj6d] { color: #adb5bd; }

.verdict-reasons .reason i[b-i7hasljj6d] {
    font-size: 0.5rem;
    flex-shrink: 0;
}

/* Play Card */
.play-card[b-i7hasljj6d] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    padding: 0.5rem 0.6rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.play-card.positive[b-i7hasljj6d] {
    border-color: rgba(34, 197, 94, 0.25);
}

.play-card.negative[b-i7hasljj6d] {
    border-color: rgba(239, 68, 68, 0.25);
}

.play-header[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.play-icon[b-i7hasljj6d] {
    font-size: 0.85rem;
    color: var(--accent-color, #7c4dff);
}

.play-card.positive .play-icon[b-i7hasljj6d] {
    color: #22c55e;
}

.play-card.negative .play-icon[b-i7hasljj6d] {
    color: #ef4444;
}

.play-type[b-i7hasljj6d] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-primary, #e0e0e0);
}

.play-timing[b-i7hasljj6d] {
    font-size: 0.55rem;
    color: #22c55e;
    margin-top: 0.2rem;
}

/* Stats Flow - Compact Vertical Stack */
.stats-flow.compact-grid[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.stat-item-compact[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(0, 0, 0, 0.15);
    padding: 0.3rem 0.5rem;
    border-radius: 4px;
}

.stat-item-compact.highlight[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.stat-item-compact .stat-badge[b-i7hasljj6d] {
    width: 16px;
    height: 16px;
    min-width: 16px;
    border-radius: 50%;
    background: rgba(124, 77, 255, 0.3);
    color: var(--accent-color, #7c4dff);
    font-size: 0.55rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.stat-item-compact.highlight .stat-badge[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.3);
    color: #ef4444;
}

.stat-item-compact .stat-label[b-i7hasljj6d] {
    font-size: 0.55rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    min-width: 45px;
}

.stat-item-compact .stat-value[b-i7hasljj6d] {
    font-size: 0.75rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
    margin-left: auto;
}

.stat-item-compact .stat-value.text-success[b-i7hasljj6d] { color: #22c55e; }
.stat-item-compact .stat-value.text-danger[b-i7hasljj6d] { color: #ef4444; }

.stat-item-compact .efficiency-tag[b-i7hasljj6d] {
    font-size: 0.5rem;
    padding: 0.1rem 0.25rem;
    border-radius: 3px;
    font-family: 'JetBrains Mono', monospace;
    margin-left: 0.3rem;
    background: rgba(234, 179, 8, 0.2);
    color: #eab308;
}

/* Legacy stats-flow styles kept for reference */
.stats-flow:not(.compact-grid)[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.stat-item[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(0, 0, 0, 0.15);
    padding: 0.4rem 0.5rem;
    border-radius: 6px;
    border-left: 2px solid transparent;
}

.stat-item.highlight[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.1);
    border-left-color: #ef4444;
}

.stat-item .stat-number[b-i7hasljj6d] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: rgba(124, 77, 255, 0.2);
    color: var(--accent-color, #7c4dff);
    font-size: 0.55rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}

.stat-item .stat-content[b-i7hasljj6d] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

.stat-item .stat-label[b-i7hasljj6d] {
    font-size: 0.55rem;
    color: var(--text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.stat-item .stat-value[b-i7hasljj6d] {
    font-size: 0.75rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
}

.stat-item .stat-value.positive[b-i7hasljj6d] { color: #22c55e; }
.stat-item .stat-value.negative[b-i7hasljj6d] { color: #ef4444; }
.stat-item .stat-value.neutral[b-i7hasljj6d] { color: var(--text-primary, #e0e0e0); }

.efficiency-tag[b-i7hasljj6d] {
    font-size: 0.5rem;
    padding: 0.1rem 0.3rem;
    border-radius: 4px;
    font-family: 'JetBrains Mono', monospace;
}

.efficiency-tag.high[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}

.efficiency-tag.medium[b-i7hasljj6d] {
    background: rgba(234, 179, 8, 0.15);
    color: #eab308;
}

.efficiency-tag.low[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

/* Behavior Badges */
.behavior-badges[b-i7hasljj6d] {
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.badge-item[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.1rem;
    padding: 0.35rem 0.5rem;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    flex: 1;
    min-width: 55px;
}

.badge-item.positive[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.2);
}

.badge-item.negative[b-i7hasljj6d] {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.badge-item.neutral[b-i7hasljj6d] {
    background: rgba(99, 102, 241, 0.1);
    border: 1px solid rgba(99, 102, 241, 0.2);
}

.badge-item i[b-i7hasljj6d] {
    font-size: 0.7rem;
    color: var(--text-muted, #6c757d);
}

.badge-item.positive i[b-i7hasljj6d] { color: #22c55e; }
.badge-item.negative i[b-i7hasljj6d] { color: #ef4444; }
.badge-item.neutral i[b-i7hasljj6d] { color: #818cf8; }

.badge-item span[b-i7hasljj6d] {
    font-size: 0.75rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
}

.badge-item small[b-i7hasljj6d] {
    font-size: 0.5rem;
    color: var(--text-muted, #6c757d);
}

/* ============================================================ */
/* TRADE PLAN CARD - Buy → Sell rail, clean & modern            */
/* ============================================================ */
.trade-plan-card[b-i7hasljj6d] {
    --accent: #22c55e;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    padding: 0.6rem 0.7rem;
    border-radius: 12px;
    background:
        radial-gradient(120% 80% at 0% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 60%),
        rgba(255, 255, 255, 0.02);
    border: 1px solid color-mix(in srgb, var(--accent) 32%, transparent);
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}

.trade-plan-card.strong[b-i7hasljj6d] { box-shadow: 0 4px 18px color-mix(in srgb, var(--accent) 18%, transparent); }
.trade-plan-card.moderate[b-i7hasljj6d] { --accent: #eab308; }
.trade-plan-card.weak[b-i7hasljj6d] { --accent: #ef4444; }
.trade-plan-card.no-entry[b-i7hasljj6d] { --accent: #ef4444; gap: 0.45rem; }

/* Header: title left, hero expected-move right */
.plan-head[b-i7hasljj6d] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.5rem;
}

.plan-title[b-i7hasljj6d] {
    font-size: 0.55rem;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: var(--text-muted, #6c757d);
    font-weight: 700;
}

.plan-move[b-i7hasljj6d] {
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1;
    font-family: 'JetBrains Mono', monospace;
    color: var(--accent);
    letter-spacing: -0.5px;
}

/* Rail: BUY node ── track ── SELL node */
.plan-rail[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.rail-node[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.05rem;
    flex-shrink: 0;
}

.rail-node.sell[b-i7hasljj6d] { text-align: right; }

.node-label[b-i7hasljj6d] {
    font-size: 0.5rem;
    letter-spacing: 0.6px;
    font-weight: 700;
}

.rail-node.buy .node-label[b-i7hasljj6d] { color: #f87171; }
.rail-node.sell .node-label[b-i7hasljj6d] { color: #4ade80; }

.node-day[b-i7hasljj6d] {
    font-size: 0.78rem;
    font-weight: 700;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-primary, #e0e0e0);
    white-space: nowrap;
}

/* Connecting track with end dots */
.rail-track[b-i7hasljj6d] {
    flex: 1;
    height: 2px;
    position: relative;
    border-radius: 2px;
    background: linear-gradient(90deg, #ef4444, var(--accent));
    opacity: 0.65;
}

.rail-track[b-i7hasljj6d]::before,
.rail-track[b-i7hasljj6d]::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    transform: translateY(-50%);
}

.rail-track[b-i7hasljj6d]::before { left: -1px; background: #ef4444; }
.rail-track[b-i7hasljj6d]::after { right: -1px; background: var(--accent); }

/* Footer: subtle hold chip */
.plan-foot[b-i7hasljj6d] {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.58rem;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-secondary, #adb5bd);
    background: rgba(0, 0, 0, 0.25);
    padding: 0.15rem 0.45rem;
    border-radius: 20px;
}

.plan-foot i[b-i7hasljj6d] { font-size: 0.6rem; opacity: 0.85; }

/* No-entry state */
.plan-no-entry[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.62rem;
    line-height: 1.3;
    color: #f87171;
}

.plan-no-entry i[b-i7hasljj6d] { font-size: 0.85rem; flex-shrink: 0; }

/* Set-Alert CTA (paid) */
.alert-cta[b-i7hasljj6d] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.alert-btn[b-i7hasljj6d] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    width: 100%;
    padding: 0.45rem 0.6rem;
    border-radius: 9px;
    border: 1px solid rgba(124, 77, 255, 0.4);
    background: rgba(124, 77, 255, 0.14);
    color: #c4b5fd;
    font-size: 0.7rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.1s ease;
}

.alert-btn:hover:not(:disabled)[b-i7hasljj6d] {
    background: rgba(124, 77, 255, 0.24);
    border-color: rgba(124, 77, 255, 0.6);
}

.alert-btn:active:not(:disabled)[b-i7hasljj6d] { transform: scale(0.98); }
.alert-btn:disabled[b-i7hasljj6d] { opacity: 0.6; cursor: default; }
.alert-btn i[b-i7hasljj6d] { font-size: 0.8rem; }

.alert-btn.is-set[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.14);
    border-color: rgba(34, 197, 94, 0.45);
    color: #4ade80;
}

.alert-btn.is-set:hover:not(:disabled)[b-i7hasljj6d] {
    background: rgba(34, 197, 94, 0.22);
}

.alert-cancel[b-i7hasljj6d] {
    font-size: 0.55rem;
    font-weight: 500;
    color: var(--text-muted, #6c757d);
    text-decoration: underline;
    margin-left: 0.15rem;
}

.alert-btn.locked[b-i7hasljj6d] {
    background: rgba(255, 255, 255, 0.04);
    border-color: rgba(255, 255, 255, 0.12);
    color: var(--text-secondary, #adb5bd);
}

.pro-tag[b-i7hasljj6d] {
    font-size: 0.5rem;
    font-weight: 800;
    letter-spacing: 0.5px;
    padding: 0.05rem 0.3rem;
    border-radius: 4px;
    background: linear-gradient(135deg, #f59e0b, #f97316);
    color: #1a1206;
}

.alert-msg[b-i7hasljj6d] {
    font-size: 0.58rem;
    line-height: 1.3;
    color: var(--text-secondary, #adb5bd);
    text-align: center;
}
/* /Components/Earnings/EarningsEventStudyChart.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════
   EARNINGS EVENT STUDY — scoped to the chart (moved here from earnings.css, which
   is /earnings-only and mirrored by earnings-shared.css under a verbatim-copy test).
   The legacy rules are unchanged; the `.research` block below is the dossier chart.
   SVG <text> is injected as markup (Razor reserves <text>), so its classes need ::deep.
   ═══════════════════════════════════════════════════════════════════════════ */
.earnings-event-study[b-t5b66r884v] {
    width: 100%;
    height: 100%;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    animation: es-fade-b-t5b66r884v 0.35s ease both;
}

@keyframes es-fade-b-t5b66r884v { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* Loading / empty */
.es-loading[b-t5b66r884v], .es-empty[b-t5b66r884v] {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    min-height: 320px; gap: 0.75rem; color: #8b8b9e; text-align: center;
}
.es-empty i[b-t5b66r884v] { font-size: 2.4rem; opacity: 0.5; }
.es-empty p[b-t5b66r884v] { margin: 0; font-weight: 600; color: #c7c7d4; }
.es-empty small[b-t5b66r884v] { opacity: 0.7; max-width: 280px; }
.es-spinner[b-t5b66r884v] {
    width: 28px; height: 28px; border: 3px solid rgba(124,77,255,0.25);
    border-top-color: #a78bfa; border-radius: 50%; animation: es-spin-b-t5b66r884v 0.8s linear infinite;
}
@keyframes es-spin-b-t5b66r884v { to { transform: rotate(360deg); } }

/* Layout */
.es-grid[b-t5b66r884v] { display: grid; grid-template-columns: 1fr 220px; gap: 0.85rem; flex: 1; min-height: 340px; }
.es-chart-col[b-t5b66r884v] { display: flex; flex-direction: column; min-width: 0; }

/* Top bar */
.es-top-bar[b-t5b66r884v] { display: flex; justify-content: space-between; align-items: center; gap: 0.5rem; margin-bottom: 0.5rem; flex-wrap: wrap; }
.es-legend[b-t5b66r884v] { display: flex; gap: 0.85rem; flex-wrap: wrap; align-items: center; }
.es-leg[b-t5b66r884v] { display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.66rem; color: #9aa0ae; white-space: nowrap; }
.es-sw[b-t5b66r884v] { display: inline-block; border-radius: 2px; }
.es-sw.line[b-t5b66r884v] { width: 18px; height: 3px; }
.es-sw.median[b-t5b66r884v] { width: 18px; height: 3px; background: #22c55e; box-shadow: 0 0 5px rgba(34,197,94,0.6); }
.es-sw.band[b-t5b66r884v] { width: 18px; height: 11px; background: linear-gradient(180deg, rgba(99,102,241,0.4), rgba(99,102,241,0.12)); }
.es-sw.indiv[b-t5b66r884v] { width: 18px; height: 2px; background: rgba(124,77,255,0.4); }

.es-pills[b-t5b66r884v] { display: inline-flex; gap: 3px; background: rgba(0,0,0,0.28); padding: 3px; border-radius: 10px; }
.es-pill[b-t5b66r884v] {
    background: transparent; border: none; color: #8b8b9e;
    padding: 0.28rem 0.6rem; font-size: 0.62rem; font-weight: 600; border-radius: 7px;
    cursor: pointer; transition: all 0.18s ease; display: inline-flex; align-items: center; gap: 0.25rem;
}
.es-pill:hover[b-t5b66r884v] { color: #e0e0e6; background: rgba(255,255,255,0.06); }
.es-pill.active[b-t5b66r884v] { background: rgba(124,77,255,0.28); color: #c4b5fd; box-shadow: 0 0 0 1px rgba(124,77,255,0.45), 0 0 10px rgba(124,77,255,0.25); }
.es-pill i[b-t5b66r884v] { font-size: 0.58rem; }
.es-pill:focus-visible[b-t5b66r884v] { outline: 2px solid rgba(19,223,255,0.75); outline-offset: 1px; }

/* SVG */
.es-svg-wrap[b-t5b66r884v] {
    width: 100%; flex: 1; min-height: 290px;
    background: radial-gradient(120% 120% at 50% 0%, rgba(124,77,255,0.06), rgba(0,0,0,0.28));
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 12px; overflow: hidden;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}
.es-svg[b-t5b66r884v] { width: 100%; height: 100%; display: block; }

/* Animated average line draw-in (alternating class re-triggers per ticker) */
.es-avg.anim-a[b-t5b66r884v], .es-avg.anim-b[b-t5b66r884v] {
    stroke-dasharray: 1600; stroke-dashoffset: 1600;
    animation: es-draw-b-t5b66r884v 1.05s cubic-bezier(0.22, 1, 0.36, 1) forwards;
    filter: drop-shadow(0 0 5px currentColor);
}
@keyframes es-draw-b-t5b66r884v { to { stroke-dashoffset: 0; } }

/* SVG text sizes live here (not inline) so phones can bump them below */
.es-svg[b-t5b66r884v]  .es-t-axis { font-size: 10px; }
.es-svg[b-t5b66r884v]  .es-t-ytick { font-size: 9px; }
.es-svg[b-t5b66r884v]  .es-t-tag { font-size: 9.5px; }
.es-svg[b-t5b66r884v]  .es-t-marker { font-size: 8.5px; }
.es-svg[b-t5b66r884v]  .es-t-hold { font-size: 8.5px; }
.es-svg[b-t5b66r884v]  .es-t-tip-h { font-size: 10px; }
.es-svg[b-t5b66r884v]  .es-t-tip { font-size: 9px; }
.es-svg[b-t5b66r884v]  .es-t-tip-v { font-size: 9.5px; }
.es-svg[b-t5b66r884v]  .es-t-cap { font-size: 9px; }
/* Labels that sit on the plot get a surface-coloured halo so a curve passing underneath can't hide them */
.es-svg[b-t5b66r884v]  .es-t-halo { paint-order: stroke; stroke: #0a0e14; stroke-width: 3px; stroke-linejoin: round; }

/* Info chips under chart */
.es-info[b-t5b66r884v] { display: flex; gap: 0.45rem; padding: 0.5rem 0 0.1rem; }
.es-chip-sm[b-t5b66r884v] {
    display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.62rem; color: #9aa0ae;
    background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.06);
    padding: 0.22rem 0.55rem; border-radius: 20px;
}
.es-chip-sm strong[b-t5b66r884v] { color: #c4b5fd; font-size: 0.72rem; }
.es-chip-sm.up strong[b-t5b66r884v] { color: #22c55e; }

/* ===== Right stats column ===== */
.es-stats-col[b-t5b66r884v] { display: flex; flex-direction: column; gap: 0.55rem; min-width: 210px; }

/* Action hero card */
.es-action-card[b-t5b66r884v] {
    border-radius: 14px; padding: 0.8rem; border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.03); position: relative; overflow: hidden;
    animation: es-fade-b-t5b66r884v 0.4s ease 0.05s both;
}
.es-action-card.action-strong-buy[b-t5b66r884v] { background: linear-gradient(135deg, rgba(34,197,94,0.24), rgba(34,197,94,0.04)); border-color: rgba(34,197,94,0.5); box-shadow: 0 0 24px rgba(34,197,94,0.14); }
.es-action-card.action-buy[b-t5b66r884v] { background: linear-gradient(135deg, rgba(34,197,94,0.14), rgba(34,197,94,0.02)); border-color: rgba(34,197,94,0.32); }
.es-action-card.action-short[b-t5b66r884v] { background: linear-gradient(135deg, rgba(239,68,68,0.14), rgba(239,68,68,0.02)); border-color: rgba(239,68,68,0.32); }
.es-action-card.action-strong-short[b-t5b66r884v] { background: linear-gradient(135deg, rgba(239,68,68,0.24), rgba(239,68,68,0.04)); border-color: rgba(239,68,68,0.5); box-shadow: 0 0 24px rgba(239,68,68,0.14); }
.es-action-card.action-none[b-t5b66r884v] { background: rgba(120,120,140,0.08); border-color: rgba(255,255,255,0.1); }

.es-action-top[b-t5b66r884v] { display: flex; align-items: center; gap: 0.55rem; }
.es-action-icon[b-t5b66r884v] { flex-shrink: 0; display: flex; }
.es-action-text[b-t5b66r884v] { display: flex; flex-direction: column; line-height: 1.15; min-width: 0; }
.es-action-label[b-t5b66r884v] { font-size: 1rem; font-weight: 800; letter-spacing: 0.3px; color: #fff; text-transform: uppercase; }
.es-action-sub[b-t5b66r884v] { font-size: 0.62rem; color: #adb5bd; display: inline-flex; align-items: center; gap: 0.25rem; }

.es-conv[b-t5b66r884v] { margin-top: 0.6rem; }
.es-conv-head[b-t5b66r884v] { display: flex; justify-content: space-between; align-items: baseline; font-size: 0.58rem; color: #9aa0ae; text-transform: uppercase; letter-spacing: 0.4px; }
.es-conv-num[b-t5b66r884v] { font-size: 0.95rem; font-weight: 800; color: #fff; font-family: monospace; }
.es-conv-num small[b-t5b66r884v] { font-size: 0.55rem; color: #8b8b9e; font-weight: 500; }
.es-conv-track[b-t5b66r884v] { margin-top: 0.25rem; height: 7px; border-radius: 4px; background: rgba(0,0,0,0.35); overflow: hidden; }
.es-conv-fill[b-t5b66r884v] { height: 100%; border-radius: 4px; background: linear-gradient(90deg, #7c4dff, #22c55e); box-shadow: 0 0 8px rgba(124,77,255,0.5); transition: width 0.7s cubic-bezier(0.22,1,0.36,1); }

/* When card */
.es-when-card[b-t5b66r884v] { background: rgba(0,0,0,0.22); border: 1px solid rgba(255,255,255,0.07); border-radius: 12px; padding: 0.6rem 0.7rem; animation: es-fade-b-t5b66r884v 0.4s ease 0.1s both; }
.es-when-head[b-t5b66r884v] { font-size: 0.58rem; text-transform: uppercase; letter-spacing: 0.4px; color: #9aa0ae; display: flex; align-items: center; gap: 0.3rem; margin-bottom: 0.3rem; }
.es-when-detail[b-t5b66r884v] { font-size: 0.74rem; font-weight: 600; color: #e0e0e6; }
.es-when-foot[b-t5b66r884v] { display: flex; justify-content: space-between; align-items: center; margin-top: 0.4rem; font-size: 0.58rem; color: #9aa0ae; }
.es-rr strong[b-t5b66r884v] { color: #22c55e; font-family: monospace; font-size: 0.74rem; }
.es-consistency[b-t5b66r884v] { color: #818cf8; }

/* Three windows */
.es-windows[b-t5b66r884v] { display: flex; flex-direction: column; gap: 0.3rem; animation: es-fade-b-t5b66r884v 0.4s ease 0.15s both; }
.es-win[b-t5b66r884v] { display: flex; align-items: center; gap: 0.45rem; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.05); padding: 0.34rem 0.55rem; border-radius: 9px; }
.es-win.accent[b-t5b66r884v] { background: rgba(124,77,255,0.1); border-color: rgba(124,77,255,0.28); }
.es-win-badge[b-t5b66r884v] { width: 16px; height: 16px; min-width: 16px; border-radius: 50%; background: rgba(124,77,255,0.3); color: #c4b5fd; font-size: 0.54rem; font-weight: 800; display: flex; align-items: center; justify-content: center; }
.es-win-label[b-t5b66r884v] { font-size: 0.6rem; color: #9aa0ae; text-transform: uppercase; letter-spacing: 0.3px; }
.es-win-val[b-t5b66r884v] { font-size: 0.78rem; font-weight: 700; font-family: monospace; margin-left: auto; }
.es-win-val.pos[b-t5b66r884v] { color: #22c55e; }
.es-win-val.neg[b-t5b66r884v] { color: #ef4444; }

.es-disclaimer[b-t5b66r884v] { font-size: 0.54rem; color: #6c757d; line-height: 1.35; display: flex; gap: 0.3rem; margin-top: auto; padding-top: 0.2rem; }
.es-disclaimer i[b-t5b66r884v] { flex-shrink: 0; margin-top: 1px; }

/* Responsive: stack on narrow drawers */
@media (max-width: 560px) {
    .es-grid[b-t5b66r884v] { grid-template-columns: 1fr; }
    .es-stats-col[b-t5b66r884v] { order: -1; min-width: 0; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Research chart (Events supplied): taller box with the x-axis band and the
   reaction distribution strip, so the SVG sizes itself and never scrolls.
   ═══════════════════════════════════════════════════════════════════════════ */
.earnings-event-study.research[b-t5b66r884v] { height: auto; min-height: 0; }
.research .es-grid[b-t5b66r884v] { min-height: 0; }
.research .es-svg-wrap[b-t5b66r884v] { flex: 0 0 auto; min-height: 0; }
.research .es-svg[b-t5b66r884v] { height: auto; aspect-ratio: 800 / 390; }
.research .es-info[b-t5b66r884v] { flex-wrap: wrap; }

/* Legend swatches for the new marks: shape is the second channel for beat/miss */
.es-sw.beat[b-t5b66r884v] { width: 9px; height: 9px; border-radius: 50%; background: #10eb6b; }
.es-sw.miss[b-t5b66r884v] { width: 7px; height: 7px; border: 1.6px solid #ff5757; border-radius: 1px; background: transparent; transform: rotate(45deg); margin: 0 1px; }
.es-sw.live[b-t5b66r884v] { width: 18px; height: 0; border-top: 2px dashed #fff; border-radius: 0; }
.es-sw.implied[b-t5b66r884v] { width: 14px; height: 11px; background: rgba(19,223,255,0.12); border: 1px solid rgba(19,223,255,0.6); }

/* Session chip in the top bar: which bar the reaction lands on */
.es-session-chip[b-t5b66r884v] {
    display: inline-flex; align-items: center; gap: 0.3rem; font-size: 0.62rem; color: #94a3b8;
    background: rgba(19,223,255,0.06); border: 1px solid rgba(19,223,255,0.22);
    padding: 0.2rem 0.55rem; border-radius: 20px; white-space: nowrap;
}
.es-session-chip i[b-t5b66r884v] { color: #13dfff; font-size: 0.6rem; }

.es-chip-sm.implied[b-t5b66r884v] { color: #94a3b8; border-color: rgba(19,223,255,0.25); }
.es-chip-sm.implied i[b-t5b66r884v] { color: #13dfff; }

/* Live marker: today's bar pulses (CSS only; off under reduced motion) */
.es-live-halo[b-t5b66r884v] { transform-box: fill-box; transform-origin: center; animation: es-pulse-b-t5b66r884v 1.6s ease-out infinite; }
@keyframes es-pulse-b-t5b66r884v { 0% { transform: scale(0.6); opacity: 0.9; } 100% { transform: scale(2.6); opacity: 0; } }

/* Verdict card hues (research): icon + label always carry the verdict, colour is the wash */
.es-action-card.verdict-bull[b-t5b66r884v] { background: linear-gradient(135deg, rgba(16,235,107,0.18), rgba(16,235,107,0.03)); border-color: rgba(16,235,107,0.4); box-shadow: 0 0 24px rgba(16,235,107,0.1); }
.es-action-card.verdict-bear[b-t5b66r884v] { background: linear-gradient(135deg, rgba(255,87,87,0.18), rgba(255,87,87,0.03)); border-color: rgba(255,87,87,0.4); box-shadow: 0 0 24px rgba(255,87,87,0.1); }
.es-action-card.verdict-vol[b-t5b66r884v] { background: linear-gradient(135deg, rgba(167,139,250,0.18), rgba(167,139,250,0.03)); border-color: rgba(167,139,250,0.4); }
.es-action-card.verdict-mixed[b-t5b66r884v] { background: linear-gradient(135deg, rgba(255,181,71,0.16), rgba(255,181,71,0.03)); border-color: rgba(255,181,71,0.38); }
.es-action-card.verdict-none[b-t5b66r884v] { background: rgba(100,116,139,0.1); border-color: rgba(255,255,255,0.1); }
.es-verdict-ico[b-t5b66r884v] { font-size: 1.7rem; line-height: 1; width: 32px; text-align: center; color: #94a3b8; }
.es-verdict-ico.verdict-vol[b-t5b66r884v] { color: #a78bfa; }
.es-verdict-ico.verdict-mixed[b-t5b66r884v] { color: #ffb547; }
.es-verdict-ico.verdict-none[b-t5b66r884v] { color: #64748b; }
.es-no-entry[b-t5b66r884v] { white-space: normal; line-height: 1.3; color: #c7cdd6; }
.es-exp-tag[b-t5b66r884v] {
    display: inline-flex; align-items: center; gap: 0.25rem; margin-top: 0.4rem;
    font-size: 0.56rem; letter-spacing: 0.3px; text-transform: uppercase; color: #94a3b8;
    background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 20px; padding: 0.12rem 0.45rem;
}
.es-exp-tag i[b-t5b66r884v] { font-size: 0.55rem; }

/* Research: the right column stacks under the chart on narrow screens */
@media (max-width: 700px) {
    .research .es-grid[b-t5b66r884v] { grid-template-columns: 1fr; }
    .research .es-stats-col[b-t5b66r884v] { order: 1; min-width: 0; }
}

/* The dossier is 760px wide on a wide screen: stacking must follow the container, not the viewport,
   or the 800-unit plot is squeezed into ~470px and its labels shrink below legibility. */
.research.earnings-event-study[b-t5b66r884v] { container-type: inline-size; }
@container (max-width: 940px) {
    .research .es-grid[b-t5b66r884v] { grid-template-columns: 1fr; }
    .research .es-stats-col[b-t5b66r884v] { order: 1; min-width: 0; }
}

/* Phone: the SVG scales to ~0.45, so text and the label groups grow to stay legible */
@media (max-width: 600px) {
    .es-svg[b-t5b66r884v]  .es-t-axis { font-size: 17px; }
    .es-svg[b-t5b66r884v]  .es-t-ytick { font-size: 15px; }
    .es-svg[b-t5b66r884v]  .es-t-tag { font-size: 12px; }
    .es-svg[b-t5b66r884v]  .es-t-hold { font-size: 13px; }
    .es-svg[b-t5b66r884v]  .es-t-cap { font-size: 14px; }
    .es-tip[b-t5b66r884v], .es-mk[b-t5b66r884v] { transform: scale(1.5); transform-box: fill-box; transform-origin: 50% 0; }
    .es-mk-up[b-t5b66r884v] { transform-origin: 50% 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .earnings-event-study[b-t5b66r884v], .es-action-card[b-t5b66r884v], .es-when-card[b-t5b66r884v], .es-windows[b-t5b66r884v] { animation: none; }
    .es-avg.anim-a[b-t5b66r884v], .es-avg.anim-b[b-t5b66r884v] { animation: none; stroke-dashoffset: 0; }
    .es-live-halo[b-t5b66r884v] { animation: none; opacity: 0.6; }
}
/* /Components/Earnings/Legacy/EarningsLegacyView.razor.rz.scp.css */
/* Free-account preview: the calendar is open, the analysis columns and dossier are locked */
.pro-preview-lock[b-yydga8fsjm] { margin: 0 16px; }
.pro-chip[b-yydga8fsjm] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 7px;
    border-radius: 999px;
    background: rgba(139, 92, 246, 0.22);
    color: #c4b5fd;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.col-pro[b-yydga8fsjm] { color: var(--text-secondary, #8892b0); font-weight: 500; }
.pro-locked-cell[b-yydga8fsjm] { cursor: pointer; color: #a78bfa; font-size: 12px; text-align: center; }
.pro-locked-cell:hover[b-yydga8fsjm] { color: #c4b5fd; }
.pro-upgrade-modal[b-yydga8fsjm] {
    width: min(460px, calc(100vw - 32px));
    background: var(--bg-card, #111a2e);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    padding: 6px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}
/* /Components/Earnings/Research/ArcGauge.razor.rz.scp.css */
.er-arc[b-y993zklln3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: var(--size, 120px);
    text-align: center;
}

.er-arc svg[b-y993zklln3] { display: block; overflow: visible; }

.er-arc .track[b-y993zklln3] {
    fill: none;
    stroke: rgba(255, 255, 255, 0.08);
    stroke-width: 8;
    stroke-linecap: round;
}

.er-arc .value[b-y993zklln3] {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
    stroke-dasharray: var(--len);
    stroke-dashoffset: var(--off);
    animation: er-arc-draw-b-y993zklln3 600ms var(--ease-out, ease-out) both;
}

@keyframes er-arc-draw-b-y993zklln3 {
    from { stroke-dashoffset: var(--len); }
    to { stroke-dashoffset: var(--off); }
}

.er-arc .needle[b-y993zklln3] {
    stroke: #f0f4f8;
    stroke-width: 1.5;
    stroke-linecap: round;
    transform-origin: 60px 60px;
    animation: er-arc-fade-b-y993zklln3 600ms ease-out both;
}

.er-arc .hub[b-y993zklln3] { fill: #f0f4f8; }
.er-arc .mid[b-y993zklln3] { stroke: rgba(255, 255, 255, 0.3); stroke-width: 1; }

@keyframes er-arc-fade-b-y993zklln3 {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Stat-tile value: proportional digits, not tabular — this is not a column */
.er-arc-value[b-y993zklln3] {
    margin-top: -26px;
    font-family: var(--font-display, inherit);
    font-size: 26px;
    font-weight: 600;
    line-height: 1;
    color: var(--text-primary, #f0f4f8);
}

.er-arc.empty .er-arc-value[b-y993zklln3] { color: var(--text-dim, #475569); }

.er-arc-label[b-y993zklln3] {
    margin-top: 8px;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
}

.er-arc-sub[b-y993zklln3] {
    margin-top: 3px;
    font-size: 10.5px;
    color: var(--text-muted, #64748b);
}

@media (prefers-reduced-motion: reduce) {
    .er-arc .value[b-y993zklln3],
    .er-arc .needle[b-y993zklln3] { animation: none; }
}
/* /Components/Earnings/Research/ChangeChip.razor.rz.scp.css */
/* The change chip: ink text, the Δ mark carries the hue (cyan = moved, amber = the verdict flipped) */
.er-chg[b-rlayq0iwo3] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 18px;
    padding: 0 7px 0 6px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid color-mix(in srgb, var(--er-implied, #13dfff) 35%, transparent);
    background: color-mix(in srgb, var(--er-implied, #13dfff) 8%, transparent);
    color: var(--text-secondary, #94a3b8);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.04em;
    line-height: 1;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
    cursor: help;
}

.er-chg-ic[b-rlayq0iwo3] {
    color: var(--er-implied, #13dfff);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1;
}

.er-chg.flip[b-rlayq0iwo3] {
    border-color: color-mix(in srgb, var(--er-mixed, #ffb547) 50%, transparent);
    background: color-mix(in srgb, var(--er-mixed, #ffb547) 10%, transparent);
    color: var(--text-primary, #f0f4f8);
}

.er-chg.flip .er-chg-ic[b-rlayq0iwo3] { color: var(--er-mixed, #ffb547); }

.er-chg.compact[b-rlayq0iwo3] { height: 16px; padding: 0 5px 0 4px; gap: 3px; }
/* /Components/Earnings/Research/ColumnSettingsMenu.razor.rz.scp.css */
.er-colmenu[b-i9ucmu5ylq] {
    width: 290px;
    padding: 12px 14px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-panel, #1e2736);
    box-shadow: var(--shadow-lg, 0 8px 24px rgba(0, 0, 0, 0.5));
    color: var(--text-primary, #f0f4f8);
    font-size: 13px;
    outline: none;
}

.er-colmenu-head[b-i9ucmu5ylq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.er-colmenu-title[b-i9ucmu5ylq] {
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
}

.er-colmenu-presets[b-i9ucmu5ylq] {
    display: inline-flex;
    padding: 2px;
    border-radius: var(--r-pill, 999px);
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
}

.er-colmenu-presets button[b-i9ucmu5ylq] {
    height: 22px;
    padding: 0 10px;
    border: 0;
    border-radius: var(--r-pill, 999px);
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
}

.er-colmenu-presets button.active[b-i9ucmu5ylq] {
    background: var(--bg-active-strong, rgba(19, 223, 255, 0.12));
    color: var(--text-primary, #f0f4f8);
}

.er-colmenu-list[b-i9ucmu5ylq] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 2px;
}

.er-colmenu-list li[b-i9ucmu5ylq] { display: flex; align-items: center; gap: 4px; }

.er-colmenu-list label[b-i9ucmu5ylq] {
    display: flex;
    flex: 1;
    align-items: center;
    gap: 8px;
    min-height: 30px;
    padding: 0 6px;
    border-radius: var(--r-sm, 4px);
    cursor: pointer;
}

.er-colmenu-list label:hover[b-i9ucmu5ylq] { background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)); }

.er-colmenu-list input[b-i9ucmu5ylq] { accent-color: var(--primary, #13dfff); }

/* Pinned rows: the checkbox stays on, dimmed, with a lock where the arrows would be */
.er-colmenu-list li.pinned label[b-i9ucmu5ylq] { cursor: default; color: var(--text-secondary, #94a3b8); }
.er-colmenu-list li.pinned label:hover[b-i9ucmu5ylq] { background: transparent; }
.er-colmenu-list li.pinned input[b-i9ucmu5ylq] { opacity: 0.45; }

.er-colmenu-lock[b-i9ucmu5ylq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 22px;
    color: var(--text-dim, #475569);
}

/* The arrows are the touch path to reorder; the desktop drags the headers */
.er-colmenu-move[b-i9ucmu5ylq] { display: inline-flex; gap: 2px; }

.er-colmenu-move button[b-i9ucmu5ylq] {
    width: 22px;
    height: 22px;
    padding: 0;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    border-radius: var(--r-sm, 4px);
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    color: var(--text-secondary, #94a3b8);
    font-size: 8.5px;
    line-height: 1;
    cursor: pointer;
}

.er-colmenu-move button:hover:not(:disabled)[b-i9ucmu5ylq] { color: var(--text-primary, #f0f4f8); background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); }
.er-colmenu-move button:disabled[b-i9ucmu5ylq] { opacity: 0.3; cursor: default; }

.er-colmenu-pro[b-i9ucmu5ylq] {
    margin-left: auto;
    padding: 1px 6px;
    border-radius: var(--r-pill, 999px);
    background: var(--accent-bg, rgba(167, 139, 250, 0.12));
    color: var(--accent-bright, #c4b5fd);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.er-colmenu-foot[b-i9ucmu5ylq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    font-size: 11px;
    color: var(--text-muted, #64748b);
}

.er-colmenu-done[b-i9ucmu5ylq] {
    height: 26px;
    padding: 0 12px;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    border-radius: var(--r-sm, 4px);
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
/* /Components/Earnings/Research/DailyPickCard.razor.rz.scp.css */
/* The pick card: a glass panel with the verdict hue on its left edge (same ribbon as the rows and the
   board cards). Dense, numbers beside every mark, motion CSS-only and off under reduced motion. */
.er-pick[b-1kgsz7rdcg] {
    --v: var(--er-neutral, #64748b);
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px 14px 18px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: linear-gradient(135deg, color-mix(in srgb, var(--v) 7%, var(--bg-card, #141a24)) 0%, var(--bg-card, #141a24) 55%);
    box-shadow: inset 3px 0 0 var(--v), var(--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.45));
    animation: er-pick-in-b-1kgsz7rdcg 420ms var(--ease-out, ease-out) both;
}

.er-pick.v-bull[b-1kgsz7rdcg] { --v: var(--er-bull, #10eb6b); }
.er-pick.v-bear[b-1kgsz7rdcg] { --v: var(--er-bear, #ff5757); }
.er-pick.v-vol[b-1kgsz7rdcg] { --v: var(--er-vol, #a78bfa); }
.er-pick.none[b-1kgsz7rdcg] { background: var(--bg-card, #141a24); }

@keyframes er-pick-in-b-1kgsz7rdcg { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

/* ── Head ───────────────────────────────────────────────────────────────── */
.er-pick-head[b-1kgsz7rdcg] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    flex-wrap: wrap;
}

.er-pick-kicker[b-1kgsz7rdcg] {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--v);
}

.er-pick.none .er-pick-kicker[b-1kgsz7rdcg] { color: var(--text-secondary, #94a3b8); }
.er-pick-for[b-1kgsz7rdcg] { color: var(--text-secondary, #94a3b8); font-weight: 600; letter-spacing: 0.06em; }
.er-pick-meta[b-1kgsz7rdcg] { font-size: 11px; color: var(--text-muted, #64748b); cursor: help; }
.er-pick-track[b-1kgsz7rdcg] {
    margin-left: auto;
    font-size: 11.5px;
    font-weight: 600;
    color: var(--text-secondary, #94a3b8);
    text-decoration: none;
    white-space: nowrap;
}
.er-pick-track:hover[b-1kgsz7rdcg] { color: var(--primary, #13dfff); }

/* ── Body grid: identity | verdict | outputs, then text + why + actions ───── */
.er-pick-body[b-1kgsz7rdcg] {
    display: grid;
    grid-template-columns: minmax(240px, 1.1fr) minmax(200px, 0.9fr) minmax(320px, 1.4fr);
    grid-template-areas:
        "id verdict outputs"
        "result result outputs"
        "text text why"
        "actions actions why";
    gap: 10px 20px;
    align-items: start;
}

.er-pick-id[b-1kgsz7rdcg] { grid-area: id; display: flex; align-items: flex-start; gap: 12px; }
.er-pick-verdict[b-1kgsz7rdcg] { grid-area: verdict; }
.er-pick-outputs[b-1kgsz7rdcg] { grid-area: outputs; }
.er-pick-result[b-1kgsz7rdcg] { grid-area: result; }
.er-pick-text[b-1kgsz7rdcg] { grid-area: text; }
.er-pick-why[b-1kgsz7rdcg] { grid-area: why; }
.er-pick-actions[b-1kgsz7rdcg] { grid-area: actions; }

.er-pick-logo[b-1kgsz7rdcg], .er-pick-logo-fb[b-1kgsz7rdcg] {
    flex: 0 0 36px;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #fff;
    padding: 2px;
    object-fit: contain;
}

.er-pick-logo-fb[b-1kgsz7rdcg] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 14px;
    font-weight: 700;
}

.er-pick-name[b-1kgsz7rdcg] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.er-pick-sym-row[b-1kgsz7rdcg] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

.er-pick-sym[b-1kgsz7rdcg] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-family: var(--font-display, inherit);
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1;
    cursor: pointer;
}
.er-pick-sym:hover:not(:disabled)[b-1kgsz7rdcg] { color: var(--primary, #13dfff); }
.er-pick-sym:disabled[b-1kgsz7rdcg] { cursor: default; }

.er-pick-tm[b-1kgsz7rdcg], .er-pick-liq[b-1kgsz7rdcg] {
    padding: 2px 6px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: help;
}

.er-pick-co[b-1kgsz7rdcg] {
    font-size: 12.5px;
    color: var(--text-secondary, #94a3b8);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 260px;
}

.er-pick-when[b-1kgsz7rdcg] { margin-left: auto; display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.er-pick-est[b-1kgsz7rdcg] { font-size: 11.5px; color: var(--text-muted, #64748b); font-variant-numeric: tabular-nums; }
.er-pick-est b[b-1kgsz7rdcg] { color: var(--text-secondary, #94a3b8); font-weight: 600; }
.er-pick-reported[b-1kgsz7rdcg] { font-size: 11.5px; font-weight: 600; color: var(--text-secondary, #94a3b8); letter-spacing: 0.04em; }

/* ── Verdict ────────────────────────────────────────────────────────────── */
.er-pick-verdict[b-1kgsz7rdcg] { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
.er-pick-score[b-1kgsz7rdcg] { font-size: 11.5px; color: var(--text-muted, #64748b); cursor: help; font-variant-numeric: tabular-nums; }
.er-pick-score b[b-1kgsz7rdcg] { color: var(--text-secondary, #94a3b8); font-weight: 600; }

/* ── Outcome (after the print) ──────────────────────────────────────────── */
.er-pick-result[b-1kgsz7rdcg] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 8px 12px;
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
}

.er-pick-ret[b-1kgsz7rdcg] { display: flex; align-items: baseline; gap: 8px; }
.er-pick-ret-val[b-1kgsz7rdcg] {
    font-family: var(--font-display, inherit);
    font-size: 24px;
    font-weight: 600;
    line-height: 1;
    color: var(--text-primary, #f0f4f8);
}
.er-pick-ret.none .er-pick-ret-val[b-1kgsz7rdcg] { color: var(--text-dim, #475569); }
.er-pick-ret-lbl[b-1kgsz7rdcg] { font-size: 10.5px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted, #64748b); }
.er-pick-ret.up .er-pick-ret-lbl[b-1kgsz7rdcg]::before { content: "▲ "; color: var(--er-bull, #10eb6b); }
.er-pick-ret.down .er-pick-ret-lbl[b-1kgsz7rdcg]::before { content: "▼ "; color: var(--er-bear, #ff5757); }

.er-pick-outcome[b-1kgsz7rdcg] {
    padding: 3px 9px;
    border-radius: var(--r-pill, 999px);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    color: var(--text-secondary, #94a3b8);
    cursor: help;
}
.er-pick-outcome.o-win[b-1kgsz7rdcg] { color: var(--er-bull, #10eb6b); border-color: color-mix(in srgb, var(--er-bull, #10eb6b) 40%, transparent); }
.er-pick-outcome.o-loss[b-1kgsz7rdcg] { color: var(--er-bear, #ff5757); border-color: color-mix(in srgb, var(--er-bear, #ff5757) 40%, transparent); }

.er-pick-eps[b-1kgsz7rdcg] { font-size: 12px; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.er-pick-eps .vs[b-1kgsz7rdcg] { color: var(--text-muted, #64748b); }
.er-pick-eps .ok[b-1kgsz7rdcg] { color: var(--er-bull, #10eb6b); font-weight: 600; }
.er-pick-eps .bad[b-1kgsz7rdcg] { color: var(--er-bear, #ff5757); font-weight: 600; }

/* ── The four outputs in miniature ──────────────────────────────────────── */
.er-pick-outputs[b-1kgsz7rdcg] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
}

.er-pick-tile[b-1kgsz7rdcg] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 8px 10px;
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    cursor: help;
    min-width: 0;
}

.er-pick-tile-k[b-1kgsz7rdcg] {
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.er-pick-tile-v[b-1kgsz7rdcg] {
    font-family: var(--font-display, inherit);
    font-size: 20px;
    font-weight: 600;
    line-height: 1;
    color: var(--text-primary, #f0f4f8);
}

.er-pick-tile-v.small[b-1kgsz7rdcg] { font-size: 13px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.er-pick-tile-v .vs[b-1kgsz7rdcg] { color: var(--text-muted, #64748b); font-weight: 500; }
.er-pick-tile-v .impl[b-1kgsz7rdcg] { color: var(--er-implied, #13dfff); }

.er-pick-ticksvg[b-1kgsz7rdcg] { display: block; overflow: visible; margin-top: 2px; }
.er-pick-ticksvg .track[b-1kgsz7rdcg] { stroke: rgba(255, 255, 255, 0.1); stroke-width: 2; stroke-linecap: round; }
.er-pick-ticksvg .tick[b-1kgsz7rdcg] { stroke-width: 2; stroke-linecap: round; }
.er-pick-ticksvg .tick.implied[b-1kgsz7rdcg] { stroke: var(--er-implied, #13dfff); }
.er-pick-ticksvg .tick.projected[b-1kgsz7rdcg] { stroke: #f0f4f8; }

/* ── Write-up ───────────────────────────────────────────────────────────── */
.er-pick-text[b-1kgsz7rdcg] { display: flex; flex-direction: column; gap: 6px; }
.er-pick-note[b-1kgsz7rdcg] { margin: 0; font-size: 13px; line-height: 1.5; color: var(--text-primary, #f0f4f8); }
.er-pick-note.none[b-1kgsz7rdcg] { color: var(--text-muted, #64748b); font-style: italic; }
.er-pick-note-meta[b-1kgsz7rdcg] { font-size: 10.5px; color: var(--text-dim, #475569); }

.er-pick-more[b-1kgsz7rdcg] {
    align-self: flex-start;
    padding: 0;
    border: 0;
    background: none;
    color: var(--primary, #13dfff);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
.er-pick-more:hover[b-1kgsz7rdcg] { text-decoration: underline; }

/* ── Why selected ───────────────────────────────────────────────────────── */
.er-pick-why summary[b-1kgsz7rdcg] {
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
    cursor: pointer;
    list-style: none;
}
.er-pick-why summary[b-1kgsz7rdcg]::-webkit-details-marker { display: none; }
.er-pick-why summary[b-1kgsz7rdcg]::before { content: "▸ "; color: var(--text-muted, #64748b); }
.er-pick-why[open] summary[b-1kgsz7rdcg]::before { content: "▾ "; }

.er-pick-why ul[b-1kgsz7rdcg] {
    margin: 6px 0 0;
    padding: 0 0 0 14px;
    font-size: 12px;
    line-height: 1.45;
    color: var(--text-secondary, #94a3b8);
}
.er-pick-why li[b-1kgsz7rdcg] { margin: 2px 0; }
.er-pick-why li[b-1kgsz7rdcg]::marker { color: var(--v); }

/* ── Actions ────────────────────────────────────────────────────────────── */
.er-pick-actions[b-1kgsz7rdcg] { display: flex; gap: 8px; flex-wrap: wrap; }

.er-pick-btn[b-1kgsz7rdcg] {
    height: 30px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.15s) ease, background var(--dur-fast, 0.15s) ease;
}
.er-pick-btn:hover:not(:disabled)[b-1kgsz7rdcg] { border-color: var(--v); background: color-mix(in srgb, var(--v) 12%, transparent); }
.er-pick-btn:disabled[b-1kgsz7rdcg] { opacity: 0.5; cursor: default; }
.er-pick-btn.primary[b-1kgsz7rdcg] { background: color-mix(in srgb, var(--v) 18%, transparent); border-color: color-mix(in srgb, var(--v) 45%, transparent); }
.er-pick-btn.link[b-1kgsz7rdcg] { border-color: transparent; background: none; color: var(--text-secondary, #94a3b8); }

/* ── Empty state ────────────────────────────────────────────────────────── */
.er-pick-none-line[b-1kgsz7rdcg] { margin: 0; display: flex; align-items: baseline; gap: 10px; font-size: 14px; color: var(--text-primary, #f0f4f8); }
.er-pick-none-line b[b-1kgsz7rdcg] { font-weight: 600; }
.er-pick-none-mark[b-1kgsz7rdcg] { color: var(--text-dim, #475569); font-size: 18px; line-height: 1; }
.er-pick-none-sub[b-1kgsz7rdcg] { margin: 0; font-size: 12px; line-height: 1.45; color: var(--text-muted, #64748b); max-width: 900px; }

/* ── Phone: stacked, outputs 2×2, the note collapsed by default ─────────── */
.er-pick.narrow[b-1kgsz7rdcg] { padding: 12px 12px 12px 14px; }
.er-pick.narrow .er-pick-body[b-1kgsz7rdcg] {
    grid-template-columns: 1fr;
    grid-template-areas:
        "id"
        "verdict"
        "result"
        "outputs"
        "text"
        "why"
        "actions";
    gap: 10px;
}
.er-pick.narrow .er-pick-outputs[b-1kgsz7rdcg] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.er-pick.narrow .er-pick-id[b-1kgsz7rdcg] { flex-wrap: wrap; }
.er-pick.narrow .er-pick-when[b-1kgsz7rdcg] { margin-left: 0; flex: 1 0 100%; align-items: flex-start; }
.er-pick.narrow .er-pick-co[b-1kgsz7rdcg] { max-width: 100%; }
.er-pick.narrow .er-pick-track[b-1kgsz7rdcg] { margin-left: 0; }
.er-pick.narrow .er-pick-btn[b-1kgsz7rdcg] { flex: 1 1 auto; justify-content: center; }

@media (max-width: 1100px) {
    .er-pick:not(.narrow) .er-pick-body[b-1kgsz7rdcg] {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "id verdict"
            "result result"
            "outputs outputs"
            "text text"
            "why why"
            "actions actions";
    }
}

@media (prefers-reduced-motion: reduce) {
    .er-pick[b-1kgsz7rdcg] { animation: none; }
}
/* /Components/Earnings/Research/DossierChangesSection.razor.rz.scp.css */
/* The changes panel sits between the output tiles and the reasons; same glass as the AI panel below it */
.dc[b-giudx0ozl4] {
    padding: 12px 14px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass, rgba(255, 255, 255, 0.02));
}

.dc.flip[b-giudx0ozl4] { border-color: color-mix(in srgb, var(--er-mixed, #ffb547) 35%, transparent); }

.dc .dc-title[b-giudx0ozl4] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
    margin: 0 0 10px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
    cursor: help;
}

.dc-ic[b-giudx0ozl4] { color: var(--er-implied, #13dfff); font-size: 12px; }
.dc.flip .dc-ic[b-giudx0ozl4] { color: var(--er-mixed, #ffb547); }

.dc-tag[b-giudx0ozl4] {
    padding: 1px 6px;
    border-radius: 3px;
    background: color-mix(in srgb, var(--er-implied, #13dfff) 12%, transparent);
    color: var(--er-implied, #13dfff);
    font-size: 9.5px;
    letter-spacing: 0.06em;
}

.dc-asof[b-giudx0ozl4] {
    margin-left: auto;
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
    color: var(--text-muted, #64748b);
    font-variant-numeric: tabular-nums;
}

.dc-none[b-giudx0ozl4] { margin: 0; font-size: 12.5px; color: var(--text-muted, #64748b); }

.dc-list[b-giudx0ozl4] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

/* kind | headline | when — the reason wraps to its own line under the headline */
.dc-item[b-giudx0ozl4] {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr) auto;
    gap: 2px 10px;
    align-items: baseline;
    font-size: 12.5px;
    line-height: 1.4;
}

.dc-kind[b-giudx0ozl4] {
    grid-column: 1;
    grid-row: 1;
    display: inline-block;
    padding: 0 5px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-muted, #64748b);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: center;
    line-height: 16px;
    white-space: nowrap;
}

.dc-item.k-verdict .dc-kind[b-giudx0ozl4] { background: color-mix(in srgb, var(--er-mixed, #ffb547) 16%, transparent); color: var(--er-mixed, #ffb547); }
.dc-item.k-score .dc-kind[b-giudx0ozl4] { color: var(--text-secondary, #94a3b8); }

.dc-head[b-giudx0ozl4] { grid-column: 2; grid-row: 1; font-weight: 600; min-width: 0; }
.dc-from[b-giudx0ozl4] { color: var(--text-muted, #64748b); font-weight: 500; font-variant-numeric: tabular-nums; }
.dc-arrow[b-giudx0ozl4] { margin: 0 5px; color: var(--text-dim, #475569); }
.dc-to[b-giudx0ozl4] { font-variant-numeric: tabular-nums; }
.dc-item.k-verdict .dc-to[b-giudx0ozl4] { color: var(--er-mixed, #ffb547); }

.dc-when[b-giudx0ozl4] {
    grid-column: 3;
    grid-row: 1;
    color: var(--text-muted, #64748b);
    font-size: 11px;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.dc-why[b-giudx0ozl4] {
    grid-column: 2 / 4;
    grid-row: 2;
    color: var(--text-secondary, #94a3b8);
    font-size: 12px;
}

@media (max-width: 900px) {
    .dc-item[b-giudx0ozl4] { grid-template-columns: 80px minmax(0, 1fr); }
    .dc-when[b-giudx0ozl4] { grid-column: 1; grid-row: 2; }
    .dc-why[b-giudx0ozl4] { grid-column: 2; }
}
/* /Components/Earnings/Research/EarningsDossier.razor.rz.scp.css */
/* ── Drawer shell ─────────────────────────────────────────────────────────── */
.dz-overlay[b-vdgdtgoaov] {
    position: fixed;
    inset: 0;
    z-index: 219;
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(2px);
    animation: dz-fade-b-vdgdtgoaov 200ms ease-out both;
}

.earnings-dossier[b-vdgdtgoaov] {
    --v: var(--er-neutral, #64748b);
    position: fixed;
    top: var(--header-height, 52px);   /* under the fixed site header, like the legacy drawer */
    right: 0;
    bottom: 0;
    z-index: 220;
    width: 760px;
    max-width: 100vw;
    display: flex;
    flex-direction: column;
    background: var(--bg-elevated, #0f141c);
    border-left: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    box-shadow: inset 3px 0 0 var(--v), var(--shadow-2xl, 0 24px 64px rgba(0, 0, 0, 0.6));
    color: var(--text-primary, #f0f4f8);
    font-size: 13px;
    outline: none;
    animation: dz-slide-b-vdgdtgoaov 260ms var(--ease-out, ease-out) both;
}

.earnings-dossier.v-bull[b-vdgdtgoaov] { --v: var(--er-bull, #10eb6b); }
.earnings-dossier.v-bear[b-vdgdtgoaov] { --v: var(--er-bear, #ff5757); }
.earnings-dossier.v-vol[b-vdgdtgoaov] { --v: var(--er-vol, #a78bfa); }
.earnings-dossier.v-mixed[b-vdgdtgoaov] { --v: var(--er-mixed, #ffb547); }

@keyframes dz-slide-b-vdgdtgoaov { from { transform: translateX(32px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes dz-fade-b-vdgdtgoaov { from { opacity: 0; } to { opacity: 1; } }

/* ── Header with sparkline background ─────────────────────────────────────── */
.dz-head[b-vdgdtgoaov] {
    position: relative;
    flex: 0 0 auto;
    padding: 14px 18px 12px 21px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    overflow: hidden;
}

.dz-spark[b-vdgdtgoaov] { position: absolute; inset: 0; z-index: 0; }
.dz-spark svg[b-vdgdtgoaov] { width: 100%; height: 100%; display: block; opacity: 0.9; }
.dz-spark-line[b-vdgdtgoaov] { animation: dz-spark-in-b-vdgdtgoaov 600ms ease-out both; }
@keyframes dz-spark-in-b-vdgdtgoaov { from { opacity: 0; } to { opacity: 1; } }

.dz-spark-tip[b-vdgdtgoaov] {
    position: absolute;
    top: 8px;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    background: rgba(10, 14, 20, 0.92);
    font-size: 11px;
    pointer-events: none;
    z-index: 2;
}

.dz-spark-tip .d[b-vdgdtgoaov] { color: var(--text-muted, #64748b); }
.dz-spark-tip .p[b-vdgdtgoaov] { font-weight: 600; font-variant-numeric: tabular-nums; }

.dz-head-top[b-vdgdtgoaov], .dz-head-bottom[b-vdgdtgoaov] { position: relative; z-index: 1; display: flex; align-items: center; gap: 12px; pointer-events: none; }
.dz-head-top > *[b-vdgdtgoaov], .dz-head-bottom > *[b-vdgdtgoaov] { pointer-events: auto; }
.dz-head-bottom[b-vdgdtgoaov] { margin-top: 12px; justify-content: space-between; flex-wrap: wrap; row-gap: 8px; }

.dz-logo[b-vdgdtgoaov], .dz-logo-fb[b-vdgdtgoaov] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #fff;
    padding: 3px;
    object-fit: contain;
    flex: 0 0 40px;
}

.dz-logo-fb[b-vdgdtgoaov] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 16px;
    font-weight: 700;
}

.dz-ident[b-vdgdtgoaov] { flex: 1; min-width: 0; }
.dz-sym-row[b-vdgdtgoaov] { display: flex; align-items: baseline; gap: 10px; }
.dz-sym[b-vdgdtgoaov] { margin: 0; font-family: var(--font-display, inherit); font-size: 24px; font-weight: 700; letter-spacing: 0.01em; line-height: 1; }
.dz-chart-link[b-vdgdtgoaov] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--primary, #13dfff);
    font: inherit;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
}
.dz-chart-link:hover[b-vdgdtgoaov] { text-decoration: underline; }
.dz-company[b-vdgdtgoaov] { margin-top: 3px; color: var(--text-secondary, #94a3b8); font-size: 12.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dz-sector[b-vdgdtgoaov] { color: var(--text-muted, #64748b); }

.dz-price[b-vdgdtgoaov] { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; }
.dz-price-val[b-vdgdtgoaov] { font-family: var(--font-display, inherit); font-size: 22px; font-weight: 600; line-height: 1; font-variant-numeric: tabular-nums; }
.dz-price-val.none[b-vdgdtgoaov] { color: var(--text-dim, #475569); }
.dz-price-val.flash-up[b-vdgdtgoaov] { animation: dz-flash-up-b-vdgdtgoaov 300ms ease-out; }
.dz-price-val.flash-down[b-vdgdtgoaov] { animation: dz-flash-down-b-vdgdtgoaov 300ms ease-out; }
@keyframes dz-flash-up-b-vdgdtgoaov { 0% { color: var(--er-bull, #10eb6b); } 100% { color: var(--text-primary, #f0f4f8); } }
@keyframes dz-flash-down-b-vdgdtgoaov { 0% { color: var(--er-bear, #ff5757); } 100% { color: var(--text-primary, #f0f4f8); } }
.dz-price-chg[b-vdgdtgoaov] { font-size: 12px; font-weight: 600; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.dz-price-chg .ic[b-vdgdtgoaov] { margin-right: 3px; font-size: 10px; }
.dz-price-chg.up .ic[b-vdgdtgoaov] { color: var(--er-bull, #10eb6b); }
.dz-price-chg.down .ic[b-vdgdtgoaov] { color: var(--er-bear, #ff5757); }

.dz-close[b-vdgdtgoaov] {
    width: 32px;
    height: 32px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    border-radius: var(--r-md, 8px);
    background: rgba(10, 14, 20, 0.6);
    color: var(--text-secondary, #94a3b8);
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
.dz-close:hover[b-vdgdtgoaov] { color: var(--text-primary, #f0f4f8); background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); }

.dz-when[b-vdgdtgoaov] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.dz-date[b-vdgdtgoaov] { font-size: 12px; color: var(--text-secondary, #94a3b8); font-weight: 600; }
.dz-reported[b-vdgdtgoaov] { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; color: var(--text-secondary, #94a3b8); }
.dz-reported .dot[b-vdgdtgoaov] { width: 6px; height: 6px; border-radius: 50%; background: var(--primary, #13dfff); }

.dz-tf[b-vdgdtgoaov] { display: inline-flex; gap: 2px; padding: 2px; border-radius: var(--r-pill, 999px); background: rgba(10, 14, 20, 0.6); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); }
.dz-tf button[b-vdgdtgoaov] { height: 22px; min-width: 32px; padding: 0 8px; border: 0; border-radius: var(--r-pill, 999px); background: transparent; color: var(--text-muted, #64748b); font: inherit; font-size: 11px; font-weight: 600; cursor: pointer; }
.dz-tf button:hover[b-vdgdtgoaov] { color: var(--text-primary, #f0f4f8); }
.dz-tf button.active[b-vdgdtgoaov] { background: var(--bg-active-strong, rgba(19, 223, 255, 0.12)); color: var(--text-primary, #f0f4f8); }

/* ── Tabs ─────────────────────────────────────────────────────────────────── */
.dz-tabs[b-vdgdtgoaov] {
    flex: 0 0 auto;
    display: flex;
    gap: 2px;
    padding: 0 12px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    overflow-x: auto;
    scrollbar-width: none;
}
.dz-tabs[b-vdgdtgoaov]::-webkit-scrollbar { display: none; }

.dz-tabs button[b-vdgdtgoaov] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 40px;
    padding: 0 12px;
    border: 0;
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.02em;
    white-space: nowrap;
    cursor: pointer;
}

.dz-tabs button:hover[b-vdgdtgoaov] { color: var(--text-primary, #f0f4f8); }
.dz-tabs button.active[b-vdgdtgoaov] { color: var(--text-primary, #f0f4f8); }
.dz-tabs button.active[b-vdgdtgoaov]::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: -1px; height: 2px; background: var(--primary, #13dfff); border-radius: 1px; }
.dz-tabs button:focus-visible[b-vdgdtgoaov] { outline: none; box-shadow: inset 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }
.dz-tab-dot[b-vdgdtgoaov] { width: 6px; height: 6px; border-radius: 50%; background: var(--primary, #13dfff); }

/* ── Body / footer ───────────────────────────────────────────────────────── */
.dz-body[b-vdgdtgoaov] { flex: 1; overflow-y: auto; padding: 16px 18px 20px 21px; }
.dz-pane[hidden][b-vdgdtgoaov] { display: none; }

.dz-foot[b-vdgdtgoaov] {
    flex: 0 0 auto;
    padding: 8px 18px 8px 21px;
    border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    font-size: 11px;
    color: var(--text-muted, #64748b);
}
.dz-foot .sep[b-vdgdtgoaov] { margin: 0 6px; color: var(--text-dim, #475569); }

.dz-skeleton[b-vdgdtgoaov] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.dz-skeleton .tile[b-vdgdtgoaov] { height: 120px; border-radius: var(--r-md, 8px); }
.dz-skeleton .line[b-vdgdtgoaov] { grid-column: 1 / -1; height: 14px; border-radius: 4px; }
.dz-skeleton .line.w60[b-vdgdtgoaov] { width: 60%; }
.dz-skeleton .line.w80[b-vdgdtgoaov] { width: 80%; }
.dz-skeleton span[b-vdgdtgoaov] {
    display: block;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04));
    background-size: 200% 100%;
    animation: dz-shimmer-b-vdgdtgoaov 1.2s linear infinite;
}
@keyframes dz-shimmer-b-vdgdtgoaov { from { background-position: 200% 0; } to { background-position: -200% 0; } }

.dz-state[b-vdgdtgoaov] { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 48px 12px; text-align: center; color: var(--text-secondary, #94a3b8); }
.dz-state i[b-vdgdtgoaov] { font-size: 24px; color: var(--text-muted, #64748b); }
.dz-state p[b-vdgdtgoaov] { margin: 0; font-weight: 600; }
.dz-state small[b-vdgdtgoaov] { color: var(--text-muted, #64748b); }
.dz-state.error i[b-vdgdtgoaov] { color: var(--warning, #ffb547); }
.dz-btn[b-vdgdtgoaov] { height: 30px; padding: 0 12px; border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1)); border-radius: var(--r-md, 8px); background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); color: var(--text-primary, #f0f4f8); font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }

/* ── Shared tab primitives (tabs render inside .dz-body, hence ::deep) ───── */
.dz-body[b-vdgdtgoaov]  h4 {
    margin: 0 0 8px;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
}
.dz-body[b-vdgdtgoaov]  .muted { color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .ok { color: var(--er-bull, #10eb6b); }
.dz-body[b-vdgdtgoaov]  .bad { color: var(--er-bear, #ff5757); }
/* Text never wears a data colour: a small mark beside the figure does */
.dz-body[b-vdgdtgoaov]  .mk { display: inline-block; min-width: 10px; margin-right: 3px; font-size: 9px; vertical-align: 1px; }
.dz-body[b-vdgdtgoaov]  td.num .mk:empty { margin-right: 0; min-width: 0; }
.dz-body[b-vdgdtgoaov]  .num { text-align: right; font-variant-numeric: tabular-nums; }
.dz-body[b-vdgdtgoaov]  dl { display: grid; grid-template-columns: auto 1fr; gap: 6px 14px; margin: 0; font-size: 12.5px; }
.dz-body[b-vdgdtgoaov]  dt { color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  dd { margin: 0; font-variant-numeric: tabular-nums; }

/* Tab 1 — Verdict */
.dz-body[b-vdgdtgoaov]  .vt { display: flex; flex-direction: column; gap: 18px; }
.dz-body[b-vdgdtgoaov]  .vt-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.dz-body[b-vdgdtgoaov]  .vt-tiles.has-gap { grid-template-columns: repeat(5, minmax(0, 1fr)); } /* Phase 3: the Expectation Gap tile */
.dz-body[b-vdgdtgoaov]  .vt-tiles.has-gap .er-exp.compact { white-space: normal; line-height: 1.3; max-width: 100%; } /* five tiles are narrower than the tag */
.dz-body[b-vdgdtgoaov]  .vt-tile {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 14px 8px 12px;
    text-align: center;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass, rgba(255, 255, 255, 0.02));
}
.dz-body[b-vdgdtgoaov]  .vt-tile.move { justify-content: center; }
.dz-body[b-vdgdtgoaov]  .vt-move-val { font-family: var(--font-display, inherit); font-size: 26px; font-weight: 600; line-height: 1; }
.dz-body[b-vdgdtgoaov]  .vt-move-lbl { font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .vt-ticks { display: block; overflow: visible; }
.dz-body[b-vdgdtgoaov]  .vt-ticks .track { stroke: rgba(255, 255, 255, 0.1); stroke-width: 2; stroke-linecap: round; }
.dz-body[b-vdgdtgoaov]  .vt-ticks .tick { stroke-width: 2.5; stroke-linecap: round; }
.dz-body[b-vdgdtgoaov]  .vt-ticks .tick.implied { stroke: var(--er-implied, #13dfff); }
.dz-body[b-vdgdtgoaov]  .vt-ticks .tick.projected { stroke: #f0f4f8; }
.dz-body[b-vdgdtgoaov]  .vt-ticks { width: 100%; max-width: 120px; height: auto; }
.dz-body[b-vdgdtgoaov]  .vt-move-sub { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 10px; font-size: 10.5px; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .vt-move-sub .sw { display: inline-block; width: 8px; height: 2px; margin-right: 4px; vertical-align: middle; border-radius: 1px; }
.dz-body[b-vdgdtgoaov]  .vt-move-sub .sw.projected { background: #f0f4f8; }
.dz-body[b-vdgdtgoaov]  .vt-move-sub .sw.implied { background: var(--er-implied, #13dfff); }
.dz-body[b-vdgdtgoaov]  .vt-move-edge { display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: 11px; color: var(--text-secondary, #94a3b8); max-width: 100%; }
.dz-body[b-vdgdtgoaov]  .vt-move-edge b { color: var(--text-primary, #f0f4f8); }
.dz-body[b-vdgdtgoaov]  .vt-move-edge .asof { font-size: 10px; color: var(--text-muted, #64748b); cursor: help; }
.dz-body[b-vdgdtgoaov]  .vt-empty { padding: 20px; border-radius: var(--r-md, 8px); border: 1px dashed var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-secondary, #94a3b8); text-align: center; }
.dz-body[b-vdgdtgoaov]  .vt-empty p { margin: 0 0 4px; font-weight: 600; }

.dz-body[b-vdgdtgoaov]  .vt-reasons { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dz-body[b-vdgdtgoaov]  .vt-reason {
    --v: var(--er-neutral, #64748b);
    padding: 12px 14px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid color-mix(in srgb, var(--v) 22%, transparent);
    background: color-mix(in srgb, var(--v) 5%, transparent);
}
.dz-body[b-vdgdtgoaov]  .vt-reason.bull { --v: var(--er-bull, #10eb6b); }
.dz-body[b-vdgdtgoaov]  .vt-reason.bear { --v: var(--er-bear, #ff5757); }
.dz-body[b-vdgdtgoaov]  .vt-reason h4 .ic { color: var(--v); margin-right: 4px; }
.dz-body[b-vdgdtgoaov]  .vt-reason ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 7px; font-size: 12.5px; line-height: 1.4; }
.dz-body[b-vdgdtgoaov]  .vt-reason li.top { font-weight: 600; }
.dz-body[b-vdgdtgoaov]  .vt-reason li.none { color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .vt-reason .dim { display: inline-block; min-width: 34px; margin-right: 6px; padding: 0 5px; border-radius: 3px; background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); color: var(--text-muted, #64748b); font-size: 9.5px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; text-align: center; line-height: 16px; }
.dz-body[b-vdgdtgoaov]  .vt-reason .val { margin-left: 6px; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }

.dz-body[b-vdgdtgoaov]  .vt-ai { padding: 14px 16px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .vt-ai-note { margin-left: 8px; font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .vt-ai-text { margin: 0; font-size: 13.5px; line-height: 1.55; }
.dz-body[b-vdgdtgoaov]  .vt-ai-text + .vt-ai-text { margin-top: 10px; }
.dz-body[b-vdgdtgoaov]  .vt-ai-text.full { margin-top: 10px; color: var(--text-secondary, #94a3b8); font-size: 13px; }
.dz-body[b-vdgdtgoaov]  .vt-ai-text.none { color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .vt-ai-more { margin-top: 10px; padding: 0; border: 0; background: none; color: var(--primary, #13dfff); font: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; }
.dz-body[b-vdgdtgoaov]  .vt-ai-more:hover { text-decoration: underline; }
.dz-body[b-vdgdtgoaov]  .vt-ai-skel { display: grid; gap: 8px; margin-top: 8px; }
.dz-body[b-vdgdtgoaov]  .vt-ai-skel span { display: block; height: 12px; border-radius: 4px; background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04)); background-size: 200% 100%; animation: dz-shimmer-b-vdgdtgoaov 1.2s linear infinite; }
.dz-body[b-vdgdtgoaov]  .vt-ai-skel .w70 { width: 70%; }

/* Tab 2 — Intelligence */
.dz-body[b-vdgdtgoaov]  .it { display: flex; flex-direction: column; gap: 6px; }
.dz-body[b-vdgdtgoaov]  .it-row { border-radius: var(--r-md, 8px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .it-row.open { border-color: var(--border-medium, rgba(255, 255, 255, 0.1)); background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)); }
.dz-body[b-vdgdtgoaov]  .it-head {
    display: grid;
    grid-template-columns: 1fr 44px 150px 130px 20px;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 52px;
    padding: 8px 14px;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
.dz-body[b-vdgdtgoaov]  .it-head:hover { background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)); }
.dz-body[b-vdgdtgoaov]  .it-head:focus-visible { outline: none; box-shadow: inset 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); border-radius: var(--r-md, 8px); }
.dz-body[b-vdgdtgoaov]  .it-dim { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dz-body[b-vdgdtgoaov]  .it-name { font-size: 13.5px; font-weight: 600; }
.dz-body[b-vdgdtgoaov]  .it-blurb { font-size: 11px; color: var(--text-muted, #64748b); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dz-body[b-vdgdtgoaov]  .it-score { font-size: 16px; font-weight: 700; text-align: right; font-variant-numeric: tabular-nums; }
.dz-body[b-vdgdtgoaov]  .it-score.none, .dz-body[b-vdgdtgoaov]  .it-score.pending { color: var(--text-muted, #64748b); font-weight: 500; }
.dz-body[b-vdgdtgoaov]  .it-meter-wrap { display: flex; justify-content: center; }
.dz-body[b-vdgdtgoaov]  .it-av { font-size: 11px; color: var(--text-muted, #64748b); white-space: nowrap; }
.dz-body[b-vdgdtgoaov]  .it-av .g { margin-right: 4px; font-size: 9px; }
.dz-body[b-vdgdtgoaov]  .it-chev { color: var(--text-muted, #64748b); font-size: 16px; text-align: center; }
.dz-body[b-vdgdtgoaov]  .it-row > .evidence-panel, .dz-body[b-vdgdtgoaov]  .it-row > .it-peers, .dz-body[b-vdgdtgoaov]  .it-row > .it-deep { margin: 0 12px 12px; }
.dz-body[b-vdgdtgoaov]  .it-peers { width: calc(100% - 24px); border-collapse: collapse; font-size: 12px; }
.dz-body[b-vdgdtgoaov]  .it-peers th { padding: 6px 8px; border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06)); color: var(--text-muted, #64748b); font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; text-align: left; }
.dz-body[b-vdgdtgoaov]  .it-peers td { padding: 7px 8px; border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06)); }
.dz-body[b-vdgdtgoaov]  .it-peers td.ok, .dz-body[b-vdgdtgoaov]  .it-peers td.bad { color: var(--text-primary, #f0f4f8); }
.dz-body[b-vdgdtgoaov]  .it-peers td.ok::before { content: "✓ "; color: var(--er-bull, #10eb6b); font-weight: 700; }
.dz-body[b-vdgdtgoaov]  .it-peers td.bad::before { content: "✗ "; color: var(--er-bear, #ff5757); font-weight: 700; }
.dz-body[b-vdgdtgoaov]  .it-deep { display: inline-block; font-size: 12px; color: var(--primary, #13dfff); text-decoration: none; }

/* Tab 3 — Expected move */
.dz-body[b-vdgdtgoaov]  .em { display: flex; flex-direction: column; gap: 16px; }
.dz-body[b-vdgdtgoaov]  .em-tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.dz-body[b-vdgdtgoaov]  .em-tile { display: flex; flex-direction: column; gap: 4px; padding: 12px 14px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .em-k { font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .em-v { font-family: var(--font-display, inherit); font-size: 22px; font-weight: 600; line-height: 1.1; }
.dz-body[b-vdgdtgoaov]  .em-v.pos::before { content: "▲ "; color: var(--er-bull, #10eb6b); font-size: 12px; }
.dz-body[b-vdgdtgoaov]  .em-v.neg::before { content: "▼ "; color: var(--er-bear, #ff5757); font-size: 12px; }
.dz-body[b-vdgdtgoaov]  .em-s { display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .em-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .em-dot.live { background: var(--er-implied, #13dfff); }
.dz-body[b-vdgdtgoaov]  .em-bar-wrap { display: flex; flex-direction: column; gap: 6px; padding: 12px 14px; border-radius: var(--r-md, 8px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); }
.dz-body[b-vdgdtgoaov]  .em-bar { width: 100%; height: 24px; display: block; }
.dz-body[b-vdgdtgoaov]  .em-bar .track { stroke: rgba(255, 255, 255, 0.1); stroke-width: 3; stroke-linecap: round; }
.dz-body[b-vdgdtgoaov]  .em-bar .tick { stroke-width: 3; stroke-linecap: round; }
.dz-body[b-vdgdtgoaov]  .em-bar .tick.implied { stroke: var(--er-implied, #13dfff); }
.dz-body[b-vdgdtgoaov]  .em-bar .tick.hist { stroke: #cbd5e1; }
.dz-body[b-vdgdtgoaov]  .em-bar .tick.avg { stroke: #64748b; }
.dz-body[b-vdgdtgoaov]  .em-legend { display: flex; gap: 14px; font-size: 11px; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .em-legend .sw { display: inline-block; width: 3px; height: 10px; margin-right: 5px; vertical-align: middle; border-radius: 1px; }
.dz-body[b-vdgdtgoaov]  .em-legend .sw.implied { background: var(--er-implied, #13dfff); }
.dz-body[b-vdgdtgoaov]  .em-legend .sw.hist { background: #cbd5e1; }
.dz-body[b-vdgdtgoaov]  .em-legend .sw.avg { background: #64748b; }
.dz-body[b-vdgdtgoaov]  .em-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dz-body[b-vdgdtgoaov]  .em-sec { padding: 12px 14px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .em-note { margin: 10px 0 0; font-size: 11.5px; color: var(--text-muted, #64748b); line-height: 1.45; }
.dz-body[b-vdgdtgoaov]  .em-liq { padding: 1px 7px; border-radius: var(--r-pill, 999px); border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1)); font-size: 11px; font-weight: 600; }
.dz-body[b-vdgdtgoaov]  .em-foot { display: flex; align-items: center; gap: 10px; font-size: 11px; color: var(--text-muted, #64748b); }

/* Tab 4 — Patterns */
.dz-body[b-vdgdtgoaov]  .pt { display: flex; flex-direction: column; gap: 14px; }
.dz-body[b-vdgdtgoaov]  .pt-chart { border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); padding: 6px; }
.dz-body[b-vdgdtgoaov]  .pt-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.dz-body[b-vdgdtgoaov]  .pt-table th { padding: 8px 10px; border-bottom: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-secondary, #94a3b8); font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; text-align: left; }
.dz-body[b-vdgdtgoaov]  .pt-table td { padding: 8px 10px; border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06)); white-space: nowrap; }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr { cursor: pointer; transition: background var(--dur-fast, 0.15s) ease; }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr:hover td { background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)); }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr:focus { outline: none; }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr:focus-visible td { background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)); }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr.selected td { background: var(--bg-selected, rgba(19, 223, 255, 0.08)); }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr.selected td:first-child { box-shadow: inset 3px 0 0 var(--primary, #13dfff); }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr.beat td:first-child { box-shadow: inset 2px 0 0 color-mix(in srgb, var(--er-bull, #10eb6b) 55%, transparent); }
.dz-body[b-vdgdtgoaov]  .pt-table tbody tr.miss td:first-child { box-shadow: inset 2px 0 0 color-mix(in srgb, var(--er-bear, #ff5757) 55%, transparent); }
.dz-body[b-vdgdtgoaov]  .pt-note, .dz-body[b-vdgdtgoaov]  .pt-empty { margin: 0; font-size: 11.5px; color: var(--text-muted, #64748b); }

/* Tab 5 — Scenarios & chart */
.dz-body[b-vdgdtgoaov]  .sc { display: flex; flex-direction: column; gap: 14px; }
.dz-body[b-vdgdtgoaov]  .sc-summary { margin: 0; font-size: 13.5px; line-height: 1.5; }
.dz-body[b-vdgdtgoaov]  .sc-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.dz-body[b-vdgdtgoaov]  .sc-card { --v: var(--er-neutral, #64748b); padding: 12px 14px; border-radius: var(--r-lg, 12px); border: 1px solid color-mix(in srgb, var(--v) 22%, transparent); background: color-mix(in srgb, var(--v) 5%, transparent); }
.dz-body[b-vdgdtgoaov]  .sc-card.beat { --v: var(--er-bull, #10eb6b); }
.dz-body[b-vdgdtgoaov]  .sc-card.miss { --v: var(--er-bear, #ff5757); }
.dz-body[b-vdgdtgoaov]  .sc-card.mixed { --v: var(--er-mixed, #ffb547); }
.dz-body[b-vdgdtgoaov]  .sc-card h4 .ic { color: var(--v); margin-right: 4px; }
.dz-body[b-vdgdtgoaov]  .sc-card p { margin: 0; font-size: 12.5px; line-height: 1.5; }
.dz-body[b-vdgdtgoaov]  .sc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.dz-body[b-vdgdtgoaov]  .sc-sec { padding: 12px 14px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .sc-sec p { margin: 0; font-size: 12.5px; line-height: 1.5; }
.dz-body[b-vdgdtgoaov]  .sc-asof { display: block; margin-top: 8px; font-size: 10.5px; color: var(--text-muted, #64748b); cursor: help; }
.dz-body[b-vdgdtgoaov]  .sc-empty { padding: 16px; border-radius: var(--r-md, 8px); border: 1px dashed var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-secondary, #94a3b8); text-align: center; }
.dz-body[b-vdgdtgoaov]  .sc-empty p { margin: 0 0 4px; font-weight: 600; }
.dz-body[b-vdgdtgoaov]  .sc-chart-head { display: flex; justify-content: space-between; align-items: baseline; font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .sc-chart-link { font-size: 11.5px; letter-spacing: 0; text-transform: none; color: var(--primary, #13dfff); text-decoration: none; }
.dz-body[b-vdgdtgoaov]  .sc-chart-box { height: 360px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); overflow: hidden; background: var(--bg-surface, #0a0e14); }

/* Tab 6 — Results */
.dz-body[b-vdgdtgoaov]  .rs { display: flex; flex-direction: column; gap: 14px; }
.dz-body[b-vdgdtgoaov]  .rs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.dz-body[b-vdgdtgoaov]  .rs-sec { display: flex; flex-direction: column; gap: 8px; padding: 14px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.dz-body[b-vdgdtgoaov]  .rs-big { display: flex; flex-direction: column; gap: 3px; }
.dz-body[b-vdgdtgoaov]  .rs-act { font-family: var(--font-display, inherit); font-size: 24px; font-weight: 600; line-height: 1; }
.dz-body[b-vdgdtgoaov]  .rs-act.none { color: var(--text-dim, #475569); }
.dz-body[b-vdgdtgoaov]  .rs-act.ok, .dz-body[b-vdgdtgoaov]  .rs-act.bad { color: var(--text-primary, #f0f4f8); }
.dz-body[b-vdgdtgoaov]  .rs-act.ok::before { content: "▲ "; color: var(--er-bull, #10eb6b); font-size: 13px; vertical-align: 3px; }
.dz-body[b-vdgdtgoaov]  .rs-act.bad::before { content: "▼ "; color: var(--er-bear, #ff5757); font-size: 13px; vertical-align: 3px; }
.dz-body[b-vdgdtgoaov]  .rs-vs { font-size: 11.5px; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .rs-line { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; font-size: 12px; }
.dz-body[b-vdgdtgoaov]  .rs-flag { padding: 1px 7px; border-radius: var(--r-pill, 999px); font-weight: 700; font-size: 11px; }
.dz-body[b-vdgdtgoaov]  .rs-flag.ok { background: rgba(16, 235, 107, 0.12); }
.dz-body[b-vdgdtgoaov]  .rs-flag.bad { background: rgba(255, 87, 87, 0.12); }
.dz-body[b-vdgdtgoaov]  .rs-surprise { color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.dz-body[b-vdgdtgoaov]  .rs-call { margin-top: auto; padding-top: 8px; border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06)); font-size: 12px; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .rs-call b { color: var(--text-primary, #f0f4f8); }
.dz-body[b-vdgdtgoaov]  .rs-call .mark { margin-left: 4px; font-weight: 700; }
.dz-body[b-vdgdtgoaov]  .rs-call.right .mark { color: var(--er-bull, #10eb6b); }
.dz-body[b-vdgdtgoaov]  .rs-call.wrong .mark { color: var(--er-bear, #ff5757); }
.dz-body[b-vdgdtgoaov]  .rs-forecast { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px; }
.dz-body[b-vdgdtgoaov]  .rs-forecast-k { font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .rs-forecast-at { color: var(--text-muted, #64748b); cursor: help; }
.dz-body[b-vdgdtgoaov]  .rs-note { margin: 0; font-size: 11.5px; color: var(--text-muted, #64748b); line-height: 1.5; }
.dz-body[b-vdgdtgoaov]  .rs-pending { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 40px 12px; text-align: center; color: var(--text-secondary, #94a3b8); }
.dz-body[b-vdgdtgoaov]  .rs-pending i { font-size: 24px; color: var(--text-muted, #64748b); }
.dz-body[b-vdgdtgoaov]  .rs-pending p { margin: 0; font-weight: 600; font-size: 14px; }
.dz-body[b-vdgdtgoaov]  .rs-pending small { color: var(--text-muted, #64748b); }

@media (prefers-reduced-motion: reduce) {
    .dz-overlay[b-vdgdtgoaov], .earnings-dossier[b-vdgdtgoaov], .dz-spark-line[b-vdgdtgoaov], .dz-skeleton span[b-vdgdtgoaov], .dz-price-val[b-vdgdtgoaov] { animation: none; }
    .dz-body[b-vdgdtgoaov]  .vt-ai-skel span { animation: none; }
}

/* ── Phone: full-height sheet, scrolling tab bar, shorter chart ──────────── */
@media (max-width: 900px) {
    .earnings-dossier[b-vdgdtgoaov] { width: 100%; border-left: 0; }
    .dz-head[b-vdgdtgoaov] { padding: 12px 14px 10px 17px; }
    .dz-body[b-vdgdtgoaov] { padding: 14px 14px 18px 17px; }
    .dz-sym[b-vdgdtgoaov] { font-size: 20px; }
    .dz-price-val[b-vdgdtgoaov] { font-size: 18px; }
    .dz-company[b-vdgdtgoaov] { max-width: 160px; }
    .dz-body[b-vdgdtgoaov]  .vt-tiles, .dz-body[b-vdgdtgoaov]  .vt-tiles.has-gap, .dz-body[b-vdgdtgoaov]  .em-tiles { grid-template-columns: 1fr 1fr; }
    .dz-body[b-vdgdtgoaov]  .vt-reasons, .dz-body[b-vdgdtgoaov]  .em-grid, .dz-body[b-vdgdtgoaov]  .sc-grid { grid-template-columns: 1fr; }
    .dz-body[b-vdgdtgoaov]  .sc-cards, .dz-body[b-vdgdtgoaov]  .rs-grid { grid-template-columns: 1fr; }
    .dz-body[b-vdgdtgoaov]  .sc-chart-box { height: 280px; }
    .dz-body[b-vdgdtgoaov]  .it-head { grid-template-columns: 1fr 40px 90px 20px; }
    .dz-body[b-vdgdtgoaov]  .it-av { display: none; }
    .dz-body[b-vdgdtgoaov]  .pt-table { font-size: 11.5px; }
    .dz-body[b-vdgdtgoaov]  .pt-table th:nth-child(5), .dz-body[b-vdgdtgoaov]  .pt-table td:nth-child(5),
    .dz-body[b-vdgdtgoaov]  .pt-table th:nth-child(8), .dz-body[b-vdgdtgoaov]  .pt-table td:nth-child(8) { display: none; }
}
/* /Components/Earnings/Research/EarningsResearchView.razor.rz.scp.css */
/* ── Tokens for the research terminal (inherited by every child via custom properties) ─────────── */
.er-root[b-5njxwzu61p] {
    --er-bull: var(--success, #10eb6b);
    --er-bear: var(--error, #ff5757);
    --er-vol: var(--accent, #a78bfa);
    --er-mixed: var(--warning, #ffb547);
    --er-neutral: #64748b;
    --er-implied: var(--primary, #13dfff);
    --er-ramp-mid: #4b5563;
    --er-ramp-bull-1: #0b6f36; --er-ramp-bull-2: #0e9a49; --er-ramp-bull-3: #10c25a; --er-ramp-bull-4: #10eb6b;
    --er-ramp-bear-1: #8c3636; --er-ramp-bear-2: #b03d3d; --er-ramp-bear-3: #d94a4a; --er-ramp-bear-4: #ff5757;

    max-width: 1600px;
    margin: 0 auto;
    padding: 16px 16px 32px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    color: var(--text-primary, #f0f4f8);
    font-size: 13px;
}

/* ── Page head ──────────────────────────────────────────────────────────── */
.er-page-head[b-5njxwzu61p] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding: 4px 2px 0;
}

.er-title[b-5njxwzu61p] {
    margin: 0;
    font-family: var(--font-display, inherit);
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.1;
}

.er-title span[b-5njxwzu61p] { color: var(--text-secondary, #94a3b8); font-weight: 500; }

.er-tagline[b-5njxwzu61p] { margin: 4px 0 0; font-size: 12.5px; color: var(--text-muted, #64748b); }

/* ── Column menu popover (rendered by this view into the strip's trailing slot) ─ */
.er-colmenu-pop[b-5njxwzu61p] {
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    z-index: 60;
    animation: er-pop-b-5njxwzu61p 160ms var(--ease-out, ease-out) both;
}

@keyframes er-pop-b-5njxwzu61p { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

/* Phase-2 pick card mounts here; empty for now and takes no space */
.er-pick-slot:empty[b-5njxwzu61p] { display: none; }

/* ── Free banner ────────────────────────────────────────────────────────── */
.er-free-banner[b-5njxwzu61p] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--accent-border, rgba(167, 139, 250, 0.35));
    background: var(--accent-bg, rgba(167, 139, 250, 0.12));
    color: var(--text-secondary, #94a3b8);
    font-size: 12.5px;
    line-height: 1.4;
}

.er-free-banner b[b-5njxwzu61p] { color: var(--text-primary, #f0f4f8); }
.er-free-banner .lock[b-5njxwzu61p] { font-size: 14px; }
.er-free-banner > span:not(.lock)[b-5njxwzu61p] { flex: 1 1 240px; }

.er-free-cta[b-5njxwzu61p] {
    margin-left: auto;
    flex: 0 0 auto;
    height: 28px;
    padding: 0 12px;
    display: inline-flex;
    align-items: center;
    border-radius: var(--r-pill, 999px);
    background: var(--accent, #a78bfa);
    color: #0a0e14;
    font-weight: 700;
    font-size: 12px;
    text-decoration: none;
}

/* ── Main / states ──────────────────────────────────────────────────────── */
.er-main[b-5njxwzu61p] { display: flex; flex-direction: column; gap: 10px; }

.er-skel[b-5njxwzu61p] {
    display: flex;
    flex-direction: column;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    overflow: hidden;
}

.er-skel-row[b-5njxwzu61p] {
    display: grid;
    grid-template-columns: 250px 1fr 160px 120px;
    gap: 16px;
    align-items: center;
    height: 48px;
    padding: 0 12px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    animation: er-skel-in-b-5njxwzu61p 300ms ease-out both;
    animation-delay: calc(var(--i, 0) * 30ms);
}

.er-skel-row span[b-5njxwzu61p] {
    display: block;
    height: 12px;
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04));
    background-size: 200% 100%;
    animation: er-shimmer-b-5njxwzu61p 1.3s linear infinite;
}

.er-skel-row .a[b-5njxwzu61p] { width: 70%; }
.er-skel-row .c[b-5njxwzu61p] { width: 60%; }
.er-skel-row .d[b-5njxwzu61p] { width: 50%; }

@keyframes er-shimmer-b-5njxwzu61p { from { background-position: 200% 0; } to { background-position: -200% 0; } }
@keyframes er-skel-in-b-5njxwzu61p { from { opacity: 0; } to { opacity: 1; } }

.er-error[b-5njxwzu61p], .er-empty[b-5njxwzu61p] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 48px 16px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    color: var(--text-secondary, #94a3b8);
    text-align: center;
}

.er-error i[b-5njxwzu61p] { font-size: 24px; color: var(--warning, #ffb547); }
.er-error p[b-5njxwzu61p] { margin: 0; font-weight: 600; }

.er-btn[b-5njxwzu61p] {
    height: 30px;
    padding: 0 12px;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.er-btn:hover:not(:disabled)[b-5njxwzu61p] { background: var(--bg-glass-strong, rgba(255, 255, 255, 0.1)); }
.er-btn:disabled[b-5njxwzu61p] { opacity: 0.4; cursor: default; }

/* ── Pager ──────────────────────────────────────────────────────────────── */
.er-pager[b-5njxwzu61p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding: 0 4px;
    font-size: 12px;
    color: var(--text-muted, #64748b);
}

.er-pager b[b-5njxwzu61p] { color: var(--text-primary, #f0f4f8); font-weight: 600; font-variant-numeric: tabular-nums; }
.er-pager .muted[b-5njxwzu61p] { color: var(--text-dim, #475569); }
.er-pager-btns[b-5njxwzu61p] { display: inline-flex; align-items: center; gap: 10px; }
.er-pager-page[b-5njxwzu61p] { font-variant-numeric: tabular-nums; }

/* ── Footer ─────────────────────────────────────────────────────────────── */
.er-foot[b-5njxwzu61p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding: 10px 4px 0;
    border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    font-size: 11.5px;
    color: var(--text-muted, #64748b);
}

.er-disclaimer[b-5njxwzu61p] { max-width: 640px; line-height: 1.45; }
.er-foot-right[b-5njxwzu61p] { display: inline-flex; align-items: center; gap: 14px; flex-wrap: wrap; }

.er-track[b-5njxwzu61p] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 26px;
    padding: 0 10px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    white-space: nowrap;
}

.er-track .k[b-5njxwzu61p] { font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; font-size: 10px; color: var(--text-secondary, #94a3b8); }
.er-track b[b-5njxwzu61p] { color: var(--text-primary, #f0f4f8); font-weight: 600; font-variant-numeric: tabular-nums; }
.er-track .sep[b-5njxwzu61p] { color: var(--text-dim, #475569); }
.er-track a[b-5njxwzu61p] { color: var(--primary, #13dfff); text-decoration: none; }
.er-track a:hover[b-5njxwzu61p] { text-decoration: underline; }
.er-track.collecting[b-5njxwzu61p] { color: var(--text-muted, #64748b); font-style: italic; }
.er-updated[b-5njxwzu61p] { font-variant-numeric: tabular-nums; cursor: help; }

/* ── Upgrade modal ──────────────────────────────────────────────────────── */
.er-modal-overlay[b-5njxwzu61p] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(4px);
    animation: er-fade-b-5njxwzu61p 200ms ease-out both;
}

@keyframes er-fade-b-5njxwzu61p { from { opacity: 0; } to { opacity: 1; } }

.er-upgrade-modal[b-5njxwzu61p] {
    width: min(460px, calc(100vw - 32px));
    padding: 6px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: var(--bg-card, #141a24);
    box-shadow: var(--shadow-2xl, 0 24px 64px rgba(0, 0, 0, 0.6));
}

@media (prefers-reduced-motion: reduce) {
    .er-colmenu-pop[b-5njxwzu61p], .er-skel-row[b-5njxwzu61p], .er-skel-row span[b-5njxwzu61p], .er-modal-overlay[b-5njxwzu61p] { animation: none; }
}

/* ── Phone ──────────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .er-root[b-5njxwzu61p] { padding: 12px 12px 24px; gap: 12px; }
    .er-title[b-5njxwzu61p] { font-size: 19px; }
    .er-tagline[b-5njxwzu61p] { display: none; }
    .er-page-head[b-5njxwzu61p] { align-items: flex-start; }
    .er-free-banner[b-5njxwzu61p] { flex-wrap: wrap; }
    .er-free-cta[b-5njxwzu61p] { margin-left: 0; }
    .er-foot[b-5njxwzu61p] { flex-direction: column; align-items: flex-start; }
    .er-track[b-5njxwzu61p] { white-space: normal; height: auto; padding: 6px 10px; line-height: 1.4; }
    .er-skel-row[b-5njxwzu61p] { grid-template-columns: 1fr 1fr; }
    .er-skel-row .c[b-5njxwzu61p], .er-skel-row .d[b-5njxwzu61p] { display: none; }
}
/* /Components/Earnings/Research/EvidencePanel.razor.rz.scp.css */
.ev-overlay[b-2wqdrqjwau] {
    position: fixed;
    inset: 0;
    z-index: 209;
    background: rgba(0, 0, 0, 0.45);
    animation: ev-fade-b-2wqdrqjwau 200ms ease-out both;
}

.evidence-panel[b-2wqdrqjwau] {
    display: flex;
    flex-direction: column;
    color: var(--text-primary, #f0f4f8);
    font-size: 13px;
    outline: none;
}

.evidence-panel.drawer[b-2wqdrqjwau] {
    position: fixed;
    top: var(--header-height, 52px);   /* under the fixed site header, like the legacy drawer */
    right: 0;
    bottom: 0;
    z-index: 210;
    width: 420px;
    max-width: 100vw;
    background: var(--bg-elevated, #0f141c);
    border-left: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    box-shadow: var(--shadow-xl, 0 16px 48px rgba(0, 0, 0, 0.5));
    animation: ev-slide-b-2wqdrqjwau 240ms var(--ease-out, ease-out) both;
}

.evidence-panel.inline[b-2wqdrqjwau] {
    margin-top: 8px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
}

@keyframes ev-slide-b-2wqdrqjwau { from { transform: translateX(24px); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes ev-fade-b-2wqdrqjwau { from { opacity: 0; } to { opacity: 1; } }

.ev-head[b-2wqdrqjwau] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 12px 14px 0;
}

.ev-dims[b-2wqdrqjwau] {
    display: flex;
    gap: 2px;
    padding: 2px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    overflow-x: auto;
    scrollbar-width: none;
}

.ev-dim[b-2wqdrqjwau] {
    height: 26px;
    padding: 0 9px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.03em;
    cursor: pointer;
    white-space: nowrap;
}

.ev-dim:hover[b-2wqdrqjwau] { color: var(--text-primary, #f0f4f8); }
.ev-dim.active[b-2wqdrqjwau] { background: var(--bg-active-strong, rgba(19, 223, 255, 0.12)); color: var(--text-primary, #f0f4f8); }
.ev-dim:focus-visible[b-2wqdrqjwau] { outline: none; box-shadow: 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }

.ev-close[b-2wqdrqjwau] {
    width: 30px;
    height: 30px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    border-radius: var(--r-md, 8px);
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}

.ev-close:hover[b-2wqdrqjwau] { color: var(--text-primary, #f0f4f8); background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); }

.ev-title[b-2wqdrqjwau] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 14px 12px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
}

.ev-ring[b-2wqdrqjwau] { position: relative; width: 48px; height: 48px; flex: 0 0 48px; }
.ev-ring svg[b-2wqdrqjwau] { display: block; transform: rotate(-90deg); }
.ev-ring .track[b-2wqdrqjwau] { fill: none; stroke: rgba(255, 255, 255, 0.08); stroke-width: 4; }
.ev-ring .value[b-2wqdrqjwau] {
    fill: none;
    stroke: var(--c);
    stroke-width: 4;
    stroke-linecap: round;
    stroke-dasharray: var(--len);
    stroke-dashoffset: var(--off);
    animation: ev-ring-draw-b-2wqdrqjwau 600ms var(--ease-out, ease-out) both;
}

@keyframes ev-ring-draw-b-2wqdrqjwau { from { stroke-dashoffset: var(--len); } to { stroke-dashoffset: var(--off); } }

.ev-ring-digits[b-2wqdrqjwau] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 700;
    color: var(--text-primary, #f0f4f8);
}

.ev-ring.none .ev-ring-digits[b-2wqdrqjwau] { color: var(--text-muted, #64748b); }

.ev-title-text[b-2wqdrqjwau] { flex: 1; min-width: 0; }
.ev-h[b-2wqdrqjwau] { margin: 0; font-size: 15px; font-weight: 600; letter-spacing: -0.01em; }
.ev-sym[b-2wqdrqjwau] { margin-left: 6px; color: var(--text-secondary, #94a3b8); font-weight: 500; }
.ev-sub[b-2wqdrqjwau] { margin-top: 3px; display: flex; flex-wrap: wrap; gap: 5px; font-size: 11px; color: var(--text-muted, #64748b); }
.ev-sub .sep[b-2wqdrqjwau] { color: var(--text-dim, #475569); }
.ev-av[b-2wqdrqjwau] { font-size: 9px; }

.ev-body[b-2wqdrqjwau] { flex: 1; overflow-y: auto; padding: 12px 14px; display: flex; flex-direction: column; gap: 12px; }

.ev-skeleton[b-2wqdrqjwau] { display: grid; gap: 10px; }
.ev-skeleton span[b-2wqdrqjwau] {
    display: block;
    height: 14px;
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.04));
    background-size: 200% 100%;
    animation: ev-shimmer-b-2wqdrqjwau 1.2s linear infinite;
}
.ev-skeleton span:nth-child(1)[b-2wqdrqjwau] { width: 60%; height: 44px; }
.ev-skeleton span:nth-child(3)[b-2wqdrqjwau] { width: 80%; }
.ev-skeleton span:nth-child(4)[b-2wqdrqjwau] { width: 45%; }

@keyframes ev-shimmer-b-2wqdrqjwau { from { background-position: 200% 0; } to { background-position: -200% 0; } }

.ev-state[b-2wqdrqjwau] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    padding: 28px 12px;
    text-align: center;
    color: var(--text-secondary, #94a3b8);
}
.ev-state i[b-2wqdrqjwau] { font-size: 22px; color: var(--text-muted, #64748b); }
.ev-state p[b-2wqdrqjwau] { margin: 0; font-weight: 600; }
.ev-state small[b-2wqdrqjwau] { color: var(--text-muted, #64748b); }
.ev-state.error i[b-2wqdrqjwau] { color: var(--warning, #ffb547); }

.ev-btn[b-2wqdrqjwau], .ev-dossier[b-2wqdrqjwau] {
    height: 30px;
    padding: 0 12px;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.ev-bar-scores[b-2wqdrqjwau] { display: flex; gap: 14px; font-size: 11.5px; color: var(--text-muted, #64748b); }
.ev-bar-scores b[b-2wqdrqjwau] { color: var(--text-primary, #f0f4f8); font-weight: 600; margin-left: 3px; }

.ev-cards[b-2wqdrqjwau] { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }

.ev-card[b-2wqdrqjwau] {
    --v: var(--er-neutral, #64748b);
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 10px 11px;
    border-radius: var(--r-md, 8px);
    border: 1px solid color-mix(in srgb, var(--v) 24%, transparent);
    background: color-mix(in srgb, var(--v) 6%, transparent);
}

.ev-card.bull[b-2wqdrqjwau] { --v: var(--er-bull, #10eb6b); }
.ev-card.bear[b-2wqdrqjwau] { --v: var(--er-bear, #ff5757); }
.ev-card-k[b-2wqdrqjwau] { font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.ev-card-k .ic[b-2wqdrqjwau] { color: var(--v); }
.ev-card-v[b-2wqdrqjwau] { font-size: 12.5px; line-height: 1.35; color: var(--text-primary, #f0f4f8); }

.ev-items[b-2wqdrqjwau] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }

.ev-item[b-2wqdrqjwau] {
    position: relative;
    display: grid;
    grid-template-columns: 20px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 9px 0 10px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
}

.ev-item:last-child[b-2wqdrqjwau] { border-bottom: 0; }
.ev-item-main[b-2wqdrqjwau] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ev-item-lbl[b-2wqdrqjwau] { font-size: 12.5px; line-height: 1.3; }
.ev-item-val[b-2wqdrqjwau] { font-size: 12px; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.ev-item-meta[b-2wqdrqjwau] { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; font-size: 10.5px; color: var(--text-muted, #64748b); white-space: nowrap; }
.ev-item-ago[b-2wqdrqjwau] { cursor: help; }
.ev-item-src[b-2wqdrqjwau] { color: var(--primary, #13dfff); text-decoration: none; }
.ev-item-src:hover[b-2wqdrqjwau] { text-decoration: underline; }

/* Weight bar: a hairline under the item whose length is the item's weight */
.ev-weight[b-2wqdrqjwau] {
    position: absolute;
    left: 30px;
    bottom: -1px;
    height: 2px;
    width: calc(var(--w, 0%) * 0.6);
    border-radius: 1px;
    background: rgba(255, 255, 255, 0.18);
}

.ev-item.up .ev-weight[b-2wqdrqjwau] { background: color-mix(in srgb, var(--er-bull, #10eb6b) 55%, transparent); }
.ev-item.down .ev-weight[b-2wqdrqjwau] { background: color-mix(in srgb, var(--er-bear, #ff5757) 55%, transparent); }

.ev-method[b-2wqdrqjwau] { font-size: 12px; color: var(--text-secondary, #94a3b8); }
.ev-method summary[b-2wqdrqjwau] { cursor: pointer; font-weight: 600; color: var(--text-secondary, #94a3b8); font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; }
.ev-method p[b-2wqdrqjwau] { margin: 8px 0 0; line-height: 1.5; }

.ev-foot[b-2wqdrqjwau] {
    padding: 10px 14px;
    border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    display: flex;
    justify-content: flex-end;
}

.ev-dossier[b-2wqdrqjwau] { background: var(--bg-active-strong, rgba(19, 223, 255, 0.12)); border-color: var(--primary-border, rgba(19, 223, 255, 0.4)); }
.ev-dossier:hover[b-2wqdrqjwau] { background: rgba(19, 223, 255, 0.2); }

@media (prefers-reduced-motion: reduce) {
    .ev-overlay[b-2wqdrqjwau], .evidence-panel.drawer[b-2wqdrqjwau], .ev-ring .value[b-2wqdrqjwau], .ev-skeleton span[b-2wqdrqjwau] { animation: none; }
}

@media (max-width: 900px) {
    .evidence-panel.drawer[b-2wqdrqjwau] {
        top: auto;
        left: 0;
        width: 100%;
        max-height: 85vh;
        border-left: 0;
        border-top: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
        border-radius: 16px 16px 0 0;
        animation: ev-sheet-b-2wqdrqjwau 240ms var(--ease-out, ease-out) both;
    }
    @keyframes ev-sheet-b-2wqdrqjwau { from { transform: translateY(24px); opacity: 0; } to { transform: none; opacity: 1; } }
    .ev-cards[b-2wqdrqjwau] { grid-template-columns: 1fr; }
}
/* /Components/Earnings/Research/EvidenceScoreCell.razor.rz.scp.css */
.er-score[b-prk38ezqtp] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    min-width: 52px;
    padding: 4px 6px;
    border: 0;
    border-radius: var(--r-sm, 4px);
    background: transparent;
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    line-height: 1;
    cursor: pointer;
    transition: background var(--dur-fast, 0.15s) ease;
}

.er-score:not(.static):hover[b-prk38ezqtp],
.er-score:not(.static):focus-visible[b-prk38ezqtp] {
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    outline: none;
}

.er-score:focus-visible[b-prk38ezqtp] { box-shadow: 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }

.er-score.static[b-prk38ezqtp] { cursor: default; }

.er-score-top[b-prk38ezqtp] {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
}

.er-score-digits[b-prk38ezqtp] {
    font-size: 13px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
}

/* Availability is a small drawn dot in muted ink (filled / half / hollow): the meter owns the colour.
   Drawn rather than a unicode glyph so it is crisp at this size in every font. */
.er-score-av[b-prk38ezqtp] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    border: 1px solid #94a3b8;
    box-sizing: border-box;
    transform: translateY(-1px);
}

.er-score.av-full .er-score-av[b-prk38ezqtp] { background: #94a3b8; }
.er-score.av-partial .er-score-av[b-prk38ezqtp] { background: linear-gradient(90deg, #94a3b8 50%, transparent 50%); }
.er-score.av-none .er-score-av[b-prk38ezqtp] { border-color: #64748b; }

.er-score.av-none .er-score-digits[b-prk38ezqtp] { color: var(--text-muted, #64748b); font-weight: 500; }

.er-score.pending[b-prk38ezqtp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    height: 28px;
    color: var(--text-dim, #475569);
    font-size: 13px;
    cursor: help;
}
/* /Components/Earnings/Research/EvidenceSpread.razor.rz.scp.css */
.er-spread[b-tvpyft7aw4] { display: block; overflow: visible; }

.er-spread .axis[b-tvpyft7aw4] { stroke: rgba(255, 255, 255, 0.14); stroke-width: 1; }
.er-spread .cap[b-tvpyft7aw4] { stroke-width: 1.5; stroke-linecap: round; }
.er-spread .cap.bear[b-tvpyft7aw4] { stroke: var(--er-bear, #ff5757); opacity: 0.55; }
.er-spread .cap.bull[b-tvpyft7aw4] { stroke: var(--er-bull, #10eb6b); opacity: 0.55; }
.er-spread .tick[b-tvpyft7aw4] { stroke: rgba(255, 255, 255, 0.3); stroke-width: 1; }

/* Dimension-neutral ink; a 1px surface ring keeps overlapping dots legible */
.er-spread .dot[b-tvpyft7aw4] {
    fill: #cbd5e1;
    stroke: var(--bg-card, #141a24);
    stroke-width: 1;
    transition: r var(--dur-fast, 0.15s) ease;
}

.er-spread .dot.partial[b-tvpyft7aw4] { fill: #94a3b8; }
.er-spread .dot.none[b-tvpyft7aw4] { fill: transparent; stroke: #64748b; stroke-width: 1.2; }
.er-spread .dot:hover[b-tvpyft7aw4],
.er-spread .dot:focus[b-tvpyft7aw4] { r: 3.8; fill: #fff; outline: none; }

.er-spread-empty[b-tvpyft7aw4] { color: var(--text-dim, #475569); font-size: 12px; }
/* /Components/Earnings/Research/ExpectationGapTile.razor.rz.scp.css */
/* The tile's chrome comes from .vt-tile (EarningsDossier.razor.css); this is its inside. */
.gap-lbl[b-xnve8av3zp] { font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); }
.gap-val[b-xnve8av3zp] { font-family: var(--font-display, inherit); font-size: 26px; font-weight: 600; line-height: 1; color: var(--text-primary, #f0f4f8); }
.gap-val.up[b-xnve8av3zp] { color: var(--er-bull, #10eb6b); }
.gap-val.down[b-xnve8av3zp] { color: var(--er-bear, #ff5757); }
.gap-val.none[b-xnve8av3zp] { font-size: 15px; font-weight: 500; color: var(--text-muted, #64748b); letter-spacing: 0.04em; }
.gap-pair[b-xnve8av3zp] { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 2px 6px; font-size: 11.5px; color: var(--text-secondary, #94a3b8); }
.gap-pair b[b-xnve8av3zp] { color: var(--text-primary, #f0f4f8); font-weight: 600; }
.gap-pair .k[b-xnve8av3zp] { font-size: 10px; text-transform: uppercase; letter-spacing: 0.06em; margin-right: 3px; }
.gap-pair .arrow[b-xnve8av3zp] { color: var(--text-muted, #64748b); }
.gap-rev[b-xnve8av3zp] { font-size: 10.5px; color: var(--text-muted, #64748b); text-align: center; }
.gap-rev .pct[b-xnve8av3zp] { color: var(--text-secondary, #94a3b8); }
.gap-sub[b-xnve8av3zp] { font-size: 10px; color: var(--text-muted, #64748b); text-align: center; cursor: help; }
/* /Components/Earnings/Research/ExpectedMoveCell.razor.rz.scp.css */
.er-em[b-5bsjxq6s62] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
    line-height: 1;
}

.er-em-top[b-5bsjxq6s62] { display: inline-flex; align-items: center; gap: 6px; }

.er-em-val[b-5bsjxq6s62] {
    font-size: 13px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    color: var(--text-primary, #f0f4f8);
}

/* Live vs nightly is said by the dot: cyan and breathing when live, muted and still when nightly */
.er-em-dot[b-5bsjxq6s62] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--text-muted, #64748b);
}

.er-em-dot.live[b-5bsjxq6s62] {
    background: var(--er-implied, #13dfff);
    box-shadow: 0 0 0 0 rgba(19, 223, 255, 0.5);
    animation: er-em-pulse-b-5bsjxq6s62 2.4s ease-out infinite;
}

@keyframes er-em-pulse-b-5bsjxq6s62 {
    0% { box-shadow: 0 0 0 0 rgba(19, 223, 255, 0.5); }
    70% { box-shadow: 0 0 0 5px rgba(19, 223, 255, 0); }
    100% { box-shadow: 0 0 0 0 rgba(19, 223, 255, 0); }
}

.er-em-bar[b-5bsjxq6s62] { display: block; overflow: visible; }
.er-em-bar .track[b-5bsjxq6s62] { stroke: rgba(255, 255, 255, 0.1); stroke-width: 2; stroke-linecap: round; }
.er-em-bar .tick[b-5bsjxq6s62] { stroke-width: 2; stroke-linecap: round; }
.er-em-bar .tick.implied[b-5bsjxq6s62] { stroke: var(--er-implied, #13dfff); }
.er-em-bar .tick.hist[b-5bsjxq6s62] { stroke: #94a3b8; }

.er-em-sub[b-5bsjxq6s62] {
    font-size: 10.5px;
    color: var(--text-muted, #64748b);
    font-variant-numeric: tabular-nums;
}

.er-em-empty[b-5bsjxq6s62] { color: var(--text-dim, #475569); font-size: 13px; cursor: help; }

@media (prefers-reduced-motion: reduce) {
    .er-em-dot.live[b-5bsjxq6s62] { animation: none; }
}
/* /Components/Earnings/Research/ExperimentalTag.razor.rz.scp.css */
.er-exp[b-yefo28ts8m] {
    display: inline-block;
    padding: 2px 7px;
    border-radius: var(--r-pill, 999px);
    border: 1px dashed rgba(255, 181, 71, 0.45);
    color: var(--warning, #ffb547);
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 1.2;
    white-space: nowrap;
    cursor: help;
}

.er-exp.compact[b-yefo28ts8m] { padding: 1px 5px; font-size: 8.5px; }
/* /Components/Earnings/Research/FreshnessRail.razor.rz.scp.css */
.er-fresh[b-bb0h1x740b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 14px;
    font-size: 11px;
    color: var(--text-muted, #64748b);
    line-height: 1;
}

.er-fresh-item[b-bb0h1x740b] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: help;
}

.er-fresh-dot[b-bb0h1x740b] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--text-dim, #475569);
}

.er-fresh-item.fresh .er-fresh-dot[b-bb0h1x740b] { background: var(--success, #10eb6b); box-shadow: 0 0 0 2px rgba(16, 235, 107, 0.15); }
.er-fresh-item.stale .er-fresh-dot[b-bb0h1x740b] { background: var(--warning, #ffb547); box-shadow: 0 0 0 2px rgba(255, 181, 71, 0.18); }

.er-fresh-lbl[b-bb0h1x740b] { font-weight: 600; letter-spacing: 0.02em; color: var(--text-secondary, #94a3b8); }
.er-fresh-val[b-bb0h1x740b] { font-variant-numeric: tabular-nums; }
.er-fresh-item.stale .er-fresh-val[b-bb0h1x740b] { color: var(--warning, #ffb547); }

@media (max-width: 900px) {
    .er-fresh[b-bb0h1x740b] { gap: 3px 10px; font-size: 10.5px; }
}
/* /Components/Earnings/Research/GapCell.razor.rz.scp.css */
.er-gap[b-jgm66t1qy1] { display: inline-flex; align-items: center; gap: 4px; font-size: 12.5px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--text-primary, #f0f4f8); cursor: help; }
.er-gap.up[b-jgm66t1qy1] { color: var(--er-bull, #10eb6b); }
.er-gap.down[b-jgm66t1qy1] { color: var(--er-bear, #ff5757); }
.er-gap.none[b-jgm66t1qy1] { color: var(--text-muted, #64748b); font-weight: 400; }
.er-gap-dot[b-jgm66t1qy1] { width: 5px; height: 5px; border-radius: 50%; background: var(--warning, #f5b544); opacity: 0.8; }
/* /Components/Earnings/Research/OvernightChangesStrip.razor.rz.scp.css */
/* The strip mirrors the reaction board: a small uppercase title, a horizontal rail of cards with the verdict
   hue on the left edge. Compact — one headline change per card; the rest is in the title and the dossier. */
.er-ovn[b-oi0jvrr7d9] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.er-ovn-head[b-oi0jvrr7d9] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 0 2px;
    flex-wrap: wrap;
}

.er-ovn-title[b-oi0jvrr7d9] {
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
}

.er-ovn-ic[b-oi0jvrr7d9] { color: var(--er-implied, #13dfff); font-weight: 700; }
.er-ovn-sub[b-oi0jvrr7d9] { font-size: 11.5px; color: var(--text-muted, #64748b); }

.er-ovn-rail[b-oi0jvrr7d9] {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 2px 2px 8px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.12) transparent;
}

.er-ovn-card[b-oi0jvrr7d9] {
    --v: var(--er-neutral, #64748b);
    flex: 0 0 236px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 10px 12px 10px 14px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    box-shadow: inset 3px 0 0 var(--v), var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.4));
    scroll-snap-align: start;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.15s) ease, background var(--dur-fast, 0.15s) ease;
}

.er-ovn-card.v-bull[b-oi0jvrr7d9] { --v: var(--er-bull, #10eb6b); }
.er-ovn-card.v-bear[b-oi0jvrr7d9] { --v: var(--er-bear, #ff5757); }
.er-ovn-card.v-vol[b-oi0jvrr7d9] { --v: var(--er-vol, #a78bfa); }
.er-ovn-card.v-mixed[b-oi0jvrr7d9] { --v: var(--er-mixed, #ffb547); }

.er-ovn-card:hover[b-oi0jvrr7d9], .er-ovn-card:focus-visible[b-oi0jvrr7d9] {
    border-color: var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-card-hover, #1a222e);
    outline: none;
}

.er-ovn-top[b-oi0jvrr7d9] { display: flex; align-items: center; gap: 7px; }

.er-ovn-logo[b-oi0jvrr7d9], .er-ovn-logo-fb[b-oi0jvrr7d9] {
    width: 20px;
    height: 20px;
    border-radius: 5px;
    background: #fff;
    padding: 1px;
    object-fit: contain;
    flex: 0 0 20px;
}

.er-ovn-logo-fb[b-oi0jvrr7d9] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 9.5px;
    font-weight: 700;
}

.er-ovn-sym[b-oi0jvrr7d9] { font-size: 13.5px; font-weight: 700; letter-spacing: 0.02em; color: var(--text-primary, #f0f4f8); }
.er-ovn-when[b-oi0jvrr7d9] { margin-left: auto; font-size: 10.5px; color: var(--text-muted, #64748b); white-space: nowrap; }

.er-ovn-line[b-oi0jvrr7d9] { display: flex; align-items: baseline; gap: 7px; min-width: 0; }

.er-ovn-kind[b-oi0jvrr7d9] {
    flex: 0 0 auto;
    padding: 0 5px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-muted, #64748b);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    line-height: 15px;
    white-space: nowrap;
}

.er-ovn-kind.k-verdict[b-oi0jvrr7d9] { background: color-mix(in srgb, var(--er-mixed, #ffb547) 16%, transparent); color: var(--er-mixed, #ffb547); }

.er-ovn-hl[b-oi0jvrr7d9] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--text-primary, #f0f4f8);
}

.er-ovn-hl .from[b-oi0jvrr7d9] { color: var(--text-muted, #64748b); font-weight: 500; font-variant-numeric: tabular-nums; }
.er-ovn-hl .arrow[b-oi0jvrr7d9] { margin: 0 4px; color: var(--text-dim, #475569); }
.er-ovn-hl .to[b-oi0jvrr7d9] { font-variant-numeric: tabular-nums; }
.er-ovn-card.flip .er-ovn-hl .to[b-oi0jvrr7d9] { color: var(--er-mixed, #ffb547); }

.er-ovn-why[b-oi0jvrr7d9] {
    font-size: 11px;
    line-height: 1.35;
    color: var(--text-secondary, #94a3b8);
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.er-ovn-foot[b-oi0jvrr7d9] { display: flex; align-items: center; gap: 8px; margin-top: auto; }

/* Magnitude bar: ink on glass, length relative to the biggest mover on the strip (the figure is in the title) */
.er-ovn-bar[b-oi0jvrr7d9] {
    flex: 1 1 auto;
    height: 4px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.08);
    overflow: hidden;
    cursor: help;
}

.er-ovn-bar > span[b-oi0jvrr7d9] {
    display: block;
    height: 100%;
    border-radius: 2px;
    background: var(--er-implied, #13dfff);
    transition: width var(--dur-fast, 0.15s) ease;
}

.er-ovn-card.flip .er-ovn-bar > span[b-oi0jvrr7d9] { background: var(--er-mixed, #ffb547); }

.er-ovn-count[b-oi0jvrr7d9] { font-size: 10.5px; color: var(--text-muted, #64748b); white-space: nowrap; font-variant-numeric: tabular-nums; }

@media (max-width: 900px) {
    .er-ovn-card[b-oi0jvrr7d9] { flex-basis: 210px; }
}
/* /Components/Earnings/Research/PatternMatchChip.razor.rz.scp.css */
.pm-chip[b-mt1qkcndcv] {
    display: inline-flex; align-items: center; gap: 5px; align-self: flex-start;
    padding: 3px 9px; border-radius: 999px; font-size: 11px; cursor: help;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1)); background: var(--bg-glass, rgba(255, 255, 255, 0.02));
    color: var(--text-secondary, #94a3b8);
}
.pm-chip .n[b-mt1qkcndcv] { color: var(--text-primary, #f0f4f8); font-weight: 600; }
.pm-chip .sep[b-mt1qkcndcv] { color: var(--text-muted, #64748b); }
.pm-chip .react.up[b-mt1qkcndcv] { color: var(--er-bull, #10eb6b); }
.pm-chip .react.down[b-mt1qkcndcv] { color: var(--er-bear, #ff5757); }
.pm-chip .q[b-mt1qkcndcv] { margin-left: 2px; padding: 0 5px; border-radius: 999px; font-size: 9px; letter-spacing: 0.06em; text-transform: uppercase; border: 1px solid currentColor; color: var(--text-muted, #64748b); }
.pm-chip .q-good[b-mt1qkcndcv] { color: var(--er-bull, #10eb6b); }
.pm-chip .q-weak[b-mt1qkcndcv] { color: var(--er-bear, #ff5757); }
/* /Components/Earnings/Research/PrintCountdown.razor.rz.scp.css */
.er-countdown[b-ytx1c7bz27] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 18px;
    padding: 0 7px 0 5px;
    border-radius: var(--r-pill, 999px);
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    line-height: 1;
}

.er-countdown.compact[b-ytx1c7bz27] { padding: 0 6px 0 4px; height: 16px; font-size: 10px; }

.er-cd-dot[b-ytx1c7bz27] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--warning, #ffb547);
}

/* Inside the last hour the dot breathes; the text says the rest */
.er-countdown.soon[b-ytx1c7bz27] { color: var(--text-primary, #f0f4f8); }
.er-countdown.soon .er-cd-dot[b-ytx1c7bz27] {
    background: var(--warning, #ffb547);
    animation: er-cd-pulse-b-ytx1c7bz27 1.6s ease-in-out infinite;
}

@keyframes er-cd-pulse-b-ytx1c7bz27 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.35; }
}

@media (prefers-reduced-motion: reduce) {
    .er-countdown.soon .er-cd-dot[b-ytx1c7bz27] { animation: none; }
}
/* /Components/Earnings/Research/ReactionBoard.razor.rz.scp.css */
.er-board[b-fklp3wugk0] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.er-board-head[b-fklp3wugk0] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 0 2px;
}

.er-board-title[b-fklp3wugk0] {
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
}

.er-board-sub[b-fklp3wugk0] { font-size: 11.5px; color: var(--text-muted, #64748b); }

.er-board-rail[b-fklp3wugk0] {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 2px 2px 8px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.12) transparent;
}

.er-rb-card[b-fklp3wugk0] {
    --v: var(--er-neutral, #64748b);
    flex: 0 0 236px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 14px 12px 16px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    box-shadow: inset 3px 0 0 var(--v), var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.4));
    scroll-snap-align: start;
    cursor: pointer;
    transition: border-color var(--dur-fast, 0.15s) ease, background var(--dur-fast, 0.15s) ease;
}

.er-rb-card.v-bull[b-fklp3wugk0] { --v: var(--er-bull, #10eb6b); }
.er-rb-card.v-bear[b-fklp3wugk0] { --v: var(--er-bear, #ff5757); }
.er-rb-card.v-vol[b-fklp3wugk0] { --v: var(--er-vol, #a78bfa); }
.er-rb-card.v-mixed[b-fklp3wugk0] { --v: var(--er-mixed, #ffb547); }

.er-rb-card:hover[b-fklp3wugk0], .er-rb-card:focus-visible[b-fklp3wugk0] {
    border-color: var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-card-hover, #1a222e);
    outline: none;
}

.er-rb-top[b-fklp3wugk0] { display: flex; align-items: center; gap: 8px; }

.er-rb-logo[b-fklp3wugk0], .er-rb-logo-fb[b-fklp3wugk0] {
    width: 22px;
    height: 22px;
    border-radius: 6px;
    background: #fff;
    padding: 1px;
    object-fit: contain;
}

.er-rb-logo-fb[b-fklp3wugk0] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 10px;
    font-weight: 700;
}

.er-rb-sym[b-fklp3wugk0] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: pointer;
}

.er-rb-sym:hover[b-fklp3wugk0] { color: var(--primary, #13dfff); }

.er-rb-tm[b-fklp3wugk0] {
    padding: 1px 5px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.er-rb-when[b-fklp3wugk0] { margin-left: auto; font-size: 11px; color: var(--text-muted, #64748b); }

.er-rb-mid[b-fklp3wugk0] { display: flex; flex-direction: column; gap: 6px; min-height: 44px; }

/* Reaction figure: proportional digits in a stat tile, hue on the figure's sign mark only */
.er-rb-react[b-fklp3wugk0] { display: flex; align-items: baseline; gap: 7px; }
.er-rb-react-val[b-fklp3wugk0] {
    font-family: var(--font-display, inherit);
    font-size: 22px;
    font-weight: 600;
    line-height: 1;
    color: var(--text-primary, #f0f4f8);
}
.er-rb-react.none .er-rb-react-val[b-fklp3wugk0] { color: var(--text-dim, #475569); }
.er-rb-react-lbl[b-fklp3wugk0] { font-size: 10.5px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted, #64748b); }
.er-rb-react.up .er-rb-react-lbl[b-fklp3wugk0]::before { content: "▲ "; color: var(--er-bull, #10eb6b); }
.er-rb-react.down .er-rb-react-lbl[b-fklp3wugk0]::before { content: "▼ "; color: var(--er-bear, #ff5757); }

/* Tick flash: the element is re-keyed on every tick so the 300 ms animation restarts */
.er-rb-react.flash-up .er-rb-react-val[b-fklp3wugk0] { animation: er-flash-up-b-fklp3wugk0 300ms ease-out; }
.er-rb-react.flash-down .er-rb-react-val[b-fklp3wugk0] { animation: er-flash-down-b-fklp3wugk0 300ms ease-out; }

@keyframes er-flash-up-b-fklp3wugk0 { 0% { color: var(--er-bull, #10eb6b); } 100% { color: var(--text-primary, #f0f4f8); } }
@keyframes er-flash-down-b-fklp3wugk0 { 0% { color: var(--er-bear, #ff5757); } 100% { color: var(--text-primary, #f0f4f8); } }

.er-rb-eps[b-fklp3wugk0] { font-size: 11.5px; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.er-rb-eps .vs[b-fklp3wugk0] { color: var(--text-muted, #64748b); }
.er-rb-eps .ok[b-fklp3wugk0] { color: var(--er-bull, #10eb6b); font-weight: 600; }
.er-rb-eps .bad[b-fklp3wugk0] { color: var(--er-bear, #ff5757); font-weight: 600; }

.er-rb-bot[b-fklp3wugk0] { display: flex; flex-direction: column; gap: 8px; }

.er-rb-ticks[b-fklp3wugk0] { display: flex; flex-direction: column; gap: 3px; }
.er-rb-ticks svg[b-fklp3wugk0] { display: block; overflow: visible; }
.er-rb-ticks .track[b-fklp3wugk0] { stroke: rgba(255, 255, 255, 0.1); stroke-width: 2; stroke-linecap: round; }
.er-rb-ticks .tick[b-fklp3wugk0] { stroke-width: 2; stroke-linecap: round; }
.er-rb-ticks .tick.implied[b-fklp3wugk0] { stroke: var(--er-implied, #13dfff); }
.er-rb-ticks .tick.projected[b-fklp3wugk0] { stroke: #f0f4f8; }
.er-rb-ticks-lbl[b-fklp3wugk0] { font-size: 10.5px; color: var(--text-muted, #64748b); font-variant-numeric: tabular-nums; }

@media (prefers-reduced-motion: reduce) {
    .er-rb-react.flash-up .er-rb-react-val[b-fklp3wugk0],
    .er-rb-react.flash-down .er-rb-react-val[b-fklp3wugk0] { animation: none; }
}

@media (max-width: 900px) {
    .er-rb-card[b-fklp3wugk0] { flex-basis: 210px; }
}
/* /Components/Earnings/Research/ReactionTape.razor.rz.scp.css */
.er-tape[b-550h0twdxi] { display: block; overflow: visible; }

.er-tape .base[b-550h0twdxi] { stroke: rgba(255, 255, 255, 0.22); stroke-width: 1; }

.er-tape .bar[b-550h0twdxi] { transition: opacity var(--dur-fast, 0.15s) ease; }
.er-tape .bar.up.beat[b-550h0twdxi] { fill: var(--er-bull, #10eb6b); }
.er-tape .bar.down.beat[b-550h0twdxi] { fill: var(--er-bear, #ff5757); }
.er-tape .bar.up.miss[b-550h0twdxi] { fill: transparent; stroke: var(--er-bull, #10eb6b); stroke-width: 1; }
.er-tape .bar.down.miss[b-550h0twdxi] { fill: transparent; stroke: var(--er-bear, #ff5757); stroke-width: 1; }
.er-tape .bar.unknown[b-550h0twdxi] { fill: #64748b; opacity: 0.7; }

.er-tape:hover .bar[b-550h0twdxi] { opacity: 0.45; }
.er-tape .bar:hover[b-550h0twdxi] { opacity: 1; }

.er-tape-empty[b-550h0twdxi] { color: var(--text-dim, #475569); font-size: 12px; }
/* /Components/Earnings/Research/ResearchCommandStrip.razor.rz.scp.css */
.er-strip[b-ri2ms8uwsu] {
    /* backdrop-filter makes this a stacking context: it must sit above the board and table so the
       column popover (rendered inside it) is not painted under them */
    position: relative;
    z-index: 30;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass, rgba(255, 255, 255, 0.02));
    backdrop-filter: blur(8px);
    box-shadow: var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.4));
    font-size: 13px;
}

.er-strip-row[b-ri2ms8uwsu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.er-strip-left[b-ri2ms8uwsu],
.er-strip-right[b-ri2ms8uwsu] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.er-strip-right[b-ri2ms8uwsu] { position: relative; margin-left: auto; }

/* Segmented controls */
.er-seg[b-ri2ms8uwsu] {
    display: inline-flex;
    padding: 2px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
}

.er-seg button[b-ri2ms8uwsu] {
    height: 28px;
    padding: 0 12px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.01em;
    cursor: pointer;
    transition: background var(--dur-fast, 0.15s) ease, color var(--dur-fast, 0.15s) ease;
}

.er-seg button:hover[b-ri2ms8uwsu] { color: var(--text-primary, #f0f4f8); }
.er-seg button.active[b-ri2ms8uwsu] { background: var(--bg-active-strong, rgba(19, 223, 255, 0.12)); color: var(--text-primary, #f0f4f8); }
.er-seg.quiet button[b-ri2ms8uwsu] { padding: 0 10px; font-size: 11px; letter-spacing: 0.04em; }
.er-seg button:focus-visible[b-ri2ms8uwsu] { outline: none; box-shadow: 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }

/* Search */
.er-search[b-ri2ms8uwsu] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.er-search i[b-ri2ms8uwsu] {
    position: absolute;
    left: 10px;
    font-size: 12px;
    color: var(--text-muted, #64748b);
    pointer-events: none;
}

.er-search input[b-ri2ms8uwsu] {
    width: 200px;
    height: 32px;
    padding: 0 26px 0 30px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12.5px;
}

.er-search input[b-ri2ms8uwsu]::placeholder { color: var(--text-muted, #64748b); }
.er-search input:focus[b-ri2ms8uwsu] { outline: none; border-color: var(--border-focus, rgba(19, 223, 255, 0.5)); }
.er-search input[b-ri2ms8uwsu]::-webkit-search-cancel-button { display: none; }

.er-search-clear[b-ri2ms8uwsu] {
    position: absolute;
    right: 6px;
    width: 18px;
    height: 18px;
    border: 0;
    border-radius: 50%;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 13px;
    line-height: 1;
    cursor: pointer;
}

.er-select[b-ri2ms8uwsu] {
    height: 32px;
    padding: 0 28px 0 10px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04)) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%2394a3b8' stroke-width='1.5'/></svg>") no-repeat right 10px center;
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 500;
    appearance: none;
    cursor: pointer;
}

.er-select:focus[b-ri2ms8uwsu] { outline: none; border-color: var(--border-focus, rgba(19, 223, 255, 0.5)); }
.er-select option[b-ri2ms8uwsu] { background: var(--bg-panel, #1e2736); color: var(--text-primary, #f0f4f8); }

.er-cols-btn[b-ri2ms8uwsu] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 32px;
    padding: 0 12px;
    border-radius: var(--r-md, 8px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.er-cols-btn:hover[b-ri2ms8uwsu], .er-cols-btn.active[b-ri2ms8uwsu] { color: var(--text-primary, #f0f4f8); border-color: var(--border-medium, rgba(255, 255, 255, 0.1)); }

/* Verdict chips */
.er-chips[b-ri2ms8uwsu] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.er-chip[b-ri2ms8uwsu] {
    --v: var(--text-secondary, #94a3b8);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    transition: background var(--dur-fast, 0.15s) ease, border-color var(--dur-fast, 0.15s) ease;
}

.er-chip .ic[b-ri2ms8uwsu] { color: var(--v); font-size: 11px; }
.er-chip .thr[b-ri2ms8uwsu] { font-weight: 500; color: var(--text-muted, #64748b); }
.er-chip .n[b-ri2ms8uwsu] {
    min-width: 18px;
    padding: 1px 6px;
    border-radius: var(--r-pill, 999px);
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 11px;
    font-variant-numeric: tabular-nums;
    text-align: center;
}

.er-chip.v-bull[b-ri2ms8uwsu] { --v: var(--er-bull, #10eb6b); }
.er-chip.v-bear[b-ri2ms8uwsu] { --v: var(--er-bear, #ff5757); }
.er-chip.v-vol[b-ri2ms8uwsu] { --v: var(--er-vol, #a78bfa); }
.er-chip.v-conf[b-ri2ms8uwsu] { --v: var(--er-implied, #13dfff); }

.er-chip:hover[b-ri2ms8uwsu] { border-color: var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-primary, #f0f4f8); }
.er-chip.active[b-ri2ms8uwsu] {
    color: var(--text-primary, #f0f4f8);
    border-color: color-mix(in srgb, var(--v) 45%, transparent);
    background: color-mix(in srgb, var(--v) 10%, transparent);
}
.er-chip.active .n[b-ri2ms8uwsu] { background: color-mix(in srgb, var(--v) 18%, transparent); color: var(--text-primary, #f0f4f8); }
.er-chip:focus-visible[b-ri2ms8uwsu] { outline: none; box-shadow: 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }

.er-strip-counts[b-ri2ms8uwsu] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 11.5px;
    color: var(--text-muted, #64748b);
}

.er-strip-counts b[b-ri2ms8uwsu] { color: var(--text-primary, #f0f4f8); font-weight: 600; font-variant-numeric: tabular-nums; }
.er-strip-counts .sep[b-ri2ms8uwsu] { color: var(--text-dim, #475569); }

@media (max-width: 900px) {
    .er-strip[b-ri2ms8uwsu] { padding: 10px 12px; border-radius: var(--r-md, 8px); }
    .er-strip-right[b-ri2ms8uwsu] { margin-left: 0; width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
    .er-search[b-ri2ms8uwsu] { grid-column: 1 / -1; }
    .er-search input[b-ri2ms8uwsu] { width: 100%; }
    .er-select[b-ri2ms8uwsu] { width: 100%; min-width: 0; }
    .er-cols-btn[b-ri2ms8uwsu] { display: none; }   /* the phone renders cards, which have no columns to hide */
    .er-chips[b-ri2ms8uwsu] { overflow-x: auto; flex-wrap: nowrap; width: 100%; padding-bottom: 2px; scrollbar-width: none; }
    .er-chips[b-ri2ms8uwsu]::-webkit-scrollbar { display: none; }
    .er-chip[b-ri2ms8uwsu] { height: 32px; }
    .er-seg button[b-ri2ms8uwsu] { height: 32px; }
    .er-strip-counts[b-ri2ms8uwsu] { display: none; }
}
/* /Components/Earnings/Research/ResearchRowCards.razor.rz.scp.css */
.er-cards[b-y00prj2rxg] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: opacity var(--dur-med, 0.25s) ease;
}

.er-cards.er-dim[b-y00prj2rxg] { opacity: 0.5; pointer-events: none; }

.er-card[b-y00prj2rxg] {
    --v: var(--er-neutral, #64748b);
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    box-shadow: inset 3px 0 0 var(--v);
    overflow: hidden;
}

.er-card.v-bull[b-y00prj2rxg] { --v: var(--er-bull, #10eb6b); }
.er-card.v-bear[b-y00prj2rxg] { --v: var(--er-bear, #ff5757); }
.er-card.v-vol[b-y00prj2rxg] { --v: var(--er-vol, #a78bfa); }
.er-card.v-mixed[b-y00prj2rxg] { --v: var(--er-mixed, #ffb547); }
.er-card.no-forecast[b-y00prj2rxg] { --v: transparent; }
.er-card.open[b-y00prj2rxg] { border-color: var(--border-medium, rgba(255, 255, 255, 0.1)); }

.er-card-head[b-y00prj2rxg] {
    display: grid;
    grid-template-columns: 30px 1fr auto 14px;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 60px;
    padding: 10px 12px 10px 14px;
    border: 0;
    background: none;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.er-card-head:focus-visible[b-y00prj2rxg] { outline: none; box-shadow: inset 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); }

.er-card-logo[b-y00prj2rxg], .er-card-logo-fb[b-y00prj2rxg] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: #fff;
    padding: 2px;
    object-fit: contain;
}

.er-card-logo-fb[b-y00prj2rxg] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 12px;
    font-weight: 700;
}

.er-card-id[b-y00prj2rxg] { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.er-card-line[b-y00prj2rxg] { display: flex; align-items: baseline; gap: 8px; }
/* Phase 3 D: the change chip joins this line; wrapping keeps a long line off the verdict badge */
.er-card-line[b-y00prj2rxg] { flex-wrap: wrap; row-gap: 3px; }
.er-card-sym[b-y00prj2rxg] { font-size: 14.5px; font-weight: 700; letter-spacing: 0.02em; }

.er-card-tm[b-y00prj2rxg] {
    padding: 1px 5px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.er-card-em[b-y00prj2rxg] { font-size: 12px; font-weight: 600; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }

.er-card-when[b-y00prj2rxg] { display: flex; align-items: center; gap: 6px; font-size: 11.5px; color: var(--text-muted, #64748b); white-space: nowrap; overflow: hidden; }
.er-card-company[b-y00prj2rxg] { overflow: hidden; text-overflow: ellipsis; }
.er-card-rep[b-y00prj2rxg] { font-weight: 600; color: var(--text-secondary, #94a3b8); }
.er-card-when .ok[b-y00prj2rxg] { color: var(--er-bull, #10eb6b); font-weight: 700; }
.er-card-when .bad[b-y00prj2rxg] { color: var(--er-bear, #ff5757); font-weight: 700; }

.er-card-right[b-y00prj2rxg] { display: flex; flex-direction: column; align-items: flex-end; gap: 5px; }

.er-card-chev[b-y00prj2rxg] { color: var(--text-dim, #475569); font-size: 18px; transition: transform var(--dur-fast, 0.15s) ease; }
.er-card.open .er-card-chev[b-y00prj2rxg] { transform: rotate(90deg); }

.er-card-body[b-y00prj2rxg] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 12px 12px 14px;
    animation: er-card-in-b-y00prj2rxg 200ms ease-out both;
}

@keyframes er-card-in-b-y00prj2rxg { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }

.er-card-tiles[b-y00prj2rxg] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }

.er-tile[b-y00prj2rxg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    min-height: 56px;
    padding: 8px 6px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.er-tile:disabled[b-y00prj2rxg] { cursor: default; opacity: 0.6; }
.er-tile:active:not(:disabled)[b-y00prj2rxg] { background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); }
.er-tile-lbl[b-y00prj2rxg] { font-size: 9.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-muted, #64748b); }
.er-tile-val[b-y00prj2rxg] { font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; }
.er-tile-av[b-y00prj2rxg] { display: inline-block; width: 6px; height: 6px; margin-left: 4px; border-radius: 50%; border: 1px solid #94a3b8; box-sizing: border-box; vertical-align: middle; }
.er-tile-av.av-full[b-y00prj2rxg] { background: #94a3b8; }
.er-tile-av.av-partial[b-y00prj2rxg] { background: linear-gradient(90deg, #94a3b8 50%, transparent 50%); }
.er-tile-av.av-none[b-y00prj2rxg] { border-color: #64748b; }

.er-card-lock[b-y00prj2rxg] {
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 1px dashed var(--border-medium, rgba(255, 255, 255, 0.1));
    border-radius: var(--r-md, 8px);
    background: transparent;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}

.er-pro[b-y00prj2rxg] {
    display: inline-block;
    margin-left: 4px;
    padding: 1px 6px;
    border-radius: var(--r-pill, 999px);
    background: var(--accent-bg, rgba(167, 139, 250, 0.12));
    color: var(--accent-bright, #c4b5fd);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.er-card-actions[b-y00prj2rxg] { display: flex; align-items: center; gap: 8px; }

.er-card-act[b-y00prj2rxg] {
    height: 36px;
    padding: 0 14px;
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass-light, rgba(255, 255, 255, 0.04));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12.5px;
    font-weight: 600;
    cursor: pointer;
}

.er-card-act.primary[b-y00prj2rxg] { background: var(--bg-active-strong, rgba(19, 223, 255, 0.12)); border-color: var(--primary-border, rgba(19, 223, 255, 0.4)); }
.er-card-tape[b-y00prj2rxg] { margin-left: auto; display: inline-flex; }

.er-cards.er-reveal .er-card[b-y00prj2rxg] {
    animation: er-card-reveal-b-y00prj2rxg 320ms var(--ease-out, ease-out) both;
    animation-delay: calc(var(--i, 0) * 20ms);
}

@keyframes er-card-reveal-b-y00prj2rxg { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
    .er-cards.er-reveal .er-card[b-y00prj2rxg], .er-card-body[b-y00prj2rxg] { animation: none; }
    .er-cards[b-y00prj2rxg] { transition: none; }
}
/* /Components/Earnings/Research/ResearchTable.razor.rz.scp.css */
.er-table-wrap[b-rm4riq3pgt] {
    position: relative;
    max-height: calc(100vh - 300px);
    min-height: 240px;
    overflow: auto;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    box-shadow: var(--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.5));
    transition: opacity var(--dur-med, 0.25s) ease;
}

/* A refetch holds the old rows at half opacity: no skeleton flash */
.er-table-wrap.er-dim[b-rm4riq3pgt] { opacity: 0.5; pointer-events: none; }

.er-table[b-rm4riq3pgt] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 13px;
    color: var(--text-primary, #f0f4f8);
}

/* Header: 10.5px uppercase, letter-spaced, sticky */
.er-table thead th[b-rm4riq3pgt] {
    position: sticky;
    top: 0;
    z-index: 3;
    height: 36px;
    padding: 0 10px;
    border-bottom: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-card, #141a24);
    color: var(--text-secondary, #94a3b8);
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-align: left;
    white-space: nowrap;
}

.er-table thead th.sticky-col[b-rm4riq3pgt] { z-index: 4; }
.er-table thead th.col-score[b-rm4riq3pgt] { text-align: center; cursor: help; }
/* Phase 3 (stream B): the Gap column */
.er-table thead th.col-gap[b-rm4riq3pgt] { text-align: center; cursor: help; }
.er-table td.col-gap[b-rm4riq3pgt] { text-align: center; padding: 4px 6px; }
.er-table thead th.col-locked[b-rm4riq3pgt] { text-align: center; color: var(--text-muted, #64748b); }

/* Header drag-reorder: grab on the movable headers, the one in flight fades, and the target shows a bar on
   the side the dragged header will land (it takes the target's slot) */
.er-table thead th[draggable="true"][b-rm4riq3pgt] { cursor: grab; user-select: none; }
.er-table thead th[draggable="true"]:active[b-rm4riq3pgt] { cursor: grabbing; }
.er-table thead th.dragging[b-rm4riq3pgt] { opacity: 0.45; }
.er-table thead th.drag-over[b-rm4riq3pgt] { color: var(--text-primary, #f0f4f8); background: rgba(19, 223, 255, 0.05); }

.er-table thead th.drag-over[b-rm4riq3pgt]::after {
    content: "";
    position: absolute;
    top: 6px;
    bottom: 6px;
    width: 2px;
    border-radius: 2px;
    background: var(--primary, #13dfff);
    box-shadow: 0 0 6px rgba(19, 223, 255, 0.55);
}

.er-table thead th.drag-over.before[b-rm4riq3pgt]::after { left: -1px; }
.er-table thead th.drag-over.after[b-rm4riq3pgt]::after { right: -1px; }

.er-table td[b-rm4riq3pgt] {
    height: 48px;
    padding: 4px 10px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    vertical-align: middle;
    white-space: nowrap;
}

.er-table tbody tr:last-child td[b-rm4riq3pgt] { border-bottom: 0; }

.er-row[b-rm4riq3pgt] { cursor: pointer; transition: background var(--dur-fast, 0.15s) ease; }
.er-row:hover td[b-rm4riq3pgt], .er-row:focus-within td[b-rm4riq3pgt] { background: var(--bg-card-hover, #1a222e); }
.er-row:focus[b-rm4riq3pgt] { outline: none; }
.er-row:focus-visible td[b-rm4riq3pgt] { background: var(--bg-card-hover, #1a222e); }

/* Verdict ribbon: a 3px left edge in the verdict hue — scan the edge for the day's lean */
.er-row[b-rm4riq3pgt] { --v: var(--er-neutral, #64748b); }
.er-row.v-bull[b-rm4riq3pgt] { --v: var(--er-bull, #10eb6b); }
.er-row.v-bear[b-rm4riq3pgt] { --v: var(--er-bear, #ff5757); }
.er-row.v-vol[b-rm4riq3pgt] { --v: var(--er-vol, #a78bfa); }
.er-row.v-mixed[b-rm4riq3pgt] { --v: var(--er-mixed, #ffb547); }
.er-row.no-forecast[b-rm4riq3pgt] { --v: transparent; }
.er-row td:first-child[b-rm4riq3pgt] { box-shadow: inset 3px 0 0 var(--v); }

/* The one accent glow on the page: the selected row */
.er-row.selected td[b-rm4riq3pgt] { background: var(--bg-selected, rgba(19, 223, 255, 0.08)); }
.er-row.selected td:first-child[b-rm4riq3pgt] { box-shadow: inset 3px 0 0 var(--v), inset 0 0 24px rgba(19, 223, 255, 0.08); }

/* Sticky symbol column needs its own opaque surface */
.sticky-col[b-rm4riq3pgt] {
    position: sticky;
    left: 0;
    z-index: 2;
    background: var(--bg-card, #141a24);
    min-width: 250px;
}

.er-row:hover .sticky-col[b-rm4riq3pgt] { background: var(--bg-card-hover, #1a222e); }
.er-row.selected .sticky-col[b-rm4riq3pgt] { background: #152233; }

/* Symbol cell */
.er-sym[b-rm4riq3pgt] { display: flex; align-items: center; gap: 10px; }

.er-logo[b-rm4riq3pgt], .er-logo-fallback[b-rm4riq3pgt] {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    border-radius: 7px;
    object-fit: contain;
    background: #fff;
    padding: 2px;
}

.er-logo-fallback[b-rm4riq3pgt] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-panel, #1e2736);
    color: var(--text-secondary, #94a3b8);
    font-size: 12px;
    font-weight: 700;
}

.er-sym-text[b-rm4riq3pgt] { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.er-sym-line[b-rm4riq3pgt] { display: flex; align-items: baseline; gap: 8px; min-width: 0; }

.er-ticker[b-rm4riq3pgt] {
    padding: 0;
    border: 0;
    background: none;
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: pointer;
}

.er-ticker:hover[b-rm4riq3pgt] { color: var(--primary, #13dfff); }
.er-ticker:focus-visible[b-rm4riq3pgt] { outline: none; box-shadow: 0 0 0 1px var(--border-focus, rgba(19, 223, 255, 0.5)); border-radius: 2px; }

.er-company[b-rm4riq3pgt] {
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--text-secondary, #94a3b8);
    font-size: 12px;
}

.er-meta[b-rm4riq3pgt] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    color: var(--text-muted, #64748b);
    font-variant-numeric: tabular-nums;
}

.er-tm[b-rm4riq3pgt] {
    padding: 1px 5px;
    border-radius: 3px;
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-secondary, #94a3b8);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.er-liq[b-rm4riq3pgt] {
    padding: 1px 5px;
    border-radius: 3px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    font-size: 9.5px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
}

.er-liq.liq-high[b-rm4riq3pgt] { color: var(--text-secondary, #94a3b8); }
.er-liq.liq-low[b-rm4riq3pgt] { opacity: 0.7; }

.er-reported[b-rm4riq3pgt] { display: inline-flex; align-items: center; gap: 5px; color: var(--text-secondary, #94a3b8); font-weight: 600; }
.er-rep-dot[b-rm4riq3pgt] { width: 5px; height: 5px; border-radius: 50%; background: var(--primary, #13dfff); }
.er-rep-eps[b-rm4riq3pgt] { font-weight: 500; color: var(--text-muted, #64748b); }
.er-rep-eps .ok[b-rm4riq3pgt] { color: var(--er-bull, #10eb6b); font-weight: 700; }
.er-rep-eps .bad[b-rm4riq3pgt] { color: var(--er-bear, #ff5757); font-weight: 700; }

/* Score columns + column wash on hover (CSS only; :has keeps Blazor out of it) */
.er-table td.col-score[b-rm4riq3pgt] { text-align: center; padding: 4px 4px; transition: background var(--dur-fast, 0.15s) ease; }
.er-table:has(td.col-score[data-dim="history"]:hover) [data-dim="history"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="news"]:hover) [data-dim="news"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="peers"]:hover) [data-dim="peers"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="revisions"]:hover) [data-dim="revisions"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="technicals"]:hover) [data-dim="technicals"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="fundamentals"]:hover) [data-dim="fundamentals"][b-rm4riq3pgt] {
    background: rgba(19, 223, 255, 0.05);
}

.er-table:has(td.col-score[data-dim="history"]:hover) th[data-dim="history"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="news"]:hover) th[data-dim="news"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="peers"]:hover) th[data-dim="peers"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="revisions"]:hover) th[data-dim="revisions"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="technicals"]:hover) th[data-dim="technicals"][b-rm4riq3pgt],
.er-table:has(td.col-score[data-dim="fundamentals"]:hover) th[data-dim="fundamentals"][b-rm4riq3pgt] {
    color: var(--text-primary, #f0f4f8);
}

.er-vcell[b-rm4riq3pgt] { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
/* Phase 3 D: verdict chip and the "Changed · n" chip share the first line */
.er-vtop[b-rm4riq3pgt] { display: flex; align-items: center; gap: 6px; }

.er-table td.col-em[b-rm4riq3pgt] { min-width: 96px; }
.er-table td.col-tape[b-rm4riq3pgt] { min-width: 70px; }
.er-table td.col-chevron[b-rm4riq3pgt] { width: 28px; padding-right: 12px; text-align: right; }
.er-chev[b-rm4riq3pgt] { color: var(--text-dim, #475569); font-size: 18px; line-height: 1; transition: color var(--dur-fast, 0.15s) ease, transform var(--dur-fast, 0.15s) ease; display: inline-block; }
.er-row:hover .er-chev[b-rm4riq3pgt] { color: var(--text-secondary, #94a3b8); transform: translateX(2px); }

/* Free tier: one locked group where the evidence would be; no digits anywhere in it */
.pro-locked-cell[b-rm4riq3pgt] {
    text-align: center;
    color: var(--text-muted, #64748b);
    font-size: 12px;
    cursor: pointer;
    transition: color var(--dur-fast, 0.15s) ease;
}

.pro-locked-cell:hover[b-rm4riq3pgt] { color: var(--accent-bright, #c4b5fd); }
.pro-locked-cell .lock[b-rm4riq3pgt] { font-size: 11px; filter: grayscale(0.4); margin-right: 4px; }

.er-pro[b-rm4riq3pgt] {
    display: inline-block;
    margin-left: 4px;
    padding: 1px 6px;
    border-radius: var(--r-pill, 999px);
    background: var(--accent-bg, rgba(167, 139, 250, 0.12));
    color: var(--accent-bright, #c4b5fd);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    vertical-align: middle;
}

/* First render staggers rows in; refetches do not */
.er-table.er-reveal tbody tr.er-row[b-rm4riq3pgt] {
    animation: er-row-in-b-rm4riq3pgt 320ms var(--ease-out, ease-out) both;
    animation-delay: calc(var(--i, 0) * 20ms);
}

@keyframes er-row-in-b-rm4riq3pgt {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .er-table.er-reveal tbody tr.er-row[b-rm4riq3pgt] { animation: none; }
    .er-table-wrap[b-rm4riq3pgt] { transition: none; }
}
/* /Components/Earnings/Research/ScoreMeter.razor.rz.scp.css */
.er-meter[b-9lgoro0f7u] {
    position: relative;
    display: inline-block;
    width: var(--w, 44px);
    height: 4px;
    vertical-align: middle;
}

.er-meter-track[b-9lgoro0f7u] {
    position: absolute;
    inset: 0;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.08);
}

.er-meter-fill[b-9lgoro0f7u] {
    position: absolute;
    top: 0;
    bottom: 0;
    width: var(--fill, 0%);
    border-radius: 2px;
    background: var(--c, #4b5563);
    transition: width var(--dur-med, 0.25s) var(--ease-out, ease-out);
}

.er-meter.bull .er-meter-fill[b-9lgoro0f7u] { left: 50%; border-top-left-radius: 0; border-bottom-left-radius: 0; }
.er-meter.bear .er-meter-fill[b-9lgoro0f7u] { right: 50%; border-top-right-radius: 0; border-bottom-right-radius: 0; }

/* 2px surface gap between the fill and the centre tick so the two never read as one shape */
.er-meter-mid[b-9lgoro0f7u] {
    position: absolute;
    left: 50%;
    top: -2px;
    bottom: -2px;
    width: 1px;
    transform: translateX(-0.5px);
    background: rgba(255, 255, 255, 0.28);
    box-shadow: 0 0 0 1px var(--bg-card, #141a24);
}

.er-meter.draw .er-meter-fill[b-9lgoro0f7u] { animation: er-meter-grow-b-9lgoro0f7u 500ms var(--ease-out, ease-out) both; }

@keyframes er-meter-grow-b-9lgoro0f7u {
    from { width: 0; }
    to { width: var(--fill, 0%); }
}

@media (prefers-reduced-motion: reduce) {
    .er-meter.draw .er-meter-fill[b-9lgoro0f7u] { animation: none; }
    .er-meter-fill[b-9lgoro0f7u] { transition: none; }
}
/* /Components/Earnings/Research/SimilarSetups.razor.rz.scp.css */
.ss[b-vwxpe5n428] { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-glass, rgba(255, 255, 255, 0.02)); }
.ss h4[b-vwxpe5n428] { margin: 0; font-size: 12px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-secondary, #94a3b8); display: flex; flex-wrap: wrap; gap: 8px; align-items: baseline; }
.ss-note[b-vwxpe5n428] { font-size: 10.5px; font-weight: 400; letter-spacing: 0; text-transform: none; color: var(--text-muted, #64748b); }
.ss-stats[b-vwxpe5n428] { margin: 0; font-size: 12px; line-height: 1.6; color: var(--text-secondary, #94a3b8); }
.ss-stats b[b-vwxpe5n428] { color: var(--text-primary, #f0f4f8); font-weight: 600; }
.ss-stats .sep[b-vwxpe5n428] { margin: 0 6px; color: var(--text-muted, #64748b); }
.ss-stats .up[b-vwxpe5n428], .ss-table .up[b-vwxpe5n428] { color: var(--er-bull, #10eb6b); }
.ss-stats .down[b-vwxpe5n428], .ss-table .down[b-vwxpe5n428] { color: var(--er-bear, #ff5757); }
.ss-stats .q[b-vwxpe5n428] { padding: 0 6px; border-radius: 999px; font-size: 10px; letter-spacing: 0.06em; text-transform: uppercase; border: 1px solid currentColor; color: var(--text-muted, #64748b); }
.ss-stats .q-good[b-vwxpe5n428] { color: var(--er-bull, #10eb6b); }
.ss-stats .q-weak[b-vwxpe5n428] { color: var(--er-bear, #ff5757); }
.ss-table[b-vwxpe5n428] { width: 100%; border-collapse: collapse; font-size: 12px; }
.ss-table th[b-vwxpe5n428] { padding: 6px 8px; border-bottom: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-secondary, #94a3b8); font-size: 10.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; text-align: left; }
.ss-table td[b-vwxpe5n428] { padding: 5px 8px; border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06)); white-space: nowrap; }
.ss-table .num[b-vwxpe5n428] { text-align: right; font-variant-numeric: tabular-nums; }
.ss-table .muted[b-vwxpe5n428] { color: var(--text-muted, #64748b); font-size: 10.5px; }
.ss-table .mk.ok[b-vwxpe5n428] { color: var(--er-bull, #10eb6b); }
.ss-table .mk.bad[b-vwxpe5n428] { color: var(--er-bear, #ff5757); }
.ss-sym[b-vwxpe5n428] { color: var(--primary, #13dfff); text-decoration: none; font-weight: 600; }
.ss-sym:hover[b-vwxpe5n428] { text-decoration: underline; }
.ss-empty[b-vwxpe5n428], .ss-foot[b-vwxpe5n428] { margin: 0; font-size: 11.5px; color: var(--text-muted, #64748b); line-height: 1.5; }
.ss-meta[b-vwxpe5n428] { color: var(--text-muted, #64748b); }
@media (max-width: 900px) {
    .ss-table th:nth-child(3)[b-vwxpe5n428], .ss-table td:nth-child(3)[b-vwxpe5n428] { display: none; }
}
/* /Components/Earnings/Research/VerdictBadge.razor.rz.scp.css */
.er-verdict[b-d22lx7gn2u] {
    --v: var(--er-neutral, #64748b);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 24px;
    padding: 0 9px 0 7px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid color-mix(in srgb, var(--v) 30%, transparent);
    background: color-mix(in srgb, var(--v) 9%, transparent);
    color: var(--text-primary, #f0f4f8);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.01em;
    white-space: nowrap;
    line-height: 1;
}

.er-verdict.large[b-d22lx7gn2u] { height: 30px; padding: 0 12px 0 10px; font-size: 13px; gap: 8px; }

.er-verdict.v-bull[b-d22lx7gn2u] { --v: var(--er-bull, #10eb6b); }
.er-verdict.v-bear[b-d22lx7gn2u] { --v: var(--er-bear, #ff5757); }
.er-verdict.v-vol[b-d22lx7gn2u] { --v: var(--er-vol, #a78bfa); }
.er-verdict.v-mixed[b-d22lx7gn2u] { --v: var(--er-mixed, #ffb547); }
.er-verdict.v-neutral[b-d22lx7gn2u] { --v: var(--er-neutral, #64748b); color: var(--text-secondary, #94a3b8); }

/* The icon is the mark that carries the hue; the label stays ink */
.er-vicon[b-d22lx7gn2u] {
    color: var(--v);
    font-size: 11px;
    line-height: 1;
}

.er-verdict.large .er-vicon[b-d22lx7gn2u] { font-size: 13px; }

.er-vconf[b-d22lx7gn2u] {
    margin-left: 2px;
    padding-left: 7px;
    border-left: 1px solid color-mix(in srgb, var(--v) 30%, transparent);
    color: var(--text-secondary, #94a3b8);
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.er-vconf.lock[b-d22lx7gn2u] { font-size: 10px; filter: grayscale(1); opacity: 0.8; }
/* /Components/IntradayBehavior/BehaviorAlertForm.razor.rz.scp.css */
.bh-alerts[b-hw3kyyzu78] {
    margin-top: 14px;
    padding: 12px 14px;
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.015);
}

.bh-alerts header[b-hw3kyyzu78] { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.bh-alerts h3[b-hw3kyyzu78] { margin: 0; font-size: 0.9rem; font-weight: 700; display: flex; align-items: center; gap: 6px; }
.bh-alerts-usage[b-hw3kyyzu78] { font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.bh-alerts-intro[b-hw3kyyzu78] { font-size: 0.76rem; color: var(--text-muted, #8b949e); margin: 6px 0 10px; }

.bh-alerts-form[b-hw3kyyzu78] { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 10px 14px; }
.bh-alerts-form label[b-hw3kyyzu78] { display: flex; flex-direction: column; gap: 3px; font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.bh-alerts-form select[b-hw3kyyzu78] {
    padding: 6px 8px;
    border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-bg, #0d1117);
    color: var(--text-primary, #e6edf3);
    font-size: 0.8rem;
}

.bh-alerts-channels[b-hw3kyyzu78] { display: flex; gap: 10px; align-items: center; padding-bottom: 6px; }
.bh-alerts-channels label[b-hw3kyyzu78] { flex-direction: row; align-items: center; gap: 4px; font-size: 0.78rem; color: var(--text-secondary, #c9d1d9); }

.bh-seg[b-hw3kyyzu78] { display: inline-flex; border: 1px solid var(--terminal-border, #30363d); border-radius: 8px; overflow: hidden; }
.bh-seg button[b-hw3kyyzu78] { border: none; background: transparent; color: var(--text-secondary, #c9d1d9); padding: 6px 10px; font-size: 0.76rem; cursor: pointer; }
.bh-seg button + button[b-hw3kyyzu78] { border-left: 1px solid var(--terminal-border, #30363d); }
.bh-seg button.on[b-hw3kyyzu78] { background: rgba(167, 139, 250, 0.18); color: #fff; font-weight: 600; }

.bh-btn[b-hw3kyyzu78] {
    display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 8px;
    border: 1px solid var(--accent, #a78bfa); background: rgba(167, 139, 250, 0.15); color: #fff;
    font-size: 0.8rem; cursor: pointer;
}
.bh-btn:disabled[b-hw3kyyzu78] { opacity: 0.5; cursor: default; }
.bh-btn.link[b-hw3kyyzu78] { border: none; background: transparent; color: var(--text-muted, #8b949e); padding: 2px 6px; font-size: 0.74rem; }
.bh-btn.link:hover[b-hw3kyyzu78] { color: var(--text-primary, #e6edf3); }
.bh-btn.link.danger:hover[b-hw3kyyzu78] { color: #f85149; }

.bh-alerts-error[b-hw3kyyzu78] { margin-top: 8px; font-size: 0.78rem; color: #f85149; }
.bh-alerts-saved[b-hw3kyyzu78] { margin-top: 8px; font-size: 0.78rem; color: #3fb950; }

.bh-alerts-list[b-hw3kyyzu78] { list-style: none; margin: 10px 0 0; padding: 0; }
.bh-alerts-list li[b-hw3kyyzu78] {
    display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px;
    padding: 6px 0; border-top: 1px solid rgba(48, 54, 61, 0.5); font-size: 0.78rem;
}
.bh-alerts-list li.paused[b-hw3kyyzu78] { opacity: 0.6; }
.bh-alerts-cond[b-hw3kyyzu78] { flex: 1; min-width: 220px; }
.bh-alerts-status[b-hw3kyyzu78] { font-size: 0.72rem; color: var(--text-muted, #8b949e); }
/* /Components/IntradayBehavior/BehaviorCompareGrid.razor.rz.scp.css */
.bh-cmp-wrap[b-7hqygtwgmz] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
}

.bh-cmp[b-7hqygtwgmz] {
    display: grid;
    gap: 2px;
    min-width: max-content;
    font-variant-numeric: tabular-nums;
}

.bh-head[b-7hqygtwgmz] {
    font-size: 0.68rem;
    color: var(--text-muted, #8b949e);
    text-align: center;
    padding: 2px 0 4px;
    white-space: nowrap;
}

.bh-head-sym[b-7hqygtwgmz] { text-align: left; padding-left: 8px; }

.bh-sym[b-7hqygtwgmz] {
    position: sticky;
    left: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 6px 0 8px;
    min-height: 40px;
    background: var(--terminal-surface, #161b22);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.15s ease;
}

.bh-sym:hover[b-7hqygtwgmz] { border-color: var(--accent, #a78bfa); }
.bh-sym.selected[b-7hqygtwgmz] { border-color: var(--accent, #a78bfa); box-shadow: inset 3px 0 0 var(--accent, #a78bfa); }
.bh-sym.reference[b-7hqygtwgmz] { cursor: default; opacity: 0.75; }
.bh-sym.reference:hover[b-7hqygtwgmz] { border-color: var(--terminal-border, #30363d); }

.bh-sym-name[b-7hqygtwgmz] { font-weight: 700; font-size: 0.85rem; }
.bh-sym-n[b-7hqygtwgmz] { font-size: 0.66rem; color: var(--text-muted, #8b949e); }

.bh-sym-x[b-7hqygtwgmz] {
    margin-left: auto;
    border: none;
    background: transparent;
    color: var(--text-muted, #8b949e);
    font-size: 1rem;
    line-height: 1;
    padding: 2px 4px;
    border-radius: 4px;
    cursor: pointer;
}

.bh-sym-x:hover[b-7hqygtwgmz] { color: #f85149; background: rgba(248, 81, 73, 0.12); }

.bh-cell[b-7hqygtwgmz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border-radius: 4px;
    color: #f0f6fc;
    cursor: default;
}

.bh-v[b-7hqygtwgmz] { font-size: 0.72rem; font-weight: 600; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: -0.02em; }
.bh-c[b-7hqygtwgmz] { font-size: 0.6rem; opacity: 0.75; }

.bh-cell.low .bh-v[b-7hqygtwgmz] { opacity: 0.8; }

.bh-cell.toofew[b-7hqygtwgmz] {
    background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.06) 0 2px, transparent 2px 7px) !important;
    color: var(--text-muted, #8b949e);
}

.bh-cell.reference[b-7hqygtwgmz] { filter: saturate(0.7); }

.bh-rowmsg[b-7hqygtwgmz] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    min-height: 40px;
    font-size: 0.8rem;
    color: var(--text-muted, #8b949e);
    background: var(--terminal-surface, #161b22);
    border-radius: 4px;
}

.bh-rowmsg.error[b-7hqygtwgmz] { color: #f85149; }

.bh-spinner[b-7hqygtwgmz] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--terminal-border, #30363d);
    border-top-color: var(--accent, #a78bfa);
    animation: bh-spin-b-7hqygtwgmz 0.8s linear infinite;
}

@keyframes bh-spin-b-7hqygtwgmz { to { transform: rotate(360deg); } }
/* /Components/IntradayBehavior/BehaviorEntryWindowsAdmin.razor.rz.scp.css */
.bh-admin[b-9lbdz57yf8] {
    margin-top: 20px;
    padding: 16px;
    border: 1px dashed rgba(248, 81, 73, 0.55);
    border-radius: 12px;
    background: rgba(248, 81, 73, 0.03);
}

.bh-admin-head[b-9lbdz57yf8] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.bh-admin-head h3[b-9lbdz57yf8] { margin: 0; font-size: 1rem; font-weight: 800; }

.bh-admin-badge[b-9lbdz57yf8] {
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #f85149;
    border: 1px solid rgba(248, 81, 73, 0.6);
    border-radius: 999px;
    padding: 2px 8px;
}

.bh-admin-intro[b-9lbdz57yf8] { font-size: 0.78rem; color: var(--text-muted, #8b949e); margin: 8px 0 12px; }

.bh-admin-picks[b-9lbdz57yf8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 10px;
    margin-bottom: 14px;
}

.bh-pick[b-9lbdz57yf8] {
    padding: 12px;
    border-radius: 10px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-surface, #161b22);
}

.bh-pick.long[b-9lbdz57yf8] { box-shadow: inset 3px 0 0 #3fb950; }
.bh-pick.short[b-9lbdz57yf8] { box-shadow: inset 3px 0 0 #f85149; }
.bh-pick.none[b-9lbdz57yf8] { opacity: 0.8; }
.bh-pick-label[b-9lbdz57yf8] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.bh-pick-win[b-9lbdz57yf8] { font-size: 1.05rem; font-weight: 800; margin: 4px 0; }
.bh-pick-num[b-9lbdz57yf8] { font-size: 0.85rem; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.bh-pick-sub[b-9lbdz57yf8], .bh-pick-none[b-9lbdz57yf8] { font-size: 0.74rem; color: var(--text-muted, #8b949e); margin-top: 4px; }

.bh-admin-table-wrap[b-9lbdz57yf8] { overflow-x: auto; }

.bh-admin-table[b-9lbdz57yf8] {
    width: 100%;
    min-width: 820px;
    border-collapse: collapse;
    font-size: 0.76rem;
    font-variant-numeric: tabular-nums;
}

.bh-admin-table th[b-9lbdz57yf8] {
    font-size: 0.66rem;
    color: var(--text-muted, #8b949e);
    text-align: right;
    padding: 4px 8px;
    border-bottom: 1px solid var(--terminal-border, #30363d);
    white-space: nowrap;
}

.bh-admin-table th.grp[b-9lbdz57yf8] { text-align: center; text-transform: uppercase; letter-spacing: 0.05em; }
.bh-admin-table th.grp.long[b-9lbdz57yf8] { color: #3fb950; }
.bh-admin-table th.grp.short[b-9lbdz57yf8] { color: #f85149; }

.bh-admin-table td[b-9lbdz57yf8] {
    text-align: right;
    padding: 4px 8px;
    border-bottom: 1px solid rgba(48, 54, 61, 0.5);
    white-space: nowrap;
}

.bh-admin-table .left[b-9lbdz57yf8] { text-align: left; }
.bh-admin-table .num[b-9lbdz57yf8] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.bh-admin-table .muted[b-9lbdz57yf8] { color: var(--text-muted, #8b949e); }
.bh-admin-table .up[b-9lbdz57yf8] { color: #3fb950; }
.bh-admin-table .down[b-9lbdz57yf8] { color: #f85149; }
.bh-admin-table td.clears[b-9lbdz57yf8] { font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.bh-admin-table tr.best-long td:first-child[b-9lbdz57yf8] { box-shadow: inset 3px 0 0 #3fb950; }
.bh-admin-table tr.best-short td:first-child[b-9lbdz57yf8] { box-shadow: inset 3px 0 0 #f85149; }

.bh-admin-caveats[b-9lbdz57yf8] { margin: 12px 0 0; padding-left: 18px; font-size: 0.74rem; color: var(--text-muted, #8b949e); }
.bh-admin-caveats li[b-9lbdz57yf8] { margin-bottom: 3px; }
/* /Components/IntradayBehavior/BehaviorOverlayModal.razor.rz.scp.css */
/* Session overlay. Everything inside .ov-filters, .ov-daylist and .ov-tip is created by intradayOverlay.js, so
   those rules go through ::deep (scoped attributes are only on elements Blazor renders). */

.ov-backdrop[b-kvrkhhciso] {
    position: fixed;
    inset: 0;
    z-index: 2000; /* above the sticky nav (≤1100), below alert pop-ups (10000) */
    display: flex;
    justify-content: center;
    padding: 18px;
    background: rgba(3, 6, 12, 0.74);
    backdrop-filter: blur(6px);
    animation: ov-fade-b-kvrkhhciso 0.2s ease-out;
}

.ov-shell[b-kvrkhhciso] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1640px;
    overflow: hidden;
    border-radius: 18px;
    border: 1px solid rgba(167, 139, 250, 0.28);
    background:
        radial-gradient(1100px 480px at 0% -12%, rgba(167, 139, 250, 0.13), transparent 62%),
        radial-gradient(900px 520px at 100% 112%, rgba(44, 254, 231, 0.07), transparent 60%),
        #0b0f17;
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.65), inset 0 0 0 1px rgba(255, 255, 255, 0.03);
    color: var(--text-primary, #e6edf3);
    /* backwards only: a transform left on the shell would make the fixed tooltip position against it */
    animation: ov-rise-b-kvrkhhciso 0.34s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
}

.ov-glow[b-kvrkhhciso] {
    position: absolute;
    width: 460px;
    height: 460px;
    border-radius: 50%;
    filter: blur(100px);
    opacity: 0.28;
    pointer-events: none;
}
.ov-glow.a[b-kvrkhhciso] { background: #7c3aed; top: -260px; left: -140px; animation: ov-drift-b-kvrkhhciso 16s ease-in-out infinite alternate; }
.ov-glow.b[b-kvrkhhciso] { background: #0891b2; bottom: -300px; right: -160px; animation: ov-drift-b-kvrkhhciso 20s ease-in-out infinite alternate-reverse; }

/* ══ Header ══ */
.ov-head[b-kvrkhhciso] {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 18px;
    padding: 14px 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(11, 15, 23, 0.6);
    backdrop-filter: blur(8px);
}
.ov-brand[b-kvrkhhciso] { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ov-mark[b-kvrkhhciso] {
    flex: none;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: linear-gradient(135deg, #a78bfa 0%, #3b82f6 60%, #2cfee7 130%);
    color: #fff;
    font-size: 1.15rem;
    box-shadow: 0 0 22px rgba(167, 139, 250, 0.45);
}
.ov-title[b-kvrkhhciso] { font-size: 1.08rem; font-weight: 800; letter-spacing: -0.01em; white-space: nowrap; }
.ov-sym[b-kvrkhhciso] {
    margin-left: 6px;
    padding: 2px 8px;
    border-radius: 7px;
    background: rgba(167, 139, 250, 0.16);
    border: 1px solid rgba(167, 139, 250, 0.35);
    font-size: 0.9rem;
}
.ov-sub[b-kvrkhhciso] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 0.72rem; color: var(--text-muted, #8b949e); margin-top: 2px; }
.ov-busy[b-kvrkhhciso] { display: inline-flex; align-items: center; gap: 6px; color: var(--accent, #a78bfa); }

.ov-tabs[b-kvrkhhciso] { display: flex; gap: 6px; flex-wrap: wrap; }
.ov-tab[b-kvrkhhciso] {
    padding: 5px 11px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
    color: var(--text-secondary, #c9d1d9);
    font-weight: 700;
    font-size: 0.78rem;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}
.ov-tab:hover[b-kvrkhhciso] { border-color: rgba(167, 139, 250, 0.6); }
.ov-tab.on[b-kvrkhhciso] { color: #fff; background: rgba(167, 139, 250, 0.22); border-color: rgba(167, 139, 250, 0.7); box-shadow: 0 0 14px rgba(167, 139, 250, 0.3); }

.ov-ctls[b-kvrkhhciso] { display: flex; gap: 10px; flex-wrap: wrap; margin-left: auto; }
.ov-seg[b-kvrkhhciso] { display: inline-flex; border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 9px; overflow: hidden; background: rgba(255, 255, 255, 0.02); }
.ov-seg button[b-kvrkhhciso] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 11px;
    border: none;
    background: transparent;
    color: var(--text-secondary, #c9d1d9);
    font-size: 0.78rem;
    cursor: pointer;
}
.ov-seg button + button[b-kvrkhhciso] { border-left: 1px solid rgba(255, 255, 255, 0.08); }
.ov-seg button:hover[b-kvrkhhciso] { background: rgba(167, 139, 250, 0.08); }
.ov-seg button.on[b-kvrkhhciso] { background: linear-gradient(135deg, rgba(167, 139, 250, 0.32), rgba(59, 130, 246, 0.22)); color: #fff; font-weight: 700; }
.ov-seg button.locked[b-kvrkhhciso] { color: var(--text-muted, #8b949e); }
.ov-seg button i[b-kvrkhhciso] { font-size: 0.62rem; }

.ov-close[b-kvrkhhciso] {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-primary, #e6edf3);
    cursor: pointer;
    transition: transform 0.15s, border-color 0.15s;
}
.ov-close:hover[b-kvrkhhciso] { border-color: rgba(167, 139, 250, 0.7); transform: rotate(90deg); }

.ov-upgrade[b-kvrkhhciso] { position: relative; z-index: 2; display: flex; gap: 8px; align-items: flex-start; padding: 10px 18px 0; }
.ov-upgrade > :first-child[b-kvrkhhciso] { flex: 1; }
.ov-x[b-kvrkhhciso] { border: none; background: transparent; color: var(--text-muted, #8b949e); font-size: 1.2rem; cursor: pointer; }

/* ══ Body ══ */
.ov-body[b-kvrkhhciso] {
    position: relative;
    z-index: 1;
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 16px 18px 28px;
    transition: opacity 0.2s ease;
}
.ov-body.stale[b-kvrkhhciso] { opacity: 0.55; }

.ov-empty[b-kvrkhhciso] { padding: 60px 16px; text-align: center; color: var(--text-secondary, #c9d1d9); }

.ov-skeleton[b-kvrkhhciso] { display: flex; flex-direction: column; gap: 14px; }
.ov-skel-hero[b-kvrkhhciso] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    height: clamp(300px, 44vh, 520px);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    color: var(--text-muted, #8b949e);
    font-size: 0.85rem;
    background: linear-gradient(100deg, rgba(255, 255, 255, 0.02) 30%, rgba(167, 139, 250, 0.08) 50%, rgba(255, 255, 255, 0.02) 70%) 0 0 / 300% 100%;
    animation: ov-shimmer-b-kvrkhhciso 1.6s linear infinite;
}
.ov-skel-row[b-kvrkhhciso] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.ov-skel-row span[b-kvrkhhciso] { height: 86px; border-radius: 14px; background: rgba(255, 255, 255, 0.03); border: 1px solid rgba(255, 255, 255, 0.05); }

.ov-spin[b-kvrkhhciso] {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid rgba(167, 139, 250, 0.25);
    border-top-color: var(--accent, #a78bfa);
    animation: ov-rot-b-kvrkhhciso 0.8s linear infinite;
}
.ov-spin.big[b-kvrkhhciso] { width: 30px; height: 30px; border-width: 3px; }

/* ══ Verdict ══ */
.ov-verdict[b-kvrkhhciso] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 340px);
    gap: 18px;
    padding: 18px 20px;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid rgba(167, 139, 250, 0.3);
    background: linear-gradient(135deg, rgba(167, 139, 250, 0.13), rgba(59, 130, 246, 0.05) 60%, rgba(44, 254, 231, 0.04));
}
.ov-verdict.up[b-kvrkhhciso] { border-color: rgba(63, 185, 80, 0.42); }
.ov-verdict.down[b-kvrkhhciso] { border-color: rgba(248, 81, 73, 0.42); }
.ov-verdict[b-kvrkhhciso]::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, 0.06) 50%, transparent 65%);
    transform: translateX(-100%);
    animation: ov-sheen-b-kvrkhhciso 3.2s ease-in-out 0.4s 1;
    pointer-events: none;
}
.ov-kicker[b-kvrkhhciso] { font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--accent, #a78bfa); font-weight: 700; }
.ov-verdict-title[b-kvrkhhciso] {
    margin: 4px 0 6px;
    font-size: clamp(1.35rem, 2.5vw, 2.1rem);
    font-weight: 850;
    letter-spacing: -0.02em;
    line-height: 1.12;
    background: linear-gradient(90deg, #ffffff, #c4b5fd);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.ov-verdict.up .ov-verdict-title[b-kvrkhhciso] { background-image: linear-gradient(90deg, #ffffff, #7ee787); }
.ov-verdict.down .ov-verdict-title[b-kvrkhhciso] { background-image: linear-gradient(90deg, #ffffff, #ffa198); }
.ov-verdict-body[b-kvrkhhciso] { font-size: 0.95rem; color: var(--text-primary, #e6edf3); margin-bottom: 8px; }
.ov-verdict-fine[b-kvrkhhciso] { font-size: 0.74rem; color: var(--text-muted, #8b949e); margin-top: 3px; max-width: 900px; }

.ov-verdict-side[b-kvrkhhciso] { display: flex; flex-direction: column; gap: 10px; justify-content: center; }
.ov-meter[b-kvrkhhciso] { padding: 12px 14px; border-radius: 12px; background: rgba(0, 0, 0, 0.25); border: 1px solid rgba(255, 255, 255, 0.07); }
.ov-meter-num[b-kvrkhhciso] { font-size: 2rem; font-weight: 850; letter-spacing: -0.02em; line-height: 1; }
.ov-meter-num span[b-kvrkhhciso] { font-size: 1rem; color: var(--text-muted, #8b949e); font-weight: 600; }
.ov-meter-label[b-kvrkhhciso] { font-size: 0.72rem; color: var(--text-secondary, #c9d1d9); margin: 4px 0 8px; }
.ov-meter-bar[b-kvrkhhciso] { position: relative; height: 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.06); }
.ov-meter-bar .fill[b-kvrkhhciso] {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #a78bfa, #60a5fa);
    box-shadow: 0 0 10px rgba(167, 139, 250, 0.6);
    animation: ov-grow-b-kvrkhhciso 1s cubic-bezier(0.2, 0.8, 0.2, 1) 0.2s backwards;
    transform-origin: left;
}
.ov-meter-bar .luck[b-kvrkhhciso] { position: absolute; top: -4px; bottom: -4px; width: 2px; margin-left: -1px; background: #facc15; border-radius: 2px; }
.ov-meter-foot[b-kvrkhhciso] { font-size: 0.68rem; color: var(--text-muted, #8b949e); margin-top: 6px; }
.ov-meter-foot[b-kvrkhhciso]::before { content: ""; display: inline-block; width: 2px; height: 9px; margin-right: 6px; background: #facc15; vertical-align: -1px; }

.ov-today[b-kvrkhhciso] {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    padding: 9px 12px;
    border-radius: 12px;
    font-size: 0.76rem;
    color: var(--text-primary, #e6edf3);
    background: rgba(44, 254, 231, 0.07);
    border: 1px solid rgba(44, 254, 231, 0.3);
}
.ov-live-dot[b-kvrkhhciso] { flex: none; width: 8px; height: 8px; margin-top: 4px; border-radius: 50%; background: #2cfee7; box-shadow: 0 0 0 0 rgba(44, 254, 231, 0.6); animation: ov-pulse-b-kvrkhhciso 1.8s ease-out infinite; }

.ov-warn[b-kvrkhhciso] {
    display: flex;
    gap: 8px;
    align-items: center;
    margin-top: 12px;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 0.78rem;
    background: rgba(210, 153, 34, 0.08);
    border: 1px solid rgba(210, 153, 34, 0.35);
}

/* ══ Cards ══ */
.ov-main[b-kvrkhhciso] { display: grid; grid-template-columns: minmax(0, 1fr) 290px; gap: 14px; margin-top: 14px; }

.ov-card[b-kvrkhhciso] {
    padding: 14px 16px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: rgba(22, 27, 34, 0.62);
    backdrop-filter: blur(6px);
}
.ov-card-head[b-kvrkhhciso] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 14px; margin-bottom: 10px; }
.ov-card-head h3[b-kvrkhhciso] { margin: 0; font-size: 0.95rem; font-weight: 800; }
.ov-card-head h3 span[b-kvrkhhciso] { margin-left: 6px; font-size: 0.7rem; font-weight: 400; color: var(--text-muted, #8b949e); }

.ov-filters[b-kvrkhhciso] { display: flex; flex-wrap: wrap; gap: 5px; }
.ov-filters[b-kvrkhhciso]  .ov-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
    color: var(--text-secondary, #c9d1d9);
    font-size: 0.72rem;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
}
.ov-filters[b-kvrkhhciso]  .ov-chip:hover:not(:disabled) { border-color: rgba(167, 139, 250, 0.6); }
.ov-filters[b-kvrkhhciso]  .ov-chip.on { background: rgba(255, 255, 255, 0.92); color: #0b0f17; border-color: transparent; font-weight: 700; }
.ov-filters[b-kvrkhhciso]  .ov-chip:disabled { opacity: 0.35; cursor: default; }
.ov-filters[b-kvrkhhciso]  .ov-chip-n { font-size: 0.64rem; opacity: 0.7; font-variant-numeric: tabular-nums; }

.ov-legend[b-kvrkhhciso] { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: -2px 0 6px; font-size: 0.68rem; color: var(--text-muted, #8b949e); }
.ov-legend span[b-kvrkhhciso] { display: inline-flex; align-items: center; gap: 6px; }
.ov-legend i[b-kvrkhhciso] { display: inline-block; }
.ov-legend i.ln[b-kvrkhhciso] { width: 14px; height: 2px; border-radius: 2px; }
.ov-legend i.ln.up[b-kvrkhhciso] { background: #3fb950; opacity: 0.7; }
.ov-legend i.ln.down[b-kvrkhhciso] { background: #f85149; opacity: 0.7; }
.ov-legend i.ln.half[b-kvrkhhciso] { background: #8b949e; }
.ov-legend i.ln.med[b-kvrkhhciso] { height: 3px; background: linear-gradient(90deg, #c4b5fd, #60a5fa); box-shadow: 0 0 6px rgba(167, 139, 250, 0.8); }
.ov-legend i.ln.today[b-kvrkhhciso] { height: 3px; background: #2cfee7; box-shadow: 0 0 6px rgba(44, 254, 231, 0.8); }
.ov-legend i.bx[b-kvrkhhciso] { width: 14px; height: 9px; border-radius: 2px; }
.ov-legend i.bx.mid[b-kvrkhhciso] { background: rgba(167, 139, 250, 0.34); }
.ov-legend i.bx.wide[b-kvrkhhciso] { background: rgba(167, 139, 250, 0.14); }

.ov-hero[b-kvrkhhciso] { position: relative; height: clamp(300px, 44vh, 540px); }
.ov-hero canvas[b-kvrkhhciso], .ov-bars canvas[b-kvrkhhciso], .ov-ext canvas[b-kvrkhhciso] { display: block; touch-action: pan-y; }
.ov-bars[b-kvrkhhciso] { position: relative; height: 150px; }
.ov-ext[b-kvrkhhciso] { position: relative; height: 112px; }

.ov-pulse[b-kvrkhhciso] {
    position: absolute;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 -5px;
    border-radius: 50%;
    background: #2cfee7;
    box-shadow: 0 0 0 0 rgba(44, 254, 231, 0.7);
    animation: ov-pulse-b-kvrkhhciso 1.8s ease-out infinite;
    pointer-events: none;
}

.ov-lane-label[b-kvrkhhciso] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 4px 12px;
    margin: 10px 0 2px;
    padding-top: 10px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    font-size: 0.7rem;
    color: var(--text-muted, #8b949e);
}
.ov-lane-key[b-kvrkhhciso] { display: inline-flex; align-items: center; gap: 6px; }
.ov-lane-key i[b-kvrkhhciso] { display: inline-block; margin-left: 6px; }
.ov-lane-key i.bar[b-kvrkhhciso] { width: 7px; height: 10px; border-radius: 2px; background: linear-gradient(#3fb950 50%, #f85149 50%); }
.ov-lane-key i.tick[b-kvrkhhciso] { width: 10px; height: 1px; background: rgba(201, 209, 217, 0.7); }
.ov-lane-key i.star[b-kvrkhhciso] { width: 7px; height: 7px; border-radius: 50%; background: #facc15; box-shadow: 0 0 6px rgba(250, 204, 21, 0.9); }

.ov-notes[b-kvrkhhciso] { margin: 10px 0 0; padding-left: 18px; font-size: 0.7rem; color: var(--text-muted, #8b949e); }
.ov-notes li[b-kvrkhhciso] { margin-bottom: 2px; }

/* ══ Day list ══ */
.ov-dayscard[b-kvrkhhciso] { display: flex; flex-direction: column; min-height: 0; max-height: calc(clamp(300px, 44vh, 540px) + 420px); }
.ov-clearpins[b-kvrkhhciso] {
    padding: 3px 9px;
    border-radius: 7px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: transparent;
    color: var(--text-secondary, #c9d1d9);
    font-size: 0.7rem;
    cursor: pointer;
}
.ov-daylist[b-kvrkhhciso] { flex: 1; min-height: 0; overflow-y: auto; margin: 0 -6px; padding: 0 6px; }
.ov-daylist[b-kvrkhhciso]  .ov-day {
    display: grid;
    grid-template-columns: 12px auto 1fr auto;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 6px 8px;
    margin-bottom: 2px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    color: var(--text-secondary, #c9d1d9);
    font-size: 0.76rem;
    text-align: left;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, opacity 0.12s;
}
.ov-daylist[b-kvrkhhciso]  .ov-day:hover,
.ov-daylist[b-kvrkhhciso]  .ov-day.hot { background: rgba(255, 255, 255, 0.05); }
.ov-daylist[b-kvrkhhciso]  .ov-day.pinned { border-color: rgba(167, 139, 250, 0.55); background: rgba(167, 139, 250, 0.1); color: #fff; }
.ov-daylist[b-kvrkhhciso]  .ov-day.dim { opacity: 0.35; }
.ov-daylist[b-kvrkhhciso]  .ov-day-key { width: 12px; height: 3px; border-radius: 2px; }
.ov-daylist[b-kvrkhhciso]  .ov-day-name { font-weight: 600; white-space: nowrap; }
.ov-daylist[b-kvrkhhciso]  .ov-day-tag { grid-column: 3; justify-self: start; padding: 1px 6px; border-radius: 6px; font-size: 0.6rem; text-transform: uppercase; letter-spacing: 0.05em; background: rgba(139, 148, 158, 0.18); color: var(--text-muted, #8b949e); }
.ov-daylist[b-kvrkhhciso]  .ov-day-tag.live { background: rgba(44, 254, 231, 0.12); color: #2cfee7; }
.ov-daylist[b-kvrkhhciso]  .ov-day-gap { grid-column: 3; justify-self: end; font-size: 0.66rem; color: var(--text-muted, #8b949e); font-variant-numeric: tabular-nums; }
.ov-daylist[b-kvrkhhciso]  .ov-day-tag + .ov-day-gap { display: none; }
.ov-daylist[b-kvrkhhciso]  .ov-day-val { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; color: var(--text-primary, #e6edf3); }

/* ══ Stat cards ══ */
.ov-stats[b-kvrkhhciso] { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; margin-top: 14px; }
.ov-stat[b-kvrkhhciso] {
    position: relative;
    padding: 13px 14px 12px;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background: linear-gradient(160deg, rgba(167, 139, 250, 0.07), rgba(22, 27, 34, 0.6) 55%);
    animation: ov-up-b-kvrkhhciso 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
    transition: border-color 0.15s, transform 0.15s;
}
.ov-stat:hover[b-kvrkhhciso] { border-color: rgba(167, 139, 250, 0.45); transform: translateY(-2px); }
.ov-stat:nth-child(2)[b-kvrkhhciso] { animation-delay: 0.04s; }
.ov-stat:nth-child(3)[b-kvrkhhciso] { animation-delay: 0.08s; }
.ov-stat:nth-child(4)[b-kvrkhhciso] { animation-delay: 0.12s; }
.ov-stat:nth-child(5)[b-kvrkhhciso] { animation-delay: 0.16s; }
.ov-stat:nth-child(6)[b-kvrkhhciso] { animation-delay: 0.2s; }
.ov-stat:nth-child(7)[b-kvrkhhciso] { animation-delay: 0.24s; }
.ov-stat:nth-child(8)[b-kvrkhhciso] { animation-delay: 0.28s; }
.ov-stat:nth-child(9)[b-kvrkhhciso] { animation-delay: 0.32s; }
.ov-stat:nth-child(10)[b-kvrkhhciso] { animation-delay: 0.36s; }
.ov-stat-top[b-kvrkhhciso] { display: flex; gap: 7px; align-items: center; font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.ov-stat-top i[b-kvrkhhciso] { color: var(--accent, #a78bfa); font-size: 0.85rem; }
.ov-stat-value[b-kvrkhhciso] { margin: 6px 0 2px; font-size: 1.32rem; font-weight: 800; letter-spacing: -0.01em; }
.ov-stat-sub[b-kvrkhhciso] { font-size: 0.72rem; color: var(--text-secondary, #c9d1d9); }
.ov-stat-meter[b-kvrkhhciso] { position: relative; height: 4px; margin-top: 10px; border-radius: 999px; background: rgba(255, 255, 255, 0.07); }
.ov-stat-meter span[b-kvrkhhciso] { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 999px; background: linear-gradient(90deg, #a78bfa, #60a5fa); }
.ov-stat-meter i[b-kvrkhhciso] { position: absolute; left: 50%; top: -3px; bottom: -3px; width: 1px; background: rgba(255, 255, 255, 0.45); }

/* ══ Leaderboard ══ */
.ov-board[b-kvrkhhciso] { margin-top: 14px; }
.ov-board-rows[b-kvrkhhciso] { display: flex; flex-direction: column; gap: 6px; }
.ov-lead[b-kvrkhhciso] {
    display: grid;
    grid-template-columns: 26px 110px 92px minmax(120px, 1fr) 140px 128px 150px;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 11px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    background: rgba(255, 255, 255, 0.02);
    font-size: 0.8rem;
    animation: ov-up-b-kvrkhhciso 0.45s cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
    animation-delay: var(--d, 0ms);
}
.ov-lead.strong[b-kvrkhhciso] { border-color: rgba(250, 204, 21, 0.35); background: linear-gradient(90deg, rgba(250, 204, 21, 0.07), rgba(255, 255, 255, 0.02) 40%); }
.ov-rank[b-kvrkhhciso] { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 8px; background: rgba(255, 255, 255, 0.06); font-weight: 800; font-size: 0.75rem; }
.ov-lead.strong .ov-rank[b-kvrkhhciso] { background: #facc15; color: #0b0f17; box-shadow: 0 0 12px rgba(250, 204, 21, 0.55); }
.ov-lead-win[b-kvrkhhciso] { font-weight: 700; font-variant-numeric: tabular-nums; }
.ov-lead-dir[b-kvrkhhciso] { font-size: 0.74rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.ov-lead-dir.up[b-kvrkhhciso] { color: #7ee787; }
.ov-lead-dir.down[b-kvrkhhciso] { color: #ffa198; }
.ov-lead-bar[b-kvrkhhciso] { position: relative; height: 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.06); }
.ov-lead-bar span[b-kvrkhhciso] { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 999px; transform-origin: left; animation: ov-grow-b-kvrkhhciso 0.9s cubic-bezier(0.2, 0.8, 0.2, 1) backwards; animation-delay: inherit; }
.ov-lead-bar span.up[b-kvrkhhciso] { background: linear-gradient(90deg, rgba(63, 185, 80, 0.5), #3fb950); }
.ov-lead-bar span.down[b-kvrkhhciso] { background: linear-gradient(90deg, rgba(248, 81, 73, 0.5), #f85149); }
.ov-lead-bar i[b-kvrkhhciso] { position: absolute; top: -3px; bottom: -3px; width: 2px; margin-left: -1px; border-radius: 1px; background: rgba(255, 255, 255, 0.8); }
.ov-lead-bar b[b-kvrkhhciso] { position: absolute; left: 50%; top: -5px; bottom: -5px; width: 1px; background: rgba(255, 255, 255, 0.3); }
.ov-lead-range[b-kvrkhhciso] { font-size: 0.72rem; color: var(--text-muted, #8b949e); font-variant-numeric: tabular-nums; }
.ov-lead-med[b-kvrkhhciso] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; }
.ov-lead-med small[b-kvrkhhciso] { color: var(--text-muted, #8b949e); margin-left: 4px; }
.ov-lead-conf[b-kvrkhhciso] { font-size: 0.72rem; color: var(--text-secondary, #c9d1d9); }
.ov-lead-conf[b-kvrkhhciso]::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #6e7681; vertical-align: 0; }
.ov-lead-conf.c2[b-kvrkhhciso]::before { background: #facc15; }
.ov-lead-conf.c3[b-kvrkhhciso]::before { background: #facc15; box-shadow: 0 0 6px rgba(250, 204, 21, 0.9); }
.ov-board-foot[b-kvrkhhciso] { margin: 10px 0 0; font-size: 0.7rem; color: var(--text-muted, #8b949e); }

/* ══ Table view ══ */
.ov-tablecard[b-kvrkhhciso] { margin-top: 14px; }
.ov-tablecard summary[b-kvrkhhciso] { cursor: pointer; font-size: 0.85rem; font-weight: 700; color: var(--text-secondary, #c9d1d9); }
.ov-table-wrap[b-kvrkhhciso] { overflow-x: auto; margin-top: 10px; }
.ov-table[b-kvrkhhciso] { width: 100%; border-collapse: collapse; font-size: 0.76rem; font-variant-numeric: tabular-nums; }
.ov-table th[b-kvrkhhciso] { text-align: right; padding: 6px 8px; font-size: 0.64rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); border-bottom: 1px solid rgba(255, 255, 255, 0.08); white-space: nowrap; }
.ov-table td[b-kvrkhhciso] { text-align: right; padding: 5px 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.04); white-space: nowrap; }
.ov-table th:first-child[b-kvrkhhciso], .ov-table td:first-child[b-kvrkhhciso], .ov-table th:last-child[b-kvrkhhciso], .ov-table td:last-child[b-kvrkhhciso] { text-align: left; }
.ov-table td.pos[b-kvrkhhciso] { color: #7ee787; }
.ov-table td.neg[b-kvrkhhciso] { color: #ffa198; }

.ov-disclaimer[b-kvrkhhciso] { margin: 18px 0 0; text-align: center; font-size: 0.72rem; color: var(--text-muted, #8b949e); }

/* ══ Tooltip (fixed, so it never scrolls with the body) ══ */
.ov-tip[b-kvrkhhciso] {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2100;
    min-width: 180px;
    max-width: 300px;
    padding: 9px 11px;
    border-radius: 11px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(13, 17, 23, 0.94);
    backdrop-filter: blur(8px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    font-size: 0.74rem;
    pointer-events: none;
}
.ov-tip[b-kvrkhhciso]  .ov-tip-h { font-weight: 700; margin-bottom: 6px; color: #fff; }
.ov-tip[b-kvrkhhciso]  .ov-tip-row { display: grid; grid-template-columns: 12px auto 1fr; align-items: center; gap: 7px; margin: 2px 0; }
.ov-tip[b-kvrkhhciso]  .ov-tip-key { width: 12px; height: 3px; border-radius: 2px; }
.ov-tip[b-kvrkhhciso]  .ov-tip-v { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 700; color: #fff; white-space: nowrap; }
.ov-tip[b-kvrkhhciso]  .ov-tip-l { color: var(--text-muted, #8b949e); }
.ov-tip[b-kvrkhhciso]  .ov-tip-foot { margin-top: 6px; color: var(--text-secondary, #c9d1d9); }
.ov-tip[b-kvrkhhciso]  .ov-tip-badge { display: inline-block; margin-top: 6px; padding: 1px 7px; border-radius: 6px; font-size: 0.66rem; background: rgba(139, 148, 158, 0.2); color: var(--text-secondary, #c9d1d9); }
.ov-tip[b-kvrkhhciso]  .ov-tip-badge.c2, .ov-tip[b-kvrkhhciso]  .ov-tip-badge.c3 { background: rgba(250, 204, 21, 0.18); color: #facc15; }

/* ══ Motion ══ */
@keyframes ov-fade-b-kvrkhhciso { from { opacity: 0; } }
@keyframes ov-rise-b-kvrkhhciso { from { opacity: 0; transform: translateY(14px) scale(0.985); } }
@keyframes ov-up-b-kvrkhhciso { from { opacity: 0; transform: translateY(8px); } }
@keyframes ov-grow-b-kvrkhhciso { from { transform: scaleX(0); } }
@keyframes ov-rot-b-kvrkhhciso { to { transform: rotate(360deg); } }
@keyframes ov-shimmer-b-kvrkhhciso { to { background-position: -300% 0; } }
@keyframes ov-sheen-b-kvrkhhciso { to { transform: translateX(100%); } }
@keyframes ov-drift-b-kvrkhhciso { to { transform: translate(60px, 40px) scale(1.15); } }
@keyframes ov-pulse-b-kvrkhhciso {
    0% { box-shadow: 0 0 0 0 rgba(44, 254, 231, 0.65); }
    70% { box-shadow: 0 0 0 12px rgba(44, 254, 231, 0); }
    100% { box-shadow: 0 0 0 0 rgba(44, 254, 231, 0); }
}

@media (prefers-reduced-motion: reduce) {
    .ov-backdrop[b-kvrkhhciso], .ov-shell[b-kvrkhhciso], .ov-stat[b-kvrkhhciso], .ov-lead[b-kvrkhhciso], .ov-lead-bar span[b-kvrkhhciso], .ov-meter-bar .fill[b-kvrkhhciso], .ov-verdict[b-kvrkhhciso]::after,
    .ov-glow[b-kvrkhhciso], .ov-skel-hero[b-kvrkhhciso] { animation: none; }
}

/* ══ Narrow screens ══ */
@media (max-width: 1100px) {
    .ov-main[b-kvrkhhciso] { grid-template-columns: minmax(0, 1fr); }
    .ov-dayscard[b-kvrkhhciso] { max-height: 320px; }
    .ov-lead[b-kvrkhhciso] { grid-template-columns: 26px 100px 84px minmax(100px, 1fr) 120px; }
    .ov-lead-med[b-kvrkhhciso], .ov-lead-conf[b-kvrkhhciso] { grid-column: 3 / -1; }
    .ov-lead-med[b-kvrkhhciso] { grid-column: 2 / 4; }
}

@media (max-width: 760px) {
    .ov-backdrop[b-kvrkhhciso] { padding: 0; }
    .ov-shell[b-kvrkhhciso] { border-radius: 0; border: none; }
    /* Compact header: title row with the close button, then one swipeable row of tickers and settings */
    .ov-head[b-kvrkhhciso] { padding: 8px 10px; gap: 8px; }
    .ov-brand[b-kvrkhhciso] { flex: 1; gap: 10px; }
    .ov-mark[b-kvrkhhciso] { width: 32px; height: 32px; border-radius: 10px; font-size: 0.95rem; }
    .ov-title[b-kvrkhhciso] { font-size: 0.98rem; }
    .ov-sub > span:first-child[b-kvrkhhciso] { display: none; }
    .ov-sub:not(:has(.ov-busy))[b-kvrkhhciso] { display: none; }
    .ov-close[b-kvrkhhciso] { width: 34px; height: 34px; }
    .ov-tabs[b-kvrkhhciso], .ov-ctls[b-kvrkhhciso] { order: 3; width: 100%; margin-left: 0; flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
    .ov-tabs[b-kvrkhhciso]::-webkit-scrollbar, .ov-ctls[b-kvrkhhciso]::-webkit-scrollbar { display: none; }
    .ov-tabs[b-kvrkhhciso] { gap: 5px; }
    .ov-tab[b-kvrkhhciso] { padding: 4px 10px; flex: none; }
    .ov-ctls[b-kvrkhhciso] { gap: 6px; }
    .ov-seg[b-kvrkhhciso] { flex: none; }
    .ov-seg button[b-kvrkhhciso] { padding: 5px 9px; }
    .ov-body[b-kvrkhhciso] { padding: 12px 10px 28px; }
    .ov-verdict[b-kvrkhhciso] { grid-template-columns: minmax(0, 1fr); padding: 14px; }
    .ov-card[b-kvrkhhciso] { padding: 12px 10px; }
    .ov-hero[b-kvrkhhciso] { height: 320px; }
    .ov-bars[b-kvrkhhciso] { height: 130px; }
    .ov-ext[b-kvrkhhciso] { height: 96px; }
    .ov-stats[b-kvrkhhciso] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .ov-stat-value[b-kvrkhhciso] { font-size: 1.08rem; }
    .ov-lead[b-kvrkhhciso] { grid-template-columns: 24px minmax(0, 1fr) auto; gap: 6px 8px; }
    .ov-rank[b-kvrkhhciso] { grid-area: 1 / 1; }
    .ov-lead-win[b-kvrkhhciso] { grid-area: 1 / 2; }
    .ov-lead-dir[b-kvrkhhciso] { grid-area: 1 / 3; }
    .ov-lead-bar[b-kvrkhhciso] { grid-area: 2 / 1 / 3 / -1; }
    .ov-lead-range[b-kvrkhhciso] { grid-area: 3 / 1 / 4 / 3; }
    .ov-lead-med[b-kvrkhhciso] { grid-area: 3 / 3; }
    .ov-lead-conf[b-kvrkhhciso] { grid-area: 4 / 1 / 5 / -1; }
}
/* /Components/IntradayBehavior/BehaviorWindowTable.razor.rz.scp.css */
.bh-table-wrap[b-0k2twfi7fl] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.bh-table[b-0k2twfi7fl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
    font-variant-numeric: tabular-nums;
    min-width: 760px;
}

.bh-table th[b-0k2twfi7fl] {
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted, #8b949e);
    text-align: right;
    padding: 6px 10px;
    border-bottom: 1px solid var(--terminal-border, #30363d);
    white-space: nowrap;
}

.bh-table td[b-0k2twfi7fl] {
    text-align: right;
    padding: 6px 10px;
    border-bottom: 1px solid rgba(48, 54, 61, 0.5);
    white-space: nowrap;
}

.bh-table .left[b-0k2twfi7fl] { text-align: left; }
.bh-table .num[b-0k2twfi7fl] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.bh-table .muted[b-0k2twfi7fl] { color: var(--text-muted, #8b949e); }
.bh-table .up[b-0k2twfi7fl] { color: #3fb950; }
.bh-table .down[b-0k2twfi7fl] { color: #f85149; }

.bh-table tr.edge td[b-0k2twfi7fl] { background: rgba(255, 255, 255, 0.025); }
.bh-table tr.strong td:first-child[b-0k2twfi7fl] { box-shadow: inset 3px 0 0 var(--accent, #a78bfa); }
.bh-table tbody tr:hover td[b-0k2twfi7fl] { background: rgba(167, 139, 250, 0.06); }

.bh-win[b-0k2twfi7fl] { font-weight: 700; margin-right: 6px; }
.bh-win-range[b-0k2twfi7fl] { font-size: 0.7rem; color: var(--text-muted, #8b949e); }

.bh-conf[b-0k2twfi7fl] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    color: var(--text-secondary, #c9d1d9);
}

.bh-conf i[b-0k2twfi7fl] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid var(--text-muted, #8b949e);
    display: inline-block;
}

.bh-conf i.on[b-0k2twfi7fl] { background: var(--text-secondary, #c9d1d9); border-color: var(--text-secondary, #c9d1d9); }
.bh-conf.dir-up i.on[b-0k2twfi7fl] { background: #3fb950; border-color: #3fb950; }
.bh-conf.dir-down i.on[b-0k2twfi7fl] { background: #f85149; border-color: #f85149; }
.bh-conf span[b-0k2twfi7fl] { margin-left: 4px; font-size: 0.74rem; }
/* /Components/Layout/AdminNoticeToasts.razor.rz.scp.css */
/* AdminNoticeToasts - the owner's live notifications, stacked under the header at the right */
.admin-toasts[b-51tlvkcutk] {
    position: fixed;
    top: calc(var(--header-height, 52px) + 12px);
    right: 16px;
    z-index: 950; /* over page content and the side rail, under modals */
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 360px;
    max-width: calc(100vw - 32px);
    pointer-events: none;
}

.admin-toast[b-51tlvkcutk] {
    pointer-events: auto;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 10px 12px 14px;
    border-radius: 14px;
    background: rgba(13, 18, 28, 0.97);
    border: 1px solid rgba(19, 223, 255, 0.3);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6), 0 0 30px rgba(19, 223, 255, 0.12);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    animation: admin-toast-in-b-51tlvkcutk 240ms ease-out;
}

.admin-toast.ticket[b-51tlvkcutk] {
    border-color: rgba(255, 181, 71, 0.35);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6), 0 0 30px rgba(255, 181, 71, 0.12);
}

.admin-toast.leaving[b-51tlvkcutk] {
    animation: admin-toast-out-b-51tlvkcutk 220ms ease-in forwards;
}

.toast-icon[b-51tlvkcutk] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(19, 223, 255, 0.12);
    color: var(--primary, #13dfff);
}

.admin-toast.ticket .toast-icon[b-51tlvkcutk] {
    background: rgba(255, 181, 71, 0.14);
    color: #ffb547;
}

.toast-icon svg[b-51tlvkcutk] {
    width: 18px;
    height: 18px;
}

.toast-body[b-51tlvkcutk] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.toast-kicker[b-51tlvkcutk] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--primary, #13dfff);
}

.admin-toast.ticket .toast-kicker[b-51tlvkcutk] {
    color: #ffb547;
}

.toast-title[b-51tlvkcutk] {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
    color: var(--text-primary, #f0f4f8);
    text-decoration: none;
}

.toast-title:hover[b-51tlvkcutk] {
    color: var(--primary, #13dfff);
    text-decoration: underline;
}

.toast-detail[b-51tlvkcutk] {
    font-size: 12px;
    line-height: 1.35;
    color: var(--text-secondary, #94a3b8);
}

.toast-close[b-51tlvkcutk] {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    min-height: 28px;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--text-muted, #64748b);
    font-size: 13px;
    cursor: pointer;
}

.toast-close:hover[b-51tlvkcutk] {
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-primary, #f0f4f8);
}

@keyframes admin-toast-in-b-51tlvkcutk {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes admin-toast-out-b-51tlvkcutk {
    from { opacity: 1; transform: translateY(0); }
    to { opacity: 0; transform: translateY(-10px); }
}

@media (max-width: 900px) {
    .admin-toasts[b-51tlvkcutk] {
        top: calc(52px + env(safe-area-inset-top, 0px) + 8px);
        left: 8px;
        right: 8px;
        width: auto;
        max-width: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-toast[b-51tlvkcutk],
    .admin-toast.leaving[b-51tlvkcutk] {
        animation: none;
    }
}
/* /Components/Layout/AdminSidebar.razor.rz.scp.css */
/* ===================================
   AdminSidebar - the admin's side navigation
   A 56px icon rail under the header. Hovering opens it to 240px over the page; pinning
   (html[data-admin-nav="pinned"], js/adminNav.js) keeps it open and moves the page over
   (--admin-rail-width, app.css). Hidden at phone widths: the tab bar and the menu sheet
   take over there (MobileTabBar).
   =================================== */

.admin-sidebar[b-owkas44fpb] {
    --label-opacity: 0;
    position: fixed;
    top: var(--header-height, 52px);
    left: 0;
    bottom: 0;
    z-index: 150; /* under the header (--z-sticky 200), over page content */
    width: 56px;
    display: flex;
    flex-direction: column;
    /* Solid: the open rail floats over page text, which must not ghost through */
    background: linear-gradient(180deg, #0a0e14 0%, #06080c 100%);
    border-right: 1px solid var(--border);
    overflow: hidden;
    transition: width 160ms ease, box-shadow 160ms ease;
}

.admin-sidebar:hover[b-owkas44fpb],
.admin-sidebar.panel-open[b-owkas44fpb],
html[data-admin-nav="pinned"] .admin-sidebar[b-owkas44fpb] {
    --label-opacity: 1;
    width: 240px;
}

/* Peeking (not pinned) floats over the page */
.admin-sidebar:hover[b-owkas44fpb],
.admin-sidebar.panel-open[b-owkas44fpb] {
    box-shadow: 16px 0 48px rgba(0, 0, 0, 0.55);
}

html[data-admin-nav="pinned"] .admin-sidebar[b-owkas44fpb] {
    box-shadow: none;
}

/* Labels, tags and counts fade in as the rail opens; the icons never move */
.nav-label[b-owkas44fpb] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 13px;
    font-weight: 500;
    opacity: var(--label-opacity);
    transition: opacity 120ms ease;
}

/* ═══════════════════════════════════
   HEAD - the notification bell
   ═══════════════════════════════════ */
.sidebar-head[b-owkas44fpb] {
    flex-shrink: 0;
    padding: 6px 8px 5px;
    border-bottom: 1px solid var(--border);
}

.sidebar-bell[b-owkas44fpb],
.sidebar-pin[b-owkas44fpb] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    height: 36px;
    padding: 0 0 0 10px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: var(--text-secondary);
    font: inherit;
    text-align: left;
    white-space: nowrap;
    cursor: pointer;
    transition: background 120ms ease, color 120ms ease;
}

.sidebar-bell:hover[b-owkas44fpb],
.sidebar-pin:hover[b-owkas44fpb] {
    background: var(--bg-glass-light);
    color: var(--text-primary);
    border-color: var(--border-subtle);
}

.sidebar-bell.open[b-owkas44fpb] {
    background: rgba(19, 223, 255, 0.1);
    color: var(--primary);
    border-color: var(--primary-border);
}

.sidebar-bell svg[b-owkas44fpb],
.sidebar-pin svg[b-owkas44fpb] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

/* ═══════════════════════════════════
   GROUPS AND ITEMS
   ═══════════════════════════════════ */
.sidebar-nav[b-owkas44fpb] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 2px 0 8px;
    scrollbar-width: thin;
}

/* Group title when open; a short divider line when collapsed. Same height either way, so nothing jumps.
   Sizes are tight on purpose: the whole list (20 pages) fits a 900px-high window without scrolling. */
.nav-group-title[b-owkas44fpb] {
    position: relative;
    height: 22px;
    display: flex;
    align-items: center;
    padding: 4px 0 0 18px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--text-muted);
    white-space: nowrap;
}

.nav-group-title span[b-owkas44fpb] {
    opacity: var(--label-opacity);
    transition: opacity 120ms ease;
}

.nav-group-title[b-owkas44fpb]::before {
    content: '';
    position: absolute;
    left: 20px;
    right: 20px;
    top: 12px;
    height: 1px;
    background: var(--border);
    opacity: calc(1 - var(--label-opacity));
}

.nav-item[b-owkas44fpb] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 31px;
    margin: 1px 8px;
    padding: 0 0 0 10px;
    border: 1px solid transparent;
    border-radius: 8px;
    color: var(--text-secondary);
    text-decoration: none;
    white-space: nowrap;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.nav-item svg[b-owkas44fpb] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.nav-item:hover[b-owkas44fpb] {
    background: var(--bg-glass-light);
    color: var(--text-primary);
    border-color: var(--border-subtle);
}

.nav-item.featured[b-owkas44fpb] {
    color: var(--primary);
}

.nav-item.active[b-owkas44fpb] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.14) 0%, rgba(19, 223, 255, 0.05) 100%);
    color: var(--primary);
    border-color: var(--primary-border);
}

/* Accent bar on the rail's edge for the current page */
.nav-item.active[b-owkas44fpb]::before {
    content: '';
    position: absolute;
    left: -9px;
    top: 6px;
    bottom: 6px;
    width: 3px;
    border-radius: 0 3px 3px 0;
    background: var(--primary);
    box-shadow: 0 0 10px rgba(19, 223, 255, 0.6);
}

/* ═══════════════════════════════════
   COUNTS AND TAGS
   Open: a count pill at the end of the row. Collapsed: the count shrinks to a dot on the
   icon's corner, so "something is waiting" survives the collapse.
   ═══════════════════════════════════ */
.nav-badge[b-owkas44fpb] {
    flex-shrink: 0;
    margin-right: 10px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    opacity: var(--label-opacity);
    transition: opacity 120ms ease;
}

.nav-badge.signups[b-owkas44fpb] {
    background: var(--primary);
    color: #06080c;
}

.nav-badge.tickets[b-owkas44fpb] {
    background: #ffb547;
    color: #06080c;
}

.nav-badge.alert[b-owkas44fpb] {
    background: #ff5c5c;
    color: #fff;
}

.nav-dot[b-owkas44fpb] {
    position: absolute;
    top: 4px;
    left: 24px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    box-shadow: 0 0 0 2px #0a0e14;
    opacity: calc(1 - var(--label-opacity));
    transition: opacity 120ms ease;
    pointer-events: none;
}

.nav-dot.signups[b-owkas44fpb] {
    background: var(--primary);
}

.nav-dot.tickets[b-owkas44fpb] {
    background: #ffb547;
}

.nav-dot.alert[b-owkas44fpb] {
    background: #ff5c5c;
}

.nav-tag[b-owkas44fpb] {
    flex-shrink: 0;
    margin-right: 10px;
    padding: 2px 6px;
    border-radius: var(--radius-full);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    background: var(--bg-glass-medium);
    color: var(--text-muted);
    opacity: var(--label-opacity);
    transition: opacity 120ms ease;
}

.nav-tag.cost[b-owkas44fpb] {
    background: var(--warning-bg);
    color: var(--warning);
    border: 1px solid var(--warning-border);
}

.nav-tag.crypto[b-owkas44fpb] {
    background: linear-gradient(135deg, #f7931a 0%, #ff9500 100%);
    color: white;
}

/* ═══════════════════════════════════
   FOOT - pin / collapse
   ═══════════════════════════════════ */
.sidebar-foot[b-owkas44fpb] {
    flex-shrink: 0;
    padding: 5px 8px 6px;
    border-top: 1px solid var(--border);
}

.pin-collapse[b-owkas44fpb],
.pin-label-collapse[b-owkas44fpb] {
    display: none;
}

html[data-admin-nav="pinned"] .admin-sidebar .pin-expand[b-owkas44fpb],
html[data-admin-nav="pinned"] .admin-sidebar .pin-label-expand[b-owkas44fpb] {
    display: none;
}

html[data-admin-nav="pinned"] .admin-sidebar .pin-collapse[b-owkas44fpb] {
    display: block;
}

html[data-admin-nav="pinned"] .admin-sidebar .pin-label-collapse[b-owkas44fpb] {
    display: inline;
}

/* ═══════════════════════════════════
   NOTIFICATION PANEL (beside the open rail)
   ═══════════════════════════════════ */
.notice-panel[b-owkas44fpb] {
    position: fixed;
    top: var(--header-height, 52px);
    left: 240px;
    z-index: 149;
    width: 360px;
    max-width: calc(100vw - 240px);
    max-height: calc(100vh - var(--header-height, 52px));
    display: none;
    flex-direction: column;
    background: var(--bg-elevated);
    border: 1px solid var(--border-medium);
    border-left: none;
    border-radius: 0 0 14px 0;
    box-shadow: var(--shadow-xl);
    overflow: hidden;
}

.notice-panel.open[b-owkas44fpb] {
    display: flex;
}

/* Click-away for the live layout (the static layout closes through js/adminNav.js) */
.notice-backdrop[b-owkas44fpb] {
    position: fixed;
    inset: 0;
    z-index: 140;
    background: transparent;
}

.panel-head[b-owkas44fpb] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border-bottom: 1px solid var(--border);
}

.panel-title[b-owkas44fpb] {
    font-size: 13px;
    font-weight: 700;
    color: var(--text-primary);
}

.panel-link[b-owkas44fpb] {
    font-size: 12px;
    font-weight: 600;
    color: var(--primary);
    text-decoration: none;
}

.panel-link:hover[b-owkas44fpb] {
    text-decoration: underline;
}

.panel-empty[b-owkas44fpb] {
    padding: 28px 18px;
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-muted);
    text-align: center;
}

.panel-list[b-owkas44fpb] {
    overflow-y: auto;
    scrollbar-width: thin;
    padding: 6px;
}

.notice-item[b-owkas44fpb] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 10px;
    border-radius: 10px;
    text-decoration: none;
    color: var(--text-secondary);
    transition: background 120ms ease;
}

.notice-item:hover[b-owkas44fpb] {
    background: var(--bg-glass-light);
}

.notice-item.unseen[b-owkas44fpb] {
    background: rgba(19, 223, 255, 0.06);
}

.notice-item.unseen .notice-title[b-owkas44fpb] {
    color: var(--text-primary);
}

.notice-icon[b-owkas44fpb] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: rgba(19, 223, 255, 0.12);
    color: var(--primary);
}

.notice-item.ticket .notice-icon[b-owkas44fpb] {
    background: rgba(255, 181, 71, 0.14);
    color: #ffb547;
}

.notice-icon svg[b-owkas44fpb] {
    width: 16px;
    height: 16px;
}

.notice-body[b-owkas44fpb] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.notice-title[b-owkas44fpb] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.notice-detail[b-owkas44fpb] {
    font-size: 12px;
    color: var(--text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.notice-time[b-owkas44fpb] {
    font-size: 11px;
    font-family: var(--font-mono);
    color: var(--text-muted);
    opacity: 0.8;
}

/* Phones have the tab bar and the menu sheet instead */
@media (max-width: 900px) {
    .admin-sidebar[b-owkas44fpb],
    .notice-panel[b-owkas44fpb],
    .notice-backdrop[b-owkas44fpb] {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .admin-sidebar[b-owkas44fpb],
    .nav-label[b-owkas44fpb],
    .nav-badge[b-owkas44fpb],
    .nav-dot[b-owkas44fpb],
    .nav-tag[b-owkas44fpb],
    .nav-group-title span[b-owkas44fpb] {
        transition: none;
    }
}
/* /Components/Layout/LoginLayout.razor.rz.scp.css */
/* ===================================
   Login Layout - Clean Styling
   Override default layout for auth pages
   =================================== */

.login-layout[b-5jw5pm23e1] {
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 100vh;
    /* clip rather than hidden/auto: same visual result, but doesn't make this a scroll
       container, so position: sticky inside pages (e.g. the landing header) still works */
    overflow-x: clip;
    background: var(--bg-base, #0a0f1a);
}

/* Remove default Blazor layout styles for login page */
.login-layout .page[b-5jw5pm23e1],
.login-layout .sidebar[b-5jw5pm23e1],
.login-layout main[b-5jw5pm23e1] {
    all: unset;
}

/* Ensure login page takes full viewport */
.login-layout > *[b-5jw5pm23e1] {
    width: 100%;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ===================================
   MainLayout - Premium Trading Terminal
   Modern • Full-Width • Dropdown Navigation
   =================================== */

/* ═══════════════════════════════════
   TERMINAL SHELL - Root Container
   ═══════════════════════════════════ */
.terminal-shell[b-2872pg1ztg] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: var(--bg-base);
    position: relative;
}

/* Subtle grid overlay for terminal aesthetic */
.terminal-shell[b-2872pg1ztg]::before {
    content: '';
    position: fixed;
    inset: 0;
    background-image: 
        linear-gradient(rgba(19, 223, 255, 0.01) 1px, transparent 1px),
        linear-gradient(90deg, rgba(19, 223, 255, 0.01) 1px, transparent 1px);
    background-size: 50px 50px;
    pointer-events: none;
    z-index: 0;
    opacity: 0.5;
}

/* ═══════════════════════════════════
   HEADER - Premium Terminal Bar
   ═══════════════════════════════════ */
.terminal-header[b-2872pg1ztg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: var(--z-sticky);
    display: flex;
    align-items: center;
    height: var(--header-height);
    background: linear-gradient(180deg, rgba(10, 14, 20, 0.98) 0%, rgba(6, 8, 12, 0.95) 100%);
    border-bottom: 1px solid var(--border);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    padding: 0;
    overflow: visible;
}

/* Accent line at top of header */
.terminal-header[b-2872pg1ztg]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        var(--primary) 20%, 
        var(--info) 50%, 
        var(--primary) 80%, 
        transparent 100%
    );
    opacity: 0.5;
}

/* ═══════════════════════════════════
   BRAND SECTION
   ═══════════════════════════════════ */
.header-brand[b-2872pg1ztg] {
    flex-shrink: 0;
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 var(--space-4);
    border-right: 1px solid var(--border);
    background: var(--bg-glass);
}

.brand-link[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    text-decoration: none;
    color: inherit;
    transition: all var(--transition-fast);
}

.brand-link:hover[b-2872pg1ztg] {
    color: var(--primary);
}

/* The bulb mark and the "TickIQ" wordmark are images (wwwroot/images/brand); the wordmark hides on
   tablets and comes back in the phone header, as the text used to. */
.brand-icon[b-2872pg1ztg] {
    display: flex;
    align-items: center;
}

.brand-icon img[b-2872pg1ztg] {
    display: block;
    width: auto;
    height: 32px;
}

.brand-text[b-2872pg1ztg] {
    display: block;
    width: auto;
    height: 18px;
}

.brand-link:hover img[b-2872pg1ztg] {
    filter: brightness(1.15);
}

/* Version Badge - Next to Logo */
.version-badge[b-2872pg1ztg] {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 500;
    padding: 2px 6px;
    background: rgba(19, 223, 255, 0.1);
    color: var(--primary);
    border: 1px solid rgba(19, 223, 255, 0.2);
    border-radius: var(--radius-sm);
    letter-spacing: 0.02em;
    opacity: 0.7;
    transition: opacity var(--transition-fast);
}

.brand-link:hover .version-badge[b-2872pg1ztg] {
    opacity: 1;
}

/* ═══════════════════════════════════
   MAIN NAVIGATION
   ═══════════════════════════════════ */
.main-nav[b-2872pg1ztg] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: var(--space-1);
    padding: 0 var(--space-3);
    height: 100%;
    overflow: visible;
    scrollbar-width: none;
}

.main-nav[b-2872pg1ztg]::-webkit-scrollbar {
    display: none;
}

/* ═══════════════════════════════════
   NAV LINK - Direct Navigation Items
   ═══════════════════════════════════ */
.nav-link[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--text-secondary);
    text-decoration: none;
    white-space: nowrap;
    transition: all var(--transition-fast);
    border: 1px solid transparent;
}

.nav-link:hover[b-2872pg1ztg] {
    background: var(--bg-glass-light);
    color: var(--text-primary);
    border-color: var(--border-subtle);
}

.nav-link.active[b-2872pg1ztg] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.12) 0%, rgba(19, 223, 255, 0.04) 100%);
    color: var(--primary);
    border-color: var(--primary-border);
}

/* Featured Nav Link (Chart IQ) */
.nav-link.featured[b-2872pg1ztg] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.15) 0%, rgba(59, 130, 246, 0.1) 100%);
    border-color: var(--primary-border);
    color: var(--primary);
    font-weight: 600;
}

.nav-link.featured:hover[b-2872pg1ztg] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.25) 0%, rgba(59, 130, 246, 0.15) 100%);
    box-shadow: 0 0 20px rgba(19, 223, 255, 0.2);
}

.nav-link svg[b-2872pg1ztg] {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

/* ═══════════════════════════════════
   NAV DROPDOWN
   ═══════════════════════════════════ */
.nav-dropdown[b-2872pg1ztg] {
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
}

.nav-dropdown-toggle[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--text-secondary);
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition: all var(--transition-fast);
}

.nav-dropdown-toggle:hover[b-2872pg1ztg] {
    background: var(--bg-glass-light);
    color: var(--text-primary);
    border-color: var(--border-subtle);
}

.nav-dropdown-toggle svg[b-2872pg1ztg] {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.dropdown-arrow[b-2872pg1ztg] {
    transition: transform var(--transition-fast);
}

.dropdown-arrow.rotated[b-2872pg1ztg] {
    transform: rotate(180deg);
}

.nav-dropdown-menu.show + .nav-dropdown-toggle .dropdown-arrow[b-2872pg1ztg],
.nav-dropdown:has(.nav-dropdown-menu.show) .dropdown-arrow[b-2872pg1ztg] {
    transform: rotate(180deg);
}

/* Dropdown Menu - Positioning and appearance only */
/* NOTE: Visibility state styles (.show) are in global app.css for JS compatibility */
.nav-dropdown-menu[b-2872pg1ztg] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    min-width: 200px;
    background: var(--bg-elevated);
    border: 1px solid var(--border-medium);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-xl);
    z-index: 1000;
    padding: var(--space-2);
    /* Visibility controlled by global CSS + JavaScript */
}

/* .nav-dropdown-menu.show styles are in app.css (global) */

/* User Menu - Right aligned */
.nav-dropdown-menu.user-menu[b-2872pg1ztg] {
    left: auto;
    right: 0;
    min-width: 240px;
}

/* Dropdown Item */
.dropdown-item[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--text-secondary);
    text-decoration: none;
    transition: all var(--transition-fast);
}

.dropdown-item:hover[b-2872pg1ztg] {
    background: var(--bg-glass-light);
    color: var(--text-primary);
}

.dropdown-item svg[b-2872pg1ztg] {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    opacity: 0.7;
}

.dropdown-item:hover svg[b-2872pg1ztg] {
    opacity: 1;
}

.dropdown-item.logout:hover[b-2872pg1ztg] {
    background: var(--error-bg);
    color: var(--error);
}

/* Dropdown Divider */
.dropdown-divider[b-2872pg1ztg] {
    height: 1px;
    background: var(--border);
    margin: var(--space-2) 0;
}

/* ═══════════════════════════════════
   ITEM BADGES
   ═══════════════════════════════════ */
.item-badge[b-2872pg1ztg] {
    font-size: 8px;
    font-weight: 700;
    padding: 2px 5px;
    border-radius: var(--radius-full);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-left: auto;
    flex-shrink: 0;
}

.item-badge.iq[b-2872pg1ztg] {
    background: var(--accent-gradient);
    color: white;
    animation: badge-pulse-b-2872pg1ztg 3s ease-in-out infinite;
}

.item-badge.iq.featured[b-2872pg1ztg] {
    background: linear-gradient(135deg, var(--primary) 0%, var(--info) 100%);
    box-shadow: 0 0 12px rgba(19, 223, 255, 0.4);
}

.item-badge.cost[b-2872pg1ztg] {
    background: var(--warning-bg);
    color: var(--warning);
    border: 1px solid var(--warning-border);
}

.item-badge.new[b-2872pg1ztg] {
    background: linear-gradient(135deg, var(--primary) 0%, #1a8cff 100%);
    color: var(--text-inverse);
    box-shadow: 0 0 8px rgba(19, 223, 255, 0.3);
}

.item-badge.crypto[b-2872pg1ztg] {
    background: linear-gradient(135deg, #f7931a 0%, #ff9500 100%);
    color: white;
    box-shadow: 0 0 8px rgba(247, 147, 26, 0.3);
    animation: crypto-pulse-b-2872pg1ztg 2s infinite;
}

@keyframes crypto-pulse-b-2872pg1ztg {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(247, 147, 26, 0.4);
        opacity: 1;
    }
    50% {
        box-shadow: 0 0 0 4px rgba(247, 147, 26, 0);
        opacity: 0.9;
    }
}

@keyframes badge-pulse-b-2872pg1ztg {
    0%, 100% { 
        box-shadow: 0 0 0 0 rgba(167, 139, 250, 0.4);
        opacity: 1;
    }
    50% { 
        box-shadow: 0 0 0 4px rgba(167, 139, 250, 0);
        opacity: 0.9;
    }
}

/* ═══════════════════════════════════
   HEADER CONTROLS
   ═══════════════════════════════════ */
.header-controls[b-2872pg1ztg] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: 0 var(--space-4);
    height: 100%;
    border-left: 1px solid var(--border);
    background: var(--bg-glass);
    overflow: visible;
}

/* Market Status */
.market-status[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-1) var(--space-2);
    background: var(--success-bg);
    border: 1px solid var(--success-border);
    border-radius: var(--radius-sm);
}

.status-dot[b-2872pg1ztg] {
    width: 6px;
    height: 6px;
    background: var(--success);
    border-radius: 50%;
    animation: pulse-glow-b-2872pg1ztg 2s ease-in-out infinite;
}

@keyframes pulse-glow-b-2872pg1ztg {
    0%, 100% { 
        opacity: 1;
        box-shadow: 0 0 4px var(--success);
    }
    50% { 
        opacity: 0.7;
        box-shadow: 0 0 8px var(--success), 0 0 12px var(--success);
    }
}

.status-label[b-2872pg1ztg] {
    font-family: var(--font-mono);
    font-size: var(--text-2xs);
    font-weight: 700;
    color: var(--success);
    letter-spacing: var(--tracking-wider);
}

/* ═══════════════════════════════════
   USER MENU
   ═══════════════════════════════════ */
.user-dropdown[b-2872pg1ztg] {
    height: auto;
}

.user-menu-toggle[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-1) var(--space-3) var(--space-1) var(--space-1);
    background: var(--bg-glass-light);
    border: 1px solid var(--border);
    border-radius: var(--radius-full);
    cursor: pointer;
    transition: all var(--transition-fast);
}

.user-menu-toggle:hover[b-2872pg1ztg] {
    background: var(--bg-glass-medium);
    border-color: var(--border-medium);
}

.user-avatar-ring[b-2872pg1ztg] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary), var(--info));
    border-radius: 50%;
    padding: 2px;
}

.user-avatar[b-2872pg1ztg] {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-base);
    color: var(--text-primary);
    border-radius: 50%;
    font-size: var(--text-2xs);
    font-weight: 700;
}

.user-email[b-2872pg1ztg] {
    font-size: var(--text-xs);
    color: var(--text-secondary);
    max-width: 120px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* User Info Section in Dropdown */
.user-info-section[b-2872pg1ztg] {
    padding: var(--space-2) var(--space-3);
}

.user-name[b-2872pg1ztg] {
    display: block;
    font-size: var(--text-sm);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: var(--space-1);
}

.user-badges[b-2872pg1ztg] {
    display: flex;
    gap: var(--space-2);
}

.badge-tier[b-2872pg1ztg] {
    font-size: 9px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: var(--radius-sm);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.badge-tier.admin[b-2872pg1ztg] {
    background: var(--error-bg);
    color: var(--error);
}

.badge-tier.free[b-2872pg1ztg] {
    background: var(--bg-glass-medium);
    color: var(--text-muted);
}

.badge-tier.lite[b-2872pg1ztg] {
    background: var(--info-bg);
    color: var(--info);
}

.badge-tier.premium[b-2872pg1ztg],
.badge-tier.pro[b-2872pg1ztg] {
    background: rgba(19, 223, 255, 0.12);
    color: var(--primary);
}

/* Control Buttons */
.ctrl-btn[b-2872pg1ztg] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-3);
    background: var(--bg-glass-light);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    color: var(--text-secondary);
    font-size: var(--text-xs);
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-fast);
    cursor: pointer;
}

.ctrl-btn:hover[b-2872pg1ztg] {
    background: var(--bg-glass-medium);
    color: var(--text-primary);
    border-color: var(--border-medium);
}

.ctrl-login:hover[b-2872pg1ztg] {
    background: var(--primary-soft);
    border-color: var(--primary-border);
    color: var(--primary);
}

/* ═══════════════════════════════════
   MAIN CONTENT - Full Width
   ═══════════════════════════════════ */
.terminal-content[b-2872pg1ztg] {
    flex: 1;
    margin-top: var(--header-height);
    /* Admin side rail (AdminSidebar): 56px, or 240px while pinned; 0 for everyone else (app.css) */
    margin-left: var(--admin-rail-width, 0px);
    transition: margin-left 160ms ease;
    min-height: calc(100vh - var(--header-height));
    position: relative;
    z-index: 1;
}

.content-frame[b-2872pg1ztg] {
    padding: var(--space-5);
    max-width: var(--content-max-width);
    margin: 0 auto;
}

/* ═══════════════════════════════════
   BLAZOR ERROR UI
   ═══════════════════════════════════ */
#blazor-error-ui[b-2872pg1ztg] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: var(--z-overlay);
    display: none;
    padding: var(--space-3) var(--space-4);
    background: linear-gradient(135deg, var(--error) 0%, var(--error-dim) 100%);
    color: white;
    font-size: var(--text-sm);
    box-shadow: 0 -4px 24px rgba(255, 87, 87, 0.3);
}

#blazor-error-ui .error-icon[b-2872pg1ztg] {
    margin-right: var(--space-2);
}

#blazor-error-ui .reload[b-2872pg1ztg] {
    color: white;
    text-decoration: underline;
    margin-left: var(--space-2);
    font-weight: 600;
}

#blazor-error-ui .dismiss[b-2872pg1ztg] {
    position: absolute;
    right: var(--space-4);
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    opacity: 0.8;
    transition: opacity var(--transition-fast);
}

#blazor-error-ui .dismiss:hover[b-2872pg1ztg] {
    opacity: 1;
}

/* ═══════════════════════════════════
   RESPONSIVE DESIGN
   ═══════════════════════════════════ */

/* Tablet & Below */
@media (max-width: 1200px) {
    .main-nav[b-2872pg1ztg] {
        gap: var(--space-1);
        padding: 0 var(--space-2);
    }
    
    .nav-link[b-2872pg1ztg],
    .nav-dropdown-toggle[b-2872pg1ztg] {
        padding: var(--space-2);
        font-size: var(--text-xs);
    }
    
    .nav-link span[b-2872pg1ztg],
    .nav-dropdown-toggle span:not(.dropdown-arrow)[b-2872pg1ztg] {
        display: none;
    }
    
    .item-badge[b-2872pg1ztg] {
        display: none;
    }
    
    .brand-text[b-2872pg1ztg] {
        display: none;
    }
    
    .header-brand[b-2872pg1ztg] {
        padding: 0 var(--space-3);
    }
    
    .content-frame[b-2872pg1ztg] {
        padding: var(--space-4);
    }
}

/* Mobile */
@media (max-width: 768px) {
    .terminal-header[b-2872pg1ztg] {
        height: 56px;
    }
    
    .terminal-content[b-2872pg1ztg] {
        margin-top: 56px;
        min-height: calc(100vh - 56px);
    }
    
    .main-nav[b-2872pg1ztg] {
        flex: 1;
        justify-content: center;
        padding: 0 var(--space-2);
    }
    
    .nav-link svg[b-2872pg1ztg],
    .nav-dropdown-toggle svg:first-child[b-2872pg1ztg] {
        width: 18px;
        height: 18px;
    }
    
    .content-frame[b-2872pg1ztg] {
        padding: var(--space-3);
    }
    
    .user-email[b-2872pg1ztg] {
        display: none;
    }
    
    .user-menu-toggle[b-2872pg1ztg] {
        padding: var(--space-1);
        border-radius: 50%;
    }
    
    .user-menu-toggle .dropdown-arrow[b-2872pg1ztg] {
        display: none;
    }
    
    .ctrl-btn span[b-2872pg1ztg] {
        display: none;
    }
    
    .ctrl-login[b-2872pg1ztg] {
        padding: var(--space-2);
        width: 36px;
        height: 36px;
    }
    
    .market-status[b-2872pg1ztg] {
        display: none;
    }
    
    .nav-dropdown-menu[b-2872pg1ztg] {
        position: fixed;
        top: 56px;
        left: 0;
        right: 0;
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
    
    .nav-dropdown-menu.user-menu[b-2872pg1ztg] {
        left: 0;
    }
}

/* Very Small Screens */
@media (max-width: 480px) {
    .header-brand[b-2872pg1ztg] {
        padding: 0 var(--space-2);
    }
    
    .brand-icon img[b-2872pg1ztg] {
        height: 28px;
    }
    
    .header-controls[b-2872pg1ztg] {
        padding: 0 var(--space-2);
        gap: var(--space-2);
    }
    
    .nav-link[b-2872pg1ztg],
    .nav-dropdown-toggle[b-2872pg1ztg] {
        padding: var(--space-1);
    }
}

/* Large Screens */
@media (min-width: 1600px) {
    .content-frame[b-2872pg1ztg] {
        padding: var(--space-6) var(--space-8);
    }
}

/* Ultra-wide Screens */
@media (min-width: 2000px) {
    .content-frame[b-2872pg1ztg] {
        max-width: 1800px;
    }
}

/* ═══════════════════════════════════
   MOBILE APP SHELL (<= 900px)
   Header keeps brand + user only; navigation moves to the
   bottom tab bar (MobileTabBar) and the slide-up more-drawer.
   ═══════════════════════════════════ */
.mobile-menu-btn[b-2872pg1ztg],
.mobile-icon-btn[b-2872pg1ztg],
.mobile-nav-btn[b-2872pg1ztg] {
    display: none;
}

/* "Install TickIQ app" in the desktop user menu is a <button>: make it look like the links around it */
button.dropdown-item[b-2872pg1ztg] {
    width: 100%;
    border: none;
    background: none;
    font-family: inherit;
    text-align: left;
    cursor: pointer;
}

@media (max-width: 900px) {
    /* 44px: the phone's minimum tap target */
    .mobile-menu-btn[b-2872pg1ztg] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin-left: 2px;
        flex-shrink: 0;
        border: none;
        border-radius: 10px;
        background: transparent;
        color: var(--text-secondary);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-menu-btn:active[b-2872pg1ztg] {
        background: rgba(255, 255, 255, 0.06);
        color: var(--primary);
    }

    /* Admin phone header: hamburger at the top left (opens the menu sheet), name + avatar at the right */
    .mobile-nav-btn[b-2872pg1ztg] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        margin-left: 4px;
        flex-shrink: 0;
        border: none;
        border-radius: 10px;
        background: transparent;
        color: var(--text-secondary);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-nav-btn:active[b-2872pg1ztg] {
        background: rgba(255, 255, 255, 0.06);
        color: var(--primary);
    }

    .mobile-menu-btn.with-name[b-2872pg1ztg] {
        width: auto;
        gap: 8px;
        padding: 0 6px 0 10px;
    }

    .mobile-user-name[b-2872pg1ztg] {
        max-width: 120px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 13px;
        font-weight: 600;
        color: var(--text-primary);
    }

    /* Phone header right side: search (Overview) + profile avatar; the desktop user menu
       and LIVE badge step aside */
    .mobile-icon-btn[b-2872pg1ztg] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        flex-shrink: 0;
        border-radius: 10px;
        color: var(--text-secondary);
        -webkit-tap-highlight-color: transparent;
    }

    .mobile-icon-btn:active[b-2872pg1ztg] {
        background: rgba(255, 255, 255, 0.06);
        color: var(--primary);
    }

    .mobile-avatar[b-2872pg1ztg] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: linear-gradient(135deg, #13dfff, #1a8cff);
        color: #04121a;
        font-size: 0.85rem;
        font-weight: 700;
    }

    .user-dropdown[b-2872pg1ztg],
    .market-status[b-2872pg1ztg] {
        display: none;
    }

    .header-controls[b-2872pg1ztg] {
        gap: 2px;
        padding: 0 8px 0 0;
        border-left: none;
        background: transparent;
    }

    /* Desktop nav is redundant once the tab bar is up */
    .main-nav[b-2872pg1ztg] {
        display: none;
    }

    .header-brand[b-2872pg1ztg] {
        border-right: none;
        flex: 1;
        min-width: 0;
    }

    .brand-link[b-2872pg1ztg] {
        min-height: 44px;
    }

    .brand-text[b-2872pg1ztg] {
        display: block;
        height: 16px;
    }

    .version-badge[b-2872pg1ztg] {
        display: none;
    }

    .terminal-header[b-2872pg1ztg] {
        height: 52px;
        padding-top: env(safe-area-inset-top, 0px);
        height: calc(52px + env(safe-area-inset-top, 0px));
    }

    .terminal-content[b-2872pg1ztg] {
        margin-top: calc(52px + env(safe-area-inset-top, 0px));
        min-height: calc(100vh - 52px);
        /* Clear the fixed bottom tab bar and its raised Charts button (16px above the bar) */
        padding-bottom: calc(56px + 16px + env(safe-area-inset-bottom, 0px));
    }

    .content-frame[b-2872pg1ztg] {
        padding: var(--space-3) var(--space-3) var(--space-4);
    }

    /* Dropdown menus open below the (shorter) mobile header */
    .nav-dropdown-menu[b-2872pg1ztg] {
        top: calc(52px + env(safe-area-inset-top, 0px));
    }

    /* Blazor error toast must clear the tab bar */
    #blazor-error-ui[b-2872pg1ztg] {
        bottom: calc(56px + env(safe-area-inset-bottom, 0px));
    }
}

/* Full-bleed pages (charts) manage their own height/padding */
@media (max-width: 900px) {
    .terminal-content.no-frame .content-frame[b-2872pg1ztg] {
        padding: 0;
    }
}

/* Signed-out visitors have no tab bar, so keep their header nav (Pricing) */
@media (max-width: 900px) {
    .main-nav:has(> .anon-link)[b-2872pg1ztg] {
        display: flex;
    }
}

/* Sign out is a POST form; the wrapper must not affect the menu layout */
.logout-form[b-2872pg1ztg] {
    display: contents;
}
/* /Components/Layout/MobileTabBar.razor.rz.scp.css */
/* ===================================
   Mobile App Shell - Bottom Tab Bar + More Drawer
   Only rendered visually at <= 900px; hidden on desktop. The chart page also uses it on wider
   landscape phones (an iPhone Pro Max is 932 x 430): see the rule after this block.
   =================================== */

.mobile-tabbar[b-3gfanrls53],
.mobile-drawer[b-3gfanrls53],
.mobile-drawer-backdrop[b-3gfanrls53],
.install-banner[b-3gfanrls53] {
    display: none;
}

@media (max-width: 900px), (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {

    /* ═══════════════════════════════════
       BOTTOM TAB BAR
       ═══════════════════════════════════ */
    .mobile-tabbar[b-3gfanrls53] {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 900;
        align-items: stretch;
        height: calc(56px + env(safe-area-inset-bottom, 0px));
        padding-bottom: env(safe-area-inset-bottom, 0px);
        background: linear-gradient(180deg, rgba(10, 14, 20, 0.97) 0%, rgba(6, 8, 12, 0.99) 100%);
        border-top: 1px solid var(--border, rgba(255, 255, 255, 0.08));
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.45);
    }

    /* Hairline accent, mirrors the header treatment */
    .mobile-tabbar[b-3gfanrls53]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 1px;
        background: linear-gradient(90deg, transparent 0%, var(--primary, #13dfff) 30%, var(--info, #4a9eff) 70%, transparent 100%);
        opacity: 0.35;
    }

    /* Icon centred on the bar, label on a shared baseline 4px off the bottom (the centre button's label
       sits on the same line, under the raised button). */
    .tab-item[b-3gfanrls53] {
        flex: 1 1 0;
        min-width: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
        padding: 6px 2px 4px;
        text-decoration: none;
        color: var(--text-muted, #64748b);
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.02em;
        line-height: 1;
        position: relative;
        -webkit-tap-highlight-color: transparent;
        transition: color 120ms ease;
    }

    .tab-item svg[b-3gfanrls53] {
        width: 21px;
        height: 21px;
        flex-shrink: 0;
    }

    .tab-item span[b-3gfanrls53] {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .tab-item:active[b-3gfanrls53] {
        color: var(--text-secondary, #94a3b8);
        transform: scale(0.94);
    }

    .tab-item.active[b-3gfanrls53] {
        color: var(--primary, #13dfff);
    }

    /* Something waiting on the admin (unseen sign-ups): a dot on the tab's icon */
    .tab-dot[b-3gfanrls53] {
        position: absolute;
        top: 5px;
        left: calc(50% + 6px);
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--primary, #13dfff);
        box-shadow: 0 0 0 2px #0a0e14;
    }

    /* Active indicator pill above the icon */
    .tab-item.active[b-3gfanrls53]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 26px;
        height: 2px;
        border-radius: 0 0 3px 3px;
        background: var(--primary, #13dfff);
        box-shadow: 0 0 10px rgba(19, 223, 255, 0.6);
    }

    /* ═══════════════════════════════════
       CHARTS - the raised centre button
       A 56px accent-gradient disc that rises 16px above the bar, ringed in the
       bar's colour so it reads as cut out of it; the label stays on the bar's
       label line. Active: a primary ring, a stronger glow and an accent label.
       ═══════════════════════════════════ */
    .tab-item.tab-center[b-3gfanrls53] {
        overflow: visible;
        z-index: 1;
    }

    .tab-item.tab-center:active[b-3gfanrls53] {
        transform: none;
    }

    .tab-item.tab-center.active[b-3gfanrls53]::before {
        display: none;
    }

    .tab-fab[b-3gfanrls53] {
        position: absolute;
        top: -16px;
        left: 50%;
        width: 56px;
        height: 56px;
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        border-radius: 50%;
        border: 4px solid var(--bg-surface, #0a0e14);
        background: linear-gradient(140deg, var(--primary, #13dfff) 0%, #22d3ee 52%, var(--info, #3b82f6) 100%);
        color: var(--text-inverse, #06080c);
        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.55), 0 4px 18px rgba(19, 223, 255, 0.22);
        transform: translateX(-50%);
        transition: transform 140ms ease, box-shadow 200ms ease;
        overflow: visible;
        max-width: none;
    }

    /* Soft top highlight, so the disc reads as raised rather than flat */
    .tab-fab[b-3gfanrls53]::after {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: 50%;
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.32) 0%, rgba(255, 255, 255, 0) 55%);
        pointer-events: none;
    }

    .tab-item.tab-center .tab-fab svg[b-3gfanrls53] {
        position: relative;
        z-index: 1;
        width: 24px;
        height: 24px;
    }

    .tab-item.tab-center:active .tab-fab[b-3gfanrls53] {
        transform: translateX(-50%) scale(0.93);
    }

    .tab-item.tab-center.active .tab-fab[b-3gfanrls53] {
        box-shadow: 0 0 0 2px rgba(19, 223, 255, 0.55), 0 6px 16px rgba(0, 0, 0, 0.5), 0 0 26px rgba(19, 223, 255, 0.55);
    }

    .tab-item.tab-center .tab-label[b-3gfanrls53] {
        color: var(--text-secondary, #94a3b8);
    }

    .tab-item.tab-center.active .tab-label[b-3gfanrls53] {
        color: var(--primary, #13dfff);
    }

    /* ═══════════════════════════════════
       INSTALL PROMPT (sits just above the tab bar)
       ═══════════════════════════════════ */
    .install-banner[b-3gfanrls53] {
        display: flex;
        position: fixed;
        left: 10px;
        right: 10px;
        bottom: calc(56px + env(safe-area-inset-bottom, 0px) + 26px); /* clears the raised Charts button */
        z-index: 940;
        align-items: center;
        gap: 12px;
        padding: 12px 12px 12px 14px;
        border: 1px solid rgba(19, 223, 255, 0.3);
        border-radius: 16px;
        background: rgba(13, 18, 28, 0.96);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
        box-shadow: 0 16px 40px rgba(0, 0, 0, 0.6), 0 0 30px rgba(19, 223, 255, 0.12);
        animation: install-in-b-3gfanrls53 280ms ease-out;
    }

    .install-banner[hidden][b-3gfanrls53],
    .install-banner [hidden][b-3gfanrls53] {
        display: none;
    }

    .install-banner img[b-3gfanrls53] {
        flex-shrink: 0; /* the app icon carries its own rounded corners */
    }

    .install-copy[b-3gfanrls53] {
        flex: 1;
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 2px;
        font-size: 12px;
        line-height: 1.4;
        color: var(--text-secondary, #94a3b8);
    }

    .install-copy strong[b-3gfanrls53] {
        color: #fff;
        font-size: 14px;
    }

    .install-copy svg[b-3gfanrls53] {
        vertical-align: -2px;
        color: var(--primary, #13dfff);
    }

    .install-btn[b-3gfanrls53] {
        flex-shrink: 0;
        padding: 9px 16px;
        border: none;
        border-radius: 10px;
        background: linear-gradient(135deg, #13dfff, #22d3ee);
        color: #04121a;
        font-size: 13px;
        font-weight: 700;
    }

    .install-close[b-3gfanrls53] {
        flex-shrink: 0;
        width: 30px;
        height: 30px;
        min-height: 30px;
        border: none;
        border-radius: 8px;
        background: transparent;
        color: var(--text-muted, #64748b);
        font-size: 14px;
    }

    @keyframes install-in-b-3gfanrls53 {
        from { opacity: 0; transform: translateY(12px); }
        to { opacity: 1; transform: translateY(0); }
    }

    /* ═══════════════════════════════════
       "MORE" DRAWER
       ═══════════════════════════════════ */
    .mobile-drawer-backdrop[b-3gfanrls53] {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 950;
        background: rgba(3, 5, 8, 0.65);
        backdrop-filter: blur(2px);
        opacity: 0;
        pointer-events: none;
        transition: opacity 180ms ease;
    }

    .mobile-drawer-backdrop.open[b-3gfanrls53] {
        opacity: 1;
        pointer-events: auto;
    }

    .mobile-drawer[b-3gfanrls53] {
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 960;
        max-height: 86vh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 8px 16px calc(24px + env(safe-area-inset-bottom, 0px));
        background: linear-gradient(180deg, #0d1119 0%, #06080c 100%);
        border-top: 1px solid var(--border, rgba(255, 255, 255, 0.08));
        border-radius: 18px 18px 0 0;
        box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.6);
        transform: translateY(102%);
        transition: transform 240ms cubic-bezier(0.32, 0.72, 0, 1);
    }

    .mobile-drawer.open[b-3gfanrls53] {
        transform: translateY(0);
    }

    .drawer-handle[b-3gfanrls53] {
        width: 38px;
        height: 4px;
        border-radius: 2px;
        background: rgba(255, 255, 255, 0.18);
        margin: 4px auto 14px;
    }

    .drawer-user[b-3gfanrls53] {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 0 2px 14px;
        border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.08));
        margin-bottom: 14px;
    }

    .drawer-avatar[b-3gfanrls53] {
        width: 38px;
        height: 38px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: linear-gradient(135deg, var(--primary, #13dfff) 0%, #1a8cff 100%);
        color: #04121a;
        font-weight: 800;
        font-size: 16px;
    }

    .drawer-user-meta[b-3gfanrls53] {
        display: flex;
        flex-direction: column;
        gap: 2px;
        min-width: 0;
    }

    .drawer-user-name[b-3gfanrls53] {
        font-size: 13px;
        font-weight: 600;
        color: var(--text-primary, #f0f4f8);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .drawer-user-tier[b-3gfanrls53] {
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--primary, #13dfff);
    }

    .drawer-section-label[b-3gfanrls53] {
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--text-muted, #64748b);
        margin: 4px 2px 8px;
    }

    .drawer-grid[b-3gfanrls53] {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 8px;
        margin-bottom: 16px;
    }

    .drawer-link[b-3gfanrls53] {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 66px;
        padding: 8px 4px;
        border-radius: 12px;
        border: 1px solid var(--border, rgba(255, 255, 255, 0.08));
        background: rgba(255, 255, 255, 0.03);
        color: var(--text-secondary, #94a3b8);
        text-decoration: none;
        font-size: 10px;
        font-weight: 600;
        text-align: center;
        -webkit-tap-highlight-color: transparent;
    }

    .drawer-link svg[b-3gfanrls53] {
        width: 20px;
        height: 20px;
        color: var(--primary, #13dfff);
    }

    .drawer-link:active[b-3gfanrls53] {
        background: rgba(19, 223, 255, 0.1);
        border-color: rgba(19, 223, 255, 0.3);
    }

    /* A count pinned to a tile's corner (unseen sign-ups on Users; tickets waiting on Tickets) */
    .drawer-link.has-count[b-3gfanrls53] {
        position: relative;
    }

    .tile-count[b-3gfanrls53] {
        position: absolute;
        top: 5px;
        right: 5px;
        min-width: 16px;
        height: 16px;
        padding: 0 5px;
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 8px;
        background: var(--primary, #13dfff);
        color: #06080c;
        font-size: 10px;
        font-weight: 800;
        line-height: 1;
    }

    .tile-count.tickets[b-3gfanrls53] {
        background: #ffb547;
    }

    .drawer-list[b-3gfanrls53] {
        display: flex;
        flex-direction: column;
        gap: 2px;
        margin-bottom: 12px;
    }

    .drawer-row[b-3gfanrls53] {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
        min-height: 48px;
        padding: 0 8px;
        border: none;
        border-radius: 10px;
        background: transparent;
        color: var(--text-primary, #f0f4f8);
        font-size: 14px;
        font-weight: 500;
        text-decoration: none;
        text-align: left;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .drawer-row svg[b-3gfanrls53] {
        width: 18px;
        height: 18px;
        flex-shrink: 0;
        color: var(--text-muted, #64748b);
    }

    .drawer-row:active[b-3gfanrls53] {
        background: rgba(255, 255, 255, 0.05);
    }

    .drawer-row.danger[b-3gfanrls53] {
        color: var(--error, #ff5252);
    }

    .drawer-row.danger svg[b-3gfanrls53] {
        color: var(--error, #ff5252);
    }

    .drawer-row.install-row[b-3gfanrls53] {
        color: var(--primary, #13dfff);
    }

    .drawer-row.install-row svg[b-3gfanrls53] {
        color: var(--primary, #13dfff);
    }

    .drawer-version[b-3gfanrls53] {
        text-align: center;
        font-size: 10px;
        letter-spacing: 0.06em;
        color: var(--text-muted, #64748b);
        opacity: 0.7;
        padding-top: 4px;
    }
}

/* Wider landscape phones (> 900 px): the tab bar belongs to the chart page's phone layout only; every other
   page keeps the desktop shell there */
@media (min-width: 901px) and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    body:not(:has(.chart-lw-viewport)) .mobile-tabbar[b-3gfanrls53],
    body:not(:has(.chart-lw-viewport)) .mobile-drawer[b-3gfanrls53],
    body:not(:has(.chart-lw-viewport)) .mobile-drawer-backdrop[b-3gfanrls53],
    body:not(:has(.chart-lw-viewport)) .install-banner[b-3gfanrls53] {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tab-fab[b-3gfanrls53],
    .tab-item[b-3gfanrls53] {
        transition: none;
    }

    .tab-item:active[b-3gfanrls53] {
        transform: none;
    }

    .tab-item.tab-center:active .tab-fab[b-3gfanrls53] {
        transform: translateX(-50%);
    }
}

/* Small phones */
@media (max-width: 380px) {
    .drawer-grid[b-3gfanrls53] {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Sign out is a POST form; the wrapper must not affect the menu layout */
.logout-form[b-3gfanrls53] {
    display: contents;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-9pd96e8sxa],
.components-reconnect-repeated-attempt-visible[b-9pd96e8sxa],
.components-reconnect-failed-visible[b-9pd96e8sxa],
.components-pause-visible[b-9pd96e8sxa],
.components-resume-failed-visible[b-9pd96e8sxa],
.components-rejoining-animation[b-9pd96e8sxa] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-retrying[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-failed[b-9pd96e8sxa],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-9pd96e8sxa] {
    display: block;
}


#components-reconnect-modal[b-9pd96e8sxa] {
    background-color: #141a24;
    color: #f0f4f8;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0.75rem;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-9pd96e8sxa 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-9pd96e8sxa 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-9pd96e8sxa 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-9pd96e8sxa]::backdrop {
    background-color: rgba(6, 8, 12, 0.85);
    animation: components-reconnect-modal-fadeInOpacity-b-9pd96e8sxa 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-9pd96e8sxa {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-9pd96e8sxa {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-9pd96e8sxa {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-9pd96e8sxa] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-9pd96e8sxa] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-9pd96e8sxa] {
    border: 0;
    background-color: #13dfff;
    color: #06080c;
    font-weight: 600;
    padding: 8px 24px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

    #components-reconnect-modal button:hover[b-9pd96e8sxa] {
        background-color: #00c4e2;
        transform: translateY(-1px);
    }

    #components-reconnect-modal button:active[b-9pd96e8sxa] {
        background-color: #00afca;
        transform: translateY(0);
    }

.components-rejoining-animation[b-9pd96e8sxa] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-9pd96e8sxa] {
        position: absolute;
        border: 3px solid #13dfff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-9pd96e8sxa 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-9pd96e8sxa] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-9pd96e8sxa {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/MarketOverview/CapitalAllocationPanel.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════════
   CapitalAllocationPanel.razor.css
   Premium allocation card with visual bars showing capital distribution
   ═══════════════════════════════════════════════════════════════════════════════ */

/* ── Main Card Container ────────────────────────────────────────────────────── */
.allocation-card[b-gpgkyepr86] {
    background: rgba(15, 23, 42, 0.6);
    border-radius: 12px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* ── Section Header ─────────────────────────────────────────────────────────── */
.section-header[b-gpgkyepr86] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.section-icon[b-gpgkyepr86] {
    font-size: 1.25rem;
}

.section-title[b-gpgkyepr86] {
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #94a3b8;
    text-transform: uppercase;
}

/* ── Best Opportunity Badge ─────────────────────────────────────────────────── */
.best-badge[b-gpgkyepr86] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.15), rgba(34, 197, 94, 0.05));
    border: 1px solid rgba(34, 197, 94, 0.3);
    padding: 10px 14px;
    border-radius: 8px;
    margin-bottom: 16px;
    font-weight: 600;
    color: #22c55e;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    animation: badge-glow-b-gpgkyepr86 3s ease-in-out infinite;
}

@keyframes badge-glow-b-gpgkyepr86 {
    0%, 100% {
        box-shadow: 0 0 10px rgba(34, 197, 94, 0.2);
    }
    50% {
        box-shadow: 0 0 20px rgba(34, 197, 94, 0.4);
    }
}

/* ── Allocation Row ─────────────────────────────────────────────────────────── */
.allocation-row[b-gpgkyepr86] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0 4px 0;
}

.allocation-row.best .allocation-symbol[b-gpgkyepr86] {
    color: #22c55e;
    font-weight: 700;
}

.allocation-symbol[b-gpgkyepr86] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #e2e8f0;
    min-width: 40px;
}

.allocation-arrow[b-gpgkyepr86] {
    color: #475569;
    font-size: 0.85rem;
}

.allocation-bar-container[b-gpgkyepr86] {
    flex: 1;
    height: 10px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 5px;
    overflow: hidden;
}

.allocation-bar[b-gpgkyepr86] {
    height: 100%;
    border-radius: 5px;
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.allocation-bar.best[b-gpgkyepr86] {
    background: linear-gradient(90deg, #22c55e, #16a34a);
    box-shadow: 0 0 10px rgba(34, 197, 94, 0.4);
}

.allocation-bar.good[b-gpgkyepr86] {
    background: linear-gradient(90deg, #3b82f6, #2563eb);
}

.allocation-bar.lagging[b-gpgkyepr86] {
    background: linear-gradient(90deg, #f59e0b, #d97706);
}

.allocation-percent[b-gpgkyepr86] {
    font-size: 0.9rem;
    font-weight: 700;
    color: #e2e8f0;
    min-width: 40px;
    text-align: right;
}

/* ── Allocation Rationale ───────────────────────────────────────────────────── */
.allocation-rationale[b-gpgkyepr86] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 2px 0 8px 52px;
    font-size: 0.75rem;
    color: #94a3b8;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.allocation-rationale:last-child[b-gpgkyepr86] {
    border-bottom: none;
}

.allocation-rationale .checkmark[b-gpgkyepr86] {
    color: #22c55e;
}

.allocation-rationale .warning[b-gpgkyepr86] {
    color: #f59e0b;
}

/* ── No Data State ──────────────────────────────────────────────────────────── */
.no-data[b-gpgkyepr86] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    color: #64748b;
    font-size: 0.85rem;
}

/* ── Responsive ─────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .allocation-card[b-gpgkyepr86] {
        padding: 16px;
    }
    
    .best-badge[b-gpgkyepr86] {
        font-size: 0.85rem;
        padding: 8px 12px;
    }
    
    .allocation-rationale[b-gpgkyepr86] {
        padding-left: 40px;
    }
}
/* /Components/MarketOverview/ContextTabs.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════════
   ContextTabs.razor.css
   Supporting data organized by category with smooth tab transitions
   ═══════════════════════════════════════════════════════════════════════════════ */

/* ── Main Container ────────────────────────────────────────────────────────────── */
.context-tabs-container[b-gfqs8yldja] {
    border-radius: 12px;
    background: linear-gradient(145deg, #0f172a, #020617);
    border: 1px solid rgba(255, 255, 255, 0.06);
    overflow: hidden;
}

/* ── Tabs Header ──────────────────────────────────────────────────────────────── */
.tabs-header[b-gfqs8yldja] {
    display: flex;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(0, 0, 0, 0.2);
}

.tab-button[b-gfqs8yldja] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 14px 16px;
    background: transparent;
    border: none;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
    color: #64748b;
}

.tab-button:hover[b-gfqs8yldja] {
    background: rgba(255, 255, 255, 0.03);
    color: #94a3b8;
}

.tab-button.active[b-gfqs8yldja] {
    color: #e2e8f0;
    background: rgba(255, 255, 255, 0.02);
}

.tab-button.active[b-gfqs8yldja]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 20%;
    right: 20%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #3b82f6, transparent);
    box-shadow: 0 0 10px rgba(59, 130, 246, 0.5);
}

.tab-icon[b-gfqs8yldja] {
    font-size: 1rem;
}

.tab-label[b-gfqs8yldja] {
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}

/* ── Tabs Content ─────────────────────────────────────────────────────────────── */
.tabs-content[b-gfqs8yldja] {
    padding: 20px;
    min-height: 200px;
}

.tab-panel[b-gfqs8yldja] {
    display: none;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.tab-panel.active[b-gfqs8yldja] {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* ── Overview Tab ─────────────────────────────────────────────────────────────── */
.overview-grid[b-gfqs8yldja] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 16px;
}

.overview-stat[b-gfqs8yldja] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    background: rgba(255, 255, 255, 0.03);
    border-radius: 8px;
    border-left: 2px solid rgba(255, 255, 255, 0.1);
}

.stat-label[b-gfqs8yldja] {
    font-size: 0.65rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #64748b;
}

.stat-value[b-gfqs8yldja] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #e2e8f0;
}

.stat-value.bullish[b-gfqs8yldja] {
    color: #22c55e;
}

.stat-value.mixed[b-gfqs8yldja] {
    color: #f59e0b;
}

.stat-value.bearish[b-gfqs8yldja] {
    color: #ef4444;
}

.stat-value.caution[b-gfqs8yldja] {
    color: #f97316;
}

.market-read-box[b-gfqs8yldja] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 16px;
    background: rgba(59, 130, 246, 0.1);
    border-radius: 8px;
    border-left: 3px solid #3b82f6;
}

.read-label[b-gfqs8yldja] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #60a5fa;
}

.read-text[b-gfqs8yldja] {
    font-size: 0.9rem;
    color: #e2e8f0;
    line-height: 1.5;
}

/* ── Internals Tab ────────────────────────────────────────────────────────────── */
.internals-grid[b-gfqs8yldja] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-bottom: 16px;
}

.internal-metric[b-gfqs8yldja] {
    padding: 12px 14px;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 8px;
}

.metric-header[b-gfqs8yldja] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
}

.metric-icon[b-gfqs8yldja] {
    font-size: 0.9rem;
}

.metric-name[b-gfqs8yldja] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
}

.metric-bar[b-gfqs8yldja] {
    height: 6px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 8px;
}

.metric-fill[b-gfqs8yldja] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.5s ease;
}

.metric-fill.positive[b-gfqs8yldja] {
    background: linear-gradient(90deg, #22c55e, #4ade80);
}

.metric-fill.neutral[b-gfqs8yldja] {
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.metric-fill.negative[b-gfqs8yldja] {
    background: linear-gradient(90deg, #ef4444, #f87171);
}

.metric-fill.strength.strong[b-gfqs8yldja] {
    background: linear-gradient(90deg, #22c55e, #4ade80);
}

.metric-fill.strength.moderate[b-gfqs8yldja] {
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.metric-fill.strength.weak[b-gfqs8yldja] {
    background: linear-gradient(90deg, #6b7280, #9ca3af);
}

.metric-value[b-gfqs8yldja] {
    font-size: 0.85rem;
    font-weight: 700;
    color: #e2e8f0;
    text-align: right;
}

.risk-override-alert[b-gfqs8yldja] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(239, 68, 68, 0.15);
    border-radius: 8px;
    border: 1px solid rgba(239, 68, 68, 0.3);
    margin-bottom: 16px;
    animation: pulse-risk-b-gfqs8yldja 2s ease-in-out infinite;
}

@keyframes pulse-risk-b-gfqs8yldja {
    0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.2); }
    50% { box-shadow: 0 0 15px 0 rgba(239, 68, 68, 0.3); }
}

.alert-icon[b-gfqs8yldja] {
    font-size: 1rem;
}

.alert-text[b-gfqs8yldja] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #fca5a5;
}

.sector-hints[b-gfqs8yldja] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 12px 14px;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 8px;
}

.hints-label[b-gfqs8yldja] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #64748b;
}

.hints-text[b-gfqs8yldja] {
    font-size: 0.85rem;
    color: #94a3b8;
}

/* ── Sentiment Tab ────────────────────────────────────────────────────────────── */
.sentiment-display[b-gfqs8yldja] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.greed-fear-gauge[b-gfqs8yldja] {
    padding: 16px;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 10px;
}

.gauge-label[b-gfqs8yldja] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #64748b;
    margin-bottom: 12px;
}

.gauge-visual[b-gfqs8yldja] {
    margin-bottom: 12px;
}

.gauge-track[b-gfqs8yldja] {
    position: relative;
    height: 12px;
    background: linear-gradient(90deg, #ef4444, #f59e0b, #fbbf24, #22c55e, #16a34a);
    border-radius: 6px;
    overflow: hidden;
}

.gauge-fill[b-gfqs8yldja] {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: transparent;
}

.gauge-marker[b-gfqs8yldja] {
    position: absolute;
    top: -4px;
    width: 4px;
    height: 20px;
    background: #ffffff;
    border-radius: 2px;
    transform: translateX(-50%);
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}

.gauge-labels[b-gfqs8yldja] {
    display: flex;
    justify-content: space-between;
    margin-top: 8px;
}

.gauge-labels span[b-gfqs8yldja] {
    font-size: 0.6rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.extreme-fear[b-gfqs8yldja] {
    color: #ef4444;
}

.neutral[b-gfqs8yldja] {
    color: #fbbf24;
}

.extreme-greed[b-gfqs8yldja] {
    color: #22c55e;
}

.gauge-value[b-gfqs8yldja] {
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.value-number[b-gfqs8yldja] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #e2e8f0;
}

.value-label[b-gfqs8yldja] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #94a3b8;
}

.contrarian-signal[b-gfqs8yldja] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    border-radius: 8px;
}

.contrarian-signal.bullish-contrarian[b-gfqs8yldja] {
    background: rgba(34, 197, 94, 0.1);
    border-left: 3px solid #22c55e;
}

.contrarian-signal.bearish-contrarian[b-gfqs8yldja] {
    background: rgba(239, 68, 68, 0.1);
    border-left: 3px solid #ef4444;
}

.signal-icon[b-gfqs8yldja] {
    font-size: 1rem;
}

.signal-label[b-gfqs8yldja] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #64748b;
}

.signal-text[b-gfqs8yldja] {
    font-size: 0.85rem;
    color: #e2e8f0;
}

.divergence-alert[b-gfqs8yldja] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: rgba(245, 158, 11, 0.1);
    border-radius: 8px;
    border-left: 3px solid #f59e0b;
}

.divergence-icon[b-gfqs8yldja] {
    font-size: 1rem;
}

.divergence-label[b-gfqs8yldja] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #f59e0b;
}

.divergence-text[b-gfqs8yldja] {
    font-size: 0.85rem;
    color: #e2e8f0;
}

.sentiment-interpretation[b-gfqs8yldja] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    background: rgba(59, 130, 246, 0.08);
    border-radius: 8px;
}

.interp-icon[b-gfqs8yldja] {
    font-size: 1rem;
    margin-top: 2px;
}

.interp-text[b-gfqs8yldja] {
    font-size: 0.85rem;
    color: #94a3b8;
    line-height: 1.5;
}

/* ── Responsive ───────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .overview-grid[b-gfqs8yldja] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .internals-grid[b-gfqs8yldja] {
        grid-template-columns: 1fr;
    }
    
    .tab-label[b-gfqs8yldja] {
        display: none;
    }
    
    .tab-icon[b-gfqs8yldja] {
        font-size: 1.2rem;
    }
}
/* /Components/MarketOverview/StrategyModeBox.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════════
   StrategyModeBox.razor.css
   What strategy works RIGHT NOW - Premium dark card with dynamic glow
   ═══════════════════════════════════════════════════════════════════════════════ */

/* ── Main Container ────────────────────────────────────────────────────────────── */
.strategy-mode-box[b-5g0tba27zc] {
    border-radius: 12px;
    padding: 20px 24px;
    background: linear-gradient(145deg, #0f172a, #020617);
    border: 1px solid rgba(255, 255, 255, 0.06);
    box-shadow: 0 0 30px rgba(var(--glow-rgb, 107, 114, 128), 0.15);
    transition: box-shadow 0.4s ease, border-color 0.4s ease;
}

.strategy-mode-box.glow-favorable[b-5g0tba27zc] {
    border-color: rgba(34, 197, 94, 0.2);
    box-shadow: 0 0 35px rgba(34, 197, 94, 0.2);
}

.strategy-mode-box.glow-neutral[b-5g0tba27zc] {
    border-color: rgba(245, 158, 11, 0.15);
    box-shadow: 0 0 30px rgba(245, 158, 11, 0.15);
}

.strategy-mode-box.glow-caution[b-5g0tba27zc] {
    border-color: rgba(239, 68, 68, 0.2);
    box-shadow: 0 0 30px rgba(239, 68, 68, 0.2);
}

/* ── Mode Header ──────────────────────────────────────────────────────────────── */
.mode-header[b-5g0tba27zc] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.mode-icon[b-5g0tba27zc] {
    font-size: 1.5rem;
}

.mode-label[b-5g0tba27zc] {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #64748b;
}

.mode-value[b-5g0tba27zc] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--glow-color, #e2e8f0);
    text-shadow: 0 0 20px rgba(var(--glow-rgb, 107, 114, 128), 0.4);
}

/* ── Edge Section ─────────────────────────────────────────────────────────────── */
.edge-section[b-5g0tba27zc] {
    margin-bottom: 20px;
}

.edge-title[b-5g0tba27zc] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #22c55e;
    margin-bottom: 12px;
}

.edge-list[b-5g0tba27zc] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.edge-item[b-5g0tba27zc] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 8px 12px;
    background: rgba(34, 197, 94, 0.08);
    border-radius: 6px;
    border-left: 2px solid #22c55e;
    transition: background 0.2s ease;
}

.edge-item:hover[b-5g0tba27zc] {
    background: rgba(34, 197, 94, 0.12);
}

.edge-arrow[b-5g0tba27zc] {
    color: #22c55e;
    font-weight: 600;
}

.edge-text[b-5g0tba27zc] {
    font-size: 0.9rem;
    color: #e2e8f0;
}

/* ── Caution Section ──────────────────────────────────────────────────────────── */
.caution-section[b-5g0tba27zc] {
    margin-bottom: 16px;
}

.caution-title[b-5g0tba27zc] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    color: #f59e0b;
    margin-bottom: 12px;
}

.caution-icon[b-5g0tba27zc] {
    font-size: 0.85rem;
}

.caution-list[b-5g0tba27zc] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.caution-item[b-5g0tba27zc] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 6px 12px;
    background: rgba(245, 158, 11, 0.06);
    border-radius: 6px;
    border-left: 2px solid rgba(245, 158, 11, 0.5);
    transition: background 0.2s ease;
}

.caution-item:hover[b-5g0tba27zc] {
    background: rgba(245, 158, 11, 0.1);
}

.caution-arrow[b-5g0tba27zc] {
    color: #f59e0b;
    font-size: 0.85rem;
}

.caution-text[b-5g0tba27zc] {
    font-size: 0.85rem;
    color: #94a3b8;
}

/* ── Low Conviction Warning ───────────────────────────────────────────────────── */
.low-conviction-warning[b-5g0tba27zc] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(239, 68, 68, 0.1);
    border-radius: 8px;
    border: 1px solid rgba(239, 68, 68, 0.3);
    margin-top: 16px;
    animation: pulse-warning-b-5g0tba27zc 2s ease-in-out infinite;
}

@keyframes pulse-warning-b-5g0tba27zc {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.2);
    }
    50% {
        box-shadow: 0 0 15px 0 rgba(239, 68, 68, 0.3);
    }
}

.warning-icon[b-5g0tba27zc] {
    font-size: 1rem;
}

.warning-text[b-5g0tba27zc] {
    font-size: 0.8rem;
    font-weight: 500;
    color: #fca5a5;
}

/* ── Responsive ───────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .strategy-mode-box[b-5g0tba27zc] {
        padding: 16px 18px;
    }
    
    .mode-header[b-5g0tba27zc] {
        flex-wrap: wrap;
    }
    
    .mode-value[b-5g0tba27zc] {
        font-size: 1rem;
    }
}
/* /Components/Overview/MiniOverviewPanel.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════
   Mini Overview — compact decision read for the chart side drawer
   ═══════════════════════════════════════════════════════════════ */

.mini-ovw[b-raxqso04hs] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 4px 2px 8px;
    animation: mo-fade-b-raxqso04hs 0.28s ease;
}

@keyframes mo-fade-b-raxqso04hs {
    from { opacity: 0; transform: translateY(4px); }
    to   { opacity: 1; transform: translateY(0); }
}

.mini-ovw-empty[b-raxqso04hs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 48px 20px;
    color: #6b7280;
    text-align: center;
    font-size: 13px;
}
.mini-ovw-empty i[b-raxqso04hs] { font-size: 26px; opacity: 0.5; }

/* ── Decision hero ─────────────────────────────────────────── */
.mo-hero[b-raxqso04hs] {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 16px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        #12161f;
    box-shadow: 0 8px 24px -14px rgba(0, 0, 0, 0.8);
    isolation: isolate;
}

.mo-hero-glow[b-raxqso04hs] {
    position: absolute;
    inset: -40% -20% auto -20%;
    height: 160%;
    z-index: -1;
    opacity: 0.55;
    filter: blur(28px);
    transition: background 0.4s ease;
    background: radial-gradient(60% 80% at 20% 0%, rgba(120, 130, 150, 0.18), transparent 70%);
}
.mo-hero.bull .mo-hero-glow[b-raxqso04hs] { background: radial-gradient(65% 90% at 15% 0%, rgba(34, 197, 94, 0.32), transparent 70%); }
.mo-hero.bear .mo-hero-glow[b-raxqso04hs] { background: radial-gradient(65% 90% at 15% 0%, rgba(239, 68, 68, 0.30), transparent 70%); }
.mo-hero.loading .mo-hero-glow[b-raxqso04hs] { animation: mo-pulse-b-raxqso04hs 1.4s ease-in-out infinite; }

@keyframes mo-pulse-b-raxqso04hs { 0%,100% { opacity: 0.25; } 50% { opacity: 0.6; } }

.mo-hero-main[b-raxqso04hs] { display: flex; align-items: center; gap: 12px; min-width: 0; }
.mo-hero-icon[b-raxqso04hs] { display: inline-flex; font-size: 22px; }
.mo-hero-text[b-raxqso04hs] { min-width: 0; }

.mo-hero-action[b-raxqso04hs] {
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.1;
    color: #e6edf3;
}
.mo-hero.bull .mo-hero-action[b-raxqso04hs] { color: #4ade80; }
.mo-hero.bear .mo-hero-action[b-raxqso04hs] { color: #f87171; }

.mo-hero-sub[b-raxqso04hs] {
    margin-top: 3px;
    font-size: 11.5px;
    color: #8b98a9;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mo-hero-conf[b-raxqso04hs] { flex-shrink: 0; text-align: right; min-width: 66px; }
.mo-hero-conf-val[b-raxqso04hs] { font-size: 20px; font-weight: 800; color: #e6edf3; line-height: 1; }
.mo-hero-conf-val span[b-raxqso04hs] { font-size: 12px; font-weight: 600; color: #8b98a9; margin-left: 1px; }
.mo-hero-conf-label[b-raxqso04hs] { font-size: 9.5px; text-transform: uppercase; letter-spacing: 0.08em; color: #6b7280; margin-top: 2px; }
.mo-hero-conf-bar[b-raxqso04hs] {
    margin-top: 6px;
    height: 4px;
    border-radius: 3px;
    background: rgba(255, 255, 255, 0.08);
    overflow: hidden;
}
.mo-hero-conf-bar span[b-raxqso04hs] {
    display: block;
    height: 100%;
    border-radius: 3px;
    background: linear-gradient(90deg, #8b98a9, #c9d3e0);
    transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.mo-hero.bull .mo-hero-conf-bar span[b-raxqso04hs] { background: linear-gradient(90deg, #16a34a, #4ade80); }
.mo-hero.bear .mo-hero-conf-bar span[b-raxqso04hs] { background: linear-gradient(90deg, #dc2626, #f87171); }

/* ── Signal tiles ──────────────────────────────────────────── */
.mo-grid[b-raxqso04hs] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.mo-tile[b-raxqso04hs] {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 11px 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    background: rgba(255, 255, 255, 0.022);
    transition: transform 0.15s ease, border-color 0.2s ease, background 0.2s ease;
}
.mo-tile:hover[b-raxqso04hs] {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, 0.045);
    border-color: rgba(255, 255, 255, 0.12);
}

/* left accent edge */
.mo-tile-edge[b-raxqso04hs] {
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
    background: #3a4250;
    opacity: 0.8;
}
.mo-tile.bull .mo-tile-edge[b-raxqso04hs] { background: linear-gradient(180deg, #4ade80, #16a34a); }
.mo-tile.bear .mo-tile-edge[b-raxqso04hs] { background: linear-gradient(180deg, #f87171, #dc2626); }
.mo-tile.neutral .mo-tile-edge[b-raxqso04hs] { background: #64748b; }
.mo-tile.na[b-raxqso04hs] { opacity: 0.62; }
.mo-tile.na .mo-tile-edge[b-raxqso04hs] { background: #30363d; }

.mo-tile-top[b-raxqso04hs] { display: flex; align-items: center; gap: 7px; }
.mo-tile-icon[b-raxqso04hs] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px; height: 22px;
    border-radius: 7px;
    font-size: 12px;
    color: #c9d3e0;
    background: rgba(255, 255, 255, 0.06);
}
.mo-tile.bull .mo-tile-icon[b-raxqso04hs] { color: #4ade80; background: rgba(34, 197, 94, 0.12); }
.mo-tile.bear .mo-tile-icon[b-raxqso04hs] { color: #f87171; background: rgba(239, 68, 68, 0.12); }
.mo-tile-label[b-raxqso04hs] {
    font-size: 11.5px;
    font-weight: 600;
    color: #b3bdc9;
    letter-spacing: -0.01em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mo-tile-read[b-raxqso04hs] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }

.mo-badge[b-raxqso04hs] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: -0.01em;
    background: rgba(255, 255, 255, 0.08);
    color: #c9d3e0;
}
.mo-badge.bull[b-raxqso04hs] { background: rgba(34, 197, 94, 0.16); color: #4ade80; }
.mo-badge.bear[b-raxqso04hs] { background: rgba(239, 68, 68, 0.16); color: #f87171; }
.mo-badge.neutral[b-raxqso04hs] { background: rgba(148, 163, 184, 0.14); color: #94a3b8; }
.mo-arrow[b-raxqso04hs] { font-size: 9px; }
.mo-badge-conf[b-raxqso04hs] { opacity: 0.7; font-weight: 600; margin-left: 1px; }

.mo-tile-detail[b-raxqso04hs] { font-size: 10.5px; color: #8b98a9; font-variant-numeric: tabular-nums; }
.mo-tile-metric[b-raxqso04hs] {
    font-size: 15px;
    font-weight: 800;
    color: #e6edf3;
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
}
.mo-tile.na .mo-tile-metric[b-raxqso04hs] { color: #8b98a9; font-size: 12px; font-weight: 600; }

/* ── Full-overview link ────────────────────────────────────── */
.mo-full-link[b-raxqso04hs] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    width: 100%;
    margin-top: 2px;
    padding: 9px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.02);
    color: #b3bdc9;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
.mo-full-link:hover[b-raxqso04hs] {
    background: rgba(167, 139, 250, 0.1);
    border-color: rgba(167, 139, 250, 0.35);
    color: #c4b5fd;
}
.mo-full-link i[b-raxqso04hs] { font-size: 11px; }
/* /Components/Overview/ZoneTimelineChart.razor.rz.scp.css */
.ztl-wrap[b-o1r312qyxu] {
    width: 100%;
}

.ztl-svg[b-o1r312qyxu] {
    width: 100%;
    height: auto;
    display: block;
}

.ztl-empty[b-o1r312qyxu] {
    padding: 24px;
    text-align: center;
    color: var(--text-muted, #8b949e);
    font-size: 0.85rem;
}

.ztl-axis[b-o1r312qyxu] {
    stroke: var(--terminal-border, #30363d);
    stroke-width: 1;
    stroke-dasharray: 3 4;
}

/* Each band fades + slides in on a stagger */
.ztl-band[b-o1r312qyxu] {
    opacity: 0;
    animation: ztl-in-b-o1r312qyxu 0.45s ease-out forwards;
}

@keyframes ztl-in-b-o1r312qyxu {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; }
}

.ztl-band-bg[b-o1r312qyxu] {
    fill: var(--terminal-surface, #161b22);
    stroke: var(--terminal-border, #30363d);
    stroke-width: 1;
    transition: fill 0.2s ease;
}

.ztl-band.current .ztl-band-bg[b-o1r312qyxu] {
    fill: color-mix(in srgb, var(--accent, #a78bfa) 12%, var(--terminal-surface, #161b22));
}

.ztl-bar[b-o1r312qyxu] {
    transform-origin: center;
    animation: ztl-grow-b-o1r312qyxu 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

@keyframes ztl-grow-b-o1r312qyxu {
    from { transform: scaleX(0); opacity: 0.3; }
    to   { transform: scaleX(1); opacity: 1; }
}

.ztl-move.pos[b-o1r312qyxu] { fill: #22c55e; }
.ztl-move.neg[b-o1r312qyxu] { fill: #ef4444; }

.ztl-current-ring[b-o1r312qyxu] {
    fill: none;
    stroke: var(--accent, #a78bfa);
    stroke-width: 2;
    animation: ztl-pulse-b-o1r312qyxu 2.2s ease-in-out infinite;
}

@keyframes ztl-pulse-b-o1r312qyxu {
    0%, 100% { stroke-opacity: 0.55; }
    50%      { stroke-opacity: 1; }
}

.ztl-here-dot[b-o1r312qyxu] {
    fill: var(--accent, #a78bfa);
    stroke: #fff;
    stroke-width: 2;
    animation: ztl-pulse-b-o1r312qyxu 2.2s ease-in-out infinite;
}

.ztl-note[b-o1r312qyxu] {
    margin-top: 8px;
    font-size: 0.75rem;
    color: var(--text-muted, #8b949e);
    display: flex;
    align-items: center;
    gap: 6px;
}
.ztl-note i[b-o1r312qyxu] { color: var(--accent, #a78bfa); }
/* /Components/Pages/AccessDenied.razor.rz.scp.css */
/* Moved from the inline <style> block in AccessDenied.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.access-denied-container)[b-h88lj5224t] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 60vh;
    padding: 2rem;
}

:where(.access-denied-content)[b-h88lj5224t] {
    text-align: center;
    max-width: 500px;
}

:where(.access-denied-icon)[b-h88lj5224t] {
    font-size: 5rem;
    color: var(--bs-warning, #ffc107);
    margin-bottom: 1.5rem;
}

:where(.access-denied-content)[b-h88lj5224t]  .lead {
    color: var(--bs-secondary, #6c757d);
}
/* /Components/Pages/Account.razor.rz.scp.css */
/* Moved from the inline <style> block in Account.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.dashboard-page)[b-zid6d3csch] {
    max-width: 1200px;
    margin: 0 auto;
    padding: var(--space-4);
}

/* Hero Section */
:where(.dashboard-hero)[b-zid6d3csch] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
    border: 1px solid var(--border);
    border-radius: var(--radius-2xl);
    padding: var(--space-6);
    margin-bottom: var(--space-6);
}

:where(.hero-content)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-5);
}

:where(.hero-avatar)[b-zid6d3csch] {
    position: relative;
}

:where(.avatar-glow)[b-zid6d3csch] {
    position: absolute;
    inset: -4px;
    background: linear-gradient(135deg, var(--primary), var(--purple-500, #1a8cff));
    border-radius: 50%;
    filter: blur(12px);
    opacity: 0.5;
}

:where(.avatar-circle)[b-zid6d3csch] {
    position: relative;
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--primary), var(--purple-500, #1a8cff));
    border-radius: 50%;
    font-size: var(--text-2xl);
    font-weight: 700;
    color: white;
}

:where(.hero-email)[b-zid6d3csch] {
    font-size: var(--text-sm);
    color: var(--text-muted);
    margin: 0 0 var(--space-3) 0;
}

:where(.hero-badges)[b-zid6d3csch] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
}

:where(.plan-chip)[b-zid6d3csch] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-full);
    font-size: var(--text-xs);
    font-weight: 600;
    text-transform: uppercase;
}

:where(.plan-chip).free[b-zid6d3csch] {
    background: var(--bg-elevated);
    color: var(--text-muted);
}

:where(.plan-chip).tradeiq[b-zid6d3csch] {
    background: linear-gradient(135deg, var(--primary), var(--info));
    color: white;
}

:where(.plan-chip).signals[b-zid6d3csch] {
    background: linear-gradient(135deg, var(--purple-500, #1a8cff), var(--primary));
    color: white;
}

:where(.admin-chip)[b-zid6d3csch] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-full);
    background: var(--error-bg);
    color: var(--error);
    font-size: var(--text-xs);
    font-weight: 600;
}

:where(.trial-chip)[b-zid6d3csch] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-full);
    background: var(--warning-bg);
    color: var(--warning);
    font-size: var(--text-xs);
    font-weight: 600;
}

:where(.stat-header)[b-zid6d3csch] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4);
    margin-bottom: var(--space-4);
}

:where(.stat-info)[b-zid6d3csch] {
    flex: 1;
}

:where(.stat-current)[b-zid6d3csch] {
    font-size: var(--text-3xl);
    font-weight: 700;
    color: var(--primary);
}

:where(.stat-separator)[b-zid6d3csch] {
    font-size: var(--text-xl);
    color: var(--text-muted);
}

:where(.stat-max)[b-zid6d3csch] {
    font-size: var(--text-xl);
    color: var(--text-muted);
}

:where(.stat-progress)[b-zid6d3csch] {
    margin-top: var(--space-2);
}

:where(.progress-track)[b-zid6d3csch] {
    height: 8px;
    background: var(--bg-elevated);
    border-radius: var(--radius-full);
    overflow: hidden;
}

:where(.progress-labels)[b-zid6d3csch] {
    display: flex;
    justify-content: space-between;
    margin-top: var(--space-2);
}

:where(.used-label)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.reset-label)[b-zid6d3csch],
:where(.static-label)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-1);
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.stat-alert)[b-zid6d3csch] {
    margin-top: var(--space-3);
    padding: var(--space-2) var(--space-3);
    background: var(--error-bg);
    border-radius: var(--radius-md);
    font-size: var(--text-xs);
    color: var(--error);
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

:where(.stat-warning)[b-zid6d3csch] {
    margin-top: var(--space-3);
    padding: var(--space-2) var(--space-3);
    background: var(--warning-bg);
    border-radius: var(--radius-md);
    font-size: var(--text-xs);
    color: var(--warning);
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

/* Mini Stats Grid */
:where(.mini-stats-grid)[b-zid6d3csch] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-3);
}

:where(.mini-stat)[b-zid6d3csch] {
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: var(--space-3);
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

:where(.mini-icon)[b-zid6d3csch] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
}

:where(.mini-icon).watchlist[b-zid6d3csch] {
    background: var(--info-bg);
    color: var(--info);
}

:where(.mini-icon).alerts[b-zid6d3csch] {
    background: var(--warning-bg);
    color: var(--warning);
}

:where(.mini-icon).journal[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.mini-icon).charts[b-zid6d3csch] {
    background: var(--purple-bg, rgba(167, 139, 250, 0.12));
    color: var(--purple-500, #1a8cff);
}

:where(.mini-info)[b-zid6d3csch] {
    display: flex;
    flex-direction: column;
}

:where(.mini-label)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.mini-value)[b-zid6d3csch] {
    font-size: var(--text-sm);
    font-weight: 600;
}

/* Dashboard Grid */
:where(.dashboard-grid)[b-zid6d3csch] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-4);
}

@media (max-width: 768px) {
    :where(.dashboard-grid)[b-zid6d3csch] {
        grid-template-columns: 1fr;
    }
}

:where(.dashboard-card)[b-zid6d3csch] {
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

:where(.badge-tag)[b-zid6d3csch] {
    font-size: var(--text-2xs);
    font-weight: 600;
    padding: 2px 8px;
    border-radius: var(--radius-sm);
    background: var(--warning-bg);
    color: var(--warning);
    text-transform: uppercase;
}

:where(.card-desc)[b-zid6d3csch] {
    font-size: var(--text-sm);
    color: var(--text-muted);
    margin: 0 0 var(--space-4) 0;
    line-height: var(--leading-relaxed);
}

/* Plan Display */
:where(.plan-display)[b-zid6d3csch] {
    margin-bottom: var(--space-4);
}

:where(.plan-tier)[b-zid6d3csch] {
    display: inline-block;
    padding: var(--space-2) var(--space-4);
    border-radius: var(--radius-lg);
    font-size: var(--text-lg);
    font-weight: 700;
    margin-bottom: var(--space-2);
}

:where(.plan-tier).free[b-zid6d3csch] {
    background: var(--bg-elevated);
    color: var(--text-secondary);
}

:where(.plan-tier).tradeiq[b-zid6d3csch] {
    background: linear-gradient(135deg, var(--primary), var(--info));
    color: white;
}

:where(.plan-tier).signals[b-zid6d3csch] {
    background: linear-gradient(135deg, var(--purple-500, #1a8cff), var(--primary));
    color: white;
}

:where(.plan-desc)[b-zid6d3csch] {
    font-size: var(--text-sm);
    color: var(--text-muted);
    margin: 0;
    line-height: var(--leading-relaxed);
}

:where(.feature-pill)[b-zid6d3csch] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-2);
    border-radius: var(--radius-sm);
    font-size: var(--text-xs);
}

:where(.feature-pill).enabled[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.btn-gradient)[b-zid6d3csch] {
    background: linear-gradient(135deg, var(--primary), var(--purple-500, #1a8cff));
    color: white;
}

:where(.sms-bar-track)[b-zid6d3csch] {
    height: 6px;
    background: var(--bg-elevated);
    border-radius: var(--radius-full);
    overflow: hidden;
    margin-bottom: var(--space-2);
}

:where(.sms-bar-fill)[b-zid6d3csch] {
    height: 100%;
    background: linear-gradient(90deg, var(--primary), var(--info));
    border-radius: var(--radius-full);
}

:where(.webhook-config)[b-zid6d3csch] {
    margin-top: var(--space-3);
}

:where(.webhook-input-row)[b-zid6d3csch] {
    display: flex;
    gap: var(--space-2);
}

:where(.webhook-input-row)[b-zid6d3csch]  input:focus {
    outline: none;
    border-color: var(--primary);
}

:where(.btn-test)[b-zid6d3csch] {
    padding: var(--space-2) var(--space-3);
    background: var(--bg-glass);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    color: var(--text-secondary);
    font-size: var(--text-sm);
    cursor: pointer;
}

:where(.btn-test):hover[b-zid6d3csch] {
    border-color: var(--border-bright);
}

:where(.webhook-result)[b-zid6d3csch] {
    margin-top: var(--space-2);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-sm);
    font-size: var(--text-xs);
}

:where(.webhook-result).success[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.webhook-result).error[b-zid6d3csch] {
    background: var(--error-bg);
    color: var(--error);
}

:where(.toggle-track)[b-zid6d3csch] {
    position: absolute;
    cursor: pointer;
    inset: 0;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    border-radius: var(--radius-full);
    transition: var(--transition-fast);
}

:where(.toggle-track)[b-zid6d3csch]::before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 2px;
    bottom: 2px;
    background: white;
    border-radius: 50%;
    transition: var(--transition-fast);
}

.toggle input:checked + :where(.toggle-track)[b-zid6d3csch] {
    background: var(--primary);
    border-color: var(--primary);
}

.toggle input:checked + :where(.toggle-track)[b-zid6d3csch]::before {
    transform: translateX(20px);
}

/* Hero: the plan sits on the right */
:where(.hero-info)[b-zid6d3csch] {
    flex: 1;
    min-width: 0;
}

:where(.hero-plan)[b-zid6d3csch] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--space-2);
    max-width: 360px;
    text-align: right;
}

.hero-plan :where(.plan-features)[b-zid6d3csch] {
    justify-content: flex-end;
    margin-bottom: 0;
}

/* Full-width sections below the stats */
:where(.page-section)[b-zid6d3csch] {
    margin-bottom: var(--space-6);
    scroll-margin-top: 80px;
}

:where(.notify-card)[b-zid6d3csch] {
    scroll-margin-top: 80px;
}

:where(.notify-header-actions)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

:where(.save-pill)[b-zid6d3csch] {
    font-size: var(--text-xs);
    font-weight: 600;
    padding: 2px 10px;
    border-radius: var(--radius-full);
}

:where(.save-pill).success[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.save-pill).error[b-zid6d3csch] {
    background: var(--error-bg);
    color: var(--error);
}

:where(.notify-body)[b-zid6d3csch] {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr);
    gap: var(--space-6);
    padding: var(--space-5);
}

/* Channels */
:where(.channel)[b-zid6d3csch] {
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: rgba(255, 255, 255, 0.015);
    margin-bottom: var(--space-3);
    overflow: hidden;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

:where(.channel).on[b-zid6d3csch] {
    border-color: var(--primary-border);
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.06), rgba(26, 140, 255, 0.03));
    box-shadow: 0 0 0 1px rgba(19, 223, 255, 0.05), 0 6px 24px rgba(19, 223, 255, 0.06);
}

:where(.channel).passive[b-zid6d3csch] {
    border-style: dashed;
}

:where(.channel-row)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
}

:where(.channel-icon)[b-zid6d3csch] {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: var(--bg-elevated);
    border: 1px solid var(--border);
    color: var(--text-muted);
    transition: background 0.2s ease, color 0.2s ease;
}

.channel.on :where(.channel-icon)[b-zid6d3csch] {
    border-color: transparent;
    color: #04121a;
}

.channel.on :where(.channel-icon).email[b-zid6d3csch] { background: linear-gradient(135deg, #13dfff, #1a8cff); }
.channel.on :where(.channel-icon).sms[b-zid6d3csch] { background: linear-gradient(135deg, #10eb6b, #0fb5a0); }
.channel.on :where(.channel-icon).webhook[b-zid6d3csch] { background: linear-gradient(135deg, #a78bfa, #3b82f6); color: #fff; }

:where(.channel-text)[b-zid6d3csch] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

:where(.channel-title)[b-zid6d3csch] {
    font-weight: 600;
    font-size: var(--text-sm);
}

:where(.channel-desc)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.channel-status)[b-zid6d3csch] {
    flex-shrink: 0;
    font-size: var(--text-2xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 3px 8px;
    border-radius: var(--radius-sm);
    background: var(--bg-elevated);
    color: var(--text-muted);
    white-space: nowrap;
}

:where(.channel-status).on[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.channel-status).warn[b-zid6d3csch] {
    background: var(--warning-bg);
    color: var(--warning);
}

:where(.channel-status).per-alert[b-zid6d3csch] {
    background: var(--primary-soft);
    color: var(--primary);
}

:where(.channel-detail)[b-zid6d3csch] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-4);
    border-top: 1px solid var(--border);
    background: rgba(0, 0, 0, 0.15);
}

:where(.delivery-to)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.delivery-to) strong[b-zid6d3csch] {
    color: var(--text-primary);
    font-weight: 600;
}

:where(.channel-buttons)[b-zid6d3csch] {
    display: inline-flex;
    gap: var(--space-2);
}

:where(.channel-result)[b-zid6d3csch] {
    margin: var(--space-1) var(--space-4) var(--space-3);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    font-size: var(--text-xs);
    line-height: 1.45;
}

:where(.channel-result).success[b-zid6d3csch] {
    background: var(--success-bg);
    color: var(--success);
}

:where(.channel-result).error[b-zid6d3csch] {
    background: var(--error-bg);
    color: var(--error);
}

:where(.sms-meter)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-4) var(--space-3);
    background: rgba(0, 0, 0, 0.15);
}

.sms-meter :where(.sms-bar-track)[b-zid6d3csch] {
    flex: 1;
    height: 4px;
    margin-bottom: 0;
}

.sms-meter :where(.sms-bar-fill).full[b-zid6d3csch] {
    background: var(--warning);
}

:where(.sms-count-inline)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
    white-space: nowrap;
}

:where(.sms-phone-form)[b-zid6d3csch],
:where(.webhook-config)[b-zid6d3csch] {
    padding: var(--space-3) var(--space-4);
    border-top: 1px solid var(--border);
    background: rgba(0, 0, 0, 0.15);
    margin-top: 0;
}

:where(.webhook-url-label)[b-zid6d3csch] {
    display: block;
    font-size: var(--text-xs);
    font-weight: 500;
    color: var(--text-muted);
    margin-bottom: var(--space-2);
}

:where(.sms-consent)[b-zid6d3csch] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-2);
    margin-top: var(--space-2);
    font-size: var(--text-xs);
    line-height: 1.45;
    color: var(--text-muted);
    cursor: pointer;
}

:where(.sms-consent) input[b-zid6d3csch] {
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: var(--primary);
}

:where(.btn-test).primary[b-zid6d3csch] {
    border-color: transparent;
    background: linear-gradient(135deg, #13dfff, #1a8cff);
    color: #04121a;
    font-weight: 600;
}

:where(.btn-test).quiet[b-zid6d3csch] {
    background: transparent;
    border-color: transparent;
    color: var(--text-muted);
}

:where(.btn-test).quiet:hover:enabled[b-zid6d3csch] {
    color: var(--error);
}

/* Activity column */
:where(.notify-activity)[b-zid6d3csch] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding-left: var(--space-6);
    border-left: 1px solid var(--border);
}

:where(.alert-meter)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    background: linear-gradient(135deg, rgba(255, 181, 71, 0.06), rgba(19, 223, 255, 0.04));
    margin-bottom: var(--space-2);
}

:where(.alert-ring)[b-zid6d3csch] {
    width: 48px;
    height: 48px;
    flex-shrink: 0;
}

.alert-ring :where(.ring-track)[b-zid6d3csch] {
    fill: none;
    stroke: var(--bg-elevated);
    stroke-width: 5;
}

.alert-ring :where(.ring-fill)[b-zid6d3csch] {
    fill: none;
    stroke: var(--warning);
    stroke-width: 5;
    stroke-linecap: round;
    transition: stroke-dasharray 0.6s ease;
}

:where(.alert-meter-text)[b-zid6d3csch] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

:where(.alert-meter-value)[b-zid6d3csch] {
    font-family: var(--font-mono);
    font-size: var(--text-xl);
    font-weight: 700;
}

:where(.alert-meter-value) span[b-zid6d3csch] {
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--text-muted);
}

:where(.alert-meter-label)[b-zid6d3csch] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

:where(.activity-empty)[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border: 1px dashed var(--border);
    border-radius: var(--radius-lg);
    font-size: var(--text-xs);
    color: var(--text-muted);
    line-height: 1.45;
}

:where(.activity-empty) svg[b-zid6d3csch] {
    flex-shrink: 0;
}

:where(.activity-list)[b-zid6d3csch] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

:where(.activity-list) li[b-zid6d3csch] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    transition: background 0.15s ease;
}

:where(.activity-list) li:hover[b-zid6d3csch] {
    background: rgba(255, 255, 255, 0.03);
}

:where(.activity-symbol)[b-zid6d3csch] {
    min-width: 56px;
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    font-weight: 700;
    padding: 3px 6px;
    border-radius: var(--radius-sm);
    background: var(--primary-soft);
    color: var(--primary);
    text-align: center;
}

:where(.activity-text)[b-zid6d3csch] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

:where(.activity-condition)[b-zid6d3csch] {
    font-size: var(--text-xs);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

:where(.activity-when)[b-zid6d3csch] {
    font-size: var(--text-2xs);
    color: var(--text-muted);
}

:where(.activity-channels)[b-zid6d3csch] {
    display: inline-flex;
    gap: 4px;
}

.activity-channels :where(.ch)[b-zid6d3csch] {
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--bg-elevated);
    color: var(--text-secondary);
}

:where(.notify-rules)[b-zid6d3csch] {
    margin: auto 0 0;
    padding: var(--space-3) var(--space-4) var(--space-3) var(--space-6);
    border-radius: var(--radius-lg);
    background: var(--bg-elevated);
    font-size: var(--text-xs);
    color: var(--text-muted);
    line-height: 1.5;
}

:where(.notify-rules) li + li[b-zid6d3csch] {
    margin-top: var(--space-1);
}

@media (max-width: 900px) {
    :where(.notify-body)[b-zid6d3csch] {
        grid-template-columns: 1fr;
    }

    :where(.notify-activity)[b-zid6d3csch] {
        padding-left: 0;
        border-left: none;
        padding-top: var(--space-5);
        border-top: 1px solid var(--border);
    }

    :where(.hero-content)[b-zid6d3csch] {
        flex-wrap: wrap;
    }

    :where(.hero-plan)[b-zid6d3csch] {
        align-items: flex-start;
        text-align: left;
        max-width: none;
        width: 100%;
    }

    .hero-plan :where(.plan-features)[b-zid6d3csch] {
        justify-content: flex-start;
    }
}

/* Responsive */
@media (max-width: 640px) {
    :where(.hero-content)[b-zid6d3csch] {
        flex-direction: column;
        text-align: center;
    }

    :where(.hero-badges)[b-zid6d3csch] {
        justify-content: center;
    }

    :where(.mini-stats-grid)[b-zid6d3csch] {
        grid-template-columns: 1fr;
    }

    :where(.hero-plan)[b-zid6d3csch] {
        align-items: center;
        text-align: center;
    }

    .hero-plan :where(.plan-features)[b-zid6d3csch] {
        justify-content: center;
    }

    :where(.notify-body)[b-zid6d3csch] {
        padding: var(--space-4);
    }

    :where(.channel-row)[b-zid6d3csch] {
        flex-wrap: wrap;
        padding: var(--space-3);
    }

    :where(.card-header)[b-zid6d3csch] {
        flex-wrap: wrap;
        gap: var(--space-2);
    }

}
/* /Components/Pages/Admin/AccountGrowth.razor.rz.scp.css */
/* Account Growth admin page */

.growth-page[b-a349hh3wk6] {
    padding: 24px;
    max-width: 1400px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

/* Header */
.page-header[b-a349hh3wk6] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

.header-content[b-a349hh3wk6] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-a349hh3wk6] {
    font-size: 1.75rem;
    font-weight: 800;
    color: var(--text-primary, #f8fafc);
    margin: 0;
    letter-spacing: -0.01em;
}

.page-subtitle[b-a349hh3wk6] {
    color: var(--text-secondary, #94a3b8);
    font-size: 0.95rem;
    margin: 0;
    max-width: 720px;
}

.btn-link[b-a349hh3wk6] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 14px;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-secondary, #94a3b8);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s;
}

.btn-link:hover[b-a349hh3wk6] {
    color: #fff;
    background: rgba(255, 255, 255, 0.08);
}

/* Ledger */
.ledger-section[b-a349hh3wk6] {
    background: #0c1117;
    border: 1px solid #1f2732;
    border-radius: 14px;
    padding: 18px 20px;
}

.ledger-head[b-a349hh3wk6] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.ledger-head h2[b-a349hh3wk6] {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
}

.ledger-head p[b-a349hh3wk6] {
    margin: 3px 0 0;
    font-size: 12px;
    color: var(--text-secondary, #94a3b8);
}

.ledger-totals[b-a349hh3wk6] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.ledger-totals span[b-a349hh3wk6] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 12px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    min-width: 110px;
}

.ledger-totals small[b-a349hh3wk6] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
}

.ledger-totals b[b-a349hh3wk6] {
    font-size: 15px;
    font-weight: 700;
    color: #fff;
}

.ledger-state[b-a349hh3wk6] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px;
    color: var(--text-secondary, #94a3b8);
    font-size: 13px;
}

.ledger-state.error[b-a349hh3wk6] {
    color: #ff5757;
}

.spinner[b-a349hh3wk6] {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.12);
    border-top-color: #13dfff;
    animation: growth-spin-b-a349hh3wk6 0.8s linear infinite;
}

.ledger-scroll[b-a349hh3wk6] {
    overflow-x: auto;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
}

.ledger-table[b-a349hh3wk6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.ledger-table th[b-a349hh3wk6],
.ledger-table td[b-a349hh3wk6] {
    padding: 9px 12px;
    text-align: left;
    white-space: nowrap;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.ledger-table th[b-a349hh3wk6] {
    background: #10161e;
    color: var(--text-muted, #64748b);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ledger-table th.num[b-a349hh3wk6],
.ledger-table td.num[b-a349hh3wk6] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.ledger-table td[b-a349hh3wk6] {
    color: var(--text-primary, #f0f4f8);
}

.ledger-table tr.canceled td[b-a349hh3wk6] {
    opacity: 0.45;
    text-decoration: line-through;
}

.ledger-table tr.canceled td:last-child[b-a349hh3wk6] {
    text-decoration: none;
}

.kind[b-a349hh3wk6] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.kind.in[b-a349hh3wk6] { color: #9db7f5; }
.kind.out[b-a349hh3wk6] { color: #9db7f5; }

.status[b-a349hh3wk6] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-secondary, #94a3b8);
    font-size: 11px;
    text-transform: capitalize;
}

.up[b-a349hh3wk6] { color: #10eb6b; }
.down[b-a349hh3wk6] { color: #ff5757; }

/* Method note */
.method-note[b-a349hh3wk6] {
    padding: 16px 20px;
    border-radius: 12px;
    border: 1px dashed rgba(255, 255, 255, 0.1);
    color: var(--text-secondary, #94a3b8);
    font-size: 13px;
}

.method-note h3[b-a349hh3wk6] {
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
}

.method-note ul[b-a349hh3wk6] {
    margin: 0;
    padding-left: 18px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.method-note b[b-a349hh3wk6] {
    color: var(--text-primary, #f0f4f8);
}

@keyframes growth-spin-b-a349hh3wk6 {
    to { transform: rotate(360deg); }
}

@media (max-width: 768px) {
    .growth-page[b-a349hh3wk6] {
        padding: 12px;
        gap: 14px;
    }

    .ledger-section[b-a349hh3wk6] {
        padding: 14px;
    }

    .ledger-totals span[b-a349hh3wk6] {
        min-width: 0;
        flex: 1 1 30%;
    }
}
/* /Components/Pages/Admin/BlockedEntries.razor.rz.scp.css */
/* Blocked Entries Admin Page Styles */

.blocked-entries-container[b-uusugythut] {
    padding: 24px;
    max-width: 1600px;
    margin: 0 auto;
}

/* Header */
.page-header[b-uusugythut] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.header-content[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.page-title[b-uusugythut] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin: 0;
}

.page-subtitle[b-uusugythut] {
    color: var(--text-secondary, #94a3b8);
    font-size: 0.95rem;
    margin: 0;
}

.btn-refresh[b-uusugythut] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: var(--bg-secondary, #1e293b);
    border: 1px solid var(--border-color, #334155);
    color: var(--text-primary, #f8fafc);
    padding: 10px 16px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.btn-refresh:hover:not(:disabled)[b-uusugythut] {
    background: var(--bg-tertiary, #334155);
}

.btn-refresh:disabled[b-uusugythut] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Stats Overview */
.stats-overview[b-uusugythut] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.stat-card[b-uusugythut] {
    background: var(--bg-secondary, #1e293b);
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    border: 1px solid var(--border-color, #334155);
}

.stat-card.total[b-uusugythut] {
    border-left: 4px solid #3b82f6;
}

.stat-card.early-gate[b-uusugythut] {
    border-left: 4px solid #f59e0b;
}

.stat-card.technical[b-uusugythut] {
    border-left: 4px solid #8b5cf6;
}

.stat-card.safety[b-uusugythut] {
    border-left: 4px solid #10b981;
}

.stat-card.position[b-uusugythut] {
    border-left: 4px solid #06b6d4;
}

.stat-card.execution[b-uusugythut] {
    border-left: 4px solid #ec4899;
}

/* Diagnostics Panel */
.diagnostics-panel[b-uusugythut] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.diag-section[b-uusugythut] {
    background: var(--bg-secondary, #1e293b);
    border-radius: 12px;
    padding: 16px;
    border: 1px solid var(--border-color, #334155);
}

.diag-section.websocket[b-uusugythut] {
    border-left: 4px solid #3b82f6;
}

.diag-section.tracking[b-uusugythut] {
    border-left: 4px solid #8b5cf6;
}

.diag-header[b-uusugythut] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.diag-icon[b-uusugythut] {
    font-size: 1.1rem;
}

.diag-title[b-uusugythut] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-primary, #f8fafc);
}

.diag-status[b-uusugythut] {
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.85rem;
    font-weight: 500;
    margin-bottom: 12px;
    background: var(--bg-tertiary, #334155);
}

.diag-status.healthy[b-uusugythut] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.diag-status.warning[b-uusugythut] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

.diag-status.error[b-uusugythut] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.diag-details[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.diag-row[b-uusugythut] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8rem;
}

.diag-row.error-msg[b-uusugythut] {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.diag-label[b-uusugythut] {
    color: var(--text-secondary, #94a3b8);
}

.diag-value[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
    font-family: 'JetBrains Mono', monospace;
}

.diag-value.success[b-uusugythut] {
    color: #10b981;
}

.diag-value.error[b-uusugythut] {
    color: #ef4444;
    word-break: break-word;
}

.stat-card.error[b-uusugythut] {
    border-left: 4px solid #ef4444;
}

.stat-icon[b-uusugythut] {
    font-size: 2rem;
}

.stat-content[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.stat-value[b-uusugythut] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
}

.stat-label[b-uusugythut] {
    font-size: 0.85rem;
    color: var(--text-secondary, #94a3b8);
}

/* Filter Section */
.filter-section[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 24px;
    padding: 20px;
    background: var(--bg-secondary, #1e293b);
    border-radius: 12px;
    border: 1px solid var(--border-color, #334155);
}

.filter-boxes[b-uusugythut] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.filter-box[b-uusugythut] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    background: var(--bg-tertiary, #334155);
    border: 2px solid transparent;
    color: var(--text-secondary, #94a3b8);
    padding: 10px 16px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    min-width: 80px;
}

.filter-box:hover[b-uusugythut] {
    background: var(--bg-hover, #475569);
    color: var(--text-primary, #f8fafc);
}

.filter-box.active[b-uusugythut] {
    border-color: var(--accent-color, #3b82f6);
    background: rgba(59, 130, 246, 0.1);
    color: var(--text-primary, #f8fafc);
}

.filter-box.earlygate.active[b-uusugythut] {
    border-color: #f59e0b;
    background: rgba(245, 158, 11, 0.1);
}

.filter-box.technical.active[b-uusugythut] {
    border-color: #8b5cf6;
    background: rgba(139, 92, 246, 0.1);
}

.filter-box.safety.active[b-uusugythut] {
    border-color: #10b981;
    background: rgba(16, 185, 129, 0.1);
}

.filter-box.position.active[b-uusugythut] {
    border-color: #06b6d4;
    background: rgba(6, 182, 212, 0.1);
}

.filter-box.execution.active[b-uusugythut] {
    border-color: #ec4899;
    background: rgba(236, 72, 153, 0.1);
}

.filter-box.error.active[b-uusugythut] {
    border-color: #ef4444;
    background: rgba(239, 68, 68, 0.1);
}

.filter-count[b-uusugythut] {
    font-size: 1.1rem;
    font-weight: 600;
}

.filter-label[b-uusugythut] {
    font-size: 0.75rem;
    text-transform: uppercase;
}

/* Filter Controls Row */
.filter-controls[b-uusugythut] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
    padding-top: 16px;
    border-top: 1px solid var(--border-color, #334155);
}

/* Filter Control (Input Container) */
.filter-control[b-uusugythut] {
    display: flex;
    align-items: center;
    background: rgba(30, 41, 59, 0.8);
    border: 1px solid var(--border-color, #475569);
    border-radius: 10px;
    padding: 0;
    transition: all 0.2s ease;
    overflow: hidden;
}

.filter-control:hover[b-uusugythut] {
    border-color: var(--text-muted, #64748b);
}

.filter-control:focus-within[b-uusugythut] {
    border-color: var(--accent-color, #3b82f6);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.control-icon[b-uusugythut] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 12px;
    color: var(--text-muted, #64748b);
    border-right: 1px solid var(--border-color, #334155);
    background: rgba(51, 65, 85, 0.3);
}

.filter-control input[type="text"][b-uusugythut],
.filter-control select[b-uusugythut],
.filter-control input[type="date"][b-uusugythut] {
    background: transparent;
    border: none;
    color: var(--text-primary, #f8fafc);
    padding: 10px 14px;
    font-size: 0.9rem;
    outline: none;
    min-width: 120px;
}

.filter-control input[type="text"][b-uusugythut]::placeholder {
    color: var(--text-muted, #64748b);
}

/* Search Control */
.search-control[b-uusugythut] {
    min-width: 200px;
}

.search-control input[type="text"][b-uusugythut] {
    width: 100%;
}

/* Date Control */
.date-control[b-uusugythut] {
    gap: 0;
}

.date-control input[type="date"][b-uusugythut] {
    min-width: 130px;
    cursor: pointer;
    color-scheme: dark;
}

.date-control input[type="date"][b-uusugythut]::-webkit-calendar-picker-indicator {
    filter: invert(0.7);
    cursor: pointer;
}

.date-separator[b-uusugythut] {
    color: var(--text-muted, #64748b);
    padding: 0 8px;
    font-size: 0.9rem;
}

/* Toggle Switch */
.toggle-switch[b-uusugythut] {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
    padding: 8px 12px;
    border-radius: 8px;
    transition: background 0.2s ease;
}

.toggle-switch:hover[b-uusugythut] {
    background: rgba(51, 65, 85, 0.5);
}

.toggle-switch input[b-uusugythut] {
    display: none;
}

.toggle-switch input:checked + .toggle-slider[b-uusugythut] {
    background: var(--accent-color, #3b82f6);
    border-color: var(--accent-color, #3b82f6);
}

.toggle-switch input:checked + .toggle-slider[b-uusugythut]::after {
    left: calc(100% - 18px);
    background: #ffffff;
}

.toggle-label[b-uusugythut] {
    font-size: 0.9rem;
    color: var(--text-secondary, #94a3b8);
    font-weight: 500;
}

.toggle-switch input:checked ~ .toggle-label[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
}

/* Clear Filters Button */
.btn-clear[b-uusugythut] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #f87171;
    padding: 10px 16px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.85rem;
    font-weight: 500;
    transition: all 0.2s ease;
}

.btn-clear:hover[b-uusugythut] {
    background: rgba(239, 68, 68, 0.2);
    border-color: rgba(239, 68, 68, 0.5);
}

/* Legacy Filter Group (keep for backwards compatibility) */
.filter-group[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.filter-group label[b-uusugythut] {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: var(--text-secondary, #94a3b8);
    font-weight: 600;
}

.filter-group input[b-uusugythut],
.filter-group select[b-uusugythut] {
    background: var(--bg-tertiary, #334155);
    border: 1px solid var(--border-color, #475569);
    color: var(--text-primary, #f8fafc);
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.btn-clear:hover[b-uusugythut] {
    border-color: var(--text-secondary, #94a3b8);
    color: var(--text-primary, #f8fafc);
}

/* Table Section */

.table-wrapper[b-uusugythut] {
    overflow-x: auto;
}

.blocked-entries-table th.sortable[b-uusugythut] {
    cursor: pointer;
    user-select: none;
    transition: background 0.2s ease;
}

.blocked-entries-table th.sortable:hover[b-uusugythut] {
    background: var(--bg-hover, #475569);
}

.blocked-entries-table th.sortable.sorted[b-uusugythut] {
    color: var(--accent-color, #3b82f6);
}

.sort-indicator[b-uusugythut] {
    font-size: 0.75rem;
    margin-left: 4px;
}

/* Symbol Badge */
.symbol-badge[b-uusugythut] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--bg-tertiary, #334155);
    border-radius: 6px;
    padding: 4px 10px;
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-primary, #f8fafc);
}

.symbol-direction.long[b-uusugythut] {
    color: #10b981;
}

.symbol-direction.short[b-uusugythut] {
    color: #ef4444;
}

/* Category Badge */
.category-badge[b-uusugythut] {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.category-badge.early-gate[b-uusugythut] {
    background: rgba(245, 158, 11, 0.15);
    color: #f59e0b;
}

.category-badge.technical[b-uusugythut] {
    background: rgba(139, 92, 246, 0.15);
    color: #8b5cf6;
}

.category-badge.safety[b-uusugythut] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

.category-badge.position[b-uusugythut] {
    background: rgba(6, 182, 212, 0.15);
    color: #06b6d4;
}

.category-badge.execution[b-uusugythut] {
    background: rgba(236, 72, 153, 0.15);
    color: #ec4899;
}

.category-badge.error[b-uusugythut] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

/* Error Indicator */

.error-icon[b-uusugythut] {
    color: #ef4444;
}

/* Reason Text */
.reason-text[b-uusugythut] {
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    color: var(--text-secondary, #94a3b8);
}

.reason-text:hover[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
}

/* Timestamp */
.timestamp[b-uusugythut] {
    font-size: 0.85rem;
    color: var(--text-secondary, #94a3b8);
    white-space: nowrap;
}

/* Empty State */
.empty-state[b-uusugythut] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.empty-icon[b-uusugythut] {
    font-size: 3rem;
    margin-bottom: 16px;
}

.empty-state h3[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
    font-size: 1.25rem;
    margin: 0 0 8px 0;
}

.empty-state p[b-uusugythut] {
    color: var(--text-secondary, #94a3b8);
    margin: 0;
}

/* Pagination */
.pagination[b-uusugythut] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    border-top: 1px solid var(--border-color, #334155);
}

.pagination-controls[b-uusugythut] {
    display: flex;
    gap: 8px;
}

.btn-page[b-uusugythut] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: var(--bg-tertiary, #334155);
    border: 1px solid var(--border-color, #475569);
    color: var(--text-primary, #f8fafc);
    padding: 8px 14px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.btn-page:hover:not(:disabled)[b-uusugythut] {
    background: var(--bg-hover, #475569);
}

.btn-page:disabled[b-uusugythut] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Detail Modal */

.modal-header[b-uusugythut] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 24px;
    border-bottom: 1px solid var(--border-color, #334155);
}

.modal-header h3[b-uusugythut] {
    margin: 0;
    color: var(--text-primary, #f8fafc);
    font-size: 1.25rem;
    font-weight: 600;
}

.btn-close[b-uusugythut] {
    background: transparent;
    border: none;
    color: var(--text-secondary, #94a3b8);
    font-size: 1.5rem;
    cursor: pointer;
    padding: 4px;
    line-height: 1;
    transition: color 0.2s ease;
}

.btn-close:hover[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
}

.modal-body[b-uusugythut] {
    padding: 24px;
}

.detail-grid[b-uusugythut] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.detail-item[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.detail-item.full-width[b-uusugythut] {
    grid-column: 1 / -1;
}

.detail-label[b-uusugythut] {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
    font-weight: 600;
}

.detail-value[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
    font-size: 0.95rem;
}

.detail-value.reason-full[b-uusugythut] {
    white-space: pre-wrap;
    word-break: break-word;
    background: var(--bg-tertiary, #334155);
    padding: 12px;
    border-radius: 8px;
    font-size: 0.9rem;
    line-height: 1.5;
}

.detail-value.exception-trace[b-uusugythut] {
    white-space: pre-wrap;
    word-break: break-word;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
    padding: 12px;
    border-radius: 8px;
    font-size: 0.8rem;
    font-family: monospace;
    max-height: 200px;
    overflow-y: auto;
    color: #fca5a5;
}

/* Confirmation Breakdown Styles */
.confirmation-section[b-uusugythut] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.08), rgba(139, 92, 246, 0.08));
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 8px;
    padding: 16px;
    margin: 12px 0;
}

.confirmation-scores[b-uusugythut] {
    display: flex;
    gap: 16px;
    margin-top: 8px;
}

.score-badge[b-uusugythut] {
    padding: 6px 14px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9rem;
}

.score-badge.pass[b-uusugythut] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.score-badge.fail[b-uusugythut] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.confirmation-breakdown[b-uusugythut] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.confirmation-breakdown .component[b-uusugythut] {
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 0.85rem;
    white-space: nowrap;
}

.confirmation-breakdown .component.pass[b-uusugythut] {
    background: rgba(34, 197, 94, 0.1);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.25);
}

.confirmation-breakdown .component.fail[b-uusugythut] {
    background: rgba(239, 68, 68, 0.1);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.25);
}

/* Loading State */
.loading-state[b-uusugythut] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    text-align: center;
}

.loading-spinner[b-uusugythut] {
    width: 48px;
    height: 48px;
    border: 3px solid var(--border-color, #334155);
    border-top-color: var(--accent-color, #3b82f6);
    border-radius: 50%;
    animation: spin-b-uusugythut 1s linear infinite;
    margin-bottom: 16px;
}

@keyframes spin-b-uusugythut {
    to {
        transform: rotate(360deg);
    }
}

.loading-state p[b-uusugythut] {
    color: var(--text-secondary, #94a3b8);
    margin: 0;
}

/* Responsive */
@media (max-width: 1200px) {
    .blocked-entries-container[b-uusugythut] {
        padding: 16px;
    }

    .stats-overview[b-uusugythut] {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }

    .filter-section[b-uusugythut] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-boxes[b-uusugythut] {
        width: 100%;
        justify-content: center;
    }

    .filter-group[b-uusugythut] {
        width: 100%;
    }

    .filter-group input[b-uusugythut],
    .filter-group select[b-uusugythut] {
        width: 100%;
    }

    .detail-grid[b-uusugythut] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .page-header[b-uusugythut] {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .pagination[b-uusugythut] {
        flex-direction: column;
        gap: 12px;
    }
}

/* ============================================ */
/* Modern Table Styles                          */
/* ============================================ */

.entries-table.modern[b-uusugythut] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.9rem;
}

.entries-table.modern thead[b-uusugythut] {
    background: var(--bg-tertiary, #1e293b);
    position: sticky;
    top: 0;
    z-index: 1;
}

.entries-table.modern th[b-uusugythut] {
    padding: 14px 16px;
    text-align: left;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted, #64748b);
    border-bottom: 2px solid var(--border-color, #334155);
    white-space: nowrap;
}

.entries-table.modern th.sortable[b-uusugythut] {
    cursor: pointer;
    user-select: none;
    transition: color 0.2s ease;
}

.entries-table.modern th.sortable:hover[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
}

.entries-table.modern td[b-uusugythut] {
    padding: 16px;
    border-bottom: 1px solid var(--border-color, #1e293b);
    vertical-align: middle;
}

.entries-table.modern tbody tr[b-uusugythut] {
    background: var(--bg-secondary, #0f172a);
    transition: all 0.15s ease;
}

.entries-table.modern tbody tr:hover[b-uusugythut] {
    background: var(--bg-tertiary, #1e293b);
}

.entries-table.modern tbody tr:nth-child(even)[b-uusugythut] {
    background: rgba(30, 41, 59, 0.3);
}

.entries-table.modern tbody tr:nth-child(even):hover[b-uusugythut] {
    background: var(--bg-tertiary, #1e293b);
}

/* Column widths */
.entries-table.modern .col-time[b-uusugythut] {
    width: 110px;
}

.entries-table.modern .col-symbol[b-uusugythut] {
    width: 100px;
}

.entries-table.modern .col-signal[b-uusugythut] {
    width: 80px;
}

.entries-table.modern .col-blocktype[b-uusugythut] {
    width: 90px;
}

.entries-table.modern .col-weighted[b-uusugythut] {
    width: 80px;
    text-align: center;
}

.entries-table.modern .col-reversal[b-uusugythut] {
    width: 80px;
    text-align: center;
}

.entries-table.modern .col-reason[b-uusugythut] {
    min-width: 200px;
}

.entries-table.modern .col-actions[b-uusugythut] {
    width: 50px;
    text-align: center;
}

/* Time cell styling */
.entries-table.modern .col-time[b-uusugythut] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.time-value[b-uusugythut] {
    color: var(--text-primary, #f8fafc);
    font-weight: 500;
}

.time-detail[b-uusugythut] {
    color: var(--text-muted, #64748b);
    font-size: 0.8rem;
    font-family: 'JetBrains Mono', monospace;
}

/* Symbol link styling */
.symbol-link[b-uusugythut] {
    color: var(--accent-color, #3b82f6);
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    padding: 6px 12px;
    border-radius: 6px;
    background: rgba(59, 130, 246, 0.1);
    display: inline-block;
    transition: all 0.2s ease;
    cursor: pointer;
}

.symbol-link:hover[b-uusugythut] {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
    transform: translateY(-1px);
}

/* Signal badge styling */
.signal-badge[b-uusugythut] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    min-width: 60px;
}

.signal-badge.buy[b-uusugythut] {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
    border: 1px solid rgba(16, 185, 129, 0.3);
}

.signal-badge.short[b-uusugythut] {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Block type badge */
.block-badge[b-uusugythut] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
}

.block-badge.reversalcount[b-uusugythut] {
    background: rgba(139, 92, 246, 0.15);
    color: #a78bfa;
    border: 1px solid rgba(139, 92, 246, 0.3);
}

.block-badge.weight[b-uusugythut] {
    background: rgba(245, 158, 11, 0.15);
    color: #fbbf24;
    border: 1px solid rgba(245, 158, 11, 0.3);
}

.block-badge.confirmation[b-uusugythut] {
    background: rgba(6, 182, 212, 0.15);
    color: #22d3ee;
    border: 1px solid rgba(6, 182, 212, 0.3);
}

.block-badge.error[b-uusugythut] {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Score value styling */
.score-value[b-uusugythut] {
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
    padding: 4px 8px;
    border-radius: 4px;
}

.score-value.high[b-uusugythut] {
    color: #34d399;
    background: rgba(16, 185, 129, 0.1);
}

.score-value.medium[b-uusugythut] {
    color: #fbbf24;
    background: rgba(245, 158, 11, 0.1);
}

.score-value.low[b-uusugythut] {
    color: #f87171;
    background: rgba(239, 68, 68, 0.1);
}

.score-empty[b-uusugythut] {
    color: var(--text-muted, #64748b);
}

/* Reversal value styling */
.reversal-value[b-uusugythut] {
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
    padding: 4px 8px;
    border-radius: 4px;
}

.reversal-value.high[b-uusugythut] {
    color: #34d399;
    background: rgba(16, 185, 129, 0.1);
}

.reversal-value.medium[b-uusugythut] {
    color: #fbbf24;
    background: rgba(245, 158, 11, 0.1);
}

.reversal-value.low[b-uusugythut] {
    color: #f87171;
    background: rgba(239, 68, 68, 0.1);
}

/* Reason text */
.col-reason .reason-text[b-uusugythut] {
    display: block;
    max-width: 300px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text-secondary, #94a3b8);
    font-size: 0.85rem;
}

/* Details button */
.btn-details[b-uusugythut] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(59, 130, 246, 0.1);
    border: 1px solid rgba(59, 130, 246, 0.2);
    color: #60a5fa;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-details:hover[b-uusugythut] {
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(59, 130, 246, 0.4);
    transform: translateY(-1px);
}

.btn-details svg[b-uusugythut] {
    width: 16px;
    height: 16px;
}

/* Error row styling */
.entries-table.modern tbody tr.error-row[b-uusugythut] {
    background: rgba(239, 68, 68, 0.05);
    border-left: 3px solid #ef4444;
}

.entries-table.modern tbody tr.error-row:hover[b-uusugythut] {
    background: rgba(239, 68, 68, 0.1);
}

/* Block type row indicators */
.entries-table.modern tbody tr.blocktype-reversal[b-uusugythut] {
    border-left: 3px solid #8b5cf6;
}

.entries-table.modern tbody tr.blocktype-weight[b-uusugythut] {
    border-left: 3px solid #f59e0b;
}

.entries-table.modern tbody tr.blocktype-confirmation[b-uusugythut] {
    border-left: 3px solid #06b6d4;
}

/* Table container enhancement */
.table-container[b-uusugythut] {
    background: var(--bg-secondary, #0f172a);
    border-radius: 12px;
    border: 1px solid var(--border-color, #1e293b);
    overflow: hidden;
}

/* Responsive adjustments for modern table */
@media (max-width: 1200px) {
    .entries-table.modern[b-uusugythut] {
        font-size: 0.85rem;
    }
    
    .entries-table.modern th[b-uusugythut],
    .entries-table.modern td[b-uusugythut] {
        padding: 12px;
    }
    
    .col-reason .reason-text[b-uusugythut] {
        max-width: 200px;
    }
}

@media (max-width: 768px) {
    .entries-table.modern[b-uusugythut] {
        font-size: 0.8rem;
    }
    
    .entries-table.modern th[b-uusugythut],
    .entries-table.modern td[b-uusugythut] {
        padding: 10px 8px;
    }
    
    .symbol-link[b-uusugythut] {
        padding: 4px 8px;
        font-size: 0.85rem;
    }
    
    .signal-badge[b-uusugythut] {
        padding: 4px 8px;
        min-width: 50px;
    }
    
    .col-reason .reason-text[b-uusugythut] {
        max-width: 150px;
    }
}
/* /Components/Pages/Admin/EntryTrails.razor.rz.scp.css */
.trails-page[b-p8j5h4gcjo] { max-width: 1500px; margin: 0 auto; padding: 20px; color: #e6e6e6; font-size: 13px; }
.trails-header[b-p8j5h4gcjo] { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 18px; }
.trails-header h1[b-p8j5h4gcjo] { margin: 0 0 4px; font-size: 22px; color: #fff; display: flex; align-items: center; gap: 10px; }
.subtitle[b-p8j5h4gcjo] { margin: 0; color: #9aa4b2; max-width: 900px; line-height: 1.5; }
.header-actions[b-p8j5h4gcjo] { display: flex; align-items: center; gap: 12px; white-space: nowrap; }

.mode-pill[b-p8j5h4gcjo] { font-size: 11px; padding: 2px 10px; border-radius: 10px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.mode-off[b-p8j5h4gcjo] { background: #24292f; color: #8b95a3; }
.mode-shadow[b-p8j5h4gcjo] { background: #3a2a12; color: #e0a838; }
.mode-live[b-p8j5h4gcjo] { background: #133a24; color: #3fb950; }

.btn[b-p8j5h4gcjo] { background: #161b22; color: #d6dbe1; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 14px; font-weight: 600; cursor: pointer; }
.btn.primary[b-p8j5h4gcjo] { background: #2563eb; color: #fff; border-color: #2563eb; }
.btn.danger[b-p8j5h4gcjo] { background: #3a1a1d; color: #f85149; border-color: #4a2226; }
.btn.tiny[b-p8j5h4gcjo] { padding: 2px 8px; font-size: 11px; font-weight: 500; }
.btn:disabled[b-p8j5h4gcjo] { opacity: .6; cursor: default; }

.notice[b-p8j5h4gcjo] { background: #161b22; border: 1px solid #2b313a; border-radius: 8px; padding: 12px 16px; color: #9aa4b2; margin-bottom: 12px; }
.notice.error[b-p8j5h4gcjo] { border-color: #d1434b; color: #f0a5a9; }
.notice.ok[b-p8j5h4gcjo] { border-color: #2ea043; color: #7ee787; }

.panel[b-p8j5h4gcjo] { background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; padding: 16px 18px; margin-bottom: 16px; }
.panel h2[b-p8j5h4gcjo] { margin: 0 0 12px; font-size: 15px; color: #fff; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tag[b-p8j5h4gcjo] { font-size: 10px; font-weight: 600; color: #8b95a3; background: #1b2028; border: 1px solid #2b313a; padding: 2px 8px; border-radius: 10px; text-transform: uppercase; letter-spacing: .04em; }
.hint[b-p8j5h4gcjo] { color: #7d8590; font-size: 11px; margin: 10px 0 0; }
.dim[b-p8j5h4gcjo] { color: #7d8590; }
.pos[b-p8j5h4gcjo] { color: #3fb950 !important; }
.neg[b-p8j5h4gcjo] { color: #f85149 !important; }

.mode-row[b-p8j5h4gcjo] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 12px; }
@media (max-width: 900px) { .mode-row[b-p8j5h4gcjo] { grid-template-columns: 1fr; } }
.mode-opt[b-p8j5h4gcjo] { display: flex; flex-direction: column; gap: 2px; border: 1px solid #2b313a; border-radius: 8px; padding: 10px 12px; cursor: pointer; background: #12171e; }
.mode-opt.sel[b-p8j5h4gcjo] { border-color: #2563eb; background: #12324f; }
.mode-opt input[b-p8j5h4gcjo] { margin-right: 6px; }
.mode-name[b-p8j5h4gcjo] { font-weight: 700; color: #fff; }
.mode-desc[b-p8j5h4gcjo] { font-size: 11px; color: #9aa4b2; }

.settings-grid[b-p8j5h4gcjo] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px 18px; margin-bottom: 12px; }
@media (max-width: 900px) { .settings-grid[b-p8j5h4gcjo] { grid-template-columns: 1fr; } }
.settings-grid label[b-p8j5h4gcjo] { display: flex; flex-direction: column; gap: 4px; color: #9aa4b2; font-size: 12px; }
.settings-grid label.chk[b-p8j5h4gcjo] { flex-direction: row; align-items: center; gap: 8px; }
.settings-grid input[type=number][b-p8j5h4gcjo] { background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px; padding: 6px 8px; width: 120px; }
.actions[b-p8j5h4gcjo] { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }

.headline-row[b-p8j5h4gcjo] { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.stat[b-p8j5h4gcjo] { flex: 1 1 160px; background: #161b22; border: 1px solid #2b313a; border-radius: 8px; padding: 12px 14px; display: flex; flex-direction: column; gap: 2px; }
.stat-num[b-p8j5h4gcjo] { font-size: 20px; font-weight: 700; color: #fff; }
.stat-lbl[b-p8j5h4gcjo] { font-size: 11px; color: #8b95a3; text-transform: uppercase; letter-spacing: .04em; }
.stat-pair[b-p8j5h4gcjo] { font-size: 15px; font-weight: 600; color: #d6dbe1; }
.stat-pair .arrow[b-p8j5h4gcjo] { color: #5c6470; margin: 0 4px; }
.stat-delta[b-p8j5h4gcjo] { font-size: 18px; font-weight: 700; }
.stat-sub[b-p8j5h4gcjo] { font-size: 10px; color: #7d8590; }

.range[b-p8j5h4gcjo] { margin-left: auto; display: flex; gap: 4px; }
.range button[b-p8j5h4gcjo], .view-toggle button[b-p8j5h4gcjo] { background: #161b22; color: #9aa4b2; border: 1px solid #2b313a; border-radius: 6px; padding: 4px 10px; font-size: 12px; cursor: pointer; }
.range button.active[b-p8j5h4gcjo], .view-toggle button.active[b-p8j5h4gcjo] { background: #12324f; color: #58a6ff; border-color: #1f4a73; }
.view-toggle[b-p8j5h4gcjo] { display: flex; gap: 6px; margin: 4px 0 12px; }

.cum-curve-wrap[b-p8j5h4gcjo] { margin: 6px 0 4px; background: #12171e; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 10px; }
.cum-curve[b-p8j5h4gcjo] { display: block; width: 100%; height: 170px; }
.cum-caption[b-p8j5h4gcjo] { color: #7d8590; font-size: 11px; margin: 4px 0 0; }

.scroll[b-p8j5h4gcjo] { overflow-x: auto; max-height: 520px; overflow-y: auto; }
table.mini[b-p8j5h4gcjo] { width: 100%; border-collapse: collapse; font-size: 12px; }
table.mini th[b-p8j5h4gcjo] { text-align: left; color: #8b95a3; font-weight: 600; padding: 4px 6px; border-bottom: 1px solid #2b313a; white-space: nowrap; position: sticky; top: 0; background: #0f1319; }
table.mini td[b-p8j5h4gcjo] { padding: 5px 6px; border-bottom: 1px solid #1b2028; white-space: nowrap; }
table.mini td.note[b-p8j5h4gcjo] { max-width: 260px; overflow: hidden; text-overflow: ellipsis; color: #9aa4b2; }
tr.shadow td[b-p8j5h4gcjo] { color: #b8b8b8; font-style: italic; }
a[b-p8j5h4gcjo] { color: #58a6ff; text-decoration: none; }

.dir[b-p8j5h4gcjo] { font-size: 10px; padding: 1px 6px; border-radius: 4px; font-weight: 700; }
.dir.long[b-p8j5h4gcjo] { background: #133a24; color: #3fb950; }
.dir.short[b-p8j5h4gcjo] { background: #3a1a1d; color: #f85149; }
.st[b-p8j5h4gcjo] { font-size: 10px; padding: 1px 6px; border-radius: 4px; font-weight: 600; text-transform: uppercase; }
.st-watching[b-p8j5h4gcjo] { background: #24292f; color: #8b95a3; }
.st-armed[b-p8j5h4gcjo] { background: #3a2a12; color: #e0a838; }
.st-triggered[b-p8j5h4gcjo] { background: #12324f; color: #58a6ff; }
.st-filled[b-p8j5h4gcjo] { background: #133a24; color: #3fb950; }
.st-skipped[b-p8j5h4gcjo] { background: #1b2028; color: #8b95a3; }
.st-expired[b-p8j5h4gcjo], .st-cancelled[b-p8j5h4gcjo], .st-failed[b-p8j5h4gcjo] { background: #3a1a1d; color: #f0787f; }
/* /Components/Pages/Admin/IntradaySuggestions.razor.rz.scp.css */
.sg-container[b-0wndmx6862] { max-width: 1400px; margin: 0 auto; padding: 16px 20px 48px; color: var(--text-primary, #e6edf3); }

.sg-head h1[b-0wndmx6862] { font-size: 1.3rem; font-weight: 800; margin: 0; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
/* FocusOnNavigate puts focus on the first h1 after each navigation; it is not an interactive element. */
.sg-head h1:focus[b-0wndmx6862] { outline: none; }
.sg-badge[b-0wndmx6862] {
    font-size: 0.64rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em;
    color: #f85149; border: 1px solid rgba(248, 81, 73, 0.6); border-radius: 999px; padding: 2px 8px;
}
.sg-sub[b-0wndmx6862] { font-size: 0.8rem; color: var(--text-muted, #8b949e); margin: 4px 0 14px; }
.sg-muted[b-0wndmx6862] { color: var(--text-muted, #8b949e); }

.sg-scan[b-0wndmx6862] {
    padding: 12px 14px; margin-bottom: 14px;
    border: 1px solid var(--terminal-border, #30363d); border-radius: 12px; background: var(--terminal-surface, #161b22);
}
.sg-scan-info[b-0wndmx6862] { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-bottom: 10px; font-size: 0.8rem; }
.sg-scan-info div[b-0wndmx6862] { display: flex; flex-direction: column; }
.sg-scan-info span[b-0wndmx6862] { font-size: 0.64rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.sg-scan-info b[b-0wndmx6862] { font-variant-numeric: tabular-nums; }
.sg-scan-run[b-0wndmx6862] { display: flex; gap: 8px; flex-wrap: wrap; }
.sg-scan-run input[b-0wndmx6862] {
    flex: 1; min-width: 220px; padding: 7px 10px; border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d); background: var(--terminal-bg, #0d1117); color: var(--text-primary, #e6edf3);
    font-size: 0.8rem;
}
.sg-scan-msg[b-0wndmx6862] { margin-top: 8px; font-size: 0.76rem; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sg-progress[b-0wndmx6862] { width: 200px; height: 6px; border-radius: 3px; background: var(--terminal-border, #30363d); overflow: hidden; }
.sg-progress div[b-0wndmx6862] { height: 100%; background: var(--accent, #a78bfa); transition: width 0.3s ease; }

.sg-btn[b-0wndmx6862] {
    display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; border-radius: 8px;
    border: 1px solid var(--accent, #a78bfa); background: rgba(167, 139, 250, 0.15); color: #fff;
    font-size: 0.8rem; cursor: pointer; white-space: nowrap;
}
.sg-btn:disabled[b-0wndmx6862] { opacity: 0.5; cursor: default; }
.sg-btn.ghost[b-0wndmx6862] { background: transparent; border-color: var(--terminal-border, #30363d); color: var(--text-secondary, #c9d1d9); }
.sg-btn.small[b-0wndmx6862] { padding: 4px 9px; font-size: 0.74rem; }

.sg-tabs[b-0wndmx6862] { display: flex; gap: 4px; flex-wrap: wrap; border-bottom: 1px solid var(--terminal-border, #30363d); margin-bottom: 12px; }
.sg-tabs a[b-0wndmx6862] {
    padding: 8px 12px; font-size: 0.82rem; color: var(--text-muted, #8b949e); text-decoration: none;
    border-bottom: 2px solid transparent; margin-bottom: -1px; display: inline-flex; align-items: center; gap: 6px;
}
.sg-tabs a:hover[b-0wndmx6862] { color: var(--text-primary, #e6edf3); }
.sg-tabs a.on[b-0wndmx6862] { color: #fff; border-bottom-color: var(--accent, #a78bfa); font-weight: 600; }
.sg-count[b-0wndmx6862] { font-size: 0.66rem; padding: 0 6px; border-radius: 999px; background: var(--terminal-border, #30363d); }

.sg-card[b-0wndmx6862] { padding: 12px 14px; border: 1px solid var(--terminal-border, #30363d); border-radius: 12px; background: var(--terminal-surface, #161b22); }
.sg-card-head[b-0wndmx6862] { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.sg-desc[b-0wndmx6862] { font-size: 0.78rem; color: var(--text-muted, #8b949e); margin: 0 0 10px; }

.sg-mix-controls[b-0wndmx6862] { display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: flex-end; margin-bottom: 12px; }
.sg-weight[b-0wndmx6862] { display: flex; flex-direction: column; gap: 2px; font-size: 0.74rem; color: var(--text-secondary, #c9d1d9); min-width: 150px; }
.sg-weight b[b-0wndmx6862] { color: #fff; margin-left: 4px; }
.sg-filter[b-0wndmx6862] { display: inline-flex; border: 1px solid var(--terminal-border, #30363d); border-radius: 8px; overflow: hidden; }
.sg-filter button[b-0wndmx6862] { border: none; background: transparent; color: var(--text-secondary, #c9d1d9); padding: 6px 10px; font-size: 0.76rem; cursor: pointer; }
.sg-filter button + button[b-0wndmx6862] { border-left: 1px solid var(--terminal-border, #30363d); }
.sg-filter button.on[b-0wndmx6862] { background: rgba(167, 139, 250, 0.18); color: #fff; font-weight: 600; }
.sg-top[b-0wndmx6862] { font-size: 0.76rem; color: var(--text-secondary, #c9d1d9); }
.sg-top input[b-0wndmx6862] { width: 56px; margin-left: 6px; padding: 4px 6px; border-radius: 6px; border: 1px solid var(--terminal-border, #30363d); background: var(--terminal-bg, #0d1117); color: #fff; }

.sg-table[b-0wndmx6862] { width: 100%; border-collapse: collapse; font-size: 0.8rem; font-variant-numeric: tabular-nums; }
.sg-table th[b-0wndmx6862] {
    font-size: 0.66rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text-muted, #8b949e);
    text-align: right; padding: 6px 8px; border-bottom: 1px solid var(--terminal-border, #30363d); white-space: nowrap;
}
.sg-table td[b-0wndmx6862] { text-align: right; padding: 6px 8px; border-bottom: 1px solid rgba(48, 54, 61, 0.5); }
.sg-table .left[b-0wndmx6862] { text-align: left; }
.sg-table .num[b-0wndmx6862] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.sg-table tbody tr:hover td[b-0wndmx6862] { background: rgba(167, 139, 250, 0.05); }
.sg-sym[b-0wndmx6862] { font-weight: 700; color: var(--accent, #a78bfa); text-decoration: none; }
.sg-sym:hover[b-0wndmx6862] { text-decoration: underline; }
.sg-why[b-0wndmx6862] { color: var(--text-secondary, #c9d1d9); font-size: 0.76rem; }

.sg-dir[b-0wndmx6862] { font-size: 0.7rem; font-weight: 700; padding: 2px 8px; border-radius: 999px; border: 1px solid var(--terminal-border, #30363d); }
.sg-dir.long[b-0wndmx6862] { color: #3fb950; border-color: rgba(63, 185, 80, 0.5); }
.sg-dir.short[b-0wndmx6862] { color: #f85149; border-color: rgba(248, 81, 73, 0.5); }
.sg-dir.neutral[b-0wndmx6862] { color: var(--text-muted, #8b949e); }
.sg-warn[b-0wndmx6862] { color: #d29922; margin-left: 6px; }

.sg-chip[b-0wndmx6862] {
    display: inline-block; font-size: 0.68rem; padding: 1px 7px; margin: 1px 4px 1px 0; border-radius: 999px;
    border: 1px solid var(--terminal-border, #30363d); color: var(--text-secondary, #c9d1d9); white-space: nowrap;
}
.sg-chip.long[b-0wndmx6862] { box-shadow: inset 2px 0 0 #3fb950; }
.sg-chip.short[b-0wndmx6862] { box-shadow: inset 2px 0 0 #f85149; }

.sg-actions[b-0wndmx6862] { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.sg-loading[b-0wndmx6862], .sg-empty[b-0wndmx6862] { padding: 14px 4px; font-size: 0.8rem; display: flex; align-items: center; gap: 8px; }
.sg-error[b-0wndmx6862] { color: #f85149; font-size: 0.78rem; margin-bottom: 8px; }
.sg-spinner[b-0wndmx6862] {
    width: 12px; height: 12px; border-radius: 50%; border: 2px solid var(--terminal-border, #30363d);
    border-top-color: var(--accent, #a78bfa); animation: sg-spin-b-0wndmx6862 0.8s linear infinite;
}
@keyframes sg-spin-b-0wndmx6862 { to { transform: rotate(360deg); } }

.sg-caveats[b-0wndmx6862] { margin: 16px 0 0; padding-left: 18px; font-size: 0.74rem; color: var(--text-muted, #8b949e); }
.sg-caveats li[b-0wndmx6862] { margin-bottom: 3px; }

@media (max-width: 720px) {
    .sg-container[b-0wndmx6862] { padding: 10px 12px 40px; }
    .sg-card[b-0wndmx6862] { overflow-x: auto; }
    .sg-table[b-0wndmx6862] { min-width: 680px; }
}
/* /Components/Pages/Admin/SiteSettings.razor.rz.scp.css */
.site-settings[b-796fcwf4r9] {
    max-width: 760px;
    margin: 0 auto;
    padding: 24px 16px 48px;
    color: var(--text-primary, #f0f4f8);
}

h1[b-796fcwf4r9] {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.settings-card[b-796fcwf4r9] {
    background: var(--bg-card, #0d1117);
    border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
    border-radius: 12px;
    padding: 20px;
}

h2[b-796fcwf4r9] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 8px;
}

h3[b-796fcwf4r9] {
    font-size: 0.95rem;
    font-weight: 600;
    margin: 24px 0 6px;
}

.lead-text[b-796fcwf4r9],
.note[b-796fcwf4r9] {
    color: var(--text-secondary, #94a3b8);
    font-size: 0.875rem;
    line-height: 1.5;
}

.note code[b-796fcwf4r9] {
    color: var(--primary, #13dfff);
}

.mode-options[b-796fcwf4r9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 10px;
    margin: 16px 0;
}

.mode-option[b-796fcwf4r9] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 12px 14px;
    text-align: left;
    background: transparent;
    border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.12));
    border-radius: 10px;
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.mode-option:hover[b-796fcwf4r9] {
    border-color: var(--primary, #13dfff);
}

.mode-option.selected[b-796fcwf4r9] {
    border-color: var(--primary, #13dfff);
    background: rgba(19, 223, 255, 0.08);
}

.mode-name[b-796fcwf4r9] {
    font-weight: 600;
}

.mode-detail[b-796fcwf4r9] {
    color: var(--text-secondary, #94a3b8);
    font-size: 0.8rem;
}

.browser-links[b-796fcwf4r9] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

/* Data sources card (Phase 3, stream A): one dot per FMP route */
.data-sources td[b-796fcwf4r9] {
    vertical-align: middle;
}

.ds-dot[b-796fcwf4r9] {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    margin-right: 4px;
    background: var(--text-secondary, #94a3b8);
}

.ds-dot.ok[b-796fcwf4r9] {
    background: #22c55e;
}

.ds-dot.off[b-796fcwf4r9] {
    background: #f59e0b;
}

.ds-dot.err[b-796fcwf4r9] {
    background: #ef4444;
}
/* /Components/Pages/Admin/SocialStudio.razor.rz.scp.css */
.studio[b-iltfhssaf1] { max-width: 1400px; margin: 0 auto; padding: 20px; color: #e6e6e6; font-size: 13px; display: flex; flex-direction: column; gap: 14px; }
.studio-header[b-iltfhssaf1] { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.studio-header h1[b-iltfhssaf1] { margin: 0 0 4px; font-size: 22px; color: #fff; }
.subtitle[b-iltfhssaf1] { margin: 0; color: #9aa4b2; max-width: 820px; line-height: 1.5; }
.header-actions[b-iltfhssaf1] { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
a[b-iltfhssaf1] { color: #58a6ff; text-decoration: none; }

.btn[b-iltfhssaf1] { background: #161b22; color: #d6dbe1; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 14px; font-weight: 600; cursor: pointer; white-space: nowrap; display: inline-block; }
.btn.primary[b-iltfhssaf1] { background: #0e91a5; color: #fff; border-color: #0e91a5; }
.btn.ghost[b-iltfhssaf1] { background: transparent; border-color: transparent; color: #9aa4b2; }
.btn.danger:hover[b-iltfhssaf1] { color: #f0a5a9; }
.btn:disabled[b-iltfhssaf1] { opacity: .6; cursor: default; }
.link[b-iltfhssaf1] { background: none; border: none; padding: 0; color: #58a6ff; cursor: pointer; font: inherit; }
.link.dim[b-iltfhssaf1] { color: #7d8590; margin-left: 10px; }

.notice[b-iltfhssaf1] { background: #161b22; border: 1px solid #2b313a; border-radius: 8px; padding: 12px 16px; color: #9aa4b2; white-space: pre-line; }
.notice.error[b-iltfhssaf1] { border-color: #d1434b; color: #f0a5a9; }
.notice.ok[b-iltfhssaf1] { border-color: #2ea043; color: #7ee787; }
.panel[b-iltfhssaf1] { background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; padding: 14px 18px; display: flex; flex-direction: column; gap: 6px; }
.panel.empty[b-iltfhssaf1] { text-align: center; color: #9aa4b2; padding: 36px 18px; }
.dim[b-iltfhssaf1] { color: #7d8590; }
.small[b-iltfhssaf1] { font-size: 12px; }
.warn[b-iltfhssaf1] { color: #e0a838; }
.bad[b-iltfhssaf1] { color: #f0a5a9; }
.ok-text[b-iltfhssaf1] { color: #7ee787; }

.kpis[b-iltfhssaf1] { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.kpis.four[b-iltfhssaf1] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.kpi[b-iltfhssaf1] { background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; padding: 10px 14px; display: flex; flex-direction: column; gap: 2px; }
.kpi span[b-iltfhssaf1] { font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: #7d8590; }
.kpi b[b-iltfhssaf1] { font-size: 22px; color: #fff; }
.kpi small[b-iltfhssaf1] { font-size: 11px; color: #7d8590; }

.tabs[b-iltfhssaf1] { display: flex; gap: 6px; flex-wrap: wrap; }
.tab[b-iltfhssaf1] { background: #161b22; color: #9aa4b2; border: 1px solid #2b313a; border-radius: 6px; padding: 6px 12px; font-size: 12px; cursor: pointer; }
.tab.active[b-iltfhssaf1] { background: #0f2e2b; color: #5fcdde; border-color: #226d78; font-weight: 600; }

.toolbar[b-iltfhssaf1] { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.day-nav[b-iltfhssaf1] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.day-nav .btn[b-iltfhssaf1] { padding: 4px 10px; }
.day[b-iltfhssaf1] { font-weight: 700; color: #fff; min-width: 170px; text-align: center; }
.section[b-iltfhssaf1] { margin: 8px 0 0; font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: #5fcdde; }

.calendar[b-iltfhssaf1] { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 1px; background: #2b313a; border: 1px solid #2b313a; border-radius: 10px; overflow: hidden; }
.cal-head[b-iltfhssaf1] { background: #161b22; padding: 6px 8px; font-size: 11px; text-transform: uppercase; color: #7d8590; }
.cal-day[b-iltfhssaf1] { background: #0f1319; min-height: 118px; padding: 6px; display: flex; flex-direction: column; gap: 4px; }
.cal-day.faded[b-iltfhssaf1] { opacity: .45; }
.cal-day.today[b-iltfhssaf1] { box-shadow: inset 0 0 0 1px #226d78; }
.cal-date[b-iltfhssaf1] { background: none; border: none; color: #7d8590; font-weight: 700; text-align: left; padding: 0; cursor: pointer; }
.cal-entry[b-iltfhssaf1] { text-align: left; font-size: 11px; line-height: 1.25; border-radius: 4px; padding: 3px 5px; border: 1px solid #2b313a; background: #161b22; color: #c3ccd8; cursor: pointer; }
.cal-entry.unapproved[b-iltfhssaf1] { border-style: dashed; border-color: #226d78; color: #5fcdde; background: transparent; }
.cal-title[b-iltfhssaf1] { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: #9aa4b2; }

.table-wrap[b-iltfhssaf1] { overflow-x: auto; background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; }
.table-title[b-iltfhssaf1] { padding: 10px 12px; border-bottom: 1px solid #2b313a; }
.grid-table[b-iltfhssaf1] { width: 100%; border-collapse: collapse; }
.grid-table th[b-iltfhssaf1] { text-align: left; color: #8b95a3; font-weight: 600; padding: 9px 12px; border-bottom: 1px solid #2b313a; white-space: nowrap; }
.grid-table td[b-iltfhssaf1] { padding: 9px 12px; border-bottom: 1px solid #1b2028; white-space: nowrap; }
.grid-table td.wrap[b-iltfhssaf1] { white-space: normal; min-width: 260px; }
.grid-table tbody tr:hover[b-iltfhssaf1] { background: #12171e; }
.grid-table tr.group td[b-iltfhssaf1] { color: #5fcdde; font-size: 11px; text-transform: uppercase; background: #0b0e13; }
.grid-table tr.total td[b-iltfhssaf1] { font-weight: 700; color: #fff; border-top: 2px solid #2b313a; }
.num[b-iltfhssaf1] { text-align: right; }

.status[b-iltfhssaf1] { font-size: 10px; padding: 2px 8px; border-radius: 4px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; white-space: nowrap; margin-right: 4px; }
.st-sent[b-iltfhssaf1] { background: #0f2416; color: #7ee787; }
.st-scheduled[b-iltfhssaf1] { background: #12324f; color: #58a6ff; }
.st-hand[b-iltfhssaf1] { background: #3a2a12; color: #e0a838; }
.st-unknown[b-iltfhssaf1] { background: #3a2a12; color: #f5b942; }
.st-bad[b-iltfhssaf1] { background: #2a1215; color: #f0a5a9; }
.st-muted[b-iltfhssaf1] { background: #1b2028; color: #8b95a3; }

.chips[b-iltfhssaf1] { display: flex; flex-wrap: wrap; gap: 6px; }
.chip[b-iltfhssaf1] { font-size: 12px; padding: 3px 9px; border-radius: 10px; border: 1px solid #2b313a; color: #7d8590; }
.chip.on[b-iltfhssaf1] { color: #5fcdde; border-color: #226d78; }

.connections[b-iltfhssaf1] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.conn-head[b-iltfhssaf1] { display: flex; justify-content: space-between; align-items: center; font-size: 15px; color: #fff; }
.setup[b-iltfhssaf1] { line-height: 1.5; }
.conn-actions[b-iltfhssaf1] { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; padding-top: 6px; }

.overlay[b-iltfhssaf1] { position: fixed; inset: 0; z-index: 1040; background: rgba(0, 0, 0, .55); }
.side[b-iltfhssaf1] { position: fixed; right: 0; top: 0; bottom: 0; z-index: 1050; width: 100%; max-width: 560px; overflow-y: auto; background: #0f1319; border-left: 1px solid #2b313a; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; color: #e6e6e6; font-size: 13px; }
.side-head[b-iltfhssaf1] { display: flex; justify-content: space-between; align-items: center; }
.side-head h2[b-iltfhssaf1] { margin: 0; font-size: 18px; color: #fff; }
.ai-box[b-iltfhssaf1] { border: 1px solid #226d78; background: #0b1f1d; border-radius: 8px; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
.ai-box .row[b-iltfhssaf1] { display: flex; align-items: center; gap: 10px; }
.lbl[b-iltfhssaf1] { display: flex; flex-direction: column; gap: 4px; color: #9aa4b2; }
.lbl summary[b-iltfhssaf1] { cursor: pointer; }
.field[b-iltfhssaf1] { width: 100%; box-sizing: border-box; background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 10px; font: inherit; }
textarea.field[b-iltfhssaf1] { min-height: 80px; resize: vertical; }
textarea.field.tall[b-iltfhssaf1] { min-height: 120px; }
details.lbl .field[b-iltfhssaf1] { margin-top: 6px; }
.pending[b-iltfhssaf1] { display: flex; align-items: center; gap: 10px; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 10px; }
.pending .link[b-iltfhssaf1] { margin-left: auto; }
.created[b-iltfhssaf1] { display: flex; align-items: center; gap: 10px; border: 1px solid #2ea043; background: #0f2416; border-radius: 6px; padding: 8px 10px; }
.created code[b-iltfhssaf1] { color: #7ee787; }

@media (max-width: 1100px) {
    .kpis[b-iltfhssaf1] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .connections[b-iltfhssaf1] { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
    .studio-header[b-iltfhssaf1] { flex-direction: column; }
    .kpis[b-iltfhssaf1], .kpis.four[b-iltfhssaf1] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .calendar[b-iltfhssaf1] { font-size: 10px; }
}
/* /Components/Pages/Admin/SupportInbox.razor.rz.scp.css */
.inbox-page[b-50ns2hh0s0] { max-width: 1300px; margin: 0 auto; padding: 20px; color: #e6e6e6; font-size: 13px; }
.inbox-header[b-50ns2hh0s0] { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 16px; }
.inbox-header h1[b-50ns2hh0s0], .ticket-head h1[b-50ns2hh0s0] { margin: 0 0 4px; font-size: 22px; color: #fff; }
.subtitle[b-50ns2hh0s0] { margin: 0; color: #9aa4b2; max-width: 820px; line-height: 1.5; }
a[b-50ns2hh0s0] { color: #58a6ff; text-decoration: none; }

.btn[b-50ns2hh0s0] { background: #161b22; color: #d6dbe1; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 14px; font-weight: 600; cursor: pointer; white-space: nowrap; }
.btn.primary[b-50ns2hh0s0] { background: #2563eb; color: #fff; border-color: #2563eb; }
.btn:disabled[b-50ns2hh0s0] { opacity: .6; cursor: default; }

.notice[b-50ns2hh0s0] { background: #161b22; border: 1px solid #2b313a; border-radius: 8px; padding: 12px 16px; color: #9aa4b2; margin-bottom: 12px; }
.notice.error[b-50ns2hh0s0] { border-color: #d1434b; color: #f0a5a9; }
.notice.ok[b-50ns2hh0s0] { border-color: #2ea043; color: #7ee787; }

.panel[b-50ns2hh0s0] { background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; padding: 16px 18px; margin-bottom: 16px; }
.panel.empty[b-50ns2hh0s0] { text-align: center; color: #9aa4b2; padding: 36px 18px; }
.dim[b-50ns2hh0s0] { color: #7d8590; }

.toolbar[b-50ns2hh0s0] { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.tabs[b-50ns2hh0s0] { display: flex; gap: 6px; flex-wrap: wrap; }
.tab[b-50ns2hh0s0] { background: #161b22; color: #9aa4b2; border: 1px solid #2b313a; border-radius: 6px; padding: 6px 12px; font-size: 12px; }
.tab.active[b-50ns2hh0s0] { background: #12324f; color: #58a6ff; border-color: #1f4a73; }
.tab .count[b-50ns2hh0s0] { margin-left: 4px; color: #7d8590; font-weight: 600; }
.tab.active .count[b-50ns2hh0s0] { color: #58a6ff; }
.search[b-50ns2hh0s0] { display: flex; gap: 6px; }
.search input[b-50ns2hh0s0] { background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px; padding: 7px 10px; width: 240px; }

.table-wrap[b-50ns2hh0s0] { overflow-x: auto; background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; }
.inbox-table[b-50ns2hh0s0] { width: 100%; border-collapse: collapse; }
.inbox-table th[b-50ns2hh0s0] { text-align: left; color: #8b95a3; font-weight: 600; padding: 10px 12px; border-bottom: 1px solid #2b313a; white-space: nowrap; }
.inbox-table td[b-50ns2hh0s0] { padding: 10px 12px; border-bottom: 1px solid #1b2028; white-space: nowrap; }
.inbox-table tbody tr[b-50ns2hh0s0] { cursor: pointer; }
.inbox-table tbody tr:hover[b-50ns2hh0s0] { background: #12171e; }
.inbox-table tbody tr:last-child td[b-50ns2hh0s0] { border-bottom: none; }
.inbox-table td.subject[b-50ns2hh0s0] { white-space: normal; min-width: 240px; }
.inbox-table td.subject a[b-50ns2hh0s0] { color: #fff; font-weight: 600; }
.num[b-50ns2hh0s0] { text-align: right; }
.plan[b-50ns2hh0s0] { margin-left: 6px; font-size: 10px; color: #8b95a3; border: 1px solid #2b313a; border-radius: 8px; padding: 1px 6px; }
.unseen[b-50ns2hh0s0] { margin-left: 6px; font-size: 11px; }

.status[b-50ns2hh0s0] { font-size: 10px; padding: 2px 8px; border-radius: 4px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; white-space: nowrap; }
.st-open[b-50ns2hh0s0] { background: #3a2a12; color: #e0a838; }
.st-answered[b-50ns2hh0s0] { background: #12324f; color: #58a6ff; }
.st-closed[b-50ns2hh0s0] { background: #1b2028; color: #8b95a3; }

.back-link[b-50ns2hh0s0] { display: inline-block; color: #9aa4b2; margin-bottom: 12px; }
.ticket-head[b-50ns2hh0s0] { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 16px; }
.ticket-head h1[b-50ns2hh0s0] { overflow-wrap: anywhere; }
.meta[b-50ns2hh0s0] { margin: 0; color: #7d8590; }
.head-actions[b-50ns2hh0s0] { display: flex; align-items: center; gap: 10px; }

.detail-grid[b-50ns2hh0s0] { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 16px; align-items: start; }
.reply[b-50ns2hh0s0] { margin-top: 16px; display: flex; flex-direction: column; gap: 10px; }
.reply textarea[b-50ns2hh0s0] {
    background: #161b22; color: #e6e6e6; border: 1px solid #2b313a; border-radius: 6px;
    padding: 10px 12px; font: inherit; font-size: 14px; line-height: 1.5; resize: vertical; width: 100%; box-sizing: border-box;
}
.actions[b-50ns2hh0s0] { display: flex; gap: 10px; flex-wrap: wrap; }

.facts h2[b-50ns2hh0s0] { margin: 0 0 8px; font-size: 13px; color: #fff; text-transform: uppercase; letter-spacing: .04em; }
.facts h2:not(:first-child)[b-50ns2hh0s0] { margin-top: 18px; }
.facts dl[b-50ns2hh0s0] { margin: 0; display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 6px 10px; }
.facts dt[b-50ns2hh0s0] { color: #7d8590; }
.facts dd[b-50ns2hh0s0] { margin: 0; overflow-wrap: anywhere; }
.facts dd.small[b-50ns2hh0s0] { font-size: 11px; color: #9aa4b2; }

@media (max-width: 900px) {
    .detail-grid[b-50ns2hh0s0] { grid-template-columns: 1fr; }
    .inbox-header[b-50ns2hh0s0], .ticket-head[b-50ns2hh0s0] { flex-direction: column; }
    .search input[b-50ns2hh0s0] { width: 100%; }
}
/* /Components/Pages/AiPickPerformance.razor.rz.scp.css */
/* /picks — the track record. Same tokens as the research terminal (the child components fall back to
   them), terminal density, numbers beside every mark, "collecting" instead of a rate below the minimum. */
.tr-root[b-oz6hff0961] {
    --er-bull: var(--success, #10eb6b);
    --er-bear: var(--error, #ff5757);
    --er-vol: var(--accent, #a78bfa);
    --er-mixed: var(--warning, #ffb547);
    --er-neutral: #64748b;
    --er-implied: var(--primary, #13dfff);

    max-width: 1400px;
    margin: 0 auto;
    padding: 16px 16px 32px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    color: var(--text-primary, #f0f4f8);
    font-size: 13px;
}

/* ── Head ───────────────────────────────────────────────────────────────── */
.tr-head[b-oz6hff0961] { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 4px 2px 0; }
.tr-title[b-oz6hff0961] { margin: 0; font-family: var(--font-display, inherit); font-size: 22px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.1; }
.tr-title span[b-oz6hff0961] { color: var(--text-secondary, #94a3b8); font-weight: 500; }
.tr-tagline[b-oz6hff0961] { margin: 4px 0 0; font-size: 12.5px; color: var(--text-muted, #64748b); max-width: 720px; }
.tr-back[b-oz6hff0961] { font-size: 12px; font-weight: 600; color: var(--text-secondary, #94a3b8); text-decoration: none; white-space: nowrap; }
.tr-back:hover[b-oz6hff0961] { color: var(--primary, #13dfff); }

/* ── Records ────────────────────────────────────────────────────────────── */
.tr-records[b-oz6hff0961] { display: flex; flex-direction: column; gap: 10px; }

.tr-panel[b-oz6hff0961] {
    --v: var(--er-neutral, #64748b);
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 16px 14px 18px;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    box-shadow: inset 3px 0 0 var(--v), var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.4));
    animation: tr-in-b-oz6hff0961 360ms var(--ease-out, ease-out) both;
}
.tr-panel.v-dir[b-oz6hff0961] { --v: var(--er-bull, #10eb6b); }
.tr-panel.v-vol[b-oz6hff0961] { --v: var(--er-vol, #a78bfa); }
.tr-panel:nth-child(2)[b-oz6hff0961] { animation-delay: 60ms; }
.tr-panel:nth-child(3)[b-oz6hff0961] { animation-delay: 120ms; }

@keyframes tr-in-b-oz6hff0961 { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

.tr-panel-head[b-oz6hff0961] { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.tr-panel-head h2[b-oz6hff0961] { margin: 0; font-size: 14px; font-weight: 700; letter-spacing: 0.01em; }
.tr-panel-sub[b-oz6hff0961] { font-size: 11px; color: var(--text-muted, #64748b); }

.tr-model[b-oz6hff0961] { display: flex; flex-direction: column; gap: 8px; padding-top: 8px; border-top: 1px solid var(--border, rgba(255, 255, 255, 0.06)); }
.tr-model:first-of-type[b-oz6hff0961] { padding-top: 0; border-top: 0; }
.tr-model-id[b-oz6hff0961] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.tr-model-id code[b-oz6hff0961] { font-size: 11.5px; padding: 1px 6px; border-radius: 4px; background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06)); color: var(--text-secondary, #94a3b8); }
.tr-n[b-oz6hff0961] { font-size: 12px; color: var(--text-secondary, #94a3b8); font-variant-numeric: tabular-nums; }
.tr-n b[b-oz6hff0961] { color: var(--text-primary, #f0f4f8); font-weight: 600; }
.tr-n .muted[b-oz6hff0961], .muted[b-oz6hff0961] { color: var(--text-muted, #64748b); }

.tr-chip[b-oz6hff0961] {
    padding: 2px 8px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    color: var(--text-secondary, #94a3b8);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: help;
}
.tr-chip.ok[b-oz6hff0961] { color: var(--er-bull, #10eb6b); border-color: color-mix(in srgb, var(--er-bull, #10eb6b) 40%, transparent); }
.tr-chip.warn[b-oz6hff0961] { color: var(--er-mixed, #ffb547); border-color: color-mix(in srgb, var(--er-mixed, #ffb547) 40%, transparent); }
.tr-chip.muted[b-oz6hff0961] { color: var(--text-muted, #64748b); }

/* Collecting: the sample bar, never a rate */
.tr-collecting[b-oz6hff0961] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 12px; color: var(--text-secondary, #94a3b8); }
.tr-collecting-k[b-oz6hff0961] { font-size: 10.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-muted, #64748b); }
.tr-collecting-v[b-oz6hff0961] { font-family: var(--font-display, inherit); font-size: 18px; font-weight: 600; color: var(--text-primary, #f0f4f8); font-variant-numeric: tabular-nums; }
.tr-collecting-bar[b-oz6hff0961] { position: relative; flex: 0 0 160px; height: 4px; border-radius: 2px; background: rgba(255, 255, 255, 0.08); overflow: hidden; }
.tr-collecting-bar span[b-oz6hff0961] { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 2px; background: var(--v); transition: width var(--dur-med, 0.25s) var(--ease-out, ease-out); }
.tr-collecting-note[b-oz6hff0961] { color: var(--text-muted, #64748b); }

/* Stat tiles: proportional figures, hue on the sign only */
.tr-tiles[b-oz6hff0961] { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; }
.tr-tile[b-oz6hff0961] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 10px;
    border-radius: var(--r-md, 8px);
    background: var(--bg-glass, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    cursor: help;
    min-width: 0;
}
.tr-tile .k[b-oz6hff0961] { font-size: 9.5px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-muted, #64748b); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tr-tile .k .n[b-oz6hff0961] { text-transform: none; letter-spacing: 0; font-weight: 500; }
.tr-tile .v[b-oz6hff0961] { font-family: var(--font-display, inherit); font-size: 20px; font-weight: 600; line-height: 1; color: var(--text-primary, #f0f4f8); }
.tr-tile .v.small[b-oz6hff0961] { font-size: 14px; font-variant-numeric: tabular-nums; }
.tr-tile .v .sub[b-oz6hff0961] { font-size: 11px; font-weight: 500; color: var(--text-muted, #64748b); margin-left: 4px; }
.tr-tile .v .vs[b-oz6hff0961] { color: var(--text-muted, #64748b); }
.tr-tile .v.up[b-oz6hff0961]::before { content: "▲ "; font-size: 11px; color: var(--er-bull, #10eb6b); vertical-align: middle; }
.tr-tile .v.down[b-oz6hff0961]::before { content: "▼ "; font-size: 11px; color: var(--er-bear, #ff5757); vertical-align: middle; }

.tr-empty[b-oz6hff0961] { margin: 0; font-size: 12.5px; color: var(--text-muted, #64748b); line-height: 1.5; }

/* ── Tonight ────────────────────────────────────────────────────────────── */
.tr-today[b-oz6hff0961] { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--text-secondary, #94a3b8); padding: 0 2px; }
.tr-today b[b-oz6hff0961] { color: var(--text-primary, #f0f4f8); font-weight: 600; }
.tr-today-dot[b-oz6hff0961] { width: 8px; height: 8px; border-radius: 50%; background: var(--text-dim, #475569); flex: 0 0 auto; }
.tr-today-dot.on[b-oz6hff0961] { background: var(--er-bull, #10eb6b); box-shadow: 0 0 0 3px color-mix(in srgb, var(--er-bull, #10eb6b) 20%, transparent); }

.tr-upgrade[b-oz6hff0961] { max-width: 720px; }

/* ── Filters ────────────────────────────────────────────────────────────── */
.tr-list-wrap[b-oz6hff0961] { display: flex; flex-direction: column; gap: 10px; }
.tr-filters[b-oz6hff0961] { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; padding: 0 2px; }
.tr-filter-group[b-oz6hff0961] { display: flex; gap: 4px; padding: 3px; border-radius: var(--r-pill, 999px); background: var(--bg-glass, rgba(255, 255, 255, 0.03)); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); }

.tr-chipbtn[b-oz6hff0961] {
    --v: var(--text-secondary, #94a3b8);
    height: 26px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: var(--r-pill, 999px);
    background: none;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 11.5px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-fast, 0.15s) ease, color var(--dur-fast, 0.15s) ease;
}
.tr-chipbtn.v-bull[b-oz6hff0961] { --v: var(--er-bull, #10eb6b); }
.tr-chipbtn.v-bear[b-oz6hff0961] { --v: var(--er-bear, #ff5757); }
.tr-chipbtn.v-vol[b-oz6hff0961] { --v: var(--er-vol, #a78bfa); }
.tr-chipbtn:hover[b-oz6hff0961] { color: var(--text-primary, #f0f4f8); }
.tr-chipbtn.on[b-oz6hff0961] { background: color-mix(in srgb, var(--v) 16%, transparent); border-color: color-mix(in srgb, var(--v) 40%, transparent); color: var(--text-primary, #f0f4f8); }

.tr-toggle[b-oz6hff0961] { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--text-secondary, #94a3b8); cursor: pointer; }
.tr-toggle input[b-oz6hff0961] { accent-color: var(--primary, #13dfff); }
.tr-count[b-oz6hff0961] { margin-left: auto; font-size: 12px; color: var(--text-muted, #64748b); font-variant-numeric: tabular-nums; }

/* ── List ───────────────────────────────────────────────────────────────── */
.tr-list[b-oz6hff0961] {
    display: flex;
    flex-direction: column;
    border-radius: var(--r-lg, 12px);
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    background: var(--bg-card, #141a24);
    overflow: hidden;
    transition: opacity var(--dur-med, 0.25s) ease;
}
.tr-list.dim[b-oz6hff0961] { opacity: 0.5; }

.tr-row[b-oz6hff0961] {
    --v: var(--er-neutral, #64748b);
    display: grid;
    grid-template-columns: 88px minmax(170px, 1.3fr) 96px 48px minmax(230px, 1.5fr) 64px 92px 72px 72px 90px 28px;
    grid-template-areas: "date name type conf fc eps first s5 s20 out chev" "detail detail detail detail detail detail detail detail detail detail detail";
    align-items: center;
    gap: 0 12px;
    min-height: 48px;
    padding: 6px 10px 6px 14px;
    border-bottom: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    box-shadow: inset 3px 0 0 var(--v);
    font-variant-numeric: tabular-nums;
}
.tr-row:last-child[b-oz6hff0961] { border-bottom: 0; }
.tr-row.v-bull[b-oz6hff0961] { --v: var(--er-bull, #10eb6b); }
.tr-row.v-bear[b-oz6hff0961] { --v: var(--er-bear, #ff5757); }
.tr-row.v-vol[b-oz6hff0961] { --v: var(--er-vol, #a78bfa); }
.tr-row.nopick[b-oz6hff0961] { --v: transparent; grid-template-areas: "date nopick nopick nopick nopick nopick nopick nopick nopick nopick nopick"; color: var(--text-muted, #64748b); }
.tr-row.open[b-oz6hff0961] { background: var(--bg-glass, rgba(255, 255, 255, 0.03)); }

.tr-row.head[b-oz6hff0961] {
    min-height: 34px;
    padding-top: 0;
    padding-bottom: 0;
    box-shadow: none;
    background: var(--bg-panel, #1e2736);
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted, #64748b);
}

.c-date[b-oz6hff0961] { grid-area: date; display: flex; flex-direction: column; gap: 1px; font-size: 12px; color: var(--text-secondary, #94a3b8); }
.c-name[b-oz6hff0961] { grid-area: name; display: flex; align-items: center; gap: 8px; min-width: 0; }
.c-type[b-oz6hff0961] { grid-area: type; }
.c-conf[b-oz6hff0961] { grid-area: conf; font-weight: 600; }
.c-fc[b-oz6hff0961] { grid-area: fc; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.c-eps[b-oz6hff0961] { grid-area: eps; font-size: 12px; }
.c-first[b-oz6hff0961] { grid-area: first; display: flex; flex-direction: column; gap: 1px; font-weight: 600; }
.c-s5[b-oz6hff0961] { grid-area: s5; }
.c-s20[b-oz6hff0961] { grid-area: s20; }
.c-out[b-oz6hff0961] { grid-area: out; }
.c-chev[b-oz6hff0961] { grid-area: chev; }
.c-nopick[b-oz6hff0961] { grid-area: nopick; display: flex; align-items: center; gap: 10px; font-size: 12px; min-width: 0; }
.c-nopick .reason[b-oz6hff0961] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tr-row .sub[b-oz6hff0961] { font-size: 10.5px; font-weight: 500; color: var(--text-muted, #64748b); }

.tr-logo[b-oz6hff0961], .tr-logo.fb[b-oz6hff0961] { width: 20px; height: 20px; border-radius: 5px; background: #fff; padding: 1px; object-fit: contain; flex: 0 0 auto; }
.tr-logo.fb[b-oz6hff0961] { display: flex; align-items: center; justify-content: center; background: var(--bg-panel, #1e2736); color: var(--text-secondary, #94a3b8); font-size: 9px; font-weight: 700; }
.tr-name-text[b-oz6hff0961] { display: flex; flex-direction: column; min-width: 0; }
.tr-name-text .sym[b-oz6hff0961] { font-size: 13.5px; font-weight: 700; letter-spacing: 0.02em; color: var(--text-primary, #f0f4f8); text-decoration: none; }
.tr-name-text .sym:hover[b-oz6hff0961] { color: var(--primary, #13dfff); }
.tr-name-text .co[b-oz6hff0961] { font-size: 11px; color: var(--text-muted, #64748b); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.mini[b-oz6hff0961] { display: flex; gap: 10px; }
.mini-s[b-oz6hff0961] { display: flex; flex-direction: column; gap: 2px; }
.mini-s i[b-oz6hff0961] { font-style: normal; font-size: 9px; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted, #64748b); }
.mini-s b[b-oz6hff0961] { font-size: 12px; font-weight: 600; line-height: 1; }
.move[b-oz6hff0961] { font-size: 11px; color: var(--text-secondary, #94a3b8); white-space: nowrap; }
.move .vs[b-oz6hff0961] { color: var(--text-muted, #64748b); }
.move .impl[b-oz6hff0961] { color: var(--er-implied, #13dfff); }

.ok[b-oz6hff0961] { color: var(--er-bull, #10eb6b); font-weight: 600; }
.bad[b-oz6hff0961] { color: var(--er-bear, #ff5757); font-weight: 600; }
.c-first.up > span:first-child[b-oz6hff0961]::before, .c-s5.up[b-oz6hff0961]::before, .c-s20.up[b-oz6hff0961]::before { content: "▲ "; font-size: 9px; color: var(--er-bull, #10eb6b); }
.c-first.down > span:first-child[b-oz6hff0961]::before, .c-s5.down[b-oz6hff0961]::before, .c-s20.down[b-oz6hff0961]::before { content: "▼ "; font-size: 9px; color: var(--er-bear, #ff5757); }

.tr-out[b-oz6hff0961] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    color: var(--text-secondary, #94a3b8);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: help;
}
.tr-out.o-win[b-oz6hff0961] { color: var(--er-bull, #10eb6b); border-color: color-mix(in srgb, var(--er-bull, #10eb6b) 40%, transparent); }
.tr-out.o-loss[b-oz6hff0961] { color: var(--er-bear, #ff5757); border-color: color-mix(in srgb, var(--er-bear, #ff5757) 40%, transparent); }
.tr-out.o-push[b-oz6hff0961] { color: var(--er-mixed, #ffb547); }
.tr-out.o-pending[b-oz6hff0961], .tr-out.o-ungradable[b-oz6hff0961] { color: var(--text-muted, #64748b); }

.c-chev[b-oz6hff0961] {
    width: 26px;
    height: 26px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
    border-radius: 6px;
    background: none;
    color: var(--text-secondary, #94a3b8);
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.c-chev:hover[b-oz6hff0961] { border-color: var(--border-medium, rgba(255, 255, 255, 0.1)); color: var(--text-primary, #f0f4f8); }

/* Expanded write-up */
.tr-detail[b-oz6hff0961] {
    grid-area: detail;
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(220px, 1fr);
    grid-template-areas: "text why" "meta meta";
    gap: 8px 24px;
    padding: 8px 0 6px;
    animation: tr-in-b-oz6hff0961 220ms var(--ease-out, ease-out) both;
}
.tr-detail-text[b-oz6hff0961] { grid-area: text; }
.tr-detail-text p[b-oz6hff0961] { margin: 0 0 6px; font-size: 12.5px; line-height: 1.5; }
.tr-detail-why[b-oz6hff0961] { grid-area: why; }
.tr-detail-why .k[b-oz6hff0961] { display: block; font-size: 10px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-muted, #64748b); margin-bottom: 4px; }
.tr-detail-why ul[b-oz6hff0961] { margin: 0; padding-left: 14px; font-size: 11.5px; line-height: 1.45; color: var(--text-secondary, #94a3b8); }
.tr-detail-why li[b-oz6hff0961]::marker { color: var(--v); }
.tr-detail-meta[b-oz6hff0961] { grid-area: meta; font-size: 11px; color: var(--text-muted, #64748b); }

/* ── Pager, footer, states ──────────────────────────────────────────────── */
.tr-pager[b-oz6hff0961] { display: flex; align-items: center; justify-content: center; gap: 12px; font-size: 12px; color: var(--text-secondary, #94a3b8); }
.tr-btn[b-oz6hff0961] {
    height: 28px;
    padding: 0 12px;
    border-radius: var(--r-pill, 999px);
    border: 1px solid var(--border-medium, rgba(255, 255, 255, 0.1));
    background: var(--bg-glass-medium, rgba(255, 255, 255, 0.06));
    color: var(--text-primary, #f0f4f8);
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
.tr-btn:disabled[b-oz6hff0961] { opacity: 0.45; cursor: default; }

.tr-foot[b-oz6hff0961] { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 11px; color: var(--text-muted, #64748b); line-height: 1.5; padding: 0 2px; }
.tr-updated[b-oz6hff0961] { white-space: nowrap; cursor: help; }

.tr-skel[b-oz6hff0961] { display: flex; flex-direction: column; gap: 10px; }
.tr-skel-panel[b-oz6hff0961] { height: 112px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-card, #141a24); animation: tr-pulse-b-oz6hff0961 1.2s ease-in-out infinite; }
.tr-skel-panel:nth-child(2)[b-oz6hff0961] { animation-delay: 150ms; }
.tr-skel-panel:nth-child(3)[b-oz6hff0961] { animation-delay: 300ms; }
@keyframes tr-pulse-b-oz6hff0961 { 0%, 100% { opacity: 0.55; } 50% { opacity: 1; } }

.tr-error[b-oz6hff0961] { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 16px; border-radius: var(--r-lg, 12px); border: 1px solid var(--border, rgba(255, 255, 255, 0.06)); background: var(--bg-card, #141a24); }
.tr-error p[b-oz6hff0961] { margin: 0; color: var(--text-secondary, #94a3b8); }

/* ── Phone (≤ 900px): rows become cards, headers become labels ──────────── */
@media (max-width: 900px) {
    .tr-root[b-oz6hff0961] { padding: 12px 16px 28px; gap: 12px; }
    .tr-tiles[b-oz6hff0961] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tr-count[b-oz6hff0961] { margin-left: 0; flex: 1 0 100%; }
    .tr-row.head[b-oz6hff0961] { display: none; }
    .tr-row[b-oz6hff0961] {
        grid-template-columns: 1fr 1fr;
        grid-template-areas:
            "date out"
            "name name"
            "type conf"
            "fc fc"
            "eps first"
            "s5 s20"
            "chev chev"
            "detail detail";
        gap: 8px 12px;
        padding: 10px 12px 10px 14px;
    }
    .tr-row.nopick[b-oz6hff0961] { grid-template-areas: "date date" "nopick nopick"; }
    .tr-row > [data-k][b-oz6hff0961]::before { content: attr(data-k); display: block; font-size: 9px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-muted, #64748b); margin-bottom: 2px; }
    .c-first[b-oz6hff0961], .c-s5[b-oz6hff0961], .c-s20[b-oz6hff0961] { display: flex; flex-direction: column; }
    .c-first.up > span:first-child[b-oz6hff0961]::before, .c-first.down > span:first-child[b-oz6hff0961]::before { content: ""; }
    .c-s5.up[b-oz6hff0961]::before, .c-s20.up[b-oz6hff0961]::before, .c-s5.down[b-oz6hff0961]::before, .c-s20.down[b-oz6hff0961]::before { content: attr(data-k); }
    .c-out[b-oz6hff0961] { justify-self: end; }
    .c-chev[b-oz6hff0961] { width: 100%; height: 30px; }
    .c-nopick .reason[b-oz6hff0961] { white-space: normal; }
    .tr-detail[b-oz6hff0961] { grid-template-columns: 1fr; grid-template-areas: "text" "why" "meta"; }
}

@media (prefers-reduced-motion: reduce) {
    .tr-panel[b-oz6hff0961], .tr-detail[b-oz6hff0961], .tr-skel-panel[b-oz6hff0961] { animation: none; }
}
/* /Components/Pages/Backtest.razor.rz.scp.css */
/* Backtest Page - Dark Mode Styling with CSS Variables */
.backtest-container[b-qx3ux1pvqh] {
    padding: var(--spacing-lg) var(--spacing-xl);
    max-width: 1600px;
    margin: 0 auto;
}

/* Header */
.backtest-header[b-qx3ux1pvqh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--spacing-lg);
    padding-bottom: var(--spacing-md);
    border-bottom: 1px solid var(--border);
}

.backtest-title[b-qx3ux1pvqh] {
    font-size: var(--text-3xl);
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
}

.backtest-subtitle[b-qx3ux1pvqh] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

/* Input Section */
.input-section[b-qx3ux1pvqh] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-lg);
    margin-bottom: var(--spacing-lg);
}

.input-card[b-qx3ux1pvqh] {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
}

.card-title[b-qx3ux1pvqh] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: var(--spacing-md);
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
}

/* Form Controls */
.form-row[b-qx3ux1pvqh] {
    display: flex;
    gap: var(--spacing-md);
    margin-bottom: var(--spacing-md);
}

.form-group[b-qx3ux1pvqh] {
    flex: 1;
}

.form-label[b-qx3ux1pvqh] {
    font-size: var(--text-xs);
    font-weight: 500;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: var(--spacing-xs);
    display: block;
}

.form-control[b-qx3ux1pvqh],
.form-select[b-qx3ux1pvqh] {
    background: var(--bg-surface);
    border: 1px solid var(--border);
    color: var(--text-primary);
    border-radius: var(--radius-md);
    padding: var(--spacing-sm) var(--spacing-md);
    font-size: 0.875rem;
    width: 100%;
    transition: border-color var(--transition-fast);
}

.form-control:focus[b-qx3ux1pvqh],
.form-select:focus[b-qx3ux1pvqh] {
    border-color: var(--info);
    outline: none;
    box-shadow: 0 0 0 2px var(--info-bg);
}

.form-control[b-qx3ux1pvqh]::placeholder {
    color: var(--text-muted);
}

/* Buttons */
.btn-primary[b-qx3ux1pvqh] {
    background: var(--info);
    border: none;
    color: white;
    padding: var(--spacing-sm) var(--spacing-lg);
    border-radius: var(--radius-md);
    font-weight: 500;
    cursor: pointer;
    transition: background-color var(--transition-fast);
}

.btn-primary:hover:not(:disabled)[b-qx3ux1pvqh] {
    background: #2563eb;
}

.btn-primary:disabled[b-qx3ux1pvqh] {
    background: #1e40af;
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-success[b-qx3ux1pvqh] {
    background: var(--success);
    border: none;
    color: white;
    padding: var(--spacing-sm) var(--spacing-lg);
    border-radius: var(--radius-md);
    font-weight: 500;
    cursor: pointer;
    transition: background-color var(--transition-fast);
}

.btn-success:hover:not(:disabled)[b-qx3ux1pvqh] {
    background: var(--primary-hover);
}

.btn-success:disabled[b-qx3ux1pvqh] {
    background: #065f46;
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-outline[b-qx3ux1pvqh] {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--text-primary);
    padding: 0.4rem var(--spacing-md);
    border-radius: var(--radius-md);
    font-weight: 500;
    cursor: pointer;
    transition: all var(--transition-fast);
}

.btn-outline:hover[b-qx3ux1pvqh] {
    background: var(--bg-elevated);
}

/* Stats Grid */
.stats-grid[b-qx3ux1pvqh] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: var(--spacing-md);
    margin-bottom: var(--spacing-lg);
}

.stat-card[b-qx3ux1pvqh] {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: var(--spacing-md);
    text-align: center;
    transition: box-shadow var(--transition-normal);
}

.stat-card:hover[b-qx3ux1pvqh] {
    box-shadow: var(--shadow-sm);
}

.stat-card.highlight-positive[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #14532d 0%, var(--bg-card) 100%);
    border-color: var(--success-border);
}

.stat-card.highlight-negative[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #7f1d1d 0%, var(--bg-card) 100%);
    border-color: var(--error-border);
}

.stat-card.highlight-warning[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #78350f 0%, var(--bg-card) 100%);
    border-color: var(--warning-border);
}

.stat-label[b-qx3ux1pvqh] {
    font-size: var(--text-xs);
    font-weight: 500;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: var(--spacing-xs);
}

.stat-value[b-qx3ux1pvqh] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-value.sm[b-qx3ux1pvqh] {
    font-size: var(--text-lg);
}

.stat-sub[b-qx3ux1pvqh] {
    font-size: var(--text-xs);
    color: var(--text-secondary);
    margin-top: 0.15rem;
}

/* Results Section */
.results-section[b-qx3ux1pvqh] {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    margin-bottom: var(--spacing-lg);
}

.results-header[b-qx3ux1pvqh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-md) var(--spacing-lg);
    border-bottom: 1px solid var(--border);
}

.results-title[b-qx3ux1pvqh] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
}

.results-subtitle[b-qx3ux1pvqh] {
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

.results-body[b-qx3ux1pvqh] {
    padding: var(--spacing-lg);
}

/* Performer Cards */

.performer-card[b-qx3ux1pvqh] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    font-size: var(--text-sm);
}

.performer-card .label[b-qx3ux1pvqh] {
    color: var(--text-secondary);
}

.performer-card .value[b-qx3ux1pvqh] {
    font-weight: 600;
}

/* Data Table */
.data-table[b-qx3ux1pvqh] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-sm);
}

.data-table thead[b-qx3ux1pvqh] {
    background: var(--bg-surface);
}

.data-table thead th[b-qx3ux1pvqh] {
    padding: var(--spacing-sm) var(--spacing-md);
    text-align: left;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    font-size: var(--text-xs);
    letter-spacing: 0.3px;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}

.data-table tbody tr[b-qx3ux1pvqh] {
    transition: background-color var(--transition-fast);
}

.data-table tbody tr:hover[b-qx3ux1pvqh] {
    background: var(--bg-elevated);
}

.data-table tbody td[b-qx3ux1pvqh] {
    padding: var(--spacing-sm) var(--spacing-md);
    border-bottom: 1px solid var(--border);
    color: var(--text-primary);
}

.data-table tbody td.fw-bold[b-qx3ux1pvqh] {
    font-weight: 600;
}

/* Badge Styles */
.badge[b-qx3ux1pvqh] {
    display: inline-block;
    padding: 0.15rem var(--spacing-sm);
    border-radius: var(--radius-sm);
    font-size: var(--text-xs);
    font-weight: 600;
}

.badge-success[b-qx3ux1pvqh] {
    background: var(--success-bg);
    color: var(--success-light);
}

.badge-danger[b-qx3ux1pvqh] {
    background: var(--error-bg);
    color: var(--error-light);
}

.badge-info[b-qx3ux1pvqh] {
    background: var(--info-bg);
    color: var(--info-light);
}

.badge-secondary[b-qx3ux1pvqh] {
    background: var(--bg-elevated);
    color: var(--text-secondary);
}

/* Chart Container */
.chart-container[b-qx3ux1pvqh] {
    background: var(--bg-surface);
    border-radius: var(--radius-lg);
    padding: var(--spacing-lg);
    overflow-x: auto;
}

.chart-svg[b-qx3ux1pvqh] {
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
}

.chart-legend[b-qx3ux1pvqh] {
    display: flex;
    gap: var(--spacing-lg);
    margin-top: var(--spacing-md);
    flex-wrap: wrap;
}

.legend-item[b-qx3ux1pvqh] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

/* Options Panel */
.options-panel[b-qx3ux1pvqh] {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
}

/* Color Classes */
.text-success[b-qx3ux1pvqh] { color: var(--success-light) !important; }
.text-danger[b-qx3ux1pvqh] { color: var(--error-light) !important; }
.text-warning[b-qx3ux1pvqh] { color: var(--warning-bright) !important; }
.text-info[b-qx3ux1pvqh] { color: var(--info-light) !important; }
.text-muted[b-qx3ux1pvqh] { color: var(--text-muted) !important; }
.text-white[b-qx3ux1pvqh] { color: var(--text-primary) !important; }

.fw-bold[b-qx3ux1pvqh] { font-weight: 600; }

/* Alert Styles */
.alert[b-qx3ux1pvqh] {
    padding: var(--spacing-md) var(--spacing-lg);
    border-radius: var(--radius-lg);
    font-size: 0.875rem;
}

.alert-danger[b-qx3ux1pvqh] {
    background: var(--error-bg);
    border: 1px solid var(--error-border);
    color: var(--error-light);
}

.alert-info[b-qx3ux1pvqh] {
    background: var(--info-bg);
    border: 1px solid var(--info-border);
    color: var(--info-light);
}

/* Progress Text */
.progress-text[b-qx3ux1pvqh] {
    font-size: var(--text-sm);
    color: var(--text-secondary);
    margin-top: 0.35rem;
}

/* Spinner */
.spinner-sm[b-qx3ux1pvqh] {
    width: 1rem;
    height: 1rem;
    border: 2px solid transparent;
    border-top-color: currentColor;
    border-radius: 50%;
    animation: spin 0.6s linear infinite;
}

/* Use animation from app.css */

/* Trade Row Colors */
.trade-win[b-qx3ux1pvqh] {
    background: var(--success-bg) !important;
}

.trade-loss[b-qx3ux1pvqh] {
    background: var(--error-bg) !important;
}

/* Price Point Hover */
.price-point:hover[b-qx3ux1pvqh] {
    opacity: 1 !important;
    cursor: crosshair;
}

polygon:hover[b-qx3ux1pvqh] {
    opacity: 1 !important;
    cursor: pointer;
}

/* Responsive */
@media (max-width: 1200px) {
    .stats-grid[b-qx3ux1pvqh] {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .input-section[b-qx3ux1pvqh] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .backtest-container[b-qx3ux1pvqh] {
        padding: var(--spacing-md) var(--spacing-lg);
    }
    
    .stats-grid[b-qx3ux1pvqh] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .form-row[b-qx3ux1pvqh] {
        flex-direction: column;
    }
    
    .data-table[b-qx3ux1pvqh] {
        font-size: var(--text-sm);
    }
    
    .data-table thead th[b-qx3ux1pvqh],
    .data-table tbody td[b-qx3ux1pvqh] {
        padding: 0.4rem var(--spacing-sm);
    }
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* V1/V2 COMPARISON THEME-AWARE STYLES */
/* ═══════════════════════════════════════════════════════════════════════ */

/* Chart Legend Items - Theme-aware */
.legend-buy-entry[b-qx3ux1pvqh] {
    color: var(--success-light);
}

.legend-short-entry[b-qx3ux1pvqh] {
    color: var(--error-light);
}

.legend-add-long[b-qx3ux1pvqh] {
    color: var(--success);
}

.legend-add-short[b-qx3ux1pvqh] {
    color: var(--error);
}

.legend-price[b-qx3ux1pvqh] {
    color: #4bc0c0;
}

.legend-hint[b-qx3ux1pvqh] {
    font-size: 0.7rem;
    margin-left: auto;
}

/* Symbol link */
.symbol-link[b-qx3ux1pvqh] {
    color: var(--info-light);
    text-decoration: none;
}

.symbol-link:hover[b-qx3ux1pvqh] {
    text-decoration: underline;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* LIGHT THEME OVERRIDES */
/* ═══════════════════════════════════════════════════════════════════════ */

:global([data-theme="light"]) .backtest-container[b-qx3ux1pvqh] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .stat-card.highlight-positive[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #dcfce7 0%, var(--bg-card) 100%);
}

:global([data-theme="light"]) .stat-card.highlight-negative[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #fee2e2 0%, var(--bg-card) 100%);
}

:global([data-theme="light"]) .stat-card.highlight-warning[b-qx3ux1pvqh] {
    background: linear-gradient(135deg, #fef3c7 0%, var(--bg-card) 100%);
}

:global([data-theme="light"]) .trade-win[b-qx3ux1pvqh] {
    background: rgba(34, 197, 94, 0.1) !important;
}

:global([data-theme="light"]) .trade-loss[b-qx3ux1pvqh] {
    background: rgba(239, 68, 68, 0.1) !important;
}
/* /Components/Pages/ChartLightweight.razor.rz.scp.css */
/* Chart Lightweight Page Styles */
/* Uses existing chartiq.css styles where possible + LWC-specific overrides */

/* ===== VIEWPORT CONTAINER ===== */
/* Note: .terminal-content in MainLayout already handles margin-top for header */
/* We use position:fixed to escape content-frame padding and control exact sizing */
.chart-lw-viewport[b-7ly5ecf7nx] {
    position: fixed;
    top: var(--header-height, 52px);
    /* Clears the admin side rail (app.css sets --admin-rail-width on the body for admins; 0 for everyone else) */
    left: var(--admin-rail-width, 0px);
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: row;
    width: 100%;
    overflow: hidden;
    background: radial-gradient(1100px 500px at 75% -5%, rgba(0, 205, 237, 0.045), transparent 60%), var(--chart-bg, #0a0e17);
    box-sizing: border-box;
    z-index: 1;
}

/* ===== MAIN CHART AREA ===== */
.chart-main-area[b-7ly5ecf7nx] {
    flex: 3;
    display: flex;
    flex-direction: column;
    min-width: 0;
    /* Clip so the toolbar can never bleed horizontally into the sidebar on narrow widths. */
    overflow: hidden;
    border-right: 1px solid rgba(0, 205, 237, 0.15);
}

/* ===== COMPACT TOOLBAR ===== */
.chart-toolbar.compact[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    /* Wrap to a second row when the controls don't fit instead of overflowing into the
       sidebar. (Horizontal scroll would clip the indicator dropdowns, so wrap is correct.)
       On wide screens everything fits on one row, so this is a no-op there. */
    flex-wrap: wrap;
    gap: 6px;
    row-gap: 6px;
    padding: 6px 12px;
    background: linear-gradient(180deg, rgba(18, 22, 32, 0.98) 0%, rgba(13, 17, 28, 0.98) 100%);
    border-bottom: 1px solid rgba(0, 205, 237, 0.12);
    min-height: 38px;
}

/* Keep toolbar groups at their natural size so they wrap as whole units rather than
   squishing or spilling over the edge. */
.chart-toolbar.compact > *[b-7ly5ecf7nx] {
    flex-shrink: 0;
}

.toolbar-section[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 3px;
    position: relative;
}

.tb-sep[b-7ly5ecf7nx] {
    width: 1px;
    height: 18px;
    background: rgba(100, 120, 150, 0.25);
    margin: 0 6px;
}

/* Symbol Input - Compact */
.symbol-section[b-7ly5ecf7nx] { position: relative; }

.symbol-input-wrap[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    background: rgba(30, 40, 55, 0.6);
    border: 1px solid rgba(100, 120, 150, 0.25);
    border-radius: var(--r-sm);
    padding: 0 8px;
    transition: background var(--dur-fast), border-color var(--dur-fast);
}

.symbol-input-wrap:focus-within[b-7ly5ecf7nx] {
    border-color: rgba(0, 205, 237, 0.5);
    background: rgba(30, 40, 55, 0.8);
}

.symbol-input-wrap .search-icon[b-7ly5ecf7nx] {
    color: rgba(136, 146, 176, 0.5);
    flex-shrink: 0;
}

.symbol-input-wrap .symbol-input[b-7ly5ecf7nx] {
    width: 70px;
    padding: 5px 6px;
    background: transparent;
    border: none;
    color: var(--accent-primary, #00cded);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.symbol-input-wrap .symbol-input:focus[b-7ly5ecf7nx] { outline: none; }
.symbol-input-wrap .symbol-input[b-7ly5ecf7nx]::placeholder { color: rgba(136, 146, 176, 0.4); text-transform: none; }

.symbol-dropdown[b-7ly5ecf7nx] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    min-width: 120px;
    background: rgba(18, 22, 32, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    z-index: var(--z-dropdown);
    overflow: hidden;
    animation: ind-drop-in-b-7ly5ecf7nx 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

.symbol-option[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
    cursor: pointer;
    transition: background var(--dur-fast);
}

.symbol-option:hover[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.15); }

.symbol-option .symbol-ticker[b-7ly5ecf7nx] {
    font-weight: 700;
    color: var(--accent-color, #00cded);
    min-width: 55px;
}

.symbol-option .symbol-name[b-7ly5ecf7nx] {
    flex: 1;
    font-weight: 400;
    color: var(--text-secondary, #8892b0);
    font-size: 11px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.symbol-option .crypto-badge[b-7ly5ecf7nx] {
    font-size: 10px;
    color: #f7931a;
    font-weight: bold;
    padding: 2px 4px;
    background: rgba(247, 147, 26, 0.15);
    border-radius: var(--r-sm);
}

.symbol-option.crypto .symbol-ticker[b-7ly5ecf7nx] {
    color: #f7931a;
}

/* Grid Button - Compact Icon Only */
.tool-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 8px;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: var(--text-secondary, #8892b0);
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);
}

.tool-btn:hover[b-7ly5ecf7nx] { background: rgba(50, 65, 85, 0.6); }
.tool-btn.active[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.15); border-color: rgba(0, 205, 237, 0.4); }

.grid-icon-mini[b-7ly5ecf7nx] {
    display: grid;
    width: 14px;
    height: 12px;
    gap: 1px;
}

.grid-icon-mini .gc[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.5);
    border-radius: 1px;
}

.tool-btn.active .grid-icon-mini .gc[b-7ly5ecf7nx] { background: var(--accent-primary, #00cded); }

.grid-dropdown[b-7ly5ecf7nx] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    background: rgba(18, 22, 32, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    z-index: var(--z-dropdown);
    padding: 4px;
    display: none;
    animation: ind-drop-in-b-7ly5ecf7nx 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

.grid-dropdown.show[b-7ly5ecf7nx] { display: flex; gap: 4px; }

.grid-option[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid transparent;
    border-radius: var(--r-sm);
    cursor: pointer;
    transition: background var(--dur-fast), border-color var(--dur-fast);
}

.grid-option:hover[b-7ly5ecf7nx] { background: rgba(50, 65, 85, 0.6); }
.grid-option.selected[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.2); border-color: rgba(0, 205, 237, 0.5); }

/* ===== Drawing Tools Section ===== */
.draw-tools[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.draw-label[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 600;
    color: rgba(136, 146, 176, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-right: 4px;
}

.draw-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 26px;
    padding: 0;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.7);
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);
}

.draw-btn:hover[b-7ly5ecf7nx] {
    background: rgba(50, 65, 85, 0.6);
    color: var(--text-primary, #e6f1ff);
}

.draw-btn.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.5);
    color: var(--accent-primary, #00cded);
}

.draw-btn.danger[b-7ly5ecf7nx] {
    color: rgba(239, 68, 68, 0.7);
}

.draw-btn.danger:hover[b-7ly5ecf7nx] {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.4);
    color: #ef4444;
}

.draw-btn svg[b-7ly5ecf7nx] {
    width: 16px;
    height: 16px;
}

.annotation-count[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 600;
    color: var(--accent-primary, #00cded);
    background: rgba(0, 205, 237, 0.15);
    padding: 2px 6px;
    border-radius: var(--r-lg);
    margin-left: 2px;
}

/* Play Creator Button */
.play-creator-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15), rgba(139, 92, 246, 0.1));
    border: 1px solid rgba(99, 102, 241, 0.3);
    border-radius: var(--r-sm);
    color: #a5b4fc;
    cursor: pointer;
    transition: background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-fast) ease;
}

.play-creator-btn:hover[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.25), rgba(139, 92, 246, 0.15));
    border-color: rgba(99, 102, 241, 0.5);
    color: #c4b5fd;
    transform: translateY(-1px);
}

.play-creator-btn .play-icon[b-7ly5ecf7nx] {
    font-size: 12px;
}

.play-creator-btn .play-label[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.grid-option-icon[b-7ly5ecf7nx] {
    display: grid;
    width: 16px;
    height: 14px;
    gap: 1px;
}

.grid-option-icon .gc[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.4);
    border-radius: 1px;
}

.grid-option.selected .grid-option-icon .gc[b-7ly5ecf7nx] { background: var(--accent-primary, #00cded); }

/* Timeframe Buttons - Compact */
.tf-section[b-7ly5ecf7nx] { gap: 2px; }

.tf-btn[b-7ly5ecf7nx] {
    padding: 4px 8px;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.7);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast), box-shadow var(--dur-fast), transform var(--dur-fast);
}

.tf-btn:hover[b-7ly5ecf7nx] { color: var(--text-primary, #e6f1ff); background: rgba(50, 65, 85, 0.4); }

.tf-btn:active[b-7ly5ecf7nx] { transform: scale(0.93); }

.tf-btn.active[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.35);
    box-shadow: 0 0 10px rgba(0, 205, 237, 0.2);
}

/* Indicator Buttons - Compact Pill Style */
.ind-group[b-7ly5ecf7nx] { gap: 3px; }

.ind-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 3px;
    padding: 4px 8px;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.7);
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);
}

.ind-btn:hover[b-7ly5ecf7nx] { background: rgba(50, 65, 85, 0.5); color: var(--text-primary, #e6f1ff); }

.ind-btn.on[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.4);
    color: var(--accent-primary, #00cded);
}

.ind-btn.open[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.2); border-color: rgba(0, 205, 237, 0.5); }

.ind-btn.on .ind-count[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.3); }

/* Indicator Dropdown */
.dropdown-wrap[b-7ly5ecf7nx] { position: relative; }

.ind-dropdown[b-7ly5ecf7nx] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    min-width: 100px;
    background: rgba(18, 22, 32, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    z-index: var(--z-dropdown);
    padding: 4px 0;
}

.ind-opt[b-7ly5ecf7nx] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 5px 10px;
    cursor: pointer;
    /* --oc is the indicator's own colour, set inline per row; falls back to the teal accent. */
    --oc: var(--accent-primary, #00cded);
    transition: background var(--dur-fast) ease;
}

.ind-opt:hover[b-7ly5ecf7nx] { background: rgba(255, 255, 255, 0.04); }

/* Left accent bar that lights up in the indicator's colour when the row is active. */
.ind-opt[b-7ly5ecf7nx]::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%) scaleY(0);
    width: 3px;
    height: 60%;
    border-radius: 0 3px 3px 0;
    background: var(--oc);
    box-shadow: 0 0 8px var(--oc);
    transition: transform var(--dur-fast) ease;
}

.ind-opt:has(input:checked)[b-7ly5ecf7nx]::before { transform: translateY(-50%) scaleY(1); }

.ind-opt:has(input:checked)[b-7ly5ecf7nx] { background: rgba(255, 255, 255, 0.03); }

/* Custom checkbox: a rounded swatch that fills with the indicator's colour when on. */
.ind-opt input[type="checkbox"][b-7ly5ecf7nx] {
    appearance: none;
    -webkit-appearance: none;
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    margin: 0;
    border-radius: var(--r-sm);
    border: 1.5px solid rgba(120, 135, 160, 0.45);
    background: rgba(255, 255, 255, 0.02);
    cursor: pointer;
    position: relative;
    transition: background var(--dur-fast) ease, border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;
}

.ind-opt:hover input[type="checkbox"][b-7ly5ecf7nx] { border-color: var(--oc); }

.ind-opt input[type="checkbox"]:checked[b-7ly5ecf7nx] {
    background: var(--oc);
    border-color: var(--oc);
    box-shadow: 0 0 9px -1px var(--oc);
}

/* Checkmark drawn with a rotated box-border. */
.ind-opt input[type="checkbox"]:checked[b-7ly5ecf7nx]::after {
    content: '';
    position: absolute;
    left: 4.5px;
    top: 1.5px;
    width: 4px;
    height: 8px;
    border: solid #0a0e17;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.ind-opt input[type="checkbox"]:focus-visible[b-7ly5ecf7nx] {
    outline: 2px solid var(--oc);
    outline-offset: 1px;
}

.ind-opt span[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.c-vol[b-7ly5ecf7nx] { color: #64b5f6; }
.c-volprofile[b-7ly5ecf7nx] { color: #ffd54f; }
.c-earnings[b-7ly5ecf7nx] { color: #22c55e; }
.c-dividends[b-7ly5ecf7nx] { color: #a855f7; }
.c-news[b-7ly5ecf7nx] { color: #06b6d4; }
.c-bb[b-7ly5ecf7nx] { color: #ff6b6b; }
.c-sr-zones[b-7ly5ecf7nx] { color: #feca57; }
.c-vwap[b-7ly5ecf7nx] { color: #54a0ff; }
.c-tickiq[b-7ly5ecf7nx] { color: #10b981; font-weight: 500; }
/* Catalog studies (colours = ChartOverlayCatalog) */
.c-supertrend[b-7ly5ecf7nx] { color: #26a69a; }
.c-psar[b-7ly5ecf7nx] { color: #b0bec5; }
.c-stoch[b-7ly5ecf7nx] { color: #ff6d00; }
.c-adx[b-7ly5ecf7nx] { color: #e0e0e0; }
.c-atr[b-7ly5ecf7nx] { color: #ffa726; }

/* ===== Premium Pill Buttons (MA / OVR / OSC / VOL / EVT) ===== */
.ind-btn.pill[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px 5px 11px;
    border-radius: var(--r-sm);
    color: rgba(165, 178, 205, 0.85);
    /* Glassy panel: faint top-down gradient + hairline border + inner highlight. */
    background:
        linear-gradient(180deg, rgba(46, 58, 78, 0.55), rgba(24, 31, 45, 0.65));
    border: 1px solid rgba(120, 138, 168, 0.22);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.06),
        0 1px 2px rgba(0, 0, 0, 0.25);
    transition:
        background var(--dur-med) ease,
        border-color var(--dur-med) ease,
        box-shadow var(--dur-med) ease,
        color var(--dur-med) ease,
        transform var(--dur-fast) cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Dropdown caret - pure CSS chevron that rotates open/closed. */
.ind-btn.pill[b-7ly5ecf7nx]::after {
    content: '';
    width: 5px;
    height: 5px;
    margin-left: 1px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    opacity: 0.55;
    transform: translateY(-1px) rotate(45deg);
    transition: transform var(--dur-med) cubic-bezier(0.22, 1, 0.36, 1), opacity var(--dur-fast) ease;
}

.ind-btn.pill:hover[b-7ly5ecf7nx] {
    color: #e9f3ff;
    background: linear-gradient(180deg, rgba(58, 72, 96, 0.7), rgba(32, 42, 58, 0.8));
    border-color: rgba(0, 205, 237, 0.4);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 4px 12px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(0, 205, 237, 0.08);
    transform: translateY(-1px);
}

.ind-btn.pill:active[b-7ly5ecf7nx] { transform: translateY(0) scale(0.96); }

.ind-btn.pill:hover[b-7ly5ecf7nx]::after { opacity: 0.8; }

/* Active: indicators are on. Brand-tinted glass, glowing edge, brand label. */
.ind-btn.pill.on[b-7ly5ecf7nx] {
    color: #97f1ff;
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    border-color: rgba(0, 205, 237, 0.55);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.18),
        0 0 14px rgba(0, 205, 237, 0.22);
}

/* Open: dropdown is showing. Stronger ring + flipped caret. */
.ind-btn.pill.open[b-7ly5ecf7nx] {
    border-color: rgba(0, 205, 237, 0.7);
    box-shadow:
        inset 0 1px 0 rgba(183, 245, 255, 0.2),
        0 0 0 2px rgba(0, 205, 237, 0.18),
        0 0 18px rgba(0, 205, 237, 0.3);
}

.ind-btn.pill.open[b-7ly5ecf7nx]::after {
    opacity: 0.95;
    transform: translateY(1px) rotate(225deg);
}

.pill-label[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
}

/* Count: a solid, glowing brand chip (rounded-square, never a circle). */
.pill-count[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    background: rgba(120, 138, 168, 0.22);
    border-radius: var(--r-sm);
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    color: rgba(220, 230, 245, 0.9);
    font-variant-numeric: tabular-nums;
    transition: background var(--dur-med) ease, color var(--dur-med) ease, box-shadow var(--dur-med) ease;
}

.ind-btn.pill.on .pill-count[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, #12dfff, #00bdda);
    color: #06170f;
    box-shadow: 0 0 8px rgba(18, 223, 255, 0.45);
}

@media (prefers-reduced-motion: reduce) {
    .ind-btn.pill[b-7ly5ecf7nx],
    .ind-btn.pill[b-7ly5ecf7nx]::after { transition: none; }
    .ind-btn.pill:hover[b-7ly5ecf7nx],
    .ind-btn.pill:active[b-7ly5ecf7nx] { transform: none; }
}

/* Modern Dropdown Styles */
.ind-dropdown.modern[b-7ly5ecf7nx] {
    min-width: 178px;
    background: linear-gradient(180deg, rgba(20, 26, 40, 0.99), rgba(12, 16, 26, 0.99));
    border: 1px solid rgba(120, 135, 160, 0.18);
    border-radius: var(--r-lg);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
    padding: 5px;
    backdrop-filter: blur(10px);
    transform-origin: top left;
    animation: ind-drop-in-b-7ly5ecf7nx 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes ind-drop-in-b-7ly5ecf7nx {
    from { opacity: 0; transform: translateY(-6px) scale(0.97); }
    to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .ind-dropdown.modern[b-7ly5ecf7nx] { animation: none; }
}

.ind-dropdown.modern .ind-opt[b-7ly5ecf7nx] {
    padding: 7px 10px;
    border-radius: var(--r-md);
    justify-content: flex-start;
}

/* Neutral hover - the colour cue comes from the per-row accent bar + checkbox. */
.ind-dropdown.modern .ind-opt:hover[b-7ly5ecf7nx] {
    background: rgba(255, 255, 255, 0.05);
}

.dropdown-divider[b-7ly5ecf7nx] {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(100, 120, 150, 0.25), transparent);
    margin: 5px 8px;
}

.opt-badge[b-7ly5ecf7nx] {
    margin-left: auto;
    padding: 2px 6px;
    border-radius: var(--r-sm);
    font-size: 8px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    background: rgba(120, 135, 160, 0.14);
    color: rgba(150, 160, 185, 0.85);
}

.opt-badge.fast[b-7ly5ecf7nx] { background: rgba(0, 205, 237, 0.18); color: var(--accent-primary, #00cded); }
.opt-badge.intra[b-7ly5ecf7nx] { background: rgba(54, 160, 255, 0.18); color: #54a0ff; }

/* The gear at the end of an editable row (MA / RSI / MACD / BB): opens IndicatorSettingsPopover. */
.ind-opt .opt-gear[b-7ly5ecf7nx] {
    margin-left: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    border: none;
    border-radius: var(--r-sm);
    background: transparent;
    color: rgba(150, 160, 185, 0.7);
    cursor: pointer;
    flex-shrink: 0;
}

.ind-opt .opt-gear:hover[b-7ly5ecf7nx] { color: var(--accent-primary, #00cded); background: rgba(255, 255, 255, 0.06); }
.ind-opt .opt-badge + .opt-gear[b-7ly5ecf7nx] { margin-left: 4px; }

/* "+ Add SMA" / "Reset to defaults" rows in the MA dropdown */
.ind-add[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    width: calc(100% - 10px);
    margin: 2px 5px;
    padding: 5px 10px;
    border: 1px dashed rgba(120, 135, 160, 0.3);
    border-radius: var(--r-md);
    background: transparent;
    color: rgba(165, 178, 205, 0.9);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.2px;
    cursor: pointer;
    text-align: left;
}

.ind-add:hover[b-7ly5ecf7nx] { border-color: var(--accent-primary, #00cded); color: var(--accent-primary, #00cded); }
.ind-add.locked[b-7ly5ecf7nx] { color: rgba(150, 160, 185, 0.7); }
.ind-add.reset[b-7ly5ecf7nx] { border-style: solid; border-color: transparent; color: rgba(150, 160, 185, 0.85); }
.ind-add.reset:hover[b-7ly5ecf7nx] { color: #fca5a5; border-color: rgba(239, 68, 68, 0.3); }
.ind-add .opt-badge[b-7ly5ecf7nx] { margin-left: auto; }

/* An overlay that doesn't apply on this interval (VWAP on 4H and daily): shown, not clickable. */
.ind-opt.disabled[b-7ly5ecf7nx] { opacity: 0.45; cursor: not-allowed; }
.ind-opt.disabled:hover[b-7ly5ecf7nx] { background: transparent; }
.ind-opt.disabled input[type="checkbox"][b-7ly5ecf7nx] { cursor: not-allowed; }
.opt-badge.earn[b-7ly5ecf7nx] { background: transparent; font-size: 11px; }
.opt-badge.div[b-7ly5ecf7nx] { background: transparent; font-size: 11px; }
.opt-badge.news[b-7ly5ecf7nx] { background: transparent; font-size: 11px; }
.opt-badge.signal[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.3), rgba(239, 68, 68, 0.3));
    color: #10b981;
    font-size: 10px;
    text-shadow: 0 0 4px currentColor;
}

/* Glowing separator */
.tb-sep.glow[b-7ly5ecf7nx] {
    background: linear-gradient(180deg, transparent, rgba(0, 205, 237, 0.4), transparent);
    box-shadow: 0 0 8px rgba(0, 205, 237, 0.3);
}

/* Pattern Buttons - Compact Icon Style */
.pattern-group[b-7ly5ecf7nx] {
    display: flex;
    gap: 4px;
}

/* Icon-only pattern buttons */
.pattern-icon-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 32px;
    height: 28px;
    padding: 4px;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.25);
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.6);
    cursor: pointer;
    transition: background var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease, transform var(--dur-fast) ease;
}

.pattern-icon-btn:hover[b-7ly5ecf7nx] {
    background: rgba(50, 65, 85, 0.6);
    transform: translateY(-1px);
}

/* Bull pattern default state - always green */
.pattern-icon-btn.bull[b-7ly5ecf7nx] {
    color: rgba(0, 200, 83, 0.6);
}

.pattern-icon-btn.bull:hover[b-7ly5ecf7nx] {
    color: rgba(0, 200, 83, 0.9);
}

/* Bear pattern default state - always red */
.pattern-icon-btn.bear[b-7ly5ecf7nx] {
    color: rgba(255, 82, 82, 0.6);
}

.pattern-icon-btn.bear:hover[b-7ly5ecf7nx] {
    color: rgba(255, 82, 82, 0.9);
}

.pattern-icon-btn .pattern-icon[b-7ly5ecf7nx] {
    width: 18px;
    height: 18px;
    stroke-width: 2;
}

.pattern-icon-btn .pattern-count[b-7ly5ecf7nx] {
    position: absolute;
    top: -5px;
    right: -5px;
    min-width: 14px;
    height: 14px;
    padding: 0 3px;
    background: rgba(0, 205, 237, 0.9);
    border-radius: var(--r-md);
    font-size: 9px;
    font-weight: 700;
    color: #0a0e17;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Bull pattern active state */
.pattern-icon-btn.on.bull[b-7ly5ecf7nx] {
    background: rgba(0, 200, 83, 0.15);
    border-color: rgba(0, 200, 83, 0.5);
    color: #00c853;
    box-shadow: 0 0 8px rgba(0, 200, 83, 0.25);
}

.pattern-icon-btn.on.bull .pattern-count[b-7ly5ecf7nx] {
    background: #00c853;
}

/* Bear pattern active state */
.pattern-icon-btn.on.bear[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.15);
    border-color: rgba(255, 82, 82, 0.5);
    color: var(--color-bearish, #ff5252);
    box-shadow: 0 0 8px rgba(255, 82, 82, 0.25);
}

.pattern-icon-btn.on.bear .pattern-count[b-7ly5ecf7nx] {
    background: var(--color-bearish, #ff5252);
}

/* LW Badge - Modern Interactive Link */
.lw-badge[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    background: linear-gradient(135deg, rgba(0, 205, 237, 0.1), rgba(0, 175, 202, 0.05));
    border: 1px solid rgba(0, 205, 237, 0.25);
    border-radius: var(--r-sm);
    color: rgba(0, 205, 237, 0.8);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-decoration: none;
    cursor: pointer;
    transition: background var(--dur-med) ease, color var(--dur-med) ease, border-color var(--dur-med) ease, box-shadow var(--dur-med) ease, transform var(--dur-med) ease;
    position: relative;
}

.lw-badge:hover[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, rgba(0, 205, 237, 0.2), rgba(0, 175, 202, 0.15));
    border-color: rgba(0, 205, 237, 0.5);
    color: var(--accent-primary, #00cded);
    box-shadow: 0 0 16px rgba(0, 205, 237, 0.3), 0 2px 8px rgba(0, 0, 0, 0.3);
    transform: translateY(-1px);
}

.lw-badge[b-7ly5ecf7nx]::after {
    content: "TradingView™";
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateX(-50%) scale(0.8);
    padding: 3px 6px;
    background: rgba(18, 24, 38, 0.95);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    font-size: 9px;
    font-weight: 500;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--dur-med) ease, transform var(--dur-med) ease;
    z-index: var(--z-dropdown);
}

.lw-badge:hover[b-7ly5ecf7nx]::after {
    opacity: 1;
    transform: translateX(-50%) scale(1);
}

/* ===== CHART CONTAINER ===== */
.chart-container[b-7ly5ecf7nx] {
    flex: 1;
    min-height: 0;
    position: relative;
    background: var(--bg-primary, #0a0e17);
}

/* ===== SIDEBAR ===== */
.chart-sidebar[b-7ly5ecf7nx] {
    flex: 0 0 380px;
    display: flex;
    flex-direction: column;
    background: rgba(13, 17, 28, 0.95);
    overflow: hidden;
}

.sidebar-header[b-7ly5ecf7nx] {
    padding: 16px;
    border-bottom: 1px solid rgba(0, 205, 237, 0.15);
}

.sidebar-company-info[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sidebar-company-logo[b-7ly5ecf7nx] {
    width: 40px;
    height: 40px;
    border-radius: var(--r-md);
    background: rgba(0, 205, 237, 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.sidebar-company-logo img[b-7ly5ecf7nx] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sidebar-company-logo span[b-7ly5ecf7nx] {
    font-size: 18px;
    font-weight: 700;
    color: var(--accent-primary, #00cded);
}

.sidebar-company-symbol[b-7ly5ecf7nx] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-primary, #e6f1ff);
}

.sidebar-company-name[b-7ly5ecf7nx] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

/* Symbol row with inline price */

.sidebar-inline-price[b-7ly5ecf7nx] {
    font-size: 15px;
    font-weight: 700;
    color: var(--text-primary, #e6f1ff);
    font-family: 'JetBrains Mono', monospace;
}

/* The sidebar header when the symbol has no company profile: the symbol, then its live price */
.sidebar-company-symbol .sidebar-inline-price[b-7ly5ecf7nx] {
    margin-left: 8px;
}

/* ===== MODERN TECH METRICS ROW ===== */

.metric-label[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    opacity: 0.9;
}

/* Metric pill color variants */

/* ===== ACTION BANNER ===== */

/* Action banner color variants */

/* ===== COMPACT SIDEBAR STYLES ===== */
.sidebar-company-info.compact[b-7ly5ecf7nx] {
    gap: 10px;
}

.sidebar-company-info.compact .sidebar-company-logo[b-7ly5ecf7nx] {
    width: 36px;
    height: 36px;
}

.sidebar-company-info.compact .sidebar-company-symbol[b-7ly5ecf7nx] {
    font-size: 15px;
}

/* ===== ACTION BADGE (inline version) ===== */
.action-badge[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: var(--r-sm);
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-left: auto;
    white-space: nowrap;
}

.action-badge.bullish[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.15);
    border: 1px solid rgba(0, 230, 118, 0.3);
    color: var(--color-bullish, #00e676);
}

.action-badge.lean-bullish[b-7ly5ecf7nx] {
    background: rgba(74, 222, 128, 0.12);
    border: 1px solid rgba(74, 222, 128, 0.25);
    color: #4ade80;
}

.action-badge.bearish[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.15);
    border: 1px solid rgba(255, 82, 82, 0.3);
    color: var(--color-bearish, #ff5252);
}

.action-badge.lean-bearish[b-7ly5ecf7nx] {
    background: rgba(248, 113, 113, 0.12);
    border: 1px solid rgba(248, 113, 113, 0.25);
    color: #f87171;
}

.action-badge.neutral[b-7ly5ecf7nx] {
    background: rgba(100, 120, 150, 0.12);
    border: 1px solid rgba(136, 146, 176, 0.2);
    color: var(--text-secondary, #8892b0);
}

/* MTF Reversal Badge Styles */
.action-badge.mtf-bullish[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.2);
    border: 1px solid rgba(0, 230, 118, 0.4);
    color: var(--color-bullish, #00e676);
}

.action-badge.mtf-lean-bullish[b-7ly5ecf7nx] {
    background: rgba(74, 222, 128, 0.15);
    border: 1px solid rgba(74, 222, 128, 0.3);
    color: var(--color-lean-bullish, #4ade80);
}

.action-badge.mtf-lean-bearish[b-7ly5ecf7nx] {
    background: rgba(248, 113, 113, 0.15);
    border: 1px solid rgba(248, 113, 113, 0.3);
    color: var(--color-lean-bearish, #f87171);
}

.action-badge.mtf-bearish[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.2);
    border: 1px solid rgba(255, 82, 82, 0.4);
    color: var(--color-bearish, #ff5252);
}

.action-badge.mtf-conflicting[b-7ly5ecf7nx] {
    background: rgba(255, 179, 0, 0.15);
    border: 1px solid rgba(255, 179, 0, 0.3);
    color: var(--color-warning, #ffb300);
}

.action-badge.mtf-weak[b-7ly5ecf7nx] {
    background: rgba(158, 158, 158, 0.15);
    border: 1px solid rgba(158, 158, 158, 0.3);
    color: var(--text-muted, #9e9e9e);
}

.action-badge.mtf-neutral[b-7ly5ecf7nx] {
    background: rgba(100, 120, 150, 0.15);
    border: 1px solid rgba(136, 146, 176, 0.25);
    color: var(--text-secondary, #8892b0);
}

/* ===== COMPACT CHART HEADER (3-Row Layout) ===== */
.chart-header-compact[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 8px 12px;
    background: linear-gradient(135deg, rgba(18, 24, 38, 0.95) 0%, rgba(12, 16, 28, 0.98) 100%);
    border-bottom: 1px solid rgba(0, 205, 237, 0.12);
}

/* Row 1: Logo + Symbol + Price */
.header-row-main[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.header-logo-sm[b-7ly5ecf7nx] {
    width: 32px;
    height: 32px;
    border-radius: var(--r-md);
    background: linear-gradient(145deg, rgba(30, 40, 60, 0.8), rgba(20, 28, 45, 0.9));
    border: 1px solid rgba(0, 205, 237, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.header-logo-sm img[b-7ly5ecf7nx] {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 4px;
}

.header-logo-sm .logo-fallback[b-7ly5ecf7nx] {
    font-size: 14px;
    font-weight: 700;
    color: var(--accent-primary, #00cded);
}

.header-symbol[b-7ly5ecf7nx] {
    font-size: 18px;
    font-weight: 800;
    color: #fff;
    letter-spacing: 0.5px;
}

.header-price[b-7ly5ecf7nx] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-secondary, #8892b0);
    font-variant-numeric: tabular-nums;
    margin-left: auto;
}

.header-price.price-up[b-7ly5ecf7nx] {
    color: var(--color-bullish, #00e676);
}

.header-price.price-down[b-7ly5ecf7nx] {
    color: var(--color-bearish, #ff5252);
}

/* Per-tick price flash. The span remounts (@key) on every price change, replaying the
   animation; direction class picks the colour. Ends transparent so the steady up/down
   colour from .price-up/.price-down shows through. */
.header-price.tick-up[b-7ly5ecf7nx] {
    animation: price-flash-up-b-7ly5ecf7nx 0.5s ease-out;
}

.header-price.tick-down[b-7ly5ecf7nx] {
    animation: price-flash-down-b-7ly5ecf7nx 0.5s ease-out;
}

@keyframes price-flash-up-b-7ly5ecf7nx {
    0%   { color: var(--color-bullish, #00e676); text-shadow: 0 0 12px rgba(0, 230, 118, 0.75); transform: translateY(-1px); }
    100% { text-shadow: 0 0 0 rgba(0, 230, 118, 0); transform: translateY(0); }
}

@keyframes price-flash-down-b-7ly5ecf7nx {
    0%   { color: var(--color-bearish, #ff5252); text-shadow: 0 0 12px rgba(255, 82, 82, 0.75); transform: translateY(1px); }
    100% { text-shadow: 0 0 0 rgba(255, 82, 82, 0); transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
    .header-price.tick-up[b-7ly5ecf7nx],
    .header-price.tick-down[b-7ly5ecf7nx] { animation: none; }
}

/* Row 2: Company name */
.header-row-company[b-7ly5ecf7nx] {
    font-size: 10px;
    color: var(--text-muted, #5a6a8a);
    letter-spacing: 0.3px;
    padding-left: 40px; /* Align with text after logo */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Row 3: Pills side by side */
.header-row-pills[b-7ly5ecf7nx] {
    display: flex;
    gap: 6px;
    padding-top: 4px;
}

/* Small signal pills for header */
.signal-pill-sm[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: var(--r-sm);
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    border: 1px solid transparent;
    flex: 1;
    justify-content: center;
    transition: background .35s ease, color .35s ease, border-color .35s ease;
}

.signal-icon-sm[b-7ly5ecf7nx] {
    width: 10px;
    height: 10px;
    flex-shrink: 0;
}

.signal-pulse-sm[b-7ly5ecf7nx] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    position: relative;
    flex-shrink: 0;
}

.signal-pulse-sm[b-7ly5ecf7nx]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: currentColor;
    animation: signal-pulse-b-7ly5ecf7nx 1.5s ease-out infinite;
}

@keyframes signal-pulse-b-7ly5ecf7nx {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.7;
    }
    100% {
        transform: translate(-50%, -50%) scale(2.5);
        opacity: 0;
    }
}

/* Signal Pill Color Variants */
.signal-pill-sm.bullish[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.15);
    border-color: rgba(0, 230, 118, 0.35);
    color: var(--color-bullish, #00e676);
}

.signal-pill-sm.lean-bullish[b-7ly5ecf7nx] {
    background: rgba(74, 222, 128, 0.12);
    border-color: rgba(74, 222, 128, 0.3);
    color: var(--color-lean-bullish, #4ade80);
}

.signal-pill-sm.bearish[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.15);
    border-color: rgba(255, 82, 82, 0.35);
    color: var(--color-bearish, #ff5252);
}

.signal-pill-sm.lean-bearish[b-7ly5ecf7nx] {
    background: rgba(248, 113, 113, 0.12);
    border-color: rgba(248, 113, 113, 0.3);
    color: var(--color-lean-bearish, #f87171);
}

.signal-pill-sm.neutral[b-7ly5ecf7nx] {
    background: rgba(100, 120, 150, 0.1);
    border-color: rgba(136, 146, 176, 0.2);
    color: var(--text-secondary, #8892b0);
}

/* MTF Live variants */
.signal-pill-sm.mtf-bullish[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.18);
    border-color: rgba(0, 230, 118, 0.4);
    color: var(--color-bullish, #00e676);
}

.signal-pill-sm.mtf-lean-bullish[b-7ly5ecf7nx] {
    background: rgba(74, 222, 128, 0.15);
    border-color: rgba(74, 222, 128, 0.35);
    color: var(--color-lean-bullish, #4ade80);
}

.signal-pill-sm.mtf-bearish[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.18);
    border-color: rgba(255, 82, 82, 0.4);
    color: var(--color-bearish, #ff5252);
}

.signal-pill-sm.mtf-lean-bearish[b-7ly5ecf7nx] {
    background: rgba(248, 113, 113, 0.15);
    border-color: rgba(248, 113, 113, 0.35);
    color: var(--color-lean-bearish, #f87171);
}

.signal-pill-sm.mtf-conflicting[b-7ly5ecf7nx] {
    background: rgba(255, 179, 0, 0.15);
    border-color: rgba(255, 179, 0, 0.35);
    color: var(--color-warning, #ffb300);
}

.signal-pill-sm.mtf-weak[b-7ly5ecf7nx],
.signal-pill-sm.mtf-neutral[b-7ly5ecf7nx] {
    background: rgba(100, 120, 150, 0.1);
    border-color: rgba(136, 146, 176, 0.2);
    color: var(--text-secondary, #8892b0);
}

/* Live pill glow animation */
.signal-pill-sm.live[b-7ly5ecf7nx] {
    animation: pill-glow-b-7ly5ecf7nx 2s ease-in-out infinite;
}

.signal-pill-sm.live.mtf-bullish[b-7ly5ecf7nx],
.signal-pill-sm.live.mtf-lean-bullish[b-7ly5ecf7nx] {
    animation: pill-glow-bullish-b-7ly5ecf7nx 2s ease-in-out infinite;
}

.signal-pill-sm.live.mtf-bearish[b-7ly5ecf7nx],
.signal-pill-sm.live.mtf-lean-bearish[b-7ly5ecf7nx] {
    animation: pill-glow-bearish-b-7ly5ecf7nx 2s ease-in-out infinite;
}

@keyframes pill-glow-b-7ly5ecf7nx {
    0%, 100% { box-shadow: 0 0 4px rgba(0, 205, 237, 0.1); }
    50% { box-shadow: 0 0 10px rgba(0, 205, 237, 0.25); }
}

@keyframes pill-glow-bullish-b-7ly5ecf7nx {
    0%, 100% { box-shadow: 0 0 4px rgba(0, 230, 118, 0.15); }
    50% { box-shadow: 0 0 12px rgba(0, 230, 118, 0.35); }
}

@keyframes pill-glow-bearish-b-7ly5ecf7nx {
    0%, 100% { box-shadow: 0 0 4px rgba(255, 82, 82, 0.15); }
    50% { box-shadow: 0 0 12px rgba(255, 82, 82, 0.35); }
}

/* ===== COMPACT TECH METRICS ===== */

.metric-value[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    text-align: center;
    line-height: 1.2;
}

/* Metric item color variants */

.sidebar-price-change.positive[b-7ly5ecf7nx] { color: var(--color-bullish, #00e676); }
.sidebar-price-change.negative[b-7ly5ecf7nx] { color: var(--color-bearish, #ff5252); }

/* ===== SIDEBAR TABS ===== */
.sidebar-tabs[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 8px 12px;
    background: rgba(18, 22, 32, 0.6);
    border-bottom: 1px solid rgba(0, 205, 237, 0.12);
}

.sidebar-tab[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 14px;
    background: transparent;
    border: none;
    border-radius: var(--r-md);
    color: var(--text-secondary, #8892b0);
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: background var(--dur-fast) ease, color var(--dur-fast) ease;
}

.sidebar-tab:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.1);
    color: var(--text-primary, #e6f1ff);
}

.sidebar-tab.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
    color: var(--accent-primary, #00cded);
}

.sidebar-tab.icon-only[b-7ly5ecf7nx] {
    padding: 8px 10px;
}

.sidebar-tab.icon-only svg[b-7ly5ecf7nx] {
    width: 16px;
    height: 16px;
}

.sidebar-tab-panel[b-7ly5ecf7nx] {
    display: none;
}

.sidebar-tab-panel.active[b-7ly5ecf7nx] {
    display: block;
    animation: tf-drop-in-b-7ly5ecf7nx .18s ease;
}

/* ===== SIDEBAR CONTENT ===== */
.sidebar-content[b-7ly5ecf7nx] {
    flex: 1;
    overflow-y: auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Crosshair OHLC Panel */
.crosshair-ohlc-panel[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.08);
    border: 1px solid rgba(0, 205, 237, 0.2);
    border-radius: var(--r-md);
    padding: 10px 12px;
}

/* Overall Signal Panel */

.signal-label[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.signal-badge[b-7ly5ecf7nx] {
    padding: 4px 12px;
    border-radius: var(--r-sm);
    font-size: 12px;
    font-weight: 700;
}

.signal-badge.bullish[b-7ly5ecf7nx] { background: rgba(0, 230, 118, 0.2); color: var(--color-bullish, #00e676); }
.signal-badge.bearish[b-7ly5ecf7nx] { background: rgba(255, 82, 82, 0.2); color: var(--color-bearish, #ff5252); }
.signal-badge.neutral[b-7ly5ecf7nx] { background: rgba(136, 146, 176, 0.2); color: var(--text-muted, #8892b0); }

.confidence[b-7ly5ecf7nx] {
    font-size: 14px;
    font-weight: 700;
}

.confidence.high[b-7ly5ecf7nx] { color: var(--color-bullish, #00e676); }
.confidence.medium[b-7ly5ecf7nx] { color: #ffa726; }
.confidence.low[b-7ly5ecf7nx] { color: var(--text-secondary, #8892b0); }

/* Technical Indicators Panel */
.tech-indicators-panel[b-7ly5ecf7nx] {
    background: rgba(30, 40, 60, 0.4);
    border: 1px solid rgba(0, 205, 237, 0.15);
    border-radius: var(--r-md);
    padding: 12px;
}

.panel-section-title[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.panel-section-title svg[b-7ly5ecf7nx] {
    opacity: 0.7;
}

/* Reversal Score Badge in INDICATORS header */
.reversal-score-badge[b-7ly5ecf7nx] {
    margin-left: auto;
    padding: 2px 6px;
    border-radius: var(--r-sm);
    font-size: 9px;
    font-weight: 600;
    text-transform: none;
    letter-spacing: 0.3px;
    background: rgba(100, 120, 150, 0.2);
    color: var(--text-secondary, #8892b0);
    transition: background var(--dur-med) ease, color var(--dur-med) ease, border-color var(--dur-med) ease;
}

.reversal-score-badge.bullish[b-7ly5ecf7nx] {
    background: rgba(15, 216, 99, 0.15);
    color: var(--accent-primary, #0fd863);
    border: 1px solid rgba(15, 216, 99, 0.3);
}

.reversal-score-badge.bearish[b-7ly5ecf7nx] {
    background: rgba(255, 107, 107, 0.15);
    color: #ff6b6b;
    border: 1px solid rgba(255, 107, 107, 0.3);
}

.reversal-score-badge.neutral[b-7ly5ecf7nx] {
    background: rgba(100, 120, 150, 0.15);
    color: var(--text-secondary, #8892b0);
    border: 1px solid rgba(100, 120, 150, 0.2);
}

.mini-indicator-row[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    border-bottom: 1px solid rgba(100, 120, 150, 0.1);
}

.mini-indicator-row:last-child[b-7ly5ecf7nx] {
    border-bottom: none;
}

/* Stacked Dots Indicator Selection - Blue outline for selected indicators */
.mini-indicator-row.dots-selected[b-7ly5ecf7nx] {
    border: 1px solid rgba(0, 150, 255, 0.6);
    border-radius: var(--r-sm);
    background: rgba(0, 150, 255, 0.08);
    margin: 2px 0;
    padding: 5px 6px;
}

/* ===== DOTS MODE SELECTOR - 3-button segmented control ===== */
.dots-mode-selector[b-7ly5ecf7nx] {
    display: flex;
    gap: 2px;
    padding: 4px 0 8px 0;
    background: transparent;
}

.dots-mode-btn[b-7ly5ecf7nx] {
    flex: 1;
    padding: 4px 6px;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    background: rgba(40, 50, 70, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.7);
    cursor: pointer;
    transition: background var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease, box-shadow var(--dur-fast) ease;
    white-space: nowrap;
}

.dots-mode-btn:hover[b-7ly5ecf7nx] {
    background: rgba(50, 65, 90, 0.7);
    border-color: rgba(0, 205, 237, 0.3);
    color: rgba(0, 205, 237, 0.8);
}

.dots-mode-btn.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.5);
    color: var(--accent-primary, #00cded);
    box-shadow: 0 0 6px rgba(0, 205, 237, 0.2);
}

/* ===== EXTENDED INDICATORS TOGGLE ===== */
.extended-indicators-toggle[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 6px 8px;
    margin: 8px 0 4px 0;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    background: rgba(40, 50, 70, 0.4);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: rgba(136, 146, 176, 0.8);
    cursor: pointer;
    transition: background var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease;
}

.extended-indicators-toggle:hover[b-7ly5ecf7nx] {
    background: rgba(50, 65, 90, 0.6);
    border-color: rgba(0, 150, 255, 0.3);
    color: rgba(0, 150, 255, 0.9);
}

.extended-indicators-toggle.expanded[b-7ly5ecf7nx] {
    background: rgba(0, 150, 255, 0.1);
    border-color: rgba(0, 150, 255, 0.4);
    color: rgba(0, 150, 255, 1);
}

.extended-indicators-toggle svg[b-7ly5ecf7nx] {
    width: 10px;
    height: 10px;
    transition: transform var(--dur-med) ease;
}

.extended-indicators-toggle.expanded svg[b-7ly5ecf7nx] {
    transform: rotate(180deg);
}

.extended-indicators-section[b-7ly5ecf7nx] {
    margin-top: 4px;
    padding-top: 4px;
    border-top: 1px dashed rgba(100, 120, 150, 0.2);
    animation: tf-drop-in-b-7ly5ecf7nx .18s ease;
}

.extended-indicators-section .mini-indicator-row[b-7ly5ecf7nx] {
    opacity: 0.85;
}

.extended-indicators-section .mini-indicator-row.extended[b-7ly5ecf7nx] {
    background: rgba(40, 50, 70, 0.2);
    border-radius: var(--r-sm);
    margin: 2px 0;
    padding: 5px 6px;
}

.loading-indicators[b-7ly5ecf7nx] {
    padding: 12px;
    text-align: center;
    font-size: 10px;
    color: rgba(136, 146, 176, 0.6);
    font-style: italic;
}

/* ===== INDICATOR SELECT MODAL ===== */
.indicator-select-modal[b-7ly5ecf7nx] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-modal-top);
}

.indicator-select-content[b-7ly5ecf7nx] {
    background: linear-gradient(180deg, rgba(24, 30, 45, 0.98) 0%, rgba(18, 24, 38, 0.98) 100%);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    padding: 16px;
    max-width: 400px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
}

.indicator-select-header[b-7ly5ecf7nx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(100, 120, 150, 0.2);
}

.indicator-select-header h3[b-7ly5ecf7nx] {
    margin: 0;
    font-size: 14px;
    color: var(--accent-primary, #00cded);
}

.indicator-select-close[b-7ly5ecf7nx] {
    background: transparent;
    border: none;
    color: rgba(136, 146, 176, 0.7);
    cursor: pointer;
    padding: 4px;
    font-size: 18px;
}

.indicator-select-close:hover[b-7ly5ecf7nx] {
    color: var(--color-bearish, #ff5252);
}

.indicator-select-category[b-7ly5ecf7nx] {
    margin-bottom: 12px;
}

.indicator-select-category-title[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: rgba(136, 146, 176, 0.6);
    margin-bottom: 6px;
}

.indicator-select-item[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border: 1px solid transparent;
    border-radius: var(--r-sm);
    cursor: pointer;
    transition: background var(--dur-fast) ease, border-color var(--dur-fast) ease;
}

.indicator-select-item:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.08);
    border-color: rgba(0, 205, 237, 0.2);
}

.indicator-select-item.selected[b-7ly5ecf7nx] {
    background: rgba(0, 150, 255, 0.12);
    border-color: rgba(0, 150, 255, 0.5);
}

.indicator-select-checkbox[b-7ly5ecf7nx] {
    width: 14px;
    height: 14px;
    accent-color: var(--accent-primary, #00cded);
}

.indicator-select-name[b-7ly5ecf7nx] {
    font-size: 12px;
    color: #e6f1ff;
    flex: 1;
}

.indicator-select-item.core-reversal .indicator-select-name[b-7ly5ecf7nx]::after {
    content: " ★";
    color: rgba(0, 205, 237, 0.6);
    font-size: 10px;
}

.indicator-select-actions[b-7ly5ecf7nx] {
    display: flex;
    gap: 8px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(100, 120, 150, 0.2);
}

.indicator-select-btn[b-7ly5ecf7nx] {
    flex: 1;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 600;
    border-radius: var(--r-sm);
    cursor: pointer;
    transition: background var(--dur-fast) ease, color var(--dur-fast) ease, border-color var(--dur-fast) ease;
}

.indicator-select-btn.primary[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.2);
    border: 1px solid rgba(0, 205, 237, 0.5);
    color: var(--accent-primary, #00cded);
}

.indicator-select-btn.primary:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.3);
}

.indicator-select-btn.secondary[b-7ly5ecf7nx] {
    background: transparent;
    border: 1px solid rgba(100, 120, 150, 0.3);
    color: rgba(136, 146, 176, 0.8);
}

.indicator-select-btn.secondary:hover[b-7ly5ecf7nx] {
    border-color: rgba(100, 120, 150, 0.5);
    color: #e6f1ff;
}

.mini-ind-label[b-7ly5ecf7nx] {
    width: 50px;
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
}

.mini-ind-chart[b-7ly5ecf7nx] {
    flex: 1;
}

.mini-ind-bar-bg[b-7ly5ecf7nx] {
    height: 6px;
    background: rgba(50, 60, 80, 0.5);
    border-radius: var(--r-sm);
    position: relative;
    display: flex;
}

.mini-zone[b-7ly5ecf7nx] {
    flex: 1;
}

.mini-zone.bullish[b-7ly5ecf7nx] { background: rgba(0, 230, 118, 0.15); }
.mini-zone.neutral[b-7ly5ecf7nx] { background: rgba(136, 146, 176, 0.1); }
.mini-zone.bearish[b-7ly5ecf7nx] { background: rgba(255, 82, 82, 0.15); }

.mini-ind-marker[b-7ly5ecf7nx] {
    position: absolute;
    top: -2px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    transform: translateX(-50%);
    border: 2px solid;
    transition: left .5s cubic-bezier(0.22, 1, 0.36, 1), background-color var(--dur-med) ease, box-shadow var(--dur-med) ease;
}

.mini-ind-marker.bullish[b-7ly5ecf7nx] { background: var(--color-bullish, #00e676); border-color: #00c853; box-shadow: 0 0 8px rgba(0, 230, 118, 0.5); }
.mini-ind-marker.bearish[b-7ly5ecf7nx] { background: var(--color-bearish, #ff5252); border-color: #ff1744; box-shadow: 0 0 8px rgba(255, 82, 82, 0.5); }
.mini-ind-marker.neutral[b-7ly5ecf7nx] { background: var(--text-muted, #8892b0); border-color: #64748b; }

.mini-ind-value[b-7ly5ecf7nx] {
    width: 50px;
    font-size: 11px;
    font-weight: 600;
    font-family: 'JetBrains Mono', monospace;
    color: var(--text-primary, #e6f1ff);
    text-align: right;
}

.mini-ind-signal[b-7ly5ecf7nx] {
    width: 65px;
    font-size: 10px;
    font-weight: 600;
    text-align: right;
}

.mini-ind-signal.bullish[b-7ly5ecf7nx] { color: var(--color-bullish, #00e676); }
.mini-ind-signal.bearish[b-7ly5ecf7nx] { color: var(--color-bearish, #ff5252); }
.mini-ind-signal.neutral[b-7ly5ecf7nx] { color: var(--text-secondary, #8892b0); }

/* One-shot flash when a directional signal (re)mounts */
.mini-ind-signal.bullish[b-7ly5ecf7nx],
.mini-ind-signal.bearish[b-7ly5ecf7nx],
.mini-ind-signal.lean-bullish[b-7ly5ecf7nx],
.mini-ind-signal.lean-bearish[b-7ly5ecf7nx] {
    animation: sig-flash-b-7ly5ecf7nx .5s ease;
}

@keyframes sig-flash-b-7ly5ecf7nx {
    0% { transform: scale(1.15); filter: brightness(1.6); }
    100% { transform: scale(1); filter: none; }
}

.no-data-message[b-7ly5ecf7nx] {
    padding: 20px;
    text-align: center;
    color: var(--text-secondary, #8892b0);
    font-size: 12px;
}

/* ===== ANALYSIS SECTIONS ===== */

/* Reversal Engine */

.reversal-indicator[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: var(--r-md);
    background: rgba(50, 60, 80, 0.5);
}

.reversal-indicator.bullish[b-7ly5ecf7nx] { background: rgba(0, 230, 118, 0.15); }
.reversal-indicator.bearish[b-7ly5ecf7nx] { background: rgba(255, 82, 82, 0.15); }
.reversal-indicator.lean-bullish[b-7ly5ecf7nx] { background: rgba(0, 230, 118, 0.08); }
.reversal-indicator.lean-bearish[b-7ly5ecf7nx] { background: rgba(255, 82, 82, 0.08); }

.confidence-value[b-7ly5ecf7nx] {
    font-size: 16px;
    font-weight: 700;
    color: var(--accent-primary, #00cded);
}

.confidence-label[b-7ly5ecf7nx] {
    display: block;
    font-size: 9px;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
}

.reversal-factor.bullish[b-7ly5ecf7nx] { 
    background: rgba(0, 230, 118, 0.1);
    color: var(--color-bullish, #00e676);
}

.reversal-factor.bearish[b-7ly5ecf7nx] { 
    background: rgba(255, 82, 82, 0.1);
    color: var(--color-bearish, #ff5252);
}

/* Market Regime */

.regime-badge[b-7ly5ecf7nx] {
    padding: 4px 12px;
    border-radius: var(--r-sm);
    font-size: 11px;
    font-weight: 600;
}

.regime-badge.strong-trend[b-7ly5ecf7nx] { background: rgba(0, 230, 118, 0.2); color: var(--color-bullish, #00e676); }
.regime-badge.trending[b-7ly5ecf7nx] { background: rgba(66, 165, 245, 0.2); color: #42a5f5; }
.regime-badge.ranging[b-7ly5ecf7nx] { background: rgba(255, 167, 38, 0.2); color: #ffa726; }
.regime-badge.flat[b-7ly5ecf7nx] { background: rgba(136, 146, 176, 0.2); color: var(--text-muted, #8892b0); }

/* ===== GRID LAYOUT SELECTOR ===== */

.grid-dropdown[b-7ly5ecf7nx] {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 4px;
    background: rgba(13, 17, 28, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    z-index: var(--z-dropdown);
    display: none;
    min-width: 120px;
    animation: ind-drop-in-b-7ly5ecf7nx 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

.grid-dropdown.show[b-7ly5ecf7nx] {
    display: block;
}

.grid-option[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    cursor: pointer;
    transition: background var(--dur-fast);
}

.grid-option:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
}

.grid-option.selected[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.2);
}

.grid-option-icon[b-7ly5ecf7nx] {
    display: grid;
    width: 18px;
    height: 18px;
    gap: 2px;
}

.grid-option-icon .cell[b-7ly5ecf7nx] {
    background: var(--accent-primary, #00cded);
    opacity: 0.7;
    border-radius: 1px;
}

/* ===== MULTI-CHART GRID CONTAINER ===== */
.chart-grid-container[b-7ly5ecf7nx] {
    flex: 1;
    display: grid;
    gap: 2px;
    background: rgba(0, 205, 237, 0.1);
    overflow: hidden;
    height: 100%; /* Ensures grid rows can properly calculate 1fr */
    min-height: 0; /* Prevent grid from overflowing flex container */
}

.chart-grid-container.layout-1[b-7ly5ecf7nx] {
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
}

.chart-grid-container.layout-2[b-7ly5ecf7nx] {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
}

.chart-grid-container.layout-3[b-7ly5ecf7nx] {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}

.chart-grid-container.layout-3 .chart-cell:nth-child(3)[b-7ly5ecf7nx] {
    grid-column: span 2;
}

.chart-grid-container.layout-4[b-7ly5ecf7nx] {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}

.chart-grid-container.layout-6[b-7ly5ecf7nx] {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}

/* ===== CHART CELL ===== */
.chart-cell[b-7ly5ecf7nx] {
    position: relative;
    background: var(--bg-primary, #0a0e17);
    min-height: 0; /* Allow grid to control height */
    height: 100%; /* Fill grid cell completely */
    cursor: pointer;
    transition: box-shadow var(--dur-med);
    overflow: hidden;
}

.chart-cell.selected[b-7ly5ecf7nx] {
    box-shadow: inset 0 0 0 2px var(--accent-primary, #00cded);
}

.chart-cell-content[b-7ly5ecf7nx] {
    position: relative;
    width: 100%;
    height: 100%;
}

.chart-symbol-overlay[b-7ly5ecf7nx] {
    position: absolute;
    top: 6px;
    left: 6px;
    right: auto;
    max-width: calc(100% - 80px);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 6px;
    z-index: 100;
    pointer-events: none;
    background: rgba(10, 14, 23, 0.85);
    padding: 3px 6px;
    border-radius: var(--r-sm);
}

.cell-close-btn[b-7ly5ecf7nx] {
    position: absolute;
    top: 6px;
    right: 70px; /* Leave space for price scale */
    pointer-events: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: rgba(255, 82, 82, 0.2);
    border: 1px solid rgba(255, 82, 82, 0.4);
    border-radius: var(--r-sm);
    color: var(--color-bearish, #ff5252);
    cursor: pointer;
    transition: background var(--dur-med), border-color var(--dur-med);
    z-index: 10;
}

.cell-close-btn:hover[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.5);
    border-color: var(--color-bearish, #ff5252);
}

.chart-cell-empty[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    min-height: 150px; /* Slightly reduced min-height for multi-cell layouts */
    background: var(--bg-primary, #0a0e17);
    position: relative;
}

/* Modern Add Symbol Button - Glass morphism style */
.chart-cell-empty .add-symbol-btn[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 28px 36px;
    background: linear-gradient(135deg, rgba(30, 40, 60, 0.4) 0%, rgba(20, 30, 50, 0.6) 100%);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(0, 205, 237, 0.15);
    border-radius: 16px;
    color: rgba(136, 146, 176, 0.85);
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.3px;
    cursor: pointer;
    transition: background var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), color var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), border-color var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), transform var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), box-shadow var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow:
        0 4px 24px rgba(0, 0, 0, 0.25),
        0 1px 2px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    position: relative;
    overflow: hidden;
}

/* Subtle glow effect behind button */
.chart-cell-empty .add-symbol-btn[b-7ly5ecf7nx]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: radial-gradient(circle, rgba(0, 205, 237, 0.15) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.4s ease, width 0.4s ease, height 0.4s ease;
    pointer-events: none;
}

/* Icon wrapper */
.chart-cell-empty .add-symbol-btn svg[b-7ly5ecf7nx] {
    width: 28px;
    height: 28px;
    stroke-width: 1.5;
    color: rgba(0, 205, 237, 0.6);
    transition: color var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), transform var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), filter var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1);
    filter: drop-shadow(0 2px 4px rgba(0, 205, 237, 0.2));
}

/* Text styling */
.chart-cell-empty .add-symbol-btn span[b-7ly5ecf7nx] {
    transition: color var(--dur-med) ease;
}

/* Hover state */
.chart-cell-empty .add-symbol-btn:hover[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, rgba(0, 205, 237, 0.12) 0%, rgba(30, 45, 65, 0.7) 100%);
    border-color: rgba(0, 205, 237, 0.4);
    color: var(--accent-primary, #00cded);
    transform: translateY(-2px);
    box-shadow:
        0 8px 32px rgba(0, 205, 237, 0.15),
        0 4px 16px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.chart-cell-empty .add-symbol-btn:hover[b-7ly5ecf7nx]::before {
    opacity: 1;
    width: 120px;
    height: 120px;
}

.chart-cell-empty .add-symbol-btn:hover svg[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
    transform: scale(1.1);
    filter: drop-shadow(0 4px 8px rgba(0, 205, 237, 0.35));
}

/* Active/pressed state */
.chart-cell-empty .add-symbol-btn:active[b-7ly5ecf7nx] {
    transform: translateY(0px);
    box-shadow:
        0 2px 12px rgba(0, 205, 237, 0.2),
        0 1px 4px rgba(0, 0, 0, 0.15);
}

.chart-loading[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: var(--text-secondary, #8892b0);
    font-size: 13px;
}

/* ===== CHART LOADING SKELETON =====
   Animated candle-grid placeholder + shimmer sweep shown while bars load. */
.chart-skeleton[b-7ly5ecf7nx] {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(13, 17, 28, 0.55), rgba(10, 14, 23, 0.92));
}

.chart-skeleton-grid[b-7ly5ecf7nx] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    gap: 6px;
    padding: 26px 18px 44px;
    opacity: 0.55;
}

.sk-candle[b-7ly5ecf7nx] {
    flex: 1;
    height: 45%;
    border-radius: 2px;
    transform-origin: bottom;
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.28), rgba(0, 205, 237, 0.04));
    animation: sk-rise-b-7ly5ecf7nx 1.6s ease-in-out infinite;
    animation-delay: calc(var(--sk-i) * -0.11s);
}

.sk-candle:nth-child(3n)[b-7ly5ecf7nx] { background: linear-gradient(180deg, rgba(255, 82, 82, 0.24), rgba(255, 82, 82, 0.04)); }
.sk-candle:nth-child(2n)[b-7ly5ecf7nx] { height: 56%; }
.sk-candle:nth-child(3n)[b-7ly5ecf7nx] { height: 78%; }
.sk-candle:nth-child(4n)[b-7ly5ecf7nx] { height: 34%; }
.sk-candle:nth-child(5n)[b-7ly5ecf7nx] { height: 67%; }
.sk-candle:nth-child(7n)[b-7ly5ecf7nx] { height: 88%; }

.chart-skeleton-shimmer[b-7ly5ecf7nx] {
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 32%, rgba(230, 241, 255, 0.07) 50%, transparent 68%);
    transform: translateX(-100%);
    animation: sk-shimmer-b-7ly5ecf7nx 1.8s ease-in-out infinite;
}

.chart-skeleton-label[b-7ly5ecf7nx] {
    position: absolute;
    bottom: 16px;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 12px;
    letter-spacing: 0.04em;
    color: var(--text-muted, #5a6a8a);
}

@keyframes sk-rise-b-7ly5ecf7nx {
    0%, 100% { transform: scaleY(0.82); opacity: 0.6; }
    50%      { transform: scaleY(1.04); opacity: 1; }
}

@keyframes sk-shimmer-b-7ly5ecf7nx {
    0%   { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

@media (prefers-reduced-motion: reduce) {
    .sk-candle[b-7ly5ecf7nx],
    .chart-skeleton-shimmer[b-7ly5ecf7nx] { animation: none; }
}

/* ===== CHART WITH OSCILLATOR PANE ===== */
.chart-with-oscillator[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    animation: chart-enter-b-7ly5ecf7nx 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes chart-enter-b-7ly5ecf7nx {
    from { opacity: 0; transform: translateY(6px) scale(0.995); }
    to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .chart-with-oscillator[b-7ly5ecf7nx] { animation: none; }
}

.chart-with-oscillator .chart-area[b-7ly5ecf7nx] {
    flex: 1;
    min-height: 0;
    position: relative;
}

.chart-with-oscillator[b-7ly5ecf7nx]  .oscillator-signal-pane {
    flex-shrink: 0;
}

/* ===== CELL SEARCH MODAL ===== */
.cell-search-modal[b-7ly5ecf7nx] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-modal);
}

.cell-search-content[b-7ly5ecf7nx] {
    background: rgba(13, 17, 28, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    padding: 16px;
    min-width: 300px;
}

.cell-search-input[b-7ly5ecf7nx] {
    width: 100%;
    padding: 12px 16px;
    background: rgba(0, 205, 237, 0.1);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    color: var(--text-primary, #f0f4f8);
    font-size: 16px;
    text-transform: uppercase;
}

.cell-search-input:focus[b-7ly5ecf7nx] {
    outline: none;
    border-color: var(--accent-primary, #00cded);
    box-shadow: 0 0 0 3px rgba(0, 205, 237, 0.2);
}

.cell-search-results[b-7ly5ecf7nx] {
    margin-top: 8px;
    max-height: 300px;
    overflow-y: auto;
}

.cell-search-result[b-7ly5ecf7nx] {
    padding: 10px 12px;
    cursor: pointer;
    border-radius: var(--r-sm);
    color: var(--accent-primary, #00cded);
    font-weight: 600;
    transition: background var(--dur-fast);
}

.cell-search-result:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
}

/* ===== PATTERN SELECTION MODAL ===== */
.pattern-modal-overlay[b-7ly5ecf7nx] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: var(--z-modal-top);
}

.pattern-modal[b-7ly5ecf7nx] {
    background: rgba(13, 17, 28, 0.98);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-lg);
    width: 450px;
    max-height: 70vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.pattern-modal.bullish[b-7ly5ecf7nx] {
    border-color: rgba(0, 230, 118, 0.4);
}

.pattern-modal.bearish[b-7ly5ecf7nx] {
    border-color: rgba(255, 82, 82, 0.4);
}

.pattern-modal-header[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(0, 205, 237, 0.2);
}

.pattern-modal-title[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary, #f0f4f8);
}

.pattern-modal-title .emoji[b-7ly5ecf7nx] {
    font-size: 22px;
}

.pattern-modal-close[b-7ly5ecf7nx] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--text-secondary, #8892b0);
    font-size: 20px;
    cursor: pointer;
    border-radius: var(--r-sm);
    transition: background var(--dur-med), color var(--dur-med);
}

.pattern-modal-close:hover[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.2);
    color: var(--color-bearish, #ff5252);
}

.pattern-actions[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    background: rgba(0, 0, 0, 0.2);
}

.pattern-actions-left[b-7ly5ecf7nx] {
    display: flex;
    gap: 8px;
}

.pattern-action-btn[b-7ly5ecf7nx] {
    padding: 6px 12px;
    background: rgba(0, 205, 237, 0.1);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    color: var(--accent-primary, #00cded);
    font-size: 12px;
    cursor: pointer;
    transition: background var(--dur-med);
}

.pattern-action-btn:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.2);
}

.pattern-count[b-7ly5ecf7nx] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
}

.pattern-count strong[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
}

.pattern-list[b-7ly5ecf7nx] {
    flex: 1;
    overflow-y: auto;
    padding: 8px 0;
}

.pattern-item[b-7ly5ecf7nx] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 20px;
    cursor: pointer;
    transition: background var(--dur-fast);
}

.pattern-item:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.1);
}

.pattern-checkbox[b-7ly5ecf7nx] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--accent-primary, #00cded);
}

.pattern-info[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pattern-name[b-7ly5ecf7nx] {
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary, #f0f4f8);
}

.pattern-description[b-7ly5ecf7nx] {
    font-size: 12px;
    color: var(--text-secondary, #8892b0);
    line-height: 1.4;
}

.pattern-modal-footer[b-7ly5ecf7nx] {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 20px;
    border-top: 1px solid rgba(0, 205, 237, 0.2);
}

.pattern-modal-btn[b-7ly5ecf7nx] {
    padding: 8px 20px;
    border-radius: var(--r-md);
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background var(--dur-med);
}

.pattern-modal-btn.secondary[b-7ly5ecf7nx] {
    background: transparent;
    border: 1px solid rgba(136, 146, 176, 0.3);
    color: var(--text-secondary, #8892b0);
}

.pattern-modal-btn.secondary:hover[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.1);
}

.pattern-modal-btn.primary[b-7ly5ecf7nx] {
    background: var(--accent-primary, #00cded);
    border: 1px solid var(--accent-primary, #00cded);
    color: #0a0e17;
}

.pattern-modal-btn.primary:hover[b-7ly5ecf7nx] {
    background: var(--accent-secondary, #0bdeff);
}

/* ===== MA DROPDOWN ===== */

/* ===== CELL SYMBOL BADGE ===== */

/* Mini symbol badge - smaller, doesn't cover price axis */
.cell-symbol-badge-mini[b-7ly5ecf7nx] {
    padding: 2px 6px;
    background: rgba(0, 205, 237, 0.15);
    border: 1px solid rgba(0, 205, 237, 0.25);
    border-radius: var(--r-sm);
    color: var(--accent-primary, #00cded);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

/* Inline OHLC display next to symbol */
.inline-ohlc[b-7ly5ecf7nx] {
    display: inline-flex;
    gap: 2px;
    margin-left: 6px;
    font-size: 9px;
    font-family: 'JetBrains Mono', 'Fira Code', monospace;
    opacity: 0.9;
}

.inline-ohlc .ohlc-i[b-7ly5ecf7nx] {
    color: #6b7280;
    font-weight: 500;
}

.inline-ohlc .ohlc-v[b-7ly5ecf7nx] {
    color: #9ca3af;
    margin-right: 4px;
}

.inline-ohlc .ohlc-i.h[b-7ly5ecf7nx],
.inline-ohlc .ohlc-v.h[b-7ly5ecf7nx] {
    color: var(--color-bullish, #00e676);
}

.inline-ohlc .ohlc-i.l[b-7ly5ecf7nx],
.inline-ohlc .ohlc-v.l[b-7ly5ecf7nx] {
    color: var(--color-bearish, #ff5252);
}

.inline-ohlc .ohlc-i.vol[b-7ly5ecf7nx],
.inline-ohlc .ohlc-v.vol[b-7ly5ecf7nx] {
    color: #a78bfa;
}

/* Update chart symbol overlay to be more compact - avoid price scale overlap */
.chart-symbol-overlay[b-7ly5ecf7nx] {
    position: absolute;
    top: 4px;
    left: 4px;
    right: auto;
    max-width: calc(100% - 80px);
    z-index: 10;
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: rgba(10, 14, 23, 0.9);
    padding: 4px 6px;
    border-radius: var(--r-sm);
    pointer-events: none;
}

.chart-symbol-overlay > *[b-7ly5ecf7nx] {
    pointer-events: auto;
}

/* Row for symbol + OHLC */
.overlay-row[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
}

/* Indicator values - vertical compact layout */
.overlay-indicators[b-7ly5ecf7nx] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    font-size: 10px;
    font-family: 'JetBrains Mono', monospace;
}

/* Vertical layout modifier - 1 indicator per row */
.overlay-indicators.vertical[b-7ly5ecf7nx] {
    flex-direction: column;
    gap: 1px;
    margin-top: 2px;
}

/* Individual indicator row */
.ind-row[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 9px;
    line-height: 1.2;
    white-space: nowrap;
}

.ind-row .ind-dot[b-7ly5ecf7nx] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    flex-shrink: 0;
}

.ind-row .ind-label[b-7ly5ecf7nx] {
    font-weight: 600;
    min-width: 38px;
}

.ind-row .ind-value[b-7ly5ecf7nx] {
    font-weight: 500;
    opacity: 0.9;
}

/* Legacy support for old format */

.ind-dot[b-7ly5ecf7nx] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* Indicator colors matching chart lines */
.ind-row.sma20[b-7ly5ecf7nx], .ind-val.sma20[b-7ly5ecf7nx] { color: #ffa726; }
.ind-row.sma20 .ind-dot[b-7ly5ecf7nx], .ind-val.sma20 .ind-dot[b-7ly5ecf7nx] { background: #ffa726; }

.ind-row.sma50[b-7ly5ecf7nx], .ind-val.sma50[b-7ly5ecf7nx] { color: #42a5f5; }
.ind-row.sma50 .ind-dot[b-7ly5ecf7nx], .ind-val.sma50 .ind-dot[b-7ly5ecf7nx] { background: #42a5f5; }

.ind-row.ema8[b-7ly5ecf7nx], .ind-val.ema8[b-7ly5ecf7nx] { color: #ab47bc; }
.ind-row.ema8 .ind-dot[b-7ly5ecf7nx], .ind-val.ema8 .ind-dot[b-7ly5ecf7nx] { background: #ab47bc; }

.ind-row.ema21[b-7ly5ecf7nx], .ind-val.ema21[b-7ly5ecf7nx] { color: #26a69a; }
.ind-row.ema21 .ind-dot[b-7ly5ecf7nx], .ind-val.ema21 .ind-dot[b-7ly5ecf7nx] { background: #26a69a; }

.ind-row.vwap[b-7ly5ecf7nx], .ind-val.vwap[b-7ly5ecf7nx] { color: #ffca28; }
.ind-row.vwap .ind-dot[b-7ly5ecf7nx], .ind-val.vwap .ind-dot[b-7ly5ecf7nx] { background: #ffca28; }

.ind-row.bb[b-7ly5ecf7nx], .ind-val.bb[b-7ly5ecf7nx] { color: #78909c; }
.ind-row.bb .ind-dot[b-7ly5ecf7nx], .ind-val.bb .ind-dot[b-7ly5ecf7nx] { background: #78909c; }

/* chartStudies overlays (SMA200, SuperTrend, PSAR): the colour is the catalog's, set inline as --oc */
.ind-row.study[b-7ly5ecf7nx] { color: var(--oc, #b0bec5); }
.ind-row.study .ind-dot[b-7ly5ecf7nx] { background: var(--oc, #b0bec5); }

/* One compact line per oscillator pane: the title, then each series' value in its own colour */
.ind-row.pane[b-7ly5ecf7nx] { color: rgba(165, 178, 205, 0.85); gap: 6px; }
.ind-row.pane .ind-label[b-7ly5ecf7nx] { min-width: 0; }
.ind-row.pane .ind-value[b-7ly5ecf7nx] { opacity: 1; }

/* ===== MOBILE RESPONSIVE STYLES ===== */

/* Mobile menu toggle for toolbar */

.mobile-menu-toggle.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.4);
    color: var(--accent-primary, #00cded);
}

/* Mobile sidebar overlay backdrop */

.sidebar-backdrop.visible[b-7ly5ecf7nx] {
    opacity: 1;
}

/* ===== TABLET BREAKPOINT (max-width: 1024px) ===== */
@media screen and (max-width: 1024px) {
    .chart-sidebar[b-7ly5ecf7nx] {
        flex: 0 0 320px;
    }
    
    .sidebar-company-name[b-7ly5ecf7nx] {
        max-width: 160px;
    }
    
    .chart-toolbar.compact[b-7ly5ecf7nx] {
        gap: 4px;
        padding: 6px 8px;
    }
    
    .tb-sep[b-7ly5ecf7nx] {
        margin: 0 4px;
    }
    
    /* Pattern icons stay visible but more compact on tablet */
    .pattern-icon-btn[b-7ly5ecf7nx] {
        width: 28px;
        height: 26px;
    }
    
    .pattern-icon-btn .pattern-icon[b-7ly5ecf7nx] {
        width: 16px;
        height: 16px;
    }
}

/* ===== TABLET/SMALL DESKTOP (max-width: 900px) ===== */
@media screen and (max-width: 900px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-lw-viewport[b-7ly5ecf7nx] {
        flex-direction: column;
        /* position:fixed with top/bottom already handles sizing */
    }

    .sidebar-content[b-7ly5ecf7nx] {
        flex: 1;
        overflow-y: auto;
    }
}

/* ===== MOBILE BREAKPOINT (max-width: 768px) =====
   The phone toolbar, the Chart tools sheet and the Insights sheet are in the MOBILE CHARTS section at the
   end of this file; this block only tightens the sidebar's panels and the grid. */
@media screen and (max-width: 768px) {
    /* Sidebar header adjustments */
    .sidebar-header[b-7ly5ecf7nx] {
        padding: 12px;
    }

    .sidebar-company-info.compact .sidebar-company-logo[b-7ly5ecf7nx] {
        width: 32px;
        height: 32px;
    }

    .sidebar-company-symbol[b-7ly5ecf7nx] {
        font-size: 14px;
    }

    .sidebar-inline-price[b-7ly5ecf7nx] {
        font-size: 13px;
    }

    .action-badge[b-7ly5ecf7nx] {
        padding: 2px 6px;
        font-size: 8px;
    }

    .metric-value[b-7ly5ecf7nx] {
        font-size: 9px;
    }

    /* Indicator panel adjustments */
    .tech-indicators-panel[b-7ly5ecf7nx] {
        padding: 10px;
    }

    .mini-indicator-row[b-7ly5ecf7nx] {
        gap: 6px;
    }

    /* Grid layout adjustments for mobile */
    .chart-grid-container.layout-2[b-7ly5ecf7nx],
    .chart-grid-container.layout-3[b-7ly5ecf7nx],
    .chart-grid-container.layout-4[b-7ly5ecf7nx],
    .chart-grid-container.layout-6[b-7ly5ecf7nx] {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(auto-fit, minmax(200px, 1fr));
    }

    /* The LW attribution moves into the phone's Chart tools sheet */
    .lw-badge[b-7ly5ecf7nx] {
        display: none;
    }

    /* Chat and other panels adjustments */
    .chat-container[b-7ly5ecf7nx] {
        padding: 10px;
    }

    .chat-input-area[b-7ly5ecf7nx] {
        padding: 8px;
    }

    .chat-input[b-7ly5ecf7nx] {
        font-size: 13px;
    }

    /* Cell close button easier to tap */
    .cell-close-btn[b-7ly5ecf7nx] {
        width: 28px;
        height: 28px;
        top: 8px;
        right: 50px;
    }

    /* Hide grid selector on mobile - focus on single chart */
    .tool-btn.grid-btn[b-7ly5ecf7nx],
    .grid-dropdown[b-7ly5ecf7nx] {
        display: none;
    }
}

/* ===== SMALL MOBILE (max-width: 480px) ===== */
@media screen and (max-width: 480px) {
    .sidebar-header[b-7ly5ecf7nx] {
        padding: 10px;
    }

    .sidebar-company-info.compact .sidebar-company-logo[b-7ly5ecf7nx] {
        width: 28px;
        height: 28px;
    }

    .sidebar-company-symbol[b-7ly5ecf7nx] {
        font-size: 13px;
    }

    .sidebar-company-name[b-7ly5ecf7nx] {
        font-size: 10px;
        max-width: 120px;
    }

    /* Indicator row more compact: no mini bar */
    .mini-indicator-row[b-7ly5ecf7nx] {
        padding: 4px 0;
    }

    .mini-ind-chart[b-7ly5ecf7nx],
    .mini-ind-bar-bg[b-7ly5ecf7nx] {
        display: none;
    }
}

/* ===== TOUCH DEVICE OPTIMIZATIONS ===== */
@media (hover: none) and (pointer: coarse) {
    /* Larger touch targets */
    .tf-btn[b-7ly5ecf7nx] {
        min-height: 36px;
        min-width: 36px;
    }
    
    .ind-btn[b-7ly5ecf7nx] {
        min-height: 34px;
        padding: 6px 10px;
    }
    
    .tool-btn[b-7ly5ecf7nx] {
        min-height: 36px;
        min-width: 36px;
    }
    
    .sidebar-tab.icon-only[b-7ly5ecf7nx] {
        min-height: 40px;
        min-width: 40px;
    }
    
    .cell-close-btn[b-7ly5ecf7nx] {
        width: 32px;
        height: 32px;
    }
    
    /* Disable hover effects that don't work well on touch */
    .ind-btn:hover[b-7ly5ecf7nx],
    .tf-btn:hover[b-7ly5ecf7nx],
    .tool-btn:hover[b-7ly5ecf7nx] {
        background: inherit;
    }
    
    .ind-btn.on:hover[b-7ly5ecf7nx] {
        background: rgba(0, 205, 237, 0.15);
    }
}

/* ===== ENHANCED CHAT TAB V2 ===== */

.chat-container[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 0;
}

/* Chat Messages Area */
.chat-messages[b-7ly5ecf7nx] {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 0;
}

.chat-loading[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 20px;
    color: var(--text-secondary, #8892b0);
    font-size: 12px;
}

.chat-empty[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 40px 20px;
    text-align: center;
}

.chat-empty svg[b-7ly5ecf7nx] {
    color: var(--text-secondary, #8892b0);
}

.chat-empty span[b-7ly5ecf7nx] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
}

.chat-empty small[b-7ly5ecf7nx] {
    font-size: 11px;
    color: var(--text-secondary, #8892b0);
}

/* Chat Message Card */
.chat-message-card[b-7ly5ecf7nx] {
    background: rgba(30, 40, 60, 0.4);
    border: 1px solid rgba(100, 120, 150, 0.15);
    border-radius: var(--r-lg);
    padding: 12px;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease;
}

.chat-message-card:hover[b-7ly5ecf7nx] {
    background: rgba(35, 45, 65, 0.5);
    border-color: rgba(0, 205, 237, 0.15);
}

.chat-user-header[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.chat-user-avatar[b-7ly5ecf7nx] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 205, 237, 0.2), rgba(0, 205, 237, 0.1));
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    flex-shrink: 0;
}

.chat-user-avatar img[b-7ly5ecf7nx] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.chat-user-avatar span[b-7ly5ecf7nx] {
    font-size: 14px;
    font-weight: 700;
    color: var(--accent-primary, #00cded);
}

.chat-user-info[b-7ly5ecf7nx] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.chat-username[b-7ly5ecf7nx] {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.chat-timestamp[b-7ly5ecf7nx] {
    font-size: 10px;
    color: var(--text-secondary, #8892b0);
}

.chat-sentiment-badge[b-7ly5ecf7nx] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
}

.chat-sentiment-badge.bull[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.15);
    border: 1px solid rgba(0, 230, 118, 0.3);
}

.chat-sentiment-badge.neutral[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.15);
    border: 1px solid rgba(136, 146, 176, 0.25);
}

.chat-sentiment-badge.bear[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.15);
    border: 1px solid rgba(255, 82, 82, 0.3);
}

.chat-message-content[b-7ly5ecf7nx] {
    font-size: 13px;
    line-height: 1.5;
    color: var(--text-primary, #e6f1ff);
    word-wrap: break-word;
}

/* Chat Input Area */
.chat-input-area[b-7ly5ecf7nx] {
    background: rgba(20, 28, 42, 0.7);
    border-top: 1px solid rgba(100, 120, 150, 0.15);
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* Sentiment Selector */
.sentiment-selector[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sentiment-label[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.sentiment-buttons[b-7ly5ecf7nx] {
    display: flex;
    gap: 6px;
}

.sentiment-btn[b-7ly5ecf7nx] {
    width: 36px;
    height: 36px;
    border-radius: var(--r-md);
    border: 1px solid rgba(100, 120, 150, 0.2);
    background: rgba(30, 40, 60, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    cursor: pointer;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease, transform var(--dur-med) ease, box-shadow var(--dur-med) ease;
}

.sentiment-btn:hover[b-7ly5ecf7nx] {
    background: rgba(40, 50, 70, 0.6);
    border-color: rgba(100, 120, 150, 0.3);
    transform: scale(1.05);
}

.sentiment-btn.active[b-7ly5ecf7nx] {
    transform: scale(1.1);
}

.sentiment-btn.bull.active[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.2);
    border-color: rgba(0, 230, 118, 0.4);
    box-shadow: 0 0 10px rgba(0, 230, 118, 0.2);
}

.sentiment-btn.neutral.active[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.2);
    border-color: rgba(136, 146, 176, 0.4);
    box-shadow: 0 0 10px rgba(136, 146, 176, 0.2);
}

.sentiment-btn.bear.active[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.2);
    border-color: rgba(255, 82, 82, 0.4);
    box-shadow: 0 0 10px rgba(255, 82, 82, 0.2);
}

/* Chat Input Wrapper */
.chat-input-wrapper[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(30, 40, 60, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-md);
    padding: 4px 4px 4px 12px;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease;
}

.chat-input-wrapper:focus-within[b-7ly5ecf7nx] {
    border-color: rgba(0, 205, 237, 0.4);
    background: rgba(30, 40, 60, 0.7);
}

.chat-input[b-7ly5ecf7nx] {
    flex: 1;
    background: transparent;
    border: none;
    color: var(--text-primary, #e6f1ff);
    font-size: 13px;
    padding: 8px 0;
    min-width: 0;
}

.chat-input:focus[b-7ly5ecf7nx] {
    outline: none;
}

.chat-input[b-7ly5ecf7nx]::placeholder {
    color: var(--text-secondary, #8892b0);
    opacity: 0.6;
}

.chat-send-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(0, 205, 237, 0.15);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    color: var(--accent-primary, #00cded);
    cursor: pointer;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease, opacity var(--dur-med) ease;
    flex-shrink: 0;
}

.chat-send-btn:hover:not(:disabled)[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.25);
    border-color: rgba(0, 205, 237, 0.5);
}

.chat-send-btn:disabled[b-7ly5ecf7nx] {
    opacity: 0.4;
    cursor: not-allowed;
}

.mini-spinner[b-7ly5ecf7nx] {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(0, 205, 237, 0.3);
    border-top-color: var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: spin-b-7ly5ecf7nx 0.8s linear infinite;
}

/* Character Count */
.chat-char-count[b-7ly5ecf7nx] {
    font-size: 10px;
    color: var(--text-secondary, #8892b0);
    text-align: right;
    font-family: 'JetBrains Mono', monospace;
}

/* ===== ENHANCED FUNDAMENTALS TAB V2 ===== */

/* Stance Spectrum Card */

.stance-badge[b-7ly5ecf7nx] {
    padding: 4px 12px;
    border-radius: var(--r-lg);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.stance-badge.stance-bullish[b-7ly5ecf7nx] {
    background: rgba(0, 230, 118, 0.2);
    color: var(--color-bullish, #00e676);
    border: 1px solid rgba(0, 230, 118, 0.3);
}

.stance-badge.stance-bearish[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.2);
    color: var(--color-bearish, #ff5252);
    border: 1px solid rgba(255, 82, 82, 0.3);
}

.stance-badge.stance-neutral[b-7ly5ecf7nx] {
    background: rgba(136, 146, 176, 0.2);
    color: var(--text-muted, #8892b0);
    border: 1px solid rgba(136, 146, 176, 0.3);
}

.stance-confidence[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(100, 120, 150, 0.15);
}

.confidence-label[b-7ly5ecf7nx] {
    font-size: 10px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
}

.confidence-bar[b-7ly5ecf7nx] {
    flex: 1;
    height: 4px;
    background: rgba(30, 40, 55, 0.8);
    border-radius: 2px;
    overflow: hidden;
}

.confidence-fill[b-7ly5ecf7nx] {
    height: 100%;
    border-radius: 2px;
    transition: width var(--dur-med) ease;
    background: linear-gradient(90deg, #ffa726, var(--color-bullish, #00e676));
}

.confidence-fill.conf-high[b-7ly5ecf7nx] {
    background: linear-gradient(90deg, #26a69a, var(--color-bullish, #00e676));
}

.confidence-fill.conf-low[b-7ly5ecf7nx] {
    background: linear-gradient(90deg, #607d8b, var(--text-muted, #8892b0));
}

.confidence-value[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 700;
    color: var(--text-primary, #e6f1ff);
    min-width: 35px;
    text-align: right;
}

/* Health Scores Card */

.score-num[b-7ly5ecf7nx] {
    font-size: 14px;
    font-weight: 700;
}

/* Full Analysis Link */

/* Loading State V2 */

.loading-spinner-v2[b-7ly5ecf7nx] {
    width: 24px;
    height: 24px;
    border: 2px solid rgba(0, 205, 237, 0.2);
    border-top-color: var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: spin-b-7ly5ecf7nx 0.8s linear infinite;
}

/* Empty State V2 */

.empty-icon[b-7ly5ecf7nx] {
    font-size: 36px;
    opacity: 0.6;
}

/* ===== ENHANCED WATCHLIST TAB V2 ===== */

.watchlist-container-v2[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 4px;
}

/* Header with Usage */
.watchlist-header-v2[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, rgba(0, 205, 237, 0.08) 0%, rgba(30, 40, 60, 0.6) 100%);
    border: 1px solid rgba(0, 205, 237, 0.2);
    border-radius: var(--r-lg);
    padding: 12px;
    margin-bottom: 12px;
}

.watchlist-title-row[b-7ly5ecf7nx] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.watchlist-title-v2[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.watchlist-title-v2 svg[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
}

.watchlist-usage-badge[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 2px;
    padding: 4px 10px;
    background: rgba(0, 205, 237, 0.15);
    border: 1px solid rgba(0, 205, 237, 0.25);
    border-radius: var(--r-lg);
    font-family: 'JetBrains Mono', monospace;
}

.watchlist-usage-badge.at-limit[b-7ly5ecf7nx] {
    background: rgba(255, 167, 38, 0.15);
    border-color: rgba(255, 167, 38, 0.3);
}

.usage-count[b-7ly5ecf7nx] {
    font-size: 13px;
    font-weight: 700;
    color: var(--accent-primary, #00cded);
}

.watchlist-usage-badge.at-limit .usage-count[b-7ly5ecf7nx] {
    color: #ffa726;
}

.usage-separator[b-7ly5ecf7nx] {
    font-size: 11px;
    color: var(--text-secondary, #8892b0);
}

.usage-limit[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary, #8892b0);
}

.watchlist-usage-bar[b-7ly5ecf7nx] {
    height: 4px;
    background: rgba(30, 40, 55, 0.8);
    border-radius: 2px;
    overflow: hidden;
}

.usage-fill[b-7ly5ecf7nx] {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-primary, #00cded), var(--color-bullish, #00e676));
    border-radius: 2px;
    transition: width var(--dur-med) ease;
}

.usage-fill.warning[b-7ly5ecf7nx] {
    background: linear-gradient(90deg, #ffa726, #ffca28);
}

.usage-fill.full[b-7ly5ecf7nx] {
    background: linear-gradient(90deg, #ff7043, #ffa726);
}

.watchlist-upgrade-hint[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 10px;
    padding: 8px;
    background: rgba(255, 167, 38, 0.1);
    border: 1px solid rgba(255, 167, 38, 0.2);
    border-radius: var(--r-md);
    color: #ffa726;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease;
}

.watchlist-upgrade-hint:hover[b-7ly5ecf7nx] {
    background: rgba(255, 167, 38, 0.15);
    border-color: rgba(255, 167, 38, 0.3);
}

/* Add Symbol Section */
.watchlist-add-v2[b-7ly5ecf7nx] {
    margin-bottom: 12px;
}

.add-input-container[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(30, 40, 60, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-md);
    padding: 4px 4px 4px 12px;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease;
}

.add-input-container:focus-within[b-7ly5ecf7nx] {
    border-color: rgba(0, 205, 237, 0.4);
    background: rgba(30, 40, 60, 0.7);
}

.add-search-icon[b-7ly5ecf7nx] {
    color: var(--text-secondary, #8892b0);
    flex-shrink: 0;
    opacity: 0.6;
}

.add-symbol-input[b-7ly5ecf7nx] {
    flex: 1;
    background: transparent;
    border: none;
    color: var(--text-primary, #e6f1ff);
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    padding: 8px 0;
}

.add-symbol-input:focus[b-7ly5ecf7nx] {
    outline: none;
}

.add-symbol-input[b-7ly5ecf7nx]::placeholder {
    color: var(--text-secondary, #8892b0);
    text-transform: none;
    opacity: 0.6;
}

.add-symbol-input:disabled[b-7ly5ecf7nx] {
    opacity: 0.5;
    cursor: not-allowed;
}

.add-symbol-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: rgba(0, 205, 237, 0.15);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-md);
    color: var(--accent-primary, #00cded);
    cursor: pointer;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease, opacity var(--dur-med) ease;
    flex-shrink: 0;
}

.add-symbol-btn:hover:not(:disabled)[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.25);
    border-color: rgba(0, 205, 237, 0.5);
}

.add-symbol-btn:disabled[b-7ly5ecf7nx] {
    opacity: 0.4;
    cursor: not-allowed;
}

.add-error-msg[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    padding: 8px 10px;
    background: rgba(255, 82, 82, 0.1);
    border: 1px solid rgba(255, 82, 82, 0.2);
    border-radius: var(--r-md);
    color: var(--color-bearish, #ff5252);
    font-size: 11px;
}

/* Watchlist Items */
.watchlist-items-v2[b-7ly5ecf7nx] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.watchlist-loading-v2[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--text-secondary, #8892b0);
    font-size: 12px;
}

/* Empty State */
.watchlist-empty-v2[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 32px 16px;
    text-align: center;
}

.empty-icon-v2[b-7ly5ecf7nx] {
    font-size: 32px;
    opacity: 0.7;
}

.empty-title-v2[b-7ly5ecf7nx] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
}

.empty-hint-v2[b-7ly5ecf7nx] {
    font-size: 11px;
    color: var(--text-secondary, #8892b0);
    margin-bottom: 12px;
}

.empty-tips[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-align: left;
}

.tip-item[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    color: var(--text-secondary, #8892b0);
}

.tip-item svg[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
    flex-shrink: 0;
}

/* Watchlist Item */
.watchlist-item-v2[b-7ly5ecf7nx] {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 10px;
    background: rgba(30, 40, 60, 0.4);
    border: 1px solid rgba(100, 120, 150, 0.15);
    border-radius: var(--r-md);
    cursor: pointer;
    transition: background var(--dur-med) ease, border-color var(--dur-med) ease;
}

.watchlist-item-v2:hover[b-7ly5ecf7nx] {
    background: rgba(40, 50, 70, 0.6);
    border-color: rgba(0, 205, 237, 0.2);
}

.watchlist-item-v2.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.1);
    border-color: rgba(0, 205, 237, 0.3);
}

/* Logo as a faded watermark centred behind the row (keeps the row compact) */
.item-logo-bg[b-7ly5ecf7nx] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 44px;
    height: 44px;
    border-radius: var(--r-md);
    object-fit: contain;
    opacity: 0.14;
    pointer-events: none;
    user-select: none;
    transition: opacity var(--dur-med) ease;
}

.watchlist-item-v2:hover .item-logo-bg[b-7ly5ecf7nx],
.watchlist-item-v2.active .item-logo-bg[b-7ly5ecf7nx] {
    opacity: 0.24;
}

.item-logo-bg-placeholder[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 800;
    color: var(--accent-primary, #00cded);
}

.item-left[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    flex: 1;
    position: relative; /* sit above the watermark */
    z-index: 1;
}

.item-info[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

.item-ticker[b-7ly5ecf7nx] {
    font-size: 12px;
    font-weight: 700;
    color: var(--text-primary, #e6f1ff);
    letter-spacing: 0.3px;
    line-height: 1.35;
}

.watchlist-item-v2.active .item-ticker[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
}

.item-name[b-7ly5ecf7nx] {
    font-size: 9.5px;
    line-height: 1.3;
    color: var(--text-secondary, #8892b0);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-right[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0; /* the longer company name shrinks instead of the price */
    position: relative; /* sit above the watermark */
    z-index: 1;
}

/* Ticker with the day's % beside it */
.item-ticker-row[b-7ly5ecf7nx] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    min-width: 0;
}

.item-day-pct[b-7ly5ecf7nx] {
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.35;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* Live price over the day's $ change */
.item-price[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.item-last[b-7ly5ecf7nx] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: -0.3px;
    color: var(--text-bright, #ffffff);
    transition: color 0.3s ease;
}

.item-last.loading[b-7ly5ecf7nx] { color: var(--text-muted, #64748b); }

/* The last tick's direction (the price flash the card used to carry) */
.item-last.tick-up[b-7ly5ecf7nx] { color: var(--success-bright, #96f8bf); }
.item-last.tick-down[b-7ly5ecf7nx] { color: var(--error-bright, #ff7575); }

.item-closed[b-7ly5ecf7nx] {
    width: 10px;
    height: 10px;
    color: var(--text-muted, #64748b);
    flex-shrink: 0;
}

.item-day-amt[b-7ly5ecf7nx] {
    font-size: 9.5px;
    font-weight: 600;
    line-height: 1.3;
}

.item-day-pct.up[b-7ly5ecf7nx], .item-day-amt.up[b-7ly5ecf7nx] { color: var(--success-bright, #96f8bf); }
.item-day-pct.down[b-7ly5ecf7nx], .item-day-amt.down[b-7ly5ecf7nx] { color: var(--error-bright, #ff7575); }
.item-day-pct.flat[b-7ly5ecf7nx], .item-day-amt.flat[b-7ly5ecf7nx] { color: var(--text-muted, #64748b); }

.item-remove-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--r-md);
    color: var(--text-secondary, #8892b0);
    cursor: pointer;
    opacity: 0.5;
    transition: background var(--dur-med) ease, color var(--dur-med) ease, border-color var(--dur-med) ease, opacity var(--dur-med) ease;
}

.watchlist-item-v2:hover .item-remove-btn[b-7ly5ecf7nx] {
    opacity: 1;
}

.item-remove-btn:hover[b-7ly5ecf7nx] {
    background: rgba(255, 82, 82, 0.15);
    border-color: rgba(255, 82, 82, 0.3);
    color: var(--color-bearish, #ff5252);
}

/* Footer */
.watchlist-footer-v2[b-7ly5ecf7nx] {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid rgba(100, 120, 150, 0.15);
    text-align: center;
}

.footer-tip[b-7ly5ecf7nx] {
    font-size: 10px;
    color: var(--text-secondary, #8892b0);
    opacity: 0.7;
}

/* ===== OPTIONS CHAIN STYLES ===== */

/* Upgrade Button - Fancy Animation */

/* Options Empty State */

/* Expiration Selector */

/* Expected Move Banner */

/* Options Chain Table Container */

/* Options Chain Table */

/* Options Footer */

/* ===== NEWS TAB STYLES ===== */

/* Notification badge on tab */
.sidebar-tab.has-notification[b-7ly5ecf7nx] {
    position: relative;
}

.notification-badge[b-7ly5ecf7nx] {
    position: absolute;
    top: 2px;
    right: 2px;
    min-width: 14px;
    height: 14px;
    padding: 0 3px;
    background: var(--accent-danger, #ef4444);
    color: white;
    font-size: 9px;
    font-weight: 600;
    border-radius: var(--r-md);
    display: flex;
    align-items: center;
    justify-content: center;
    animation: pulse-badge-b-7ly5ecf7nx 2s infinite;
}

@keyframes pulse-badge-b-7ly5ecf7nx {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.1); opacity: 0.9; }
}

/* News container */
.news-container[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 8px;
}

.news-header[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 4px;
    margin-bottom: 8px;
    border-bottom: 1px solid rgba(100, 120, 150, 0.15);
}

.news-title[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    font-weight: 600;
    color: var(--text-primary, #e6f1ff);
}

.news-mark-read-btn[b-7ly5ecf7nx] {
    padding: 4px 8px;
    background: rgba(0, 205, 237, 0.1);
    border: 1px solid rgba(0, 205, 237, 0.3);
    border-radius: var(--r-sm);
    color: var(--accent-primary, #00cded);
    cursor: pointer;
    transition: background var(--dur-fast);
}

.news-mark-read-btn:hover[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.2);
}

/* News list */
.news-list[b-7ly5ecf7nx] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.news-item[b-7ly5ecf7nx] {
    padding: 10px;
    background: rgba(20, 25, 35, 0.6);
    border: 1px solid rgba(100, 120, 150, 0.15);
    border-radius: var(--r-md);
    cursor: pointer;
    transition: background var(--dur-fast), border-color var(--dur-fast);
}

.news-item:hover[b-7ly5ecf7nx] {
    background: rgba(30, 40, 55, 0.8);
    border-color: rgba(0, 205, 237, 0.3);
}

.news-item.unread[b-7ly5ecf7nx] {
    border-left: 3px solid var(--accent-primary, #00cded);
    background: rgba(0, 205, 237, 0.05);
}

.news-item-header[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
}

.news-source[b-7ly5ecf7nx] {
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--accent-primary, #00cded);
    letter-spacing: 0.5px;
}

.news-direction-icon[b-7ly5ecf7nx] {
    font-size: 12px;
    line-height: 1;
    margin-left: 4px;
    flex-shrink: 0;
}

.news-time[b-7ly5ecf7nx] {
    font-size: 9px;
    color: var(--text-muted, #637897);
    margin-left: auto;
}

.news-headline[b-7ly5ecf7nx] {
    font-size: 11px;
    font-weight: 500;
    color: var(--text-primary, #e6f1ff);
    line-height: 1.4;
    margin-bottom: 4px;
}

/* News empty state */
.news-empty-state[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 30px;
    color: var(--text-muted, #637897);
    text-align: center;
}

.news-empty-state span[b-7ly5ecf7nx] {
    font-size: 12px;
}

/* News loading */
.news-loading[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 30px;
    color: var(--text-muted, #637897);
}

.news-loading span[b-7ly5ecf7nx] {
    font-size: 11px;
}

/* News footer */
.news-footer[b-7ly5ecf7nx] {
    padding-top: 8px;
    margin-top: 8px;
    border-top: 1px solid rgba(100, 120, 150, 0.15);
}

.news-refresh-btn[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    padding: 6px 10px;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-radius: var(--r-sm);
    color: var(--text-secondary, #8892b0);
    font-size: 11px;
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast);
}

.news-refresh-btn:hover:not(:disabled)[b-7ly5ecf7nx] {
    background: rgba(50, 65, 85, 0.5);
    color: var(--text-primary, #e6f1ff);
}

.news-refresh-btn:disabled[b-7ly5ecf7nx] {
    opacity: 0.5;
    cursor: not-allowed;
}

.loading-spinner[b-7ly5ecf7nx] {
    width: 32px;
    height: 32px;
    border: 3px solid rgba(0, 205, 237, 0.2);
    border-top-color: var(--accent-primary, #00cded);
    border-radius: 50%;
    animation: spin-b-7ly5ecf7nx 1s linear infinite;
}

@keyframes spin-b-7ly5ecf7nx {
    to { transform: rotate(360deg); }
}

/* ===== PRINT MEDIA QUERY (hide sidebar) ===== */
@media print {
    .chart-sidebar[b-7ly5ecf7nx] {
        display: none;
    }
    
    .chart-toolbar.compact[b-7ly5ecf7nx] {
        display: none;
    }
    
    .chart-main-area[b-7ly5ecf7nx] {
        flex: 1;
        border: none;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════════
   REVERSAL MARKERS - Diamond markers with tiered styling
   Standard: subtle | Strong (≥70%): brighter | Elite (≥80% + 3 confirms): glow
   ═══════════════════════════════════════════════════════════════════════════════ */

.reversal-marker[b-7ly5ecf7nx] {
    position: absolute;
    pointer-events: auto;
    cursor: pointer;
    transform: translate(-50%, -50%) rotate(45deg);
    transition: transform var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), opacity var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1), box-shadow var(--dur-med) cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 10;
}

/* Bullish markers (vibrant emerald) */
.reversal-marker.bullish[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, #34d399 0%, #10b981 50%, #059669 100%);
    border: 1.5px solid rgba(52, 211, 153, 0.8);
}

/* Bearish markers (vibrant red) */
.reversal-marker.bearish[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, #f87171 0%, #ef4444 50%, #dc2626 100%);
    border: 1.5px solid rgba(252, 165, 165, 0.8);
}

/* ===== TIER: Standard (default) ===== */
.reversal-marker.tier-standard[b-7ly5ecf7nx] {
    width: 9px;
    height: 9px;
    opacity: 0.85;
}

.reversal-marker.tier-standard.bullish[b-7ly5ecf7nx] {
    box-shadow: 0 0 4px rgba(16, 185, 129, 0.5), 0 0 8px rgba(16, 185, 129, 0.2);
}

.reversal-marker.tier-standard.bearish[b-7ly5ecf7nx] {
    box-shadow: 0 0 4px rgba(239, 68, 68, 0.5), 0 0 8px rgba(239, 68, 68, 0.2);
}

.reversal-marker.tier-standard:hover[b-7ly5ecf7nx] {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(45deg) scale(1.4);
}

/* ===== TIER: Strong (≥70% confidence) ===== */
.reversal-marker.tier-strong[b-7ly5ecf7nx] {
    width: 11px;
    height: 11px;
    opacity: 0.95;
}

.reversal-marker.tier-strong.bullish[b-7ly5ecf7nx] {
    box-shadow: 0 0 8px rgba(16, 185, 129, 0.6), 0 0 16px rgba(16, 185, 129, 0.3), 0 0 24px rgba(16, 185, 129, 0.1);
}

.reversal-marker.tier-strong.bearish[b-7ly5ecf7nx] {
    box-shadow: 0 0 8px rgba(239, 68, 68, 0.6), 0 0 16px rgba(239, 68, 68, 0.3), 0 0 24px rgba(239, 68, 68, 0.1);
}

.reversal-marker.tier-strong:hover[b-7ly5ecf7nx] {
    opacity: 1;
    transform: translate(-50%, -50%) rotate(45deg) scale(1.5);
}

.reversal-marker.tier-strong.bullish:hover[b-7ly5ecf7nx] {
    box-shadow: 0 0 12px rgba(16, 185, 129, 0.8), 0 0 24px rgba(16, 185, 129, 0.5), 0 0 36px rgba(16, 185, 129, 0.3);
}

.reversal-marker.tier-strong.bearish:hover[b-7ly5ecf7nx] {
    box-shadow: 0 0 12px rgba(239, 68, 68, 0.8), 0 0 24px rgba(239, 68, 68, 0.5), 0 0 36px rgba(239, 68, 68, 0.3);
}

/* ===== TIER: Elite (≥80% + 3 confirmations) - Maximum WOW factor ===== */
.reversal-marker.tier-elite[b-7ly5ecf7nx] {
    width: 13px;
    height: 13px;
    opacity: 1;
    animation: reversal-elite-shimmer-b-7ly5ecf7nx 3s ease-in-out infinite;
}

.reversal-marker.tier-elite.bullish[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, #6ee7b7 0%, #34d399 30%, #10b981 60%, #059669 100%);
    border: 2px solid rgba(110, 231, 183, 0.9);
    box-shadow:
        0 0 12px rgba(16, 185, 129, 0.8),
        0 0 24px rgba(16, 185, 129, 0.5),
        0 0 36px rgba(16, 185, 129, 0.3),
        inset 0 0 4px rgba(255, 255, 255, 0.3);
}

.reversal-marker.tier-elite.bearish[b-7ly5ecf7nx] {
    background: linear-gradient(135deg, #fca5a5 0%, #f87171 30%, #ef4444 60%, #dc2626 100%);
    border: 2px solid rgba(252, 165, 165, 0.9);
    box-shadow:
        0 0 12px rgba(239, 68, 68, 0.8),
        0 0 24px rgba(239, 68, 68, 0.5),
        0 0 36px rgba(239, 68, 68, 0.3),
        inset 0 0 4px rgba(255, 255, 255, 0.3);
}

.reversal-marker.tier-elite:hover[b-7ly5ecf7nx] {
    transform: translate(-50%, -50%) rotate(45deg) scale(1.6);
    animation: none;
}

.reversal-marker.tier-elite.bullish:hover[b-7ly5ecf7nx] {
    box-shadow:
        0 0 16px rgba(16, 185, 129, 1),
        0 0 32px rgba(16, 185, 129, 0.7),
        0 0 48px rgba(16, 185, 129, 0.4),
        0 0 64px rgba(16, 185, 129, 0.2),
        inset 0 0 6px rgba(255, 255, 255, 0.4);
}

.reversal-marker.tier-elite.bearish:hover[b-7ly5ecf7nx] {
    box-shadow:
        0 0 16px rgba(239, 68, 68, 1),
        0 0 32px rgba(239, 68, 68, 0.7),
        0 0 48px rgba(239, 68, 68, 0.4),
        0 0 64px rgba(239, 68, 68, 0.2),
        inset 0 0 6px rgba(255, 255, 255, 0.4);
}

/* ===== Elite shimmer animation ===== */
@keyframes reversal-elite-shimmer-b-7ly5ecf7nx {
    0%, 100% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1);
        filter: brightness(1);
    }
    25% {
        filter: brightness(1.15);
    }
    50% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1.1);
        filter: brightness(1.25);
    }
    75% {
        filter: brightness(1.15);
    }
}

/* ===== Latest marker pulse animation ===== */
.reversal-marker.latest[b-7ly5ecf7nx] {
    animation: reversal-pulse-b-7ly5ecf7nx 2s ease-in-out infinite;
}

@keyframes reversal-pulse-b-7ly5ecf7nx {
    0%, 100% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1);
        filter: brightness(1);
    }
    50% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1.25);
        filter: brightness(1.2);
    }
}

.reversal-marker.tier-elite.latest[b-7ly5ecf7nx] {
    animation: reversal-elite-pulse-b-7ly5ecf7nx 2s ease-in-out infinite;
}

@keyframes reversal-elite-pulse-b-7ly5ecf7nx {
    0%, 100% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1);
        filter: brightness(1) drop-shadow(0 0 6px currentColor);
    }
    50% {
        transform: translate(-50%, -50%) rotate(45deg) scale(1.2);
        filter: brightness(1.3) drop-shadow(0 0 12px currentColor);
    }
}

/* ===== Reversal marker tooltip ===== */

/* ── On-chart MTF reversal ladder overlay (single-chart layout) ── */
.mtf-overlay[b-7ly5ecf7nx] {
    position: absolute;
    top: 10px;
    right: 64px; /* clear the price scale on the right edge */
    z-index: 5;
    width: 134px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 8px 10px;
    background: rgba(10, 15, 26, 0.82);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--r-lg);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
    cursor: pointer;
    transition: transform var(--dur-fast) ease, border-color var(--dur-fast) ease;
}
.mtf-overlay:hover[b-7ly5ecf7nx] { transform: translateY(-1px); border-color: rgba(255, 255, 255, 0.24); }
.mtf-overlay-head[b-7ly5ecf7nx] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 2px; }
.mtf-overlay-title[b-7ly5ecf7nx] { font-size: 10px; font-weight: 800; letter-spacing: 0.12em; color: #9ca3af; }
.mtf-overlay-bias[b-7ly5ecf7nx] { font-size: 9px; font-weight: 800; letter-spacing: 0.03em; padding: 1px 6px; border-radius: 999px; text-transform: uppercase; }
.mtf-overlay-bias.mtf-bullish[b-7ly5ecf7nx], .mtf-overlay-bias.mtf-lean-bullish[b-7ly5ecf7nx] { color: #34d399; background: rgba(16, 185, 129, 0.16); }
.mtf-overlay-bias.mtf-bearish[b-7ly5ecf7nx], .mtf-overlay-bias.mtf-lean-bearish[b-7ly5ecf7nx] { color: #f87171; background: rgba(239, 68, 68, 0.16); }
.mtf-overlay-bias.mtf-conflicting[b-7ly5ecf7nx] { color: #fbbf24; background: rgba(245, 158, 11, 0.16); }
.mtf-overlay-bias.mtf-weak[b-7ly5ecf7nx], .mtf-overlay-bias.mtf-neutral[b-7ly5ecf7nx] { color: #9ca3af; background: rgba(156, 163, 175, 0.12); }
.mtf-rung[b-7ly5ecf7nx] { display: grid; grid-template-columns: 26px 1fr; align-items: center; gap: 6px; }
.mtf-rung-tf[b-7ly5ecf7nx] { font-size: 10px; font-weight: 700; color: #9ca3af; font-family: 'SF Mono', Monaco, Consolas, monospace; }
.mtf-rung-bar[b-7ly5ecf7nx] { height: 5px; border-radius: 999px; background: rgba(255, 255, 255, 0.08); overflow: hidden; }
.mtf-rung-fill[b-7ly5ecf7nx] { height: 100%; border-radius: 999px; transition: width 0.6s ease; }
.mtf-rung.up .mtf-rung-fill[b-7ly5ecf7nx] { background: linear-gradient(90deg, #10b981, #34d399); }
.mtf-rung.down .mtf-rung-fill[b-7ly5ecf7nx] { background: linear-gradient(90deg, #ef4444, #f87171); }
.mtf-rung.flat .mtf-rung-fill[b-7ly5ecf7nx] { background: rgba(156, 163, 175, 0.5); }
@media (prefers-reduced-motion: reduce) { .mtf-rung-fill[b-7ly5ecf7nx] { transition: none; } }

/* ── Per-indicator multi-timeframe expansion (Indicators tab) ── */
.mini-indicator-row.expandable[b-7ly5ecf7nx] { cursor: pointer; }
.mini-indicator-row.expandable:hover[b-7ly5ecf7nx] { background: rgba(255, 255, 255, 0.03); }
.mini-indicator-row.row-expanded[b-7ly5ecf7nx] { background: rgba(96, 165, 250, 0.08); }

.mtf-tf-dropdown[b-7ly5ecf7nx] {
    margin: 2px 6px 8px;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: var(--r-md);
    background: rgba(0, 0, 0, 0.25);
    display: flex;
    flex-direction: column;
    gap: 2px;
    animation: tf-drop-in-b-7ly5ecf7nx 0.15s ease;
}
@keyframes tf-drop-in-b-7ly5ecf7nx { from { opacity: 0; transform: translateY(-3px); } to { opacity: 1; transform: none; } }

.tf-ind-row[b-7ly5ecf7nx] {
    display: grid;
    grid-template-columns: 38px 1fr auto;
    align-items: center;
    gap: 8px;
    padding: 4px 8px;
    border-radius: var(--r-md);
    font-size: 11px;
}
.tf-ind-row.current[b-7ly5ecf7nx] { background: rgba(96, 165, 250, 0.12); }
.tf-ind-tf[b-7ly5ecf7nx] { font-family: 'SF Mono', Monaco, Consolas, monospace; font-weight: 700; color: #9ca3af; font-size: 10px; }
.tf-ind-val[b-7ly5ecf7nx] { font-family: 'SF Mono', Monaco, Consolas, monospace; font-weight: 700; color: #f9fafb; }
.tf-ind-sig[b-7ly5ecf7nx] { font-size: 10px; font-weight: 700; letter-spacing: 0.02em; }
.tf-ind-sig.bullish[b-7ly5ecf7nx] { color: #34d399; }
.tf-ind-sig.bearish[b-7ly5ecf7nx] { color: #f87171; }
.tf-ind-sig.neutral[b-7ly5ecf7nx] { color: #9ca3af; }
.tf-ind-empty[b-7ly5ecf7nx] { font-size: 11px; color: #6b7280; padding: 4px 8px; }

/* ── Softer directional "lean" states (display only) ── */
.mini-ind-signal.lean-bullish[b-7ly5ecf7nx] { color: #6ee7b7; }
.mini-ind-signal.lean-bearish[b-7ly5ecf7nx] { color: #fca5a5; }
.mini-ind-marker.lean-bullish[b-7ly5ecf7nx] { background: #6ee7b7; box-shadow: 0 0 6px rgba(110, 231, 183, 0.5); }
.mini-ind-marker.lean-bearish[b-7ly5ecf7nx] { background: #fca5a5; box-shadow: 0 0 6px rgba(252, 165, 165, 0.5); }
.tf-ind-sig.lean-bullish[b-7ly5ecf7nx] { color: #6ee7b7; }
.tf-ind-sig.lean-bearish[b-7ly5ecf7nx] { color: #fca5a5; }

/* ── Design tokens (page-scoped: earnings.css :root overrides --accent-primary
      globally and app.css defines --text-muted differently, so scoping here
      keeps the chart palette self-consistent without touching other pages) ── */
.chart-lw-viewport[b-7ly5ecf7nx] {
    --accent-primary: #00cded;
    --color-bullish: #00e676;
    --color-bearish: #ff5252;
    --color-warning: #ffb300;
    --chart-bg: #0a0e17;
    --text-muted: #8892b0;

    /* Radius scale: small controls / cards / large surfaces / pills.
       Also defined in app.css :root so the modals that render outside
       this viewport (pattern/news/indicator-select) resolve the same values. */
    --r-sm: 4px;
    --r-md: 8px;
    --r-lg: 12px;
    --r-pill: 999px;

    /* Transition durations */
    --dur-fast: 0.15s;
    --dur-med: 0.25s;
}

/* ── Shared keyboard focus ring ── */
.tf-btn:focus-visible[b-7ly5ecf7nx],
.ind-btn:focus-visible[b-7ly5ecf7nx],
.draw-btn:focus-visible[b-7ly5ecf7nx],
.tool-btn:focus-visible[b-7ly5ecf7nx],
.sidebar-tab:focus-visible[b-7ly5ecf7nx],
.dots-mode-btn:focus-visible[b-7ly5ecf7nx],
.pattern-icon-btn:focus-visible[b-7ly5ecf7nx],
.grid-option:focus-visible[b-7ly5ecf7nx],
.symbol-option:focus-visible[b-7ly5ecf7nx] {
    outline: 2px solid rgba(0, 205, 237, 0.55);
    outline-offset: 1px;
}

/* ── Consolidated reduced-motion guards for infinite / one-shot animations ── */
@media (prefers-reduced-motion: reduce) {
    .signal-pulse-sm[b-7ly5ecf7nx]::before,
    .signal-pill-sm.live[b-7ly5ecf7nx],
    .signal-pill-sm.live.mtf-bullish[b-7ly5ecf7nx],
    .signal-pill-sm.live.mtf-lean-bullish[b-7ly5ecf7nx],
    .signal-pill-sm.live.mtf-bearish[b-7ly5ecf7nx],
    .signal-pill-sm.live.mtf-lean-bearish[b-7ly5ecf7nx],
    .notification-badge[b-7ly5ecf7nx],
    .reversal-marker.latest[b-7ly5ecf7nx],
    .reversal-marker.tier-elite[b-7ly5ecf7nx],
    .reversal-marker.tier-elite.latest[b-7ly5ecf7nx],
    .mtf-tf-dropdown[b-7ly5ecf7nx],
    .sidebar-tab-panel.active[b-7ly5ecf7nx],
    .extended-indicators-section[b-7ly5ecf7nx],
    .symbol-dropdown[b-7ly5ecf7nx],
    .grid-dropdown[b-7ly5ecf7nx],
    .mini-ind-signal.bullish[b-7ly5ecf7nx],
    .mini-ind-signal.bearish[b-7ly5ecf7nx],
    .mini-ind-signal.lean-bullish[b-7ly5ecf7nx],
    .mini-ind-signal.lean-bearish[b-7ly5ecf7nx] {
        animation: none;
    }

    .mini-ind-marker[b-7ly5ecf7nx] { transition: none; }
    .tf-btn:active[b-7ly5ecf7nx] { transform: none; }
}

/* ═══════════════════════════════════════════════════════════
   MOBILE APP SHELL (<= 900px)
   The chart viewport is position:fixed, so it must be told about
   the bottom tab bar and the iOS safe areas explicitly.
   ═══════════════════════════════════════════════════════════ */
@media screen and (max-width: 900px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-lw-viewport[b-7ly5ecf7nx] {
        top: calc(var(--header-height, 52px) + env(safe-area-inset-top, 0px));
        bottom: calc(56px + env(safe-area-inset-bottom, 0px));
    }

    .chart-main-area[b-7ly5ecf7nx] {
        height: 100%;
        min-height: auto;
        border-right: none;
        border-bottom: none;
    }

    /* Watchlist has its own tab in the app's bottom bar */
    .sidebar-tab.tab-watchlist[b-7ly5ecf7nx] {
        display: none;
    }

    /* Search/add-symbol sheets: full width, above the tab bar */
    /* .cell-search-modal is the full-screen backdrop - size the sheet inside it,
       and anchor near the top so the on-screen keyboard does not cover the input. */
    .cell-search-modal[b-7ly5ecf7nx] {
        align-items: flex-start;
        padding-top: 14vh;
    }

    .cell-search-content[b-7ly5ecf7nx] {
        width: 92vw;
        max-width: 92vw;
    }

    .cell-search-input[b-7ly5ecf7nx] {
        font-size: 16px; /* stop iOS zooming when the search sheet opens */
    }

    /* Chat input must not sit under the tab bar */
    .chat-input-area[b-7ly5ecf7nx] {
        padding-bottom: 8px;
    }
}

/* The global mobile touch-target minimum would inflate the chart toolbar;
   this page already sizes its own controls in the (hover: none) block. */
@media screen and (max-width: 900px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-lw-viewport button[b-7ly5ecf7nx],
    .chart-lw-viewport select[b-7ly5ecf7nx] {
        min-height: 0;
    }
}

/* ═══════════════════════════════════════════════════════════
   MTF ON-CHART LADDER - COLLAPSIBLE
   The head is the toggle; the ladder below still opens the MTF tab.
   ═══════════════════════════════════════════════════════════ */
.mtf-overlay-head[b-7ly5ecf7nx] {
    gap: 6px;
    cursor: pointer;
    user-select: none;
}

.mtf-overlay-caret[b-7ly5ecf7nx] {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    color: #9ca3af;
    opacity: 0.7;
    transition: transform 160ms ease;
}

.mtf-overlay.collapsed .mtf-overlay-caret[b-7ly5ecf7nx] {
    transform: rotate(-90deg);
}

.mtf-overlay.collapsed[b-7ly5ecf7nx] {
    width: auto;
    gap: 0;
    padding: 6px 8px;
}

.mtf-overlay.collapsed .mtf-overlay-head[b-7ly5ecf7nx] {
    margin-bottom: 0;
}

.mtf-rungs[b-7ly5ecf7nx] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

/* Phone-only pieces (the ticker chip, the top-bar buttons, the Insights handle, the sheets' chrome and
   labels) are hidden on desktop; the MOBILE CHARTS section at the end of this file shows them. */
.mobile-ticker[b-7ly5ecf7nx],
.mobile-tools-btn[b-7ly5ecf7nx],
.mobile-insights-btn[b-7ly5ecf7nx],
.insights-peek[b-7ly5ecf7nx],
.chart-sheet-backdrop[b-7ly5ecf7nx],
.sheet-grabber[b-7ly5ecf7nx],
.sheet-head[b-7ly5ecf7nx],
.sheet-close[b-7ly5ecf7nx],
.sheet-label[b-7ly5ecf7nx],
.sheet-only[b-7ly5ecf7nx],
.tab-chip-label[b-7ly5ecf7nx],
.sheet-chip[b-7ly5ecf7nx],
.draw-grid[b-7ly5ecf7nx],
.sheet-attrib[b-7ly5ecf7nx],
.evt-chip[b-7ly5ecf7nx] {
    display: none;
}

/* Desktop: the tools wrappers are transparent, so the toolbar is one flex row as before. Markup order puts
   the timeframes right after the symbol (the phone top bar keeps them); `order` puts them back after Share. */
.chart-tools-sheet[b-7ly5ecf7nx],
.chart-tools-sheet > .sheet-body[b-7ly5ecf7nx],
.chart-tools-sheet .tools-a[b-7ly5ecf7nx],
.chart-tools-sheet .tools-b[b-7ly5ecf7nx] {
    display: contents;
}

/* (The Layouts / Share / Compare menus are child components: their roots carry their own scope, hence ::deep) */
.chart-toolbar.compact .tools-a > *[b-7ly5ecf7nx],
.chart-toolbar.compact .tools-b > *[b-7ly5ecf7nx],
.chart-toolbar.compact .tools-a[b-7ly5ecf7nx]  .lay-wrap,
.chart-toolbar.compact .tools-a[b-7ly5ecf7nx]  .shr-wrap,
.chart-toolbar.compact .tools-b[b-7ly5ecf7nx]  .cmp-wrap {
    flex-shrink: 0;
}

@media screen and (min-width: 901px) and (pointer: fine), screen and (min-width: 901px) and (pointer: none), screen and (min-width: 901px) and (orientation: portrait), screen and (min-width: 901px) and (min-height: 501px) {
    .chart-toolbar.compact .tools-a > *[b-7ly5ecf7nx],
    .chart-toolbar.compact .tools-a[b-7ly5ecf7nx]  .lay-wrap,
    .chart-toolbar.compact .tools-a[b-7ly5ecf7nx]  .shr-wrap { order: 1; }
    .chart-toolbar.compact > .tf-section[b-7ly5ecf7nx] { order: 2; }
    .chart-toolbar.compact .tools-b > *[b-7ly5ecf7nx],
    .chart-toolbar.compact .tools-b[b-7ly5ecf7nx]  .cmp-wrap { order: 3; }
    .chart-toolbar.compact > .toolbar-spacer[b-7ly5ecf7nx] { order: 4; }
    .chart-toolbar.compact > .lw-badge[b-7ly5ecf7nx] { order: 5; }
}

/* ===== Drawing tool groups (flyouts) ===== */
.draw-group[b-7ly5ecf7nx] {
    position: relative;
    display: flex;
    align-items: center;
}

.draw-group .draw-btn[b-7ly5ecf7nx] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.draw-group .draw-btn:only-child[b-7ly5ecf7nx] {
    border-radius: var(--r-sm);
}

.draw-caret[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 12px;
    height: 26px;
    padding: 0;
    background: rgba(30, 40, 55, 0.5);
    border: 1px solid rgba(100, 120, 150, 0.2);
    border-left: none;
    border-radius: 0 var(--r-sm) var(--r-sm) 0;
    color: rgba(136, 146, 176, 0.6);
    cursor: pointer;
}

.draw-caret:hover[b-7ly5ecf7nx],
.draw-group.open .draw-caret[b-7ly5ecf7nx] {
    background: rgba(50, 65, 85, 0.6);
    color: var(--text-primary, #e6f1ff);
}

.draw-flyout[b-7ly5ecf7nx] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    z-index: 1002;
    min-width: 210px;
    padding: 5px;
    background: linear-gradient(180deg, rgba(20, 26, 40, 0.99), rgba(12, 16, 26, 0.99));
    border: 1px solid rgba(120, 135, 160, 0.18);
    border-radius: var(--r-lg, 10px);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(0, 0, 0, 0.3);
    animation: ind-drop-in-b-7ly5ecf7nx 0.14s cubic-bezier(0.22, 1, 0.36, 1);
}

.draw-flyout-title[b-7ly5ecf7nx] {
    padding: 4px 8px 6px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: rgba(136, 146, 176, 0.7);
}

.draw-flyout-item[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 7px 8px;
    background: none;
    border: none;
    border-radius: var(--r-md, 6px);
    color: var(--text-primary, #e6f1ff);
    font-size: 12.5px;
    text-align: left;
    cursor: pointer;
}

.draw-flyout-item:hover[b-7ly5ecf7nx] {
    background: rgba(255, 255, 255, 0.05);
}

.draw-flyout-item.active[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.12);
    color: var(--accent-primary, #00cded);
}

.dfi-icon[b-7ly5ecf7nx] {
    display: flex;
    color: rgba(136, 146, 176, 0.9);
}

.draw-flyout-item.active .dfi-icon[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
}

.dfi-title[b-7ly5ecf7nx] {
    flex: 1;
}

.draw-flyout-item kbd[b-7ly5ecf7nx] {
    min-width: 18px;
    padding: 1px 5px;
    font: 600 10px Inter, sans-serif;
    text-align: center;
    color: rgba(136, 146, 176, 0.85);
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

.draw-flyout-backdrop[b-7ly5ecf7nx] {
    position: fixed;
    inset: 0;
    z-index: 1001;
}

.draw-sep[b-7ly5ecf7nx] {
    width: 1px;
    height: 18px;
    margin: 0 3px;
    background: rgba(100, 120, 150, 0.25);
}

.draw-btn.toggle.on[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.12);
    border-color: rgba(0, 205, 237, 0.4);
    color: var(--accent-primary, #00cded);
}

@media (prefers-reduced-motion: reduce) {
    .draw-flyout[b-7ly5ecf7nx] { animation: none; }
}

/* ===== Plan locks (free account): locked controls stay visible, open the upgrade prompt ===== */
.lock-ico[b-7ly5ecf7nx] { display: inline-flex; margin-left: 3px; vertical-align: -1px; color: #a78bfa; flex-shrink: 0; }
.tf-btn.locked[b-7ly5ecf7nx],
.grid-option.locked[b-7ly5ecf7nx],
.draw-btn.locked[b-7ly5ecf7nx],
.pattern-icon-btn.locked[b-7ly5ecf7nx] { opacity: 0.5; }
.tf-btn.locked:hover[b-7ly5ecf7nx],
.grid-option.locked:hover[b-7ly5ecf7nx],
.draw-btn.locked:hover[b-7ly5ecf7nx],
.pattern-icon-btn.locked:hover[b-7ly5ecf7nx] { opacity: 0.8; }
.grid-option.locked[b-7ly5ecf7nx] { position: relative; }
.grid-option.locked .lock-ico[b-7ly5ecf7nx] { position: absolute; right: 1px; bottom: 1px; margin: 0; }
.ind-opt.locked[b-7ly5ecf7nx] { opacity: 0.6; cursor: pointer; }
.ind-opt.locked input[type="checkbox"][b-7ly5ecf7nx] { pointer-events: none; }
.opt-badge.pro[b-7ly5ecf7nx] { background: rgba(139, 92, 246, 0.22); color: #c4b5fd; }
.draw-lock[b-7ly5ecf7nx] { display: inline-flex; align-items: center; margin-right: 2px; cursor: pointer; }
.signal-pill-sm.locked[b-7ly5ecf7nx] { cursor: pointer; opacity: 0.75; border-style: dashed; gap: 3px; }
.mtf-overlay.teaser[b-7ly5ecf7nx] { padding: 0; background: transparent; border: none; box-shadow: none; }
.mtf-locked[b-7ly5ecf7nx] { padding: 12px; }
.upgrade-modal[b-7ly5ecf7nx] {
    width: min(460px, calc(100vw - 32px));
    background: var(--bg-card, #111a2e);
    border: 1px solid var(--border-color, rgba(255, 255, 255, 0.08));
    border-radius: 14px;
    padding: 6px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}

/* ===== Chart style / price scale / canvas dropdown (R3B) ===== */
.style-btn[b-7ly5ecf7nx] { padding-left: 9px; }
.style-btn .style-glyph[b-7ly5ecf7nx],
.style-btn-mobile .style-glyph[b-7ly5ecf7nx] {
    display: inline-flex;
    width: 15px;
    height: 15px;
    margin-right: 4px;
    color: var(--accent-primary, #00cded);
}
.style-btn .pill-label[b-7ly5ecf7nx] { text-transform: none; letter-spacing: 0.2px; font-size: 11px; }

.style-dropdown[b-7ly5ecf7nx] { min-width: 200px; padding: 6px; }

.style-group-title[b-7ly5ecf7nx] {
    padding: 4px 8px 2px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(136, 146, 176, 0.7);
}

.style-opt[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    padding: 6px 8px;
    background: transparent;
    border: 1px solid transparent;
    border-radius: var(--r-md);
    color: rgba(200, 210, 230, 0.9);
    font-size: 12px;
    text-align: left;
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);
}
.style-opt:hover[b-7ly5ecf7nx] { background: rgba(255, 255, 255, 0.05); color: var(--text-primary, #e6f1ff); }
.style-opt.selected[b-7ly5ecf7nx] {
    background: rgba(0, 205, 237, 0.12);
    border-color: rgba(0, 205, 237, 0.3);
    color: var(--accent-primary, #00cded);
}
.style-opt .style-glyph[b-7ly5ecf7nx] { display: inline-flex; width: 16px; height: 16px; opacity: 0.85; }
.style-opt .style-check[b-7ly5ecf7nx] { margin-left: auto; font-size: 11px; opacity: 0; }
.style-opt.selected .style-check[b-7ly5ecf7nx] { opacity: 1; }

.style-seg[b-7ly5ecf7nx] { display: flex; gap: 3px; padding: 2px 6px 6px; }
.style-seg-btn[b-7ly5ecf7nx] {
    flex: 1;
    padding: 5px 0;
    background: rgba(50, 65, 85, 0.35);
    border: 1px solid transparent;
    border-radius: var(--r-sm);
    color: rgba(165, 178, 205, 0.85);
    font-size: 11px;
    font-weight: 600;
    cursor: pointer;
    transition: background var(--dur-fast), color var(--dur-fast), border-color var(--dur-fast);
}
.style-seg-btn:hover[b-7ly5ecf7nx] { background: rgba(50, 65, 85, 0.6); color: var(--text-primary, #e6f1ff); }
.style-seg-btn.selected[b-7ly5ecf7nx] {
    color: var(--accent-primary, #00cded);
    background: rgba(0, 205, 237, 0.15);
    border-color: rgba(0, 205, 237, 0.35);
}
.style-hint[b-7ly5ecf7nx] { padding: 0 8px 6px; font-size: 9px; line-height: 1.3; color: rgba(136, 146, 176, 0.6); }

/* ===== Light chart canvas (R3B): the cell's chrome follows the chart's white canvas.
   Only the chart cell; the page stays dark. ===== */
.chart-cell.canvas-light[b-7ly5ecf7nx] { background: #ffffff; }
.chart-cell.canvas-light[b-7ly5ecf7nx]  .lightweight-chart-container { --chart-bg: #ffffff; }
.chart-cell.canvas-light[b-7ly5ecf7nx]  .chart-loading-overlay { background: rgba(255, 255, 255, 0.6); }
.chart-cell.canvas-light[b-7ly5ecf7nx]  .chart-loading-overlay span { color: #555; }
.chart-cell.canvas-light .chart-symbol-overlay[b-7ly5ecf7nx] {
    background: rgba(255, 255, 255, 0.88);
    color: #333;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}
.chart-cell.canvas-light .cell-symbol-badge-mini[b-7ly5ecf7nx] { color: #1f2937; }
.chart-cell.canvas-light .inline-ohlc .ohlc-i[b-7ly5ecf7nx] { color: #6b7280; }
.chart-cell.canvas-light .inline-ohlc .ohlc-v[b-7ly5ecf7nx] { color: #1f2937; }
.chart-cell.canvas-light .inline-ohlc .ohlc-v.h[b-7ly5ecf7nx] { color: #059669; }
.chart-cell.canvas-light .inline-ohlc .ohlc-v.l[b-7ly5ecf7nx] { color: #dc2626; }
.chart-cell.canvas-light .inline-ohlc .ohlc-i.vol[b-7ly5ecf7nx],
.chart-cell.canvas-light .inline-ohlc .ohlc-v.vol[b-7ly5ecf7nx] { color: #7c3aed; }
.chart-cell.canvas-light .ind-row .ind-label[b-7ly5ecf7nx] { color: #6b7280; }
.chart-cell.canvas-light .ind-row .ind-value[b-7ly5ecf7nx] { color: #1f2937; }
.chart-cell.canvas-light .chart-loading[b-7ly5ecf7nx],
.chart-cell.canvas-light .loading-indicators[b-7ly5ecf7nx] { color: #666; }
.chart-cell.canvas-light .chart-skeleton[b-7ly5ecf7nx] { background: linear-gradient(180deg, #f6f7f9, #ffffff); }
.chart-cell.canvas-light .cell-close-btn[b-7ly5ecf7nx] { color: #4b5563; background: rgba(255, 255, 255, 0.85); }
.chart-cell.canvas-light.selected[b-7ly5ecf7nx] { box-shadow: inset 0 0 0 2px var(--accent-primary, #00cded); }

/* Grid sync (R4.2): the toggles under the layout picker, and a cell's own-timeframe badge */
.grid-dropdown.show[b-7ly5ecf7nx] { flex-wrap: wrap; }
.grid-sync-opts[b-7ly5ecf7nx] {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 4px;
    padding-top: 6px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.grid-sync-opt[b-7ly5ecf7nx] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 3px 4px;
    font-size: 11px;
    color: var(--text-secondary, #8892b0);
    cursor: pointer;
    white-space: nowrap;
    border-radius: var(--r-sm);
    transition: background var(--dur-fast), color var(--dur-fast);
}
.grid-sync-opt:hover[b-7ly5ecf7nx] { color: var(--text-primary, #e6f1ff); background: rgba(50, 65, 85, 0.4); }
.grid-sync-opt input[b-7ly5ecf7nx] { accent-color: var(--accent-primary, #00cded); margin: 0; }
.cell-tf-badge[b-7ly5ecf7nx] {
    margin-left: 4px;
    padding: 2px 5px;
    background: rgba(255, 184, 0, 0.14);
    border: 1px solid rgba(255, 184, 0, 0.3);
    border-radius: var(--r-sm);
    color: #ffb800;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.3px;
}

/* ===== Touch drawing (P4-D) =====
   The chart keeps its own one-finger pan and pinch zoom; the drawing layer (chartAnnotations.js)
   switches the chart container to touch-action: none only while a tool is armed or a drawing is
   being dragged. No iOS callout / tap flash on a long-press (which opens the drawing menu). */
.chart-cell[b-7ly5ecf7nx],
.chart-cell[b-7ly5ecf7nx]  .lightweight-chart-container,
.chart-cell[b-7ly5ecf7nx]  .lightweight-chart-canvas {
    touch-action: pan-x pan-y pinch-zoom;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
}

.chart-cell[b-7ly5ecf7nx]  .lightweight-chart-canvas {
    -webkit-user-select: none;
    user-select: none;
}

/* Finger-sized drawing controls: the DRAW buttons, their flyout and the position buttons.
   (The floating style toolbar and the context menu size themselves in chartAnnotations.js.) */
@media (hover: none) and (pointer: coarse) {
    .chart-lw-viewport .draw-btn[b-7ly5ecf7nx] {
        min-width: 40px;
        min-height: 40px;
    }

    .chart-lw-viewport .draw-btn svg[b-7ly5ecf7nx] {
        width: 18px;
        height: 18px;
    }

    .chart-lw-viewport .draw-caret[b-7ly5ecf7nx] {
        width: 22px;
        min-height: 40px;
    }

    .chart-lw-viewport .draw-flyout[b-7ly5ecf7nx] {
        min-width: 250px;
    }

    .chart-lw-viewport .draw-flyout-item[b-7ly5ecf7nx] {
        min-height: 44px;
        padding: 8px 10px;
        font-size: 14px;
    }

    .chart-lw-viewport .draw-flyout-item kbd[b-7ly5ecf7nx] {
        display: none; /* no keyboard shortcuts on a phone */
    }

    .chart-lw-viewport .draw-sep[b-7ly5ecf7nx] {
        height: 28px;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   MOBILE CHARTS (<= 900px, the app shell's breakpoint) - 2026-10-21 redesign
   ───────────────────────────────────────────────────────────────────────────
   Top bar      [ ticker chip ][ timeframe segments → ][ tools ]   (+ Insights in landscape)
   Chart        full bleed; a one-line OHLC readout above the canvas
   Bottom       replay bar / list navigator (when present), the Insights handle, the tab bar
   Sheets       "Chart tools" = the toolbar's other sections (.chart-tools-sheet);
                "Insights" = the sidebar (.chart-sidebar). Half (45%) and full (90%) snaps,
                drag / swipe down to close (js/mobileSheets.js), one shared backdrop.
   Only transform and opacity animate; prefers-reduced-motion turns the motion off.
   Wider landscape phones (an iPhone Pro Max is 932 x 430) get this layout too: every phone query on this page
   also matches (pointer: coarse) and (orientation: landscape) and (max-height: 500px) - iPads stay desktop - and
   the shell follows on this page only (mobile.css, MobileTabBar.razor.css; js: tickiqSheets.isPhoneChart).
   See plans/mobile-charts-redesign-2026-10-21.md.
   ═══════════════════════════════════════════════════════════════════════════ */
@media screen and (max-width: 900px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-lw-viewport[b-7ly5ecf7nx] {
        --sheet-h: 90vh;
        --sheet-half: 45vh;
        --sheet-radius: 20px;
        --sheet-ease: cubic-bezier(0.32, 0.72, 0, 1);
        --m-surface: linear-gradient(180deg, #121826 0%, #0c1018 100%);
        --m-line: rgba(255, 255, 255, 0.07);
        --m-fill: rgba(255, 255, 255, 0.04);
        --m-fill-strong: rgba(255, 255, 255, 0.07);
        --m-accent-fill: rgba(0, 205, 237, 0.14);
        --m-accent-line: rgba(0, 205, 237, 0.42);
    }

    @supports (height: 1dvh) {
        .chart-lw-viewport[b-7ly5ecf7nx] {
            --sheet-h: 90dvh;
            --sheet-half: 45dvh;
        }
    }

    /* While a sheet is open the chart viewport stacks above the header and the tab bar, so the sheet
       covers the tab bar like a native sheet and the backdrop dims the whole screen. */
    .chart-lw-viewport.sheet-open[b-7ly5ecf7nx] {
        z-index: 950;
    }

    /* ── Top bar ─────────────────────────────────────────────────────────── */
    .chart-main-area > .chart-toolbar.compact[b-7ly5ecf7nx] {
        order: 0;
        position: relative;
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        gap: 6px;
        min-height: 0;
        height: 52px;
        padding: 4px max(8px, env(safe-area-inset-right, 0px)) 4px max(8px, env(safe-area-inset-left, 0px));
        overflow: visible;
        background: linear-gradient(180deg, rgba(15, 20, 30, 0.98) 0%, rgba(10, 14, 22, 0.98) 100%);
        border-bottom: 1px solid var(--m-line);
        box-shadow: none;
    }

    .chart-toolbar.compact > .symbol-section[b-7ly5ecf7nx],
    .chart-toolbar.compact > .toolbar-spacer[b-7ly5ecf7nx],
    .chart-toolbar.compact > .lw-badge[b-7ly5ecf7nx] {
        display: none;
    }

    /* Ticker chip: symbol over price + the day's change; opens the symbol search sheet */
    .mobile-ticker[b-7ly5ecf7nx] {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 2px;
        flex: 0 1 auto;
        min-width: 64px;
        max-width: 38%;
        height: 44px;
        padding: 0 10px 0 11px;
        border: 1px solid rgba(0, 205, 237, 0.24);
        border-radius: 12px;
        background: linear-gradient(180deg, rgba(0, 205, 237, 0.13) 0%, rgba(0, 205, 237, 0.05) 100%);
        color: var(--text-primary, #e6f1ff);
        text-align: left;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition: transform var(--dur-fast) ease, background var(--dur-fast) ease;
    }

    .mobile-ticker:active[b-7ly5ecf7nx] {
        transform: scale(0.97);
        background: rgba(0, 205, 237, 0.2);
    }

    .mt-line[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        gap: 3px;
        max-width: 100%;
        min-width: 0;
    }

    .mt-symbol[b-7ly5ecf7nx] {
        font-family: var(--font-mono, 'JetBrains Mono', 'SF Mono', monospace);
        font-size: 14px;
        font-weight: 800;
        line-height: 1.1;
        letter-spacing: 0.02em;
        color: var(--accent-primary, #00cded);
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mt-caret[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        width: 12px;
        height: 12px;
        color: var(--accent-primary, #00cded);
        opacity: 0.75;
    }

    .mt-quote[b-7ly5ecf7nx] {
        display: flex;
        align-items: baseline;
        gap: 5px;
        max-width: 100%;
        overflow: hidden;
        font-family: var(--font-mono, 'JetBrains Mono', 'SF Mono', monospace);
        font-size: 11px;
        font-weight: 600;
        line-height: 1.1;
        white-space: nowrap;
        font-variant-numeric: tabular-nums;
    }

    .mt-price[b-7ly5ecf7nx] {
        color: var(--text-primary, #e6f1ff);
    }

    .mt-change[b-7ly5ecf7nx] {
        color: var(--text-secondary, #94a3b8);
    }

    .mt-quote.price-up .mt-change[b-7ly5ecf7nx] { color: #34d399; }
    .mt-quote.price-down .mt-change[b-7ly5ecf7nx] { color: #f87171; }

    /* Timeframes: a horizontally scrolling segmented row; 44px segments, the active one a filled pill */
    .chart-toolbar.compact > .tf-section[b-7ly5ecf7nx] {
        display: flex;
        flex: 1 1 auto;
        min-width: 0;
        height: 44px;
        gap: 0;
        padding: 0 2px;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        border-radius: 12px;
        background: var(--m-fill);
        border: none;
        box-shadow: inset 0 0 0 1px var(--m-line);
        box-sizing: border-box;
        -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8px, #000 calc(100% - 14px), transparent 100%);
        mask-image: linear-gradient(90deg, transparent 0, #000 8px, #000 calc(100% - 14px), transparent 100%);
    }

    .chart-toolbar.compact > .tf-section[b-7ly5ecf7nx]::-webkit-scrollbar {
        display: none;
    }

    .chart-toolbar.compact > .tf-section .tf-btn[b-7ly5ecf7nx] {
        position: relative;
        isolation: isolate;
        flex: 0 0 auto;
        min-width: 44px;
        height: 44px;
        min-height: 0;
        padding: 0 9px;
        border: none;
        border-radius: 10px;
        background: transparent;
        box-shadow: none;
        color: var(--text-secondary, #94a3b8);
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.01em;
        scroll-snap-align: center;
        -webkit-tap-highlight-color: transparent;
    }

    .chart-toolbar.compact > .tf-section .tf-btn[b-7ly5ecf7nx]::before {
        content: '';
        position: absolute;
        inset: 6px 3px;
        z-index: -1;
        border-radius: 9px;
        background: transparent;
        transition: background var(--dur-fast) ease, box-shadow var(--dur-fast) ease;
    }

    .chart-toolbar.compact > .tf-section .tf-btn.active[b-7ly5ecf7nx] {
        color: var(--accent-primary, #00cded);
        background: transparent;
        box-shadow: none;
    }

    .chart-toolbar.compact > .tf-section .tf-btn.active[b-7ly5ecf7nx]::before {
        background: var(--m-accent-fill);
        box-shadow: inset 0 0 0 1px var(--m-accent-line), 0 0 12px rgba(0, 205, 237, 0.18);
    }

    .chart-toolbar.compact > .tf-section .tf-btn:active[b-7ly5ecf7nx] {
        transform: none;
    }

    .chart-toolbar.compact > .tf-section .tf-btn:active[b-7ly5ecf7nx]::before {
        background: var(--m-fill-strong);
    }

    /* Tools (and, in landscape, Insights): 44px icon buttons at the end of the bar */
    .mobile-tools-btn[b-7ly5ecf7nx],
    .mobile-insights-btn[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 44px;
        width: 44px;
        height: 44px;
        padding: 0;
        border: 1px solid var(--m-line);
        border-radius: 12px;
        background: var(--m-fill);
        color: var(--text-primary, #e6f1ff);
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition: background var(--dur-fast) ease, border-color var(--dur-fast) ease, color var(--dur-fast) ease, transform var(--dur-fast) ease;
    }

    .mobile-tools-btn svg[b-7ly5ecf7nx],
    .mobile-insights-btn svg[b-7ly5ecf7nx] {
        width: 21px;
        height: 21px;
    }

    .mobile-tools-btn:active[b-7ly5ecf7nx],
    .mobile-insights-btn:active[b-7ly5ecf7nx] {
        transform: scale(0.94);
    }

    .mobile-tools-btn.active[b-7ly5ecf7nx],
    .mobile-insights-btn.active[b-7ly5ecf7nx] {
        color: var(--accent-primary, #00cded);
        background: var(--m-accent-fill);
        border-color: var(--m-accent-line);
    }

    /* Insights lives on the handle above the tab bar in portrait; the top-bar button is for landscape */
    .mobile-insights-btn[b-7ly5ecf7nx] {
        display: none;
    }

    /* ── Chart area: full bleed, bottom strips in thumb reach ─────────────── */
    .chart-main-area > .chart-grid-container[b-7ly5ecf7nx] {
        order: 1;
        flex: 1 1 auto;
        min-height: 0;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-bar { order: 2; flex-shrink: 0; }
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav { order: 3; flex-shrink: 0; }
    .chart-main-area > .insights-peek[b-7ly5ecf7nx] { order: 4; flex-shrink: 0; }
    .chart-main-area > .chart-toolbar.compact[b-7ly5ecf7nx] { flex-shrink: 0; }

    /* The single chart fills the cell; no selection ring with one cell */
    .chart-grid-container.layout-1 .chart-cell.selected[b-7ly5ecf7nx],
    .chart-grid-container.layout-1 .chart-cell.canvas-light.selected[b-7ly5ecf7nx] {
        box-shadow: none;
    }

    /* One-line OHLC readout ABOVE the canvas (in the cell's flow, so it never covers a candle). The MTF chip
       sits at its right end; the vertical indicator legend stays a desktop feature. */
    .chart-cell-content[b-7ly5ecf7nx] {
        display: flex;
        flex-direction: column;
    }

    .chart-cell-content > .chart-symbol-overlay[b-7ly5ecf7nx] {
        position: relative;
        top: auto;
        left: auto;
        flex: 0 0 26px;
        max-width: none;
        width: 100%;
        height: 26px;
        padding: 0 10px;
        gap: 0;
        justify-content: center;
        align-items: flex-start;
        background: rgba(10, 14, 23, 0.96);
        border-bottom: 1px solid rgba(255, 255, 255, 0.04);
        border-radius: 0;
        box-shadow: none;
        font-size: 11px;
        overflow: hidden;
    }

    .chart-cell-content > .chart-with-oscillator[b-7ly5ecf7nx] {
        flex: 1 1 auto;
        min-height: 0;
        height: auto;
    }

    .chart-symbol-overlay .overlay-row[b-7ly5ecf7nx] {
        gap: 8px;
        min-width: 0;
        padding-right: 110px; /* the MTF chip */
        white-space: nowrap;
    }

    .chart-symbol-overlay .cell-symbol-badge-mini[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        font-size: 10px;
        padding: 2px 6px;
    }

    /* One chart: the top bar already names the symbol */
    .chart-grid-container.layout-1 .chart-symbol-overlay .cell-symbol-badge-mini[b-7ly5ecf7nx] {
        display: none;
    }

    .chart-symbol-overlay .inline-ohlc[b-7ly5ecf7nx] {
        display: inline-flex;
        min-width: 0;
        gap: 3px;
        margin-left: 0;
        font-size: 11px;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .chart-symbol-overlay .inline-ohlc .ohlc-i[b-7ly5ecf7nx] {
        font-size: 10px;
    }

    .chart-symbol-overlay .inline-ohlc .ohlc-v[b-7ly5ecf7nx] {
        margin-right: 5px;
    }

    /* Scrubbing: the readout takes the whole line (the MTF chip steps aside) */
    .chart-symbol-overlay .overlay-row:has(.inline-ohlc)[b-7ly5ecf7nx] {
        padding-right: 0;
    }

    .chart-cell-content:has(.inline-ohlc) .mtf-overlay.collapsed[b-7ly5ecf7nx],
    .chart-cell-content:has(.inline-ohlc) .mtf-overlay.teaser[b-7ly5ecf7nx] {
        opacity: 0;
        pointer-events: none;
    }

    /* No crosshair yet: say how to get one */
    .chart-symbol-overlay .overlay-row:not(:has(.inline-ohlc))[b-7ly5ecf7nx]::after {
        content: 'Hold the chart for prices';
        overflow: hidden;
        text-overflow: ellipsis;
        color: var(--text-muted, #8892b0);
        font-size: 11px;
        opacity: 0.8;
    }

    .chart-symbol-overlay .overlay-indicators[b-7ly5ecf7nx] {
        display: none;
    }

    /* P2-A event overlays: their legend rows are desktop-only, so the notes ride a chip at the readout's right end
       ("Not a forecast" whenever a reaction band is drawn, else "Events"). Its 44 px hit area hangs 18 px into the
       chart's empty top margin; a tap opens the rows as a list under the readout, over the top of the chart. While
       scrubbing the OHLC readout shares the line with it (it shrinks, and V steps aside), so the chip stays on screen. */
    .chart-cell-content > .chart-symbol-overlay:has(.evt-chip)[b-7ly5ecf7nx] {
        overflow: visible;
    }

    .chart-cell-content > .chart-symbol-overlay:has(.evt-chip) > .overlay-row[b-7ly5ecf7nx] {
        align-self: stretch;
    }

    .chart-symbol-overlay .overlay-row:has(.evt-chip) .inline-ohlc .vol[b-7ly5ecf7nx] {
        display: none;
    }

    /* The chip sits at the edge the readout keeps for the collapsed MTF chip, so that edge must clear its widest label:
       the 110 px above fits only "BULL" / "BEAR"; "LEAN BEAR" reaches 135 px from the right (6 px offset included). */
    .chart-cell-content:has(.mtf-overlay.collapsed) > .chart-symbol-overlay .overlay-row:has(.evt-chip):not(:has(.inline-ohlc))[b-7ly5ecf7nx] {
        padding-right: 140px;
    }

    .chart-symbol-overlay .evt-chip[b-7ly5ecf7nx] {
        position: relative;
        z-index: 13;
        order: 3;
        display: flex;
        flex: 0 0 auto;
        align-self: flex-start;
        align-items: flex-start;
        height: 44px;
        min-width: 44px;
        margin: 0 0 -18px auto;
        padding: 3px 0 0 6px;
        border: none;
        background: transparent;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
    }

    .evt-chip-pill[b-7ly5ecf7nx] {
        display: inline-flex;
        align-items: center;
        gap: 4px;
        height: 20px;
        padding: 0 8px 0 6px;
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 999px;
        background: rgba(18, 24, 36, 0.95);
        color: #cbd5e1;
        font-size: 10px;
        font-weight: 600;
        line-height: 1;
        white-space: nowrap;
    }

    .evt-chip.open .evt-chip-pill[b-7ly5ecf7nx] {
        border-color: rgba(0, 205, 237, 0.5);
        color: #e6f1ff;
    }

    .evt-chip-dot[b-7ly5ecf7nx] {
        width: 6px;
        height: 6px;
        flex: none;
        border-radius: 50%;
        background: var(--oc, #8892b0);
    }

    .evt-chip-i[b-7ly5ecf7nx] {
        width: 12px;
        height: 12px;
        flex: none;
        opacity: 0.8;
    }

    /* The list: the legend rows (labels / notes, then the band and cone values at the crosshair), wrapped */
    .chart-symbol-overlay.evt-open .evt-overlays[b-7ly5ecf7nx] {
        position: absolute;
        top: 30px;
        right: 6px;
        z-index: 14;
        display: flex;
        max-width: min(360px, calc(100% - 12px));
        margin: 0;
        padding: 9px 12px;
        gap: 7px;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-radius: 10px;
        background: rgba(12, 17, 27, 0.97);
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
        font-family: inherit;
    }

    /* one row: the colour dot, the label in its colour, the note wrapping beside it */
    .chart-symbol-overlay.evt-open .evt-overlays .ind-row[b-7ly5ecf7nx] {
        display: grid;
        grid-template-columns: 6px auto minmax(0, 1fr);
        align-items: start;
        column-gap: 8px;
        font-size: 12px;
        line-height: 1.35;
        white-space: normal;
    }

    .chart-symbol-overlay.evt-open .evt-overlays .ind-dot[b-7ly5ecf7nx] {
        width: 6px;
        height: 6px;
        margin-top: 5px;
    }

    .chart-symbol-overlay.evt-open .evt-overlays .ind-value[b-7ly5ecf7nx] {
        color: var(--text-primary, #e6f1ff);
        opacity: 0.9;
    }

    /* The MTF ladder: a chip in the readout's right end (collapsed by default on phones) */
    .chart-with-oscillator .mtf-overlay[b-7ly5ecf7nx] {
        top: -25px;
        right: 6px;
        z-index: 12;
        border-radius: 999px;
        box-shadow: none;
    }

    .chart-with-oscillator .mtf-overlay.collapsed[b-7ly5ecf7nx] {
        padding: 2px 4px 2px 9px;
        background: rgba(18, 24, 36, 0.95);
    }

    .chart-with-oscillator .mtf-overlay.collapsed .mtf-overlay-head[b-7ly5ecf7nx] {
        min-height: 20px;
    }

    .chart-with-oscillator .mtf-overlay.open[b-7ly5ecf7nx] {
        top: -25px;
        border-radius: var(--r-lg);
        background: rgba(12, 17, 27, 0.97);
    }

    .chart-with-oscillator .mtf-overlay.teaser[b-7ly5ecf7nx] {
        top: -25px;
        transform: scale(0.9);
        transform-origin: top right;
    }

    /* ── The Insights handle (portrait): above the tab bar; tap or swipe up ── */
    .insights-peek[b-7ly5ecf7nx] {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
        /* 56px: the pills sit in the top 36px, clear of the raised Charts button (it rises 16px into this strip) */
        flex: 0 0 56px;
        width: 100%;
        height: 56px;
        min-height: 0;
        padding: 5px max(14px, env(safe-area-inset-right, 0px)) 0 max(14px, env(safe-area-inset-left, 0px));
        border: none;
        border-top: 1px solid var(--m-line);
        border-radius: 0;
        background: linear-gradient(180deg, rgba(17, 23, 34, 0.99) 0%, rgba(11, 15, 23, 0.99) 100%);
        color: var(--text-primary, #e6f1ff);
        text-align: left;
        cursor: pointer;
        touch-action: none;
        -webkit-tap-highlight-color: transparent;
    }

    .insights-peek:active[b-7ly5ecf7nx] {
        background: linear-gradient(180deg, rgba(22, 30, 44, 0.99) 0%, rgba(13, 18, 27, 0.99) 100%);
    }

    .peek-grabber[b-7ly5ecf7nx] {
        align-self: center;
        width: 36px;
        height: 4px;
        margin-bottom: 5px;
        border-radius: 2px;
        background: rgba(255, 255, 255, 0.2);
    }

    .peek-row[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        gap: 7px;
        min-width: 0;
        height: 22px;
    }

    .peek-title[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: 0.01em;
    }

    .peek-pill[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        max-width: 42%;
        padding: 3px 8px;
        border-radius: 999px;
        background: var(--m-fill-strong);
        color: var(--text-secondary, #94a3b8);
        font-size: 10px;
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .peek-pill.bullish[b-7ly5ecf7nx],
    .peek-pill.mtf-bullish[b-7ly5ecf7nx] { color: #34d399; background: rgba(16, 185, 129, 0.15); }
    .peek-pill.lean-bullish[b-7ly5ecf7nx],
    .peek-pill.mtf-lean-bullish[b-7ly5ecf7nx] { color: #6ee7b7; background: rgba(16, 185, 129, 0.1); }
    .peek-pill.bearish[b-7ly5ecf7nx],
    .peek-pill.mtf-bearish[b-7ly5ecf7nx] { color: #f87171; background: rgba(239, 68, 68, 0.15); }
    .peek-pill.lean-bearish[b-7ly5ecf7nx],
    .peek-pill.mtf-lean-bearish[b-7ly5ecf7nx] { color: #fca5a5; background: rgba(239, 68, 68, 0.1); }
    .peek-pill.mtf-conflicting[b-7ly5ecf7nx] { color: #fbbf24; background: rgba(245, 158, 11, 0.14); }

    .peek-more[b-7ly5ecf7nx] {
        flex: 1 1 0;
        min-width: 0;
        margin-left: 4px;
        text-align: right;
        color: var(--text-muted, #8892b0);
        font-size: 11px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .peek-chevron[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        width: 16px;
        height: 16px;
        color: var(--text-muted, #8892b0);
    }

    /* Replaying: the transport needs the room */
    .chart-main-area:has(.replay-bar) > .insights-peek[b-7ly5ecf7nx] {
        display: none;
    }

    /* ── Sheets: shared chrome ────────────────────────────────────────────── */
    .chart-sheet-backdrop[b-7ly5ecf7nx] {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 30;
        background: rgba(2, 5, 9, 0.62);
        opacity: 0;
        pointer-events: none;
        transition: opacity 260ms ease;
        -webkit-tap-highlight-color: transparent;
    }

    .chart-sheet-backdrop.show[b-7ly5ecf7nx] {
        opacity: 1;
        pointer-events: auto;
    }

    .chart-tools-sheet[b-7ly5ecf7nx],
    .chart-sidebar[b-7ly5ecf7nx] {
        --sheet-y: 100%;
        position: fixed;
        top: auto;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 40;
        display: flex;
        flex-direction: column;
        width: auto;
        max-width: none;
        height: var(--sheet-h);
        max-height: none;
        flex: none;
        margin: 0;
        padding: 0 0 env(safe-area-inset-bottom, 0px);
        background: var(--m-surface);
        border: none;
        border-top: 1px solid rgba(255, 255, 255, 0.09);
        border-radius: var(--sheet-radius) var(--sheet-radius) 0 0;
        box-shadow: 0 -18px 48px rgba(0, 0, 0, 0.6), 0 -1px 0 rgba(0, 205, 237, 0.08);
        overflow: hidden;
        visibility: hidden;
        transform: translate3d(var(--sheet-x, 0px), var(--sheet-y), 0);
        transition: transform 340ms var(--sheet-ease), visibility 0s linear 340ms;
    }

    .chart-tools-sheet.open[b-7ly5ecf7nx],
    .chart-sidebar.open[b-7ly5ecf7nx] {
        --sheet-y: calc(var(--sheet-h) - var(--sheet-half));
        visibility: visible;
        transition: transform 340ms var(--sheet-ease), visibility 0s linear 0s;
    }

    .chart-tools-sheet.open[data-snap="full"][b-7ly5ecf7nx],
    .chart-sidebar.open[data-snap="full"][b-7ly5ecf7nx] {
        --sheet-y: 0px;
    }

    .chart-tools-sheet.open[data-snap="closed"][b-7ly5ecf7nx],
    .chart-sidebar.open[data-snap="closed"][b-7ly5ecf7nx] {
        --sheet-y: 100%;
    }

    /* A finger on the handle: the sheet follows it (js/mobileSheets.js sets --sheet-y) */
    .chart-tools-sheet[data-dragging][b-7ly5ecf7nx],
    .chart-sidebar[data-dragging][b-7ly5ecf7nx] {
        transition: none;
        will-change: transform;
    }

    /* A dialog opened from inside a sheet (layout conflict, the Alerts tab's dialog) must be fixed to the
       screen, not to the transformed sheet */
    .chart-tools-sheet.open:has(.lay-modal-overlay)[b-7ly5ecf7nx],
    .chart-sidebar.open:has(.modal-overlay)[b-7ly5ecf7nx] {
        transform: none;
        transition: none;
    }

    .sheet-grabber[b-7ly5ecf7nx] {
        display: block;
        position: relative;
        flex: 0 0 auto;
        height: 22px;
        cursor: grab;
        touch-action: none;
    }

    .sheet-grabber[b-7ly5ecf7nx]::before {
        content: '';
        position: absolute;
        top: 8px;
        left: 50%;
        width: 40px;
        height: 5px;
        border-radius: 3px;
        background: rgba(255, 255, 255, 0.24);
        transform: translateX(-50%);
    }

    /* ── Chart tools sheet ─────────────────────────────────────────────────── */
    .chart-tools-sheet .sheet-head[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        gap: 10px;
        flex: 0 0 auto;
        padding: 0 12px 10px 18px;
        border-bottom: 1px solid var(--m-line);
        touch-action: none;
    }

    .chart-tools-sheet .sheet-title[b-7ly5ecf7nx] {
        font-size: 17px;
        font-weight: 700;
        color: var(--text-primary, #e6f1ff);
        letter-spacing: -0.01em;
    }

    .chart-tools-sheet .sheet-sub[b-7ly5ecf7nx] {
        flex: 1 1 auto;
        min-width: 0;
        color: var(--text-muted, #8892b0);
        font-family: var(--font-mono, 'JetBrains Mono', monospace);
        font-size: 12px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .chart-tools-sheet .sheet-done[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        height: 44px;
        min-width: 72px;
        padding: 0 16px;
        border: 1px solid var(--m-accent-line);
        border-radius: 12px;
        background: var(--m-accent-fill);
        color: var(--accent-primary, #00cded);
        font-size: 14px;
        font-weight: 700;
        cursor: pointer;
    }

    .chart-tools-sheet > .sheet-body[b-7ly5ecf7nx] {
        display: flex;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: 8px;
        flex: 1 1 auto;
        min-height: 0;
        padding: 6px 16px 28px;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
    }

    /* At the half snap the lower part of the sheet is off screen: let the content scroll clear of it */
    .chart-tools-sheet.open:not([data-snap="full"]) > .sheet-body[b-7ly5ecf7nx],
    .chart-sidebar.open:not([data-snap="full"]) > .sidebar-content[b-7ly5ecf7nx] {
        padding-bottom: calc(var(--sheet-h) - var(--sheet-half) + 28px);
    }

    /* The toolbar's sections become the sheet's items: wrappers are transparent, `order` groups them */
    .chart-tools-sheet .tools-a[b-7ly5ecf7nx],
    .chart-tools-sheet .tools-b[b-7ly5ecf7nx],
    .chart-tools-sheet .toolbar-section[b-7ly5ecf7nx],
    .chart-tools-sheet .dropdown-wrap[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-wrap,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-wrap,
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-wrap {
        display: contents;
    }

    .chart-tools-sheet .tb-sep[b-7ly5ecf7nx],
    .chart-tools-sheet .grid-section[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-flyout-backdrop[b-7ly5ecf7nx] {
        display: none;
    }

    .chart-tools-sheet .sheet-label[b-7ly5ecf7nx] {
        display: block;
        flex: 0 0 100%;
        margin: 12px 2px 0;
        color: var(--text-muted, #8892b0);
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 0.12em;
        text-transform: uppercase;
    }

    .chart-tools-sheet .sl-ind[b-7ly5ecf7nx] { order: 10; margin-top: 8px; }
    .chart-tools-sheet .sl-chart[b-7ly5ecf7nx] { order: 20; }
    .chart-tools-sheet .sl-draw[b-7ly5ecf7nx] { order: 30; }

    .chart-tools-sheet .sheet-only[b-7ly5ecf7nx] {
        display: inline;
    }

    /* Indicators: MA · OVR · OSC · VOL · EVT as five equal segments ... */
    .chart-tools-sheet .ind-btn.pill:not(.style-btn)[b-7ly5ecf7nx] {
        order: 11;
        flex: 0 0 calc((100% - 32px) / 5 - 0.1px);
        justify-content: center;
        gap: 5px;
        height: 44px;
        min-height: 0;
        padding: 0 4px;
        border: 1px solid var(--m-line);
        border-radius: 12px;
        background: var(--m-fill);
        color: var(--text-secondary, #94a3b8);
        font-size: 13px;
        letter-spacing: 0.04em;
        box-shadow: none;
        transform: none;
    }

    .chart-tools-sheet .ind-btn.pill[b-7ly5ecf7nx]::after {
        display: none;
    }

    .chart-tools-sheet .ind-btn.pill.on[b-7ly5ecf7nx] {
        color: var(--accent-primary, #00cded);
        border-color: rgba(0, 205, 237, 0.3);
        background: rgba(0, 205, 237, 0.08);
    }

    .chart-tools-sheet .ind-btn.pill.open[b-7ly5ecf7nx] {
        color: #04121a;
        border-color: transparent;
        background: linear-gradient(140deg, #13dfff 0%, #22d3ee 100%);
    }

    .chart-tools-sheet .ind-btn.pill .pill-count[b-7ly5ecf7nx] {
        min-width: 18px;
        height: 18px;
        font-size: 11px;
    }

    .chart-tools-sheet .ind-btn.pill.open .pill-count[b-7ly5ecf7nx] {
        background: rgba(4, 18, 26, 0.22);
        color: #04121a;
    }

    /* ... then the candlestick patterns and the signal dots */
    .chart-tools-sheet .pattern-icon-btn[b-7ly5ecf7nx],
    .chart-tools-sheet .sheet-chip[b-7ly5ecf7nx] {
        order: 12;
        position: relative;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        flex: 0 0 calc((100% - 16px) / 3 - 0.1px);
        width: auto;
        min-width: 0;
        height: 60px;
        min-height: 0;
        padding: 0 6px;
        border: 1px solid var(--m-line);
        border-radius: 12px;
        background: var(--m-fill);
        color: var(--text-secondary, #94a3b8);
        font-size: 11px;
        font-weight: 600;
        white-space: nowrap;
        overflow: visible;
        cursor: pointer;
    }

    .chart-tools-sheet .pattern-icon-btn .pattern-icon[b-7ly5ecf7nx],
    .chart-tools-sheet .sheet-chip svg[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        width: 20px;
        height: 20px;
    }

    .chart-tools-sheet .pattern-icon-btn .sheet-only[b-7ly5ecf7nx],
    .chart-tools-sheet .sheet-chip span[b-7ly5ecf7nx] {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        color: var(--text-secondary, #94a3b8);
    }

    .chart-tools-sheet .pattern-icon-btn.bull[b-7ly5ecf7nx] { color: #6ee7b7; }
    .chart-tools-sheet .pattern-icon-btn.bear[b-7ly5ecf7nx] { color: #fca5a5; }

    .chart-tools-sheet .pattern-icon-btn .pattern-count[b-7ly5ecf7nx] {
        top: 6px;
        right: 8px;
        min-width: 18px;
        height: 18px;
        font-size: 10px;
    }

    .chart-tools-sheet .sheet-chip.on[b-7ly5ecf7nx] {
        color: var(--accent-primary, #00cded);
        border-color: rgba(0, 205, 237, 0.3);
        background: rgba(0, 205, 237, 0.08);
    }

    /* The open list: a full-width card under the segments */
    .chart-tools-sheet .ind-dropdown[b-7ly5ecf7nx] {
        order: 13;
        position: static;
        flex: 0 0 100%;
        min-width: 0;
        max-width: none;
        max-height: none;
        margin: 2px 0 0;
        padding: 4px;
        overflow: visible;
        border: 1px solid var(--m-line);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.025);
        box-shadow: none;
        backdrop-filter: none;
        animation: sheet-section-in-b-7ly5ecf7nx 0.2s ease;
    }

    .chart-tools-sheet .ind-dropdown .ind-opt[b-7ly5ecf7nx] {
        min-height: 46px;
        padding: 0 8px 0 14px;
        gap: 12px;
        border-radius: 10px;
        font-size: 14px;
    }

    .chart-tools-sheet .ind-dropdown .ind-opt input[type="checkbox"][b-7ly5ecf7nx] {
        width: 18px;
        height: 18px;
    }

    .chart-tools-sheet .ind-dropdown .ind-opt .opt-badge[b-7ly5ecf7nx] {
        font-size: 10px;
    }

    .chart-tools-sheet .ind-dropdown .ind-opt .opt-gear[b-7ly5ecf7nx] {
        width: 44px;
        height: 44px;
        margin: 0 -6px 0 auto;
        border-radius: 10px;
    }

    .chart-tools-sheet .ind-dropdown .ind-opt .opt-gear svg[b-7ly5ecf7nx] {
        width: 16px;
        height: 16px;
    }

    .chart-tools-sheet .ind-dropdown .ind-add[b-7ly5ecf7nx] {
        min-height: 44px;
        font-size: 13px;
    }

    .chart-tools-sheet .ind-dropdown .dropdown-divider[b-7ly5ecf7nx] {
        margin: 4px 10px;
    }

    .chart-tools-sheet[b-7ly5ecf7nx]  .isp {
        order: 14;
        position: static;
        flex: 0 0 100%;
        width: auto;
        max-width: none;
        margin: 0;
        box-shadow: none;
    }

    /* Chart: style, compare, layouts, replay, share as tiles; the open one's panel below them */
    .chart-tools-sheet .style-btn[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-btn,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-btn,
    .chart-tools-sheet .tool-btn.replay-btn[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-btn,
    .chart-tools-sheet .play-creator-btn[b-7ly5ecf7nx] {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 7px;
        flex: 0 0 calc((100% - 16px) / 3 - 0.1px);
        height: 48px;
        min-height: 0;
        min-width: 0;
        padding: 0 8px;
        border: 1px solid var(--m-line);
        border-radius: 12px;
        background: var(--m-fill);
        color: var(--text-primary, #e6f1ff);
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 0.01em;
        text-transform: none;
        box-shadow: none;
        transform: none;
        white-space: nowrap;
        overflow: hidden;
    }

    .chart-tools-sheet .style-btn[b-7ly5ecf7nx] { order: 21; }
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-btn { order: 22; }
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-btn { order: 23; }
    .chart-tools-sheet .tool-btn.replay-btn[b-7ly5ecf7nx] { order: 24; }
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-btn { order: 25; }
    .chart-tools-sheet .play-creator-btn[b-7ly5ecf7nx] { order: 25; }

    .chart-tools-sheet .style-btn .pill-label[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-label,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-label,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-label,
    .chart-tools-sheet .replay-btn-label[b-7ly5ecf7nx] {
        font-size: 13px;
        text-transform: none;
        letter-spacing: 0.01em;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .chart-tools-sheet .style-btn .style-glyph[b-7ly5ecf7nx] {
        width: 18px;
        height: 18px;
        margin-right: 0;
    }

    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-btn::after,
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-btn::after,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-btn::after {
        display: none;
    }

    .chart-tools-sheet .style-btn.open[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-btn.open,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-btn.open,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-btn.open {
        color: var(--accent-primary, #00cded);
        border-color: var(--m-accent-line);
        background: var(--m-accent-fill);
    }

    .chart-tools-sheet .tool-btn.replay-btn.active[b-7ly5ecf7nx] {
        color: #fca5a5;
        border-color: rgba(239, 68, 68, 0.45);
        background: rgba(239, 68, 68, 0.12);
    }

    .chart-tools-sheet .tool-btn.replay-btn svg[b-7ly5ecf7nx] {
        width: 13px;
        height: 13px;
    }

    .chart-tools-sheet .style-dropdown[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-dropdown,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-dropdown,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-dropdown {
        order: 26;
        position: static;
        flex: 0 0 100%;
        width: auto;
        min-width: 0;
        max-width: none;
        max-height: none;
        margin: 2px 0 0;
        overflow: visible;
        border: 1px solid var(--m-line);
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.025);
        box-shadow: none;
        backdrop-filter: none;
        transform: none;
        animation: sheet-section-in-b-7ly5ecf7nx 0.2s ease;
    }

    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-chip {
        order: 27;
    }

    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-chip-text {
        display: inline;
    }

    .chart-tools-sheet .style-opt[b-7ly5ecf7nx] {
        min-height: 44px;
        font-size: 14px;
    }

    .chart-tools-sheet .style-seg-btn[b-7ly5ecf7nx] {
        min-height: 44px;
        font-size: 13px;
    }

    /* Drawing: the tool picker grid, then magnet / keep drawing / hide / undo / clear */
    .chart-tools-sheet .draw-grid[b-7ly5ecf7nx] {
        display: grid;
        order: 31;
        flex: 0 0 100%;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
    }

    .draw-grid-item[b-7ly5ecf7nx] {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-width: 0;
        min-height: 70px;
        padding: 8px 4px;
        border: 1px solid var(--m-line);
        border-radius: 14px;
        background: var(--m-fill);
        color: var(--text-primary, #e6f1ff);
        font-size: 11px;
        font-weight: 500;
        line-height: 1.2;
        text-align: center;
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition: background var(--dur-fast) ease, border-color var(--dur-fast) ease, transform var(--dur-fast) ease;
    }

    .draw-grid-item:active[b-7ly5ecf7nx] {
        transform: scale(0.96);
        background: var(--m-fill-strong);
    }

    .draw-grid-item .dgi-icon[b-7ly5ecf7nx] {
        display: flex;
        color: var(--accent-primary, #00cded);
    }

    .draw-grid-item .dgi-icon svg[b-7ly5ecf7nx] {
        width: 22px;
        height: 22px;
    }

    .draw-grid-item .dgi-title[b-7ly5ecf7nx] {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        max-width: 100%;
    }

    .draw-grid-item.active[b-7ly5ecf7nx] {
        border-color: var(--m-accent-line);
        background: var(--m-accent-fill);
    }

    .draw-grid-item.locked[b-7ly5ecf7nx] {
        opacity: 0.55;
    }

    .draw-grid-item .opt-badge.pro[b-7ly5ecf7nx] {
        position: absolute;
        top: 4px;
        right: 4px;
        padding: 1px 4px;
        font-size: 8px;
    }

    .chart-tools-sheet .draw-tools[b-7ly5ecf7nx] {
        display: flex;
        order: 32;
        flex: 0 0 100%;
        flex-wrap: wrap;
        gap: 8px;
    }

    .chart-tools-sheet .draw-tools > .draw-label[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-tools > .draw-group[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-tools > .draw-btn-long[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-tools > .draw-btn-short[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-tools > .draw-sep[b-7ly5ecf7nx],
    .chart-tools-sheet .draw-tools > .annotation-count[b-7ly5ecf7nx] {
        display: none;
    }

    .chart-tools-sheet .draw-tools > .draw-lock[b-7ly5ecf7nx] {
        flex: 0 0 100%;
        min-height: 0;
    }

    .chart-tools-sheet .draw-tools > .draw-btn:not(.draw-btn-long):not(.draw-btn-short)[b-7ly5ecf7nx] {
        flex: 0 0 calc((100% - 16px) / 3 - 0.1px);
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        width: auto;
        min-width: 0;
        height: 60px;
        min-height: 0;
        padding: 0 6px;
        border: 1px solid var(--m-line);
        border-radius: 12px;
        background: var(--m-fill);
        color: var(--text-secondary, #94a3b8);
        font-size: 11px;
        font-weight: 600;
        white-space: nowrap;
    }

    .chart-tools-sheet .draw-tools > .draw-btn svg[b-7ly5ecf7nx] {
        width: 20px;
        height: 20px;
    }

    .chart-tools-sheet .draw-tools > .draw-btn.toggle.on[b-7ly5ecf7nx] {
        color: var(--accent-primary, #00cded);
        border-color: rgba(0, 205, 237, 0.3);
        background: rgba(0, 205, 237, 0.08);
    }

    .chart-tools-sheet .draw-tools > .draw-btn.danger[b-7ly5ecf7nx] {
        color: #fca5a5;
    }

    .chart-tools-sheet .sheet-attrib[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        justify-content: center;
        order: 40;
        flex: 0 0 100%;
        min-height: 44px;
        margin-top: 10px;
        color: var(--text-muted, #8892b0);
        font-size: 11px;
        text-decoration: none;
        opacity: 0.8;
    }

    @keyframes sheet-section-in-b-7ly5ecf7nx {
        from { opacity: 0; transform: translateY(-4px); }
        to { opacity: 1; transform: none; }
    }

    /* ── Insights sheet (the sidebar) ──────────────────────────────────────── */
    .chart-sidebar .sheet-close[b-7ly5ecf7nx] {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 10px;
        right: 8px;
        z-index: 2;
        width: 44px;
        height: 44px;
        padding: 0;
        border: none;
        border-radius: 50%;
        background: transparent;
        color: var(--text-muted, #8892b0);
        cursor: pointer;
    }

    .chart-sidebar .sheet-close svg[b-7ly5ecf7nx] {
        width: 30px;
        height: 30px;
        padding: 7px;
        border-radius: 50%;
        background: var(--m-fill-strong);
    }

    .chart-sidebar .sidebar-header[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        padding: 0 60px 10px 18px;
        border-bottom: none;
        touch-action: none;
    }

    .chart-sidebar .chart-header-compact[b-7ly5ecf7nx] {
        padding: 0;
    }

    .chart-sidebar .sidebar-tabs[b-7ly5ecf7nx] {
        flex: 0 0 auto;
        justify-content: flex-start;
        gap: 8px;
        padding: 4px 16px 10px;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scroll-snap-type: x proximity;
        scroll-padding-inline: 16px;
        scrollbar-width: none;
        background: transparent;
        border-bottom: 1px solid var(--m-line);
        -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 24px), transparent 100%);
        mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 24px), transparent 100%);
    }

    .chart-sidebar .sidebar-tabs[b-7ly5ecf7nx]::-webkit-scrollbar {
        display: none;
    }

    .chart-sidebar .sidebar-tab.icon-only[b-7ly5ecf7nx] {
        position: relative;
        flex: 0 0 auto;
        gap: 7px;
        min-width: 44px;
        height: 44px;
        min-height: 0;
        padding: 0 15px 0 13px;
        border: 1px solid var(--m-line);
        border-radius: 999px;
        background: var(--m-fill);
        color: var(--text-secondary, #94a3b8);
        font-size: 13px;
        font-weight: 600;
        white-space: nowrap;
        scroll-snap-align: start;
    }

    .chart-sidebar .sidebar-tab.icon-only svg[b-7ly5ecf7nx] {
        width: 16px;
        height: 16px;
    }

    .chart-sidebar .sidebar-tab.icon-only.active[b-7ly5ecf7nx] {
        color: #04121a;
        border-color: transparent;
        background: linear-gradient(140deg, #13dfff 0%, #22d3ee 100%);
    }

    .chart-sidebar .tab-chip-label[b-7ly5ecf7nx] {
        display: inline;
    }

    .chart-sidebar .sidebar-tab .notification-badge[b-7ly5ecf7nx] {
        top: 2px;
        right: 2px;
    }

    .chart-sidebar .sidebar-content[b-7ly5ecf7nx] {
        flex: 1 1 auto;
        min-height: 0;
        padding: 14px 16px 24px;
        gap: 14px;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
    }

    /* Indicator rows read at a phone's distance */
    .chart-sidebar .mini-indicator-row[b-7ly5ecf7nx] {
        min-height: 44px;
    }

    .chart-sidebar .mini-ind-label[b-7ly5ecf7nx] {
        font-size: 12px;
    }

    .chart-sidebar .mini-ind-value[b-7ly5ecf7nx] {
        font-size: 12px;
    }

    .chart-sidebar .mini-ind-signal[b-7ly5ecf7nx] {
        font-size: 11px;
    }

    .chart-sidebar .dots-mode-btn[b-7ly5ecf7nx],
    .chart-sidebar .extended-indicators-toggle[b-7ly5ecf7nx] {
        min-height: 44px;
    }
}

/* Phones in landscape: no app header on the chart (more chart), Insights in the top bar instead of the
   handle, and the sheets open straight to their full height, centred and no wider than a phone */
@media screen and (max-width: 900px) and (orientation: landscape) and (max-height: 500px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-lw-viewport[b-7ly5ecf7nx] {
        top: env(safe-area-inset-top, 0px);
        --sheet-half: var(--sheet-h);
    }

    .chart-main-area > .chart-toolbar.compact[b-7ly5ecf7nx] {
        height: 50px;
        padding-top: 3px;
        padding-bottom: 3px;
    }

    .mobile-insights-btn[b-7ly5ecf7nx] {
        display: flex;
    }

    .chart-main-area > .insights-peek[b-7ly5ecf7nx] {
        display: none;
    }

    .mobile-ticker[b-7ly5ecf7nx] {
        max-width: 26%;
    }

    .chart-tools-sheet[b-7ly5ecf7nx],
    .chart-sidebar[b-7ly5ecf7nx] {
        --sheet-x: -50%;
        left: 50%;
        right: auto;
        width: min(640px, 100%);
    }

    .chart-cell-content > .chart-symbol-overlay[b-7ly5ecf7nx] {
        padding-left: max(10px, env(safe-area-inset-left, 0px));
    }
}

@media screen and (max-width: 900px) and (prefers-reduced-motion: reduce), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) and (prefers-reduced-motion: reduce) {
    .chart-tools-sheet[b-7ly5ecf7nx],
    .chart-sidebar[b-7ly5ecf7nx],
    .chart-sidebar.open[b-7ly5ecf7nx],
    .chart-tools-sheet.open[b-7ly5ecf7nx],
    .chart-sheet-backdrop[b-7ly5ecf7nx],
    .mobile-ticker[b-7ly5ecf7nx],
    .mobile-tools-btn[b-7ly5ecf7nx],
    .mobile-insights-btn[b-7ly5ecf7nx],
    .draw-grid-item[b-7ly5ecf7nx] {
        transition: none;
    }

    .chart-tools-sheet .ind-dropdown[b-7ly5ecf7nx],
    .chart-tools-sheet .style-dropdown[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-dropdown,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-dropdown,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-dropdown {
        animation: none;
    }

    .mobile-ticker:active[b-7ly5ecf7nx],
    .mobile-tools-btn:active[b-7ly5ecf7nx],
    .mobile-insights-btn:active[b-7ly5ecf7nx],
    .draw-grid-item:active[b-7ly5ecf7nx] {
        transform: none;
    }
}

/* Narrow phones: the Insights handle keeps its pills and drops the list of tabs; the chart tiles tighten */
@media screen and (max-width: 400px) {
    .peek-more[b-7ly5ecf7nx] {
        visibility: hidden;
    }

    .chart-tools-sheet .style-btn[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-btn,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-btn,
    .chart-tools-sheet .tool-btn.replay-btn[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-btn {
        gap: 5px;
        padding: 0 6px;
    }

    .chart-tools-sheet .style-btn .pill-label[b-7ly5ecf7nx],
    .chart-tools-sheet[b-7ly5ecf7nx]  .cmp-label,
    .chart-tools-sheet[b-7ly5ecf7nx]  .lay-label,
    .chart-tools-sheet[b-7ly5ecf7nx]  .shr-label,
    .chart-tools-sheet .replay-btn-label[b-7ly5ecf7nx] {
        font-size: 12.5px;
    }
}

/* ── Phones: the replay bar and the list navigator, above the tab bar (thumb reach) ── */
@media screen and (max-width: 900px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    /* Replay: [REPLAY | progress | Exit] / [⏮ ⏪ ▶ ⏩ ⏭ | speed] / [start date | Pick on chart] */
    .chart-main-area[b-7ly5ecf7nx]  .replay-bar {
        display: grid;
        grid-template-columns: repeat(5, minmax(44px, 1fr)) minmax(64px, auto);
        grid-auto-rows: 44px;
        gap: 6px;
        align-items: center;
        min-height: 0;
        /* the bottom strip while replaying: clear the raised Charts button below it */
        padding: 8px max(10px, env(safe-area-inset-right, 0px)) 22px max(10px, env(safe-area-inset-left, 0px));
        border-top: 1px solid rgba(239, 68, 68, 0.35);
        border-bottom: none;
        background: linear-gradient(180deg, rgba(24, 14, 20, 0.98) 0%, rgba(12, 14, 22, 0.99) 100%);
        font-size: 13px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-bar > .replay-sep,
    .chart-main-area[b-7ly5ecf7nx]  .replay-bar > .replay-spacer,
    .chart-main-area[b-7ly5ecf7nx]  .replay-bar > .replay-end {
        display: none;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-chip {
        grid-row: 1;
        grid-column: 1 / 3;
        justify-self: start;
        padding: 4px 9px;
        font-size: 11px;
        border-radius: 6px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-progress {
        grid-row: 1;
        grid-column: 3 / 6;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        font-size: 12px;
        text-align: center;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-exit {
        grid-row: 1;
        grid-column: 6;
        height: 44px;
        min-height: 0;
        border-radius: 12px;
        font-size: 14px;
        font-weight: 600;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-btn.icon {
        grid-row: 2;
        width: auto;
        height: 44px;
        min-height: 0;
        border-radius: 12px;
        font-size: 16px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-btn.icon.play {
        color: #fff;
        background: rgba(239, 68, 68, 0.2);
        border-color: rgba(239, 68, 68, 0.5);
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-speed {
        grid-row: 2;
        grid-column: 6;
        height: 44px;
        min-height: 0;
        border-radius: 12px;
        font-size: 14px !important;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-date {
        grid-row: 3;
        grid-column: 1 / 5;
        width: 100%;
        min-width: 0;
        height: 44px;
        border-radius: 12px;
        font-size: 14px !important;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-btn:not(.icon) {
        grid-row: 3;
        grid-column: 5 / 7;
        height: 44px;
        min-height: 0;
        border-radius: 12px;
        font-size: 13px;
        white-space: nowrap;
    }

    /* List navigator: [‹] [Earnings  12 of 48 / the row's context] [›] [×]. "Back to …" is the tab bar's job on a
       phone (and the browser's back). */
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr) 44px 44px;
        grid-template-rows: auto auto;
        align-content: center;
        min-height: 54px;
        column-gap: 8px;
        row-gap: 0;
        align-items: center;
        padding: 5px max(8px, env(safe-area-inset-right, 0px)) 5px max(8px, env(safe-area-inset-left, 0px));
        border-top: 1px solid var(--m-line);
        border-bottom: none;
        background: linear-gradient(180deg, rgba(14, 19, 29, 0.99) 0%, rgba(11, 15, 23, 0.99) 100%);
        font-size: 13px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav > .chart-nav-spacer {
        display: none;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-btn {
        grid-row: 1 / 3;
        width: 44px;
        height: 44px;
        min-height: 0;
        margin: 0;
        border-radius: 12px;
        font-size: 24px;
        padding: 0 0 3px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-btn:first-of-type { grid-column: 1; }
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-btn:nth-of-type(2) { grid-column: 3; }
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-btn + .chart-nav-btn { margin-left: 0; }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-title {
        grid-row: 1;
        grid-column: 2;
        justify-self: start;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        font-size: 14px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-title::after {
        display: none;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-pos {
        grid-row: 1;
        grid-column: 2;
        justify-self: end;
        color: var(--text-secondary, #94a3b8);
        font-size: 12px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-chip {
        grid-row: 2;
        grid-column: 2;
        justify-self: start;
        max-width: 100%;
        order: 0;
        flex-basis: auto;
        padding: 1px 8px;
        font-size: 11px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-back {
        display: none;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-chip {
        margin-top: 3px;
    }

    /* No context chip: the title line is the whole middle */
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav:not(:has(.chart-nav-chip)) > .chart-nav-title,
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav:not(:has(.chart-nav-chip)) > .chart-nav-pos {
        grid-row: 1 / 3;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-close {
        grid-row: 1 / 3;
        grid-column: 4;
        width: 44px;
        height: 44px;
        min-height: 0;
        padding: 0;
        border-radius: 12px;
        font-size: 22px;
    }

    /* The expired-list variant: [List expired] [Back to … as a button] [×] */
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav.chart-nav-expired {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-expired .chart-nav-chip {
        margin-top: 0;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-expired .chart-nav-back {
        display: inline-flex;
        align-items: center;
        height: 44px;
        padding: 0 14px;
        border-radius: 12px;
        background: var(--m-fill);
        border: 1px solid var(--m-line);
        font-size: 13px;
        white-space: nowrap;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-expired .chart-nav-spacer {
        display: block;
        flex: 1 1 0;
    }

}

/* Landscape phones have no Insights handle, so the list navigator is the bottom strip: its controls keep to the
   left half and the close button to the right edge, clear of the raised Charts button in the middle */
@media screen and (max-width: 900px) and (orientation: landscape) and (max-height: 500px), screen and (pointer: coarse) and (orientation: landscape) and (max-height: 500px) {
    .chart-main-area[b-7ly5ecf7nx]  .chart-nav {
        grid-template-columns: 44px minmax(0, 240px) 44px 1fr 44px;
    }

    .chart-main-area[b-7ly5ecf7nx]  .chart-nav-close {
        grid-column: 5;
    }

    /* Replay: one row - [REPLAY] transport, speed, progress, start date, pick, Exit - so the chart keeps its height */
    .chart-main-area[b-7ly5ecf7nx]  .replay-bar {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
    }

    .chart-main-area[b-7ly5ecf7nx]  .replay-chip { order: 1; flex: 0 0 auto; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-btn.icon { order: 2; flex: 0 0 44px; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-speed { order: 3; flex: 0 0 64px; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-progress { order: 4; flex: 1 1 0; text-align: left; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-date { order: 5; flex: 0 0 150px; width: 150px; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-btn:not(.icon) { order: 6; flex: 0 0 auto; padding: 0 12px; }
    .chart-main-area[b-7ly5ecf7nx]  .replay-exit { order: 7; flex: 0 0 auto; padding: 0 14px; }
}
/* /Components/Pages/ChartSnapshot.razor.rz.scp.css */
/* A shared chart snapshot (P4-G): one card on the dark shell, the image as wide as the viewport allows. */

.snap-page[b-mahmc9lekm] {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    min-height: 100vh;
    padding: 32px 16px 48px;
    background: #06080c;
    color: #e6edf7;
}

.snap-card[b-mahmc9lekm] {
    width: 100%;
    max-width: 1100px;
    border-radius: 10px;
    border: 1px solid rgba(120, 138, 168, 0.22);
    background: linear-gradient(180deg, rgba(20, 27, 40, 0.9), rgba(10, 14, 23, 0.95));
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45);
    overflow: hidden;
}

.snap-head[b-mahmc9lekm] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px 16px;
    padding: 16px 20px 12px;
    border-bottom: 1px solid rgba(120, 138, 168, 0.16);
}

.snap-ident[b-mahmc9lekm] {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.snap-symbol[b-mahmc9lekm] {
    font-family: "JetBrains Mono", ui-monospace, monospace;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: #fff;
}

.snap-tf[b-mahmc9lekm] {
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    color: #97f1ff;
    background: rgba(0, 205, 237, 0.14);
    border: 1px solid rgba(0, 205, 237, 0.35);
}

.snap-meta[b-mahmc9lekm] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    font-size: 13px;
    color: rgba(165, 178, 205, 0.8);
}

.snap-title[b-mahmc9lekm] { color: rgba(230, 237, 247, 0.95); }

.snap-image-link[b-mahmc9lekm] { display: block; background: #0a0e17; }

.snap-image[b-mahmc9lekm] {
    display: block;
    width: 100%;
    height: auto;
}

.snap-foot[b-mahmc9lekm] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
    padding: 12px 20px 14px;
    border-top: 1px solid rgba(120, 138, 168, 0.16);
    font-size: 13px;
    color: rgba(165, 178, 205, 0.8);
}

.snap-made strong[b-mahmc9lekm] { color: #97f1ff; }

.snap-cta[b-mahmc9lekm] {
    color: #e9f3ff;
    text-decoration: none;
    padding: 6px 12px;
    border-radius: 6px;
    border: 1px solid rgba(0, 205, 237, 0.45);
    background: linear-gradient(180deg, rgba(0, 205, 237, 0.26), rgba(0, 146, 168, 0.16));
    transition: box-shadow 0.15s ease;
}

.snap-cta:hover[b-mahmc9lekm] { box-shadow: 0 0 16px rgba(0, 205, 237, 0.3); color: #fff; }

.snap-missing[b-mahmc9lekm] {
    padding: 48px 24px;
    text-align: center;
}

.snap-missing h1[b-mahmc9lekm] {
    font-size: 20px;
    font-weight: 600;
    margin: 0 0 10px;
}

.snap-missing p[b-mahmc9lekm] {
    margin: 0 0 20px;
    color: rgba(165, 178, 205, 0.8);
}

@media (max-width: 600px) {
    .snap-page[b-mahmc9lekm] { padding: 12px 8px 32px; }
    .snap-head[b-mahmc9lekm], .snap-foot[b-mahmc9lekm] { padding-left: 12px; padding-right: 12px; }
    .snap-symbol[b-mahmc9lekm] { font-size: 18px; }
}
/* /Components/Pages/Cockpit.razor.rz.scp.css */
.cockpit[b-ibwhxd5z1g] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.cp-empty[b-ibwhxd5z1g] { padding: 32px 0; }
.cp-empty a[b-ibwhxd5z1g], .cp-fine a[b-ibwhxd5z1g], .cp-link[b-ibwhxd5z1g] { color: var(--primary, #38bdf8); }

.cp-head[b-ibwhxd5z1g] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.cp-head h1[b-ibwhxd5z1g] { margin: 0; font-size: 1.5rem; }
.cp-acct[b-ibwhxd5z1g] { color: var(--text-muted, #999); }

.cp-pill[b-ibwhxd5z1g] {
    margin-left: auto;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 999px;
}

.cp-pill.live[b-ibwhxd5z1g] { background: rgba(34, 197, 94, 0.15); color: #22c55e; }
.cp-pill.poll[b-ibwhxd5z1g] { background: rgba(245, 158, 11, 0.15); color: #f59e0b; }
.cp-pill.bad[b-ibwhxd5z1g] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }

.cp-strip[b-ibwhxd5z1g] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.cp-strip > div[b-ibwhxd5z1g], .cp-kv > div[b-ibwhxd5z1g] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.cp-strip > div[b-ibwhxd5z1g] {
    background: var(--bg-gradient-card, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.08));
    border-radius: 10px;
    padding: 10px 12px;
}

.cp-strip span[b-ibwhxd5z1g], .cp-kv span[b-ibwhxd5z1g] { font-size: 0.72rem; color: var(--text-muted, #999); }
.cp-strip strong[b-ibwhxd5z1g] { font-size: 1.15rem; }

.cp-grid[b-ibwhxd5z1g] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.cp-card[b-ibwhxd5z1g] {
    background: var(--bg-gradient-card, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.08));
    border-radius: 12px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.cp-card h2[b-ibwhxd5z1g] { margin: 0; font-size: 1rem; }
.cp-card h3[b-ibwhxd5z1g] { margin: 4px 0 0; font-size: 0.85rem; color: var(--text-muted, #aaa); }

.cp-row[b-ibwhxd5z1g] { display: flex; align-items: center; justify-content: space-between; gap: 8px; }

.cp-chips[b-ibwhxd5z1g] { display: flex; flex-wrap: wrap; gap: 6px; }

.chip[b-ibwhxd5z1g] {
    font-size: 0.72rem;
    padding: 2px 8px;
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.06);
}

.chip.ok[b-ibwhxd5z1g] { background: rgba(34, 197, 94, 0.12); color: #22c55e; }
.chip.bad[b-ibwhxd5z1g] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }
.chip.warn[b-ibwhxd5z1g] { background: rgba(245, 158, 11, 0.15); color: #f59e0b; }

.cp-kv[b-ibwhxd5z1g] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 8px;
}

.cp-fine[b-ibwhxd5z1g] { margin: 0; font-size: 0.72rem; color: var(--text-muted, #888); }

.cp-tiles[b-ibwhxd5z1g] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
    gap: 10px;
}

.cp-tile[b-ibwhxd5z1g] {
    text-align: left;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.1));
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.02);
    color: inherit;
    padding: 8px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    cursor: pointer;
}

.cp-tile.selected[b-ibwhxd5z1g] { border-color: #38bdf8; }
.cp-tile.heat-bad[b-ibwhxd5z1g] { box-shadow: inset 3px 0 0 #ef4444; }
.cp-tile.heat-warn[b-ibwhxd5z1g] { box-shadow: inset 3px 0 0 #f59e0b; }
.cp-tile.heat-good[b-ibwhxd5z1g] { box-shadow: inset 3px 0 0 #22c55e; }

.t-top[b-ibwhxd5z1g] { display: flex; justify-content: space-between; align-items: center; gap: 6px; }
.side[b-ibwhxd5z1g] { font-size: 0.68rem; font-weight: 700; padding: 1px 6px; border-radius: 4px; }
.side.long[b-ibwhxd5z1g] { background: rgba(34, 197, 94, 0.15); color: #22c55e; }
.side.short[b-ibwhxd5z1g] { background: rgba(239, 68, 68, 0.15); color: #ef4444; }
.t-spark[b-ibwhxd5z1g] { min-height: 44px; }
.t-nums[b-ibwhxd5z1g] { display: flex; justify-content: space-between; font-size: 0.8rem; gap: 6px; }
.t-foot[b-ibwhxd5z1g] { font-size: 0.68rem; }
.muted[b-ibwhxd5z1g] { color: var(--text-muted, #888); }
.gain[b-ibwhxd5z1g] { color: #22c55e; }
.loss[b-ibwhxd5z1g] { color: #ef4444; }

.cp-chart-box[b-ibwhxd5z1g] { height: 420px; }

.cp-select[b-ibwhxd5z1g], .cp-input[b-ibwhxd5z1g] {
    font-size: 0.8rem;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.15));
    background: rgba(255, 255, 255, 0.04);
    color: inherit;
}

.cp-select.small[b-ibwhxd5z1g] { font-size: 0.75rem; }
.cp-input[b-ibwhxd5z1g] { width: 90px; }

.cp-rule[b-ibwhxd5z1g], .cp-add[b-ibwhxd5z1g] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
}

.cp-toggle[b-ibwhxd5z1g] { display: inline-flex; gap: 5px; align-items: center; cursor: pointer; }

.cp-btn[b-ibwhxd5z1g] {
    font-size: 0.78rem;
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.2));
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.cp-btn.small[b-ibwhxd5z1g] { font-size: 0.7rem; padding: 2px 8px; }
.cp-btn.primary[b-ibwhxd5z1g] { border-color: rgba(34, 197, 94, 0.6); color: #22c55e; }
.cp-error[b-ibwhxd5z1g] { margin: 0; font-size: 0.75rem; color: #ef4444; }

.cp-events[b-ibwhxd5z1g] { margin: 0; padding-left: 16px; font-size: 0.78rem; display: flex; flex-direction: column; gap: 3px; }

@media (max-width: 768px) {
    .cp-strip[b-ibwhxd5z1g] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cp-grid[b-ibwhxd5z1g] { grid-template-columns: 1fr; }
    .cp-chart-box[b-ibwhxd5z1g] { height: 320px; }
}
/* /Components/Pages/CompanyOverview.razor.rz.scp.css */
.ovw-container[b-8dtuo1m14y] {
    max-width: 1320px;
    margin: 0 auto;
    padding: 16px 20px 48px;
    color: var(--text-primary, #e6edf3);
}

/* ══ Command strip ══ */
.ovw-command[b-8dtuo1m14y] {
    position: sticky;
    top: 60px;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 12px 16px;
    margin-bottom: 20px;
    background: color-mix(in srgb, var(--terminal-bg, #0d1117) 88%, transparent);
    backdrop-filter: blur(10px);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 14px;
}
.ovw-brand[b-8dtuo1m14y] { display: flex; align-items: center; gap: 12px; }
.ovw-brand-mark[b-8dtuo1m14y] {
    width: 40px; height: 40px; border-radius: 11px;
    display: grid; place-items: center;
    background: var(--accent-gradient, linear-gradient(135deg, #a78bfa, #3b82f6));
    color: #fff; font-size: 1.2rem;
    box-shadow: var(--accent-glow, 0 0 25px rgba(167,139,250,0.4));
}
.ovw-brand-title[b-8dtuo1m14y] { font-weight: 800; font-size: 1.05rem; letter-spacing: -0.01em; }
.ovw-brand-sub[b-8dtuo1m14y] { font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.ovw-search[b-8dtuo1m14y] { flex: 1; max-width: 520px; margin-left: auto; }

/* ══ Landing ══ */
.ovw-landing[b-8dtuo1m14y] {
    position: relative;
    text-align: center;
    padding: 80px 20px 100px;
    overflow: hidden;
}
.ovw-landing-glow[b-8dtuo1m14y] {
    position: absolute; inset: -40% 0 auto 0; height: 400px;
    background: radial-gradient(ellipse at center, rgba(167,139,250,0.22), transparent 62%);
    pointer-events: none;
}
.ovw-landing h1[b-8dtuo1m14y] {
    position: relative;
    font-size: clamp(1.8rem, 4vw, 3rem);
    font-weight: 850;
    letter-spacing: -0.02em;
    margin: 0 auto 16px;
    max-width: 760px;
    animation: ovw-rise-b-8dtuo1m14y 0.6s ease-out both;
}
.ovw-landing h1 .g-buy[b-8dtuo1m14y] { color: #22c55e; }
.ovw-landing h1 .g-short[b-8dtuo1m14y] { color: #ef4444; }
.ovw-landing p[b-8dtuo1m14y] {
    position: relative;
    max-width: 560px; margin: 0 auto 28px;
    color: var(--text-secondary, #adbac7);
    line-height: 1.6;
    animation: ovw-rise-b-8dtuo1m14y 0.6s 0.08s ease-out both;
}
.ovw-examples[b-8dtuo1m14y] { position: relative; display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; animation: ovw-rise-b-8dtuo1m14y 0.6s 0.16s ease-out both; }
.ovw-examples button[b-8dtuo1m14y] {
    padding: 8px 18px; border-radius: 999px; font-weight: 700; font-size: 0.85rem;
    background: var(--terminal-surface, #161b22);
    border: 1px solid var(--terminal-border, #30363d);
    color: var(--text-primary, #e6edf3);
    cursor: pointer; transition: all 0.18s ease;
}
.ovw-examples button:hover[b-8dtuo1m14y] {
    border-color: var(--accent, #a78bfa);
    box-shadow: 0 0 0 3px rgba(167,139,250,0.15);
    transform: translateY(-2px);
}

/* ══ Hero ══ */
.ovw-hero[b-8dtuo1m14y] {
    display: grid;
    grid-template-columns: 1fr 1.1fr;
    gap: 16px;
    margin-bottom: 20px;
}
@media (max-width: 900px) { .ovw-hero[b-8dtuo1m14y] { grid-template-columns: 1fr; } }

.ovw-facts[b-8dtuo1m14y], .ovw-decision[b-8dtuo1m14y] {
    background: var(--terminal-surface, #161b22);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 16px;
    padding: 20px;
    animation: ovw-rise-b-8dtuo1m14y 0.5s ease-out both;
}
.ovw-facts-top[b-8dtuo1m14y] { display: flex; gap: 14px; align-items: center; margin-bottom: 18px; }
.ovw-logo[b-8dtuo1m14y] { width: 52px; height: 52px; border-radius: 12px; object-fit: contain; background: #fff; padding: 4px; }
.ovw-logo-fallback[b-8dtuo1m14y] {
    display: grid; place-items: center; font-size: 1.5rem; font-weight: 800; color: #fff;
    background: var(--accent-gradient, linear-gradient(135deg, #a78bfa, #3b82f6)); padding: 0;
}
.ovw-symbol[b-8dtuo1m14y] { font-size: 1.5rem; font-weight: 850; letter-spacing: -0.02em; }
.ovw-name[b-8dtuo1m14y] { font-size: 0.9rem; color: var(--text-secondary, #adbac7); }
.ovw-sector[b-8dtuo1m14y] { font-size: 0.75rem; color: var(--text-muted, #8b949e); margin-top: 2px; }
.ovw-intraday-link[b-8dtuo1m14y] { display: inline-flex; align-items: center; gap: 5px; margin-top: 6px; font-size: 0.74rem; color: var(--accent, #a78bfa); text-decoration: none; }
.ovw-intraday-link:hover[b-8dtuo1m14y] { text-decoration: underline; }
.ovw-facts-grid[b-8dtuo1m14y] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ovw-facts-grid > div[b-8dtuo1m14y] { display: flex; flex-direction: column; gap: 2px; }
.ovw-facts-grid span[b-8dtuo1m14y] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.ovw-facts-grid strong[b-8dtuo1m14y] { font-size: 1rem; font-weight: 700; }

/* Decision hero */
.ovw-decision[b-8dtuo1m14y] { position: relative; overflow: hidden; }
.ovw-decision.dir-bull[b-8dtuo1m14y] { box-shadow: inset 0 0 0 1px rgba(34,197,94,0.4), 0 0 30px rgba(34,197,94,0.08); }
.ovw-decision.dir-bear[b-8dtuo1m14y] { box-shadow: inset 0 0 0 1px rgba(239,68,68,0.4), 0 0 30px rgba(239,68,68,0.08); }
.ovw-decision-inner.blurred[b-8dtuo1m14y] { filter: blur(7px); pointer-events: none; user-select: none; }
.ovw-decision-skel[b-8dtuo1m14y] { height: 150px; border-radius: 12px; background: var(--terminal-border, #30363d); animation: ovw-pulse-b-8dtuo1m14y 1.4s ease-in-out infinite; }

.ovw-decision-action[b-8dtuo1m14y] { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.ovw-decision-label[b-8dtuo1m14y] { font-size: 1.9rem; font-weight: 850; letter-spacing: -0.02em; line-height: 1; }
.dir-bull .ovw-decision-label[b-8dtuo1m14y] { color: #22c55e; }
.dir-bear .ovw-decision-label[b-8dtuo1m14y] { color: #ef4444; }
.ovw-decision-aligned[b-8dtuo1m14y] { font-size: 0.8rem; color: var(--text-secondary, #adbac7); margin-top: 4px; }

.ovw-conv[b-8dtuo1m14y] { margin-bottom: 16px; }
.ovw-conv-label[b-8dtuo1m14y] { display: flex; justify-content: space-between; font-size: 0.78rem; margin-bottom: 6px; color: var(--text-muted, #8b949e); }
.ovw-conv-label b[b-8dtuo1m14y] { color: var(--text-primary, #e6edf3); }
.ovw-conv-bar[b-8dtuo1m14y] { height: 8px; border-radius: 999px; background: var(--terminal-border, #30363d); overflow: hidden; }
.ovw-conv-fill[b-8dtuo1m14y] { height: 100%; border-radius: 999px; transition: width 0.8s cubic-bezier(0.2,0.8,0.2,1); }
.ovw-conv-fill.dir-bull[b-8dtuo1m14y] { background: linear-gradient(90deg, #16a34a, #22c55e); }
.ovw-conv-fill.dir-bear[b-8dtuo1m14y] { background: linear-gradient(90deg, #dc2626, #ef4444); }
.ovw-conv-fill.dir-neutral[b-8dtuo1m14y] { background: linear-gradient(90deg, #6b7280, #9ca3af); }

.ovw-bestdate[b-8dtuo1m14y] {
    display: flex; align-items: center; gap: 12px;
    padding: 12px 14px; border-radius: 12px;
    background: color-mix(in srgb, var(--accent, #a78bfa) 10%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent, #a78bfa) 30%, transparent);
}
.ovw-bestdate i[b-8dtuo1m14y] { font-size: 1.2rem; color: var(--accent, #a78bfa); }
.ovw-bestdate-date[b-8dtuo1m14y] { display: block; font-weight: 800; font-size: 1rem; }
.ovw-bestdate-reason[b-8dtuo1m14y] { display: block; font-size: 0.76rem; color: var(--text-secondary, #adbac7); }

.ovw-gate[b-8dtuo1m14y] {
    position: absolute; inset: 0;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 6px; text-align: center; padding: 20px;
    background: color-mix(in srgb, var(--terminal-surface, #161b22) 55%, transparent);
}
.ovw-gate i[b-8dtuo1m14y] { font-size: 1.5rem; color: var(--accent, #a78bfa); }
.ovw-gate-title[b-8dtuo1m14y] { font-weight: 800; font-size: 1.05rem; }
.ovw-gate p[b-8dtuo1m14y] { font-size: 0.8rem; color: var(--text-secondary, #adbac7); margin: 0 0 8px; max-width: 320px; }

/* ══ Signal scoreboard ══ */
.ovw-signals[b-8dtuo1m14y] { display: flex; flex-wrap: wrap; gap: 10px; margin: 2px 0 18px; }
.ovw-signal[b-8dtuo1m14y] {
    flex: 1 1 0; min-width: 118px;
    display: flex; align-items: center; gap: 9px;
    padding: 11px 15px; border-radius: 13px;
    background: var(--terminal-surface, #161b22); border: 1px solid var(--terminal-border, #30363d);
    position: relative; overflow: hidden;
    animation: ovw-rise-b-8dtuo1m14y 0.5s ease-out both;
    transition: transform 0.18s ease, border-color 0.18s ease;
}
.ovw-signal:hover[b-8dtuo1m14y] { transform: translateY(-2px); }
.ovw-signal[b-8dtuo1m14y]::before { content: ''; position: absolute; inset: 0; opacity: 0; transition: opacity 0.25s ease; }
.ovw-signal i[b-8dtuo1m14y] { font-size: 1.05rem; z-index: 1; }
.ovw-signal-label[b-8dtuo1m14y] { font-size: 0.82rem; font-weight: 700; z-index: 1; }
.ovw-signal-arrow[b-8dtuo1m14y] { margin-left: auto; font-size: 1.05rem; font-weight: 800; z-index: 1; }
.ovw-signal.bull[b-8dtuo1m14y] { border-color: rgba(34,197,94,0.4); }
.ovw-signal.bull[b-8dtuo1m14y]::before { background: linear-gradient(135deg, rgba(34,197,94,0.12), transparent 62%); opacity: 1; }
.ovw-signal.bull i[b-8dtuo1m14y], .ovw-signal.bull .ovw-signal-arrow[b-8dtuo1m14y] { color: #22c55e; }
.ovw-signal.bear[b-8dtuo1m14y] { border-color: rgba(239,68,68,0.4); }
.ovw-signal.bear[b-8dtuo1m14y]::before { background: linear-gradient(135deg, rgba(239,68,68,0.12), transparent 62%); opacity: 1; }
.ovw-signal.bear i[b-8dtuo1m14y], .ovw-signal.bear .ovw-signal-arrow[b-8dtuo1m14y] { color: #ef4444; }
.ovw-signal.neutral i[b-8dtuo1m14y], .ovw-signal.neutral .ovw-signal-arrow[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); }
.ovw-signal.loading[b-8dtuo1m14y] { opacity: 0.55; }
.ovw-signal.loading i[b-8dtuo1m14y] { animation: ovw-pulse-b-8dtuo1m14y 1.4s ease-in-out infinite; }

/* ══ Rotating peer ticker ══ */
.ovw-peers[b-8dtuo1m14y] {
    margin-bottom: 18px; border: 1px solid var(--terminal-border, #30363d);
    border-radius: 14px; background: var(--terminal-surface, #161b22); overflow: hidden;
    animation: ovw-rise-b-8dtuo1m14y 0.5s ease-out both;
}
.ovw-peers-label[b-8dtuo1m14y] {
    display: flex; align-items: center; gap: 8px; padding: 10px 15px;
    font-size: 0.78rem; font-weight: 700; border-bottom: 1px solid var(--terminal-border, #30363d);
}
.ovw-peers-label i[b-8dtuo1m14y] { color: var(--accent, #a78bfa); }
.ovw-peers-label em[b-8dtuo1m14y] { margin-left: auto; font-style: normal; color: var(--text-muted, #8b949e); font-weight: 500; font-size: 0.72rem; }
.ovw-peers-viewport[b-8dtuo1m14y] {
    overflow: hidden; padding: 11px 0;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}
.ovw-peers-track[b-8dtuo1m14y] { display: flex; gap: 10px; width: max-content; padding: 0 6px; animation: ovw-marquee-b-8dtuo1m14y 46s linear infinite; }
.ovw-peers:hover .ovw-peers-track[b-8dtuo1m14y] { animation-play-state: paused; }
.ovw-peer[b-8dtuo1m14y] {
    display: inline-flex; align-items: center; gap: 6px; padding: 6px 13px; border-radius: 999px;
    background: var(--terminal-bg, #0d1117); border: 1px solid var(--terminal-border, #30363d);
    font-size: 0.8rem; font-weight: 600; white-space: nowrap;
}
.ovw-peer b[b-8dtuo1m14y] { font-weight: 800; letter-spacing: 0.02em; color: var(--text-primary, #e6edf3); }
.ovw-peer.pos[b-8dtuo1m14y] { color: #4ade80; }
.ovw-peer.neg[b-8dtuo1m14y] { color: #f87171; }
.ovw-peer.current[b-8dtuo1m14y] {
    border-color: var(--accent, #a78bfa);
    background: color-mix(in srgb, var(--accent, #a78bfa) 14%, var(--terminal-bg, #0d1117));
    box-shadow: 0 0 12px rgba(167,139,250,0.35);
}
@keyframes ovw-marquee-b-8dtuo1m14y { from { transform: translateX(0); } to { transform: translateX(-50%); } }

/* ══ Card grid ══ */
.ovw-grid[b-8dtuo1m14y] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 14px;
    grid-auto-flow: dense;
}
.ovw-card[b-8dtuo1m14y] {
    background: var(--terminal-surface, #161b22);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 15px;
    padding: 16px;
    min-height: 150px;
    animation: ovw-rise-b-8dtuo1m14y 0.5s ease-out both;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
.ovw-card:hover[b-8dtuo1m14y] { box-shadow: 0 8px 24px rgba(0,0,0,0.28); }
.ovw-card:hover[b-8dtuo1m14y] { border-color: color-mix(in srgb, var(--accent, #a78bfa) 45%, var(--terminal-border, #30363d)); transform: translateY(-2px); }
.ovw-card-wide[b-8dtuo1m14y] { grid-column: span 2; }
@media (max-width: 720px) { .ovw-card-wide[b-8dtuo1m14y] { grid-column: span 1; } }
.ovw-card-tall[b-8dtuo1m14y] { min-height: 420px; }

.ovw-card-head[b-8dtuo1m14y] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.ovw-card-title[b-8dtuo1m14y] { font-weight: 750; font-size: 0.95rem; display: flex; align-items: center; gap: 8px; }
.ovw-card-title i[b-8dtuo1m14y] { color: var(--accent, #a78bfa); }

.ovw-lean-badge[b-8dtuo1m14y] {
    display: inline-flex; align-items: center; gap: 5px;
    padding: 3px 10px; border-radius: 999px; font-size: 0.72rem; font-weight: 700;
    background: var(--terminal-border, #30363d); color: var(--text-secondary, #adbac7);
}
.ovw-lean-badge.bull[b-8dtuo1m14y] { background: rgba(34,197,94,0.16); color: #4ade80; }
.ovw-lean-badge.bear[b-8dtuo1m14y] { background: rgba(239,68,68,0.16); color: #f87171; }

/* meters + chips */
.ovw-meter[b-8dtuo1m14y] { margin-bottom: 12px; }
.ovw-meter-row[b-8dtuo1m14y] { display: flex; align-items: center; gap: 8px; font-size: 0.82rem; margin-bottom: 6px; }
.ovw-meter-row span:first-child[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); min-width: 64px; }
.ovw-meter-row b[b-8dtuo1m14y] { font-weight: 700; }
.ovw-conf[b-8dtuo1m14y] { margin-left: auto; font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.ovw-bar[b-8dtuo1m14y] { height: 7px; border-radius: 999px; background: var(--terminal-border, #30363d); overflow: hidden; }
.ovw-fill[b-8dtuo1m14y] { height: 100%; border-radius: 999px; background: linear-gradient(90deg, #6b7280, #9ca3af); transition: width 0.7s ease; }
.ovw-fill.pos[b-8dtuo1m14y] { background: linear-gradient(90deg, #16a34a, #22c55e); }
.ovw-fill.neg[b-8dtuo1m14y] { background: linear-gradient(90deg, #dc2626, #ef4444); }

.ovw-chips[b-8dtuo1m14y] { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.ovw-chip[b-8dtuo1m14y] {
    padding: 3px 9px; border-radius: 7px; font-size: 0.72rem; font-weight: 600;
    background: var(--terminal-bg, #0d1117); border: 1px solid var(--terminal-border, #30363d);
    color: var(--text-secondary, #adbac7);
}
.ovw-chip.pos[b-8dtuo1m14y] { color: #4ade80; border-color: rgba(34,197,94,0.3); }
.ovw-chip.neg[b-8dtuo1m14y] { color: #f87171; border-color: rgba(239,68,68,0.3); }

/* technicals indicator grid */
.ovw-ind-groups[b-8dtuo1m14y] { display: flex; flex-direction: column; gap: 12px; margin-top: 14px; }
.ovw-ind-tag[b-8dtuo1m14y] {
    font-size: 0.6rem; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase;
    padding: 2px 7px; border-radius: 4px; display: inline-block; margin-bottom: 7px;
}
.ovw-ind-tag.momentum[b-8dtuo1m14y] { background: rgba(233, 30, 99, 0.15); color: #f472b6; }
.ovw-ind-tag.trend[b-8dtuo1m14y] { background: rgba(59, 130, 246, 0.15); color: #60a5fa; }
.ovw-ind-tag.vol[b-8dtuo1m14y] { background: rgba(167, 139, 250, 0.15); color: #a78bfa; }
.ovw-ind-grid[b-8dtuo1m14y] { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 6px; }
.ovw-ind-cell[b-8dtuo1m14y] {
    display: flex; align-items: center; gap: 6px;
    padding: 5px 9px; border-radius: 8px;
    background: var(--terminal-bg, #0d1117); border: 1px solid var(--terminal-border, #30363d);
    transition: border-color 0.15s ease;
}
.ovw-ind-cell:hover[b-8dtuo1m14y] { border-color: color-mix(in srgb, var(--accent, #a78bfa) 40%, var(--terminal-border, #30363d)); }
.ovw-ind-label[b-8dtuo1m14y] { font-size: 0.62rem; font-weight: 600; color: var(--text-muted, #8b949e); }
.ovw-ind-val[b-8dtuo1m14y] { margin-left: auto; font-size: 0.8rem; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text-primary, #e6edf3); }
.ovw-ind-val.ob[b-8dtuo1m14y], .ovw-ind-val.bear[b-8dtuo1m14y] { color: #f85149; }
.ovw-ind-val.os[b-8dtuo1m14y], .ovw-ind-val.bull[b-8dtuo1m14y] { color: #3fb950; }
.ovw-ind-val.neu[b-8dtuo1m14y] { color: var(--text-secondary, #adbac7); }
.ovw-ind-badge[b-8dtuo1m14y] {
    font-size: 0.56rem; font-weight: 800; letter-spacing: 0.02em;
    padding: 1px 4px; border-radius: 3px; min-width: 16px; text-align: center;
}
.ovw-ind-badge.ob[b-8dtuo1m14y], .ovw-ind-badge.bear[b-8dtuo1m14y] { background: rgba(248, 81, 73, 0.2); color: #f85149; }
.ovw-ind-badge.os[b-8dtuo1m14y], .ovw-ind-badge.bull[b-8dtuo1m14y] { background: rgba(63, 185, 80, 0.2); color: #3fb950; }
.ovw-ind-badge.neu[b-8dtuo1m14y] { background: rgba(139, 148, 158, 0.15); color: #8b949e; }
.ovw-ind-context[b-8dtuo1m14y] { margin-top: 12px; }

/* pillars */
.ovw-pillars[b-8dtuo1m14y] { display: flex; gap: 8px; align-items: flex-end; height: 78px; margin-top: 4px; }
.ovw-pillar[b-8dtuo1m14y] { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 5px; height: 100%; }
.ovw-pillar-bar[b-8dtuo1m14y] { flex: 1; width: 100%; max-width: 26px; border-radius: 6px 6px 3px 3px; background: var(--terminal-border, #30363d); display: flex; align-items: flex-end; overflow: hidden; }
.ovw-pillar-fill[b-8dtuo1m14y] { width: 100%; border-radius: 5px 5px 0 0; transition: height 0.7s ease; background: #9ca3af; }
.ovw-pillar-fill.pos[b-8dtuo1m14y] { background: linear-gradient(180deg, #22c55e, #16a34a); }
.ovw-pillar-fill.mid[b-8dtuo1m14y] { background: linear-gradient(180deg, #eab308, #ca8a04); }
.ovw-pillar-fill.neg[b-8dtuo1m14y] { background: linear-gradient(180deg, #ef4444, #dc2626); }
.ovw-pillar span[b-8dtuo1m14y] { font-size: 0.6rem; color: var(--text-muted, #8b949e); text-transform: uppercase; }

/* earnings */
.ovw-earn-top[b-8dtuo1m14y] { display: flex; gap: 16px; align-items: center; margin-bottom: 14px; }
.ovw-grade[b-8dtuo1m14y] {
    width: 56px; height: 56px; border-radius: 14px; flex-shrink: 0;
    display: grid; place-items: center; font-size: 1.7rem; font-weight: 850; color: #fff;
    background: var(--terminal-border, #30363d);
}
.ovw-grade.grade-a[b-8dtuo1m14y] { background: linear-gradient(135deg, #16a34a, #22c55e); }
.ovw-grade.grade-b[b-8dtuo1m14y] { background: linear-gradient(135deg, #1a8cff, #06b6d4); }
.ovw-grade.grade-c[b-8dtuo1m14y] { background: linear-gradient(135deg, #ca8a04, #eab308); }
.ovw-grade.grade-d[b-8dtuo1m14y], .ovw-grade.grade-f[b-8dtuo1m14y] { background: linear-gradient(135deg, #dc2626, #ef4444); }
.ovw-grade.grade-cal[b-8dtuo1m14y] { background: linear-gradient(135deg, #6d5ef0, #a78bfa); font-size: 1.4rem; }
.ovw-earn-meta[b-8dtuo1m14y] { flex: 1; display: flex; flex-direction: column; gap: 5px; }
.ovw-earn-line[b-8dtuo1m14y] { display: flex; justify-content: space-between; font-size: 0.82rem; }
.ovw-earn-line span[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); }
.ovw-earn-line b[b-8dtuo1m14y] { font-weight: 700; }
.ovw-timing[b-8dtuo1m14y] {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    padding: 10px 12px; border-radius: 10px;
    background: color-mix(in srgb, var(--accent, #a78bfa) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent, #a78bfa) 24%, transparent);
    font-size: 0.8rem;
}
.ovw-timing i[b-8dtuo1m14y] { color: var(--accent, #a78bfa); }
.ovw-timing-play[b-8dtuo1m14y] { font-weight: 800; }
.ovw-timing-detail[b-8dtuo1m14y] { color: var(--text-secondary, #adbac7); }
.ovw-timing-rr[b-8dtuo1m14y] { margin-left: auto; font-size: 0.72rem; color: var(--text-muted, #8b949e); }

/* zone */
.ovw-zone-headline[b-8dtuo1m14y] { font-size: 0.9rem; line-height: 1.5; color: var(--text-secondary, #adbac7); margin-bottom: 14px; }

/* reversal callout */
.ovw-reversal[b-8dtuo1m14y] {
    display: flex; align-items: center; gap: 9px;
    padding: 9px 12px; border-radius: 10px; margin-bottom: 12px;
    font-size: 0.8rem; font-weight: 600;
    animation: ovw-rise-b-8dtuo1m14y 0.4s ease-out both;
}
.ovw-reversal i[b-8dtuo1m14y] { font-size: 1.1rem; }
.ovw-reversal.bull[b-8dtuo1m14y] { background: rgba(34,197,94,0.12); border: 1px solid rgba(34,197,94,0.35); color: #4ade80; }
.ovw-reversal.bear[b-8dtuo1m14y] { background: rgba(239,68,68,0.12); border: 1px solid rgba(239,68,68,0.35); color: #f87171; }
.ovw-reversal b[b-8dtuo1m14y] { color: var(--text-primary, #e6edf3); }

/* price target */
.ovw-pt-row[b-8dtuo1m14y] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.ovw-pt-cap[b-8dtuo1m14y] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.ovw-pt-price[b-8dtuo1m14y] { font-size: 1.5rem; font-weight: 800; letter-spacing: -0.01em; }
.ovw-pt-upside[b-8dtuo1m14y] { font-size: 1.35rem; font-weight: 850; }
.ovw-pt-upside.pos[b-8dtuo1m14y] { color: #22c55e; }
.ovw-pt-upside.neg[b-8dtuo1m14y] { color: #ef4444; }
.ovw-pt-bar[b-8dtuo1m14y] { position: relative; height: 8px; border-radius: 999px; background: linear-gradient(90deg, #ef4444, #6b7280 50%, #22c55e); opacity: 0.55; margin-top: 4px; }
.ovw-pt-marker[b-8dtuo1m14y] { position: absolute; top: 50%; width: 12px; height: 12px; border-radius: 50%; background: #fff; border: 2px solid var(--accent, #a78bfa); transform: translate(-50%, -50%); box-shadow: 0 0 8px rgba(167,139,250,0.6); }
.ovw-pt-range[b-8dtuo1m14y] { display: flex; justify-content: space-between; font-size: 0.7rem; font-weight: 600; margin-top: 7px; }
.ovw-pt-range .neg[b-8dtuo1m14y] { color: #f87171; }
.ovw-pt-range .pos[b-8dtuo1m14y] { color: #4ade80; }
.ovw-pt-now[b-8dtuo1m14y] { color: var(--text-secondary, #adbac7); }

/* support / resistance */
.ovw-sr[b-8dtuo1m14y] { margin-top: 14px; }
.ovw-sr-head[b-8dtuo1m14y] { display: flex; justify-content: space-between; align-items: center; font-size: 0.78rem; color: var(--text-muted, #8b949e); margin-bottom: 8px; }
.ovw-sr-rr[b-8dtuo1m14y] { font-weight: 700; color: var(--text-secondary, #adbac7); }
.ovw-sr-rr.good[b-8dtuo1m14y] { color: #3fb950; }
.ovw-sr-rr.bad[b-8dtuo1m14y] { color: #f85149; }
.ovw-sr-bar[b-8dtuo1m14y] {
    position: relative; height: 8px; border-radius: 999px;
    background: linear-gradient(90deg, #ef4444, #6b7280 50%, #22c55e);
    opacity: 0.55;
}
.ovw-sr-marker[b-8dtuo1m14y] {
    position: absolute; top: 50%; width: 12px; height: 12px; border-radius: 50%;
    background: #fff; border: 2px solid var(--accent, #a78bfa);
    transform: translate(-50%, -50%); box-shadow: 0 0 8px rgba(167,139,250,0.6);
}
.ovw-sr-labels[b-8dtuo1m14y] { display: flex; justify-content: space-between; font-size: 0.7rem; font-weight: 600; margin-top: 7px; }
.ovw-sr-labels .neg[b-8dtuo1m14y] { color: #f87171; }
.ovw-sr-labels .pos[b-8dtuo1m14y] { color: #4ade80; }

/* relative strength */
.ovw-rs-headline[b-8dtuo1m14y] { font-size: 1.35rem; font-weight: 800; letter-spacing: -0.01em; }
.ovw-rs-headline.pos[b-8dtuo1m14y] { color: #22c55e; }
.ovw-rs-headline.neg[b-8dtuo1m14y] { color: #ef4444; }
.ovw-rs-sub[b-8dtuo1m14y] { font-size: 0.74rem; color: var(--text-muted, #8b949e); margin-bottom: 14px; }
.ovw-rs-rows[b-8dtuo1m14y] { display: flex; flex-direction: column; gap: 8px; }
.ovw-rs-row[b-8dtuo1m14y] { display: flex; justify-content: space-between; align-items: center; font-size: 0.85rem; padding: 8px 12px; border-radius: 9px; background: var(--terminal-bg, #0d1117); border: 1px solid var(--terminal-border, #30363d); }
.ovw-rs-row span[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); }
.ovw-rs-row b[b-8dtuo1m14y] { font-weight: 700; font-variant-numeric: tabular-nums; }
.ovw-rs-row b.pos[b-8dtuo1m14y] { color: #4ade80; }
.ovw-rs-row b.neg[b-8dtuo1m14y] { color: #f87171; }

/* options */
.ovw-iv-move[b-8dtuo1m14y] { font-size: 2.2rem; font-weight: 850; letter-spacing: -0.02em; color: var(--accent, #a78bfa); }
.ovw-iv-sub[b-8dtuo1m14y] { font-size: 0.76rem; color: var(--text-muted, #8b949e); margin-bottom: 14px; }
.ovw-iv-range[b-8dtuo1m14y] { display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 0.85rem; }
.ovw-iv-range .neg[b-8dtuo1m14y] { color: #f87171; }
.ovw-iv-range .pos[b-8dtuo1m14y] { color: #4ade80; }
.ovw-iv-track[b-8dtuo1m14y] { flex: 1; height: 4px; border-radius: 999px; background: linear-gradient(90deg, #ef4444, #6b7280, #22c55e); }

/* states */
.ovw-skel[b-8dtuo1m14y] { display: flex; flex-direction: column; gap: 10px; }
.ovw-skel span[b-8dtuo1m14y] { height: 14px; border-radius: 6px; background: var(--terminal-border, #30363d); animation: ovw-pulse-b-8dtuo1m14y 1.4s ease-in-out infinite; }
.ovw-skel span:nth-child(1)[b-8dtuo1m14y] { width: 70%; }
.ovw-skel span:nth-child(2)[b-8dtuo1m14y] { width: 100%; height: 34px; }
.ovw-skel span:nth-child(3)[b-8dtuo1m14y] { width: 50%; }
.ovw-card-msg[b-8dtuo1m14y] { display: flex; align-items: center; gap: 8px; font-size: 0.82rem; color: var(--text-secondary, #adbac7); padding: 14px 0; }
.ovw-card-msg.muted[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); }
.ovw-card-msg i[b-8dtuo1m14y] { color: var(--accent, #a78bfa); }
.ovw-card-msg.muted i[b-8dtuo1m14y] { color: var(--text-muted, #8b949e); }

.ovw-footer[b-8dtuo1m14y] { margin-top: 28px; text-align: center; font-size: 0.72rem; color: var(--text-muted, #8b949e); }

/* animations */
@keyframes ovw-rise-b-8dtuo1m14y { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
@keyframes ovw-pulse-b-8dtuo1m14y { 0%, 100% { opacity: 0.45; } 50% { opacity: 0.8; } }

@media (prefers-reduced-motion: reduce) {
    .ovw-peers-track[b-8dtuo1m14y] { animation: none; }
    .ovw-card[b-8dtuo1m14y], .ovw-signal[b-8dtuo1m14y], .ovw-peers[b-8dtuo1m14y], .ovw-facts[b-8dtuo1m14y], .ovw-decision[b-8dtuo1m14y], .ovw-landing h1[b-8dtuo1m14y], .ovw-landing p[b-8dtuo1m14y], .ovw-examples[b-8dtuo1m14y] { animation: none; }
}
/* /Components/Pages/CryptoIntelligence.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════ */
/* CRYPTO INTELLIGENCE PAGE STYLES                                         */
/* ═══════════════════════════════════════════════════════════════════════ */

.crypto-intelligence-container[b-wj4kz6j4qd] {
    padding: 1.5rem;
    max-width: 1600px;
    margin: 0 auto;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* HEADER                                                                   */
/* ═══════════════════════════════════════════════════════════════════════ */

.crypto-header[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.crypto-header h1[b-wj4kz6j4qd] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.crypto-header h1 i[b-wj4kz6j4qd] {
    color: #f7931a; /* Bitcoin orange */
}

.header-left[b-wj4kz6j4qd] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.header-right[b-wj4kz6j4qd] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.status-badge[b-wj4kz6j4qd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 600;
}

.status-badge.running[b-wj4kz6j4qd] {
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}

.status-badge.stopped[b-wj4kz6j4qd] {
    background: rgba(239, 68, 68, 0.15);
    color: #ef4444;
}

.status-dot[b-wj4kz6j4qd] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    animation: pulse-b-wj4kz6j4qd 2s infinite;
}

@keyframes pulse-b-wj4kz6j4qd {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

.universe-count[b-wj4kz6j4qd] {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.9rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* BTC ANCHOR PANEL                                                         */
/* ═══════════════════════════════════════════════════════════════════════ */

.btc-anchor-panel[b-wj4kz6j4qd] {
    background: linear-gradient(135deg, rgba(247, 147, 26, 0.1) 0%, rgba(0, 0, 0, 0.3) 100%);
    border: 1px solid rgba(247, 147, 26, 0.3);
    border-radius: 12px;
    padding: 1.25rem;
    margin-bottom: 1.5rem;
}

.panel-header[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.panel-header h2[b-wj4kz6j4qd] {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btc-metrics[b-wj4kz6j4qd] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
}

.metric-card[b-wj4kz6j4qd] {
    background: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    padding: 1rem;
    text-align: center;
}

.metric-label[b-wj4kz6j4qd] {
    display: block;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: rgba(255, 255, 255, 0.6);
    margin-bottom: 0.5rem;
}

.metric-value[b-wj4kz6j4qd] {
    font-size: 1.25rem;
    font-weight: 700;
}

.metric-card.positive .metric-value[b-wj4kz6j4qd] { color: #22c55e; }
.metric-card.negative .metric-value[b-wj4kz6j4qd] { color: #ef4444; }
.metric-card.regime-up[b-wj4kz6j4qd] { border-left: 3px solid #22c55e; }
.metric-card.regime-down[b-wj4kz6j4qd] { border-left: 3px solid #ef4444; }
.metric-card.regime-choppy[b-wj4kz6j4qd] { border-left: 3px solid #f59e0b; }
.metric-card.regime-highvol[b-wj4kz6j4qd] { border-left: 3px solid #8b5cf6; }
.metric-card.regime-lowvol[b-wj4kz6j4qd] { border-left: 3px solid #6b7280; }

/* ═══════════════════════════════════════════════════════════════════════ */
/* SIGNALS SECTION                                                          */
/* ═══════════════════════════════════════════════════════════════════════ */

.signals-section[b-wj4kz6j4qd] {
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 1.25rem;
    margin-bottom: 1.5rem;
}

.filter-controls[b-wj4kz6j4qd] {
    display: flex;
    gap: 0.5rem;
}

.filter-controls .form-select[b-wj4kz6j4qd] {
    width: auto;
    background-color: rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.2);
    color: white;
}

.loading-state[b-wj4kz6j4qd], .empty-state[b-wj4kz6j4qd] {
    text-align: center;
    padding: 3rem;
    color: rgba(255, 255, 255, 0.5);
}

.empty-state i[b-wj4kz6j4qd] {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: block;
}

.signals-grid[b-wj4kz6j4qd] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

.signal-card[b-wj4kz6j4qd] {
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 1rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.signal-card:hover[b-wj4kz6j4qd] {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.signal-card.bullish[b-wj4kz6j4qd] {
    border-left: 4px solid #22c55e;
}

.signal-card.bearish[b-wj4kz6j4qd] {
    border-left: 4px solid #ef4444;
}

.signal-header[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.signal-header .symbol[b-wj4kz6j4qd] {
    font-size: 1.1rem;
    font-weight: 700;
}

.strength-badge[b-wj4kz6j4qd] {
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
}

.strength-badge.triggered[b-wj4kz6j4qd] { background: #22c55e; color: white; }
.strength-badge.building[b-wj4kz6j4qd] { background: #f59e0b; color: black; }
.strength-badge.early[b-wj4kz6j4qd] { background: #6b7280; color: white; }

.signal-body[b-wj4kz6j4qd] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.direction[b-wj4kz6j4qd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
}

.direction i[b-wj4kz6j4qd] {
    font-size: 1.25rem;
}

.bullish .direction[b-wj4kz6j4qd] { color: #22c55e; }
.bearish .direction[b-wj4kz6j4qd] { color: #ef4444; }

.confidence[b-wj4kz6j4qd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.conf-label[b-wj4kz6j4qd] {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.6);
    width: 70px;
}

.conf-bar[b-wj4kz6j4qd] {
    flex: 1;
    height: 6px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
    overflow: hidden;
}

.conf-fill[b-wj4kz6j4qd] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.conf-fill.high[b-wj4kz6j4qd] { background: #22c55e; }
.conf-fill.medium[b-wj4kz6j4qd] { background: #f59e0b; }
.conf-fill.low[b-wj4kz6j4qd] { background: #ef4444; }

.conf-value[b-wj4kz6j4qd] {
    font-size: 0.85rem;
    font-weight: 600;
    width: 40px;
    text-align: right;
}

.regime-info[b-wj4kz6j4qd] {
    display: flex;
    gap: 0.5rem;
}

.regime-badge[b-wj4kz6j4qd] {
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-size: 0.7rem;
    background: rgba(255, 255, 255, 0.1);
}

.signal-footer[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.status[b-wj4kz6j4qd] {
    font-size: 0.75rem;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.1);
}

.status.confirmed[b-wj4kz6j4qd] { background: rgba(34, 197, 94, 0.2); color: #22c55e; }
.status.triggered[b-wj4kz6j4qd] { background: rgba(245, 158, 11, 0.2); color: #f59e0b; }
.status.building[b-wj4kz6j4qd] { background: rgba(107, 114, 128, 0.2); color: #9ca3af; }

.tradeable-badge[b-wj4kz6j4qd] {
    font-size: 0.75rem;
    color: #22c55e;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* UNIVERSE SECTION                                                         */
/* ═══════════════════════════════════════════════════════════════════════ */

.universe-section[b-wj4kz6j4qd] {
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 1.25rem;
}

.tier-tabs[b-wj4kz6j4qd] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.tier-tab[b-wj4kz6j4qd] {
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    transition: all 0.2s ease;
}

.tier-tab:hover[b-wj4kz6j4qd] {
    background: rgba(255, 255, 255, 0.1);
}

.tier-tab.active[b-wj4kz6j4qd] {
    background: rgba(59, 130, 246, 0.2);
    border-color: #3b82f6;
    color: white;
}

.tier-tab .count[b-wj4kz6j4qd] {
    background: rgba(255, 255, 255, 0.1);
    padding: 0.1rem 0.4rem;
    border-radius: 10px;
    font-size: 0.75rem;
    margin-left: 0.5rem;
}

.symbols-list[b-wj4kz6j4qd] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.symbol-chip[b-wj4kz6j4qd] {
    padding: 0.4rem 0.75rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    font-size: 0.85rem;
}

.symbol-chip.bullish[b-wj4kz6j4qd] {
    background: rgba(34, 197, 94, 0.1);
    border-color: rgba(34, 197, 94, 0.3);
}

.symbol-chip.bearish[b-wj4kz6j4qd] {
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.3);
}

.manual-controls[b-wj4kz6j4qd] {
    display: flex;
    gap: 0.5rem;
    margin-top: 1rem;
    max-width: 400px;
}

.manual-controls .form-control[b-wj4kz6j4qd] {
    flex: 1;
    background-color: rgba(0, 0, 0, 0.3);
    border-color: rgba(255, 255, 255, 0.2);
    color: white;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* SIGNAL DETAIL MODAL                                                      */
/* ═══════════════════════════════════════════════════════════════════════ */

.signal-detail-modal[b-wj4kz6j4qd] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
}

.signal-detail-content[b-wj4kz6j4qd] {
    background: #1a1a2e;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
}

.detail-header[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.detail-header h3[b-wj4kz6j4qd] {
    margin: 0;
    font-size: 1.5rem;
}

.close-btn[b-wj4kz6j4qd] {
    background: none;
    border: none;
    color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    padding: 0.5rem;
    font-size: 1.25rem;
}

.close-btn:hover[b-wj4kz6j4qd] {
    color: white;
}

.detail-body[b-wj4kz6j4qd] {
    padding: 1.25rem;
}

.detail-row[b-wj4kz6j4qd] {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.detail-row:last-child[b-wj4kz6j4qd] {
    border-bottom: none;
}

.detail-row .label[b-wj4kz6j4qd] {
    color: rgba(255, 255, 255, 0.6);
}

.detail-row .value[b-wj4kz6j4qd] {
    font-weight: 600;
}

.detail-row .value.bullish[b-wj4kz6j4qd] { color: #22c55e; }
.detail-row .value.bearish[b-wj4kz6j4qd] { color: #ef4444; }

/* ═══════════════════════════════════════════════════════════════════════ */
/* RESPONSIVE                                                               */
/* ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
    .crypto-header[b-wj4kz6j4qd] {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }

    .header-right[b-wj4kz6j4qd] {
        width: 100%;
        justify-content: space-between;
    }

    .signals-grid[b-wj4kz6j4qd] {
        grid-template-columns: 1fr;
    }

    .btc-metrics[b-wj4kz6j4qd] {
        grid-template-columns: 1fr 1fr;
    }
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
/* ===================================
   Dashboard - Premium Trading Terminal
   Compact • Data-Dense • Professional
   =================================== */

.dashboard-container[b-a6samwyjem] {
    padding: var(--space-5);
    max-width: var(--content-max-width);
    margin: 0 auto;
}

/* ═══════════════════════════════════
   HEADER - Compact & Modern
   ═══════════════════════════════════ */
.dashboard-header[b-a6samwyjem] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-4);
    border-bottom: 1px solid var(--border);
    position: relative;
}

.dashboard-header[b-a6samwyjem]::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 120px;
    height: 2px;
    background: linear-gradient(90deg, var(--primary), transparent);
}

.dashboard-title[b-a6samwyjem] {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    letter-spacing: var(--tracking-tight);
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

.dashboard-title i[b-a6samwyjem] {
    color: var(--primary);
    font-size: var(--text-xl);
}

.header-timestamp[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-size: var(--text-xs);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-1) var(--space-3);
    background: var(--bg-glass-light);
    border-radius: var(--radius-md);
    border: 1px solid var(--border);
}

/* ═══════════════════════════════════
   LOADING STATE
   ═══════════════════════════════════ */
.loading-state[b-a6samwyjem] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    color: var(--text-muted);
    gap: var(--space-4);
}

.loading-state .spinner-border[b-a6samwyjem] {
    width: 32px;
    height: 32px;
    border-width: 3px;
    border-color: var(--border);
    border-top-color: var(--primary);
}

/* ═══════════════════════════════════
   METRICS GRID - Premium Cards
   ═══════════════════════════════════ */
.metrics-grid[b-a6samwyjem] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--space-4);
    margin-bottom: var(--space-5);
}

.metric-card[b-a6samwyjem] {
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    padding: var(--space-4);
    display: flex;
    align-items: flex-start;
    gap: var(--space-3);
    transition: all var(--transition-fast);
    position: relative;
    overflow: hidden;
}

/* Glassmorphism overlay */
.metric-card[b-a6samwyjem]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.02) 0%, transparent 50%);
    pointer-events: none;
}

/* Top accent line */
.metric-card[b-a6samwyjem]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--primary), transparent);
    opacity: 0;
    transition: opacity var(--transition-fast);
}

.metric-card:hover[b-a6samwyjem] {
    border-color: var(--border-medium);
    box-shadow: var(--shadow-lg);
    transform: translateY(-3px);
}

.metric-card:hover[b-a6samwyjem]::after {
    opacity: 1;
}

.metric-icon[b-a6samwyjem] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-glass-medium);
    border-radius: var(--radius-lg);
    color: var(--primary);
    font-size: var(--text-lg);
    flex-shrink: 0;
}

.metric-content[b-a6samwyjem] {
    flex: 1;
    min-width: 0;
}

.metric-label[b-a6samwyjem] {
    font-size: var(--text-2xs);
    font-weight: 700;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest);
    margin-bottom: var(--space-1);
}

.metric-value[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-size: var(--text-xl);
    font-weight: 700;
    color: var(--text-primary);
    line-height: var(--leading-tight);
    letter-spacing: var(--tracking-tight);
}

.metric-percent[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    font-weight: 600;
    margin-left: var(--space-1);
}

/* ═══════════════════════════════════
   QUICK STATS BAR - Premium Row
   ═══════════════════════════════════ */
.quick-stats[b-a6samwyjem] {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 0;
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    margin-bottom: var(--space-5);
    padding: var(--space-3) var(--space-4);
    position: relative;
    overflow: hidden;
}

.quick-stats[b-a6samwyjem]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.02) 0%, transparent 50%);
    pointer-events: none;
}

.quick-stat[b-a6samwyjem] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: var(--space-2) var(--space-5);
    border-right: 1px solid var(--border);
    position: relative;
    z-index: 1;
}

.quick-stat:last-child[b-a6samwyjem] {
    border-right: none;
}

.stat-number[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-size: var(--text-xl);
    font-weight: 700;
    color: var(--text-primary);
    line-height: var(--leading-none);
    letter-spacing: var(--tracking-tight);
}

.stat-number.text-success[b-a6samwyjem] { color: var(--success); }
.stat-number.text-danger[b-a6samwyjem] { color: var(--error); }

.stat-desc[b-a6samwyjem] {
    font-size: var(--text-2xs);
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    margin-top: var(--space-1);
}

/* ═══════════════════════════════════
   POSITIONS SECTION - Data Table
   ═══════════════════════════════════ */
.positions-section[b-a6samwyjem] {
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
    overflow: hidden;
    position: relative;
}

.positions-section[b-a6samwyjem]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: linear-gradient(180deg, rgba(19, 223, 255, 0.03) 0%, transparent 100%);
    pointer-events: none;
}

.section-title[b-a6samwyjem] {
    font-family: var(--font-display);
    font-size: var(--text-md);
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    padding: var(--space-4);
    display: flex;
    align-items: center;
    gap: var(--space-2);
    letter-spacing: var(--tracking-tight);
    border-bottom: 1px solid var(--border);
    position: relative;
    z-index: 1;
}

.section-title i[b-a6samwyjem] {
    color: var(--primary);
}

/* Delayed entries (trail entry) panel */
.trails-section[b-a6samwyjem] { margin-bottom: var(--space-4); }
.trail-mode[b-a6samwyjem] { font-size: 10px; padding: 2px 9px; border-radius: 10px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; margin-left: 6px; }
.trail-mode-off[b-a6samwyjem] { background: #24292f; color: #8b95a3; }
.trail-mode-shadow[b-a6samwyjem] { background: #3a2a12; color: #e0a838; }
.trail-mode-live[b-a6samwyjem] { background: #133a24; color: #3fb950; }
.trail-manage[b-a6samwyjem] { margin-left: auto; font-size: 12px; font-weight: 500; color: var(--primary); text-decoration: none; }
.trail-st[b-a6samwyjem] { font-size: 10px; padding: 1px 6px; border-radius: 4px; font-weight: 600; text-transform: uppercase; }
.trail-st-watching[b-a6samwyjem] { background: #24292f; color: #8b95a3; }
.trail-st-armed[b-a6samwyjem] { background: #3a2a12; color: #e0a838; }
.trail-st-triggered[b-a6samwyjem] { background: #12324f; color: #58a6ff; }
.trail-st-filled[b-a6samwyjem] { background: #133a24; color: #3fb950; }
.trail-st-skipped[b-a6samwyjem] { background: #1b2028; color: #8b95a3; }
.trail-st-expired[b-a6samwyjem], .trail-st-cancelled[b-a6samwyjem], .trail-st-failed[b-a6samwyjem] { background: #3a1a1d; color: #f0787f; }
.trail-shadow td[b-a6samwyjem] { font-style: italic; opacity: .85; }
.trail-note[b-a6samwyjem] { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* ═══════════════════════════════════
   POSITIONS TABLE - Premium Trading Style
   ═══════════════════════════════════ */
.table-responsive[b-a6samwyjem] {
    padding: 0 var(--space-4) var(--space-4);
}

.positions-table[b-a6samwyjem] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    --bs-table-bg: transparent;
    --bs-table-color: var(--text-primary);
    font-size: var(--text-sm);
}

.positions-table thead th[b-a6samwyjem] {
    font-size: var(--text-2xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: var(--tracking-widest);
    color: var(--text-muted);
    background: var(--bg-surface);
    padding: var(--space-3);
    border: none;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
    position: sticky;
    top: 0;
    z-index: 1;
}

/* Sortable Headers */
.sortable-header[b-a6samwyjem] {
    cursor: pointer;
    user-select: none;
    transition: all var(--transition-fast);
}

.sortable-header:hover[b-a6samwyjem] {
    color: var(--primary);
    background: var(--bg-elevated);
}

.sort-indicator[b-a6samwyjem] {
    margin-left: var(--space-1);
    font-size: 8px;
    color: var(--text-dim);
    transition: color var(--transition-fast);
}

.sort-indicator.active[b-a6samwyjem] {
    color: var(--primary);
}

.positions-table tbody tr[b-a6samwyjem] {
    transition: background var(--transition-fast);
}

.positions-table tbody tr:hover[b-a6samwyjem] {
    background: var(--bg-hover);
}

.positions-table tbody td[b-a6samwyjem] {
    padding: var(--space-2) var(--space-3);
    vertical-align: middle;
    border-bottom: 1px solid var(--border-subtle);
    color: var(--text-primary);
    line-height: var(--leading-tight);
}

.positions-table tbody td.fw-bold[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-weight: 700;
}

.positions-table tbody td small[b-a6samwyjem] {
    display: block;
    margin-top: 0;
    font-size: var(--text-2xs);
    color: var(--text-muted);
}

/* ═══════════════════════════════════
   EXPANDABLE ROWS - Reposition Detail
   ═══════════════════════════════════ */
.positions-table tbody tr.expandable-row[b-a6samwyjem] {
    cursor: pointer;
}

.positions-table tbody tr.expandable-row:hover[b-a6samwyjem] {
    background: var(--bg-hover);
}

.positions-table tbody tr.expandable-row.expanded[b-a6samwyjem] {
    background: var(--bg-elevated);
}

.expand-caret[b-a6samwyjem] {
    color: var(--text-muted);
    font-size: var(--text-xs);
    margin-right: var(--space-1);
    transition: color var(--transition-fast);
}

.expandable-row.expanded .expand-caret[b-a6samwyjem] {
    color: var(--primary);
}

.repo-badge[b-a6samwyjem] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: var(--font-mono);
    font-size: var(--text-2xs);
    font-weight: 700;
    padding: 2px var(--space-2);
    border-radius: var(--radius-sm);
    background: var(--bg-glass-medium);
    color: var(--accent, var(--primary));
    border: 1px solid var(--border);
}

/* Detail row */
.reposition-detail-row > td[b-a6samwyjem] {
    padding: 0 !important;
    background: var(--bg-surface);
    border-bottom: 1px solid var(--border) !important;
}

.reposition-detail[b-a6samwyjem] {
    padding: var(--space-3) var(--space-4);
    animation: repoFadeIn-b-a6samwyjem var(--duration-fast, 120ms) var(--ease-out);
}

@keyframes repoFadeIn-b-a6samwyjem {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

.reposition-detail-title[b-a6samwyjem] {
    font-size: var(--text-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    color: var(--text-secondary);
    margin-bottom: var(--space-3);
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

.reposition-detail-title i[b-a6samwyjem] {
    color: var(--primary);
}

.reposition-detail-sub[b-a6samwyjem] {
    font-weight: 600;
    text-transform: none;
    letter-spacing: normal;
    color: var(--text-muted);
    font-size: var(--text-2xs);
}

.reposition-table[b-a6samwyjem] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-xs);
}

.reposition-table thead th[b-a6samwyjem] {
    text-align: left;
    font-size: var(--text-2xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    color: var(--text-muted);
    padding: var(--space-1) var(--space-3);
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}

.reposition-table tbody td[b-a6samwyjem] {
    padding: var(--space-2) var(--space-3);
    color: var(--text-primary);
    font-family: var(--font-mono);
    border-bottom: 1px solid var(--border-subtle);
}

.reposition-table tbody tr:last-child td[b-a6samwyjem] {
    border-bottom: none;
}

.reposition-notes[b-a6samwyjem] {
    font-family: var(--font-sans, inherit) !important;
    color: var(--text-muted) !important;
    max-width: 320px;
}

.repo-type-initial[b-a6samwyjem],
.repo-type-add[b-a6samwyjem] {
    display: inline-block;
    font-size: var(--text-2xs);
    font-weight: 700;
    padding: 2px var(--space-2);
    border-radius: var(--radius-sm);
}

.repo-type-initial[b-a6samwyjem] {
    background: var(--bg-glass-medium);
    color: var(--text-secondary);
    border: 1px solid var(--border);
}

.repo-type-add[b-a6samwyjem] {
    background: var(--info-bg, var(--bg-glass-medium));
    color: var(--info, var(--primary));
    border: 1px solid var(--info-border, var(--border));
}

.reposition-empty[b-a6samwyjem] {
    font-size: var(--text-xs);
    color: var(--text-muted);
    padding: var(--space-2) 0;
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

/* Symbol Link — clearly clickable, navigates to the chart */
.symbol-link[b-a6samwyjem] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    font-family: var(--font-mono);
    font-weight: 700;
    color: var(--primary);
    text-decoration: none;
    letter-spacing: var(--tracking-tight);
    cursor: pointer;
    transition: color var(--transition-fast);
}

.symbol-ticker[b-a6samwyjem] {
    border-bottom: 1px dashed color-mix(in srgb, var(--primary) 45%, transparent);
    transition: border-color var(--transition-fast);
}

.symbol-chart-icon[b-a6samwyjem] {
    font-size: var(--text-2xs);
    opacity: 0.55;
    transition: opacity var(--transition-fast), transform var(--transition-fast);
}

.symbol-link:hover[b-a6samwyjem] {
    color: var(--primary);
    filter: brightness(1.15);
}

.symbol-link:hover .symbol-ticker[b-a6samwyjem] {
    border-bottom-color: var(--primary);
}

.symbol-link:hover .symbol-chart-icon[b-a6samwyjem] {
    opacity: 1;
    transform: translateY(-1px);
}

/* Market Value */
.market-value-cell[b-a6samwyjem] {
    font-family: var(--font-mono);
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* Trailing cell links through to the full Trail Audit for that symbol */
.trail-cell-link[b-a6samwyjem] {
    display: inline-flex;
    flex-direction: column;
    gap: 1px;
    text-decoration: none;
    font-family: var(--font-mono);
    white-space: nowrap;
    padding: 2px 4px;
    margin: -2px -4px;
    border-radius: 4px;
    transition: background 0.15s ease;
}

.trail-cell-link:hover[b-a6samwyjem] {
    background: rgba(255, 255, 255, 0.06);
    text-decoration: none;
}

.trail-cell-link .trail-distance[b-a6samwyjem] {
    font-size: 0.68rem;
    color: var(--text-muted, #64748b);
    letter-spacing: 0.2px;
}

/* Combined Repos column (count badge + last-repo timing) */
.repo-cell[b-a6samwyjem] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
}

.repo-last[b-a6samwyjem] {
    font-size: var(--text-2xs);
    color: var(--text-muted);
    white-space: nowrap;
}

/* Entry pill — compact, clean, modern */
.entry-pill[b-a6samwyjem] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.6rem;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
    padding: 3px 7px;
    border-radius: var(--radius-full, 999px);
    border: 1px solid transparent;
    white-space: nowrap;
}

.entry-pill i[b-a6samwyjem] {
    font-size: 0.62rem;
}

.entry-bot[b-a6samwyjem] {
    background: color-mix(in srgb, var(--primary) 14%, transparent);
    color: var(--primary);
    border-color: color-mix(in srgb, var(--primary) 30%, transparent);
}

.entry-manual[b-a6samwyjem] {
    background: var(--bg-glass-medium);
    color: var(--text-muted);
    border-color: var(--border);
}

/* Gain/Loss Colors */
.text-success[b-a6samwyjem] { color: var(--success) !important; }
.text-danger[b-a6samwyjem] { color: var(--error) !important; }
.text-muted[b-a6samwyjem] { color: var(--text-muted) !important; }

.positions-table tbody td.text-success[b-a6samwyjem],
.positions-table tbody td.text-success > div[b-a6samwyjem] { color: var(--success) !important; }
.positions-table tbody td.text-danger[b-a6samwyjem],
.positions-table tbody td.text-danger > div[b-a6samwyjem] { color: var(--error) !important; }

.positions-table tbody td.text-success small[b-a6samwyjem] { color: var(--success) !important; opacity: 0.8; }
.positions-table tbody td.text-danger small[b-a6samwyjem] { color: var(--error) !important; opacity: 0.8; }

/* ═══════════════════════════════════
   AI MODAL - Premium Style
   ═══════════════════════════════════ */
.modal.show[b-a6samwyjem] {
    display: block;
    animation: modalFadeIn-b-a6samwyjem var(--duration-normal) var(--ease-out);
}

@keyframes modalFadeIn-b-a6samwyjem {
    from { opacity: 0; }
    to { opacity: 1; }
}

.modal-overlay[b-a6samwyjem] {
    background: var(--bg-overlay);
    backdrop-filter: blur(8px);
}

.modal-content[b-a6samwyjem] {
    background: var(--bg-gradient-card);
    border: 1px solid var(--border-medium);
    border-radius: var(--radius-2xl);
    box-shadow: var(--shadow-2xl);
    overflow: hidden;
}

.modal-header[b-a6samwyjem] {
    background: var(--bg-glass);
    padding: var(--space-4) var(--space-5);
    border-bottom: 1px solid var(--border);
}

.modal-header .btn-close[b-a6samwyjem] {
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.6;
    transition: opacity var(--transition-fast);
}

.modal-header .btn-close:hover[b-a6samwyjem] {
    opacity: 1;
}

.modal-title[b-a6samwyjem] {
    font-family: var(--font-display);
    font-weight: 700;
    font-size: var(--text-md);
    display: flex;
    align-items: center;
    gap: var(--space-2);
    color: var(--text-primary);
    letter-spacing: var(--tracking-tight);
}

.modal-title i[b-a6samwyjem] {
    color: var(--accent);
}

.modal-body[b-a6samwyjem] {
    padding: var(--space-5);
    background: transparent;
}

.modal-footer[b-a6samwyjem] {
    background: var(--bg-glass);
    border-top: 1px solid var(--border);
    padding: var(--space-4) var(--space-5);
}

/* ═══════════════════════════════════
   AI RESULTS - Premium Cards
   ═══════════════════════════════════ */
.ai-result-container[b-a6samwyjem] {
    padding: var(--space-2);
}

.recommendation-badge[b-a6samwyjem] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-5);
    border-radius: var(--radius-lg);
    font-size: var(--text-sm);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wide);
}

.recommendation-buy[b-a6samwyjem] {
    background: var(--success-bg-strong);
    color: var(--success);
    border: 1px solid var(--success-border);
    box-shadow: var(--shadow-success);
}

.recommendation-sell[b-a6samwyjem] {
    background: var(--error-bg-strong);
    color: var(--error);
    border: 1px solid var(--error-border);
    box-shadow: var(--shadow-error);
}

.recommendation-watch[b-a6samwyjem] {
    background: var(--warning-bg-strong);
    color: var(--warning);
    border: 1px solid var(--warning-border);
}

.ai-section[b-a6samwyjem] {
    margin-bottom: var(--space-4);
    padding: var(--space-4);
    background: var(--bg-glass-light);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border);
}

.ai-section-title[b-a6samwyjem] {
    font-size: var(--text-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: var(--tracking-wider);
    color: var(--text-primary);
    margin-bottom: var(--space-3);
    padding-bottom: var(--space-2);
    border-bottom: 2px solid var(--primary);
    display: inline-block;
}

.ai-text[b-a6samwyjem] {
    color: var(--text-secondary);
    line-height: var(--leading-relaxed);
    font-size: var(--text-sm);
    margin: 0;
}

/* Scenario Cards */
.scenario-mini[b-a6samwyjem] {
    background: var(--bg-glass-light);
    border-radius: var(--radius-lg);
    padding: var(--space-3);
    text-align: center;
    font-size: var(--text-xs);
    color: var(--text-secondary);
}

.scenario-bull[b-a6samwyjem] { border-left: 3px solid var(--success); }
.scenario-base[b-a6samwyjem] { border-left: 3px solid var(--warning); }
.scenario-bear[b-a6samwyjem] { border-left: 3px solid var(--error); }

/* Factor Items */
.factor-item[b-a6samwyjem] {
    padding: var(--space-3);
    margin-bottom: var(--space-2);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

.factor-positive[b-a6samwyjem] {
    background: var(--success-bg);
    border-left: 3px solid var(--success);
}

.factor-negative[b-a6samwyjem] {
    background: var(--error-bg);
    border-left: 3px solid var(--error);
}

.catalyst-item[b-a6samwyjem],
.risk-item[b-a6samwyjem] {
    padding: var(--space-3);
    margin-bottom: var(--space-2);
    background: var(--bg-glass-light);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

/* Alert Styling */
.alert-info[b-a6samwyjem] {
    background: var(--info-bg);
    border: 1px solid var(--info-border);
    color: var(--info);
    border-radius: var(--radius-lg);
    font-size: var(--text-sm);
    padding: var(--space-4);
}

/* ═══════════════════════════════════
   RESPONSIVE DESIGN
   ═══════════════════════════════════ */
@media (max-width: 1200px) {
    .metrics-grid[b-a6samwyjem] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .dashboard-container[b-a6samwyjem] {
        padding: var(--space-3);
    }

    .dashboard-header[b-a6samwyjem] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--space-3);
    }

    .dashboard-title[b-a6samwyjem] {
        font-size: var(--text-xl);
    }

    .metrics-grid[b-a6samwyjem] {
        grid-template-columns: 1fr;
        gap: var(--space-3);
    }

    .metric-card[b-a6samwyjem] {
        padding: var(--space-3);
    }

    .quick-stats[b-a6samwyjem] {
        flex-direction: column;
        gap: 0;
        padding: var(--space-2);
    }

    .quick-stat[b-a6samwyjem] {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding: var(--space-3);
        border-right: none;
        border-bottom: 1px solid var(--border-subtle);
    }

    .quick-stat:last-child[b-a6samwyjem] {
        border-bottom: none;
    }

    .stat-desc[b-a6samwyjem] {
        margin-top: 0;
    }

    .section-title[b-a6samwyjem] {
        padding: var(--space-3);
    }

    .table-responsive[b-a6samwyjem] {
        padding: var(--space-2);
    }

    .positions-table thead th[b-a6samwyjem],
    .positions-table tbody td[b-a6samwyjem] {
        padding: var(--space-2);
        font-size: var(--text-xs);
    }
}

@media (min-width: 1600px) {
    .dashboard-container[b-a6samwyjem] {
        padding: var(--space-6) var(--space-8);
    }
}

/* ═══════════════════════════════════════════════════════════
   MOBILE APP SHELL (<= 900px)
   Two-up metric tiles, compact rows, and a horizontally
   scrollable positions table with the symbol column pinned.
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
    .dashboard-container[b-a6samwyjem] {
        padding: var(--space-3) var(--space-2) var(--space-4);
    }

    .dashboard-header[b-a6samwyjem] {
        margin-bottom: var(--space-3);
    }

    .header-timestamp[b-a6samwyjem] {
        font-size: var(--text-xs);
    }

    /* Four headline metrics read best two-up on a phone */
    .metrics-grid[b-a6samwyjem] {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--space-2);
    }

    .metric-card[b-a6samwyjem] {
        padding: var(--space-3) var(--space-2);
    }

    .metric-label[b-a6samwyjem] {
        font-size: 10px;
        letter-spacing: 0.06em;
    }

    .metric-value[b-a6samwyjem] {
        font-size: var(--text-lg);
        word-break: break-word;
    }

    .metric-percent[b-a6samwyjem] {
        font-size: var(--text-xs);
    }

    .positions-section[b-a6samwyjem] {
        border-radius: var(--radius-lg);
    }

    .section-title[b-a6samwyjem] {
        font-size: var(--text-sm);
    }

    /* Keep every column readable: scroll sideways instead of squeezing */
    .table-responsive[b-a6samwyjem] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
        padding: 0;
    }

    .positions-table[b-a6samwyjem] {
        min-width: 780px;
        margin-bottom: 0;
    }

    .positions-table thead th[b-a6samwyjem],
    .positions-table tbody td[b-a6samwyjem] {
        padding: 8px 10px;
        font-size: 11px;
        white-space: nowrap;
    }

    /* Pin the symbol column while the numbers scroll under it */
    .positions-table thead th:first-child[b-a6samwyjem],
    .positions-table tbody td:first-child[b-a6samwyjem] {
        position: sticky;
        left: 0;
        z-index: 3;
        background: #0b0f16;
        box-shadow: 1px 0 0 rgba(255, 255, 255, 0.06);
    }

    .sortable-header[b-a6samwyjem] {
        font-size: 10px;
    }
}

/* Narrow phones: one metric per row so values never truncate */
@media (max-width: 400px) {
    .metrics-grid[b-a6samwyjem] {
        grid-template-columns: 1fr;
    }
}

/* ═══════════════════════════════════════════════════════════
   TRAIL AUDIT MODAL — full-screen overlay opened from the
   Trailing cell; closing returns straight to the portfolio.
   ═══════════════════════════════════════════════════════════ */
.trail-modal-backdrop[b-a6samwyjem] {
    position: fixed;
    inset: 0;
    background: rgba(4, 7, 12, 0.82);
    backdrop-filter: blur(6px);
    z-index: 1050;
    display: flex;
    align-items: stretch;
    justify-content: center;
    padding: 16px;
}

.trail-modal[b-a6samwyjem] {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1100px;
    background: #0c1117;
    border: 1px solid #232a34;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

.trail-modal-header[b-a6samwyjem] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid #232a34;
    background: #10151c;
    flex: 0 0 auto;
}

.trail-modal-title[b-a6samwyjem] {
    margin: 0;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-mono, 'JetBrains Mono', Consolas, monospace);
}

.trail-modal-title .bi[b-a6samwyjem] {
    color: #46d18b;
}

.trail-modal-actions[b-a6samwyjem] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.trail-modal-body[b-a6samwyjem] {
    flex: 1 1 auto;
    overflow-y: auto;
    background: #0c1117;
}

.trail-modal-loading[b-a6samwyjem] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 60px 20px;
    color: #9aa4b2;
}

.trail-modal-loading p[b-a6samwyjem] {
    margin: 0;
}

@media (max-width: 700px) {
    .trail-modal-backdrop[b-a6samwyjem] {
        padding: 0;
    }

    .trail-modal[b-a6samwyjem] {
        max-width: none;
        border-radius: 0;
        border: none;
    }
}
/* /Components/Pages/DividendIntelligence.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════ */
/* DIVIDEND INTELLIGENCE PAGE STYLES */
/* Modern, Clean, "Stockmarket Terminal" aesthetic */
/* ═══════════════════════════════════════════════════════════════════════ */

.dividend-intelligence-container[b-igl17ynkxg] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 1rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* HEADER / HERO */
/* ═══════════════════════════════════════════════════════════════════════ */

.page-header[b-igl17ynkxg] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.header-left[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.page-title[b-igl17ynkxg] {
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
}

.page-title i[b-igl17ynkxg] {
    color: #10b981;
}

.page-subtitle[b-igl17ynkxg] {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
}

.header-right[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.refresh-job-btn[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.75rem;
    font-size: 0.8rem;
    border-radius: 6px;
    transition: all 0.2s ease;
}

.refresh-job-btn:hover:not(:disabled)[b-igl17ynkxg] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(59, 130, 246, 0.3);
}

.refresh-job-btn:disabled[b-igl17ynkxg] {
    opacity: 0.6;
    cursor: not-allowed;
}

.refresh-job-btn .spinner-border[b-igl17ynkxg] {
    width: 0.9rem;
    height: 0.9rem;
}

.coverage-badge[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.75rem;
    background: rgba(59, 130, 246, 0.15);
    border: 1px solid rgba(59, 130, 246, 0.3);
    border-radius: 6px;
    font-size: 0.75rem;
    color: #60a5fa;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* FILTER BAR */
/* ═══════════════════════════════════════════════════════════════════════ */

.filter-bar[b-igl17ynkxg] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.9), rgba(15, 23, 42, 0.95));
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: 1.5rem;
    position: sticky;
    top: 0;
    z-index: 100;
    backdrop-filter: blur(10px);
}

.filter-group[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.filter-group label[b-igl17ynkxg] {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.5);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.date-range-buttons[b-igl17ynkxg] {
    display: flex;
    gap: 0;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 6px;
    overflow: hidden;
}

.date-range-buttons button[b-igl17ynkxg] {
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.6);
    padding: 0.4rem 0.75rem;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.2s;
}

.date-range-buttons button:hover[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.1);
    color: white;
}

.date-range-buttons button.active[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.3);
    color: #60a5fa;
}

.filter-group input[type="range"][b-igl17ynkxg] {
    width: 120px;
    accent-color: #3b82f6;
}

.tag-checkboxes[b-igl17ynkxg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.tag-checkbox[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.3rem 0.6rem;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 4px;
    font-size: 0.7rem;
    cursor: pointer;
    transition: all 0.2s;
    user-select: none;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.tag-checkbox input[b-igl17ynkxg] {
    display: none;
}

/* Unselected state - dimmed appearance */
.tag-checkbox.unselected[b-igl17ynkxg] {
    opacity: 0.4;
    background: rgba(0, 0, 0, 0.3);
    color: rgba(255, 255, 255, 0.5);
}

.tag-checkbox.unselected:hover[b-igl17ynkxg] {
    opacity: 0.7;
}

/* Selected state - uses class-based styling for reliable Blazor updates */
.tag-checkbox.selected[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
    opacity: 1;
}

/* Legacy :has selector support for non-Blazor scenarios */
.tag-checkbox:has(input:checked)[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
}

/* Signal-specific colors for SELECTED state */
.tag-checkbox.tag-strong-play.selected[b-igl17ynkxg] { background: rgba(34, 197, 94, 0.25); color: #22c55e; border: 1px solid rgba(34, 197, 94, 0.4); }
.tag-checkbox.tag-buy-before.selected[b-igl17ynkxg] { background: rgba(59, 130, 246, 0.25); color: #60a5fa; border: 1px solid rgba(59, 130, 246, 0.4); }
.tag-checkbox.tag-short-gap.selected[b-igl17ynkxg] { background: rgba(234, 179, 8, 0.25); color: #fbbf24; border: 1px solid rgba(234, 179, 8, 0.4); }
.tag-checkbox.tag-quick-recovery.selected[b-igl17ynkxg] { background: rgba(139, 92, 246, 0.25); color: #a78bfa; border: 1px solid rgba(139, 92, 246, 0.4); }
.tag-checkbox.tag-trap-warning.selected[b-igl17ynkxg] { background: rgba(239, 68, 68, 0.25); color: #ef4444; border: 1px solid rgba(239, 68, 68, 0.4); }
.tag-checkbox.tag-hold.selected[b-igl17ynkxg] { background: rgba(148, 163, 184, 0.25); color: #94a3b8; border: 1px solid rgba(148, 163, 184, 0.4); }
.tag-checkbox.tag-neutral.selected[b-igl17ynkxg] { background: rgba(100, 116, 139, 0.2); color: #64748b; border: 1px solid rgba(100, 116, 139, 0.3); }
.tag-checkbox.tag-no-data.selected[b-igl17ynkxg] { background: rgba(71, 85, 105, 0.2); color: #64748b; border: 1px solid rgba(71, 85, 105, 0.3); }

/* Legacy :has() selector support */
.tag-checkbox.tag-capture:has(input:checked)[b-igl17ynkxg] { background: rgba(16, 185, 129, 0.2); color: #10b981; }
.tag-checkbox.tag-stable:has(input:checked)[b-igl17ynkxg] { background: rgba(59, 130, 246, 0.2); color: #60a5fa; }
.tag-checkbox.tag-moderate:has(input:checked)[b-igl17ynkxg] { background: rgba(148, 163, 184, 0.2); color: #94a3b8; }
.tag-checkbox.tag-high-risk:has(input:checked)[b-igl17ynkxg] { background: rgba(234, 179, 8, 0.2); color: #eab308; }
.tag-checkbox.tag-avoid:has(input:checked)[b-igl17ynkxg] { background: rgba(239, 68, 68, 0.2); color: #ef4444; }
.tag-checkbox.tag-strong-play:has(input:checked)[b-igl17ynkxg] { background: rgba(34, 197, 94, 0.2); color: #22c55e; }
.tag-checkbox.tag-buy-before:has(input:checked)[b-igl17ynkxg] { background: rgba(59, 130, 246, 0.2); color: #60a5fa; }
.tag-checkbox.tag-short-gap:has(input:checked)[b-igl17ynkxg] { background: rgba(234, 179, 8, 0.2); color: #fbbf24; }
.tag-checkbox.tag-quick-recovery:has(input:checked)[b-igl17ynkxg] { background: rgba(139, 92, 246, 0.2); color: #a78bfa; }
.tag-checkbox.tag-trap-warning:has(input:checked)[b-igl17ynkxg] { background: rgba(239, 68, 68, 0.2); color: #ef4444; }
.tag-checkbox.tag-hold:has(input:checked)[b-igl17ynkxg] { background: rgba(148, 163, 184, 0.2); color: #94a3b8; }
.tag-checkbox.tag-neutral:has(input:checked)[b-igl17ynkxg] { background: rgba(100, 116, 139, 0.15); color: #64748b; }

.search-input[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    padding: 0.4rem 0.75rem;
    font-size: 0.8rem;
    color: white;
    width: 180px;
}

.search-input[b-igl17ynkxg]::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.search-input:focus[b-igl17ynkxg] {
    outline: none;
    border-color: rgba(59, 130, 246, 0.5);
}

.sort-select[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    padding: 0.4rem 0.75rem;
    font-size: 0.8rem;
    color: white;
    cursor: pointer;
}

.sort-select option[b-igl17ynkxg] {
    background: #1e293b;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* KPI TILES */
/* ═══════════════════════════════════════════════════════════════════════ */

.kpi-tiles[b-igl17ynkxg] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

@media (max-width: 992px) {
    .kpi-tiles[b-igl17ynkxg] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .kpi-tiles[b-igl17ynkxg] {
        grid-template-columns: 1fr;
    }
}

.kpi-tile[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.8), rgba(15, 23, 42, 0.9));
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Signal-based KPI tile colors */
.kpi-tile.actionable[b-igl17ynkxg] { border-left: 3px solid #10b981; }
.kpi-tile.warnings[b-igl17ynkxg] { border-left: 3px solid #f59e0b; }
.kpi-tile.score[b-igl17ynkxg] { border-left: 3px solid #3b82f6; }
.kpi-tile.upcoming[b-igl17ynkxg] { border-left: 3px solid #8b5cf6; }

/* Legacy tile colors (kept for backward compatibility) */
.kpi-tile.capture[b-igl17ynkxg] { border-left: 3px solid #10b981; }
.kpi-tile.edge[b-igl17ynkxg] { border-left: 3px solid #3b82f6; }

.kpi-icon[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 10px;
    font-size: 1.25rem;
}

/* Signal-based icon colors */
.kpi-tile.actionable .kpi-icon[b-igl17ynkxg] { background: rgba(16, 185, 129, 0.15); color: #10b981; }
.kpi-tile.warnings .kpi-icon[b-igl17ynkxg] { background: rgba(245, 158, 11, 0.15); color: #f59e0b; }
.kpi-tile.score .kpi-icon[b-igl17ynkxg] { background: rgba(59, 130, 246, 0.15); color: #3b82f6; }
.kpi-tile.upcoming .kpi-icon[b-igl17ynkxg] { background: rgba(139, 92, 246, 0.15); color: #8b5cf6; }

/* Legacy icon colors (kept for backward compatibility) */
.kpi-tile.capture .kpi-icon[b-igl17ynkxg] { background: rgba(16, 185, 129, 0.15); color: #10b981; }
.kpi-tile.edge .kpi-icon[b-igl17ynkxg] { background: rgba(59, 130, 246, 0.15); color: #3b82f6; }

.kpi-content[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.kpi-value[b-igl17ynkxg] {
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
}

.kpi-value.positive[b-igl17ynkxg] { color: #10b981; }
.kpi-value.negative[b-igl17ynkxg] { color: #ef4444; }

.kpi-label[b-igl17ynkxg] {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.6);
}

.kpi-detail[b-igl17ynkxg] {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.45);
    margin-top: 0.1rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* MAIN GRID */
/* ═══════════════════════════════════════════════════════════════════════ */

.dividend-grid-section[b-igl17ynkxg] {
    background: rgba(30, 41, 59, 0.5);
    border-radius: 12px;
    padding: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: 1.5rem;
}

.loading-state[b-igl17ynkxg],
.empty-state[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    color: rgba(255, 255, 255, 0.6);
}

.empty-state i[b-igl17ynkxg] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

.grid-header[b-igl17ynkxg] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.result-count[b-igl17ynkxg] {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
}

.dividend-table[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.85rem;
}

.dividend-table th[b-igl17ynkxg] {
    border-color: rgba(255, 255, 255, 0.1);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: rgba(255, 255, 255, 0.5);
    padding: 0.6rem 0.5rem;
    white-space: nowrap;
}

/* Sortable header styles */
.dividend-table th.sortable[b-igl17ynkxg] {
    cursor: pointer;
    user-select: none;
    transition: color 0.15s, background-color 0.15s;
}

.dividend-table th.sortable:hover[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.05);
}

.dividend-table th.sortable.active-sort[b-igl17ynkxg] {
    color: #60a5fa;
    background: rgba(96, 165, 250, 0.1);
}

.sort-icon[b-igl17ynkxg] {
    margin-left: 4px;
    font-size: 0.65rem;
}

.sort-icon.inactive[b-igl17ynkxg] {
    opacity: 0.3;
}

.dividend-table td[b-igl17ynkxg] {
    border-color: rgba(255, 255, 255, 0.05);
    vertical-align: middle;
    padding: 0.75rem 0.5rem;
}

.dividend-row[b-igl17ynkxg] {
    cursor: pointer;
    transition: background-color 0.15s;
}

.dividend-row:hover[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.05);
}

.dividend-row.row-capture[b-igl17ynkxg] { border-left: 3px solid #10b981; }
.dividend-row.row-stable[b-igl17ynkxg] { border-left: 3px solid #3b82f6; }
.dividend-row.row-moderate[b-igl17ynkxg] { border-left: 3px solid #94a3b8; }
.dividend-row.row-high-risk[b-igl17ynkxg] { border-left: 3px solid #eab308; }
.dividend-row.row-avoid[b-igl17ynkxg] { border-left: 3px solid #ef4444; opacity: 0.7; }

/* Event Study Row Classifications */
.dividend-row.row-strong-play[b-igl17ynkxg] { border-left: 3px solid #22c55e; background: rgba(34, 197, 94, 0.03); }
.dividend-row.row-neutral[b-igl17ynkxg] { border-left: 3px solid #64748b; }
.dividend-row.row-trap[b-igl17ynkxg] { border-left: 3px solid #ef4444; opacity: 0.7; }

.symbol-col[b-igl17ynkxg] {
    min-width: 120px;
}

.symbol-info[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.symbol[b-igl17ynkxg] {
    font-weight: 700;
    color: white;
}

.symbol-with-price[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.symbol-link[b-igl17ynkxg] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--bs-primary);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: color 0.2s;
    text-decoration: none;
}

.symbol-link:hover[b-igl17ynkxg] {
    color: #818cf8;
    text-decoration: underline;
}

.company-name[b-igl17ynkxg] {
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.5);
}

.ex-date[b-igl17ynkxg] {
    font-weight: 500;
}

.ex-date.ex-imminent[b-igl17ynkxg] {
    color: #ef4444;
    font-weight: 700;
}

.ex-date.ex-soon[b-igl17ynkxg] {
    color: #eab308;
}

.yield[b-igl17ynkxg] {
    font-weight: 600;
}

.yield.yield-high[b-igl17ynkxg] { color: #eab308; }
.yield.yield-medium[b-igl17ynkxg] { color: #10b981; }
.yield.yield-low[b-igl17ynkxg] { color: rgba(255, 255, 255, 0.7); }

.score-bar[b-igl17ynkxg] {
    flex: 1;
    height: 6px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
    overflow: hidden;
}

.score-fill[b-igl17ynkxg] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s;
}

.score-fill.score-high[b-igl17ynkxg] { background: linear-gradient(90deg, #10b981, #4ade80); }
.score-fill.score-medium[b-igl17ynkxg] { background: linear-gradient(90deg, #eab308, #facc15); }
.score-fill.score-low[b-igl17ynkxg] { background: linear-gradient(90deg, #ef4444, #f87171); }

.score-value[b-igl17ynkxg] {
    font-weight: 700;
    min-width: 24px;
    text-align: right;
}

.score-value.score-high[b-igl17ynkxg] { color: #10b981; }
.score-value.score-medium[b-igl17ynkxg] { color: #eab308; }
.score-value.score-low[b-igl17ynkxg] { color: #ef4444; }

.net-edge[b-igl17ynkxg] {
    font-weight: 600;
}

.net-edge.positive[b-igl17ynkxg] { color: #10b981; }
.net-edge.negative[b-igl17ynkxg] { color: #ef4444; }

.expected-move[b-igl17ynkxg] {
    font-size: 0.8rem;
}

.expected-move.drop[b-igl17ynkxg] { color: #ef4444; }
.expected-move.rise[b-igl17ynkxg] { color: #10b981; }

.confidence-cell[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 70px;
}

.confidence-bar[b-igl17ynkxg] {
    flex: 1;
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
    overflow: hidden;
}

.confidence-fill[b-igl17ynkxg] {
    height: 100%;
    background: linear-gradient(90deg, #3b82f6, #60a5fa);
    border-radius: 2px;
}

.confidence-value[b-igl17ynkxg] {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.6);
    min-width: 32px;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* EVENT STUDY TABLE ELEMENTS */
/* ═══════════════════════════════════════════════════════════════════════ */

/* Pattern Cell (Pre-Dividend Run-Up) */

.pattern-value.runup-strong[b-igl17ynkxg] { color: #22c55e; }
.pattern-value.runup-moderate[b-igl17ynkxg] { color: #4ade80; }
.pattern-value.runup-flat[b-igl17ynkxg] { color: #94a3b8; }
.pattern-value.runup-negative[b-igl17ynkxg] { color: #f87171; }

/* Recovery Cell */

.recovery-days.recovery-fast[b-igl17ynkxg] { color: #22c55e; font-weight: 600; }
.recovery-days.recovery-normal[b-igl17ynkxg] { color: #94a3b8; }
.recovery-days.recovery-slow[b-igl17ynkxg] { color: #eab308; }
.recovery-days.recovery-very-slow[b-igl17ynkxg] { color: #ef4444; }

/* Signal Icons */
.signal-icon[b-igl17ynkxg] {
    font-size: 0.75rem;
}

.signal-icon.bullish[b-igl17ynkxg] { color: #22c55e; }
.signal-icon.fast[b-igl17ynkxg] { color: #8b5cf6; }

/* Consistency Cell */
.consistency-cell[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 70px;
}

.consistency-bar.mini[b-igl17ynkxg] {
    flex: 1;
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 2px;
    overflow: hidden;
    max-width: 40px;
}

.consistency-cell .consistency-fill[b-igl17ynkxg] {
    height: 100%;
    background: linear-gradient(90deg, #6366f1, #8b5cf6);
    border-radius: 2px;
}

.consistency-value[b-igl17ynkxg] {
    font-size: 0.75rem;
    min-width: 32px;
}

.consistency-value.consistency-high[b-igl17ynkxg] { color: #22c55e; font-weight: 600; }
.consistency-value.consistency-medium[b-igl17ynkxg] { color: #94a3b8; }
.consistency-value.consistency-low[b-igl17ynkxg] { color: #ef4444; }

/* No Data Placeholder */
.no-data[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.3);
    font-size: 0.9rem;
}

/* Entry → Exit cell (dividend list) */
.entry-cell[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    line-height: 1.2;
}

.entry-window[b-igl17ynkxg] {
    font-size: 0.72rem;
    font-weight: 600;
    font-family: 'JetBrains Mono', 'Source Code Pro', monospace;
    color: var(--text-primary, #e0e0e0);
    white-space: nowrap;
}

.entry-move[b-igl17ynkxg] {
    font-size: 0.62rem;
    font-family: 'JetBrains Mono', monospace;
}

.entry-move.pos[b-igl17ynkxg] { color: #22c55e; }
.entry-move.neg[b-igl17ynkxg] { color: #ef4444; }

/* ═══════════════════════════════════════════════════════════════════════ */
/* SIGNAL BADGES */
/* ═══════════════════════════════════════════════════════════════════════ */

.signal-badges[b-igl17ynkxg] {
    display: flex;
    gap: 0.35rem;
}

.signal-badge[b-igl17ynkxg] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.65rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    text-transform: uppercase;
    white-space: nowrap;
    cursor: default;
}

.signal-badge i[b-igl17ynkxg] {
    font-size: 0.7rem;
}

/* Strong Play */
.signal-badge.signal-strong-play[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.25), rgba(16, 185, 129, 0.25));
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

/* Buy Before */
.signal-badge.signal-buy-before[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
    border: 1px solid rgba(59, 130, 246, 0.3);
}

/* Short Gap */
.signal-badge.signal-short-gap[b-igl17ynkxg] {
    background: rgba(234, 179, 8, 0.2);
    color: #fbbf24;
    border: 1px solid rgba(234, 179, 8, 0.3);
}

/* Quick Recovery */
.signal-badge.signal-quick-recovery[b-igl17ynkxg] {
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
    border: 1px solid rgba(139, 92, 246, 0.3);
}

/* Trap Warning */
.signal-badge.signal-trap[b-igl17ynkxg] {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Hold */
.signal-badge.signal-hold[b-igl17ynkxg] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
    border: 1px solid rgba(148, 163, 184, 0.3);
}

/* Neutral */
.signal-badge.signal-neutral[b-igl17ynkxg] {
    background: rgba(100, 116, 139, 0.15);
    color: #64748b;
    border: 1px solid rgba(100, 116, 139, 0.2);
}

/* No Data */
.signal-badge.signal-no-data[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.05);
    color: rgba(255, 255, 255, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.detail-btn[b-igl17ynkxg] {
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    padding: 0.25rem;
    transition: color 0.2s;
}

.detail-btn:hover[b-igl17ynkxg] {
    color: white;
}

/* Pagination */
.pagination-controls[b-igl17ynkxg] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.page-info[b-igl17ynkxg] {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* DISCLAIMERS */
/* ═══════════════════════════════════════════════════════════════════════ */

.disclaimers[b-igl17ynkxg] {
    text-align: center;
    padding: 0.75rem;
}

.disclaimers p[b-igl17ynkxg] {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.4);
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* PREMIUM GLASSMORPHISM MODAL - Modern Design with Wow Factor */
/* ═══════════════════════════════════════════════════════════════════════ */

/* Backdrop with Blur */
.dividend-modal-backdrop[b-igl17ynkxg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1050;
    background: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    animation: backdropFadeIn-b-igl17ynkxg 0.3s ease;
}

@keyframes backdropFadeIn-b-igl17ynkxg {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Main Modal Container - Wide and Centered */
.dividend-modal-container[b-igl17ynkxg] {
    width: 90vw;
    max-width: 1200px;
    max-height: 90vh;
    background: linear-gradient(145deg, rgba(26, 26, 46, 0.95), rgba(22, 33, 62, 0.98));
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow:
        0 25px 50px -12px rgba(0, 0, 0, 0.5),
        0 0 100px rgba(99, 102, 241, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    animation: modalSlideIn-b-igl17ynkxg 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes modalSlideIn-b-igl17ynkxg {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* Premium Header with Animated Gradient */
.modal-premium-header[b-igl17ynkxg] {
    position: relative;
    padding: 1.25rem 1.5rem;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15), rgba(139, 92, 246, 0.1), rgba(59, 130, 246, 0.1));
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.modal-premium-header[b-igl17ynkxg]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #6366f1, #8b5cf6, #3b82f6, #6366f1);
    background-size: 200% 100%;
    animation: gradientFlow-b-igl17ynkxg 3s linear infinite;
}

@keyframes gradientFlow-b-igl17ynkxg {
    0% { background-position: 0% 50%; }
    100% { background-position: 200% 50%; }
}

.header-content[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
    padding-right: 3rem; /* Space for close button */
}

.symbol-section[b-igl17ynkxg] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
}

.premium-symbol[b-igl17ynkxg] {
    font-size: 1.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #fff, #c7d2fe);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.02em;
}

.premium-company[b-igl17ynkxg] {
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.6);
    font-weight: 400;
}

/* Premium Signal Badge with Glow */
.premium-signal-badge[b-igl17ynkxg] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    font-weight: 600;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    transition: all 0.3s ease;
}

.premium-signal-badge:hover[b-igl17ynkxg] {
    transform: translateY(-1px);
}

.premium-signal-badge.tag-strong-play[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.25), rgba(16, 185, 129, 0.1));
    color: #34d399;
    border: 1px solid rgba(16, 185, 129, 0.4);
    box-shadow: 0 0 20px rgba(16, 185, 129, 0.2);
}

.premium-signal-badge.tag-buy-before[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.25), rgba(59, 130, 246, 0.1));
    color: #60a5fa;
    border: 1px solid rgba(59, 130, 246, 0.4);
    box-shadow: 0 0 20px rgba(59, 130, 246, 0.2);
}

.premium-signal-badge.tag-short-gap[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(249, 115, 22, 0.25), rgba(249, 115, 22, 0.1));
    color: #fb923c;
    border: 1px solid rgba(249, 115, 22, 0.4);
    box-shadow: 0 0 20px rgba(249, 115, 22, 0.2);
}

.premium-signal-badge.tag-quick-recovery[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.25), rgba(34, 197, 94, 0.1));
    color: #4ade80;
    border: 1px solid rgba(34, 197, 94, 0.4);
    box-shadow: 0 0 20px rgba(34, 197, 94, 0.2);
}

.premium-signal-badge.tag-trap-warning[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.25), rgba(239, 68, 68, 0.1));
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.4);
    box-shadow: 0 0 20px rgba(239, 68, 68, 0.2);
}

.premium-signal-badge.tag-hold[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.25), rgba(139, 92, 246, 0.1));
    color: #a78bfa;
    border: 1px solid rgba(139, 92, 246, 0.4);
    box-shadow: 0 0 20px rgba(139, 92, 246, 0.2);
}

.premium-signal-badge.tag-neutral[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.15);
}

.premium-signal-badge.tag-no-data[b-igl17ynkxg] {
    background: rgba(107, 114, 128, 0.15);
    color: #9ca3af;
    border: 1px solid rgba(107, 114, 128, 0.3);
}

/* Signal + Score Section Container */
.signal-score-section[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Intelligence Score Badge */
.intelligence-score-badge[b-igl17ynkxg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(139, 92, 246, 0.15));
    border: 1px solid rgba(59, 130, 246, 0.4);
    border-radius: 12px;
    padding: 0.4rem 0.75rem;
    min-width: 50px;
    box-shadow: 0 0 15px rgba(59, 130, 246, 0.15);
    transition: all 0.3s ease;
}

.intelligence-score-badge:hover[b-igl17ynkxg] {
    transform: translateY(-1px);
    box-shadow: 0 0 20px rgba(59, 130, 246, 0.25);
}

.intelligence-score-badge .score-value[b-igl17ynkxg] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #60a5fa;
    line-height: 1.1;
}

.intelligence-score-badge .score-label[b-igl17ynkxg] {
    font-size: 0.6rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Stats Ribbon with Glass Effect */
.stats-ribbon[b-igl17ynkxg] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 1rem;
}

.stat-chip[b-igl17ynkxg] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.75rem;
    background: rgba(255, 255, 255, 0.06);
    border-radius: 8px;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.2s ease;
}

.stat-chip:hover[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.15);
}

.stat-chip i[b-igl17ynkxg] {
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.5);
}

.stat-chip.highlight[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.15), rgba(16, 185, 129, 0.05));
    border-color: rgba(16, 185, 129, 0.25);
    color: #34d399;
}

.stat-chip.highlight i[b-igl17ynkxg] {
    color: #34d399;
}

.stat-chip.accent[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15), rgba(99, 102, 241, 0.05));
    border-color: rgba(99, 102, 241, 0.25);
    color: #818cf8;
}

.stat-chip.accent i[b-igl17ynkxg] {
    color: #818cf8;
}

/* Weight Mode Toggle in Header */
.weight-mode-toggle[b-igl17ynkxg] {
    display: flex;
    gap: 0;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    margin-left: auto;
}

.weight-mode-toggle .mode-btn[b-igl17ynkxg] {
    padding: 0.35rem 0.65rem;
    font-size: 0.75rem;
    font-weight: 500;
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    white-space: nowrap;
}

.weight-mode-toggle .mode-btn:hover:not(.active)[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.7);
    background: rgba(255, 255, 255, 0.05);
}

.weight-mode-toggle .mode-btn.active[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.3), rgba(245, 158, 11, 0.15));
    color: #f59e0b;
    box-shadow: inset 0 0 8px rgba(245, 158, 11, 0.15);
}

.weight-mode-toggle .mode-btn.active:first-child[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.3), rgba(59, 130, 246, 0.15));
    color: #60a5fa;
    box-shadow: inset 0 0 8px rgba(59, 130, 246, 0.15);
}

.weight-mode-toggle .mode-btn i[b-igl17ynkxg] {
    font-size: 0.7rem;
}

/* Premium Close Button */
.premium-close-btn[b-igl17ynkxg] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 36px;
    height: 36px;
    border: none;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.premium-close-btn:hover[b-igl17ynkxg] {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
    transform: rotate(90deg);
}

/* Premium Tab Navigation */
.premium-tabs[b-igl17ynkxg] {
    display: flex;
    padding: 0 1.5rem;
    background: rgba(0, 0, 0, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.premium-tab[b-igl17ynkxg] {
    position: relative;
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.5);
    padding: 1rem 1.5rem;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.3s ease;
}

.premium-tab i[b-igl17ynkxg] {
    font-size: 1rem;
}

.premium-tab:hover[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.03);
}

.premium-tab.active[b-igl17ynkxg] {
    color: #818cf8;
}

.premium-tab.active[b-igl17ynkxg]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #6366f1, #8b5cf6);
    border-radius: 3px 3px 0 0;
    animation: tabIndicator-b-igl17ynkxg 0.3s ease;
}

@keyframes tabIndicator-b-igl17ynkxg {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

/* Premium Content Area */
.premium-content[b-igl17ynkxg] {
    flex: 1;
    padding: 1.5rem;
    overflow-y: auto;
    background: transparent;
}

.content-pane[b-igl17ynkxg] {
    animation: contentFadeIn-b-igl17ynkxg 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

@keyframes contentFadeIn-b-igl17ynkxg {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-in[b-igl17ynkxg] {
    animation: contentFadeIn-b-igl17ynkxg 0.3s ease;
}

/* Premium History Grid */

/* Legacy Signal Badges (keep for table compatibility) */

.signal-action-badge.tag-strong-play[b-igl17ynkxg] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
    border: 1px solid rgba(16, 185, 129, 0.4);
}

.signal-action-badge.tag-buy-before[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.2);
    color: #60a5fa;
    border: 1px solid rgba(59, 130, 246, 0.4);
}

.signal-action-badge.tag-short-gap[b-igl17ynkxg] {
    background: rgba(249, 115, 22, 0.2);
    color: #f97316;
    border: 1px solid rgba(249, 115, 22, 0.4);
}

.signal-action-badge.tag-quick-recovery[b-igl17ynkxg] {
    background: rgba(34, 197, 94, 0.2);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.4);
}

.signal-action-badge.tag-trap-warning[b-igl17ynkxg] {
    background: rgba(239, 68, 68, 0.2);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.4);
}

.signal-action-badge.tag-hold[b-igl17ynkxg] {
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
    border: 1px solid rgba(139, 92, 246, 0.4);
}

.signal-action-badge.tag-neutral[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.signal-action-badge.tag-no-data[b-igl17ynkxg] {
    background: rgba(107, 114, 128, 0.2);
    color: #9ca3af;
    border: 1px solid rgba(107, 114, 128, 0.4);
}

/* Legacy styles (kept for backward compatibility) */

.detail-score[b-igl17ynkxg] {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0.1);
}

.detail-score.score-high[b-igl17ynkxg] { background: rgba(16, 185, 129, 0.2); color: #10b981; }
.detail-score.score-medium[b-igl17ynkxg] { background: rgba(234, 179, 8, 0.2); color: #eab308; }
.detail-score.score-low[b-igl17ynkxg] { background: rgba(239, 68, 68, 0.2); color: #ef4444; }

/* AI Summary Tab */
.ai-summary-section[b-igl17ynkxg] {
    margin-bottom: 1.25rem;
}

.ai-summary-section h6[b-igl17ynkxg] {
    font-size: 0.85rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 0.5rem;
}

.ai-summary-section p[b-igl17ynkxg] {
    font-size: 0.9rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
}

.risks-section[b-igl17ynkxg] {
    padding: 0.75rem;
    border-radius: 8px;
}

.risks-section[b-igl17ynkxg] {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.risks-section h6[b-igl17ynkxg] {
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.risks-section h6[b-igl17ynkxg] { color: #f87171; }

.risks-section ul[b-igl17ynkxg] {
    margin: 0;
    padding-left: 1rem;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.8);
}

.risks-section li[b-igl17ynkxg] {
    margin-bottom: 0.25rem;
}

/* Empty AI State */

/* Analytics Tab */

/* History Tab */
.history-table[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.8);
}

.history-table th[b-igl17ynkxg] {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.7rem;
    text-transform: uppercase;
    border-color: rgba(255, 255, 255, 0.1);
}

.history-table td[b-igl17ynkxg] {
    border-color: rgba(255, 255, 255, 0.05);
}

.no-history[b-igl17ynkxg] {
    text-align: center;
    color: rgba(255, 255, 255, 0.5);
    font-style: italic;
}

/* Scores Tab */

.breakdown-label[b-igl17ynkxg] {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.7);
}

.breakdown-value[b-igl17ynkxg] {
    font-weight: 600;
    text-align: right;
    color: rgba(255, 255, 255, 0.9);
}

/* Event Details */

.detail-item[b-igl17ynkxg] {
    display: flex;
    justify-content: space-between;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 4px;
}

.detail-label[b-igl17ynkxg] {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
}

.detail-value[b-igl17ynkxg] {
    font-size: 0.8rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* RESPONSIVE MODAL ADJUSTMENTS */
/* ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 1024px) {
    .dividend-modal-container[b-igl17ynkxg] {
        width: 95vw;
        max-height: 95vh;
    }
    
    .premium-tabs[b-igl17ynkxg] {
        padding: 0 1rem;
    }
    
    .premium-tab[b-igl17ynkxg] {
        padding: 0.75rem 1rem;
        font-size: 0.85rem;
    }
    
    .premium-tab span[b-igl17ynkxg] {
        display: none;
    }
    
    .premium-tab i[b-igl17ynkxg] {
        font-size: 1.2rem;
    }
}

@media (max-width: 640px) {
    .modal-premium-header[b-igl17ynkxg] {
        padding: 1rem;
    }
    
    .premium-symbol[b-igl17ynkxg] {
        font-size: 1.25rem;
    }
    
    .stats-ribbon[b-igl17ynkxg] {
        gap: 0.4rem;
    }
    
    .stat-chip[b-igl17ynkxg] {
        padding: 0.3rem 0.6rem;
        font-size: 0.75rem;
    }
    
    .premium-content[b-igl17ynkxg] {
        padding: 1rem;
    }
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* LIGHT THEME OVERRIDES */
/* ═══════════════════════════════════════════════════════════════════════ */

:global([data-theme="light"]) .page-title[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .page-title i[b-igl17ynkxg] {
    color: #059669;
}

:global([data-theme="light"]) .page-subtitle[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .filter-bar[b-igl17ynkxg] {
    background: linear-gradient(135deg, #ffffff, #f8fafc);
    border: 1px solid var(--border);
}

:global([data-theme="light"]) .filter-group label[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .date-range-buttons[b-igl17ynkxg] {
    background: var(--bg-muted);
}

:global([data-theme="light"]) .date-range-buttons button[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .date-range-buttons button:hover[b-igl17ynkxg] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

:global([data-theme="light"]) .date-range-buttons button.active[b-igl17ynkxg] {
    background: rgba(59, 130, 246, 0.2);
    color: #2563eb;
}

:global([data-theme="light"]) .tag-checkbox[b-igl17ynkxg] {
    background: var(--bg-muted);
    color: var(--text-secondary);
}

:global([data-theme="light"]) .search-input[b-igl17ynkxg] {
    background: var(--bg-muted);
    border: 1px solid var(--border);
    color: var(--text-primary);
}

:global([data-theme="light"]) .search-input[b-igl17ynkxg]::placeholder {
    color: var(--text-muted);
}

:global([data-theme="light"]) .sort-select[b-igl17ynkxg] {
    background: var(--bg-muted);
    border: 1px solid var(--border);
    color: var(--text-primary);
}

:global([data-theme="light"]) .sort-select option[b-igl17ynkxg] {
    background: #ffffff;
}

:global([data-theme="light"]) .kpi-tile[b-igl17ynkxg] {
    background: linear-gradient(135deg, #ffffff, #f8fafc);
    border: 1px solid var(--border);
}

:global([data-theme="light"]) .kpi-value[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .kpi-label[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .dividend-grid-section[b-igl17ynkxg] {
    background: var(--bg-elevated);
    border: 1px solid var(--border);
}

:global([data-theme="light"]) .loading-state[b-igl17ynkxg],
:global([data-theme="light"]) .empty-state[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .result-count[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .dividend-table[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .dividend-table th[b-igl17ynkxg] {
    border-color: var(--border);
    color: var(--text-muted);
}

:global([data-theme="light"]) .dividend-table td[b-igl17ynkxg] {
    border-color: var(--border-subtle);
}

:global([data-theme="light"]) .dividend-row:hover[b-igl17ynkxg] {
    background: var(--bg-hover);
}

:global([data-theme="light"]) .symbol[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .company-name[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .score-bar[b-igl17ynkxg] {
    background: var(--bg-muted);
}

:global([data-theme="light"]) .confidence-bar[b-igl17ynkxg] {
    background: var(--bg-muted);
}

:global([data-theme="light"]) .confidence-value[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .detail-btn[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .detail-btn:hover[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .pagination-controls[b-igl17ynkxg] {
    border-top: 1px solid var(--border);
}

:global([data-theme="light"]) .page-info[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .disclaimers p[b-igl17ynkxg] {
    color: var(--text-muted);
}

/* Premium Modal Light Theme */
:global([data-theme="light"]) .dividend-modal-backdrop[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.5);
}

:global([data-theme="light"]) .dividend-modal-container[b-igl17ynkxg] {
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.98));
    border: 1px solid rgba(0, 0, 0, 0.1);
    box-shadow:
        0 25px 50px -12px rgba(0, 0, 0, 0.25),
        0 0 100px rgba(99, 102, 241, 0.08);
}

:global([data-theme="light"]) .modal-premium-header[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08), rgba(139, 92, 246, 0.05), rgba(59, 130, 246, 0.05));
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

:global([data-theme="light"]) .premium-symbol[b-igl17ynkxg] {
    background: linear-gradient(135deg, #1e293b, #334155);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

:global([data-theme="light"]) .premium-company[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .stat-chip[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.04);
    border-color: rgba(0, 0, 0, 0.08);
    color: var(--text-primary);
}

:global([data-theme="light"]) .stat-chip i[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .stat-chip.highlight[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1), rgba(16, 185, 129, 0.03));
    border-color: rgba(16, 185, 129, 0.2);
    color: #059669;
}

:global([data-theme="light"]) .stat-chip.accent[b-igl17ynkxg] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(99, 102, 241, 0.03));
    border-color: rgba(99, 102, 241, 0.2);
    color: #4f46e5;
}

:global([data-theme="light"]) .premium-close-btn[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.05);
    color: var(--text-muted);
}

:global([data-theme="light"]) .premium-close-btn:hover[b-igl17ynkxg] {
    background: rgba(239, 68, 68, 0.1);
    color: #dc2626;
}

:global([data-theme="light"]) .premium-tabs[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.03);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

:global([data-theme="light"]) .premium-tab[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .premium-tab:hover[b-igl17ynkxg] {
    color: var(--text-primary);
    background: rgba(0, 0, 0, 0.02);
}

:global([data-theme="light"]) .premium-tab.active[b-igl17ynkxg] {
    color: #4f46e5;
}

/* Legacy Light Theme (for table badges etc) */

:global([data-theme="light"]) .detail-score[b-igl17ynkxg] {
    background: var(--bg-muted);
}

:global([data-theme="light"]) .history-table[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .history-table th[b-igl17ynkxg] {
    color: var(--text-muted);
    border-color: var(--border);
}

:global([data-theme="light"]) .history-table td[b-igl17ynkxg] {
    border-color: var(--border-subtle);
}

:global([data-theme="light"]) .no-history[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .breakdown-label[b-igl17ynkxg] {
    color: var(--text-secondary);
}

:global([data-theme="light"]) .breakdown-value[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .detail-item[b-igl17ynkxg] {
    background: var(--bg-muted);
}

:global([data-theme="light"]) .detail-label[b-igl17ynkxg] {
    color: var(--text-muted);
}

:global([data-theme="light"]) .detail-value[b-igl17ynkxg] {
    color: var(--text-primary);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* DAILY PICKS SECTION (Collapsible) */
/* ═══════════════════════════════════════════════════════════════════════ */

.daily-picks-section[b-igl17ynkxg] {
    margin-bottom: 2rem;
    background: var(--bg-secondary, #1a1a2e);
    border-radius: 12px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.1));
    overflow: hidden;
}

.daily-picks-section .section-toggle[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 1rem 1.5rem;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.2s;
}

.daily-picks-section .section-toggle:hover[b-igl17ynkxg] {
    background: rgba(255, 255, 255, 0.05);
}

.daily-picks-section .toggle-left[b-igl17ynkxg] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.daily-picks-section .toggle-left > i[b-igl17ynkxg] {
    color: var(--text-secondary, rgba(255, 255, 255, 0.6));
    font-size: 1rem;
    transition: transform 0.2s;
}

.daily-picks-section .toggle-left h2[b-igl17ynkxg] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary, white);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0;
}

.daily-picks-section .toggle-left h2 i[b-igl17ynkxg] {
    color: #6366f1;
}

.daily-picks-section .toggle-left h2 .badge-new[b-igl17ynkxg] {
    font-size: 0.6rem;
    font-weight: 700;
    padding: 2px 8px;
    background: linear-gradient(135deg, #10b981, #059669);
    color: white;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.daily-picks-section .section-subtitle[b-igl17ynkxg] {
    font-size: 0.8rem;
    color: var(--text-secondary, rgba(255, 255, 255, 0.6));
    margin: 0;
}

.daily-picks-section .section-content[b-igl17ynkxg] {
    padding: 0 1.5rem 1.5rem 1.5rem;
    border-top: 1px solid var(--border, rgba(255, 255, 255, 0.1));
}

.daily-picks-section.expanded .toggle-left > i[b-igl17ynkxg] {
    transform: rotate(0deg);
}

.daily-picks-section.collapsed .toggle-left > i[b-igl17ynkxg] {
    transform: rotate(0deg);
}

/* Light theme overrides for daily picks section */
:global([data-theme="light"]) .daily-picks-section[b-igl17ynkxg] {
    background: var(--bg-secondary);
    border-color: var(--border);
}

:global([data-theme="light"]) .daily-picks-section .section-toggle:hover[b-igl17ynkxg] {
    background: rgba(0, 0, 0, 0.03);
}

:global([data-theme="light"]) .daily-picks-section .toggle-left h2[b-igl17ynkxg] {
    color: var(--text-primary);
}

:global([data-theme="light"]) .daily-picks-section .section-subtitle[b-igl17ynkxg] {
    color: var(--text-secondary);
}

/* ═══════════════════════════════════════════════════════════
   MOBILE APP SHELL (<= 900px)
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
    .dividend-intelligence-container[b-igl17ynkxg] {
        padding: var(--space-2) 0 var(--space-4);
    }

    .page-header[b-igl17ynkxg] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding-left: var(--space-2);
        padding-right: var(--space-2);
    }

    .header-right[b-igl17ynkxg] {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    /* Filters become one swipeable strip */
    .filter-bar[b-igl17ynkxg] {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        gap: 10px;
        padding: 8px var(--space-2);
        margin-bottom: 10px;
    }

    .filter-bar[b-igl17ynkxg]::-webkit-scrollbar {
        display: none;
    }

    .filter-group[b-igl17ynkxg] {
        flex: 0 0 auto;
    }

    .kpi-tiles[b-igl17ynkxg] {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        padding: 0 var(--space-2);
    }

    .kpi-tile[b-igl17ynkxg] {
        padding: 10px;
        gap: 8px;
    }

    .kpi-icon[b-igl17ynkxg] {
        width: 32px;
        height: 32px;
        font-size: 14px;
    }

    .kpi-value[b-igl17ynkxg] {
        font-size: 18px;
    }

    .kpi-label[b-igl17ynkxg] {
        font-size: 10px;
    }

    .daily-picks-section[b-igl17ynkxg],
    .dividend-grid-section[b-igl17ynkxg] {
        border-radius: 12px;
        margin-left: var(--space-2);
        margin-right: var(--space-2);
    }

    .grid-header[b-igl17ynkxg] {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }

    .sort-select[b-igl17ynkxg] {
        width: 100%;
    }

    .table-responsive[b-igl17ynkxg] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior-x: contain;
    }

    .dividend-table[b-igl17ynkxg] {
        min-width: 620px;
    }

    .dividend-table th[b-igl17ynkxg],
    .dividend-table td[b-igl17ynkxg] {
        padding: 8px 10px;
        font-size: 11px;
        white-space: nowrap;
    }

    /* Pin symbol while yields/edge scroll under it */
    .dividend-table th.symbol-col[b-igl17ynkxg],
    .dividend-table td.symbol-col[b-igl17ynkxg] {
        position: sticky;
        left: 0;
        z-index: 3;
        background: #0b0f16;
        box-shadow: 1px 0 0 rgba(255, 255, 255, 0.06);
    }

    .dividend-table .company-name[b-igl17ynkxg] {
        display: none;
    }

    .consistency-bar.mini[b-igl17ynkxg] {
        width: 34px;
    }

    /* Detail modal as a full-width sheet that clears the tab bar */
    .dividend-modal-container[b-igl17ynkxg] {
        width: 100%;
        max-width: 100%;
        max-height: calc(100vh - 56px - env(safe-area-inset-bottom, 0px) - var(--header-height, 52px));
        margin: 0;
        border-radius: 14px 14px 0 0;
        padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    }

    .dividend-modal-backdrop[b-igl17ynkxg] {
        align-items: flex-end;
        padding: 0;
    }
}

/* Free-account preview: the ex-dividend calendar is open, the scoring columns and details are locked */
.pro-preview-lock[b-igl17ynkxg] { margin: 0 0 12px; }
.pro-chip[b-igl17ynkxg] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 7px;
    border-radius: 999px;
    background: rgba(139, 92, 246, 0.22);
    color: #c4b5fd;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
.col-pro[b-igl17ynkxg] { color: var(--text-secondary, #8892b0); font-weight: 500; }
.pro-locked-cell[b-igl17ynkxg] { color: #a78bfa; font-size: 12px; text-align: center; }
.pro-upgrade-modal[b-igl17ynkxg] {
    width: min(460px, calc(100vw - 32px));
    background: var(--bg-card, #111a2e);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    padding: 6px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
}
/* /Components/Pages/EarningsEngineBacktest.razor.rz.scp.css */
.bt-container[b-amhekyd5tb] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 1.25rem;
    color: #e5e7eb;
}

.bt-header[b-amhekyd5tb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bt-header h1[b-amhekyd5tb] {
    font-size: 1.4rem;
    font-weight: 800;
    margin: 0;
    color: #fff;
}

.bt-back[b-amhekyd5tb] {
    color: #a5b4fc;
    text-decoration: none;
    font-weight: 600;
}

.bt-sub[b-amhekyd5tb] {
    color: #9ca3af;
    font-size: 0.85rem;
    margin: 0.5rem 0 1rem;
    line-height: 1.4;
}

.bt-controls[b-amhekyd5tb] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.bt-controls label[b-amhekyd5tb] {
    font-size: 0.8rem;
    color: #cbd5e1;
    display: flex;
    gap: 0.4rem;
    align-items: center;
}

.bt-controls input[type="date"][b-amhekyd5tb] {
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #e5e7eb;
    border-radius: 6px;
    padding: 0.3rem 0.5rem;
}

.bt-run[b-amhekyd5tb] {
    background: linear-gradient(90deg, #6366f1, #8b5cf6);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 0.5rem 1.1rem;
    font-weight: 700;
    cursor: pointer;
}

.bt-run:disabled[b-amhekyd5tb] {
    opacity: 0.6;
    cursor: default;
}

.bt-card[b-amhekyd5tb] {
    background: rgba(30, 30, 40, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
}

.bt-card h3[b-amhekyd5tb] {
    margin: 0 0 0.75rem;
    font-size: 1rem;
    color: #fff;
}

.bt-loading[b-amhekyd5tb] {
    color: #c7d2fe;
}

.bt-error[b-amhekyd5tb] {
    color: #fca5a5;
    border-color: rgba(239, 68, 68, 0.3);
    background: rgba(239, 68, 68, 0.08);
}

.bt-stats[b-amhekyd5tb] {
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
    font-size: 0.85rem;
    color: #cbd5e1;
}

.bt-table[b-amhekyd5tb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.bt-table th[b-amhekyd5tb],
.bt-table td[b-amhekyd5tb] {
    text-align: right;
    padding: 0.5rem 0.6rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    white-space: nowrap;
}

.bt-table th:first-child[b-amhekyd5tb],
.bt-table td:first-child[b-amhekyd5tb],
.bt-table .bt-w[b-amhekyd5tb] {
    text-align: left;
}

.bt-table th[b-amhekyd5tb] {
    color: #9ca3af;
    font-weight: 600;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.bt-w[b-amhekyd5tb] {
    font-variant-numeric: tabular-nums;
    color: #cbd5e1;
}

.bt-best[b-amhekyd5tb] {
    background: linear-gradient(90deg, rgba(99, 102, 241, 0.12), transparent 70%);
}

.bt-best td[b-amhekyd5tb] {
    font-weight: 700;
    color: #fff;
}

.bt-pos[b-amhekyd5tb] { color: #34d399; }
.bt-neg[b-amhekyd5tb] { color: #f87171; }

.bt-note[b-amhekyd5tb] {
    font-size: 0.78rem;
    color: #cbd5e1;
    margin: 0.8rem 0 0;
    line-height: 1.45;
}

.bt-note code[b-amhekyd5tb] {
    background: rgba(255, 255, 255, 0.08);
    padding: 0.05rem 0.3rem;
    border-radius: 4px;
}

.bt-muted[b-amhekyd5tb] { color: #6b7280; }
/* /Components/Pages/Edge.razor.rz.scp.css */
.edge[b-hynoocbs0f] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.e-empty[b-hynoocbs0f] { padding: 32px 0; }
.e-empty a[b-hynoocbs0f], .e-fine a[b-hynoocbs0f] { color: var(--primary, #38bdf8); }

.e-head[b-hynoocbs0f] { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.e-head h1[b-hynoocbs0f] { margin: 0; font-size: 1.5rem; }

.e-select[b-hynoocbs0f] {
    font-size: 0.8rem;
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid var(--border, rgba(255, 255, 255, 0.15));
    background: rgba(255, 255, 255, 0.04);
    color: inherit;
}

.e-card[b-hynoocbs0f] {
    background: var(--bg-gradient-card, rgba(255, 255, 255, 0.03));
    border: 1px solid var(--border, rgba(255, 255, 255, 0.08));
    border-radius: 12px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.e-card h2[b-hynoocbs0f] { margin: 0; font-size: 1rem; }
.e-card h3[b-hynoocbs0f] { margin: 8px 0 0; font-size: 0.85rem; color: var(--text-muted, #aaa); }

.e-kv[b-hynoocbs0f] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 10px;
}

.e-kv > div[b-hynoocbs0f] { display: flex; flex-direction: column; gap: 2px; }
.e-kv span[b-hynoocbs0f] { font-size: 0.72rem; color: var(--text-muted, #999); }
.e-kv strong[b-hynoocbs0f] { font-size: 1.1rem; }

.e-chart[b-hynoocbs0f] { width: 100%; }
.e-fine[b-hynoocbs0f] { margin: 0; font-size: 0.72rem; color: var(--text-muted, #888); line-height: 1.4; }

.e-insights[b-hynoocbs0f] { margin: 0; padding-left: 18px; display: flex; flex-direction: column; gap: 6px; font-size: 0.85rem; }
.e-insights li.unsure[b-hynoocbs0f] { color: var(--text-muted, #aaa); }

.e-calendar[b-hynoocbs0f] { display: flex; flex-wrap: wrap; gap: 14px; }
.e-month-name[b-hynoocbs0f] { font-size: 0.72rem; color: var(--text-muted, #999); margin-bottom: 4px; }
.e-days[b-hynoocbs0f] { display: grid; grid-template-columns: repeat(5, 14px); gap: 3px; }
.e-day[b-hynoocbs0f] { width: 14px; height: 14px; border-radius: 3px; background: rgba(255, 255, 255, 0.05); }
.e-day.blank[b-hynoocbs0f] { background: transparent; }

.e-table[b-hynoocbs0f] { width: 100%; border-collapse: collapse; font-size: 0.78rem; }
.e-table th[b-hynoocbs0f] { text-align: left; font-weight: 600; color: var(--text-muted, #999); padding: 4px 6px; border-bottom: 1px solid rgba(255, 255, 255, 0.08); }
.e-table td[b-hynoocbs0f] { padding: 4px 6px; border-bottom: 1px solid rgba(255, 255, 255, 0.04); }
.e-table tr.small td[b-hynoocbs0f] { opacity: 0.6; }

.gain[b-hynoocbs0f] { color: #22c55e; }
.loss[b-hynoocbs0f] { color: #ef4444; }

@media (max-width: 640px) {
    .e-table[b-hynoocbs0f] { font-size: 0.7rem; }
    .e-table th:nth-child(4)[b-hynoocbs0f], .e-table td:nth-child(4)[b-hynoocbs0f], .e-table th:nth-child(5)[b-hynoocbs0f], .e-table td:nth-child(5)[b-hynoocbs0f] { display: none; }
}
/* /Components/Pages/EntryAutopsy.razor.rz.scp.css */
.autopsy-page[b-kdr1u4e840] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
    color: #e6e6e6;
    font-size: 13px;
}

.autopsy-header[b-kdr1u4e840] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 18px;
}

.autopsy-header h1[b-kdr1u4e840] {
    margin: 0 0 4px;
    font-size: 22px;
    color: #fff;
}

.subtitle[b-kdr1u4e840] {
    margin: 0;
    color: #9aa4b2;
    max-width: 760px;
    line-height: 1.5;
}

.header-actions[b-kdr1u4e840] {
    display: flex;
    align-items: center;
    gap: 12px;
    white-space: nowrap;
}

.header-actions .opt[b-kdr1u4e840] {
    color: #9aa4b2;
    font-size: 12px;
}

.run-btn[b-kdr1u4e840] {
    background: #2563eb;
    color: #fff;
    border: none;
    padding: 9px 18px;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
}

.run-btn:disabled[b-kdr1u4e840] { opacity: 0.6; cursor: default; }

.notice[b-kdr1u4e840] {
    background: #161b22;
    border: 1px solid #2b313a;
    border-radius: 8px;
    padding: 16px;
    color: #9aa4b2;
}

.notice.error[b-kdr1u4e840] { border-color: #d1434b; color: #f0a5a9; }
.notice.warn[b-kdr1u4e840] { border-color: #b58900; color: #e0c46a; }

/* Headline */
.headline-row[b-kdr1u4e840] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.stat[b-kdr1u4e840] {
    flex: 1 1 120px;
    background: #161b22;
    border: 1px solid #2b313a;
    border-radius: 8px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.stat-num[b-kdr1u4e840] { font-size: 20px; font-weight: 700; color: #fff; }
.stat-lbl[b-kdr1u4e840] { font-size: 11px; color: #8b95a3; text-transform: uppercase; letter-spacing: .04em; }

.pos[b-kdr1u4e840] { color: #3fb950 !important; }
.neg[b-kdr1u4e840] { color: #f85149 !important; }
.dim[b-kdr1u4e840] { color: #7d8590 !important; }

/* Panels */
.panel[b-kdr1u4e840] {
    background: #0f1319;
    border: 1px solid #2b313a;
    border-radius: 10px;
    padding: 16px 18px;
    margin-bottom: 16px;
}

.panel h2[b-kdr1u4e840] {
    margin: 0 0 12px;
    font-size: 15px;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 10px;
}

.panel h3[b-kdr1u4e840] {
    margin: 16px 0 8px;
    font-size: 12px;
    color: #9aa4b2;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.grid-2[b-kdr1u4e840] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 900px) { .grid-2[b-kdr1u4e840] { grid-template-columns: 1fr; } }

/* Findings */
.findings[b-kdr1u4e840] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 900px) { .findings[b-kdr1u4e840] { grid-template-columns: 1fr; } }

.finding[b-kdr1u4e840] {
    border: 1px solid #2b313a;
    border-left-width: 4px;
    border-radius: 6px;
    padding: 12px 14px;
    background: #12171e;
}

.finding.sev-info[b-kdr1u4e840] { border-left-color: #2563eb; }
.finding.sev-warn[b-kdr1u4e840] { border-left-color: #b58900; }
.finding.sev-critical[b-kdr1u4e840] { border-left-color: #d1434b; }

.finding-q[b-kdr1u4e840] { font-weight: 700; color: #fff; margin-bottom: 4px; }
.finding-v[b-kdr1u4e840] { color: #d6dbe1; margin-bottom: 6px; }
.finding-d[b-kdr1u4e840] { color: #8b95a3; font-size: 12px; line-height: 1.45; }

/* Tables */
table.mini[b-kdr1u4e840] { width: 100%; border-collapse: collapse; font-size: 12px; }
table.mini th[b-kdr1u4e840] {
    text-align: right;
    color: #8b95a3;
    font-weight: 600;
    padding: 4px 8px;
    border-bottom: 1px solid #2b313a;
}
table.mini th:first-child[b-kdr1u4e840], table.mini td:first-child[b-kdr1u4e840] { text-align: left; }
table.mini td[b-kdr1u4e840] { text-align: right; padding: 5px 8px; border-bottom: 1px solid #1b2028; }

.hint[b-kdr1u4e840] { color: #7d8590; font-size: 11px; margin: 10px 0 0; }

/* Histogram */
.hist[b-kdr1u4e840] { display: flex; flex-direction: column; gap: 6px; }
.hist-row[b-kdr1u4e840] { display: flex; align-items: center; gap: 8px; }
.hist-lbl[b-kdr1u4e840] { width: 110px; color: #9aa4b2; font-size: 12px; }
.hist-bar[b-kdr1u4e840] { flex: 1; background: #1b2028; border-radius: 3px; height: 14px; overflow: hidden; }
.hist-bar span[b-kdr1u4e840] { display: block; height: 100%; background: #d1434b; }
.hist-n[b-kdr1u4e840] { width: 28px; text-align: right; color: #c9d1d9; }

/* Proposals */
.proposals[b-kdr1u4e840] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 900px) { .proposals[b-kdr1u4e840] { grid-template-columns: 1fr; } }

.proposal[b-kdr1u4e840] {
    border: 1px solid #2b313a;
    border-top-width: 3px;
    border-radius: 6px;
    padding: 12px 14px;
    background: #12171e;
}
.proposal.prio-critical[b-kdr1u4e840] { border-top-color: #d1434b; }
.proposal.prio-warn[b-kdr1u4e840] { border-top-color: #b58900; }
.proposal.prio-info[b-kdr1u4e840] { border-top-color: #2563eb; }
.proposal-title[b-kdr1u4e840] { font-weight: 700; color: #fff; margin-bottom: 6px; }
.proposal-why[b-kdr1u4e840], .proposal-how[b-kdr1u4e840] { color: #9aa4b2; font-size: 12px; line-height: 1.5; }
.proposal-how[b-kdr1u4e840] { margin-top: 4px; }

.tag-readonly[b-kdr1u4e840] {
    font-size: 10px;
    font-weight: 600;
    color: #8b95a3;
    background: #1b2028;
    border: 1px solid #2b313a;
    padding: 2px 8px;
    border-radius: 10px;
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* Cards */
.cards[b-kdr1u4e840] { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 12px; }

.card[b-kdr1u4e840] {
    border: 1px solid #2b313a;
    border-radius: 8px;
    padding: 12px 14px;
    background: #12171e;
}
.card.win[b-kdr1u4e840] { border-left: 3px solid #3fb950; }
.card.loss[b-kdr1u4e840] { border-left: 3px solid #f85149; }

.card-head[b-kdr1u4e840] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; }
.card-id[b-kdr1u4e840] { display: flex; align-items: center; gap: 6px; }
.sym[b-kdr1u4e840] { font-weight: 700; font-size: 15px; color: #fff; }
.dir[b-kdr1u4e840] { font-size: 10px; padding: 1px 6px; border-radius: 4px; font-weight: 700; }
.dir.long[b-kdr1u4e840] { background: #133a24; color: #3fb950; }
.dir.short[b-kdr1u4e840] { background: #3a1a1d; color: #f85149; }
.status[b-kdr1u4e840] { font-size: 9px; padding: 1px 5px; border-radius: 4px; letter-spacing: .05em; }
.status.open[b-kdr1u4e840] { background: #12324f; color: #58a6ff; }
.status.closed[b-kdr1u4e840] { background: #24292f; color: #8b95a3; }
.manual[b-kdr1u4e840] { font-size: 9px; color: #b58900; }
.card-ret[b-kdr1u4e840] { font-size: 16px; font-weight: 700; }

.card-meta[b-kdr1u4e840] { color: #7d8590; font-size: 11px; margin-bottom: 8px; }
.recon-warn[b-kdr1u4e840] { color: #e0c46a; font-size: 12px; padding: 6px 0; }

.gate-row[b-kdr1u4e840] { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
.gate[b-kdr1u4e840] { font-size: 11px; padding: 2px 7px; border-radius: 4px; font-weight: 600; }
.gate.ok[b-kdr1u4e840] { background: #133a24; color: #3fb950; }
.gate.bad[b-kdr1u4e840] { background: #3a1a1d; color: #f85149; }

.rules[b-kdr1u4e840] { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; }
.rule[b-kdr1u4e840] { font-size: 10px; padding: 1px 5px; border-radius: 3px; }
.rule.on[b-kdr1u4e840] { background: #17251b; color: #4bbd63; }
.rule.off[b-kdr1u4e840] { background: #1b2028; color: #5c6470; }

.badges[b-kdr1u4e840] { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; }
.badge[b-kdr1u4e840] { font-size: 10px; padding: 1px 6px; border-radius: 4px; background: #1b2028; color: #9aa4b2; border: 1px solid #262c35; }
.badge.ok[b-kdr1u4e840] { background: #133a24; color: #3fb950; border-color: #1c4a2f; }
.badge.bad[b-kdr1u4e840] { background: #3a1a1d; color: #f85149; border-color: #4a2226; }

.fwd[b-kdr1u4e840] { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; }
.fwd-spark[b-kdr1u4e840] { flex: 0 0 160px; }
.fwd-nums[b-kdr1u4e840] { display: flex; flex-direction: column; gap: 1px; font-size: 11px; color: #9aa4b2; }

.tags[b-kdr1u4e840] { display: flex; flex-wrap: wrap; gap: 4px; }
.ftag[b-kdr1u4e840] { font-size: 10px; padding: 1px 7px; border-radius: 10px; font-weight: 600; }
.ftag-winner[b-kdr1u4e840] { background: #133a24; color: #3fb950; }
.ftag-enteredtooearly[b-kdr1u4e840] { background: #3a2a12; color: #e0a838; }
.ftag-wrongregime[b-kdr1u4e840] { background: #3a1a1d; color: #f85149; }
.ftag-weakconfirmation[b-kdr1u4e840] { background: #2a2340; color: #a58bff; }
.ftag-badsymbol[b-kdr1u4e840] { background: #3a1a1d; color: #f0787f; }
.ftag-gatewouldreject[b-kdr1u4e840] { background: #24292f; color: #8b95a3; }

/* Trail-entry simulation ("delayed entry") */
.findings.one[b-kdr1u4e840] { grid-template-columns: 1fr; margin-bottom: 12px; }

.view-toggle[b-kdr1u4e840] { display: flex; gap: 6px; margin: 4px 0 12px; }
.view-toggle button[b-kdr1u4e840] {
    background: #161b22; color: #9aa4b2; border: 1px solid #2b313a; border-radius: 6px;
    padding: 5px 12px; font-size: 12px; cursor: pointer;
}
.view-toggle button.active[b-kdr1u4e840] { background: #12324f; color: #58a6ff; border-color: #1f4a73; }

.stat-pair[b-kdr1u4e840] { font-size: 15px; font-weight: 600; color: #d6dbe1; }
.stat-pair .arrow[b-kdr1u4e840] { color: #5c6470; margin: 0 4px; }
.stat-delta[b-kdr1u4e840] { font-size: 18px; font-weight: 700; }
.stat-sub[b-kdr1u4e840] { font-size: 10px; color: #7d8590; }

.cum-curve-wrap[b-kdr1u4e840] { margin: 6px 0 4px; background: #12171e; border: 1px solid #2b313a; border-radius: 6px; padding: 8px 10px; }
.cum-curve[b-kdr1u4e840] { display: block; width: 100%; height: 170px; }
.cum-caption[b-kdr1u4e840] { color: #7d8590; font-size: 11px; margin: 4px 0 0; }

.hist-row.two .hist-bars[b-kdr1u4e840] { flex: 1; display: flex; flex-direction: column; gap: 2px; }
.hist-row.two .hist-bar[b-kdr1u4e840] { height: 8px; }
.hist-row.two .hist-bar.sim span[b-kdr1u4e840] { background: #2ea043; }
.hist-row.two .hist-n[b-kdr1u4e840] { width: 64px; white-space: nowrap; font-size: 11px; }
.hist-legend[b-kdr1u4e840] { display: flex; gap: 14px; font-size: 11px; color: #9aa4b2; margin-bottom: 8px; }
.hist-legend .sw[b-kdr1u4e840] { display: inline-block; width: 10px; height: 8px; border-radius: 2px; margin-right: 4px; vertical-align: middle; }

.trail-sim .scroll[b-kdr1u4e840] { overflow-x: auto; max-height: 440px; overflow-y: auto; }
.trail-sim table.mini th[b-kdr1u4e840], .trail-sim table.mini td[b-kdr1u4e840] { white-space: nowrap; padding: 4px 6px; }
.trail-sim table.mini th[b-kdr1u4e840] { position: sticky; top: 0; background: #0f1319; }
tr.primary-row td[b-kdr1u4e840] { background: #12324f; font-weight: 600; }

.delta-bar[b-kdr1u4e840] { display: inline-block; width: 70px; height: 8px; background: #1b2028; border-radius: 3px; overflow: hidden; vertical-align: middle; position: relative; }
.delta-bar span[b-kdr1u4e840] { position: absolute; top: 0; height: 100%; }
.delta-bar span.up[b-kdr1u4e840] { left: 50%; background: #3fb950; }
.delta-bar span.down[b-kdr1u4e840] { right: 50%; background: #f85149; }

.trail-line[b-kdr1u4e840] { display: flex; gap: 6px; align-items: flex-start; font-size: 11px; color: #9aa4b2; margin-bottom: 8px; line-height: 1.4; }
.trail-chip[b-kdr1u4e840] { flex: 0 0 auto; font-size: 10px; padding: 1px 6px; border-radius: 4px; font-weight: 600; text-transform: uppercase; letter-spacing: .03em; }
.trail-chip.trailfilled[b-kdr1u4e840] { background: #133a24; color: #3fb950; }
.trail-chip.fallbackfilled[b-kdr1u4e840] { background: #3a2a12; color: #e0a838; }
.trail-chip.skipped[b-kdr1u4e840] { background: #24292f; color: #8b95a3; }
.trail-chip.nodata[b-kdr1u4e840], .trail-chip.notsimulated[b-kdr1u4e840] { background: #1b2028; color: #5c6470; }

.counters[b-kdr1u4e840] { color: #7d8590; font-size: 11px; margin-top: 10px; }
.trail-sim table.dir-split td:first-child[b-kdr1u4e840] { text-align: left; }
.trail-sim table.dir-split tr:hover td[b-kdr1u4e840] { background: #161b22; }
/* /Components/Pages/FullAnalyse.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════ */
/* TECH SCREENER PAGE STYLES */
/* Modern, Clean, "Stockmarket Terminal" aesthetic - Matching Dividend Intelligence */
/* ═══════════════════════════════════════════════════════════════════════ */

.screener-container[b-rikc99zwsi] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 1rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* HEADER / HERO */
/* ═══════════════════════════════════════════════════════════════════════ */

.page-header[b-rikc99zwsi] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.header-content[b-rikc99zwsi] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.page-title[b-rikc99zwsi] {
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
}

.page-subtitle[b-rikc99zwsi] {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
    margin: 0;
}

.symbol-count[b-rikc99zwsi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(139, 92, 246, 0.2));
    border: 1px solid rgba(59, 130, 246, 0.3);
    border-radius: 10px;
    min-width: 80px;
}

.count-value[b-rikc99zwsi] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #60a5fa;
    line-height: 1;
}

.count-label[b-rikc99zwsi] {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.6);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-top: 0.25rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* DEMO BANNER */
/* ═══════════════════════════════════════════════════════════════════════ */

.upgrade-link[b-rikc99zwsi] {
    color: #10b981;
    text-decoration: none;
    font-weight: 600;
    margin-left: 0.75rem;
    transition: color 0.2s ease;
}

.upgrade-link:hover[b-rikc99zwsi] {
    color: #4ade80;
    text-decoration: underline;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* SEARCH & FILTER BAR */
/* ═══════════════════════════════════════════════════════════════════════ */

.search-filter-bar[b-rikc99zwsi] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.9), rgba(15, 23, 42, 0.95));
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: 1rem;
    position: sticky;
    top: 0;
    z-index: 100;
    backdrop-filter: blur(10px);
}

.search-container[b-rikc99zwsi] {
    position: relative;
    flex: 1;
    max-width: 280px;
}

.search-icon[b-rikc99zwsi] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255, 255, 255, 0.4);
    pointer-events: none;
}

.symbol-search-input[b-rikc99zwsi] {
    width: 100%;
    padding: 0.5rem 0.75rem 0.5rem 2.5rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    color: white;
    font-size: 0.85rem;
    transition: all 0.2s ease;
}

.symbol-search-input[b-rikc99zwsi]::placeholder {
    color: rgba(255, 255, 255, 0.4);
}

.symbol-search-input:focus[b-rikc99zwsi] {
    outline: none;
    border-color: rgba(59, 130, 246, 0.5);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

.search-clear[b-rikc99zwsi] {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.1);
    border: none;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    transition: all 0.15s ease;
}

.search-clear:hover[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.3);
    color: #f87171;
}

.filter-controls[b-rikc99zwsi] {
    display: flex;
    gap: 0.5rem;
}

.filter-toggle-btn[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.75rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.filter-toggle-btn:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    color: white;
}

.filter-toggle-btn.active[b-rikc99zwsi] {
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(59, 130, 246, 0.4);
    color: #60a5fa;
}

.filter-badge[b-rikc99zwsi] {
    background: #3b82f6;
    color: white;
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.35rem;
    border-radius: 6px;
    min-width: 16px;
    text-align: center;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* QUICK FILTER CHIPS */
/* ═══════════════════════════════════════════════════════════════════════ */

.quick-filters[b-rikc99zwsi] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.quick-filter-chip[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.9rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 20px;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.quick-filter-chip:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.1);
    color: white;
}

.quick-filter-chip.active[b-rikc99zwsi] {
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(59, 130, 246, 0.4);
    color: #60a5fa;
}

.quick-filter-chip.active.golden[b-rikc99zwsi] {
    background: rgba(234, 179, 8, 0.2);
    border-color: rgba(234, 179, 8, 0.4);
    color: #fbbf24;
}

.quick-filter-chip.active.bullish[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    border-color: rgba(16, 185, 129, 0.4);
    color: #10b981;
}

.quick-filter-chip.active.bearish[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.2);
    border-color: rgba(239, 68, 68, 0.4);
    color: #f87171;
}

.chip-icon[b-rikc99zwsi] {
    font-size: 0.9rem;
}

.chip-text[b-rikc99zwsi] {
    font-weight: 500;
}

.chip-count[b-rikc99zwsi] {
    font-size: 0.7rem;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.15);
    padding: 0.1rem 0.4rem;
    border-radius: 10px;
    min-width: 28px;
    text-align: center;
}

.quick-filter-chip.active .chip-count[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.2);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* RESULTS SUMMARY */
/* ═══════════════════════════════════════════════════════════════════════ */

.results-summary[b-rikc99zwsi] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    padding: 0 0.25rem;
}

.results-text[b-rikc99zwsi] {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.6);
}

.results-text strong[b-rikc99zwsi] {
    color: white;
}

.clear-all-btn[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 6px;
    padding: 0.35rem 0.6rem;
    color: #f87171;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.clear-all-btn:hover[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.2);
    border-color: rgba(239, 68, 68, 0.4);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* DATA TABLE */
/* ═══════════════════════════════════════════════════════════════════════ */

.table-container[b-rikc99zwsi] {
    background: rgba(30, 41, 59, 0.5);
    border-radius: 12px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.08);
    overflow: hidden;
}

.screener-table[b-rikc99zwsi] {
    width: 100%;
    border-collapse: collapse;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.85rem;
}

.screener-table th[b-rikc99zwsi] {
    background: rgba(15, 23, 42, 0.6);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: rgba(255, 255, 255, 0.5);
    padding: 0.75rem 0.6rem;
    white-space: nowrap;
    font-weight: 600;
    position: sticky;
    top: 0;
}

.screener-table th.text-right[b-rikc99zwsi] {
    text-align: right;
}

.screener-table th.text-center[b-rikc99zwsi] {
    text-align: center;
}

.screener-table tbody tr[b-rikc99zwsi] {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    transition: background-color 0.15s ease;
}

.screener-table tbody tr:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.05);
}

.screener-table td[b-rikc99zwsi] {
    padding: 0.6rem 0.6rem;
    vertical-align: middle;
}

.screener-table td.text-right[b-rikc99zwsi] {
    text-align: right;
}

.screener-table td.text-center[b-rikc99zwsi] {
    text-align: center;
}

/* Symbol Column */
.symbol-cell[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.symbol-link[b-rikc99zwsi] {
    font-weight: 700;
    font-size: 0.9rem;
    color: #60a5fa;
    text-decoration: none;
    transition: color 0.2s ease;
}

.symbol-link:hover[b-rikc99zwsi] {
    color: #818cf8;
    text-decoration: underline;
}

/* Price Column */
.price-cell[b-rikc99zwsi] {
    font-family: 'JetBrains Mono', 'SF Mono', Consolas, monospace;
    font-size: 0.85rem;
    color: white;
}

/* Change Column */
.change-cell[b-rikc99zwsi] {
    font-family: 'JetBrains Mono', 'SF Mono', Consolas, monospace;
    font-weight: 600;
    font-size: 0.8rem;
}

.change-cell.positive[b-rikc99zwsi] {
    color: #10b981;
}

.change-cell.negative[b-rikc99zwsi] {
    color: #ef4444;
}

/* Percentile Column */
.percentile-cell[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.percentile-bar[b-rikc99zwsi] {
    width: 40px;
    height: 5px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 3px;
    overflow: hidden;
}

.percentile-fill[b-rikc99zwsi] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.percentile-fill.low[b-rikc99zwsi] { background: linear-gradient(90deg, #10b981, #4ade80); }
.percentile-fill.mid[b-rikc99zwsi] { background: linear-gradient(90deg, #eab308, #facc15); }
.percentile-fill.high[b-rikc99zwsi] { background: linear-gradient(90deg, #ef4444, #f87171); }

.percentile-value[b-rikc99zwsi] {
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.7);
    min-width: 35px;
}

/* Score Badge */
.score-badge[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.75rem;
    min-width: 32px;
}

.score-badge.high[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
}

.score-badge.medium[b-rikc99zwsi] {
    background: rgba(234, 179, 8, 0.2);
    color: #eab308;
}

.score-badge.low[b-rikc99zwsi] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
}

/* Weight Badge */
.weight-badge[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.75rem;
    min-width: 40px;
}

.weight-badge.high[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
}

.weight-badge.medium[b-rikc99zwsi] {
    background: rgba(234, 179, 8, 0.2);
    color: #eab308;
}

.weight-badge.low[b-rikc99zwsi] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
}

/* Regime Badge */
.regime-badge[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.45rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 500;
    text-transform: capitalize;
}

.regime-badge.uptrend[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
}

.regime-badge.downtrend[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
}

.regime-badge.weak[b-rikc99zwsi] {
    background: rgba(234, 179, 8, 0.2);
    color: #eab308;
}

.regime-badge.range[b-rikc99zwsi] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
}

.regime-badge.transition[b-rikc99zwsi] {
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
}

/* Zone Badge */
.zone-badge[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.45rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 500;
}

.zone-badge.buy[b-rikc99zwsi],
.zone-badge.os[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
}

.zone-badge.sell[b-rikc99zwsi],
.zone-badge.ob[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
}

.zone-badge.hpr[b-rikc99zwsi] {
    background: rgba(139, 92, 246, 0.2);
    color: #a78bfa;
}

.zone-badge.neutral[b-rikc99zwsi],
.zone-badge.nz[b-rikc99zwsi] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
}

/* Stance Badge */
.stance-badge[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: capitalize;
}

.stance-badge.bullish[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.2);
    color: #10b981;
    border: 1px solid rgba(16, 185, 129, 0.3);
}

.stance-badge.bearish[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.2);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.stance-badge.neutral[b-rikc99zwsi] {
    background: rgba(148, 163, 184, 0.1);
    color: #94a3b8;
}

/* Indicators Button */
.indicators-btn[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: rgba(59, 130, 246, 0.1);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 6px;
    color: #60a5fa;
    cursor: pointer;
    transition: all 0.15s ease;
}

.indicators-btn:hover[b-rikc99zwsi] {
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(59, 130, 246, 0.4);
}

.indicators-btn svg[b-rikc99zwsi] {
    width: 14px;
    height: 14px;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* LOADING STATE */
/* ═══════════════════════════════════════════════════════════════════════ */

.loading-state[b-rikc99zwsi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    background: rgba(30, 41, 59, 0.5);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.6);
}

.loading-state h3[b-rikc99zwsi] {
    color: white;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}

.loading-state p[b-rikc99zwsi] {
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 1rem;
    font-size: 0.85rem;
}

.loading-spinner[b-rikc99zwsi] {
    width: 40px;
    height: 40px;
    border: 3px solid rgba(255, 255, 255, 0.1);
    border-top-color: #3b82f6;
    border-radius: 50%;
    margin-bottom: 1rem;
    animation: spin-b-rikc99zwsi 1s linear infinite;
}

@keyframes spin-b-rikc99zwsi {
    to { transform: rotate(360deg); }
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* EMPTY STATE */
/* ═══════════════════════════════════════════════════════════════════════ */

.empty-state[b-rikc99zwsi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    background: rgba(30, 41, 59, 0.5);
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.6);
}

.empty-icon[b-rikc99zwsi] {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

.empty-state h3[b-rikc99zwsi] {
    color: white;
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}

.empty-state p[b-rikc99zwsi] {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.85rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* FILTER DRAWER */
/* ═══════════════════════════════════════════════════════════════════════ */

.filter-drawer-overlay[b-rikc99zwsi] {
    position: fixed;
    /* Start below the fixed app header so the drawer header isn't clipped by it. */
    top: var(--header-height, 52px);
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 998;
    backdrop-filter: blur(2px);
}

.filter-drawer[b-rikc99zwsi] {
    position: fixed;
    top: var(--header-height, 52px);
    left: 0;
    width: 300px;
    max-width: 90vw;
    height: calc(100vh - var(--header-height, 52px));
    background: linear-gradient(135deg, #1e293b, #0f172a);
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
    display: flex;
    flex-direction: column;
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.3);
}

.filter-drawer-header[b-rikc99zwsi] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.filter-drawer-header h3[b-rikc99zwsi] {
    margin: 0;
    font-size: 1rem;
    color: white;
}

.filter-drawer-actions[b-rikc99zwsi] {
    display: flex;
    gap: 0.5rem;
}

.filter-drawer-actions button[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    padding: 0.35rem 0.6rem;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.filter-drawer-actions button:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.filter-drawer-body[b-rikc99zwsi] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
}

/* Filter Sections */
.filter-section[b-rikc99zwsi] {
    margin-bottom: 0.5rem;
    border-radius: 8px;
    overflow: hidden;
}

.filter-range[b-rikc99zwsi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: rgba(255, 255, 255, 0.6);
}

.filter-range input[type="number"][b-rikc99zwsi] {
    width: 60px;
    padding: 0.35rem 0.5rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: white;
    font-size: 0.75rem;
}

.filter-range input[type="number"]:focus[b-rikc99zwsi] {
    outline: none;
    border-color: rgba(59, 130, 246, 0.5);
}

.filter-group[b-rikc99zwsi] {
    margin-bottom: 1rem;
}

.filter-label[b-rikc99zwsi] {
    display: block;
    font-size: 0.7rem;
    color: rgba(255, 255, 255, 0.5);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 0.5rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* FILTER CHIPS (regime / zone / sector / stance) */
/* ═══════════════════════════════════════════════════════════════════════ */

.filter-chips[b-rikc99zwsi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.filter-chip[b-rikc99zwsi] {
    padding: 0.35rem 0.65rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.filter-chip:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.1);
    color: white;
}

.filter-chip.selected[b-rikc99zwsi] {
    background: rgba(59, 130, 246, 0.25);
    border-color: rgba(59, 130, 246, 0.5);
    color: #93c5fd;
    font-weight: 600;
}

.filter-chip.selected.bull[b-rikc99zwsi] {
    background: rgba(16, 185, 129, 0.25);
    border-color: rgba(16, 185, 129, 0.5);
    color: #34d399;
}

.filter-chip.selected.bear[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.25);
    border-color: rgba(239, 68, 68, 0.5);
    color: #f87171;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* SLIDER */
/* ═══════════════════════════════════════════════════════════════════════ */

.filter-slider[b-rikc99zwsi] {
    width: 100%;
    accent-color: #3b82f6;
    cursor: pointer;
}

.slider-value[b-rikc99zwsi] {
    margin-top: 0.25rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #60a5fa;
    text-align: right;
}

.filter-hint-small[b-rikc99zwsi] {
    margin: 0.4rem 0 0;
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.4);
    line-height: 1.3;
}

.filter-range select[b-rikc99zwsi] {
    flex: 1;
    padding: 0.35rem 0.5rem;
    background: rgba(0, 0, 0, 0.3);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: white;
    font-size: 0.75rem;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* DRAWER FOOTER */
/* ═══════════════════════════════════════════════════════════════════════ */

.filter-drawer-footer[b-rikc99zwsi] {
    display: flex;
    gap: 0.5rem;
    padding: 0.9rem 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(15, 23, 42, 0.95);
}

.btn-clear[b-rikc99zwsi] {
    padding: 0.6rem 1rem;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-clear:hover[b-rikc99zwsi] {
    background: rgba(255, 255, 255, 0.15);
    color: white;
}

.btn-apply[b-rikc99zwsi] {
    flex: 1;
    padding: 0.6rem 1rem;
    background: linear-gradient(135deg, #3b82f6, #6366f1);
    border: none;
    border-radius: 8px;
    color: white;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-apply:hover[b-rikc99zwsi] {
    filter: brightness(1.1);
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* ACTIVE FILTER PILLS */
/* ═══════════════════════════════════════════════════════════════════════ */

.active-filters-bar[b-rikc99zwsi] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
    padding: 0 0.25rem;
}

.active-filter-pill[b-rikc99zwsi] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0.6rem;
    background: rgba(59, 130, 246, 0.15);
    border: 1px solid rgba(59, 130, 246, 0.35);
    border-radius: 14px;
    color: #93c5fd;
    font-size: 0.72rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.active-filter-pill:hover[b-rikc99zwsi] {
    background: rgba(239, 68, 68, 0.15);
    border-color: rgba(239, 68, 68, 0.35);
    color: #f87171;
}

.active-filter-pill .pill-x[b-rikc99zwsi] {
    font-size: 0.6rem;
    opacity: 0.8;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* RESET BUTTON (empty state) */
/* ═══════════════════════════════════════════════════════════════════════ */

.reset-btn[b-rikc99zwsi] {
    margin-top: 1rem;
    padding: 0.5rem 1.25rem;
    background: rgba(59, 130, 246, 0.15);
    border: 1px solid rgba(59, 130, 246, 0.35);
    border-radius: 8px;
    color: #60a5fa;
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.reset-btn:hover[b-rikc99zwsi] {
    background: rgba(59, 130, 246, 0.25);
}

.count-badge[b-rikc99zwsi] {
    background: #3b82f6;
    color: white;
    font-size: 0.65rem;
    font-weight: 600;
    padding: 0.1rem 0.35rem;
    border-radius: 6px;
    min-width: 16px;
    text-align: center;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* INDICATOR DRAWER (Sidebar) */
/* ═══════════════════════════════════════════════════════════════════════ */

.indicator-drawer-overlay[b-rikc99zwsi] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 998;
    backdrop-filter: blur(2px);
}

.indicator-drawer[b-rikc99zwsi] {
    position: fixed;
    top: 0;
    right: 0;
    width: 360px;
    max-width: 90vw;
    height: 100vh;
    background: linear-gradient(135deg, #1e293b, #0f172a);
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    z-index: 999;
    display: flex;
    flex-direction: column;
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.3);
    overflow-y: auto;
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* RESPONSIVE */
/* ═══════════════════════════════════════════════════════════════════════ */

@media (max-width: 992px) {
    .quick-filters[b-rikc99zwsi] {
        flex-wrap: wrap;
    }
    
    .search-filter-bar[b-rikc99zwsi] {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .search-container[b-rikc99zwsi] {
        max-width: 100%;
    }
}

@media (max-width: 768px) {
    .screener-container[b-rikc99zwsi] {
        padding: 0.75rem;
    }
    
    .page-header[b-rikc99zwsi] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .symbol-count[b-rikc99zwsi] {
        align-self: flex-end;
    }
    
    .screener-table[b-rikc99zwsi] {
        font-size: 0.8rem;
    }
    
    .screener-table th[b-rikc99zwsi],
    .screener-table td[b-rikc99zwsi] {
        padding: 0.5rem 0.4rem;
    }
    
    .symbol-link[b-rikc99zwsi] {
        font-size: 0.85rem;
    }
}

@media (max-width: 576px) {
    .quick-filter-chip[b-rikc99zwsi] {
        padding: 0.4rem 0.6rem;
        font-size: 0.75rem;
    }
    
    .chip-count[b-rikc99zwsi] {
        display: none;
    }
    
    .percentile-bar[b-rikc99zwsi] {
        display: none;
    }
}

/* Free account: the screener is Pro */
.screener-locked[b-rikc99zwsi] { max-width: 560px; margin: 24px auto; }
/* /Components/Pages/IntradayBehavior.razor.rz.scp.css */
.bh-container[b-zj2jykkro3] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 16px 20px 48px;
    color: var(--text-primary, #e6edf3);
}

/* ══ Command strip ══ */
.bh-command[b-zj2jykkro3] {
    position: sticky;
    top: 60px;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    margin-bottom: 12px;
    background: color-mix(in srgb, var(--terminal-bg, #0d1117) 88%, transparent);
    backdrop-filter: blur(10px);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 14px;
}

.bh-brand[b-zj2jykkro3] { display: flex; align-items: center; gap: 12px; }
.bh-brand-mark[b-zj2jykkro3] {
    width: 40px; height: 40px; border-radius: 11px;
    display: grid; place-items: center;
    background: var(--accent-gradient, linear-gradient(135deg, #a78bfa, #3b82f6));
    color: #fff; font-size: 1.15rem;
}
.bh-brand-title[b-zj2jykkro3] { font-weight: 800; font-size: 1.05rem; letter-spacing: -0.01em; }
.bh-brand-sub[b-zj2jykkro3] { font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.bh-search[b-zj2jykkro3] { flex: 1; max-width: 460px; margin-left: auto; }
/* The shared SymbolSearch styles its input as a ticker (uppercase, 1px tracking): that turned this placeholder
   sentence into spaced capitals, cut off after "KO" on a phone. The typed value is still upper case: SymbolSearch
   upper-cases it on every keystroke (server side) and phones open a caps keyboard (autocapitalize). */
.bh-search[b-zj2jykkro3]  .symbol-search-input {
    text-transform: none;
    letter-spacing: normal;
    text-overflow: ellipsis;
    /* its own border / background use variables this page does not define: it showed as bare text */
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 8px;
    background: var(--terminal-bg, #0d1117);
}
.bh-search[b-zj2jykkro3]  .symbol-search-input:focus {
    outline: none;
    border-color: var(--accent, #a78bfa);
}
.bh-search[b-zj2jykkro3]  .symbol-search-input::placeholder {
    text-transform: none;
    letter-spacing: normal;
    font-weight: 400;
}
/* While empty only the ✓ can sit at the right (no search spinner): give the placeholder that room back, so it fits
   a 360px phone with a margin */
.bh-search[b-zj2jykkro3]  .symbol-search-input:placeholder-shown {
    padding-right: 1.75rem;
}

/* ══ Buttons ══ */
.bh-btn[b-zj2jykkro3] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 12px;
    border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-surface, #161b22);
    color: var(--text-primary, #e6edf3);
    font-size: 0.8rem;
    cursor: pointer;
    white-space: nowrap;
}
.bh-btn:hover[b-zj2jykkro3] { border-color: var(--accent, #a78bfa); }
.bh-btn.ghost[b-zj2jykkro3] { background: transparent; }
.bh-btn.small[b-zj2jykkro3] { padding: 5px 10px; font-size: 0.75rem; margin-top: 8px; }
.bh-btn.link[b-zj2jykkro3] { border: none; background: transparent; color: var(--text-muted, #8b949e); padding: 4px 8px; }
.bh-btn.link:hover[b-zj2jykkro3] { color: var(--text-primary, #e6edf3); }

/* The session overlay's entry point: the one gradient button on the page, with three little lines drawing in. */
.bh-overlay-btn[b-zj2jykkro3] {
    margin-left: auto;
    padding: 7px 14px 7px 10px;
    border: 1px solid rgba(167, 139, 250, 0.55);
    background: linear-gradient(135deg, rgba(167, 139, 250, 0.28), rgba(59, 130, 246, 0.2));
    font-weight: 700;
    box-shadow: 0 0 18px rgba(167, 139, 250, 0.25);
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
.bh-overlay-btn:hover:not(:disabled)[b-zj2jykkro3] { box-shadow: 0 0 26px rgba(167, 139, 250, 0.5); transform: translateY(-1px); border-color: #c4b5fd; }
.bh-overlay-btn:disabled[b-zj2jykkro3] { opacity: 0.45; cursor: default; box-shadow: none; }
.bh-overlay-spark svg[b-zj2jykkro3] { display: block; }
.bh-overlay-spark path[b-zj2jykkro3] {
    fill: none;
    stroke: #c4b5fd;
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 40;
    stroke-dashoffset: 40;
    animation: bh-spark-b-zj2jykkro3 2.6s ease-in-out infinite;
}
.bh-overlay-spark path.b[b-zj2jykkro3] { stroke: #3fb950; opacity: 0.8; animation-delay: 0.25s; }
.bh-overlay-spark path.c[b-zj2jykkro3] { stroke: #f85149; opacity: 0.8; animation-delay: 0.5s; }
@keyframes bh-spark-b-zj2jykkro3 {
    0% { stroke-dashoffset: 40; }
    45%, 80% { stroke-dashoffset: 0; }
    100% { stroke-dashoffset: -40; }
}
@media (prefers-reduced-motion: reduce) {
    .bh-overlay-spark path[b-zj2jykkro3] { animation: none; stroke-dashoffset: 0; }
}

/* ══ Controls ══ */
.bh-controls[b-zj2jykkro3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 18px;
    padding: 10px 4px 14px;
}
.bh-ctl[b-zj2jykkro3] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.bh-ctl-label[b-zj2jykkro3] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text-muted, #8b949e); }

.bh-seg[b-zj2jykkro3] {
    display: inline-flex;
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 8px;
    overflow: hidden;
}
.bh-seg button[b-zj2jykkro3] {
    display: inline-flex; align-items: center; gap: 4px;
    border: none;
    background: transparent;
    color: var(--text-secondary, #c9d1d9);
    padding: 6px 10px;
    font-size: 0.78rem;
    cursor: pointer;
}
.bh-seg button + button[b-zj2jykkro3] { border-left: 1px solid var(--terminal-border, #30363d); }
.bh-seg button:hover[b-zj2jykkro3] { background: rgba(167, 139, 250, 0.08); }
.bh-seg button.on[b-zj2jykkro3] { background: rgba(167, 139, 250, 0.18); color: #fff; font-weight: 600; }
.bh-seg button.locked[b-zj2jykkro3] { color: var(--text-muted, #8b949e); }
.bh-seg button i[b-zj2jykkro3] { font-size: 0.65rem; }
.bh-seg.small button[b-zj2jykkro3] { padding: 5px 8px; font-size: 0.72rem; }

.bh-pos[b-zj2jykkro3] { display: inline-flex; align-items: center; gap: 6px; }
.bh-pos input[b-zj2jykkro3] {
    width: 96px;
    padding: 5px 8px;
    border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-bg, #0d1117);
    color: var(--text-primary, #e6edf3);
    font-size: 0.8rem;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

.bh-check[b-zj2jykkro3] { display: inline-flex; align-items: center; gap: 6px; font-size: 0.8rem; color: var(--text-secondary, #c9d1d9); cursor: pointer; }

/* ══ Notices ══ */
.bh-upgrade[b-zj2jykkro3] { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 12px; }
.bh-upgrade > :first-child[b-zj2jykkro3] { flex: 1; }
.bh-notice[b-zj2jykkro3] {
    display: flex; align-items: center; gap: 8px;
    margin: 0 0 12px;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.8rem;
    color: var(--text-secondary, #c9d1d9);
    background: rgba(56, 139, 253, 0.08);
    border: 1px solid rgba(56, 139, 253, 0.3);
}
.bh-notice.warn[b-zj2jykkro3] { background: rgba(210, 153, 34, 0.08); border-color: rgba(210, 153, 34, 0.35); }

.bh-banner[b-zj2jykkro3] {
    display: flex; gap: 10px; align-items: flex-start;
    padding: 10px 14px;
    margin-bottom: 14px;
    border-radius: 10px;
    font-size: 0.82rem;
    background: rgba(167, 139, 250, 0.07);
    border: 1px solid rgba(167, 139, 250, 0.25);
}
.bh-banner i[b-zj2jykkro3] { color: var(--accent, #a78bfa); margin-top: 2px; }
.bh-banner-sub[b-zj2jykkro3] { font-size: 0.74rem; color: var(--text-muted, #8b949e); margin-top: 2px; }

/* ══ Cards ══ */
.bh-card[b-zj2jykkro3] {
    padding: 14px 16px 16px;
    margin-bottom: 16px;
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 12px;
    background: var(--terminal-surface, #161b22);
}
.bh-card-head[b-zj2jykkro3] {
    display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
    gap: 8px 16px;
    margin-bottom: 10px;
}
.bh-card-head h2[b-zj2jykkro3] { margin: 0; font-size: 1rem; font-weight: 800; }
.bh-card-sub[b-zj2jykkro3] { font-size: 0.72rem; font-weight: 400; color: var(--text-muted, #8b949e); margin-left: 6px; }

.bh-legend[b-zj2jykkro3] { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-size: 0.7rem; color: var(--text-muted, #8b949e); }
.bh-legend .sw[b-zj2jykkro3] { width: 14px; height: 10px; border-radius: 3px; display: inline-block; margin-left: 6px; }
.bh-legend .sw.down[b-zj2jykkro3] { background: #b62324; }
.bh-legend .sw.flat[b-zj2jykkro3] { background: #2a3038; }
.bh-legend .sw.up[b-zj2jykkro3] { background: #238636; }
.bh-legend .sw.low[b-zj2jykkro3] { background: #2a6037; opacity: 0.8; }
.bh-legend .sw.toofew[b-zj2jykkro3] {
    background: #2a3038 repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.12) 0 2px, transparent 2px 6px);
}

.bh-foot[b-zj2jykkro3] { font-size: 0.72rem; color: var(--text-muted, #8b949e); margin: 8px 0 0; }

.bh-stats[b-zj2jykkro3] { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.bh-stats div[b-zj2jykkro3] { display: flex; flex-direction: column; }
.bh-stats span[b-zj2jykkro3] { font-size: 0.64rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted, #8b949e); }
.bh-stats b[b-zj2jykkro3] { font-size: 0.9rem; font-variant-numeric: tabular-nums; }

.bh-daygrid-wrap[b-zj2jykkro3] { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.bh-daygrid-wrap[b-zj2jykkro3]  svg { display: block; min-width: 720px; }
.bh-daygrid-wrap.wide[b-zj2jykkro3]  svg { min-width: 1080px; }

.bh-notes[b-zj2jykkro3] { margin: 10px 0 0; padding-left: 18px; font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.bh-notes li[b-zj2jykkro3] { margin-bottom: 2px; }

.bh-disclaimer[b-zj2jykkro3] { font-size: 0.72rem; color: var(--text-muted, #8b949e); text-align: center; margin-top: 18px; }

/* ══ Landing ══ */
.bh-landing[b-zj2jykkro3] { text-align: center; padding: 72px 16px 88px; }
.bh-landing h1[b-zj2jykkro3] { font-size: clamp(1.6rem, 4vw, 2.6rem); font-weight: 850; letter-spacing: -0.02em; margin: 0 auto 14px; max-width: 720px; }
/* FocusOnNavigate puts focus on the first h1 after each navigation; it is not an interactive element. */
.bh-landing h1:focus[b-zj2jykkro3] { outline: none; }
.bh-landing p[b-zj2jykkro3] { max-width: 600px; margin: 0 auto 22px; color: var(--text-secondary, #c9d1d9); }
.bh-landing-note[b-zj2jykkro3] { font-size: 0.74rem; color: var(--text-muted, #8b949e) !important; }
.bh-examples[b-zj2jykkro3] { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; margin-bottom: 22px; }
.bh-chip[b-zj2jykkro3] {
    padding: 7px 14px;
    border-radius: 999px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-surface, #161b22);
    color: var(--text-primary, #e6edf3);
    font-weight: 700;
    cursor: pointer;
}
.bh-chip:hover[b-zj2jykkro3] { border-color: var(--accent, #a78bfa); }

/* ══ Phone ══ */
@media (max-width: 720px) {
    .bh-container[b-zj2jykkro3] { padding: 10px 12px 40px; }
    .bh-command[b-zj2jykkro3] { position: static; flex-wrap: wrap; gap: 10px; padding: 10px 12px; }
    /* flex-basis 100%: its own row (flex: 1's zero basis let a 430px phone squeeze it to 67px beside the buttons) */
    .bh-search[b-zj2jykkro3] { max-width: none; width: 100%; flex-basis: 100%; order: 3; margin-left: 0; }
    .bh-brand-sub[b-zj2jykkro3] { display: none; }
    .bh-controls[b-zj2jykkro3] { gap: 8px 12px; }
    .bh-card[b-zj2jykkro3] { padding: 12px 10px; }
}

/* iOS zooms into a focused field under 16px: mobile.css covers <= 900px, this the wider touch screens
   (a landscape iPhone Pro Max, iPads) */
@media (pointer: coarse) {
    .bh-search[b-zj2jykkro3]  .symbol-search-input,
    .bh-pos input[b-zj2jykkro3] { font-size: 16px; }
}
/* /Components/Pages/MarketOverview.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════
   Market Overview V4 - Premium Decision-Focused Design
   Visual Polish v2 — Bloomberg-lite + TradingView premium aesthetic
   ═══════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────── */
/* CSS VARIABLES & COLOR SYSTEM */
/* ─────────────────────────────────────────────────────────────────────── */

:root[b-ybe0x4ltl6] {
    /* Dark Theme Foundation */
    --bg-primary: #0a0f1a;
    --bg-surface: #0f1419;
    --bg-card: #1a1f2e;
    --bg-elevated: #1f2937;

    /* Borders */
    --border-subtle: rgba(255, 255, 255, 0.04);
    --border: rgba(255, 255, 255, 0.08);
    --border-medium: rgba(255, 255, 255, 0.15);

    /* Text */
    --text-primary: #f9fafb;
    --text-secondary: #d1d5db;
    --text-muted: #9ca3af;
    --text-subtle: #6b7280;

    /* Status Colors */
    --success: #10b981;
    --success-hover: #059669;
    --success-bg: rgba(16, 185, 129, 0.12);
    --success-rgb: 16, 185, 129;

    --error: #ef4444;
    --error-hover: #dc2626;
    --error-bg: rgba(239, 68, 68, 0.12);
    --error-rgb: 239, 68, 68;

    --warning: #f59e0b;
    --warning-bg: rgba(245, 158, 11, 0.12);
    --warning-rgb: 245, 158, 11;

    --info: #3b82f6;
    --info-bg: rgba(59, 130, 246, 0.12);
    --info-rgb: 59, 130, 246;

    /* Pillar Colors */
    --trend-color: #3b82f6;
    --breadth-color: #8b5cf6;
    --risk-color: #f59e0b;

    /* Shadows */
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.35);
    --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.45);
    --shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.55);

    /* Transitions */
    --transition-fast: 0.15s ease;
    --transition-base: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    --transition-slow: 0.5s cubic-bezier(0.4, 0, 0.2, 1);

    /* Spacing */
    --spacing-xs: 0.25rem;
    --spacing-sm: 0.5rem;
    --spacing-md: 1rem;
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-2xl: 3rem;

    /* Border Radius */
    --radius-sm: 6px;
    --radius-md: 10px;
    --radius-lg: 14px;
    --radius-xl: 18px;

    /* Fonts */
    --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --font-mono: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, monospace;
}

/* ─────────────────────────────────────────────────────────────────────── */
/* BASE CONTAINER & GLOBAL STYLES */
/* ─────────────────────────────────────────────────────────────────────── */

.market-overview-v4-container[b-ybe0x4ltl6] {
    max-width: 1600px;
    margin: 0 auto;
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-2xl);
    font-family: var(--font-sans);
    color: var(--text-primary);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.loading-state[b-ybe0x4ltl6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    color: var(--text-muted);
}

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 1: HERO COMMAND CENTER */
/* ─────────────────────────────────────────────────────────────────────── */

.hero-header[b-ybe0x4ltl6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--spacing-xl);
    position: relative;
    z-index: 1;
}

.hero-title[b-ybe0x4ltl6] {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--text-muted);
    margin: 0;
}

@keyframes pulse-dot-b-ybe0x4ltl6 {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.4; transform: scale(0.85); }
}

.hero-content[b-ybe0x4ltl6] {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 2.5rem;
    align-items: start;
    position: relative;
    z-index: 1;
}

/* Regime Gauge */

@keyframes pulse-glow-b-ybe0x4ltl6 {
    0%, 100% { filter: drop-shadow(0 0 30px rgba(var(--regime-rgb), 0.35)); }
    50% { filter: drop-shadow(0 0 50px rgba(var(--regime-rgb), 0.5)); }
}

/* Regime Info */
.regime-info[b-ybe0x4ltl6] {
    flex: 1;
}

.confidence-bar[b-ybe0x4ltl6] {
    width: 160px !important;
    flex: 0 0 160px !important;
    height: 6px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border-radius: 3px;
    overflow: hidden;
}

.confidence-fill[b-ybe0x4ltl6] {
    height: 100% !important;
    border-radius: 3px;
    transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    background: #6b7280 !important;
}

.confidence-fill.confidence-high[b-ybe0x4ltl6] {
    background: #10b981 !important;
}

.confidence-fill.confidence-medium[b-ybe0x4ltl6] {
    background: #f59e0b !important;
}

.confidence-fill.confidence-low[b-ybe0x4ltl6] {
    background: #ef4444 !important;
}

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION HEADERS */
/* ─────────────────────────────────────────────────────────────────────── */

.section-header[b-ybe0x4ltl6] {
    margin: var(--spacing-2xl) 0 var(--spacing-lg);
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.section-title[b-ybe0x4ltl6] {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--text-subtle);
    margin: 0;
}

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 2: KEY DRIVERS STRIP — Redesigned with colored accents */
/* ─────────────────────────────────────────────────────────────────────── */

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 3: STRATEGY PLAYBOOK — With refined meters */
/* ─────────────────────────────────────────────────────────────────────── */

.strategy-playbook[b-ybe0x4ltl6] {
    background: linear-gradient(160deg, rgba(31, 41, 55, 0.7) 0%, rgba(17, 24, 39, 0.9) 100%);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: var(--radius-xl);
    padding: 1.75rem 2rem;
    margin-bottom: var(--spacing-xl);
    animation: fade-in-up-b-ybe0x4ltl6 0.5s ease-out 0.2s backwards;
}

.strategy-row[b-ybe0x4ltl6] {
    display: grid;
    grid-template-columns: 200px 1fr 120px;
    align-items: center;
    gap: var(--spacing-lg);
    padding: 0.875rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.strategy-row:last-child[b-ybe0x4ltl6] {
    border-bottom: none;
}

.strategy-label[b-ybe0x4ltl6] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.strategy-meter[b-ybe0x4ltl6] {
    height: 6px;
    background: rgba(255, 255, 255, 0.04);
    border-radius: 3px;
    overflow: hidden;
    position: relative;
}

.strategy-fill[b-ybe0x4ltl6] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.1);
}

.strategy-status[b-ybe0x4ltl6] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-align: right;
}

.strategy-status.preferred[b-ybe0x4ltl6] { color: #34d399; }
.strategy-status.suitable[b-ybe0x4ltl6] { color: #60a5fa; }
.strategy-status.selective[b-ybe0x4ltl6] { color: #fbbf24; }
.strategy-status.weak[b-ybe0x4ltl6] { color: #fb923c; }
.strategy-status.avoid[b-ybe0x4ltl6] { color: #f87171; }

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 4: SYMBOL BIAS CARDS — Premium glass cards */
/* ─────────────────────────────────────────────────────────────────────── */

.best-badge[b-ybe0x4ltl6] {
    position: absolute;
    top: -1px;
    right: var(--spacing-md);
    padding: 0.3rem 0.75rem;
    background: linear-gradient(135deg, var(--success), var(--success-hover));
    color: white;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    border-radius: 0 0 var(--radius-sm) var(--radius-sm);
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.4);
    z-index: 1;
}

.symbol-ticker[b-ybe0x4ltl6] {
    font-size: 1.375rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    color: var(--text-primary);
}

.symbol-change.positive[b-ybe0x4ltl6] { color: var(--success); }
.symbol-change.negative[b-ybe0x4ltl6] { color: var(--error); }

.symbol-price[b-ybe0x4ltl6] {
    font-size: 1.625rem;
    font-weight: 700;
    font-family: var(--font-mono);
    color: var(--text-primary);
    margin: 0.25rem 0 0.75rem;
    letter-spacing: -0.01em;
}

.bias-label[b-ybe0x4ltl6] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0.75rem 0 0.5rem;
    line-height: 1.4;
}

.metric-label[b-ybe0x4ltl6] { color: var(--text-subtle); }
.metric-value[b-ybe0x4ltl6] { color: var(--text-secondary); font-weight: 600; font-family: var(--font-mono); }

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 5: MARKET HEALTH PANEL — Enhanced radial meters */
/* ─────────────────────────────────────────────────────────────────────── */

.health-title[b-ybe0x4ltl6] {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    color: var(--text-subtle);
    margin-bottom: var(--spacing-lg);
}

/* Participation Visual — Fixed green bar visibility */

/* Risk Appetite */

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 6: SENTIMENT GAUGE — Fixed text overlap */
/* ─────────────────────────────────────────────────────────────────────── */

.context-label[b-ybe0x4ltl6] {
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--text-subtle);
    margin-bottom: 0.4rem;
}

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 7: PILLAR BREAKDOWN — Refined compact cards */
/* ─────────────────────────────────────────────────────────────────────── */

/* ─────────────────────────────────────────────────────────────────────── */
/* SECTION 8: EXPANDABLE DETAILS */
/* ─────────────────────────────────────────────────────────────────────── */

.expandable-section[b-ybe0x4ltl6] {
    margin: var(--spacing-md) 0;
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: border-color var(--transition-base);
}

.expandable-section:hover[b-ybe0x4ltl6] {
    border-color: rgba(255, 255, 255, 0.08);
}

.expandable-header[b-ybe0x4ltl6] {
    background: rgba(255, 255, 255, 0.02);
    padding: 0.875rem var(--spacing-lg);
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    transition: background var(--transition-fast);
}

.expandable-header:hover[b-ybe0x4ltl6] {
    background: rgba(255, 255, 255, 0.04);
}

.expandable-title[b-ybe0x4ltl6] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.expandable-subtitle[b-ybe0x4ltl6] {
    display: block;
    font-size: 0.7rem;
    font-weight: 400;
    color: var(--text-subtle);
    margin-top: 0.2rem;
}

.expandable-icon[b-ybe0x4ltl6] {
    font-size: 1rem;
    color: var(--text-subtle);
    transition: transform var(--transition-base);
}

.expandable-section.open .expandable-icon[b-ybe0x4ltl6] {
    transform: rotate(180deg);
}

.expandable-content[b-ybe0x4ltl6] {
    padding: var(--spacing-lg);
    background: rgba(0, 0, 0, 0.15);
    display: none;
}

.expandable-section.open .expandable-content[b-ybe0x4ltl6] {
    display: block;
    animation: fade-in-up-b-ybe0x4ltl6 0.3s ease-out;
}

.ai-text[b-ybe0x4ltl6] {
    font-size: 0.875rem;
    line-height: 1.7;
    color: var(--text-muted);
    margin-bottom: var(--spacing-md);
}

.ai-timestamp[b-ybe0x4ltl6] {
    font-size: 0.7rem;
    color: var(--text-subtle);
    font-style: italic;
}

.rules-list[b-ybe0x4ltl6] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.rules-list li[b-ybe0x4ltl6] {
    padding: 0.5rem 0;
    font-size: 0.875rem;
    color: var(--text-muted);
    line-height: 1.5;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.rules-list li:last-child[b-ybe0x4ltl6] { border-bottom: none; }

.rules-list li[b-ybe0x4ltl6]::before {
    content: '•';
    color: var(--info);
    font-weight: 700;
    flex-shrink: 0;
}

/* ─────────────────────────────────────────────────────────────────────── */
/* ETF MODAL */
/* ─────────────────────────────────────────────────────────────────────── */

@keyframes fade-in-b-ybe0x4ltl6 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes modal-in-b-ybe0x4ltl6 {
    from { opacity: 0; transform: translate(-50%, -48%); }
    to { opacity: 1; transform: translate(-50%, -50%); }
}

/* ─────────────────────────────────────────────────────────────────────── */
/* UPDATE INFO & ANIMATIONS */
/* ─────────────────────────────────────────────────────────────────────── */

.update-info[b-ybe0x4ltl6] {
    text-align: center;
    padding: var(--spacing-xl) 0 var(--spacing-md);
    font-size: 0.75rem;
    color: var(--text-subtle);
    letter-spacing: 0.02em;
}

@keyframes fade-in-up-b-ybe0x4ltl6 {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ─────────────────────────────────────────────────────────────────────── */
/* RESPONSIVE DESIGN */
/* ─────────────────────────────────────────────────────────────────────── */

@media (max-width: 1280px) {

    .strategy-row[b-ybe0x4ltl6] {
        grid-template-columns: 180px 1fr 100px;
        gap: var(--spacing-md);
    }
}

@media (max-width: 1024px) {
    .hero-content[b-ybe0x4ltl6] {
        grid-template-columns: 1fr;
        text-align: center;
    }
}

@media (max-width: 768px) {
    .market-overview-v4-container[b-ybe0x4ltl6] {
        padding: var(--spacing-md);
    }

    .strategy-row[b-ybe0x4ltl6] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    .strategy-label[b-ybe0x4ltl6] { margin-bottom: 0.25rem; }
    .strategy-status[b-ybe0x4ltl6] { text-align: left; }
}

@media (max-width: 640px) {
    .hero-title[b-ybe0x4ltl6] { font-size: 0.7rem; }
    .section-title[b-ybe0x4ltl6] { font-size: 0.65rem; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   LIVING DASHBOARD GRID SYSTEM
   12-column grid, max-width 1440px
   ═══════════════════════════════════════════════════════════════════════════ */

.dashboard-grid-container[b-ybe0x4ltl6] {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: var(--spacing-lg);
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 var(--spacing-lg);
}

/* Span utilities */
.span-full[b-ybe0x4ltl6] { grid-column: span 12; }
.span-8[b-ybe0x4ltl6] { grid-column: span 8; }
.span-4[b-ybe0x4ltl6] { grid-column: span 4; }

/* Two-column layout */

/* ═══════════════════════════════════════════════════════════════════════════
   RESPONSIVE BREAKPOINTS - GRID SYSTEM
   ═══════════════════════════════════════════════════════════════════════════ */

/* Tablet */
@media (max-width: 1024px) {
    .dashboard-grid-container[b-ybe0x4ltl6] {
        gap: var(--spacing-md);
        padding: 0 var(--spacing-md);
    }

    .span-8[b-ybe0x4ltl6] { grid-column: span 12; }
    .span-4[b-ybe0x4ltl6] { grid-column: span 6; }
}

/* Mobile */
@media (max-width: 640px) {
    .dashboard-grid-container[b-ybe0x4ltl6] {
        gap: 0.75rem;
        padding: 0 0.75rem;
    }

    .span-4[b-ybe0x4ltl6] { grid-column: span 12; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   ANIMATION LIBRARY
   Living dashboard micro-animations
   ═══════════════════════════════════════════════════════════════════════════ */

/* Pulse animation for scores and live elements */
@keyframes pulse-score-b-ybe0x4ltl6 {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.02); opacity: 0.9; }
}

/* Glow pulse for borders */
@keyframes glow-pulse-b-ybe0x4ltl6 {
    0%, 100% { box-shadow: 0 0 10px rgba(34, 197, 94, 0.3); }
    50% { box-shadow: 0 0 20px rgba(34, 197, 94, 0.5); }
}

/* Slide in from left for feed items */
@keyframes slide-in-left-b-ybe0x4ltl6 {
    from {
        transform: translateX(-20px);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Live indicator blink */
@keyframes live-blink-b-ybe0x4ltl6 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Number ticker shimmer */
@keyframes shimmer-b-ybe0x4ltl6 {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

/* Glow pulse for specific colors - green */
@keyframes glow-pulse-green-b-ybe0x4ltl6 {
    0%, 100% { box-shadow: 0 0 10px rgba(34, 197, 94, 0.3); }
    50% { box-shadow: 0 0 20px rgba(34, 197, 94, 0.5); }
}

/* Glow pulse for specific colors - amber */
@keyframes glow-pulse-amber-b-ybe0x4ltl6 {
    0%, 100% { box-shadow: 0 0 10px rgba(251, 191, 36, 0.3); }
    50% { box-shadow: 0 0 20px rgba(251, 191, 36, 0.5); }
}

/* Glow pulse for specific colors - red */
@keyframes glow-pulse-red-b-ybe0x4ltl6 {
    0%, 100% { box-shadow: 0 0 10px rgba(239, 68, 68, 0.3); }
    50% { box-shadow: 0 0 20px rgba(239, 68, 68, 0.5); }
}

/* Utility classes */

.animate-fade-up[b-ybe0x4ltl6] {
    animation: fade-in-up-b-ybe0x4ltl6 0.4s ease-out;
}

/* ═══════════════════════════════════════════════════════════════════════════
   CARD BASE STYLES
   Consistent dark theme cards
   ═══════════════════════════════════════════════════════════════════════════ */

.dashboard-card[b-ybe0x4ltl6] {
    background: linear-gradient(145deg, rgba(30, 30, 35, 0.95), rgba(20, 20, 25, 0.98));
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--radius-lg);
    padding: 1.25rem;
    backdrop-filter: blur(10px);
    transition: all var(--transition-base);
}

.dashboard-card:hover[b-ybe0x4ltl6] {
    border-color: rgba(255, 255, 255, 0.12);
    box-shadow: var(--shadow-md);
}

/* Section headers - enhanced */
.dashboard-section-header[b-ybe0x4ltl6] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 1rem;
}

/* ═══════════════════════════════════════════════════════════════════════════
   ACCESSIBILITY: REDUCED MOTION
   Respect user preferences for reduced motion
   ═══════════════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
    *[b-ybe0x4ltl6],
    *[b-ybe0x4ltl6]::before,
    *[b-ybe0x4ltl6]::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
    
    .animate-fade-up[b-ybe0x4ltl6] {
        animation: none !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════ */
/* CINEMATIC COMMAND CENTER (redesign)                                       */
/* ═══════════════════════════════════════════════════════════════════════ */

.cmd-hero[b-ybe0x4ltl6] {
    position: relative;
    display: grid;
    grid-template-columns: minmax(180px, 0.8fr) minmax(0, 2fr) minmax(220px, 1fr);
    gap: var(--spacing-xl);
    align-items: center;
    padding: var(--spacing-xl) var(--spacing-2xl);
    border-radius: var(--radius-xl);
    background:
        radial-gradient(120% 140% at 0% 0%, rgba(var(--regime-rgb), 0.16), transparent 55%),
        radial-gradient(120% 160% at 100% 100%, rgba(var(--regime-rgb), 0.10), transparent 55%),
        linear-gradient(160deg, #121826, #0c111b 70%);
    border: 1px solid rgba(var(--regime-rgb), 0.28);
    box-shadow: var(--shadow-xl), 0 0 60px -20px rgba(var(--regime-rgb), 0.5), inset 0 1px 0 rgba(255,255,255,0.04);
    overflow: hidden;
}
.cmd-hero[b-ybe0x4ltl6]::after {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(60% 80% at 18% 50%, rgba(var(--regime-rgb), 0.10), transparent 70%);
    pointer-events: none;
}

/* Scanning pulse line across the top */
.cmd-hero-pulse[b-ybe0x4ltl6] {
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(var(--regime-rgb), 0.95), transparent);
    background-size: 35% 100%;
    background-repeat: no-repeat;
    animation: cmd-scan-b-ybe0x4ltl6 3.2s cubic-bezier(0.4,0,0.2,1) infinite;
    opacity: 0.9;
}
@keyframes cmd-scan-b-ybe0x4ltl6 {
    0%   { background-position: -40% 0; }
    100% { background-position: 140% 0; }
}

/* LEFT — score ring */
.cmd-score[b-ybe0x4ltl6] { display: flex; flex-direction: column; align-items: center; gap: 8px; position: relative; z-index: 1; }
.cmd-ring[b-ybe0x4ltl6] { width: 170px; height: 170px; filter: drop-shadow(0 0 22px rgba(var(--regime-rgb), 0.45)); }
.cmd-ring svg[b-ybe0x4ltl6] { width: 100%; height: 100%; }
.cmd-ring-fill[b-ybe0x4ltl6] { transition: stroke-dasharray 1s cubic-bezier(0.4,0,0.2,1); animation: cmd-ring-glow-b-ybe0x4ltl6 3s ease-in-out infinite; }
@keyframes cmd-ring-glow-b-ybe0x4ltl6 { 0%,100% { opacity: 1; } 50% { opacity: 0.82; } }
.cmd-ring-score[b-ybe0x4ltl6] { font-size: 30px; font-weight: 800; fill: #fff; font-family: var(--font-mono); }
.cmd-score-label[b-ybe0x4ltl6] { font-size: 0.68rem; letter-spacing: 0.18em; color: var(--text-subtle); font-weight: 700; }

/* CENTER — story */
.cmd-story[b-ybe0x4ltl6] { display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 1; min-width: 0; }
.cmd-state[b-ybe0x4ltl6] { display: flex; align-items: center; gap: 12px; }
.cmd-state-dot[b-ybe0x4ltl6] { font-size: 0.85rem; filter: drop-shadow(0 0 8px rgba(var(--regime-rgb), 0.8)); }
.cmd-state-label[b-ybe0x4ltl6] {
    font-size: clamp(1.4rem, 2.4vw, 2.1rem);
    font-weight: 800;
    letter-spacing: 0.01em;
    color: #fff;
    text-shadow: 0 0 26px rgba(var(--regime-rgb), 0.55);
    line-height: 1.05;
}
.cmd-live[b-ybe0x4ltl6] {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 0.6rem; font-weight: 800; letter-spacing: 0.12em;
    color: #34d399; padding: 3px 8px; border-radius: 999px;
    background: rgba(16,185,129,0.14); border: 1px solid rgba(16,185,129,0.4);
}
.cmd-live-dot[b-ybe0x4ltl6] { width: 6px; height: 6px; border-radius: 50%; background: #34d399; animation: cmd-blink-b-ybe0x4ltl6 1.4s ease-in-out infinite; }
@keyframes cmd-blink-b-ybe0x4ltl6 { 0%,100% { opacity: 1; } 50% { opacity: 0.25; } }

.cmd-thesis[b-ybe0x4ltl6] {
    margin: 0;
    font-size: clamp(1rem, 1.4vw, 1.2rem);
    line-height: 1.45;
    color: var(--text-secondary);
    max-width: 60ch;
}
.cmd-action[b-ybe0x4ltl6] {
    display: flex; align-items: center; gap: 10px;
    padding: 10px 14px; border-radius: var(--radius-md);
    background: rgba(var(--regime-rgb), 0.10);
    border-left: 3px solid rgb(var(--regime-rgb));
}
.cmd-action-icon[b-ybe0x4ltl6] { font-size: 0.95rem; }
.cmd-action-text[b-ybe0x4ltl6] { color: var(--text-primary); font-weight: 600; font-size: 0.95rem; }

/* inline pillars */
.cmd-pillars[b-ybe0x4ltl6] { display: flex; gap: var(--spacing-lg); flex-wrap: wrap; margin-top: 2px; }
.cmd-pillar[b-ybe0x4ltl6] { display: flex; align-items: center; gap: 10px; flex: 1 1 160px; min-width: 150px; }
.cmd-pillar-name[b-ybe0x4ltl6] { font-size: 0.62rem; font-weight: 800; letter-spacing: 0.1em; color: var(--text-subtle); width: 56px; }
.cmd-pillar-bar[b-ybe0x4ltl6] { flex: 1; height: 6px; border-radius: 999px; background: rgba(255,255,255,0.06); overflow: hidden; }
.cmd-pillar-fill[b-ybe0x4ltl6] { height: 100%; border-radius: 999px; transition: width 0.9s cubic-bezier(0.4,0,0.2,1); }
.cmd-pillar-val[b-ybe0x4ltl6] { font-family: var(--font-mono); font-weight: 700; font-size: 0.85rem; width: 38px; text-align: right; }
.cmd-pillar-val.positive[b-ybe0x4ltl6] { color: #34d399; }
.cmd-pillar-val.negative[b-ybe0x4ltl6] { color: #f87171; }

.cmd-cta-row[b-ybe0x4ltl6] { display: flex; align-items: center; gap: var(--spacing-lg); flex-wrap: wrap; margin-top: 4px; }
.cmd-confidence[b-ybe0x4ltl6] { font-size: 0.82rem; font-weight: 600; color: var(--text-muted); }
.cmd-confidence.confidence-high[b-ybe0x4ltl6] { color: #34d399; }
.cmd-confidence.confidence-medium[b-ybe0x4ltl6] { color: #fbbf24; }
.cmd-confidence.confidence-low[b-ybe0x4ltl6] { color: #f87171; }

/* RIGHT — fear & greed */
.cmd-gauge[b-ybe0x4ltl6] {
    display: flex; flex-direction: column; align-items: center; gap: 4px;
    padding: var(--spacing-md);
    border-radius: var(--radius-lg);
    background: rgba(255,255,255,0.025);
    border: 1px solid var(--border);
    position: relative; z-index: 1;
}
.cmd-gauge-title[b-ybe0x4ltl6] { font-size: 0.62rem; font-weight: 800; letter-spacing: 0.16em; color: var(--text-subtle); }
.cmd-gauge-svg[b-ybe0x4ltl6] { width: 100%; max-width: 220px; }
.cmd-needle[b-ybe0x4ltl6] { transition: all 1s cubic-bezier(0.34,1.56,0.64,1); }
.cmd-gauge-readout[b-ybe0x4ltl6] { display: flex; flex-direction: column; align-items: center; margin-top: -10px; }
.cmd-gauge-value[b-ybe0x4ltl6] { font-size: 2rem; font-weight: 800; font-family: var(--font-mono); line-height: 1; }
.cmd-gauge-state[b-ybe0x4ltl6] { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; }
.cmd-gauge-deltas[b-ybe0x4ltl6] {
    display: flex;
    align-items: stretch;
    gap: 6px;
    margin-top: 6px;
    width: 100%;
    max-width: 240px;
}
.cmd-gauge-delta-item[b-ybe0x4ltl6] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    padding: 4px 2px;
    border-radius: var(--radius-md, 8px);
    background: rgba(255,255,255,0.03);
    border: 1px solid var(--border);
}
.cgd-period[b-ybe0x4ltl6] { font-size: 0.55rem; font-weight: 700; letter-spacing: 0.08em; color: var(--text-subtle); }
.cgd-val[b-ybe0x4ltl6] { font-size: 0.72rem; font-weight: 800; font-family: var(--font-mono); line-height: 1; }
.cmd-gauge-delta-item.up[b-ybe0x4ltl6] { border-color: rgba(52,211,153,0.3); background: rgba(52,211,153,0.07); }
.cmd-gauge-delta-item.up .cgd-val[b-ybe0x4ltl6] { color: #34d399; }
.cmd-gauge-delta-item.down[b-ybe0x4ltl6] { border-color: rgba(248,113,113,0.3); background: rgba(248,113,113,0.07); }
.cmd-gauge-delta-item.down .cgd-val[b-ybe0x4ltl6] { color: #f87171; }
.cmd-gauge-delta-item.flat .cgd-val[b-ybe0x4ltl6] { color: var(--text-subtle); }

/* SECTION SUBNOTE */
.section-subnote[b-ybe0x4ltl6] { font-size: 0.72rem; color: var(--text-subtle); margin-left: 12px; font-weight: 500; }

/* SECTOR HEATMAP */
.sector-heatmap[b-ybe0x4ltl6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: 10px;
}
.sector-tile[b-ybe0x4ltl6] {
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    padding: 14px 12px;
    display: flex; flex-direction: column; gap: 2px;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
    cursor: default;
}
.sector-tile:hover[b-ybe0x4ltl6] { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.sector-sym[b-ybe0x4ltl6] { font-size: 0.95rem; font-weight: 800; color: #fff; letter-spacing: 0.02em; }
.sector-name[b-ybe0x4ltl6] { font-size: 0.66rem; color: var(--text-muted); font-weight: 500; text-transform: uppercase; letter-spacing: 0.04em; }
.sector-chg[b-ybe0x4ltl6] { font-size: 1.15rem; font-weight: 800; font-family: var(--font-mono); margin-top: 4px; }
.sector-tile.up .sector-chg[b-ybe0x4ltl6] { color: #34d399; }
.sector-tile.down .sector-chg[b-ybe0x4ltl6] { color: #f87171; }

/* MOVERS TICKER */
.movers-ticker[b-ybe0x4ltl6] {
    display: flex; align-items: center; gap: 0;
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: linear-gradient(90deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
    overflow: hidden;
}
.movers-tag[b-ybe0x4ltl6] {
    flex-shrink: 0;
    font-size: 0.62rem; font-weight: 800; letter-spacing: 0.14em;
    color: #0a0f1a; background: linear-gradient(135deg, #60a5fa, #818cf8);
    padding: 10px 14px;
}
.movers-viewport[b-ybe0x4ltl6] { flex: 1; overflow: hidden; position: relative; }
.movers-track[b-ybe0x4ltl6] { display: inline-flex; gap: 26px; padding: 10px 20px; white-space: nowrap; animation: movers-scroll-b-ybe0x4ltl6 38s linear infinite; }
.movers-ticker:hover .movers-track[b-ybe0x4ltl6] { animation-play-state: paused; }
@keyframes movers-scroll-b-ybe0x4ltl6 { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
.mover[b-ybe0x4ltl6] { font-size: 0.84rem; font-weight: 600; font-family: var(--font-mono); color: var(--text-muted); }
.mover b[b-ybe0x4ltl6] { color: #fff; margin-right: 4px; }
.mover.up[b-ybe0x4ltl6] { color: #34d399; }
.mover.down[b-ybe0x4ltl6] { color: #f87171; }
a.mover[b-ybe0x4ltl6] { text-decoration: none; }
a.mover:hover b[b-ybe0x4ltl6] { text-decoration: underline; }

/* Responsive */
@media (max-width: 1024px) {
    .cmd-hero[b-ybe0x4ltl6] { grid-template-columns: 1fr; gap: var(--spacing-lg); padding: var(--spacing-lg); }
    .cmd-score[b-ybe0x4ltl6] { order: 1; }
    .cmd-story[b-ybe0x4ltl6] { order: 2; align-items: center; text-align: center; }
    .cmd-gauge[b-ybe0x4ltl6] { order: 3; max-width: 320px; margin: 0 auto; width: 100%; }
    .cmd-pillars[b-ybe0x4ltl6] { justify-content: center; }
}
@media (max-width: 560px) {
    .cmd-ring[b-ybe0x4ltl6] { width: 140px; height: 140px; }
    .cmd-state-label[b-ybe0x4ltl6] { font-size: 1.3rem; }
}
@media (prefers-reduced-motion: reduce) {
    .cmd-hero-pulse[b-ybe0x4ltl6], .cmd-ring-fill[b-ybe0x4ltl6], .cmd-live-dot[b-ybe0x4ltl6], .movers-track[b-ybe0x4ltl6] { animation: none !important; }
}

/* ── MARKET HEALTH — 6 PILLARS ── */
.pillar6-grid[b-ybe0x4ltl6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
    gap: 12px;
}
.pillar6[b-ybe0x4ltl6] {
    background: linear-gradient(160deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01));
    border: 1px solid var(--border);
    border-radius: var(--radius-lg);
    padding: 16px;
    display: flex; flex-direction: column; gap: 8px;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}
.pillar6:hover[b-ybe0x4ltl6] { transform: translateY(-3px); box-shadow: var(--shadow-md); border-color: var(--border-medium); }
.pillar6-top[b-ybe0x4ltl6] { display: flex; justify-content: space-between; align-items: center; }
.pillar6-name[b-ybe0x4ltl6] { font-size: 0.64rem; font-weight: 800; letter-spacing: 0.1em; color: var(--text-muted); }
.pillar6-weight[b-ybe0x4ltl6] { font-size: 0.58rem; font-weight: 700; color: var(--text-subtle); background: rgba(255,255,255,0.05); padding: 2px 6px; border-radius: 6px; }
.pillar6-value[b-ybe0x4ltl6] { font-size: 1.9rem; font-weight: 800; font-family: var(--font-mono); line-height: 1; color: var(--text-primary); }
.pillar6-value.positive[b-ybe0x4ltl6] { color: #34d399; }
.pillar6-value.negative[b-ybe0x4ltl6] { color: #f87171; }
.pillar6-emoji[b-ybe0x4ltl6] { font-size: 1.7rem; }
.pillar6-bar[b-ybe0x4ltl6] { height: 6px; border-radius: 999px; background: rgba(255,255,255,0.06); overflow: hidden; }
.pillar6-fill[b-ybe0x4ltl6] { height: 100%; border-radius: 999px; transition: width 0.9s cubic-bezier(0.4,0,0.2,1); }
.pillar6-status[b-ybe0x4ltl6] { font-size: 0.64rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-secondary); }
.pillar6-status.supportive[b-ybe0x4ltl6] { color: #34d399; }
.pillar6-status.moderate[b-ybe0x4ltl6] { color: #60a5fa; }
.pillar6-status.neutral[b-ybe0x4ltl6] { color: #fbbf24; }
.pillar6-status.headwind[b-ybe0x4ltl6] { color: #f87171; }
.pillar6-note[b-ybe0x4ltl6] { font-size: 0.72rem; color: var(--text-subtle); line-height: 1.35; }
@media (prefers-reduced-motion: reduce) { .pillar6-fill[b-ybe0x4ltl6] { transition: none; } }
/* /Components/Pages/MemoryMonitor.razor.rz.scp.css */
/* Moved from the inline <style> block in MemoryMonitor.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.memory-chart-container)[b-pctawhynio]  svg {
    background: linear-gradient(180deg, rgba(30,35,45,0.8) 0%, rgba(20,25,35,0.9) 100%);
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.1);
}
/* /Components/Pages/MonitorPage.razor.rz.scp.css */
.mn-container[b-3mcwu5r82c] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 16px 20px 48px;
    color: var(--text-primary, #e6edf3);
}

/* ══ Command strip (as /intraday) ══ */
.mn-command[b-3mcwu5r82c] {
    position: sticky;
    top: 60px;
    z-index: 40;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 16px;
    margin-bottom: 12px;
    background: color-mix(in srgb, var(--terminal-bg, #0d1117) 88%, transparent);
    backdrop-filter: blur(10px);
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 14px;
}
.mn-brand[b-3mcwu5r82c] { display: flex; align-items: center; gap: 12px; margin-right: auto; }
.mn-brand-mark[b-3mcwu5r82c] {
    width: 40px; height: 40px; border-radius: 11px;
    display: grid; place-items: center;
    background: var(--accent-gradient, linear-gradient(135deg, #a78bfa, #3b82f6));
    color: #fff; font-size: 1.15rem;
}
.mn-brand-title[b-3mcwu5r82c] { font-weight: 800; font-size: 1.05rem; letter-spacing: -0.01em; }
.mn-brand-sub[b-3mcwu5r82c] { font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.mn-usage[b-3mcwu5r82c] { font-size: 0.74rem; color: var(--text-muted, #8b949e); white-space: nowrap; }

/* ══ Buttons ══ */
.mn-btn[b-3mcwu5r82c] {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 7px 12px;
    border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-surface, #161b22);
    color: var(--text-primary, #e6edf3);
    font-size: 0.8rem;
    cursor: pointer;
    white-space: nowrap;
}
.mn-btn:hover:not(:disabled)[b-3mcwu5r82c] { border-color: var(--accent, #a78bfa); }
.mn-btn:disabled[b-3mcwu5r82c] { opacity: 0.5; cursor: default; }
.mn-btn.primary[b-3mcwu5r82c] { border-color: var(--accent, #a78bfa); background: rgba(167, 139, 250, 0.18); color: #fff; font-weight: 600; }
.mn-btn.ghost[b-3mcwu5r82c] { background: transparent; }
.mn-btn.small[b-3mcwu5r82c] { padding: 5px 10px; font-size: 0.75rem; }
.mn-btn.link[b-3mcwu5r82c] { border: none; background: transparent; color: var(--text-muted, #8b949e); padding: 4px 8px; }
.mn-btn.link:hover:not(:disabled)[b-3mcwu5r82c] { color: var(--text-primary, #e6edf3); }
.mn-btn.link.danger:hover:not(:disabled)[b-3mcwu5r82c] { color: #f85149; }
.mn-btn.danger[b-3mcwu5r82c] { border-color: rgba(248, 81, 73, 0.6); background: rgba(248, 81, 73, 0.12); color: #ffb3ad; }
.mn-btn.push[b-3mcwu5r82c] { margin-left: auto; }

/* ══ Notices ══ */
.mn-notice[b-3mcwu5r82c] {
    display: flex; align-items: center; gap: 8px;
    margin: 0 0 12px;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.8rem;
    color: var(--text-secondary, #c9d1d9);
    background: rgba(56, 139, 253, 0.08);
    border: 1px solid rgba(56, 139, 253, 0.3);
}
.mn-notice.subtle[b-3mcwu5r82c] { background: rgba(167, 139, 250, 0.06); border-color: rgba(167, 139, 250, 0.22); }
.mn-error[b-3mcwu5r82c] { margin-top: 10px; font-size: 0.8rem; color: #f85149; display: flex; gap: 6px; align-items: center; }
.mn-saved[b-3mcwu5r82c] { margin-top: 10px; font-size: 0.8rem; color: #3fb950; display: flex; gap: 6px; align-items: center; }
.mn-muted[b-3mcwu5r82c] { color: var(--text-muted, #8b949e); font-weight: 400; }
.mn-muted.small[b-3mcwu5r82c], .small[b-3mcwu5r82c] { font-size: 0.7rem; }
.mn-help[b-3mcwu5r82c] { font-size: 0.72rem; color: var(--text-muted, #8b949e); margin: 2px 0 8px; }

.mn-loading[b-3mcwu5r82c] { display: flex; align-items: center; gap: 10px; padding: 48px 0; justify-content: center; color: var(--text-muted, #8b949e); }
.mn-spinner[b-3mcwu5r82c] {
    width: 16px; height: 16px; border-radius: 50%;
    border: 2px solid rgba(167, 139, 250, 0.25); border-top-color: var(--accent, #a78bfa);
    animation: mn-spin-b-3mcwu5r82c 0.8s linear infinite;
}
@keyframes mn-spin-b-3mcwu5r82c { to { transform: rotate(360deg); } }

/* ══ Landing (free plan) ══ */
.mn-landing[b-3mcwu5r82c] { text-align: center; padding: 64px 16px 80px; }
.mn-landing h1[b-3mcwu5r82c] { font-size: clamp(1.6rem, 4vw, 2.6rem); font-weight: 850; letter-spacing: -0.02em; margin: 0 auto 14px; max-width: 720px; }
.mn-landing h1:focus[b-3mcwu5r82c] { outline: none; }
.mn-landing p[b-3mcwu5r82c] { max-width: 620px; margin: 0 auto 22px; color: var(--text-secondary, #c9d1d9); }
.mn-landing-upgrade[b-3mcwu5r82c] { max-width: 560px; margin: 0 auto 18px; text-align: left; }
.mn-landing-note[b-3mcwu5r82c] { font-size: 0.74rem; color: var(--text-muted, #8b949e) !important; }

/* ══ Layout ══ */
.mn-layout[b-3mcwu5r82c] { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 16px; align-items: start; }

/* ══ List ══ */
.mn-list[b-3mcwu5r82c] {
    display: flex; flex-direction: column; gap: 8px;
    position: sticky; top: 140px;
}
.mn-list-head[b-3mcwu5r82c] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.06em; color: var(--text-muted, #8b949e); padding: 0 2px; }
.mn-empty[b-3mcwu5r82c] { padding: 14px; border: 1px dashed var(--terminal-border, #30363d); border-radius: 12px; font-size: 0.8rem; color: var(--text-muted, #8b949e); }
.mn-empty p[b-3mcwu5r82c] { margin: 0 0 10px; }
.mn-item[b-3mcwu5r82c] {
    --bias: #a78bfa;
    display: flex; gap: 10px; align-items: flex-start;
    padding: 10px 12px;
    border: 1px solid var(--terminal-border, #30363d);
    border-left: 3px solid var(--bias);
    border-radius: 12px;
    background: var(--terminal-surface, #161b22);
    cursor: pointer;
}
.mn-item:hover[b-3mcwu5r82c] { border-color: var(--accent, #a78bfa); border-left-color: var(--bias); }
.mn-item.selected[b-3mcwu5r82c] { background: rgba(167, 139, 250, 0.08); border-color: rgba(167, 139, 250, 0.55); border-left-color: var(--bias); }
.mn-item.paused[b-3mcwu5r82c] { opacity: 0.65; }
.mn-item-body[b-3mcwu5r82c] { flex: 1; min-width: 0; }
.mn-item-name[b-3mcwu5r82c] { font-weight: 700; font-size: 0.88rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mn-item-sub[b-3mcwu5r82c], .mn-item-last[b-3mcwu5r82c] { font-size: 0.7rem; color: var(--text-muted, #8b949e); }
.mn-item-syms[b-3mcwu5r82c] { font-size: 0.72rem; color: var(--text-secondary, #c9d1d9); margin: 2px 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mn-item-actions[b-3mcwu5r82c] { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }

.bullish[b-3mcwu5r82c] { --bias: #3fb950; }
.bearish[b-3mcwu5r82c] { --bias: #f85149; }
.neutral[b-3mcwu5r82c] { --bias: #a78bfa; }
.mn-bias[b-3mcwu5r82c] {
    width: 26px; height: 26px; flex: none;
    display: grid; place-items: center;
    border-radius: 8px;
    color: var(--bias, #a78bfa);
    background: color-mix(in srgb, var(--bias, #a78bfa) 16%, transparent);
    font-size: 0.85rem;
}
.mn-bias.inline[b-3mcwu5r82c] { display: inline-grid; width: 22px; height: 22px; margin-right: 6px; vertical-align: -3px; font-size: 0.78rem; }

/* On/paused switch */
.mn-switch[b-3mcwu5r82c] { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font-size: 0.7rem; color: var(--text-muted, #8b949e); }
.mn-switch input[b-3mcwu5r82c] { position: absolute; opacity: 0; width: 0; height: 0; }
.mn-switch-track[b-3mcwu5r82c] {
    position: relative; width: 30px; height: 17px; border-radius: 999px;
    background: #30363d; transition: background 0.15s;
}
.mn-switch-track[b-3mcwu5r82c]::after {
    content: ""; position: absolute; top: 2px; left: 2px; width: 13px; height: 13px; border-radius: 50%;
    background: #c9d1d9; transition: transform 0.15s;
}
.mn-switch input:checked + .mn-switch-track[b-3mcwu5r82c] { background: rgba(167, 139, 250, 0.75); }
.mn-switch input:checked + .mn-switch-track[b-3mcwu5r82c]::after { transform: translateX(13px); background: #fff; }
.mn-switch input:focus-visible + .mn-switch-track[b-3mcwu5r82c] { outline: 2px solid var(--accent, #a78bfa); outline-offset: 2px; }

/* ══ Cards ══ */
.mn-main[b-3mcwu5r82c] { min-width: 0; }
.mn-intro[b-3mcwu5r82c] { padding: 32px 18px; border: 1px dashed var(--terminal-border, #30363d); border-radius: 12px; }
.mn-intro h2[b-3mcwu5r82c] { margin: 0 0 8px; font-size: 1.15rem; font-weight: 800; }
.mn-intro p[b-3mcwu5r82c] { margin: 0 0 8px; color: var(--text-secondary, #c9d1d9); font-size: 0.86rem; }
.mn-card[b-3mcwu5r82c] {
    padding: 14px 16px 16px;
    margin-bottom: 16px;
    border: 1px solid var(--terminal-border, #30363d);
    border-radius: 12px;
    background: var(--terminal-surface, #161b22);
}
.mn-card-head[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 16px; margin-bottom: 6px; }
.mn-card-head h2[b-3mcwu5r82c] { margin: 0; font-size: 1rem; font-weight: 800; }
.mn-card-sub[b-3mcwu5r82c] { font-size: 0.72rem; font-weight: 400; color: var(--text-muted, #8b949e); margin-left: 6px; }

/* ══ Live grid ══ */
.mn-grid-wrap[b-3mcwu5r82c] { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.mn-grid[b-3mcwu5r82c] { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 0.76rem; min-width: 560px; }
.mn-grid th[b-3mcwu5r82c] {
    text-align: left; font-weight: 600; font-size: 0.68rem; color: var(--text-muted, #8b949e);
    padding: 6px 8px; border-bottom: 1px solid var(--terminal-border, #30363d); vertical-align: bottom;
}
.mn-grid td[b-3mcwu5r82c] { padding: 7px 8px; border-bottom: 1px solid rgba(48, 54, 61, 0.55); vertical-align: top; }
.mn-grid td.sym a[b-3mcwu5r82c] { color: var(--text-primary, #e6edf3); font-weight: 700; text-decoration: none; }
.mn-grid td.sym a:hover[b-3mcwu5r82c] { color: var(--accent, #a78bfa); }
.mn-grid td.bar[b-3mcwu5r82c] { white-space: nowrap; font-variant-numeric: tabular-nums; }
.mn-grid td.bar span[b-3mcwu5r82c] { display: block; }
.mn-grid td.cell[b-3mcwu5r82c] { font-variant-numeric: tabular-nums; }
.mn-grid td.cell .mark[b-3mcwu5r82c] { font-weight: 800; margin-right: 4px; }
.mn-grid td.cell .reading[b-3mcwu5r82c] { color: var(--text-secondary, #c9d1d9); }
.mn-grid td.cell.pass .mark[b-3mcwu5r82c] { color: #3fb950; }
.mn-grid td.cell.fail .mark[b-3mcwu5r82c] { color: #f85149; }
.mn-grid td.cell.fail .reading[b-3mcwu5r82c] { color: var(--text-muted, #8b949e); }
.mn-grid td.cell.wait[b-3mcwu5r82c] { color: var(--text-muted, #8b949e); font-style: italic; }
.mn-grid tr.all td[b-3mcwu5r82c] { background: rgba(63, 185, 80, 0.09); }
.mn-grid tr.all td:first-child[b-3mcwu5r82c] { box-shadow: inset 3px 0 0 #3fb950; }
.mn-pill[b-3mcwu5r82c] {
    display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 0.68rem; white-space: nowrap;
    border: 1px solid var(--terminal-border, #30363d); color: var(--text-secondary, #c9d1d9);
}
.mn-pill.match[b-3mcwu5r82c] { border-color: rgba(63, 185, 80, 0.6); background: rgba(63, 185, 80, 0.15); color: #7ee787; font-weight: 700; }
.mn-pill.muted[b-3mcwu5r82c] { color: var(--text-muted, #8b949e); }

/* ══ Editor ══ */
.mn-row[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: flex-end; margin-bottom: 12px; }
.mn-field[b-3mcwu5r82c] { display: flex; flex-direction: column; gap: 5px; margin-bottom: 12px; font-size: 0.72rem; color: var(--text-muted, #8b949e); }
.mn-row .mn-field[b-3mcwu5r82c] { margin-bottom: 0; }
.mn-field > span:first-child[b-3mcwu5r82c] { text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.66rem; }
.mn-field.grow[b-3mcwu5r82c] { flex: 1; min-width: 220px; }
.mn-field input[type="text"][b-3mcwu5r82c], .mn-cond select[b-3mcwu5r82c], .mn-cond input[b-3mcwu5r82c] {
    padding: 6px 8px;
    border-radius: 8px;
    border: 1px solid var(--terminal-border, #30363d);
    background: var(--terminal-bg, #0d1117);
    color: var(--text-primary, #e6edf3);
    font-size: 0.82rem;
}
.mn-field input[type="text"]:focus[b-3mcwu5r82c], .mn-cond select:focus[b-3mcwu5r82c], .mn-cond input:focus[b-3mcwu5r82c] { outline: none; border-color: var(--accent, #a78bfa); }
.mn-cond input.num[b-3mcwu5r82c] { width: 76px; font-variant-numeric: tabular-nums; }
.mn-cond input[type="time"][b-3mcwu5r82c] { color-scheme: dark; }

.mn-seg[b-3mcwu5r82c] { display: inline-flex; border: 1px solid var(--terminal-border, #30363d); border-radius: 8px; overflow: hidden; }
.mn-seg button[b-3mcwu5r82c] {
    display: inline-flex; align-items: center; gap: 5px;
    border: none; background: transparent; color: var(--text-secondary, #c9d1d9);
    padding: 6px 10px; font-size: 0.78rem; cursor: pointer;
}
.mn-seg button + button[b-3mcwu5r82c] { border-left: 1px solid var(--terminal-border, #30363d); }
.mn-seg button:hover[b-3mcwu5r82c] { background: rgba(167, 139, 250, 0.08); }
.mn-seg button.on[b-3mcwu5r82c] { background: rgba(167, 139, 250, 0.18); color: #fff; font-weight: 600; }
.mn-seg button.bullish i[b-3mcwu5r82c], .mn-seg button.bearish i[b-3mcwu5r82c], .mn-seg button.neutral i[b-3mcwu5r82c] { color: var(--bias); }
.mn-seg button.on.bullish[b-3mcwu5r82c] { background: rgba(63, 185, 80, 0.18); }
.mn-seg button.on.bearish[b-3mcwu5r82c] { background: rgba(248, 81, 73, 0.18); }

.mn-chips[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; gap: 6px; }
.mn-chip[b-3mcwu5r82c] {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 6px 4px 10px; border-radius: 999px;
    border: 1px solid var(--terminal-border, #30363d); background: var(--terminal-bg, #0d1117);
    color: var(--text-primary, #e6edf3); font-weight: 700; font-size: 0.78rem;
}
.mn-chip button[b-3mcwu5r82c] { border: none; background: transparent; color: var(--text-muted, #8b949e); cursor: pointer; font-size: 0.95rem; line-height: 1; padding: 0 4px; }
.mn-chip button:hover[b-3mcwu5r82c] { color: #f85149; }

.mn-search[b-3mcwu5r82c] { flex: 1; max-width: 360px; min-width: 200px; }
/* The shared SymbolSearch styles its input as a ticker; keep the placeholder readable (as /intraday). */
.mn-search[b-3mcwu5r82c]  .symbol-search-input {
    text-transform: none; letter-spacing: normal; text-overflow: ellipsis;
    border: 1px solid var(--terminal-border, #30363d); border-radius: 8px; background: var(--terminal-bg, #0d1117);
}
.mn-search[b-3mcwu5r82c]  .symbol-search-input:focus { outline: none; border-color: var(--accent, #a78bfa); }
.mn-search[b-3mcwu5r82c]  .symbol-search-input::placeholder { text-transform: none; letter-spacing: normal; font-weight: 400; }

.mn-conds[b-3mcwu5r82c] { list-style: none; margin: 2px 0 8px; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.mn-cond[b-3mcwu5r82c] {
    padding: 8px 10px; border-radius: 10px;
    border: 1px solid var(--terminal-border, #30363d); background: rgba(255, 255, 255, 0.015);
}
.mn-cond-main[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: var(--text-secondary, #c9d1d9); font-size: 0.8rem; }
.mn-cond-main label.inline[b-3mcwu5r82c] { display: inline-flex; align-items: center; gap: 5px; font-size: 0.74rem; color: var(--text-muted, #8b949e); }
.mn-cond-main .mn-btn.link[b-3mcwu5r82c] { margin-left: auto; }
.mn-cond-help[b-3mcwu5r82c] { font-size: 0.7rem; color: var(--text-muted, #8b949e); margin-top: 5px; }

.mn-channels[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.mn-channels label[b-3mcwu5r82c] { display: inline-flex; align-items: center; gap: 5px; font-size: 0.8rem; color: var(--text-secondary, #c9d1d9); }
.mn-channels label.mn-muted[b-3mcwu5r82c] { color: var(--text-muted, #8b949e); }

.mn-actions[b-3mcwu5r82c] { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; }
.mn-confirm[b-3mcwu5r82c] { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-left: auto; font-size: 0.8rem; color: #ffb3ad; }

.mn-disclaimer[b-3mcwu5r82c] { font-size: 0.72rem; color: var(--text-muted, #8b949e); text-align: center; margin-top: 18px; }

/* ══ Phone / narrow ══ */
@media (max-width: 960px) {
    .mn-layout[b-3mcwu5r82c] { grid-template-columns: minmax(0, 1fr); }
    .mn-list[b-3mcwu5r82c] { position: static; }
}

@media (max-width: 720px) {
    .mn-container[b-3mcwu5r82c] { padding: 10px 12px 40px; }
    .mn-command[b-3mcwu5r82c] { position: static; flex-wrap: wrap; gap: 10px; padding: 10px 12px; }
    .mn-brand-sub[b-3mcwu5r82c] { display: none; }
    .mn-card[b-3mcwu5r82c] { padding: 12px 10px; }
    .mn-search[b-3mcwu5r82c] { max-width: none; width: 100%; flex-basis: 100%; }
    .mn-confirm[b-3mcwu5r82c], .mn-btn.push[b-3mcwu5r82c] { margin-left: 0; }
}

/* iOS zooms into a focused field under 16px (mobile.css covers <= 900px) */
@media (pointer: coarse) {
    .mn-search[b-3mcwu5r82c]  .symbol-search-input,
    .mn-field input[type="text"][b-3mcwu5r82c], .mn-cond select[b-3mcwu5r82c], .mn-cond input[b-3mcwu5r82c] { font-size: 16px; }
}
/* /Components/Pages/Pricing.razor.rz.scp.css */
/* ============================================
   Pricing.razor.css - Modern Premium Design
   A stunning, clean pricing page with WOW factor
   ============================================ */

/* Base Container */
.pricing-page[b-cdwh1xw5nq] {
    position: relative;
    max-width: 1200px;
    margin: 0 auto;
    padding: 3rem 2rem 4rem;
    overflow: hidden;
}

/* Animated Background */
.pricing-bg[b-cdwh1xw5nq] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: -1;
}

.gradient-orb[b-cdwh1xw5nq] {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.4;
    animation: float-b-cdwh1xw5nq 20s ease-in-out infinite;
}

.orb-1[b-cdwh1xw5nq] {
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(19, 223, 255, 0.3) 0%, transparent 70%);
    top: -200px;
    left: -100px;
    animation-delay: 0s;
}

.orb-2[b-cdwh1xw5nq] {
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(59, 130, 246, 0.25) 0%, transparent 70%);
    top: 50%;
    right: -150px;
    animation-delay: -7s;
}

.orb-3[b-cdwh1xw5nq] {
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(168, 85, 247, 0.2) 0%, transparent 70%);
    bottom: -100px;
    left: 30%;
    animation-delay: -14s;
}

@keyframes float-b-cdwh1xw5nq {
    0%, 100% { transform: translate(0, 0) scale(1); }
    25% { transform: translate(30px, -30px) scale(1.05); }
    50% { transform: translate(-20px, 20px) scale(0.95); }
    75% { transform: translate(20px, 10px) scale(1.02); }
}

/* Header Section */
.pricing-header[b-cdwh1xw5nq] {
    text-align: center;
    margin-bottom: 1rem;
}

.header-badge[b-cdwh1xw5nq] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.15) 0%, rgba(19, 223, 255, 0.05) 100%);
    border: 1px solid rgba(19, 223, 255, 0.3);
    border-radius: 100px;
    color: #13dfff;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 1.5rem;
}

.header-badge svg[b-cdwh1xw5nq] {
    color: #13dfff;
}

.pricing-header h1[b-cdwh1xw5nq] {
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin: 0 0 1rem 0;
    letter-spacing: -0.03em;
    line-height: 1.1;
}

.gradient-text[b-cdwh1xw5nq] {
    background: linear-gradient(135deg, #13dfff 0%, #3b82f6 50%, #a855f7 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.pricing-header p[b-cdwh1xw5nq] {
    font-size: 1.1rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
    max-width: 500px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Current Plan Indicator */
.current-plan-indicator[b-cdwh1xw5nq] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.5rem;
    background: rgba(19, 223, 255, 0.1);
    border: 1px solid rgba(19, 223, 255, 0.3);
    border-radius: 100px;
    color: #13dfff;
    font-size: 0.9rem;
    margin: 0 auto 2rem;
    display: flex;
    width: fit-content;
}

.current-plan-indicator .indicator-glow[b-cdwh1xw5nq] {
    position: absolute;
    inset: -1px;
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.5) 0%, transparent 50%);
    border-radius: inherit;
    opacity: 0;
    animation: pulse-glow-b-cdwh1xw5nq 2s ease-in-out infinite;
    z-index: -1;
}

@keyframes pulse-glow-b-cdwh1xw5nq {
    0%, 100% { opacity: 0; }
    50% { opacity: 0.5; }
}

.current-plan-indicator strong[b-cdwh1xw5nq] {
    color: #66e9ff;
    font-weight: 600;
}

/* Billing Toggle */
.billing-toggle[b-cdwh1xw5nq] {
    display: flex;
    justify-content: center;
    gap: 0.25rem;
    padding: 0.25rem;
    background: var(--bg-elevated, rgba(30, 41, 59, 0.5));
    border: 1px solid var(--border-subtle, rgba(148, 163, 184, 0.1));
    border-radius: 100px;
    margin: 0 auto 3rem;
    width: fit-content;
}

.toggle-btn[b-cdwh1xw5nq] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: transparent;
    border: none;
    border-radius: 100px;
    color: var(--text-muted, #94a3b8);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.toggle-btn:hover[b-cdwh1xw5nq] {
    color: var(--text-primary, #f8fafc);
}

.toggle-btn.active[b-cdwh1xw5nq] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.2) 0%, rgba(19, 223, 255, 0.1) 100%);
    color: #13dfff;
    box-shadow: 0 0 20px rgba(19, 223, 255, 0.15);
}

.save-badge[b-cdwh1xw5nq] {
    padding: 0.2rem 0.5rem;
    background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%);
    color: white;
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 100px;
}

/* Pricing Grid */
.pricing-grid[b-cdwh1xw5nq] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-bottom: 3rem;
    align-items: start;
}

/* Single paid plan + trial explainer */
.pricing-grid.two-up[b-cdwh1xw5nq] {
    grid-template-columns: 1.35fr 1fr;
    max-width: 920px;
    margin-left: auto;
    margin-right: auto;
}

.plan-features .feature-highlight[b-cdwh1xw5nq] {
    align-items: flex-start;
}

.plan-footnote[b-cdwh1xw5nq] {
    display: block;
    margin-top: 0.6rem;
    text-align: center;
    font-size: 0.8rem;
    color: #94a3b8;
}

.plan-action .btn-outline + .current-badge[b-cdwh1xw5nq],
.plan-action .current-badge + .btn-outline[b-cdwh1xw5nq] {
    margin-top: 0.75rem;
}

.info-banner[b-cdwh1xw5nq],
.welcome-banner[b-cdwh1xw5nq] {
    max-width: 700px;
    margin: 0 auto 2rem;
    padding: 1rem 1.5rem;
    border-radius: 12px;
    background: rgba(19, 223, 255, 0.08);
    border: 1px solid rgba(19, 223, 255, 0.3);
    color: #cbd5e1;
    text-align: center;
}

.welcome-banner[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    text-align: left;
}

.welcome-content[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.welcome-content svg[b-cdwh1xw5nq] {
    color: #13dfff;
    flex-shrink: 0;
}

.welcome-content h3[b-cdwh1xw5nq] {
    margin: 0 0 0.25rem;
    font-size: 1.05rem;
    color: #fff;
}

.welcome-content p[b-cdwh1xw5nq] {
    margin: 0;
    color: #9ca3af;
    font-size: 0.9rem;
}

.welcome-banner .btn-plan[b-cdwh1xw5nq] {
    width: auto;
    flex-shrink: 0;
}

.pricing-disclaimer[b-cdwh1xw5nq] {
    margin: 2rem auto 0;
    max-width: 700px;
    text-align: center;
    font-size: 0.75rem;
    color: #64748b;
}

/* Plan Cards */
.plan-card[b-cdwh1xw5nq] {
    position: relative;
    background: linear-gradient(180deg, 
        rgba(30, 41, 59, 0.8) 0%, 
        rgba(15, 23, 42, 0.9) 100%);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(148, 163, 184, 0.1);
    border-radius: 1.5rem;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
}

.plan-card[b-cdwh1xw5nq]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(255, 255, 255, 0.1) 50%, 
        transparent 100%);
}

.plan-card:hover[b-cdwh1xw5nq] {
    transform: translateY(-8px);
    border-color: rgba(148, 163, 184, 0.2);
    box-shadow: 
        0 25px 50px -12px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(255, 255, 255, 0.05);
}

.plan-card.current[b-cdwh1xw5nq] {
    border-color: rgba(19, 223, 255, 0.5);
    box-shadow: 0 0 40px rgba(19, 223, 255, 0.1);
}

/* Signal Plan Specific */
.plan-signal .plan-icon svg[b-cdwh1xw5nq] {
    color: #94a3b8;
}

/* Edge Plan - Featured */
.plan-card.featured[b-cdwh1xw5nq] {
    background: linear-gradient(180deg, 
        rgba(19, 223, 255, 0.1) 0%, 
        rgba(15, 23, 42, 0.95) 30%);
    border-color: rgba(19, 223, 255, 0.3);
    transform: scale(1.02);
    z-index: 1;
}

.plan-card.featured:hover[b-cdwh1xw5nq] {
    transform: scale(1.02) translateY(-8px);
    border-color: rgba(19, 223, 255, 0.5);
    box-shadow: 
        0 25px 50px -12px rgba(0, 0, 0, 0.4),
        0 0 60px rgba(19, 223, 255, 0.15);
}

.plan-edge .plan-icon svg[b-cdwh1xw5nq] {
    color: #13dfff;
}

/* Apex Plan */

.plan-apex .plan-icon svg[b-cdwh1xw5nq] {
    color: #a855f7;
}

/* Featured Badge */
.featured-badge[b-cdwh1xw5nq] {
    position: absolute;
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    padding: 0.5rem 1.5rem;
    background: linear-gradient(135deg, #13dfff 0%, #1a8cff 100%);
    color: #04121a;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    border-radius: 0 0 1rem 1rem;
    box-shadow: 0 4px 15px rgba(19, 223, 255, 0.4);
}

/* Plan Icon */
.plan-icon[b-cdwh1xw5nq] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 1rem;
    margin-bottom: 1.25rem;
}

/* Plan Name & Tagline */
.plan-name[b-cdwh1xw5nq] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin: 0 0 0.35rem 0;
    letter-spacing: -0.02em;
}

.plan-tagline[b-cdwh1xw5nq] {
    font-size: 0.9rem;
    color: var(--text-muted, #94a3b8);
    margin: 0 0 1.5rem 0;
}

/* Plan Pricing */
.plan-pricing[b-cdwh1xw5nq] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.25rem;
    margin-bottom: 1.5rem;
}

.price-amount[b-cdwh1xw5nq] {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--text-primary, #f8fafc);
    letter-spacing: -0.03em;
    line-height: 1;
}

.price-period[b-cdwh1xw5nq] {
    font-size: 1rem;
    color: var(--text-muted, #94a3b8);
}

.price-note[b-cdwh1xw5nq] {
    flex-basis: 100%;
    font-size: 0.75rem;
    color: var(--text-40, #64748b);
    margin-top: 0.25rem;
}

/* Plan Highlight (Trial) */
.plan-highlight[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.15) 0%, rgba(245, 158, 11, 0.05) 100%);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: 0.75rem;
    color: #fbbf24;
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
}

.plan-highlight svg[b-cdwh1xw5nq] {
    flex-shrink: 0;
    color: #fbbf24;
}

/* Plan Features */
.plan-features[b-cdwh1xw5nq] {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.plan-features li[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.9rem;
    color: var(--text-secondary, #cbd5e1);
    padding: 0.25rem 0;
}

.plan-features .section-label[b-cdwh1xw5nq] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--text-muted, #64748b);
    padding-top: 0.5rem;
    padding-bottom: 0.25rem;
    margin-top: 0.25rem;
    border-top: 1px dashed rgba(148, 163, 184, 0.15);
}

.plan-features .section-label:first-child[b-cdwh1xw5nq] {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
}

.plan-features .section-label.highlight[b-cdwh1xw5nq] {
    color: #13dfff;
    border-top-color: rgba(19, 223, 255, 0.2);
}

.feature-check[b-cdwh1xw5nq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    font-size: 0.7rem;
    font-weight: 700;
    border-radius: 50%;
    flex-shrink: 0;
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
}

.feature-check.accent[b-cdwh1xw5nq] {
    background: rgba(34, 197, 94, 0.2);
    color: #4ade80;
    box-shadow: 0 0 10px rgba(34, 197, 94, 0.2);
}

.feature-check.gold[b-cdwh1xw5nq] {
    background: rgba(168, 85, 247, 0.2);
    color: #c084fc;
    box-shadow: 0 0 10px rgba(168, 85, 247, 0.2);
}

.plan-features .feature-disabled[b-cdwh1xw5nq] {
    color: var(--text-40, #475569);
}

/* Plan Action */
.plan-action[b-cdwh1xw5nq] {
    margin-top: auto;
}

.btn-plan[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0.875rem 1.5rem;
    border-radius: 0.75rem;
    font-size: 0.9rem;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    border: none;
}

.btn-outline[b-cdwh1xw5nq] {
    background: transparent;
    border: 1px solid rgba(148, 163, 184, 0.3);
    color: var(--text-secondary, #cbd5e1);
}

.btn-outline:hover[b-cdwh1xw5nq] {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(148, 163, 184, 0.5);
    color: var(--text-primary, #f8fafc);
}

.btn-primary[b-cdwh1xw5nq] {
    background: linear-gradient(135deg, #13dfff 0%, #1a8cff 100%);
    color: #04121a;
    box-shadow: 0 4px 15px rgba(19, 223, 255, 0.3);
}

.btn-primary:hover[b-cdwh1xw5nq] {
    background: linear-gradient(135deg, #66e9ff 0%, #13dfff 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(19, 223, 255, 0.4);
}

.btn-lg[b-cdwh1xw5nq] {
    padding: 1rem 2rem;
    font-size: 1rem;
}

.current-badge[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.75rem;
    background: rgba(19, 223, 255, 0.1);
    border: 1px solid rgba(19, 223, 255, 0.3);
    border-radius: 0.75rem;
    color: #13dfff;
    font-size: 0.85rem;
    font-weight: 500;
}

/* Spinner */
.spinner[b-cdwh1xw5nq] {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-cdwh1xw5nq 0.8s linear infinite;
}

@keyframes spin-b-cdwh1xw5nq {
    to { transform: rotate(360deg); }
}

/* Error Toast */
.error-toast[b-cdwh1xw5nq] {
    position: fixed;
    bottom: 2rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.5rem;
    background: rgba(239, 68, 68, 0.15);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(239, 68, 68, 0.4);
    border-radius: 0.75rem;
    color: #fca5a5;
    font-size: 0.9rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    z-index: 100;
    animation: slideUp-b-cdwh1xw5nq 0.3s ease;
}

.error-toast svg[b-cdwh1xw5nq] {
    flex-shrink: 0;
    color: #f87171;
}

.toast-close[b-cdwh1xw5nq] {
    background: none;
    border: none;
    color: #f87171;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    margin-left: 0.5rem;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.toast-close:hover[b-cdwh1xw5nq] {
    opacity: 1;
}

@keyframes slideUp-b-cdwh1xw5nq {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

/* Trust Section */
.trust-section[b-cdwh1xw5nq] {
    display: flex;
    justify-content: center;
    gap: 3rem;
    padding: 2rem 0;
    margin-bottom: 4rem;
}

.trust-item[b-cdwh1xw5nq] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.trust-icon[b-cdwh1xw5nq] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0.75rem;
    color: #94a3b8;
}

.trust-text[b-cdwh1xw5nq] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.trust-text strong[b-cdwh1xw5nq] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-primary, #f8fafc);
}

.trust-text span[b-cdwh1xw5nq] {
    font-size: 0.8rem;
    color: var(--text-muted, #64748b);
}

/* Comparison Section */
.comparison-section[b-cdwh1xw5nq] {
    margin-bottom: 4rem;
}

.comparison-section h2[b-cdwh1xw5nq] {
    text-align: center;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin-bottom: 2rem;
    letter-spacing: -0.02em;
}

.comparison-table-wrapper[b-cdwh1xw5nq] {
    overflow-x: auto;
    border-radius: 1rem;
    background: rgba(30, 41, 59, 0.5);
    border: 1px solid rgba(148, 163, 184, 0.1);
}

.comparison-table[b-cdwh1xw5nq] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.comparison-table th[b-cdwh1xw5nq],
.comparison-table td[b-cdwh1xw5nq] {
    padding: 1rem 1.25rem;
    text-align: center;
    border-bottom: 1px solid rgba(148, 163, 184, 0.08);
}

.comparison-table th[b-cdwh1xw5nq] {
    font-weight: 600;
    color: var(--text-primary, #f8fafc);
    background: rgba(15, 23, 42, 0.6);
    position: sticky;
    top: 0;
}

.comparison-table th:first-child[b-cdwh1xw5nq],
.comparison-table td:first-child[b-cdwh1xw5nq] {
    text-align: left;
    font-weight: 500;
}

.comparison-table td[b-cdwh1xw5nq] {
    color: var(--text-secondary, #94a3b8);
}

.comparison-table td.highlight[b-cdwh1xw5nq] {
    color: var(--text-primary, #f8fafc);
    font-weight: 500;
}

.comparison-table tr.category td[b-cdwh1xw5nq] {
    background: rgba(15, 23, 42, 0.4);
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #64748b;
    padding: 0.75rem 1.25rem;
}

.comparison-table .col-signal[b-cdwh1xw5nq] {
    background: rgba(148, 163, 184, 0.03);
}

.comparison-table .col-edge[b-cdwh1xw5nq] {
    background: rgba(19, 223, 255, 0.05);
    color: #13dfff;
}

.comparison-table .col-apex[b-cdwh1xw5nq] {
    background: rgba(168, 85, 247, 0.05);
    color: #a855f7;
}

.comparison-table .check[b-cdwh1xw5nq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: rgba(34, 197, 94, 0.15);
    color: #22c55e;
    border-radius: 50%;
    font-size: 0.7rem;
    font-weight: 700;
}

.comparison-table .x[b-cdwh1xw5nq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    background: rgba(100, 116, 139, 0.1);
    color: #475569;
    border-radius: 50%;
    font-size: 0.65rem;
}

/* FAQ Section */
.faq-section[b-cdwh1xw5nq] {
    margin-bottom: 4rem;
}

.faq-section h2[b-cdwh1xw5nq] {
    text-align: center;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin-bottom: 2rem;
    letter-spacing: -0.02em;
}

.faq-grid[b-cdwh1xw5nq] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

.faq-item[b-cdwh1xw5nq] {
    padding: 1.5rem;
    background: rgba(30, 41, 59, 0.4);
    border: 1px solid rgba(148, 163, 184, 0.08);
    border-radius: 1rem;
    transition: all 0.3s ease;
}

.faq-item:hover[b-cdwh1xw5nq] {
    background: rgba(30, 41, 59, 0.6);
    border-color: rgba(148, 163, 184, 0.15);
}

.faq-item h4[b-cdwh1xw5nq] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary, #f8fafc);
    margin: 0 0 0.75rem 0;
}

.faq-item p[b-cdwh1xw5nq] {
    font-size: 0.9rem;
    color: var(--text-muted, #94a3b8);
    margin: 0;
    line-height: 1.6;
}

/* Final CTA */
.final-cta[b-cdwh1xw5nq] {
    text-align: center;
    padding: 3rem 2rem;
    background: linear-gradient(135deg, 
        rgba(19, 223, 255, 0.1) 0%, 
        rgba(59, 130, 246, 0.05) 50%,
        rgba(168, 85, 247, 0.1) 100%);
    border-radius: 1.5rem;
    border: 1px solid rgba(148, 163, 184, 0.1);
}

.final-cta h3[b-cdwh1xw5nq] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary, #f8fafc);
    margin: 0 0 0.5rem 0;
}

.final-cta p[b-cdwh1xw5nq] {
    font-size: 1rem;
    color: var(--text-muted, #94a3b8);
    margin: 0 0 1.5rem 0;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .pricing-grid[b-cdwh1xw5nq],
    .pricing-grid.two-up[b-cdwh1xw5nq] {
        grid-template-columns: 1fr;
        max-width: 440px;
        margin-left: auto;
        margin-right: auto;
    }
    
    .plan-card.featured[b-cdwh1xw5nq] {
        transform: none;
        order: -1;
    }
    
    .plan-card.featured:hover[b-cdwh1xw5nq] {
        transform: translateY(-8px);
    }
    
    .trust-section[b-cdwh1xw5nq] {
        flex-direction: column;
        align-items: center;
        gap: 1.5rem;
    }
    
    .faq-grid[b-cdwh1xw5nq] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .pricing-page[b-cdwh1xw5nq] {
        padding: 2rem 1rem 3rem;
    }
    
    .pricing-header h1[b-cdwh1xw5nq] {
        font-size: 1.75rem;
    }

    .welcome-banner[b-cdwh1xw5nq] {
        flex-direction: column;
        align-items: stretch;
    }

    .welcome-banner .btn-plan[b-cdwh1xw5nq] {
        width: 100%;
    }
    
    .billing-toggle[b-cdwh1xw5nq] {
        flex-direction: column;
        width: 100%;
        max-width: 280px;
    }
    
    .toggle-btn[b-cdwh1xw5nq] {
        width: 100%;
        justify-content: center;
    }
    
    .plan-card[b-cdwh1xw5nq] {
        padding: 1.5rem;
    }
    
    .price-amount[b-cdwh1xw5nq] {
        font-size: 2rem;
    }
    
    .comparison-table th[b-cdwh1xw5nq],
    .comparison-table td[b-cdwh1xw5nq] {
        padding: 0.75rem 0.5rem;
        font-size: 0.75rem;
    }
    
    .trust-item[b-cdwh1xw5nq] {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }
    
    .trust-text[b-cdwh1xw5nq] {
        align-items: center;
    }
}

/* Light Theme Support */
:global([data-theme="light"]) .pricing-page[b-cdwh1xw5nq] {
    color: #1e293b;
}

:global([data-theme="light"]) .plan-card[b-cdwh1xw5nq] {
    background: linear-gradient(180deg,
        rgba(255, 255, 255, 0.9) 0%,
        rgba(248, 250, 252, 0.95) 100%);
    border-color: rgba(148, 163, 184, 0.2);
}

:global([data-theme="light"]) .plan-card:hover[b-cdwh1xw5nq] {
    border-color: rgba(148, 163, 184, 0.4);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
}

:global([data-theme="light"]) .plan-card.featured[b-cdwh1xw5nq] {
    background: linear-gradient(180deg,
        rgba(19, 223, 255, 0.08) 0%,
        rgba(255, 255, 255, 0.95) 30%);
}

:global([data-theme="light"]) .plan-name[b-cdwh1xw5nq],
:global([data-theme="light"]) .price-amount[b-cdwh1xw5nq],
:global([data-theme="light"]) .pricing-header h1[b-cdwh1xw5nq] {
    color: #0f172a;
}

:global([data-theme="light"]) .plan-tagline[b-cdwh1xw5nq],
:global([data-theme="light"]) .pricing-header p[b-cdwh1xw5nq],
:global([data-theme="light"]) .price-period[b-cdwh1xw5nq] {
    color: #64748b;
}

:global([data-theme="light"]) .comparison-table-wrapper[b-cdwh1xw5nq] {
    background: rgba(255, 255, 255, 0.8);
}

:global([data-theme="light"]) .comparison-table th[b-cdwh1xw5nq] {
    background: rgba(248, 250, 252, 0.95);
}

:global([data-theme="light"]) .faq-item[b-cdwh1xw5nq] {
    background: rgba(248, 250, 252, 0.8);
}

:global([data-theme="light"]) .gradient-orb[b-cdwh1xw5nq] {
    opacity: 0.2;
}
/* /Components/Pages/Subscribers.razor.rz.scp.css */
/* Subscribers Admin Page Styles */

.subscribers-container[b-8328u4elvr] {
    padding: 1.5rem;
    max-width: 1600px;
    margin: 0 auto;
}

/* Header */
.subscribers-header[b-8328u4elvr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
}

.header-content[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.page-title[b-8328u4elvr] {
    font-size: 1.75rem;
    font-weight: 600;
    color: #f1f5f9;
    margin: 0;
}

.page-subtitle[b-8328u4elvr] {
    color: #94a3b8;
    font-size: 0.875rem;
    margin: 0;
}

.btn-refresh[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(59, 130, 246, 0.1);
    border: 1px solid rgba(59, 130, 246, 0.3);
    color: #60a5fa;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-refresh:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(59, 130, 246, 0.2);
    border-color: rgba(59, 130, 246, 0.5);
}

.btn-refresh:disabled[b-8328u4elvr] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Stats Overview - Revenue Cards */
.stats-overview[b-8328u4elvr] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

.stat-card[b-8328u4elvr] {
    background: rgba(30, 41, 59, 0.5);
    border: 1px solid rgba(71, 85, 105, 0.3);
    border-radius: 0.75rem;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.stat-card.revenue-total[b-8328u4elvr] {
    border-color: rgba(34, 197, 94, 0.4);
    background: rgba(34, 197, 94, 0.05);
}

.stat-card.revenue-platform[b-8328u4elvr] {
    border-color: rgba(59, 130, 246, 0.4);
    background: rgba(59, 130, 246, 0.05);
}

.stat-card.revenue-agent[b-8328u4elvr] {
    border-color: rgba(139, 92, 246, 0.4);
    background: rgba(139, 92, 246, 0.05);
}

.stat-card.revenue-marketplace[b-8328u4elvr] {
    border-color: rgba(16, 185, 129, 0.4);
    background: rgba(16, 185, 129, 0.05);
}

.stat-card.total[b-8328u4elvr] {
    border-color: rgba(59, 130, 246, 0.3);
}

.stat-card.active[b-8328u4elvr] {
    border-color: rgba(34, 197, 94, 0.3);
}

.stat-card.agents[b-8328u4elvr] {
    border-color: rgba(139, 92, 246, 0.3);
}

.stat-card.marketplace[b-8328u4elvr] {
    border-color: rgba(16, 185, 129, 0.3);
}

.stat-card.inactive[b-8328u4elvr] {
    border-color: rgba(239, 68, 68, 0.3);
}

.stat-icon[b-8328u4elvr] {
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 0.5rem;
}

.stat-icon.revenue[b-8328u4elvr] {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: white;
}

.stat-icon.platform[b-8328u4elvr] {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    color: white;
}

.stat-icon.agent[b-8328u4elvr] {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
    color: white;
}

.stat-icon.marketplace[b-8328u4elvr] {
    background: linear-gradient(135deg, #10b981, #059669);
    color: white;
}

.stat-icon i[b-8328u4elvr] {
    font-size: 1.25rem;
}

.stat-content[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-8328u4elvr] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #f1f5f9;
}

.stat-label[b-8328u4elvr] {
    font-size: 0.75rem;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Secondary Stats Row */
.stats-secondary[b-8328u4elvr] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.stats-secondary .stat-card[b-8328u4elvr] {
    padding: 1rem;
}

.stats-secondary .stat-icon[b-8328u4elvr] {
    font-size: 1.5rem;
    width: auto;
    height: auto;
    background: none;
}

.stats-secondary .stat-value[b-8328u4elvr] {
    font-size: 1.25rem;
}

.stats-secondary .stat-label[b-8328u4elvr] {
    font-size: 0.65rem;
}

/* Filter Section */
.filter-section[b-8328u4elvr] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    margin-bottom: 1rem;
    padding: 1rem;
    background: rgba(30, 41, 59, 0.3);
    border-radius: 0.75rem;
}

.filter-boxes[b-8328u4elvr] {
    display: flex;
    gap: 0.5rem;
}

.filter-box[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.75rem 1.25rem;
    background: rgba(30, 41, 59, 0.5);
    border: 1px solid rgba(71, 85, 105, 0.3);
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.2s;
    min-width: 80px;
}

.filter-box:hover[b-8328u4elvr] {
    border-color: rgba(71, 85, 105, 0.6);
    background: rgba(30, 41, 59, 0.7);
}

.filter-box.active[b-8328u4elvr] {
    border-color: rgba(59, 130, 246, 0.5);
    background: rgba(59, 130, 246, 0.1);
}

.filter-box.admin.active[b-8328u4elvr] {
    border-color: rgba(168, 85, 247, 0.5);
    background: rgba(168, 85, 247, 0.1);
}

.filter-box.free.active[b-8328u4elvr] {
    border-color: rgba(148, 163, 184, 0.5);
    background: rgba(148, 163, 184, 0.1);
}

.filter-box.tradeiq.active[b-8328u4elvr] {
    border-color: rgba(59, 130, 246, 0.5);
    background: rgba(59, 130, 246, 0.1);
}

.filter-box.signals.active[b-8328u4elvr] {
    border-color: rgba(34, 197, 94, 0.5);
    background: rgba(34, 197, 94, 0.1);
}

.filter-count[b-8328u4elvr] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #f1f5f9;
}

.filter-label[b-8328u4elvr] {
    font-size: 0.7rem;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.filter-toggles[b-8328u4elvr] {
    display: flex;
    gap: 1rem;
    margin-left: auto;
}

.toggle-label[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #94a3b8;
    font-size: 0.875rem;
    cursor: pointer;
}

.toggle-label input[type="checkbox"][b-8328u4elvr] {
    width: 1rem;
    height: 1rem;
    accent-color: #3b82f6;
}

.search-box[b-8328u4elvr] {
    width: 250px;
}

.search-box input[b-8328u4elvr] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: rgba(15, 23, 42, 0.5);
    border: 1px solid rgba(71, 85, 105, 0.3);
    border-radius: 0.5rem;
    color: #f1f5f9;
    font-size: 0.875rem;
}

.search-box input[b-8328u4elvr]::placeholder {
    color: #64748b;
}

.search-box input:focus[b-8328u4elvr] {
    outline: none;
    border-color: rgba(59, 130, 246, 0.5);
}

/* User Type Filters */
.user-type-filters[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 0.75rem 1rem;
    background: rgba(30, 41, 59, 0.6);
    border-radius: 8px;
}

.user-type-filters .filter-label[b-8328u4elvr] {
    color: #94a3b8;
    font-size: 0.875rem;
    font-weight: 500;
    text-transform: none;
    letter-spacing: normal;
}

.filter-switch-group[b-8328u4elvr] {
    display: flex;
    gap: 0.5rem;
}

.filter-switch[b-8328u4elvr] {
    padding: 0.5rem 1rem;
    background: rgba(51, 65, 85, 0.6);
    border: 1px solid rgba(71, 85, 105, 0.5);
    border-radius: 6px;
    color: #94a3b8;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.filter-switch:hover[b-8328u4elvr] {
    background: rgba(71, 85, 105, 0.6);
    color: #e2e8f0;
}

.filter-switch.active[b-8328u4elvr] {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    border-color: #3b82f6;
    color: white;
}

.filter-switch i[b-8328u4elvr] {
    font-size: 0.75rem;
}

/* Table Container */
.table-container[b-8328u4elvr] {
    background: rgba(30, 41, 59, 0.3);
    border: 1px solid rgba(71, 85, 105, 0.3);
    border-radius: 0.75rem;
    overflow: hidden;
}

.loading-overlay[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    gap: 1rem;
    color: #94a3b8;
}

.empty-state[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    gap: 0.5rem;
}

.empty-icon[b-8328u4elvr] {
    font-size: 3rem;
}

.empty-text[b-8328u4elvr] {
    color: #94a3b8;
}

/* Table Styles */
.subscribers-table[b-8328u4elvr] {
    width: 100%;
    border-collapse: collapse;
}

.subscribers-table thead[b-8328u4elvr] {
    background: rgba(15, 23, 42, 0.5);
}

.subscribers-table th[b-8328u4elvr] {
    padding: 1rem;
    text-align: left;
    font-size: 0.75rem;
    font-weight: 600;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid rgba(71, 85, 105, 0.3);
}

.subscribers-table th.sortable[b-8328u4elvr] {
    cursor: pointer;
    user-select: none;
}

.subscribers-table th.sortable:hover[b-8328u4elvr] {
    color: #f1f5f9;
}

.subscribers-table td[b-8328u4elvr] {
    padding: 1rem;
    border-bottom: 1px solid rgba(71, 85, 105, 0.2);
    color: #e2e8f0;
    font-size: 0.875rem;
}

.subscribers-table tr:hover[b-8328u4elvr] {
    background: rgba(59, 130, 246, 0.05);
}

.subscribers-table tr.admin-row[b-8328u4elvr] {
    background: rgba(168, 85, 247, 0.05);
}

.subscribers-table tr.admin-row:hover[b-8328u4elvr] {
    background: rgba(168, 85, 247, 0.1);
}

.subscribers-table tr.agent-row[b-8328u4elvr] {
    background: rgba(139, 92, 246, 0.05);
}

.subscribers-table tr.agent-row:hover[b-8328u4elvr] {
    background: rgba(139, 92, 246, 0.1);
}

/* Cell Styles */
.username-cell[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.username[b-8328u4elvr] {
    font-weight: 500;
}

.admin-badge[b-8328u4elvr] {
    font-size: 0.65rem;
    padding: 0.15rem 0.4rem;
    background: rgba(168, 85, 247, 0.2);
    color: #a855f7;
    border-radius: 0.25rem;
    font-weight: 600;
    text-transform: uppercase;
}

.email-cell[b-8328u4elvr] {
    color: #94a3b8;
}

.duration-cell[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.joined-date[b-8328u4elvr] {
    font-size: 0.7rem;
    color: #64748b;
}

/* Plan Badges */
.user-plan-badge[b-8328u4elvr] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.user-plan-badge.free[b-8328u4elvr] {
    background: rgba(148, 163, 184, 0.15);
    color: #94a3b8;
}

.user-plan-badge.pro[b-8328u4elvr] {
    background: rgba(19, 223, 255, 0.15);
    color: #72deee;
}

.user-plan-badge.trial[b-8328u4elvr] {
    background: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
}

.user-plan-badge.admin[b-8328u4elvr] {
    background: rgba(168, 85, 247, 0.15);
    color: #c084fc;
}

/* Plan cell: badge plus the Free <-> Pro switch */
.plan-cell[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.btn-plan-switch[b-8328u4elvr] {
    padding: 0.2rem 0.6rem;
    border-radius: 0.375rem;
    border: 1px solid transparent;
    background: transparent;
    font-size: 0.7rem;
    font-weight: 600;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-plan-switch.to-pro[b-8328u4elvr] {
    color: #72deee;
    border-color: rgba(19, 223, 255, 0.35);
}

.btn-plan-switch.to-pro:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(19, 223, 255, 0.12);
}

.btn-plan-switch.to-free[b-8328u4elvr] {
    color: #94a3b8;
    border-color: rgba(148, 163, 184, 0.35);
}

.btn-plan-switch.to-free:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(148, 163, 184, 0.12);
}

.btn-plan-switch:disabled[b-8328u4elvr] {
    opacity: 0.5;
    cursor: not-allowed;
}

.admin-badge.super[b-8328u4elvr] {
    background: rgba(251, 191, 36, 0.2);
    color: #fbbf24;
}

.you-badge[b-8328u4elvr] {
    margin-left: 0.25rem;
    padding: 0.15rem 0.4rem;
    border-radius: 0.25rem;
    background: rgba(56, 189, 248, 0.15);
    color: #38bdf8;
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
}

.user-plan-badge.tradeiq[b-8328u4elvr] {
    background: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
}

.user-plan-badge.signals[b-8328u4elvr] {
    background: rgba(34, 197, 94, 0.15);
    color: #4ade80;
}

/* User Type Badges */

.user-type-badge.admin[b-8328u4elvr] {
    background: linear-gradient(135deg, #fbbf24, #f59e0b);
    color: #1c1917;
}

.user-type-badge.agent[b-8328u4elvr] {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
    color: white;
}

.user-type-badge.user[b-8328u4elvr] {
    background: rgba(71, 85, 105, 0.6);
    color: #94a3b8;
}

/* Sub Type Badges */
.sub-type-badge[b-8328u4elvr] {
    display: inline-flex;
    padding: 0.25rem 0.6rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

.sub-type-badge.platform[b-8328u4elvr] {
    background: linear-gradient(135deg, #3b82f6, #2563eb);
    color: white;
}

.sub-type-badge.agent-sub[b-8328u4elvr] {
    background: linear-gradient(135deg, #8b5cf6, #7c3aed);
    color: white;
}

.sub-type-badge.both[b-8328u4elvr] {
    background: linear-gradient(135deg, #10b981, #059669);
    color: white;
}

.sub-type-badge.none[b-8328u4elvr] {
    background: rgba(71, 85, 105, 0.4);
    color: #64748b;
}

.sub-type-badge.stripe[b-8328u4elvr] {
    background: linear-gradient(135deg, #635bff, #4f46e5);
    color: white;
}

.sub-type-badge.comp[b-8328u4elvr] {
    background: rgba(19, 223, 255, 0.15);
    color: #72deee;
}

.sub-type-badge.past[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

/* Status Badges */
.status-badges[b-8328u4elvr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.status-badge[b-8328u4elvr] {
    padding: 0.15rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
}

.status-badge.active[b-8328u4elvr] {
    background: rgba(34, 197, 94, 0.15);
    color: #4ade80;
}

.status-badge.inactive[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

.status-badge.payment-active[b-8328u4elvr] {
    background: rgba(59, 130, 246, 0.15);
    color: #60a5fa;
}

.status-badge.cancelled[b-8328u4elvr] {
    background: rgba(251, 191, 36, 0.15);
    color: #fbbf24;
}

.status-badge.past-due[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.15);
    color: #f87171;
}

.status-badge.marketplace-active[b-8328u4elvr] {
    background: rgba(16, 185, 129, 0.15);
    color: #10b981;
}

/* Actions */
.actions-cell[b-8328u4elvr] {
    display: flex;
    gap: 0.5rem;
}

.btn-action[b-8328u4elvr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 0.375rem;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.2s;
    background: transparent;
}

.btn-action.cancel[b-8328u4elvr] {
    color: #fbbf24;
    background: rgba(251, 191, 36, 0.1);
    border-color: rgba(251, 191, 36, 0.3);
}

.btn-action.cancel:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(251, 191, 36, 0.2);
    border-color: rgba(251, 191, 36, 0.5);
}

.btn-action.delete[b-8328u4elvr] {
    color: #f87171;
    background: rgba(239, 68, 68, 0.1);
    border-color: rgba(239, 68, 68, 0.3);
}

.btn-action.delete:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.2);
    border-color: rgba(239, 68, 68, 0.5);
}

.btn-action:disabled[b-8328u4elvr] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Pagination */
.pagination[b-8328u4elvr] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1rem;
}

.btn-page[b-8328u4elvr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 0.5rem;
    background: rgba(30, 41, 59, 0.5);
    border: 1px solid rgba(71, 85, 105, 0.3);
    color: #94a3b8;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-page:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(59, 130, 246, 0.1);
    border-color: rgba(59, 130, 246, 0.3);
    color: #60a5fa;
}

.btn-page:disabled[b-8328u4elvr] {
    opacity: 0.3;
    cursor: not-allowed;
}

.page-info[b-8328u4elvr] {
    padding: 0 1rem;
    color: #94a3b8;
    font-size: 0.875rem;
}

/* Modal */
.modal-overlay[b-8328u4elvr] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
}

.modal-content[b-8328u4elvr] {
    background: #1e293b;
    border: 1px solid rgba(71, 85, 105, 0.3);
    border-radius: 0.75rem;
    width: 100%;
    max-width: 400px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}

.modal-header[b-8328u4elvr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(71, 85, 105, 0.3);
}

.modal-header h3[b-8328u4elvr] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: #f1f5f9;
}

.modal-close[b-8328u4elvr] {
    background: transparent;
    border: none;
    color: #94a3b8;
    cursor: pointer;
    font-size: 1.25rem;
    padding: 0.25rem;
    line-height: 1;
}

.modal-close:hover[b-8328u4elvr] {
    color: #f1f5f9;
}

.modal-body[b-8328u4elvr] {
    padding: 1.25rem;
}

.modal-body p[b-8328u4elvr] {
    margin: 0 0 1rem;
    color: #94a3b8;
    font-size: 0.875rem;
    line-height: 1.5;
}

.user-preview[b-8328u4elvr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.75rem;
    background: rgba(15, 23, 42, 0.5);
    border-radius: 0.5rem;
}

.user-preview strong[b-8328u4elvr] {
    color: #f1f5f9;
}

.user-preview span[b-8328u4elvr] {
    color: #94a3b8;
    font-size: 0.875rem;
}

.modal-footer[b-8328u4elvr] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid rgba(71, 85, 105, 0.3);
}

.btn-secondary[b-8328u4elvr] {
    padding: 0.5rem 1rem;
    background: rgba(71, 85, 105, 0.3);
    border: 1px solid rgba(71, 85, 105, 0.3);
    color: #94a3b8;
    border-radius: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s;
}

.btn-secondary:hover[b-8328u4elvr] {
    background: rgba(71, 85, 105, 0.5);
    color: #f1f5f9;
}

.btn-danger[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(239, 68, 68, 0.2);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #f87171;
    border-radius: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s;
}

.btn-danger:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.3);
    border-color: rgba(239, 68, 68, 0.5);
}

/* Non-destructive confirm (e.g. "Make Pro") */
.btn-confirm[b-8328u4elvr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(19, 223, 255, 0.18);
    border: 1px solid rgba(19, 223, 255, 0.35);
    color: #72deee;
    border-radius: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
    transition: all 0.2s;
}

.btn-confirm:hover:not(:disabled)[b-8328u4elvr] {
    background: rgba(19, 223, 255, 0.28);
}

.btn-confirm:disabled[b-8328u4elvr] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-danger:disabled[b-8328u4elvr] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Toast */
.toast[b-8328u4elvr] {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    padding: 1rem 1.5rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    z-index: 1100;
    animation: slideIn-b-8328u4elvr 0.3s ease;
}

.toast.success[b-8328u4elvr] {
    background: rgba(34, 197, 94, 0.9);
    color: white;
}

.toast.error[b-8328u4elvr] {
    background: rgba(239, 68, 68, 0.9);
    color: white;
}

@keyframes slideIn-b-8328u4elvr {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Spinners */
.spinner[b-8328u4elvr] {
    width: 2rem;
    height: 2rem;
    border: 2px solid rgba(59, 130, 246, 0.3);
    border-top-color: #3b82f6;
    border-radius: 50%;
    animation: spin-b-8328u4elvr 0.8s linear infinite;
}

.spinner-sm[b-8328u4elvr] {
    width: 1rem;
    height: 1rem;
    border: 2px solid rgba(59, 130, 246, 0.3);
    border-top-color: #3b82f6;
    border-radius: 50%;
    animation: spin-b-8328u4elvr 0.8s linear infinite;
}

.spinner-xs[b-8328u4elvr] {
    width: 0.75rem;
    height: 0.75rem;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-8328u4elvr 0.8s linear infinite;
}

@keyframes spin-b-8328u4elvr {
    to {
        transform: rotate(360deg);
    }
}

/* Responsive */
@media (max-width: 1400px) {
    .stats-overview[b-8328u4elvr] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .stats-secondary[b-8328u4elvr] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1200px) {
    .stats-overview[b-8328u4elvr] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .stats-secondary[b-8328u4elvr] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .user-type-filters[b-8328u4elvr] {
        flex-wrap: wrap;
    }
    
    .filter-switch-group[b-8328u4elvr] {
        flex-wrap: wrap;
    }
}

@media (max-width: 768px) {
    .subscribers-header[b-8328u4elvr] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .stats-overview[b-8328u4elvr] {
        grid-template-columns: 1fr;
    }
    
    .stats-secondary[b-8328u4elvr] {
        grid-template-columns: 1fr;
    }
    
    .filter-section[b-8328u4elvr] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filter-boxes[b-8328u4elvr] {
        flex-wrap: wrap;
    }
    
    .filter-toggles[b-8328u4elvr] {
        margin-left: 0;
    }
    
    .search-box[b-8328u4elvr] {
        width: 100%;
    }
    
    .user-type-filters[b-8328u4elvr] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .filter-switch-group[b-8328u4elvr] {
        width: 100%;
    }
    
    .filter-switch[b-8328u4elvr] {
        flex: 1;
        justify-content: center;
    }
    
    .subscribers-table[b-8328u4elvr] {
        display: block;
        overflow-x: auto;
    }
}
/* /Components/Pages/SubscriptionSuccess.razor.rz.scp.css */
/* Moved from the inline <style> block in SubscriptionSuccess.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.success-wrapper)[b-8lflyc5glt] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #0a0f1a 0%, #0d1421 100%);
    padding: 2rem 1rem;
}

:where(.success-container)[b-8lflyc5glt] {
    background: linear-gradient(135deg, #131c2e 0%, #0d1421 100%);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 20px;
    padding: 3rem 2rem;
    text-align: center;
    max-width: 480px;
    width: 100%;
    box-shadow: 0 8px 32px rgba(0,0,0,0.3);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

:where(.success-container)[b-8lflyc5glt]  .note {
    font-size: 0.875rem;
    color: #6b7280;
}

:where(.success-icon)[b-8lflyc5glt] {
    background: rgba(16, 235, 107, 0.1);
    border-radius: 50%;
    padding: 1rem;
}

:where(.success-icon)[b-8lflyc5glt]  svg {
    display: block;
}
/* /Components/Pages/SupportCenter.razor.rz.scp.css */
.support-page[b-xpegc5633t] { max-width: 860px; margin: 0 auto; padding: 24px 20px 48px; color: #e6e6e6; font-size: 14px; }

.support-header[b-xpegc5633t] { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 20px; }
.support-header h1[b-xpegc5633t], .ticket-head h1[b-xpegc5633t] { margin: 0 0 6px; font-size: 24px; color: #fff; }
.subtitle[b-xpegc5633t] { margin: 0; color: #94a3b8; line-height: 1.5; max-width: 600px; }

.back-link[b-xpegc5633t] { display: inline-block; color: #94a3b8; text-decoration: none; margin-bottom: 14px; font-size: 13px; }
.back-link:hover[b-xpegc5633t] { color: #13dfff; }

.btn[b-xpegc5633t] {
    display: inline-flex; align-items: center; justify-content: center;
    background: #161b22; color: #d6dbe1; border: 1px solid #2b313a; border-radius: 8px;
    padding: 9px 16px; font-weight: 600; font-size: 14px; cursor: pointer; text-decoration: none; white-space: nowrap;
}
.btn:hover[b-xpegc5633t] { border-color: #3a424d; color: #fff; }
.btn.primary[b-xpegc5633t] { background: #13dfff; color: #06080c; border-color: #13dfff; }
.btn.primary:hover[b-xpegc5633t] { background: #00c4e2; border-color: #00c4e2; color: #06080c; }
.btn.ghost[b-xpegc5633t] { background: transparent; }
.btn:disabled[b-xpegc5633t] { opacity: .5; cursor: default; }

.notice[b-xpegc5633t] { border: 1px solid #2b313a; border-radius: 8px; padding: 12px 16px; margin-bottom: 14px; background: #161b22; }
.notice.error[b-xpegc5633t] { border-color: rgba(255, 87, 87, 0.45); color: #ffa3a3; }
.notice.ok[b-xpegc5633t] { border-color: rgba(16, 235, 107, 0.4); color: #8ef4b9; }

.panel[b-xpegc5633t] { background: #0f1319; border: 1px solid #2b313a; border-radius: 12px; padding: 20px; margin-bottom: 16px; }
.panel.empty[b-xpegc5633t] { text-align: center; padding: 40px 20px; }
.panel.empty h2[b-xpegc5633t] { margin: 0 0 8px; font-size: 18px; color: #fff; }
.panel.empty p[b-xpegc5633t] { color: #94a3b8; margin: 0 auto 18px; max-width: 460px; }
.dim[b-xpegc5633t] { color: #64748b; }

/* New ticket form */
.form[b-xpegc5633t] { display: flex; flex-direction: column; gap: 18px; }
.field[b-xpegc5633t] { display: flex; flex-direction: column; gap: 6px; position: relative; }
.label[b-xpegc5633t] { color: #cbd5e1; font-weight: 600; font-size: 13px; }
.optional[b-xpegc5633t] { color: #64748b; font-weight: 400; margin-left: 4px; }
.field input[type=text][b-xpegc5633t], textarea[b-xpegc5633t] {
    background: #12171e; color: #f0f4f8; border: 1px solid #2b313a; border-radius: 8px;
    padding: 10px 12px; font: inherit; width: 100%; box-sizing: border-box;
}
textarea[b-xpegc5633t] { resize: vertical; min-height: 110px; line-height: 1.5; }
.field input[type=text]:focus[b-xpegc5633t], textarea:focus[b-xpegc5633t] { outline: none; border-color: rgba(19, 223, 255, 0.6); box-shadow: 0 0 0 3px rgba(19, 223, 255, 0.12); }
.counter[b-xpegc5633t] { align-self: flex-end; color: #64748b; font-size: 11px; }

.category-grid[b-xpegc5633t] { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.category-opt[b-xpegc5633t] {
    display: flex; flex-direction: column; gap: 3px; cursor: pointer;
    border: 1px solid #2b313a; border-radius: 8px; padding: 10px 12px; background: #12171e;
}
.category-opt:hover[b-xpegc5633t] { border-color: #3a424d; }
.category-opt.sel[b-xpegc5633t] { border-color: #13dfff; background: rgba(19, 223, 255, 0.08); }
.category-opt:focus-within[b-xpegc5633t] { box-shadow: 0 0 0 3px rgba(19, 223, 255, 0.2); }
.category-opt input[b-xpegc5633t] { position: absolute; opacity: 0; pointer-events: none; }
.category-name[b-xpegc5633t] { font-weight: 600; color: #fff; font-size: 13px; }
.category-hint[b-xpegc5633t] { color: #94a3b8; font-size: 12px; line-height: 1.35; }

.hint[b-xpegc5633t] { color: #64748b; font-size: 12px; margin: 0; line-height: 1.5; }
.actions[b-xpegc5633t] { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }

/* Ticket list */
.ticket-list[b-xpegc5633t] { display: flex; flex-direction: column; gap: 8px; }
.ticket-row[b-xpegc5633t] {
    display: flex; align-items: center; gap: 12px; text-decoration: none; color: inherit;
    background: #0f1319; border: 1px solid #2b313a; border-radius: 10px; padding: 14px 16px;
}
.ticket-row:hover[b-xpegc5633t] { border-color: #3a424d; background: #12171e; }
.ticket-row.unread[b-xpegc5633t] { border-color: rgba(19, 223, 255, 0.45); }
.ticket-main[b-xpegc5633t] { display: flex; flex-direction: column; gap: 4px; min-width: 0; flex: 1; }
.ticket-subject[b-xpegc5633t] { color: #fff; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ticket-row.unread .ticket-subject[b-xpegc5633t]::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: #13dfff; margin-right: 8px; vertical-align: middle; }
.ticket-meta[b-xpegc5633t] { color: #64748b; font-size: 12px; }
.new-reply[b-xpegc5633t] { color: #13dfff; font-size: 12px; font-weight: 600; white-space: nowrap; }
.footnote[b-xpegc5633t] { color: #64748b; font-size: 12px; margin-top: 18px; text-align: center; }
.footnote a[b-xpegc5633t] { color: #13dfff; text-decoration: none; }

.status[b-xpegc5633t] { font-size: 11px; font-weight: 600; padding: 3px 10px; border-radius: 10px; white-space: nowrap; }
.st-open[b-xpegc5633t] { background: rgba(255, 181, 71, 0.12); color: #ffb547; }
.st-answered[b-xpegc5633t] { background: rgba(19, 223, 255, 0.12); color: #13dfff; }
.st-closed[b-xpegc5633t] { background: #1b2028; color: #8b95a3; }

/* Ticket view */
.ticket-head[b-xpegc5633t] { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 18px; }
.ticket-head h1[b-xpegc5633t] { overflow-wrap: anywhere; }
.meta[b-xpegc5633t] { margin: 0; color: #64748b; font-size: 13px; }
.reply[b-xpegc5633t] { margin-top: 18px; display: flex; flex-direction: column; gap: 12px; }

@media (max-width: 640px) {
    .support-page[b-xpegc5633t] { padding: 16px 16px 40px; }
    .support-header[b-xpegc5633t], .ticket-head[b-xpegc5633t] { flex-direction: column; }
    .ticket-row[b-xpegc5633t] { flex-wrap: wrap; }
    .ticket-main[b-xpegc5633t] { flex-basis: 100%; }
    .ticket-subject[b-xpegc5633t] { white-space: normal; }
}
/* /Components/Pages/TechnicalReview.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════
   TECHNICAL REVIEW - PREMIUM TRADING TERMINAL DESIGN
   Professional stock market interface with compact, data-dense layout
   ═══════════════════════════════════════════════════════════════════════════ */

/* ===== CSS CUSTOM PROPERTIES ===== */
:root[b-xo3ye2runz] {
    --terminal-bg: #0a0e14;
    --terminal-surface: #0d1117;
    --terminal-elevated: #141b22;
    --terminal-border: rgba(48, 54, 61, 0.6);
    --terminal-border-light: rgba(48, 54, 61, 0.3);
    --accent-cyan: #13dfff;
    --accent-blue: #58a6ff;
    --accent-green: #3fb950;
    --accent-red: #f85149;
    --accent-yellow: #d29922;
    --accent-purple: #a371f7;
    --text-primary: #e6edf3;
    --text-secondary: #8b949e;
    --text-muted: #6e7681;
    --font-mono: 'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, monospace;
}

/* ===== MAIN CONTAINER ===== */
.technical-review-container[b-xo3ye2runz] {
    padding: 0.75rem 1rem;
    max-width: 1800px;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* ===== HEADER - COMPACT TRADING TERMINAL STYLE ===== */
.review-header[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--terminal-border);
}

.header-left[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.review-title[b-xo3ye2runz] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.review-title i[b-xo3ye2runz] {
    color: var(--accent-purple);
    font-size: 0.9rem;
}

.symbol-badge[b-xo3ye2runz] {
    background: var(--accent-purple);
    color: white;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    font-family: var(--font-mono);
}

.header-right[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.current-price[b-xo3ye2runz] {
    display: flex;
    align-items: center;
}

.price-value[b-xo3ye2runz] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono);
}

.header-timestamp[b-xo3ye2runz] {
    font-size: 0.7rem;
    color: var(--text-muted);
    font-family: var(--font-mono);
}

/* AI Button - Compact Terminal Style */

.ai-btn .spinner-border-sm[b-xo3ye2runz] {
    width: 0.9rem;
    height: 0.9rem;
    border-width: 2px;
    color: var(--accent-purple);
}

/* Loading State */
.loading-state[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    color: var(--text-secondary);
}

/* ===== STATS ROW - COMPACT DATA GRID ===== */
.stats-row[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.stat-card[b-xo3ye2runz] {
    background: var(--terminal-elevated);
    border: 1px solid var(--terminal-border);
    border-radius: 8px;
    padding: 0.6rem 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.15s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.stat-card:hover[b-xo3ye2runz] {
    border-color: rgba(19, 223, 255, 0.3);
    background: rgba(20, 27, 34, 0.9);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.stat-icon[b-xo3ye2runz] {
    width: 36px;
    height: 36px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
}

.icon-text[b-xo3ye2runz] {
    font-size: 1.1rem;
    line-height: 1;
}

.stat-icon.reversal[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.12);
    color: var(--accent-blue);
}

.stat-icon.trend[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.12);
    color: var(--accent-green);
}

.stat-icon.zone[b-xo3ye2runz] {
    background: rgba(210, 153, 34, 0.12);
    color: var(--accent-yellow);
}

.stat-icon.confidence[b-xo3ye2runz] {
    background: rgba(163, 113, 247, 0.12);
    color: var(--accent-purple);
}

.stat-icon.confidence.buy-direction[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.12);
    color: var(--accent-green);
}

.stat-icon.confidence.sell-direction[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.12);
    color: var(--accent-red);
}

.stat-content[b-xo3ye2runz] { flex: 1; }

.stat-label[b-xo3ye2runz] {
    font-size: 0.6rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.1rem;
}

.stat-value[b-xo3ye2runz] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono);
    line-height: 1.2;
}

.stat-hint[b-xo3ye2runz] {
    font-size: 0.6rem;
    color: var(--text-muted);
    margin-top: 0.1rem;
    font-family: var(--font-mono);
}

/* ===== CONTENT GRID ===== */
.content-grid[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ===== SECTION STYLING ===== */
.section[b-xo3ye2runz] {
    background: var(--terminal-elevated);
    border: 1px solid rgba(48, 54, 61, 0.8);
    border-radius: 10px;
    padding: 0.85rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.04);
    margin-bottom: 0.75rem;
}

.reversal-section[b-xo3ye2runz] {
    border-left: 4px solid var(--accent-blue);
    background: linear-gradient(135deg, rgba(88, 166, 255, 0.03), var(--terminal-elevated));
}

.decision-maker-section[b-xo3ye2runz] {
    border-left: 4px solid var(--accent-purple);
    background: linear-gradient(135deg, rgba(163, 113, 247, 0.03), var(--terminal-elevated));
}

.section-title[b-xo3ye2runz] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.6rem 0;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.section-title i[b-xo3ye2runz] {
    font-size: 0.75rem;
}

.reversal-section .section-title i[b-xo3ye2runz] { color: var(--accent-blue); }
.decision-maker-section .section-title i[b-xo3ye2runz] { color: var(--accent-purple); }

/* Section Badge */
.section-badge[b-xo3ye2runz] {
    margin-left: auto;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.section-badge.bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.15);
    color: var(--accent-green);
}

.section-badge.bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--accent-red);
}

.section-badge.neutral[b-xo3ye2runz] {
    background: rgba(210, 153, 34, 0.15);
    color: var(--accent-yellow);
}

/* Collapsible Header */
.collapsible-header[b-xo3ye2runz] {
    cursor: pointer;
    user-select: none;
    transition: background 0.15s ease;
    padding: 0.35rem 0.5rem;
    margin: -0.35rem -0.5rem 0.5rem -0.5rem;
    border-radius: 6px;
}

.collapsible-header:hover[b-xo3ye2runz] {
    background: rgba(255, 255, 255, 0.03);
}

.collapsible-header .title-content[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.collapsible-header .header-right-content[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
}

.collapse-toggle[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    background: rgba(88, 166, 255, 0.1);
    border: 1px solid rgba(88, 166, 255, 0.2);
    color: var(--accent-blue);
    transition: all 0.15s ease;
}

.collapse-toggle i[b-xo3ye2runz] {
    font-size: 0.7rem;
    color: var(--accent-blue);
}

.collapsible-header:hover .collapse-toggle[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.2);
    border-color: var(--accent-blue);
}

/* ===== REVERSAL SUMMARY - COMPACT ===== */
.reversal-summary[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.25);
    border-radius: 8px;
    padding: 0.65rem;
    margin-bottom: 0.65rem;
    border: 1px solid rgba(48, 54, 61, 0.5);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}

.summary-row[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.summary-stat[b-xo3ye2runz] {
    text-align: center;
    padding: 0.35rem;
    background: rgba(0, 0, 0, 0.25);
    border-radius: 4px;
}

.stat-num[b-xo3ye2runz] {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono);
    margin-bottom: 0.1rem;
}

.stat-num.triggered-high[b-xo3ye2runz] { color: var(--accent-green); }
.stat-num.triggered-medium[b-xo3ye2runz] { color: var(--accent-yellow); }
.stat-num.triggered-low[b-xo3ye2runz] { color: var(--text-secondary); }
.stat-num.bullish-count[b-xo3ye2runz] { color: var(--accent-green); }
.stat-num.bearish-count[b-xo3ye2runz] { color: var(--accent-red); }

.stat-desc[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-secondary);
    display: block;
}

/* ===== BIAS METER - PREMIUM GAUGE ===== */
.bias-meter[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.3);
    border-radius: 8px;
    padding: 0.6rem;
    border: 1px solid rgba(48, 54, 61, 0.5);
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}

.bias-label[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.35rem;
    text-align: center;
    font-weight: 600;
}

.bias-scale[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.bias-end[b-xo3ye2runz] {
    font-size: 0.5rem;
    font-weight: 700;
    white-space: nowrap;
    text-transform: uppercase;
}

.bias-end.bearish[b-xo3ye2runz] { color: var(--accent-red); }
.bias-end.bullish[b-xo3ye2runz] { color: var(--accent-green); }

.bias-bar[b-xo3ye2runz] {
    flex: 1;
    height: 10px;
    background: linear-gradient(
        to right,
        #ef4444 0%,
        #f97316 20%,
        #fbbf24 35%,
        #6b7280 50%,
        #a3e635 65%,
        #22c55e 80%,
        #10b981 100%
    );
    border-radius: 5px;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
}

.bias-marker[b-xo3ye2runz] {
    position: absolute;
    top: -5px;
    height: 0;
    width: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 10px solid var(--accent-cyan);
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.5));
    transform: translateX(-7px);
    transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 2;
}

.bias-marker[b-xo3ye2runz]::after {
    content: '';
    position: absolute;
    top: -14px;
    left: -4px;
    width: 8px;
    height: 8px;
    background: var(--accent-cyan);
    border-radius: 50%;
    box-shadow: 0 0 6px var(--accent-cyan);
}

.bias-verdict[b-xo3ye2runz] {
    text-align: center;
    font-size: 0.7rem;
    font-weight: 600;
    margin-top: 0.35rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

.bias-verdict.strong-bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.15);
    color: var(--accent-green);
}

.bias-verdict.bullish[b-xo3ye2runz] {
    background: rgba(134, 239, 172, 0.1);
    color: #6fdd8b;
}

.bias-verdict.strong-bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--accent-red);
}

.bias-verdict.bearish[b-xo3ye2runz] {
    background: rgba(255, 161, 152, 0.1);
    color: #ffa198;
}

.bias-verdict.neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.1);
    color: var(--text-secondary);
}

/* ===== REVERSAL INDICATORS GRID - COMPACT ===== */
.reversal-indicators-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
}

.reversal-indicators-grid.collapsed[b-xo3ye2runz] {
    display: none;
}

.reversal-indicator[b-xo3ye2runz] {
    background: var(--terminal-elevated);
    border: 1px solid rgba(48, 54, 61, 0.7);
    border-radius: 8px;
    padding: 0.5rem 0.6rem;
    transition: all 0.15s ease;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

.reversal-indicator:hover[b-xo3ye2runz] {
    border-color: rgba(88, 166, 255, 0.3);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}

.reversal-indicator.triggered[b-xo3ye2runz] {
    border-color: rgba(88, 166, 255, 0.5);
    background: linear-gradient(135deg, rgba(88, 166, 255, 0.08), var(--terminal-elevated));
    box-shadow: 0 2px 10px rgba(88, 166, 255, 0.15), inset 0 1px 0 rgba(88, 166, 255, 0.1);
}

.indicator-header[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.2rem;
}

.indicator-name[b-xo3ye2runz] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.7rem;
}

.indicator-actions[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.info-btn[b-xo3ye2runz] {
    background: transparent;
    border: none;
    color: var(--text-muted);
    cursor: pointer;
    padding: 0.1rem;
    border-radius: 3px;
    transition: all 0.15s ease;
    font-size: 0.7rem;
}

.info-btn:hover[b-xo3ye2runz] {
    color: var(--accent-blue);
    background: rgba(88, 166, 255, 0.1);
}

.indicator-signal-badge[b-xo3ye2runz] {
    font-size: 0.5rem;
    font-weight: 600;
    padding: 0.1rem 0.25rem;
    border-radius: 3px;
    white-space: nowrap;
}

.indicator-signal-badge.strong-buy[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.2);
    color: var(--accent-green);
}

.indicator-signal-badge.buy[b-xo3ye2runz] {
    background: rgba(134, 239, 172, 0.15);
    color: #6fdd8b;
}

.indicator-signal-badge.strong-sell[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.2);
    color: var(--accent-red);
}

.indicator-signal-badge.sell[b-xo3ye2runz] {
    background: rgba(255, 161, 152, 0.15);
    color: #ffa198;
}

.indicator-signal-badge.neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.1);
    color: var(--text-secondary);
}

.indicator-signal-badge.signal[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.15);
    color: var(--accent-blue);
}

.indicator-current-value[b-xo3ye2runz] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--accent-cyan);
    margin-bottom: 0.2rem;
    font-family: var(--font-mono);
}

/* Indicator Scale Container */
.indicator-scale-container[b-xo3ye2runz] {
    margin-top: 0.2rem;
}

.scale-labels[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.1rem;
}

.scale-label[b-xo3ye2runz] {
    font-size: 0.45rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2px;
}

.scale-label.sell[b-xo3ye2runz] { color: var(--accent-red); }
.scale-label.buy[b-xo3ye2runz] { color: var(--accent-green); }

.indicator-lean-bar[b-xo3ye2runz] {
    height: 8px;
    background: linear-gradient(
        to right,
        #10b981 0%,
        #22c55e 20%,
        #a3e635 35%,
        #6b7280 50%,
        #fbbf24 65%,
        #f97316 80%,
        #ef4444 100%
    );
    border-radius: 4px;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
}

.lean-fill[b-xo3ye2runz] {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    background: #13dfff;
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 8px rgba(19, 223, 255, 0.8), 0 2px 4px rgba(0, 0, 0, 0.4);
    transition: left 0.3s ease;
    z-index: 2;
}

/* Remove the ::after since we're using a circle marker now */
.lean-fill[b-xo3ye2runz]::after {
    display: none;
}

.scale-range[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    margin-top: 0.15rem;
}

.range-label[b-xo3ye2runz] {
    font-size: 0.45rem;
    color: var(--text-muted);
}

.range-label.left[b-xo3ye2runz] { color: var(--accent-green); }
.range-label.right[b-xo3ye2runz] { color: var(--accent-red); }

/* ===== DECISION MAKER SECTION ===== */
.decision-maker-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
    transition: all 0.3s ease;
}

.decision-maker-grid.collapsed[b-xo3ye2runz] {
    display: none;
}

.decision-card[b-xo3ye2runz] {
    background: var(--terminal-elevated);
    border: 1px solid rgba(48, 54, 61, 0.8);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.decision-card-header[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.7rem;
    background: rgba(0, 0, 0, 0.35);
    border-bottom: 1px solid rgba(48, 54, 61, 0.6);
}

.decision-icon[b-xo3ye2runz] { font-size: 1rem; }

.decision-title[b-xo3ye2runz] {
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.75rem;
    flex: 1;
}

.decision-badge[b-xo3ye2runz] {
    padding: 0.15rem 0.4rem;
    border-radius: 4px;
    font-size: 0.55rem;
    font-weight: 700;
    text-transform: uppercase;
}

.decision-card-body[b-xo3ye2runz] {
    padding: 0.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Decision Metric */
.decision-metric[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    padding: 0.5rem;
}

.metric-header[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.35rem;
}

.metric-name[b-xo3ye2runz] {
    font-size: 0.65rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.metric-value[b-xo3ye2runz] {
    font-size: 0.75rem;
    font-weight: 700;
    font-family: var(--font-mono);
}

.metric-value.strong[b-xo3ye2runz] { color: var(--accent-green); }
.metric-value.moderate[b-xo3ye2runz] { color: var(--accent-yellow); }
.metric-value.weak[b-xo3ye2runz] { color: var(--text-muted); }

.metric-bar-container[b-xo3ye2runz] {
    margin-bottom: 0.25rem;
}

.metric-bar[b-xo3ye2runz] {
    height: 10px;
    background: linear-gradient(to right, #6b7280 0%, #d29922 50%, #3fb950 100%);
    border-radius: 5px;
    position: relative;
    overflow: visible;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
}

.metric-bar.adx-bar[b-xo3ye2runz] {
    background: linear-gradient(to right, #6b7280 0%, #d29922 50%, #3fb950 100%);
}

.metric-bar.zone-bar[b-xo3ye2runz] {
    background: linear-gradient(to right, #f85149 0%, #d29922 50%, #3fb950 100%);
}

.metric-fill[b-xo3ye2runz] {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 14px;
    height: 14px;
    background: #13dfff;
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 8px rgba(19, 223, 255, 0.8), 0 2px 4px rgba(0, 0, 0, 0.4);
    transition: left 0.3s ease;
    z-index: 2;
}

/* Remove ::after since we're using circle marker styling */
.metric-fill[b-xo3ye2runz]::after {
    display: none;
}

.metric-zones[b-xo3ye2runz] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    font-size: 0.5rem;
    color: var(--text-muted);
    margin-top: 0.15rem;
}

.zone-weak[b-xo3ye2runz] { color: var(--text-muted); }
.zone-moderate[b-xo3ye2runz] { color: var(--accent-yellow); }
.zone-strong[b-xo3ye2runz] { color: var(--accent-green); }

.metric-interpretation[b-xo3ye2runz] {
    font-size: 0.65rem;
    color: var(--text-secondary);
    text-align: center;
    padding: 0.25rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    margin-top: 0.35rem;
}

/* MA Alignment Grid */
.ma-alignment-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.25rem;
}

.ma-check[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.35rem;
    border-radius: 4px;
    font-size: 0.6rem;
    background: rgba(0, 0, 0, 0.2);
}

.ma-check.bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.08);
    border: 1px solid rgba(63, 185, 80, 0.2);
}

.ma-check.bullish i[b-xo3ye2runz] { color: var(--accent-green); }

.ma-check.bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.08);
    border: 1px solid rgba(248, 81, 73, 0.2);
}

.ma-check.bearish i[b-xo3ye2runz] { color: var(--accent-red); }

.ma-check span[b-xo3ye2runz] {
    color: var(--text-secondary);
    font-family: var(--font-mono);
    font-size: 0.55rem;
}

/* Score Breakdown */
.score-breakdown .score-items[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.score-item[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.25rem 0;
    border-bottom: 1px dashed var(--terminal-border-light);
}

.score-item:last-child[b-xo3ye2runz] { border-bottom: none; }

.score-label[b-xo3ye2runz] {
    font-size: 0.65rem;
    color: var(--text-secondary);
}

.score-value[b-xo3ye2runz] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-primary);
    font-family: var(--font-mono);
}

/* Decision Impact */
.decision-impact[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.5rem;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.7rem;
    text-align: center;
}

.decision-impact i[b-xo3ye2runz] { font-size: 0.9rem; }

.decision-impact.impact-bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.1);
    color: var(--accent-green);
    border: 1px solid rgba(63, 185, 80, 0.25);
}

.decision-impact.impact-bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.1);
    color: var(--accent-red);
    border: 1px solid rgba(248, 81, 73, 0.25);
}

.decision-impact.impact-neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.1);
    color: var(--text-secondary);
    border: 1px solid rgba(139, 148, 158, 0.25);
}

.decision-impact.impact-weak[b-xo3ye2runz] {
    background: rgba(210, 153, 34, 0.1);
    color: var(--accent-yellow);
    border: 1px solid rgba(210, 153, 34, 0.25);
}

/* Zone Bar Styles */
.metric-fill.zone-bullish[b-xo3ye2runz] {
    background: linear-gradient(to right, var(--accent-green), #6fdd8b);
}

.metric-fill.zone-bearish[b-xo3ye2runz] {
    background: linear-gradient(to right, #dc2626, var(--accent-red));
}

.metric-fill.zone-neutral[b-xo3ye2runz] {
    background: linear-gradient(to right, var(--text-muted), var(--text-secondary));
}

/* S/R Position Visual */
.sr-position-visual[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    padding: 0.5rem;
}

.sr-range-bar[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.25rem;
}

.sr-range-bar .sr-label[b-xo3ye2runz] {
    font-size: 0.5rem;
    font-weight: 700;
    text-transform: uppercase;
    white-space: nowrap;
}

.sr-range-bar .sr-label.support[b-xo3ye2runz] { color: var(--accent-green); }
.sr-range-bar .sr-label.resistance[b-xo3ye2runz] { color: var(--accent-red); }

.sr-bar-fill[b-xo3ye2runz] {
    flex: 1;
    height: 10px;
    background: linear-gradient(to right, var(--accent-green), var(--accent-yellow) 50%, var(--accent-red));
    border-radius: 5px;
    position: relative;
}

.price-position-marker[b-xo3ye2runz] {
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 12px;
    height: 12px;
    background: white;
    border: 2px solid var(--accent-cyan);
    border-radius: 50%;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
}

.sr-values[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    font-size: 0.55rem;
    color: var(--text-muted);
    font-family: var(--font-mono);
}

.sr-value.support[b-xo3ye2runz] { color: var(--accent-green); font-weight: 600; }
.sr-value.price[b-xo3ye2runz] { color: var(--accent-cyan); font-weight: 700; }
.sr-value.resistance[b-xo3ye2runz] { color: var(--accent-red); font-weight: 600; }

/* ===== COMBINED DECISION SUMMARY ===== */
.combined-decision-summary[b-xo3ye2runz] {
    margin-top: 0.65rem;
    background: var(--terminal-elevated);
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(163, 113, 247, 0.3);
    box-shadow: 0 4px 16px rgba(163, 113, 247, 0.08), 0 2px 8px rgba(0, 0, 0, 0.25);
}

.combined-decision-summary.collapsed[b-xo3ye2runz] {
    display: none;
}

.combined-header[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.6rem;
    background: rgba(163, 113, 247, 0.08);
    border-bottom: 1px solid rgba(163, 113, 247, 0.2);
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.75rem;
}

.combined-header i[b-xo3ye2runz] {
    color: var(--accent-purple);
    font-size: 0.85rem;
}

.combined-content[b-xo3ye2runz] {
    padding: 0.6rem;
}

.decision-factors[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    margin-bottom: 0.6rem;
}

.factor[b-xo3ye2runz] {
    text-align: center;
    padding: 0.5rem;
    border-radius: 6px;
    background: rgba(0, 0, 0, 0.2);
    border: 1px solid var(--terminal-border);
}

.factor-label[b-xo3ye2runz] {
    display: block;
    font-size: 0.55rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 0.2rem;
}

.factor-value[b-xo3ye2runz] {
    display: block;
    font-size: 0.75rem;
    font-weight: 700;
}

.factor.factor-bullish[b-xo3ye2runz] {
    border-color: rgba(63, 185, 80, 0.25);
    background: rgba(63, 185, 80, 0.06);
}

.factor.factor-bullish .factor-value[b-xo3ye2runz] { color: var(--accent-green); }

.factor.factor-bearish[b-xo3ye2runz] {
    border-color: rgba(248, 81, 73, 0.25);
    background: rgba(248, 81, 73, 0.06);
}

.factor.factor-bearish .factor-value[b-xo3ye2runz] { color: var(--accent-red); }

.factor.factor-neutral[b-xo3ye2runz] {
    border-color: rgba(139, 148, 158, 0.25);
    background: rgba(139, 148, 158, 0.06);
}

.factor.factor-neutral .factor-value[b-xo3ye2runz] { color: var(--text-secondary); }

/* Final Verdict */
.final-verdict[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    font-size: 0.85rem;
}

.verdict-label[b-xo3ye2runz] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.8;
}

.verdict-value[b-xo3ye2runz] {
    font-size: 1rem;
    font-weight: 700;
}

.final-verdict.verdict-bullish[b-xo3ye2runz] {
    background: linear-gradient(135deg, rgba(63, 185, 80, 0.15), rgba(34, 197, 94, 0.08));
    border: 2px solid rgba(63, 185, 80, 0.4);
    color: var(--accent-green);
}

.final-verdict.verdict-lean-bullish[b-xo3ye2runz] {
    background: rgba(134, 239, 172, 0.08);
    border: 1px solid rgba(134, 239, 172, 0.25);
    color: #6fdd8b;
}

.final-verdict.verdict-bearish[b-xo3ye2runz] {
    background: linear-gradient(135deg, rgba(248, 81, 73, 0.15), rgba(239, 68, 68, 0.08));
    border: 2px solid rgba(248, 81, 73, 0.4);
    color: var(--accent-red);
}

.final-verdict.verdict-lean-bearish[b-xo3ye2runz] {
    background: rgba(255, 161, 152, 0.08);
    border: 1px solid rgba(255, 161, 152, 0.25);
    color: #ffa198;
}

.final-verdict.verdict-neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.08);
    border: 1px solid rgba(139, 148, 158, 0.25);
    color: var(--text-secondary);
}

/* ===== SUMMARY SECTION ===== */
.summary-section[b-xo3ye2runz] {
    margin-top: 0.75rem;
}

.summary-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 0.5rem;
}

.summary-card[b-xo3ye2runz] {
    background: var(--terminal-surface);
    border: 1px solid var(--terminal-border);
    border-radius: 8px;
    padding: 0.75rem;
}

.signal-card[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.signal-card.buy[b-xo3ye2runz] {
    border-color: rgba(63, 185, 80, 0.4);
    background: linear-gradient(to bottom, rgba(63, 185, 80, 0.08), var(--terminal-surface));
}

.signal-card.sell[b-xo3ye2runz] {
    border-color: rgba(248, 81, 73, 0.4);
    background: linear-gradient(to bottom, rgba(248, 81, 73, 0.08), var(--terminal-surface));
}

.signal-card.neutral[b-xo3ye2runz] {
    border-color: rgba(210, 153, 34, 0.4);
    background: linear-gradient(to bottom, rgba(210, 153, 34, 0.08), var(--terminal-surface));
}

.signal-icon[b-xo3ye2runz] {
    font-size: 2rem;
    margin-bottom: 0.35rem;
}

.signal-card.buy .signal-icon[b-xo3ye2runz] { color: var(--accent-green); }
.signal-card.sell .signal-icon[b-xo3ye2runz] { color: var(--accent-red); }
.signal-card.neutral .signal-icon[b-xo3ye2runz] { color: var(--accent-yellow); }

.signal-label[b-xo3ye2runz] {
    font-size: 0.6rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.signal-value[b-xo3ye2runz] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.35rem;
}

.signal-aligned[b-xo3ye2runz] {
    font-size: 0.7rem;
}

.signal-aligned .aligned[b-xo3ye2runz] { color: var(--accent-green); }
.signal-aligned .not-aligned[b-xo3ye2runz] { color: var(--accent-yellow); }

.outlook-card h3[b-xo3ye2runz] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
    padding-bottom: 0.35rem;
    border-bottom: 2px solid var(--accent-blue);
}

.outlook-content p[b-xo3ye2runz] {
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0 0 0.5rem 0;
    font-size: 0.75rem;
}

.outlook-bullets ul[b-xo3ye2runz] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.outlook-bullets li[b-xo3ye2runz] {
    padding: 0.35rem 0.5rem;
    margin-bottom: 0.25rem;
    border-radius: 4px;
    font-size: 0.7rem;
    color: var(--text-primary);
}

.outlook-bullets li.bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.08);
    border-left: 3px solid var(--accent-green);
}

.outlook-bullets li.bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.08);
    border-left: 3px solid var(--accent-red);
}

.outlook-bullets li.neutral[b-xo3ye2runz] {
    background: rgba(107, 114, 128, 0.08);
    border-left: 3px solid var(--text-muted);
}

.outlook-bullets li.highlight[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.08);
    border-left: 3px solid var(--accent-blue);
    font-weight: 500;
}

/* ===== MODAL STYLES ===== */
.modal-overlay[b-xo3ye2runz] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(4px);
}

.info-modal[b-xo3ye2runz] {
    background: var(--terminal-surface);
    border: 1px solid var(--terminal-border);
    border-radius: 12px;
    max-width: 480px;
    width: 90%;
    max-height: 80vh;
    overflow-y: auto;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}

.modal-header[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--terminal-border);
    background: rgba(0, 0, 0, 0.3);
    border-radius: 12px 12px 0 0;
}

.modal-header h3[b-xo3ye2runz] {
    color: var(--text-primary);
    font-size: 0.9rem;
    font-weight: 600;
    margin: 0;
}

.modal-close[b-xo3ye2runz] {
    background: transparent;
    border: none;
    color: var(--text-secondary);
    cursor: pointer;
    padding: 0.35rem;
    border-radius: 4px;
    transition: all 0.15s ease;
}

.modal-close:hover[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--accent-red);
}

.modal-body[b-xo3ye2runz] {
    padding: 1rem;
}

.modal-emoji[b-xo3ye2runz] {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 0.75rem;
}

.modal-simple[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.08);
    border: 1px solid rgba(88, 166, 255, 0.2);
    border-radius: 8px;
    padding: 0.75rem;
    margin-bottom: 0.75rem;
    font-size: 0.85rem;
    color: var(--text-primary);
    line-height: 1.5;
    text-align: center;
}

.modal-details[b-xo3ye2runz] {
    color: var(--text-secondary);
    font-size: 0.8rem;
    line-height: 1.5;
    margin-bottom: 0.75rem;
}

.modal-details p[b-xo3ye2runz] {
    margin-bottom: 0.5rem;
}

.modal-details strong[b-xo3ye2runz] {
    color: var(--text-primary);
}

.modal-ranges[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.25);
    border-radius: 8px;
    padding: 0.75rem;
}

.modal-ranges h4[b-xo3ye2runz] {
    color: var(--text-primary);
    font-size: 0.8rem;
    font-weight: 600;
    margin: 0 0 0.5rem 0;
}

.range-item[b-xo3ye2runz] {
    padding: 0.4rem 0.6rem;
    border-radius: 4px;
    margin-bottom: 0.35rem;
    font-size: 0.75rem;
}

.range-item.buy[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.08);
    border-left: 3px solid var(--accent-green);
    color: var(--accent-green);
}

.range-item.sell[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.08);
    border-left: 3px solid var(--accent-red);
    color: var(--accent-red);
}

.range-item.neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.08);
    border-left: 3px solid var(--text-secondary);
    color: var(--text-secondary);
}

.range-item.signal[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.08);
    border-left: 3px solid var(--accent-blue);
    color: var(--accent-blue);
}

.range-item strong[b-xo3ye2runz] { color: inherit; }

/* ===== AI TECHNICAL ANALYSIS SECTION ===== */
.ai-analysis-section[b-xo3ye2runz] {
    margin-bottom: 0.85rem;
    padding: 0.85rem;
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.04), var(--terminal-elevated));
    border: 1px solid rgba(19, 223, 255, 0.25);
    border-radius: 10px;
    border-left: 4px solid var(--accent-cyan);
    box-shadow: 0 4px 16px rgba(19, 223, 255, 0.08), 0 2px 8px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.ai-section-header[b-xo3ye2runz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.6rem;
    padding-bottom: 0.4rem;
    border-bottom: 1px solid var(--terminal-border-light);
}

.ai-section-title[b-xo3ye2runz] {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--text-primary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.ai-icon-large[b-xo3ye2runz] { font-size: 1.1rem; }

.ai-stance-badge[b-xo3ye2runz] {
    font-size: 0.6rem;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-weight: 700;
    text-transform: uppercase;
}

.ai-stance-badge.badge-success[b-xo3ye2runz],
.ai-stance-badge.strong-bullish[b-xo3ye2runz] {
    background: rgba(63, 185, 80, 0.15);
    color: var(--accent-green);
}

.ai-stance-badge.lean-bullish[b-xo3ye2runz] {
    background: rgba(134, 239, 172, 0.1);
    color: #6fdd8b;
}

.ai-stance-badge.badge-warning[b-xo3ye2runz],
.ai-stance-badge.neutral[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.15);
    color: var(--text-secondary);
}

.ai-stance-badge.lean-bearish[b-xo3ye2runz] {
    background: rgba(255, 161, 152, 0.1);
    color: #ffa198;
}

.ai-stance-badge.badge-danger[b-xo3ye2runz],
.ai-stance-badge.strong-bearish[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--accent-red);
}

.ai-timestamp[b-xo3ye2runz] {
    text-align: right;
    font-size: 0.6rem;
    color: var(--text-muted);
    font-family: var(--font-mono);
}

/* Stance Grid */
.stance-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.6rem;
    margin-bottom: 0.75rem;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    border: 1px solid rgba(48, 54, 61, 0.5);
}

.stance-card[b-xo3ye2runz] {
    background: var(--terminal-elevated);
    padding: 0.6rem;
    border-radius: 8px;
    text-align: center;
    border: 1px solid rgba(48, 54, 61, 0.7);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.03);
    transition: all 0.15s ease;
}

.stance-card:hover[b-xo3ye2runz] {
    border-color: rgba(19, 223, 255, 0.3);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.stance-card-label[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-muted);
    margin-bottom: 0.2rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.stance-card-value[b-xo3ye2runz] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.stance-card-value.price-target[b-xo3ye2runz] {
    font-size: 1.1rem;
    font-family: var(--font-mono);
}

.stance-card-value.alignment[b-xo3ye2runz] {
    font-size: 0.85rem;
}

.stance-card-subvalue[b-xo3ye2runz] {
    font-size: 0.65rem;
    margin-top: 0.15rem;
}

/* Stance Color Classes */
.stance-bullish[b-xo3ye2runz], .color-bullish[b-xo3ye2runz] { color: var(--accent-green) !important; }
.stance-lean-bullish[b-xo3ye2runz] { color: #6fdd8b !important; }
.stance-neutral[b-xo3ye2runz], .color-neutral[b-xo3ye2runz] { color: var(--text-secondary) !important; }
.stance-lean-bearish[b-xo3ye2runz] { color: #ffa198 !important; }
.stance-bearish[b-xo3ye2runz], .color-bearish[b-xo3ye2runz] { color: var(--accent-red) !important; }

/* Stance Meter */
.stance-meter-container[b-xo3ye2runz] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    margin-top: 0.3rem;
}

.stance-meter[b-xo3ye2runz] {
    width: 80px;
    height: 8px;
    background: linear-gradient(
        to right,
        #ef4444 0%,
        #f97316 20%,
        #fbbf24 35%,
        #6b7280 50%,
        #a3e635 65%,
        #22c55e 80%,
        #10b981 100%
    );
    border-radius: 4px;
    position: relative;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3);
}

.stance-meter-marker[b-xo3ye2runz] {
    position: absolute;
    width: 3px;
    height: 12px;
    background: var(--accent-cyan);
    border-radius: 2px;
    top: -2px;
    transform: translateX(-50%);
    box-shadow: 0 0 6px var(--accent-cyan);
}

.stance-meter-score[b-xo3ye2runz] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-primary);
    font-family: var(--font-mono);
}

/* AI Content Blocks */
.ai-content-block[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.25);
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    margin-bottom: 0.6rem;
    border: 1px solid rgba(48, 54, 61, 0.6);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.02);
}

.ai-block-header[b-xo3ye2runz] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 0.3rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.ai-block-text[b-xo3ye2runz] {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.5;
    color: var(--text-secondary);
}

/* Primary Drivers Section */
.primary-drivers-section[b-xo3ye2runz] {
    margin-bottom: 0.6rem;
    padding: 0.5rem 0.6rem;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    border: 1px solid rgba(48, 54, 61, 0.5);
}

.drivers-label[b-xo3ye2runz] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.drivers-tags[b-xo3ye2runz] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.driver-tag[b-xo3ye2runz] {
    background: rgba(88, 166, 255, 0.12);
    color: var(--accent-blue);
    padding: 0.25rem 0.6rem;
    border-radius: 5px;
    font-size: 0.68rem;
    font-weight: 500;
    border: 1px solid rgba(88, 166, 255, 0.2);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

/* Price Target Classes */
.price-target-bullish[b-xo3ye2runz] { color: var(--accent-green); }
.price-target-bearish[b-xo3ye2runz] { color: var(--accent-red); }
.price-change-bullish[b-xo3ye2runz] { color: var(--accent-green); }
.price-change-bearish[b-xo3ye2runz] { color: var(--accent-red); }

/* Alignment Classes */
.alignment-aligned[b-xo3ye2runz] { color: var(--accent-green); }
.alignment-partial[b-xo3ye2runz] { color: var(--accent-yellow); }
.alignment-divergent[b-xo3ye2runz] { color: var(--accent-red); }

/* ===== TECH AI MODAL STYLES ===== */
.tech-ai-modal[b-xo3ye2runz] {
    background: var(--terminal-surface);
    border: 1px solid var(--terminal-border);
    border-radius: 12px;
    max-width: 750px;
    width: 95%;
    max-height: 85vh;
    overflow-y: auto;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}

.tech-ai-header[b-xo3ye2runz] {
    background: linear-gradient(135deg, rgba(88, 166, 255, 0.1), rgba(163, 113, 247, 0.08));
    border-bottom: 1px solid var(--terminal-border);
}

.modal-title-section[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.modal-title-section h3[b-xo3ye2runz] {
    margin: 0;
    color: var(--text-primary);
    font-size: 0.95rem;
}

.tech-ai-body[b-xo3ye2runz] {
    padding: 1rem;
}

/* Stance Summary in Modal - Centered single card layout */
.stance-summary[b-xo3ye2runz] {
    display: flex;
    justify-content: center;
    margin-bottom: 0.75rem;
}

.stance-summary .stance-card.centered[b-xo3ye2runz] {
    padding: 1rem 2rem;
    text-align: center;
    min-width: 200px;
    background: rgba(30, 30, 30, 0.6);
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.stance-summary .stance-card .stance-label[b-xo3ye2runz] {
    font-size: 0.6rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.5rem;
}

.stance-summary .stance-card .stance-value[b-xo3ye2runz] {
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.stance-summary .stance-card .stance-score[b-xo3ye2runz],
.stance-summary .stance-card .stance-confidence[b-xo3ye2runz],
.stance-summary .stance-card .stance-target[b-xo3ye2runz] {
    font-size: 0.7rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

/* Legacy stance-comparison kept for backwards compatibility */

.stance-comparison .stance-card[b-xo3ye2runz] {
    padding: 0.75rem;
}

.stance-comparison .stance-card .stance-label[b-xo3ye2runz] {
    font-size: 0.6rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.25rem;
}

.stance-comparison .stance-card .stance-value[b-xo3ye2runz] {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 0.15rem;
}

.stance-comparison .stance-card .stance-score[b-xo3ye2runz],
.stance-comparison .stance-card .stance-confidence[b-xo3ye2runz],
.stance-comparison .stance-card .stance-target[b-xo3ye2runz] {
    font-size: 0.65rem;
    color: var(--text-secondary);
}

/* Confidence styling */
.confidence-high[b-xo3ye2runz] { color: var(--accent-green); }
.confidence-medium[b-xo3ye2runz] { color: var(--accent-yellow); }
.confidence-low[b-xo3ye2runz] { color: var(--text-secondary); }
.confidence-very-low[b-xo3ye2runz] { color: var(--text-muted); }

.confidence-description[b-xo3ye2runz] {
    font-size: 0.7rem;
    color: var(--text-secondary);
}

/* AI Analysis Sections in Modal */
.ai-summary-section[b-xo3ye2runz],
.ai-rationale-section[b-xo3ye2runz],
.tech-context-section[b-xo3ye2runz],
.drivers-section[b-xo3ye2runz],
.sr-levels-section[b-xo3ye2runz],
.divergence-section[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    padding: 0.75rem;
    margin-bottom: 0.6rem;
}

.ai-summary-section h4[b-xo3ye2runz],
.ai-rationale-section h4[b-xo3ye2runz],
.tech-context-section h4[b-xo3ye2runz],
.drivers-section h4[b-xo3ye2runz],
.sr-levels-section h4[b-xo3ye2runz],
.catalysts-section h4[b-xo3ye2runz],
.risks-section h4[b-xo3ye2runz],
.divergence-section h4[b-xo3ye2runz] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.ai-summary-section h4 i[b-xo3ye2runz],
.ai-rationale-section h4 i[b-xo3ye2runz],
.tech-context-section h4 i[b-xo3ye2runz],
.drivers-section h4 i[b-xo3ye2runz],
.sr-levels-section h4 i[b-xo3ye2runz],
.catalysts-section h4 i[b-xo3ye2runz],
.risks-section h4 i[b-xo3ye2runz],
.divergence-section h4 i[b-xo3ye2runz] {
    color: var(--accent-blue);
}

.executive-summary[b-xo3ye2runz] {
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0;
    font-size: 0.8rem;
}

/* Context Grid */
.context-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.5rem;
}

.context-item[b-xo3ye2runz] {
    text-align: center;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.2);
    border-radius: 6px;
}

.context-label[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-muted);
    display: block;
    margin-bottom: 0.15rem;
    text-transform: uppercase;
}

.context-value[b-xo3ye2runz] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary);
}

/* Driver Items */
.drivers-list[b-xo3ye2runz] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.driver-item[b-xo3ye2runz] {
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 6px;
    border-left: 3px solid var(--terminal-border);
}

.driver-item.positive[b-xo3ye2runz] { border-left-color: var(--accent-green); }
.driver-item.negative[b-xo3ye2runz] { border-left-color: var(--accent-red); }
.driver-item.neutral[b-xo3ye2runz] { border-left-color: var(--text-muted); }

.driver-impact-icon[b-xo3ye2runz] { font-size: 1rem; }

.driver-content[b-xo3ye2runz] { flex: 1; }

.driver-content strong[b-xo3ye2runz] {
    display: block;
    color: var(--text-primary);
    margin-bottom: 0.15rem;
    font-size: 0.8rem;
}

.driver-detail[b-xo3ye2runz],
.driver-indicator[b-xo3ye2runz] {
    font-size: 0.7rem;
    color: var(--text-muted);
    display: block;
}

/* Primary Drivers in Modal */
.primary-drivers[b-xo3ye2runz] {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px dashed var(--terminal-border);
}

.primary-drivers strong[b-xo3ye2runz] {
    color: var(--text-secondary);
    font-size: 0.7rem;
}

.driver-chip[b-xo3ye2runz] {
    display: inline-block;
    background: rgba(88, 166, 255, 0.1);
    color: var(--accent-blue);
    padding: 0.15rem 0.4rem;
    border-radius: 4px;
    font-size: 0.6rem;
    margin: 0.15rem;
}

/* S/R Levels Grid */
.sr-grid[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.5rem;
}

.sr-item[b-xo3ye2runz] {
    padding: 0.5rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 6px;
    text-align: center;
}

.sr-item.support[b-xo3ye2runz] { border-left: 3px solid var(--accent-green); }
.sr-item.resistance[b-xo3ye2runz] { border-left: 3px solid var(--accent-red); }

.sr-item .sr-type[b-xo3ye2runz] {
    font-size: 0.55rem;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 0.15rem;
}

.sr-item.support .sr-type[b-xo3ye2runz] { color: var(--accent-green); }
.sr-item.resistance .sr-type[b-xo3ye2runz] { color: var(--accent-red); }

.sr-item .sr-price[b-xo3ye2runz] {
    font-size: 0.9rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono);
}

.sr-item .sr-strength[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-muted);
    display: block;
}

.sr-item .sr-notes[b-xo3ye2runz] {
    font-size: 0.55rem;
    color: var(--text-secondary);
    display: block;
    margin-top: 0.15rem;
}

/* Catalysts & Risks Row */
.catalysts-risks-row[b-xo3ye2runz] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.catalysts-section[b-xo3ye2runz],
.risks-section[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    padding: 0.75rem;
}

.catalyst-item[b-xo3ye2runz],
.risk-item[b-xo3ye2runz] {
    display: flex;
    gap: 0.5rem;
    padding: 0.5rem;
    margin-bottom: 0.35rem;
    background: rgba(0, 0, 0, 0.15);
    border-radius: 6px;
}

.catalyst-icon[b-xo3ye2runz] { font-size: 0.9rem; }

.catalyst-content[b-xo3ye2runz],
.risk-content[b-xo3ye2runz] { flex: 1; }

.catalyst-content strong[b-xo3ye2runz],
.risk-content strong[b-xo3ye2runz] {
    display: block;
    color: var(--text-primary);
    font-size: 0.75rem;
    margin-bottom: 0.1rem;
}

.catalyst-window[b-xo3ye2runz] {
    font-size: 0.6rem;
    color: var(--text-muted);
}

.risk-severity[b-xo3ye2runz] {
    font-size: 0.55rem;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0.15rem 0.35rem;
    border-radius: 3px;
    align-self: flex-start;
}

.risk-item.high .risk-severity[b-xo3ye2runz] {
    background: rgba(248, 81, 73, 0.15);
    color: var(--accent-red);
}

.risk-item.medium .risk-severity[b-xo3ye2runz] {
    background: rgba(210, 153, 34, 0.15);
    color: var(--accent-yellow);
}

.risk-item.low .risk-severity[b-xo3ye2runz] {
    background: rgba(139, 148, 158, 0.1);
    color: var(--text-secondary);
}

.risk-detail[b-xo3ye2runz] {
    font-size: 0.65rem;
    color: var(--text-muted);
}

/* Divergence Section */
.final-recommendation[b-xo3ye2runz] {
    margin-top: 0.5rem;
    padding: 0.5rem;
    background: rgba(88, 166, 255, 0.08);
    border-radius: 6px;
    color: var(--accent-blue);
    font-size: 0.75rem;
}

.final-recommendation strong[b-xo3ye2runz] { color: var(--text-primary); }

/* ===== TEXT UTILITIES ===== */
.text-success[b-xo3ye2runz] { color: var(--accent-green) !important; }
.text-danger[b-xo3ye2runz] { color: var(--accent-red) !important; }
.text-warning[b-xo3ye2runz] { color: var(--accent-yellow) !important; }
.text-muted[b-xo3ye2runz] { color: var(--text-muted) !important; }

/* Alert Warning */
.alert-warning[b-xo3ye2runz] {
    background-color: rgba(210, 153, 34, 0.1);
    border: 1px solid rgba(210, 153, 34, 0.3);
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    color: var(--accent-yellow);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 1200px) {
    .stats-row[b-xo3ye2runz] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .reversal-indicators-grid[b-xo3ye2runz] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .summary-grid[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }
    
    .stance-grid[b-xo3ye2runz] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 900px) {
    .decision-maker-grid[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }
    
    .context-grid[b-xo3ye2runz] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .catalysts-risks-row[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .technical-review-container[b-xo3ye2runz] {
        padding: 0.5rem;
    }

    .review-header[b-xo3ye2runz] {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start;
    }

    .header-left[b-xo3ye2runz] {
        flex-wrap: wrap;
    }

    .header-right[b-xo3ye2runz] {
        width: 100%;
        justify-content: space-between;
    }

    .stats-row[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }

    .reversal-indicators-grid[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }

    .decision-factors[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }
    
    .stance-grid[b-xo3ye2runz] {
        grid-template-columns: 1fr;
    }
}

/* ===== LIGHT THEME OVERRIDES ===== */
:global([data-theme="light"]) .technical-review-container[b-xo3ye2runz] {
    --terminal-bg: #ffffff;
    --terminal-surface: #f6f8fa;
    --terminal-elevated: #ffffff;
    --terminal-border: rgba(208, 215, 222, 0.8);
    --terminal-border-light: rgba(208, 215, 222, 0.5);
    --text-primary: #1f2328;
    --text-secondary: #59636e;
    --text-muted: #8b949e;
    --accent-cyan: #0b8da1;
    --accent-blue: #0969da;
    --accent-green: #1a7f37;
    --accent-red: #cf222e;
    --accent-yellow: #9a6700;
    --accent-purple: #8250df;
}

:global([data-theme="light"]) .stat-card[b-xo3ye2runz],
:global([data-theme="light"]) .section[b-xo3ye2runz],
:global([data-theme="light"]) .summary-card[b-xo3ye2runz],
:global([data-theme="light"]) .ai-analysis-section[b-xo3ye2runz] {
    background: var(--terminal-surface);
}

:global([data-theme="light"]) .reversal-summary[b-xo3ye2runz],
:global([data-theme="light"]) .reversal-indicator[b-xo3ye2runz],
:global([data-theme="light"]) .decision-card[b-xo3ye2runz],
:global([data-theme="light"]) .decision-metric[b-xo3ye2runz],
:global([data-theme="light"]) .combined-decision-summary[b-xo3ye2runz],
:global([data-theme="light"]) .bias-meter[b-xo3ye2runz],
:global([data-theme="light"]) .summary-stat[b-xo3ye2runz],
:global([data-theme="light"]) .stance-card[b-xo3ye2runz],
:global([data-theme="light"]) .ai-content-block[b-xo3ye2runz],
:global([data-theme="light"]) .sr-position-visual[b-xo3ye2runz] {
    background: rgba(0, 0, 0, 0.03);
}

:global([data-theme="light"]) .info-modal[b-xo3ye2runz],
:global([data-theme="light"]) .tech-ai-modal[b-xo3ye2runz] {
    background: var(--terminal-surface);
}

:global([data-theme="light"]) .modal-simple[b-xo3ye2runz] {
    background: rgba(9, 105, 218, 0.06);
    border-color: rgba(9, 105, 218, 0.15);
}

:global([data-theme="light"]) .bias-marker[b-xo3ye2runz],
:global([data-theme="light"]) .lean-fill[b-xo3ye2runz],
:global([data-theme="light"]) .stance-meter-marker[b-xo3ye2runz] {
    border-top-color: var(--accent-cyan);
}

:global([data-theme="light"]) .bias-marker[b-xo3ye2runz]::after,
:global([data-theme="light"]) .lean-fill[b-xo3ye2runz]::after {
    background: var(--accent-cyan);
    box-shadow: 0 0 6px var(--accent-cyan);
}

:global([data-theme="light"]) .price-position-marker[b-xo3ye2runz] {
    border-color: var(--accent-cyan);
}
/* /Components/Pages/TradeHistory.razor.rz.scp.css */
/* Moved from the inline <style> block in TradeHistory.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
/* Admin-only launcher for the full-screen account growth chart */
:where(.growth-btn)[b-kldz8wvovw] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 12px;
    border-radius: 6px;
    border: 1px solid rgba(19, 223, 255, 0.35);
    background: rgba(19, 223, 255, 0.08);
    color: #13dfff;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.2s;
}

:where(.growth-btn):hover[b-kldz8wvovw] {
    background: rgba(19, 223, 255, 0.18);
    box-shadow: 0 0 14px rgba(19, 223, 255, 0.25);
}

/* Symbol Search */
:where(.filter-search)[b-kldz8wvovw] {
    position: relative;
}

:where(.date-btn)[b-kldz8wvovw] {
    padding: 6px 10px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-secondary);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

:where(.date-btn):hover[b-kldz8wvovw] {
    background: rgba(255, 255, 255, 0.08);
    color: var(--text-primary);
}

:where(.date-btn).active[b-kldz8wvovw] {
    background: var(--primary-green);
    color: var(--bg-dark);
}

:where(.trades-count)[b-kldz8wvovw] {
    font-size: 13px;
    color: var(--text-secondary);
}

:where(.trades-filter-dropdown)[b-kldz8wvovw] {
    display: flex;
    align-items: center;
    gap: 8px;
}

:where(.direction-select)[b-kldz8wvovw] {
    padding: 6px 12px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--border-light);
    border-radius: 6px;
    color: var(--text-primary);
    font-size: 12px;
    cursor: pointer;
    transition: all 0.2s;
}

:where(.direction-select):focus[b-kldz8wvovw] {
    outline: none;
    border-color: var(--primary-green);
}

:where(.direction-select)[b-kldz8wvovw]  option {
    background: var(--bg-dark);
    color: var(--text-primary);
}

/* Responsive */
@media (max-width: 768px) {
    
    :where(.date-btn)[b-kldz8wvovw] {
        flex: 1;
        padding: 8px 6px;
    }
    
    :where(.direction-select)[b-kldz8wvovw] {
        width: 100%;
    }
}

/* ═══════════════════════════════════════════════════════════
   MOBILE APP SHELL (max-width 900px)
   Stats two-up, filters as a swipe strip, trades table scrolls
   sideways with the symbol column pinned.
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 900px) {

    :where(.date-btn)[b-kldz8wvovw] {
        flex: 0 0 auto;
        min-width: 46px;
        padding: 8px 10px;
    }

    :where(.summary-detail)[b-kldz8wvovw] {
        font-size: 10px;
    }

    :where(.performers-row)[b-kldz8wvovw] {
        flex-direction: column;
        gap: 8px;
        margin: 0 8px 12px;
    }

    :where(.trades-table-section)[b-kldz8wvovw] {
        border-radius: 12px;
    }

    :where(.direction-select)[b-kldz8wvovw] {
        width: 100%;
    }

    :where(.trades-table)[b-kldz8wvovw]  th,
    :where(.trades-table)[b-kldz8wvovw]  td {
        padding: 8px 10px;
        font-size: 11px;
        white-space: nowrap;
    }

    /* Pin the symbol so P&L stays attributable while scrolling */
    :where(.trades-table)[b-kldz8wvovw]  thead th:first-child,
    :where(.trades-table)[b-kldz8wvovw]  tbody td.symbol {
        position: sticky;
        left: 0;
        z-index: 3;
        background: #0b0f16;
        box-shadow: 1px 0 0 rgba(255, 255, 255, 0.06);
    }

    :where(.page-btn)[b-kldz8wvovw] {
        flex: 1;
        justify-content: center;
    }
}
/* /Components/Pages/TrailAudit.razor.rz.scp.css */
.trail-page[b-39uj7orepw] {
    max-width: 1600px;
    margin: 0 auto;
    padding: 20px;
    color: #e6e6e6;
    font-size: 13px;
}

.trail-header[b-39uj7orepw] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 18px;
}

.trail-header h1[b-39uj7orepw] {
    margin: 0 0 4px;
    font-size: 22px;
    color: #fff;
}

.subtitle[b-39uj7orepw] {
    margin: 0;
    color: #9aa4b2;
    max-width: 820px;
    line-height: 1.5;
}

.header-actions[b-39uj7orepw] {
    display: flex;
    align-items: center;
    gap: 12px;
    white-space: nowrap;
}

.header-actions .opt[b-39uj7orepw] { color: #9aa4b2; font-size: 12px; }

.run-btn[b-39uj7orepw] {
    background: #2563eb;
    color: #fff;
    border: none;
    padding: 9px 18px;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
}

.run-btn:disabled[b-39uj7orepw] { opacity: 0.6; cursor: default; }

.notice[b-39uj7orepw] {
    background: #161b22;
    border: 1px solid #2b313a;
    border-radius: 8px;
    padding: 16px;
    color: #9aa4b2;
}

.notice.error[b-39uj7orepw] { border-color: #d1434b; color: #f0a5a9; }
.notice.warn[b-39uj7orepw] { border-color: #b58900; color: #e0c46a; }
.notice.ok[b-39uj7orepw] { border-color: #2ea043; color: #7ee2a8; }

/* Headline */
.headline-row[b-39uj7orepw] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.stat[b-39uj7orepw] {
    flex: 1 1 130px;
    background: #161b22;
    border: 1px solid #2b313a;
    border-radius: 8px;
    padding: 12px 14px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.stat-num[b-39uj7orepw] { font-size: 19px; font-weight: 700; color: #fff; }
.stat-lbl[b-39uj7orepw] { font-size: 11px; color: #8b95a3; text-transform: uppercase; letter-spacing: 0.4px; }

.pos[b-39uj7orepw] { color: #46d18b; }
.neg[b-39uj7orepw] { color: #ff7575; }
.warn[b-39uj7orepw] { color: #e0c46a; }
.dim[b-39uj7orepw] { color: #6b7480; }

/* Panels */
.panel[b-39uj7orepw] {
    background: #10151c;
    border: 1px solid #232a34;
    border-radius: 10px;
    padding: 16px 18px;
    margin-bottom: 16px;
}

.panel h2[b-39uj7orepw] {
    margin: 0 0 12px;
    font-size: 15px;
    color: #fff;
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.panel-sub[b-39uj7orepw] { font-size: 11px; color: #8b95a3; font-weight: 400; text-transform: none; }

/* Health list */
.health-list[b-39uj7orepw] { display: flex; flex-direction: column; gap: 8px; }

.health-item[b-39uj7orepw] {
    border-left: 3px solid #2b313a;
    background: #161b22;
    border-radius: 0 6px 6px 0;
    padding: 10px 12px;
}

.health-item.inline[b-39uj7orepw] { margin-bottom: 6px; }
.health-item.sev-error[b-39uj7orepw] { border-left-color: #d1434b; }
.health-item.sev-warning[b-39uj7orepw] { border-left-color: #b58900; }
.health-item.sev-info[b-39uj7orepw] { border-left-color: #2f6feb; }

.health-head[b-39uj7orepw] { display: flex; align-items: center; gap: 8px; margin-bottom: 3px; flex-wrap: wrap; }
.health-sym[b-39uj7orepw] { font-weight: 700; color: #fff; font-family: 'JetBrains Mono', Consolas, monospace; }

.health-badge[b-39uj7orepw] {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.5px;
    padding: 2px 6px;
    border-radius: 3px;
    background: #2b313a;
    color: #b6c0cc;
}

.sev-error .health-badge[b-39uj7orepw] { background: #3d1a1d; color: #f0a5a9; }
.sev-warning .health-badge[b-39uj7orepw] { background: #3a2f0d; color: #e0c46a; }
.sev-info .health-badge[b-39uj7orepw] { background: #16273f; color: #90b8f0; }

.health-title[b-39uj7orepw] { color: #e6e6e6; font-weight: 600; }
.health-detail[b-39uj7orepw] { color: #9aa4b2; line-height: 1.5; }

/* Table */
.table-wrap[b-39uj7orepw] { overflow-x: auto; }
.table-wrap.inner[b-39uj7orepw] { max-height: 420px; overflow-y: auto; }

.trail-table[b-39uj7orepw], .mini-table[b-39uj7orepw] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.trail-table th[b-39uj7orepw], .mini-table th[b-39uj7orepw] {
    text-align: left;
    padding: 8px 10px;
    color: #8b95a3;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    border-bottom: 1px solid #232a34;
    white-space: nowrap;
    position: sticky;
    top: 0;
    background: #10151c;
}

.trail-table td[b-39uj7orepw], .mini-table td[b-39uj7orepw] {
    padding: 8px 10px;
    border-bottom: 1px solid #1b212a;
    white-space: nowrap;
}

.trail-table .num[b-39uj7orepw], .mini-table .num[b-39uj7orepw] { text-align: right; font-variant-numeric: tabular-nums; }

.pos-row[b-39uj7orepw] { cursor: pointer; transition: background 0.15s ease; }
.pos-row:hover[b-39uj7orepw] { background: #161d26; }
.pos-row.expanded[b-39uj7orepw] { background: #17202b; }
.pos-row.has-error[b-39uj7orepw] { box-shadow: inset 3px 0 0 #d1434b; }
.pos-row.has-warn[b-39uj7orepw] { box-shadow: inset 3px 0 0 #b58900; }

.sym[b-39uj7orepw] {
    font-weight: 700;
    color: #fff;
    font-family: 'JetBrains Mono', Consolas, monospace;
}

.caret[b-39uj7orepw] { color: #6b7480; margin-right: 4px; font-size: 10px; }

.flag-dot[b-39uj7orepw] {
    display: inline-block;
    margin-left: 6px;
    min-width: 15px;
    height: 15px;
    line-height: 15px;
    text-align: center;
    border-radius: 8px;
    background: #3d1a1d;
    color: #f0a5a9;
    font-size: 9px;
    font-weight: 700;
}

.dir[b-39uj7orepw] {
    display: inline-block;
    width: 17px;
    height: 17px;
    line-height: 17px;
    text-align: center;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 700;
}

.dir-long[b-39uj7orepw] { background: #10331f; color: #46d18b; }
.dir-short[b-39uj7orepw] { background: #3a1a1a; color: #ff9b9b; }

.trail-badge[b-39uj7orepw] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 7px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.trail-badge.armed[b-39uj7orepw] { background: #10331f; color: #46d18b; }
.trail-badge.idle[b-39uj7orepw] { background: #21262d; color: #6b7480; }
.trail-badge.sm[b-39uj7orepw] { font-size: 10px; padding: 1px 5px; }

.rule[b-39uj7orepw] { color: #b6c0cc; }

/* Detail */
.detail-row td[b-39uj7orepw] { background: #0c1117; padding: 0; }

.detail[b-39uj7orepw] {
    padding: 16px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.detail-block[b-39uj7orepw] { }

.detail-title[b-39uj7orepw] {
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.detail-sub[b-39uj7orepw] { font-size: 10px; color: #6b7480; font-weight: 400; text-transform: none; letter-spacing: 0; }
.detail-text[b-39uj7orepw] { margin: 0 0 10px; color: #9aa4b2; line-height: 1.55; max-width: 900px; }
.detail-note[b-39uj7orepw] { margin: 8px 0 0; color: #6b7480; font-size: 11px; line-height: 1.5; max-width: 900px; }

/* Exit callout — the "when does this fire" answer, up front */
.exit-callout[b-39uj7orepw] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px;
    background: #131922;
    border: 1px solid #232a34;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 10px;
}

.exit-cell[b-39uj7orepw] { display: flex; flex-direction: column; gap: 2px; }
.exit-cell span[b-39uj7orepw] { font-size: 10px; color: #6b7480; text-transform: uppercase; letter-spacing: 0.4px; }
.exit-cell strong.big[b-39uj7orepw] { font-size: 17px; font-weight: 700; color: #fff; font-variant-numeric: tabular-nums; }
.exit-cell em[b-39uj7orepw] { font-style: normal; font-size: 11px; color: #8b95a3; }
.exit-cell strong.big em[b-39uj7orepw] { font-size: 12px; color: #8b95a3; margin-left: 3px; }

.kv-grid[b-39uj7orepw] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 8px 16px;
}

.kv[b-39uj7orepw] { display: flex; flex-direction: column; gap: 1px; }
.kv span[b-39uj7orepw] { font-size: 10px; color: #6b7480; text-transform: uppercase; letter-spacing: 0.4px; }
.kv strong[b-39uj7orepw] { color: #e6e6e6; font-weight: 600; font-size: 12px; }

/* Changes */
.changes[b-39uj7orepw] { display: flex; flex-direction: column; gap: 3px; }

.change[b-39uj7orepw] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 5px 10px;
    background: #131922;
    border-radius: 5px;
    border-left: 2px solid #2b313a;
}

.change-date[b-39uj7orepw] {
    color: #6b7480;
    font-size: 11px;
    min-width: 48px;
    font-variant-numeric: tabular-nums;
}

.change-icon[b-39uj7orepw] { width: 14px; text-align: center; font-size: 11px; }
.change-desc[b-39uj7orepw] { color: #b6c0cc; }

.change.kind-peakadvanced[b-39uj7orepw] { border-left-color: #2ea043; }
.change.kind-peakadvanced .change-icon[b-39uj7orepw] { color: #46d18b; }
.change.kind-armed[b-39uj7orepw] { border-left-color: #2f6feb; }
.change.kind-armed .change-desc[b-39uj7orepw] { color: #90b8f0; font-weight: 600; }
.change.kind-ladderstep[b-39uj7orepw] { border-left-color: #b58900; }
.change.kind-ladderstep .change-icon[b-39uj7orepw] { color: #e0c46a; }
.change.kind-trailtouched[b-39uj7orepw] { border-left-color: #d1434b; }
.change.kind-trailtouched .change-desc[b-39uj7orepw] { color: #f0a5a9; }

.mini-table tr.touched[b-39uj7orepw] { background: #1d1417; }

/* Rules explainer */
.rules[b-39uj7orepw] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 12px;
}

.rule-item[b-39uj7orepw] {
    background: #161b22;
    border: 1px solid #232a34;
    border-radius: 8px;
    padding: 12px 14px;
}

.rule-h[b-39uj7orepw] { font-weight: 700; color: #fff; margin-bottom: 5px; font-size: 12px; }
.rule-item p[b-39uj7orepw] { margin: 0; color: #9aa4b2; line-height: 1.55; }
.rule-item strong[b-39uj7orepw] { color: #d6dde5; }
/* /Components/Pages/Watchlist.razor.rz.scp.css */
/* ===================================
   Watchlist page - mirrors the chart drawer's watchlist,
   laid out for a full page and phone-first.
   =================================== */

.watchlist-page[b-oxbt2r8aba] {
    max-width: 860px;
    margin: 0 auto;
}

/* ── Header ─────────────────────────────────────────────── */
.page-header[b-oxbt2r8aba] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--space-4);
    margin-bottom: var(--space-5);
}

.page-header h1[b-oxbt2r8aba] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    font-size: var(--text-2xl);
    margin-bottom: var(--space-1);
}

.page-header h1 svg[b-oxbt2r8aba] {
    color: var(--primary);
}

.subtitle[b-oxbt2r8aba] {
    color: var(--text-secondary);
    font-size: var(--text-sm);
    margin: 0;
}

.usage-block[b-oxbt2r8aba] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    flex-shrink: 0;
    min-width: 108px;
}

.usage-badge[b-oxbt2r8aba] {
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    padding: 3px 10px;
    border-radius: 999px;
    border: 1px solid rgba(19, 223, 255, 0.25);
    background: rgba(19, 223, 255, 0.08);
    font-family: var(--font-mono, monospace);
    font-size: var(--text-xs);
    color: var(--primary);
}

.usage-badge.at-limit[b-oxbt2r8aba] {
    border-color: rgba(245, 158, 11, 0.35);
    background: rgba(245, 158, 11, 0.1);
    color: #f59e0b;
}

.usage-count[b-oxbt2r8aba] {
    font-weight: 700;
}

.usage-sep[b-oxbt2r8aba],
.usage-limit[b-oxbt2r8aba] {
    opacity: 0.65;
}

.usage-bar[b-oxbt2r8aba] {
    width: 100%;
    height: 3px;
    border-radius: 2px;
    background: rgba(255, 255, 255, 0.07);
    overflow: hidden;
}

.usage-fill[b-oxbt2r8aba] {
    height: 100%;
    border-radius: 2px;
    background: linear-gradient(90deg, var(--primary) 0%, #1a8cff 100%);
    transition: width 200ms ease;
}

.usage-fill.warning[b-oxbt2r8aba] {
    background: linear-gradient(90deg, #f59e0b 0%, #f97316 100%);
}

.usage-fill.full[b-oxbt2r8aba] {
    background: linear-gradient(90deg, #ef4444 0%, #f97316 100%);
}

/* ── Add symbol ─────────────────────────────────────────── */
.add-row[b-oxbt2r8aba] {
    display: flex;
    gap: 8px;
    margin-bottom: var(--space-3);
}

.add-input-wrap[b-oxbt2r8aba] {
    position: relative;
    flex: 1;
    min-width: 0;
}

.add-icon[b-oxbt2r8aba] {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    pointer-events: none;
}

.add-input[b-oxbt2r8aba] {
    width: 100%;
    height: 44px;
    padding: 0 12px 0 36px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--bg-glass, rgba(255, 255, 255, 0.03));
    color: var(--text-primary);
    font-size: var(--text-sm);
    text-transform: uppercase;
}

.add-input[b-oxbt2r8aba]::placeholder {
    color: var(--text-muted);
    text-transform: none;
}

.add-input:focus[b-oxbt2r8aba] {
    outline: none;
    border-color: rgba(19, 223, 255, 0.45);
    box-shadow: 0 0 0 3px rgba(19, 223, 255, 0.1);
}

.add-input:disabled[b-oxbt2r8aba] {
    opacity: 0.55;
}

.add-btn[b-oxbt2r8aba] {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(19, 223, 255, 0.3);
    border-radius: 12px;
    background: rgba(19, 223, 255, 0.12);
    color: var(--primary);
    cursor: pointer;
    transition: background 120ms ease, border-color 120ms ease;
}

.add-btn:hover:not(:disabled)[b-oxbt2r8aba] {
    background: rgba(19, 223, 255, 0.2);
    border-color: rgba(19, 223, 255, 0.5);
}

.add-btn:disabled[b-oxbt2r8aba] {
    opacity: 0.4;
    cursor: not-allowed;
}

.upgrade-hint[b-oxbt2r8aba] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: var(--space-3);
    font-size: var(--text-xs);
    color: #f59e0b;
    text-decoration: none;
}

.upgrade-hint:hover[b-oxbt2r8aba] {
    text-decoration: underline;
}

.wl-error[b-oxbt2r8aba] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 9px 12px;
    margin-bottom: var(--space-3);
    border: 1px solid rgba(239, 68, 68, 0.3);
    border-radius: 10px;
    background: rgba(239, 68, 68, 0.08);
    color: #f87171;
    font-size: var(--text-xs);
}

/* ── Rows ───────────────────────────────────────────────── */
.wl-list[b-oxbt2r8aba] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.wl-row[b-oxbt2r8aba] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 54px;
    padding: 8px 10px 8px 12px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--bg-gradient-card, rgba(255, 255, 255, 0.02));
    overflow: hidden;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: border-color 120ms ease, background 120ms ease;
}

.wl-row:hover[b-oxbt2r8aba] {
    border-color: rgba(19, 223, 255, 0.28);
    background: rgba(19, 223, 255, 0.04);
}

.wl-row:active[b-oxbt2r8aba] {
    transform: scale(0.995);
}

/* Logo is a faded watermark centred in the row, behind the text */
.wl-logo[b-oxbt2r8aba] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    object-fit: contain;
    opacity: 0.12;
    pointer-events: none;
    filter: grayscale(0.25);
    z-index: 0;
}

.wl-logo-ph[b-oxbt2r8aba] {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-muted);
    font-weight: 800;
    font-size: 22px;
}

.wl-left[b-oxbt2r8aba] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    z-index: 1;
}

.wl-ticker[b-oxbt2r8aba] {
    font-family: var(--font-mono, monospace);
    font-size: 17px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0.02em;
    color: var(--text-primary);
}

.wl-name[b-oxbt2r8aba] {
    font-size: 11px;
    line-height: 1.2;
    color: var(--text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wl-right[b-oxbt2r8aba] {
    display: flex;
    align-items: center;
    gap: 2px;
    flex-shrink: 0;
    z-index: 1;
}

/* Ticker with the day's % beside it */
.wl-ticker-row[b-oxbt2r8aba] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    min-width: 0;
}

.wl-day-pct[b-oxbt2r8aba] {
    font-family: var(--font-mono, monospace);
    font-size: 12px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* Live price over the day's $ change */
.wl-price[b-oxbt2r8aba] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    text-align: right;
    font-family: var(--font-mono, monospace);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.wl-last[b-oxbt2r8aba] {
    font-size: 17px;
    font-weight: 700;
    line-height: 1.15;
    color: var(--text-bright, #ffffff);
    transition: color 0.3s ease;
}

.wl-last.loading[b-oxbt2r8aba] { color: var(--text-muted); }

/* The last tick's direction */
.wl-last.tick-up[b-oxbt2r8aba] { color: var(--success-bright, #96f8bf); }
.wl-last.tick-down[b-oxbt2r8aba] { color: var(--error-bright, #ff7575); }

.wl-day-amt[b-oxbt2r8aba] {
    font-size: 11px;
    font-weight: 600;
    line-height: 1.2;
}

.wl-day-pct.up[b-oxbt2r8aba], .wl-day-amt.up[b-oxbt2r8aba] { color: var(--success-bright, #96f8bf); }
.wl-day-pct.down[b-oxbt2r8aba], .wl-day-amt.down[b-oxbt2r8aba] { color: var(--error-bright, #ff7575); }
.wl-day-pct.flat[b-oxbt2r8aba], .wl-day-amt.flat[b-oxbt2r8aba] { color: var(--text-muted); }

.wl-remove[b-oxbt2r8aba] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: none;
    border-radius: 8px;
    background: transparent;
    color: var(--text-muted);
    opacity: 0.5;
    cursor: pointer;
    transition: color 120ms ease, background 120ms ease, opacity 120ms ease;
}

.wl-remove:hover[b-oxbt2r8aba] {
    background: rgba(239, 68, 68, 0.12);
    color: #f87171;
    opacity: 1;
}

.list-footer[b-oxbt2r8aba] {
    margin: var(--space-4) 0 0;
    text-align: center;
    font-size: var(--text-xs);
    color: var(--text-muted);
}

/* ── Loading skeleton ───────────────────────────────────── */
.wl-row.skeleton[b-oxbt2r8aba] {
    cursor: default;
    pointer-events: none;
}

.skeleton-block[b-oxbt2r8aba] {
    height: 14px;
    border-radius: 4px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.04) 25%, rgba(255, 255, 255, 0.09) 50%, rgba(255, 255, 255, 0.04) 75%);
    background-size: 200% 100%;
    animation: wl-shimmer-b-oxbt2r8aba 1.4s ease-in-out infinite;
}

.skeleton-block.wide[b-oxbt2r8aba] {
    width: 38%;
}

.skeleton-block.narrow[b-oxbt2r8aba] {
    width: 22%;
}

@keyframes wl-shimmer-b-oxbt2r8aba {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* ── Empty state ────────────────────────────────────────── */
.empty-state[b-oxbt2r8aba] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: var(--space-12) var(--space-4);
    background: var(--bg-gradient-card);
    border: 1px solid var(--border);
    border-radius: var(--radius-xl);
}

.empty-icon[b-oxbt2r8aba] {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-glass-light);
    border-radius: 50%;
    margin-bottom: var(--space-4);
    color: var(--text-muted);
}

.empty-state h3[b-oxbt2r8aba] {
    font-size: var(--text-xl);
    margin-bottom: var(--space-2);
}

.empty-state p[b-oxbt2r8aba] {
    color: var(--text-secondary);
    max-width: 400px;
    margin-bottom: var(--space-6);
}

.empty-actions[b-oxbt2r8aba] {
    display: flex;
    gap: var(--space-3);
}

/* ═══════════════════════════════════════════════════════════
   MOBILE APP SHELL (max-width 900px)
   ═══════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
    .page-header[b-oxbt2r8aba] {
        flex-direction: row;
        align-items: center;
        margin-bottom: var(--space-4);
        gap: var(--space-3);
    }

    .page-header h1[b-oxbt2r8aba] {
        font-size: var(--text-xl);
        gap: var(--space-2);
    }

    .page-header h1 svg[b-oxbt2r8aba] {
        width: 20px;
        height: 20px;
    }

    .subtitle[b-oxbt2r8aba] {
        display: none;
    }

    .usage-block[b-oxbt2r8aba] {
        min-width: 84px;
    }

    /* Add row sticks just under the fixed app header so it stays reachable */
    .add-row[b-oxbt2r8aba] {
        position: sticky;
        top: calc(52px + env(safe-area-inset-top, 0px));
        z-index: 5;
        padding: 6px 0;
        background: var(--bg-base, #06080c);
    }

    .wl-list[b-oxbt2r8aba] {
        gap: 5px;
    }

    .wl-row[b-oxbt2r8aba] {
        min-height: 52px;
        padding: 7px 6px 7px 11px;
        border-radius: 10px;
    }

    .wl-logo[b-oxbt2r8aba] {
        width: 38px;
        height: 38px;
    }

    .wl-ticker[b-oxbt2r8aba] {
        font-size: 16px;
    }

    .wl-name[b-oxbt2r8aba] {
        max-width: 40vw;
    }

    .wl-last[b-oxbt2r8aba] {
        font-size: 16px;
    }

    .wl-remove[b-oxbt2r8aba] {
        width: 30px;
        height: 30px;
    }

    .empty-state[b-oxbt2r8aba] {
        padding: var(--space-8) var(--space-4);
        border-radius: var(--radius-lg);
    }

    .empty-icon[b-oxbt2r8aba] {
        width: 64px;
        height: 64px;
    }

    .empty-state h3[b-oxbt2r8aba] {
        font-size: var(--text-lg);
    }

    .empty-state p[b-oxbt2r8aba] {
        font-size: var(--text-sm);
        margin-bottom: var(--space-4);
    }

    /* Full-width stacked actions - easier thumb targets */
    .empty-actions[b-oxbt2r8aba] {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        max-width: 320px;
        gap: var(--space-2);
    }

    .empty-actions .btn[b-oxbt2r8aba] {
        justify-content: center;
        min-height: 44px;
    }
}
/* /Components/Screener/TechScreenerIndicatorDrawer.razor.rz.scp.css */
.indicator-drawer-overlay[b-23zrfqecex] {
    position: fixed;
    /* Start below the fixed app header so the drawer header isn't clipped by it. */
    top: var(--header-height, 52px);
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
    backdrop-filter: blur(2px);
}

.indicator-drawer[b-23zrfqecex] {
    position: fixed;
    top: var(--header-height, 52px);
    right: 0;
    width: 400px;
    max-width: 90vw;
    height: calc(100vh - var(--header-height, 52px));
    background: #161b22;
    border-left: 1px solid #30363d;
    z-index: 1000;
    display: flex;
    flex-direction: column;
    animation: slideIn-b-23zrfqecex 0.2s ease-out;
}

@keyframes slideIn-b-23zrfqecex {
    from { transform: translateX(100%); }
    to { transform: translateX(0); }
}

.drawer-header[b-23zrfqecex] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #30363d;
    background: #0d1117;
}

.header-left[b-23zrfqecex] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.company-logo[b-23zrfqecex] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    object-fit: contain;
    background: #21262d;
}

.logo-placeholder[b-23zrfqecex] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: linear-gradient(135deg, #58a6ff, #a371f7);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: white;
    font-size: 1.25rem;
}

.header-info h2[b-23zrfqecex] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: #e6edf3;
}

.header-info .price[b-23zrfqecex] {
    font-size: 1rem;
    color: #8b949e;
    margin-left: 0.5rem;
}

.header-info .company-name[b-23zrfqecex] {
    display: block;
    font-size: 0.75rem;
    color: #6e7681;
    margin-top: 0.125rem;
}

.close-btn[b-23zrfqecex] {
    background: none;
    border: none;
    color: #8b949e;
    font-size: 1.5rem;
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
}

.close-btn:hover[b-23zrfqecex] {
    color: #e6edf3;
}

.reversal-summary[b-23zrfqecex] {
    padding: 1rem 1.25rem;
    background: #0d1117;
    border-bottom: 1px solid #30363d;
}

.summary-row[b-23zrfqecex] {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.summary-row:last-child[b-23zrfqecex] {
    margin-bottom: 0;
}

.summary-item[b-23zrfqecex] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.summary-label[b-23zrfqecex] {
    font-size: 0.7rem;
    color: #6e7681;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.summary-value[b-23zrfqecex] {
    font-size: 0.9rem;
    font-weight: 600;
    color: #e6edf3;
}

.summary-value.high[b-23zrfqecex] { color: #3fb950; }
.summary-value.medium[b-23zrfqecex] { color: #d29922; }
.summary-value.low[b-23zrfqecex] { color: #8b949e; }
.summary-value.bullish[b-23zrfqecex] { color: #3fb950; }
.summary-value.bearish[b-23zrfqecex] { color: #f85149; }
.summary-value.neutral[b-23zrfqecex] { color: #8b949e; }

.indicator-sections[b-23zrfqecex] {
    flex: 1;
    overflow-y: auto;
    padding: 0.5rem 0;
}

.indicator-section[b-23zrfqecex] {
    border-bottom: 1px solid #21262d;
}

.section-header[b-23zrfqecex] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: none;
    border: none;
    color: #e6edf3;
    cursor: pointer;
    text-align: left;
    transition: background 0.15s ease;
}

.section-header:hover[b-23zrfqecex] {
    background: #21262d;
}

.section-title[b-23zrfqecex] {
    flex: 1;
    font-size: 0.85rem;
    font-weight: 500;
}

.section-count[b-23zrfqecex] {
    font-size: 0.75rem;
    color: #8b949e;
}

.toggle-icon[b-23zrfqecex] {
    width: 16px;
    text-align: center;
    color: #6e7681;
}

.section-content[b-23zrfqecex] {
    padding: 0 1.25rem 0.75rem;
}

.indicator-row[b-23zrfqecex] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid #21262d;
}

.indicator-row:last-child[b-23zrfqecex] {
    border-bottom: none;
}

.ind-name[b-23zrfqecex] {
    width: 90px;
    font-size: 0.8rem;
    color: #8b949e;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ind-bar[b-23zrfqecex] {
    flex: 1;
    min-width: 60px;
}

.bar-track[b-23zrfqecex] {
    height: 6px;
    background: #21262d;
    border-radius: 3px;
    overflow: hidden;
}

.bar-fill[b-23zrfqecex] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.bar-fill.bullish[b-23zrfqecex] { background: linear-gradient(90deg, #238636, #3fb950); }
.bar-fill.bearish[b-23zrfqecex] { background: linear-gradient(90deg, #da3633, #f85149); }
.bar-fill.neutral[b-23zrfqecex] { background: linear-gradient(90deg, #30363d, #484f58); }

.ind-value[b-23zrfqecex] {
    width: 50px;
    text-align: right;
    font-size: 0.8rem;
    font-weight: 500;
    color: #e6edf3;
    font-family: 'SF Mono', Consolas, monospace;
}

.ind-signal[b-23zrfqecex] {
    width: 40px;
    text-align: center;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.35rem;
    border-radius: 4px;
}

.ind-signal.bullish[b-23zrfqecex] {
    background: rgba(63, 185, 80, 0.15);
    color: #3fb950;
}

.ind-signal.bearish[b-23zrfqecex] {
    background: rgba(248, 81, 73, 0.15);
    color: #f85149;
}

.ind-signal.neutral[b-23zrfqecex] {
    background: rgba(139, 148, 158, 0.1);
    color: #6e7681;
}

.drawer-footer[b-23zrfqecex] {
    padding: 1rem 1.25rem;
    border-top: 1px solid #30363d;
    background: #0d1117;
}

.view-chart-btn[b-23zrfqecex] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.75rem;
    background: linear-gradient(135deg, #238636, #2ea043);
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.view-chart-btn:hover[b-23zrfqecex] {
    background: linear-gradient(135deg, #2ea043, #3fb950);
    transform: translateY(-1px);
}

/* Dark scrollbar */
.indicator-sections[b-23zrfqecex]::-webkit-scrollbar {
    width: 6px;
}

.indicator-sections[b-23zrfqecex]::-webkit-scrollbar-track {
    background: #0d1117;
}

.indicator-sections[b-23zrfqecex]::-webkit-scrollbar-thumb {
    background: #30363d;
    border-radius: 3px;
}

.indicator-sections[b-23zrfqecex]::-webkit-scrollbar-thumb:hover {
    background: #484f58;
}
/* /Components/Shared/AccountGrowthChart.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════
   ACCOUNT GROWTH CHART — admin-only equity vs. cash-in view.
   Series colors were validated against #0c1117 (dataviz rules):
   teal #00a1ba (account value) · blue #3987e5 (money added)
   ═══════════════════════════════════════════════════════════ */

.agc-root[b-548375mb8a] {
    --agc-equity: #00a1ba;
    --agc-equity-bright: #13dfff;
    --agc-added: #3987e5;
    --agc-loss: #ff5757;
    --agc-surface: #0c1117;
    --agc-border: #1f2732;
    --agc-ink: #f0f4f8;
    --agc-ink-2: #94a3b8;
    --agc-ink-3: #64748b;
    font-family: var(--font-sans, 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif);
    color: var(--agc-ink);
}

.agc-card[b-548375mb8a] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 18px 20px 16px;
    background: linear-gradient(180deg, #0f151d 0%, #0c1117 100%);
    border: 1px solid var(--agc-border);
    border-radius: 14px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
    overflow: hidden;
}

.agc-card[b-548375mb8a]::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(19, 223, 255, 0.5), transparent);
    pointer-events: none;
}

/* ── header ─────────────────────────────────────────────── */
.agc-head[b-548375mb8a] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

.agc-title[b-548375mb8a] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.agc-title-icon[b-548375mb8a] {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    color: var(--agc-equity-bright);
    background: rgba(19, 223, 255, 0.1);
    border: 1px solid rgba(19, 223, 255, 0.25);
    flex: none;
}

.agc-title h2[b-548375mb8a] {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #fff;
}

.agc-sub[b-548375mb8a] {
    margin: 2px 0 0;
    font-size: 12px;
    color: var(--agc-ink-2);
}

.agc-controls[b-548375mb8a] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.agc-seg[b-548375mb8a] {
    display: flex;
    gap: 2px;
    padding: 3px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.agc-seg button[b-548375mb8a] {
    border: 0;
    background: transparent;
    color: var(--agc-ink-2);
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    font-family: inherit;
    padding: 7px 10px;
    border-radius: 6px;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s;
}

.agc-seg button:hover[b-548375mb8a] {
    background: rgba(255, 255, 255, 0.07);
    color: var(--agc-ink);
}

.agc-seg button.on[b-548375mb8a] {
    background: rgba(19, 223, 255, 0.16);
    color: var(--agc-equity-bright);
    box-shadow: inset 0 0 0 1px rgba(19, 223, 255, 0.35);
}

.agc-icon-btn[b-548375mb8a] {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--agc-ink-2);
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.agc-icon-btn:hover[b-548375mb8a] {
    color: #fff;
    background: rgba(255, 255, 255, 0.09);
}

.agc-icon-btn:disabled[b-548375mb8a] {
    opacity: 0.5;
    cursor: default;
}

.agc-icon-btn.spin svg[b-548375mb8a] {
    animation: agc-spin-b-548375mb8a 0.9s linear infinite;
}

/* ── stat tiles ─────────────────────────────────────────── */
.agc-tiles[b-548375mb8a] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.agc-tile[b-548375mb8a] {
    min-width: 0;
    padding: 12px 14px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.025);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.agc-tile-hero[b-548375mb8a] {
    background: linear-gradient(135deg, rgba(19, 223, 255, 0.08), rgba(19, 223, 255, 0.02));
    border-color: rgba(19, 223, 255, 0.2);
}

.agc-tile-label[b-548375mb8a] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--agc-ink-3);
}

.agc-key-dot[b-548375mb8a] {
    width: 8px;
    height: 8px;
    border-radius: 2px;
    display: inline-block;
    background: var(--k);
    flex: none;
}

.agc-tile-value[b-548375mb8a] {
    margin-top: 4px;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.agc-tile-sub[b-548375mb8a] {
    margin-top: 2px;
    font-size: 12px;
    color: var(--agc-ink-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.agc-up[b-548375mb8a] { color: var(--agc-equity-bright); }
.agc-down[b-548375mb8a] { color: var(--agc-loss); }

/* ── plot ───────────────────────────────────────────────── */
.agc-plot-wrap[b-548375mb8a] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.agc-legend[b-548375mb8a] {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 8px;
    font-size: 12px;
    color: var(--agc-ink-2);
}

.agc-legend span[b-548375mb8a] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.agc-key-line[b-548375mb8a] {
    width: 18px;
    height: 2px;
    border-radius: 1px;
    background: var(--k);
}

.agc-key-line.dash[b-548375mb8a] {
    background: repeating-linear-gradient(90deg, var(--k) 0 5px, transparent 5px 9px);
}

.agc-key-fill[b-548375mb8a] {
    width: 14px;
    height: 10px;
    border-radius: 2px;
    background: var(--k);
}

.agc-key-tri[b-548375mb8a] {
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 9px solid var(--agc-added);
}

.agc-key-tri.down[b-548375mb8a] {
    transform: rotate(180deg);
}

.agc-plot[b-548375mb8a] {
    position: relative;
    height: 320px;
    transition: opacity 0.2s;
}

.agc-plot-wrap.is-loading .agc-plot[b-548375mb8a] {
    opacity: 0.45;
}

.agc-plot canvas[b-548375mb8a] {
    width: 100% !important;
    height: 100% !important;
}

.agc-overlay[b-548375mb8a] {
    position: absolute;
    inset: 28px 0 0 0;
    display: grid;
    place-items: center;
    text-align: center;
    font-size: 13px;
    color: var(--agc-ink-2);
    pointer-events: none;
}

.agc-overlay-box[b-548375mb8a] {
    pointer-events: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 14px 18px;
    border-radius: 10px;
    background: rgba(12, 17, 23, 0.88);
    border: 1px solid rgba(255, 255, 255, 0.08);
    max-width: 420px;
}

.agc-overlay-box.agc-error strong[b-548375mb8a] {
    color: var(--agc-loss);
}

.agc-overlay-box.agc-error span[b-548375mb8a] {
    font-size: 12px;
    color: var(--agc-ink-2);
    word-break: break-word;
}

.agc-retry[b-548375mb8a] {
    margin-top: 4px;
    padding: 6px 12px;
    border-radius: 6px;
    border: 1px solid rgba(19, 223, 255, 0.35);
    background: rgba(19, 223, 255, 0.1);
    color: var(--agc-equity-bright);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}

.agc-spinner[b-548375mb8a] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.12);
    border-top-color: var(--agc-equity-bright);
    animation: agc-spin-b-548375mb8a 0.8s linear infinite;
}

/* Tooltip is created by JS, so it lives outside the scope attribute. */
.agc-plot[b-548375mb8a]  .agc-tip {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 5;
    min-width: 190px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(10, 14, 20, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
    font-size: 12px;
    color: #94a3b8;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s;
}

.agc-plot[b-548375mb8a]  .agc-tip.show {
    opacity: 1;
}

.agc-plot[b-548375mb8a]  .agc-tip-date {
    margin-bottom: 6px;
    font-weight: 600;
    color: #f0f4f8;
}

.agc-plot[b-548375mb8a]  .agc-tip-row {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 2px 0;
}

.agc-plot[b-548375mb8a]  .agc-tip-key {
    width: 14px;
    height: 2px;
    flex: none;
    border-radius: 1px;
}

.agc-plot[b-548375mb8a]  .agc-tip-key.dash {
    background: repeating-linear-gradient(90deg, var(--k) 0 4px, transparent 4px 7px) !important;
}

.agc-plot[b-548375mb8a]  .agc-tip-val {
    color: #fff;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.agc-plot[b-548375mb8a]  .agc-tip-lbl {
    margin-left: auto;
    padding-left: 10px;
    color: #64748b;
}

.agc-plot[b-548375mb8a]  .agc-tip-ev {
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    color: #9db7f5;
    white-space: nowrap;
}

/* ── table view ─────────────────────────────────────────── */
.agc-table summary[b-548375mb8a] {
    cursor: pointer;
    font-size: 12px;
    font-weight: 600;
    color: var(--agc-ink-2);
    user-select: none;
}

.agc-table summary:hover[b-548375mb8a] {
    color: var(--agc-ink);
}

.agc-table-scroll[b-548375mb8a] {
    margin-top: 10px;
    max-height: 320px;
    overflow: auto;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 8px;
}

.agc-table table[b-548375mb8a] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.agc-table th[b-548375mb8a],
.agc-table td[b-548375mb8a] {
    padding: 7px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    text-align: left;
    white-space: nowrap;
}

.agc-table th[b-548375mb8a] {
    position: sticky;
    top: 0;
    background: #10161e;
    color: var(--agc-ink-3);
    font-weight: 600;
    font-size: 11px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.agc-table th.num[b-548375mb8a],
.agc-table td.num[b-548375mb8a] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.agc-table td[b-548375mb8a] {
    color: var(--agc-ink);
}

.agc-ev[b-548375mb8a] {
    display: inline-block;
    margin-right: 8px;
    color: #9db7f5;
}

.agc-table-note[b-548375mb8a] {
    margin: 8px 0 0;
    font-size: 11px;
    color: var(--agc-ink-3);
}

/* ── full screen ────────────────────────────────────────── */
.agc-root.agc-fullscreen[b-548375mb8a] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    padding: 16px;
    background: rgba(4, 7, 12, 0.86);
    backdrop-filter: blur(6px);
    animation: agc-fade-b-548375mb8a 0.18s ease-out;
}

.agc-root.agc-fullscreen .agc-card[b-548375mb8a] {
    height: 100%;
    overflow: auto;
    border-radius: 12px;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}

.agc-root.agc-fullscreen .agc-plot-wrap[b-548375mb8a] {
    flex: 1 1 auto;
}

.agc-root.agc-fullscreen .agc-plot[b-548375mb8a] {
    flex: 1 1 auto;
    height: auto;
    min-height: 260px;
}

.agc-root.agc-fullscreen .agc-tile-value[b-548375mb8a] {
    font-size: 26px;
}

@keyframes agc-spin-b-548375mb8a {
    to { transform: rotate(360deg); }
}

@keyframes agc-fade-b-548375mb8a {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* ── responsive ─────────────────────────────────────────── */
@media (max-width: 1100px) {
    .agc-tiles[b-548375mb8a] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .agc-card[b-548375mb8a] {
        padding: 14px 14px 12px;
    }

    .agc-controls[b-548375mb8a] {
        width: 100%;
    }

    .agc-ranges[b-548375mb8a] {
        flex: 1 1 100%;
        overflow-x: auto;
    }

    .agc-ranges button[b-548375mb8a] {
        flex: 1 0 auto;
        padding: 7px 8px;
    }

    .agc-plot[b-548375mb8a] {
        height: 240px;
    }

    .agc-tile-value[b-548375mb8a] {
        font-size: 19px;
    }

    .agc-root.agc-fullscreen[b-548375mb8a] {
        padding: 8px;
    }
}
/* /Components/Shared/DirectionIcon.razor.rz.scp.css */
/* DirectionIcon Component Styles */

.direction-icon[b-hzpz8i5je5] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    vertical-align: middle;
}

.direction-img[b-hzpz8i5je5] {
    object-fit: contain;
    flex-shrink: 0;
}

.direction-emoji[b-hzpz8i5je5] {
    line-height: 1;
}

/* Size variants */
.size-xs .direction-img[b-hzpz8i5je5],
.size-xs .direction-emoji[b-hzpz8i5je5] {
    width: 12px;
    height: 12px;
    font-size: 12px;
}

.size-small .direction-img[b-hzpz8i5je5],
.size-small .direction-emoji[b-hzpz8i5je5] {
    width: 16px;
    height: 16px;
    font-size: 16px;
}

.size-medium .direction-img[b-hzpz8i5je5],
.size-medium .direction-emoji[b-hzpz8i5je5] {
    width: 24px;
    height: 24px;
    font-size: 24px;
}

.size-large .direction-img[b-hzpz8i5je5],
.size-large .direction-emoji[b-hzpz8i5je5] {
    width: 32px;
    height: 32px;
    font-size: 32px;
}

.size-xl .direction-img[b-hzpz8i5je5],
.size-xl .direction-emoji[b-hzpz8i5je5] {
    width: 48px;
    height: 48px;
    font-size: 48px;
}

/* Labels */
.direction-label[b-hzpz8i5je5] {
    font-weight: 600;
    font-size: 0.85em;
}

.bull .direction-label[b-hzpz8i5je5] {
    color: var(--market-bull, #3fb950);
}

.bear .direction-label[b-hzpz8i5je5] {
    color: var(--market-bear, #f85149);
}

.neutral .direction-label[b-hzpz8i5je5] {
    color: var(--text-secondary, #8b949e);
}

/* Direction-specific styling */
.direction-icon.bull[b-hzpz8i5je5] {
    filter: drop-shadow(0 0 2px rgba(63, 185, 80, 0.3));
}

.direction-icon.bear[b-hzpz8i5je5] {
    filter: drop-shadow(0 0 2px rgba(248, 81, 73, 0.3));
}

/* Hover effects */
.direction-icon:hover .direction-img[b-hzpz8i5je5] {
    transform: scale(1.05);
    transition: transform 0.15s ease;
}
/* /Components/Shared/SupportBadge.razor.rz.scp.css */
.support-count[b-ctawscq7g6] {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 16px; height: 16px; padding: 0 5px; box-sizing: border-box;
    border-radius: 8px; background: #13dfff; color: #06080c;
    font-size: 10px; font-weight: 800; line-height: 1; flex-shrink: 0;
}
.support-count.staff[b-ctawscq7g6] { background: #ffb547; }
.support-count.end[b-ctawscq7g6] { margin-left: auto; }
.support-count.corner[b-ctawscq7g6] { position: absolute; top: 5px; right: 5px; }

.support-dot[b-ctawscq7g6] {
    position: absolute; top: -2px; right: -2px;
    width: 10px; height: 10px; border-radius: 50%;
    background: #ff5c5c; box-shadow: 0 0 0 2px #0a0e14;
    pointer-events: none;
}
/* /Components/Shared/SupportDropZone.razor.rz.scp.css */
.drop-zone[b-nmqqevbuvm] { position: relative; display: flex; flex-direction: column; gap: 10px; }

.attach-bar[b-nmqqevbuvm] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.attach-btn[b-nmqqevbuvm] {
    position: relative;
    display: inline-flex; align-items: center; gap: 6px;
    padding: 6px 12px; border-radius: 8px; border: 1px dashed #3a424d;
    color: #cbd5e1; font-size: 13px; font-weight: 600; cursor: pointer; user-select: none;
}
.attach-btn:hover[b-nmqqevbuvm] { border-color: rgba(19, 223, 255, 0.6); color: #13dfff; }
.attach-btn:focus-within[b-nmqqevbuvm] { box-shadow: 0 0 0 3px rgba(19, 223, 255, 0.2); }
.attach-btn.disabled[b-nmqqevbuvm] { opacity: .5; cursor: default; pointer-events: none; }
.attach-btn svg[b-nmqqevbuvm] { width: 15px; height: 15px; }
/* Visually hidden but still focusable, so the picker opens from the keyboard too */
.attach-btn[b-nmqqevbuvm]  input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; pointer-events: none; }
.attach-hint[b-nmqqevbuvm] { color: #64748b; font-size: 12px; }
.attach-error[b-nmqqevbuvm] { color: #ffa3a3; font-size: 12px; }

.pending[b-nmqqevbuvm] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.pending-file[b-nmqqevbuvm] {
    display: flex; align-items: center; gap: 8px; max-width: 100%;
    padding: 6px 6px 6px 6px; border-radius: 8px; background: #12171e; border: 1px solid #2b313a;
}
.pending-thumb[b-nmqqevbuvm] { width: 40px; height: 40px; border-radius: 6px; object-fit: cover; flex-shrink: 0; background: #0b0f14; }
.pending-thumb.icon[b-nmqqevbuvm] { display: flex; align-items: center; justify-content: center; color: #64748b; }
.pending-thumb.icon svg[b-nmqqevbuvm] { width: 20px; height: 20px; }
.pending-name[b-nmqqevbuvm] { color: #e6e6e6; font-size: 12px; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pending-size[b-nmqqevbuvm] { color: #64748b; font-size: 11px; white-space: nowrap; }
.pending-remove[b-nmqqevbuvm] {
    border: none; background: transparent; color: #8b95a3; font-size: 18px; line-height: 1;
    width: 24px; height: 24px; border-radius: 6px; cursor: pointer;
}
.pending-remove:hover[b-nmqqevbuvm] { background: rgba(255, 87, 87, 0.12); color: #ff8a8a; }

.drop-overlay[b-nmqqevbuvm] {
    display: none;
    position: absolute; inset: -6px; z-index: 5;
    align-items: center; justify-content: center;
    border: 2px dashed #13dfff; border-radius: 12px;
    background: rgba(6, 8, 12, 0.85);
    color: #13dfff; font-weight: 700; font-size: 15px;
    pointer-events: none;
}
.drop-zone.dragging .drop-overlay[b-nmqqevbuvm] { display: flex; }
/* /Components/Shared/SupportThread.razor.rz.scp.css */
.support-thread[b-wm748mle3q] { display: flex; flex-direction: column; gap: 12px; }

.msg[b-wm748mle3q] {
    border: 1px solid #2b313a;
    border-radius: 10px;
    padding: 12px 16px;
    background: #12171e;
    max-width: 88%;
}
.msg.customer[b-wm748mle3q] { align-self: flex-start; }
.msg.staff[b-wm748mle3q] {
    align-self: flex-end;
    background: rgba(19, 223, 255, 0.06);
    border-color: rgba(19, 223, 255, 0.3);
}

.msg-head[b-wm748mle3q] { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; }
.msg-author[b-wm748mle3q] { font-weight: 600; color: #f0f4f8; font-size: 13px; }
.msg.staff .msg-author[b-wm748mle3q] { color: #13dfff; }
.msg-tag[b-wm748mle3q] {
    font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em;
    color: #13dfff; border: 1px solid rgba(19, 223, 255, 0.35); border-radius: 8px; padding: 0 6px;
}
.msg-when[b-wm748mle3q] { margin-left: auto; color: #64748b; font-size: 11px; white-space: nowrap; }

.msg-body[b-wm748mle3q] {
    color: #d6dbe1;
    font-size: 14px;
    line-height: 1.55;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.msg-files[b-wm748mle3q] { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.msg-image[b-wm748mle3q] {
    display: block; border-radius: 8px; overflow: hidden; border: 1px solid #2b313a;
    max-width: 260px; background: #0b0f14;
}
.msg-image:hover[b-wm748mle3q] { border-color: rgba(19, 223, 255, 0.6); }
.msg-image img[b-wm748mle3q] { display: block; max-width: 100%; max-height: 200px; object-fit: contain; }
.msg-file[b-wm748mle3q] {
    display: inline-flex; align-items: center; gap: 8px; max-width: 100%;
    padding: 8px 12px; border-radius: 8px; border: 1px solid #2b313a; background: #0b0f14;
    color: #e6e6e6; text-decoration: none; font-size: 13px;
}
.msg-file:hover[b-wm748mle3q] { border-color: rgba(19, 223, 255, 0.6); }
.msg-file svg[b-wm748mle3q] { width: 16px; height: 16px; color: #13dfff; flex-shrink: 0; }
.msg-file-name[b-wm748mle3q] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.msg-file-size[b-wm748mle3q] { color: #64748b; font-size: 11px; white-space: nowrap; }

@media (max-width: 640px) {
    .msg[b-wm748mle3q] { max-width: 100%; }
}
/* /Components/Shared/SymbolPillPricing.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════
   SYMBOL PILL PRICING - Ultra-Compact Live Price Indicator
   Lightweight pill that blinks green/red on price movement
   ═══════════════════════════════════════════════════════════ */

[b-ixhcw17q7t] .pill-pricing {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    font-size: 0.7rem;
    font-weight: 500;
    padding: 0.15rem 0.45rem;
    border-radius: 10px;
    background: rgba(30, 35, 45, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.08);
    transition: all 0.15s ease-out;
    white-space: nowrap;
    line-height: 1.2;
    vertical-align: middle;
    margin-left: 0.4rem;
}

/* Neutral/default state - white text */
[b-ixhcw17q7t] .pill-pricing.pill-neutral {
    color: rgba(255, 255, 255, 0.9);
}

/* Price went UP - green blink */
[b-ixhcw17q7t] .pill-pricing.pill-up {
    color: #00e5a0;
    background: rgba(0, 229, 160, 0.12);
    border-color: rgba(0, 229, 160, 0.3);
    box-shadow: 0 0 8px rgba(0, 229, 160, 0.25);
    animation: pillFlashUp-b-ixhcw17q7t 0.3s ease-out;
}

/* Price went DOWN - red blink */
[b-ixhcw17q7t] .pill-pricing.pill-down {
    color: #ff5a5a;
    background: rgba(255, 90, 90, 0.12);
    border-color: rgba(255, 90, 90, 0.3);
    box-shadow: 0 0 8px rgba(255, 90, 90, 0.25);
    animation: pillFlashDown-b-ixhcw17q7t 0.3s ease-out;
}

/* Live indicator subtle glow */
[b-ixhcw17q7t] .pill-pricing.is-live {
    box-shadow: 0 0 4px rgba(19, 223, 255, 0.15);
}

[b-ixhcw17q7t] .pill-pricing.is-live.pill-up {
    box-shadow: 0 0 10px rgba(0, 229, 160, 0.35);
}

[b-ixhcw17q7t] .pill-pricing.is-live.pill-down {
    box-shadow: 0 0 10px rgba(255, 90, 90, 0.35);
}

/* Price text */
[b-ixhcw17q7t] .pill-price {
    letter-spacing: -0.02em;
}

/* Loading state */
[b-ixhcw17q7t] .pill-loading {
    color: rgba(255, 255, 255, 0.4);
    animation: pillPulse-b-ixhcw17q7t 1.2s ease-in-out infinite;
}

/* Flash animation for price UP */
@keyframes pillFlashUp-b-ixhcw17q7t {
    0% {
        transform: scale(1.08);
        background: rgba(0, 229, 160, 0.25);
        box-shadow: 0 0 16px rgba(0, 229, 160, 0.5);
    }
    100% {
        transform: scale(1);
        background: rgba(0, 229, 160, 0.12);
        box-shadow: 0 0 8px rgba(0, 229, 160, 0.25);
    }
}

/* Flash animation for price DOWN */
@keyframes pillFlashDown-b-ixhcw17q7t {
    0% {
        transform: scale(1.08);
        background: rgba(255, 90, 90, 0.25);
        box-shadow: 0 0 16px rgba(255, 90, 90, 0.5);
    }
    100% {
        transform: scale(1);
        background: rgba(255, 90, 90, 0.12);
        box-shadow: 0 0 8px rgba(255, 90, 90, 0.25);
    }
}

/* Loading pulse animation */
@keyframes pillPulse-b-ixhcw17q7t {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.8; }
}

/* Hover state */
[b-ixhcw17q7t] .pill-pricing:hover {
    border-color: rgba(255, 255, 255, 0.2);
    transform: translateY(-1px);
}
/* /Components/Shared/SymbolPricing.razor.rz.scp.css */
/* Moved from the inline <style> block in SymbolPricing.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
/* Main container */
:where(.symbol-pricing)[b-dm2yrpyt46] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    padding: 0.35rem 0.65rem;
    border-radius: 8px;
    background: linear-gradient(135deg, 
        rgba(15, 20, 28, 0.95) 0%, 
        rgba(10, 14, 20, 0.98) 100%);
    border: 1px solid rgba(255, 255, 255, 0.06);
    position: relative;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Subtle gradient overlay for depth */
:where(.symbol-pricing)[b-dm2yrpyt46]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, 
        rgba(255, 255, 255, 0.03) 0%, 
        transparent 100%);
    pointer-events: none;
    border-radius: 8px 8px 0 0;
}

/* Hover state */
:where(.symbol-pricing):hover[b-dm2yrpyt46] {
    border-color: rgba(255, 255, 255, 0.12);
    transform: translateY(-1px);
    box-shadow: 
        0 4px 12px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.05) inset;
}

/* Live state glow effect */
:where(.symbol-pricing).is-live[b-dm2yrpyt46]::after {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(
        circle at center,
        rgba(19, 223, 255, 0.03) 0%,
        transparent 50%
    );
    pointer-events: none;
    animation: subtleRotate-b-dm2yrpyt46 20s linear infinite;
}

@keyframes subtleRotate-b-dm2yrpyt46 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Compact mode for dense tables */
:where(.symbol-pricing).compact[b-dm2yrpyt46] {
    padding: 0.25rem 0.5rem;
    gap: 0.3rem;
    border-radius: 6px;
}

:where(.symbol-pricing).compact[b-dm2yrpyt46]  .symbol-name {
    font-size: 0.65rem;
}

.symbol-pricing.compact :where(.symbol-price)[b-dm2yrpyt46] {
    font-size: 0.85rem;
}

.symbol-pricing.compact :where(.daily-change)[b-dm2yrpyt46] {
    font-size: 0.65rem;
    padding: 0.1rem 0.3rem;
}

/* ═══════════════════════════════════
   FLASH ANIMATIONS - Price Updates
   ═══════════════════════════════════ */

:where(.symbol-pricing).price-flash[b-dm2yrpyt46] {
    animation: priceFlashBase-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

:where(.symbol-pricing).price-flash.price-up[b-dm2yrpyt46] {
    animation: priceFlashUp-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

:where(.symbol-pricing).price-flash.price-down[b-dm2yrpyt46] {
    animation: priceFlashDown-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes priceFlashBase-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg, 
            rgba(59, 130, 246, 0.25) 0%, 
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow: 
            0 0 20px rgba(59, 130, 246, 0.3),
            0 0 40px rgba(59, 130, 246, 0.1);
        transform: scale(1.02);
    }
    100% {
        background: linear-gradient(135deg, 
            rgba(15, 20, 28, 0.95) 0%, 
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
    }
}

@keyframes priceFlashUp-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg, 
            rgba(19, 223, 255, 0.3) 0%, 
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow: 
            0 0 25px rgba(19, 223, 255, 0.4),
            0 0 50px rgba(19, 223, 255, 0.15),
            inset 0 0 20px rgba(19, 223, 255, 0.1);
        transform: scale(1.03);
        border-color: rgba(19, 223, 255, 0.5);
    }
    50% {
        transform: scale(1.01);
    }
    100% {
        background: linear-gradient(135deg, 
            rgba(15, 20, 28, 0.95) 0%, 
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
        border-color: rgba(255, 255, 255, 0.06);
    }
}

@keyframes priceFlashDown-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg, 
            rgba(255, 87, 87, 0.3) 0%, 
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow: 
            0 0 25px rgba(255, 87, 87, 0.4),
            0 0 50px rgba(255, 87, 87, 0.15),
            inset 0 0 20px rgba(255, 87, 87, 0.1);
        transform: scale(1.03);
        border-color: rgba(255, 87, 87, 0.5);
    }
    50% {
        transform: scale(1.01);
    }
    100% {
        background: linear-gradient(135deg, 
            rgba(15, 20, 28, 0.95) 0%, 
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
        border-color: rgba(255, 255, 255, 0.06);
    }
}

/* The same flash under twin keyframes. The price-flash class now stays on (no timer takes it off);
   a tick after a quiet spell adds or drops flash-alt, and the new animation name restarts the flash.
   One class more than the rules above, so these win when it is set. */
:where(.symbol-pricing).price-flash.flash-alt[b-dm2yrpyt46] {
    animation: priceFlashBaseAlt-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

:where(.symbol-pricing).price-flash.flash-alt.price-up[b-dm2yrpyt46] {
    animation: priceFlashUpAlt-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

:where(.symbol-pricing).price-flash.flash-alt.price-down[b-dm2yrpyt46] {
    animation: priceFlashDownAlt-b-dm2yrpyt46 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes priceFlashBaseAlt-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg,
            rgba(59, 130, 246, 0.25) 0%,
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow:
            0 0 20px rgba(59, 130, 246, 0.3),
            0 0 40px rgba(59, 130, 246, 0.1);
        transform: scale(1.02);
    }
    100% {
        background: linear-gradient(135deg,
            rgba(15, 20, 28, 0.95) 0%,
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
    }
}

@keyframes priceFlashUpAlt-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg,
            rgba(19, 223, 255, 0.3) 0%,
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow:
            0 0 25px rgba(19, 223, 255, 0.4),
            0 0 50px rgba(19, 223, 255, 0.15),
            inset 0 0 20px rgba(19, 223, 255, 0.1);
        transform: scale(1.03);
        border-color: rgba(19, 223, 255, 0.5);
    }
    50% {
        transform: scale(1.01);
    }
    100% {
        background: linear-gradient(135deg,
            rgba(15, 20, 28, 0.95) 0%,
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
        border-color: rgba(255, 255, 255, 0.06);
    }
}

@keyframes priceFlashDownAlt-b-dm2yrpyt46 {
    0% {
        background: linear-gradient(135deg,
            rgba(255, 87, 87, 0.3) 0%,
            rgba(15, 20, 28, 0.95) 100%);
        box-shadow:
            0 0 25px rgba(255, 87, 87, 0.4),
            0 0 50px rgba(255, 87, 87, 0.15),
            inset 0 0 20px rgba(255, 87, 87, 0.1);
        transform: scale(1.03);
        border-color: rgba(255, 87, 87, 0.5);
    }
    50% {
        transform: scale(1.01);
    }
    100% {
        background: linear-gradient(135deg,
            rgba(15, 20, 28, 0.95) 0%,
            rgba(10, 14, 20, 0.98) 100%);
        box-shadow: none;
        transform: scale(1);
        border-color: rgba(255, 255, 255, 0.06);
    }
}

:where(.pulse-dot)[b-dm2yrpyt46] {
    width: 6px;
    height: 6px;
    background: linear-gradient(135deg, #9bf1ff 0%, #13dfff 100%);
    border-radius: 50%;
    box-shadow: 
        0 0 4px rgba(19, 223, 255, 0.6),
        0 0 8px rgba(19, 223, 255, 0.3);
    animation: pulseLive-b-dm2yrpyt46 2s ease-in-out infinite;
}

@keyframes pulseLive-b-dm2yrpyt46 {
    0%, 100% {
        transform: scale(1);
        box-shadow: 
            0 0 4px rgba(19, 223, 255, 0.6),
            0 0 8px rgba(19, 223, 255, 0.3);
    }
    50% {
        transform: scale(1.3);
        box-shadow: 
            0 0 8px rgba(19, 223, 255, 0.8),
            0 0 16px rgba(19, 223, 255, 0.4),
            0 0 24px rgba(19, 223, 255, 0.2);
    }
}

/* ═══════════════════════════════════
   PRICE DISPLAY - Core Element
   ═══════════════════════════════════ */

:where(.price-container)[b-dm2yrpyt46] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

:where(.symbol-price)[b-dm2yrpyt46] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--text-primary, #f0f4f8);
    letter-spacing: -0.5px;
    transition: color 0.3s ease, text-shadow 0.3s ease;
    position: relative;
}

:where(.symbol-price).price-loading[b-dm2yrpyt46] {
    color: var(--text-muted, #64748b);
}

:where(.symbol-price).price-loaded[b-dm2yrpyt46] {
    color: var(--text-bright, #ffffff);
}

:where(.symbol-price).price-unavailable[b-dm2yrpyt46] {
    color: var(--text-dim, #475569);
    font-style: italic;
}

/* Loading shimmer effect */
:where(.loading-shimmer)[b-dm2yrpyt46] {
    background: linear-gradient(
        90deg,
        var(--text-muted, #64748b) 0%,
        var(--text-secondary, #94a3b8) 50%,
        var(--text-muted, #64748b) 100%
    );
    background-size: 200% 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: shimmer-b-dm2yrpyt46 1.5s ease-in-out infinite;
}

@keyframes shimmer-b-dm2yrpyt46 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Price direction coloring */
.symbol-pricing.price-up :where(.symbol-price)[b-dm2yrpyt46] {
    color: var(--success-bright, #96f8bf);
    text-shadow: 0 0 12px rgba(16, 235, 107, 0.5);
}

.symbol-pricing.price-down :where(.symbol-price)[b-dm2yrpyt46] {
    color: var(--error-bright, #ff7575);
    text-shadow: 0 0 12px rgba(255, 87, 87, 0.5);
}

/* ═══════════════════════════════════
   DAILY CHANGE - Percentage Badge
   ═══════════════════════════════════ */

:where(.daily-change)[b-dm2yrpyt46] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.15rem 0.4rem;
    border-radius: 6px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

:where(.daily-change).change-positive[b-dm2yrpyt46] {
    background: linear-gradient(135deg, 
        rgba(16, 235, 107, 0.15) 0%, 
        rgba(16, 235, 107, 0.08) 100%);
    color: var(--success-bright, #96f8bf);
    border: 1px solid rgba(16, 235, 107, 0.25);
}

:where(.daily-change).change-negative[b-dm2yrpyt46] {
    background: linear-gradient(135deg, 
        rgba(255, 87, 87, 0.15) 0%, 
        rgba(255, 87, 87, 0.08) 100%);
    color: var(--error-bright, #ff7575);
    border: 1px solid rgba(255, 87, 87, 0.25);
}

:where(.daily-change).change-neutral[b-dm2yrpyt46] {
    background: rgba(255, 255, 255, 0.04);
    color: var(--text-muted, #64748b);
    border: 1px solid rgba(255, 255, 255, 0.06);
}

:where(.change-value)[b-dm2yrpyt46] {
    font-variant-numeric: tabular-nums;
}

/* ═══════════════════════════════════
   PRICE TICK - Direction Indicator
   ═══════════════════════════════════ */

:where(.price-tick)[b-dm2yrpyt46] {
    display: inline-flex;
    align-items: center;
    font-size: 0.55rem;
    animation: tickBounce-b-dm2yrpyt46 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

:where(.price-tick).price-up[b-dm2yrpyt46] {
    color: var(--success-bright, #96f8bf);
}

:where(.price-tick).price-down[b-dm2yrpyt46] {
    color: var(--error-bright, #ff7575);
}

@keyframes tickBounce-b-dm2yrpyt46 {
    0% { transform: scale(0); opacity: 0; }
    50% { transform: scale(1.5); opacity: 1; }
    100% { transform: scale(1); opacity: 0.8; }
}

/* ═══════════════════════════════════
   MARKET CLOSED BADGE
   ═══════════════════════════════════ */

:where(.market-closed-badge)[b-dm2yrpyt46] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    color: var(--text-dim, #475569);
    opacity: 0.6;
    transition: opacity 0.2s ease;
}

.symbol-pricing:hover :where(.market-closed-badge)[b-dm2yrpyt46] {
    opacity: 1;
}

/* ═══════════════════════════════════
   DAY DIRECTION STATES
   ═══════════════════════════════════ */

:where(.symbol-pricing).day-up[b-dm2yrpyt46] {
    border-color: rgba(16, 235, 107, 0.15);
}

:where(.symbol-pricing).day-down[b-dm2yrpyt46] {
    border-color: rgba(255, 87, 87, 0.15);
}

/* The rest of the old inline <style> block (it was sent with every instance, and applied page-wide
   while one was shown). Same :where() rule, so the specificity is the one the inline rule had; the
   bundle loads after app.css like the inline block did, so its .live-indicator ties still go this way. */

/* ═══════════════════════════════════
   LIVE INDICATOR - Pulsating Dot
   ═══════════════════════════════════ */

:where(.live-indicator)[b-dm2yrpyt46] {
    display: inline-flex;
    align-items: center;
    margin-right: 0.1rem;
}

/* ═══════════════════════════════════
   SYMBOL NAME - Ticker Badge
   ═══════════════════════════════════ */

:where(.symbol-name)[b-dm2yrpyt46] {
    font-weight: 700;
    color: var(--text-secondary, #94a3b8);
    text-transform: uppercase;
    font-size: 0.7rem;
    letter-spacing: 0.5px;
    padding: 0.15rem 0.4rem;
    background: rgba(255, 255, 255, 0.04);
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.06);
}

:where(.change-icon)[b-dm2yrpyt46] {
    font-size: 0.65rem;
    line-height: 1;
}

:where(.tick-up)[b-dm2yrpyt46] {
    animation: tickUp-b-dm2yrpyt46 0.5s ease-out;
}

:where(.tick-down)[b-dm2yrpyt46] {
    animation: tickDown-b-dm2yrpyt46 0.5s ease-out;
}

@keyframes tickUp-b-dm2yrpyt46 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}

@keyframes tickDown-b-dm2yrpyt46 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(4px); }
}

:where(.market-closed-badge) svg[b-dm2yrpyt46] {
    width: 100%;
    height: 100%;
}
/* /Components/Shared/SymbolSearch.razor.rz.scp.css */
/* Moved from the inline <style> block in SymbolSearch.razor. Selectors wrap one class in
   :where() so the scope attribute leaves specificity unchanged, and use ::deep after the
   compound owned by this component where the target may be rendered by a child. */
:where(.symbol-search-container)[b-rvippn5q7k] {
    position: relative;
    width: 100%;
}

:where(.search-input-wrapper)[b-rvippn5q7k] {
    position: relative;
}

:where(.search-spinner)[b-rvippn5q7k],
:where(.search-valid)[b-rvippn5q7k] {
    position: absolute;
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
}

:where(.search-valid)[b-rvippn5q7k] {
    color: var(--success-color);
    font-weight: bold;
}

:where(.search-dropdown)[b-rvippn5q7k] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-top: none;
    border-radius: 0 0 6px 6px;
    max-height: 300px;
    overflow-y: auto;
    z-index: 100;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

:where(.search-result-item)[b-rvippn5q7k] {
    display: flex;
    align-items: center;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    border-bottom: 1px solid var(--border-color);
}

:where(.search-result-item):last-child[b-rvippn5q7k] {
    border-bottom: none;
}

:where(.search-result-item):hover[b-rvippn5q7k] {
    background: var(--hover-bg);
}

:where(.result-symbol)[b-rvippn5q7k] {
    font-weight: 700;
    color: var(--text-primary);
    min-width: 60px;
}

:where(.result-name)[b-rvippn5q7k] {
    flex: 1;
    color: var(--text-secondary);
    font-size: 0.85rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 0 0.5rem;
}

:where(.result-price)[b-rvippn5q7k] {
    color: var(--accent-color);
    font-weight: 500;
    font-size: 0.85rem;
}

:where(.search-error)[b-rvippn5q7k] {
    color: var(--danger-color);
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

:where(.selected-company)[b-rvippn5q7k] {
    display: flex;
    justify-content: space-between;
    font-size: 0.8rem;
    margin-top: 0.25rem;
    padding: 0.25rem 0;
}

:where(.selected-company)[b-rvippn5q7k]  .company-name {
    color: var(--text-secondary);
}

.selected-company :where(.company-price)[b-rvippn5q7k] {
    color: var(--accent-color);
    font-weight: 600;
}

/* The input's rules, the last of the inline block (sent with every instance, and page-wide while one
   was shown; the other pages with a .symbol-search-input have no SymbolSearch, so nothing relied on it).
   Same :where() rule: the specificity the inline rules had. */
:where(.symbol-search-input)[b-rvippn5q7k] {
    width: 100%;
    padding: 0.5rem 2.5rem 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--input-bg);
    color: var(--text-primary);
    font-size: 0.9rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
}

:where(.symbol-search-input):focus[b-rvippn5q7k] {
    outline: none;
    border-color: var(--accent-color);
}

:where(.symbol-search-input).invalid[b-rvippn5q7k] {
    border-color: var(--danger-color);
}

:where(.symbol-search-input).valid[b-rvippn5q7k] {
    border-color: var(--success-color);
}

:where(.symbol-search-input):disabled[b-rvippn5q7k] {
    opacity: 0.6;
    cursor: not-allowed;
}
/* /Components/Shared/TrailPositionDetail.razor.rz.scp.css */
/* Trail position detail — shared by the Trail Audit page's expanded row and the
   portfolio dashboard's full-screen trail modal. Mirrors the Trail Audit page styling. */

.detail[b-iz7y47fha7] {
    padding: 16px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    color: #e6e6e6;
    font-size: 13px;
}

.detail-title[b-iz7y47fha7] {
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.detail-sub[b-iz7y47fha7] { font-size: 10px; color: #6b7480; font-weight: 400; text-transform: none; letter-spacing: 0; }
.detail-text[b-iz7y47fha7] { margin: 0 0 10px; color: #9aa4b2; line-height: 1.55; max-width: 900px; }
.detail-note[b-iz7y47fha7] { margin: 8px 0 0; color: #6b7480; font-size: 11px; line-height: 1.5; max-width: 900px; }

.pos[b-iz7y47fha7] { color: #46d18b; }
.neg[b-iz7y47fha7] { color: #ff7575; }
.warn[b-iz7y47fha7] { color: #e0c46a; }
.dim[b-iz7y47fha7] { color: #6b7480; }

/* Exit callout — the "when does this fire" answer, up front */
.exit-callout[b-iz7y47fha7] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 10px;
    background: #131922;
    border: 1px solid #232a34;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 10px;
}

.exit-cell[b-iz7y47fha7] { display: flex; flex-direction: column; gap: 2px; }
.exit-cell span[b-iz7y47fha7] { font-size: 10px; color: #6b7480; text-transform: uppercase; letter-spacing: 0.4px; }
.exit-cell strong.big[b-iz7y47fha7] { font-size: 17px; font-weight: 700; color: #fff; font-variant-numeric: tabular-nums; }
.exit-cell em[b-iz7y47fha7] { font-style: normal; font-size: 11px; color: #8b95a3; }
.exit-cell strong.big em[b-iz7y47fha7] { font-size: 12px; color: #8b95a3; margin-left: 3px; }

.kv-grid[b-iz7y47fha7] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 8px 16px;
}

.kv[b-iz7y47fha7] { display: flex; flex-direction: column; gap: 1px; }
.kv span[b-iz7y47fha7] { font-size: 10px; color: #6b7480; text-transform: uppercase; letter-spacing: 0.4px; }
.kv strong[b-iz7y47fha7] { color: #e6e6e6; font-weight: 600; font-size: 12px; }

/* Health flags */
.health-item[b-iz7y47fha7] {
    border-left: 3px solid #2b313a;
    background: #161b22;
    border-radius: 0 6px 6px 0;
    padding: 10px 12px;
}

.health-item.inline[b-iz7y47fha7] { margin-bottom: 6px; }
.health-item.sev-error[b-iz7y47fha7] { border-left-color: #d1434b; }
.health-item.sev-warning[b-iz7y47fha7] { border-left-color: #b58900; }
.health-item.sev-info[b-iz7y47fha7] { border-left-color: #2f6feb; }

.health-head[b-iz7y47fha7] { display: flex; align-items: center; gap: 8px; margin-bottom: 3px; flex-wrap: wrap; }
.health-title[b-iz7y47fha7] { color: #e6e6e6; font-weight: 600; }
.health-detail[b-iz7y47fha7] { color: #9aa4b2; line-height: 1.5; }

/* Changes */
.changes[b-iz7y47fha7] { display: flex; flex-direction: column; gap: 3px; }

.change[b-iz7y47fha7] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    padding: 5px 10px;
    background: #131922;
    border-radius: 5px;
    border-left: 2px solid #2b313a;
}

.change-date[b-iz7y47fha7] {
    color: #6b7480;
    font-size: 11px;
    min-width: 48px;
    font-variant-numeric: tabular-nums;
}

/* line-height: 1 came from SymbolPricing's old inline (page-wide) .change-icon rule, which every Dashboard
   showing this panel also rendered; kept now that that rule is scoped to SymbolPricing. */
.change-icon[b-iz7y47fha7] { width: 14px; text-align: center; font-size: 11px; line-height: 1; }
.change-desc[b-iz7y47fha7] { color: #b6c0cc; }

.change.kind-peakadvanced[b-iz7y47fha7] { border-left-color: #2ea043; }
.change.kind-peakadvanced .change-icon[b-iz7y47fha7] { color: #46d18b; }
.change.kind-armed[b-iz7y47fha7] { border-left-color: #2f6feb; }
.change.kind-armed .change-desc[b-iz7y47fha7] { color: #90b8f0; font-weight: 600; }
.change.kind-ladderstep[b-iz7y47fha7] { border-left-color: #b58900; }
.change.kind-ladderstep .change-icon[b-iz7y47fha7] { color: #e0c46a; }
.change.kind-trailtouched[b-iz7y47fha7] { border-left-color: #d1434b; }
.change.kind-trailtouched .change-desc[b-iz7y47fha7] { color: #f0a5a9; }

/* Day-by-day table */
.table-wrap[b-iz7y47fha7] { overflow-x: auto; }
.table-wrap.inner[b-iz7y47fha7] { max-height: 420px; overflow-y: auto; }

.mini-table[b-iz7y47fha7] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.mini-table th[b-iz7y47fha7] {
    text-align: left;
    padding: 8px 10px;
    color: #8b95a3;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
    border-bottom: 1px solid #232a34;
    white-space: nowrap;
    position: sticky;
    top: 0;
    background: #10151c;
}

.mini-table td[b-iz7y47fha7] {
    padding: 8px 10px;
    border-bottom: 1px solid #1b212a;
    white-space: nowrap;
}

.mini-table .num[b-iz7y47fha7] { text-align: right; font-variant-numeric: tabular-nums; }
.mini-table tr.touched[b-iz7y47fha7] { background: #1d1417; }

.trail-badge[b-iz7y47fha7] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 7px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
}

.trail-badge.armed[b-iz7y47fha7] { background: #10331f; color: #46d18b; }
.trail-badge.sm[b-iz7y47fha7] { font-size: 10px; padding: 1px 5px; }
/* /Components/Shared/UpgradePrompt.razor.rz.scp.css */
/* UpgradePrompt Component Styles */

.upgrade-prompt[b-cj2iv89vk9] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(168, 85, 247, 0.1));
    border: 1px solid rgba(99, 102, 241, 0.3);
    border-radius: 12px;
    padding: 1.25rem;
    margin: 1rem 0;
}

.upgrade-prompt.theme-warning[b-cj2iv89vk9] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1), rgba(251, 191, 36, 0.1));
    border-color: rgba(245, 158, 11, 0.3);
}

.upgrade-prompt.theme-info[b-cj2iv89vk9] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(96, 165, 250, 0.1));
    border-color: rgba(59, 130, 246, 0.3);
}

.upgrade-header[b-cj2iv89vk9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.upgrade-header h4[b-cj2iv89vk9] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-color, #1f2937);
    flex: 1;
}

.upgrade-icon[b-cj2iv89vk9] {
    font-size: 1.25rem;
}

.dismiss-btn[b-cj2iv89vk9] {
    background: none;
    border: none;
    font-size: 1.25rem;
    color: var(--text-muted, #6b7280);
    cursor: pointer;
    padding: 0.25rem;
    line-height: 1;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.dismiss-btn:hover[b-cj2iv89vk9] {
    color: var(--text-color, #1f2937);
    background: rgba(0, 0, 0, 0.05);
}

.upgrade-message[b-cj2iv89vk9] {
    margin: 0 0 1rem 0;
    color: var(--text-secondary, #4b5563);
    font-size: 0.9rem;
    line-height: 1.5;
}

.upgrade-actions[b-cj2iv89vk9] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.btn-upgrade[b-cj2iv89vk9] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: linear-gradient(135deg, #6366f1, #8b5cf6);
    color: white;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.875rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border: none;
    cursor: pointer;
}

.btn-upgrade:hover[b-cj2iv89vk9] {
    background: linear-gradient(135deg, #4f46e5, #7c3aed);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.btn-upgrade svg[b-cj2iv89vk9] {
    transition: transform 0.2s ease;
}

.btn-upgrade:hover svg[b-cj2iv89vk9] {
    transform: translateX(3px);
}

.btn-learn-more[b-cj2iv89vk9] {
    display: inline-flex;
    align-items: center;
    padding: 0.625rem 1rem;
    background: transparent;
    color: var(--text-secondary, #6b7280);
    border: 1px solid var(--border-color, #e5e7eb);
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.875rem;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-learn-more:hover[b-cj2iv89vk9] {
    color: var(--text-color, #1f2937);
    border-color: var(--text-secondary, #9ca3af);
    background: rgba(0, 0, 0, 0.02);
}

/* Compact Style */
.upgrade-prompt-compact[b-cj2iv89vk9] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: rgba(99, 102, 241, 0.08);
    border: 1px solid rgba(99, 102, 241, 0.2);
    border-radius: 6px;
    font-size: 0.8rem;
}

.upgrade-prompt-compact.theme-warning[b-cj2iv89vk9] {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.2);
}

.upgrade-prompt-compact .upgrade-icon[b-cj2iv89vk9] {
    font-size: 0.9rem;
}

.upgrade-prompt-compact .upgrade-text[b-cj2iv89vk9] {
    color: var(--text-secondary, #4b5563);
}

.upgrade-prompt-compact .upgrade-link[b-cj2iv89vk9] {
    color: #6366f1;
    font-weight: 600;
    text-decoration: none;
}

.upgrade-prompt-compact .upgrade-link:hover[b-cj2iv89vk9] {
    text-decoration: underline;
}

/* Dark mode support */
:global([data-theme="dark"]) .upgrade-prompt[b-cj2iv89vk9] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15), rgba(168, 85, 247, 0.15));
    border-color: rgba(99, 102, 241, 0.4);
}

:global([data-theme="dark"]) .upgrade-prompt.theme-warning[b-cj2iv89vk9] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.15), rgba(251, 191, 36, 0.15));
    border-color: rgba(245, 158, 11, 0.4);
}

:global([data-theme="dark"]) .upgrade-header h4[b-cj2iv89vk9] {
    color: #f3f4f6;
}

:global([data-theme="dark"]) .dismiss-btn[b-cj2iv89vk9] {
    color: #9ca3af;
}

:global([data-theme="dark"]) .dismiss-btn:hover[b-cj2iv89vk9] {
    color: #f3f4f6;
    background: rgba(255, 255, 255, 0.1);
}

:global([data-theme="dark"]) .upgrade-message[b-cj2iv89vk9] {
    color: #d1d5db;
}

:global([data-theme="dark"]) .btn-learn-more[b-cj2iv89vk9] {
    color: #9ca3af;
    border-color: #4b5563;
}

:global([data-theme="dark"]) .btn-learn-more:hover[b-cj2iv89vk9] {
    color: #f3f4f6;
    border-color: #6b7280;
    background: rgba(255, 255, 255, 0.05);
}

:global([data-theme="dark"]) .upgrade-prompt-compact[b-cj2iv89vk9] {
    background: rgba(99, 102, 241, 0.12);
    border-color: rgba(99, 102, 241, 0.25);
}

:global([data-theme="dark"]) .upgrade-prompt-compact .upgrade-text[b-cj2iv89vk9] {
    color: #d1d5db;
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .upgrade-prompt[b-cj2iv89vk9] {
        padding: 1rem;
    }
    
    .upgrade-actions[b-cj2iv89vk9] {
        flex-direction: column;
    }
    
    .btn-upgrade[b-cj2iv89vk9],
    .btn-learn-more[b-cj2iv89vk9] {
        width: 100%;
        justify-content: center;
    }
}
