/* Scanner Dashboard -- Alert feeds, cell colors, 5-pillar panel */

/* ---- Symbol cell ---- */

.sym-cell {
    display: flex;
    align-items: center;
    gap: 4px;
}

.sym-link {
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    font-size: 12px;
}

.sym-link:hover { text-decoration: underline; color: var(--blue); }

.sym-clickable { cursor: pointer; }
.sym-clickable:hover { text-decoration: underline; color: var(--blue); }

.news-flame { font-size: 10px; line-height: 1; }
.news-breaking { color: var(--news-breaking); }
.news-recent { color: var(--news-recent); }
.news-old { color: var(--news-old); }

.move-arrow { font-size: 9px; font-weight: 700; margin-left: 2px; }
.move-up { color: var(--green); }
.move-down { color: var(--red); }

/* ---- Float cell ---- */

.float-very-low { color: var(--float-very-low); font-weight: 600; }
.float-low { color: var(--float-low); }
.float-medium { color: var(--float-medium); }
.float-high { color: var(--float-high); }

/* ---- Gap/Change cell ---- */

.gap-strong-pos { color: var(--gap-strong-pos); font-weight: 700; }
.gap-pos { color: var(--gap-pos); font-weight: 600; }
.gap-mild-pos { color: var(--gap-mild-pos); }
.gap-mild-neg { color: var(--gap-mild-neg); }
.gap-neg { color: var(--gap-neg); }
.gap-strong-neg { color: var(--gap-strong-neg); font-weight: 700; }

/* ---- Volume cell ---- */

.vol-extreme { color: #4caf50; font-weight: 600; }
.vol-high { color: #388e3c; }
.vol-medium { color: #2e7d32; }
.vol-low { color: var(--text-muted); }

/* ---- Alert feeds (HOD, Running, Squeeze) ---- */

.alert-scroll {
    overflow-y: auto;
    padding: 0 6px;
}

.alert-scroll::-webkit-scrollbar { width: 5px; }
.alert-scroll::-webkit-scrollbar-track { background: #111; }
.alert-scroll::-webkit-scrollbar-thumb { background: #333; border-radius: 3px; }

.alert-entry {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 4px;
    border-bottom: 1px solid rgba(30, 30, 30, 0.7);
    font-family: var(--mono);
    font-size: 12px;
}

.alert-entry:last-child { border-bottom: none; }

.alert-entry.alert-new { animation: alert-flash 2s ease-out; }

@keyframes alert-flash {
    0% { background: rgba(255, 214, 0, 0.2); }
    100% { background: transparent; }
}

.alert-time {
    color: var(--text-muted);
    font-size: 10px;
    min-width: 52px;
    flex-shrink: 0;
}

.alert-sym {
    font-weight: 700;
    font-size: 12px;
    min-width: 45px;
    flex-shrink: 0;
}

#hod-feed .alert-sym { color: var(--hod-accent); }
#running-feed .alert-sym { color: var(--running-accent); }
#squeeze-feed .alert-sym { color: var(--squeeze-accent); }

.alert-price {
    color: var(--text-primary);
    min-width: 55px;
    text-align: right;
    flex-shrink: 0;
}

.alert-strategy {
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 3px;
    white-space: nowrap;
    margin-left: auto;
}

.strat-high {
    background: rgba(255, 214, 0, 0.15);
    color: var(--strategy-high);
    border: 1px solid rgba(255, 214, 0, 0.3);
}

.strat-normal {
    background: rgba(76, 175, 80, 0.15);
    color: var(--strategy-normal);
    border: 1px solid rgba(76, 175, 80, 0.3);
}

.squeeze-type {
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 3px;
    background: rgba(255, 23, 68, 0.15);
    color: var(--squeeze-accent);
    border: 1px solid rgba(255, 23, 68, 0.3);
    white-space: nowrap;
    margin-left: auto;
}

.alert-group-count {
    font-size: 9px;
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-muted);
    padding: 0 4px;
    border-radius: 3px;
    min-width: 16px;
    text-align: center;
}

/* ---- 5 Pillar panel ---- */

.pillar-entry {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 4px;
    border-bottom: 1px solid rgba(30, 30, 30, 0.7);
    font-family: var(--mono);
    font-size: 12px;
}

.pillar-entry:last-child { border-bottom: none; }

.pillar-sym {
    color: #ff9100;
    font-weight: 700;
    min-width: 45px;
}

.pillar-stat {
    color: var(--text-secondary);
    font-size: 11px;
}

.pillar-stat strong {
    color: var(--text-primary);
    font-weight: 600;
}
