#ai_signal_page {
    --signal-bg: #f7f8fc;
    --signal-panel: #fff;
    --signal-text: #172036;
    --signal-muted: #6f7890;
    --signal-line: #e6e9f1;
    --signal-brand: #5568ff;
    --signal-up: #089981;
    --signal-down: #e15565;
    background: var(--signal-bg);
    color: var(--signal-text);
    min-height: 70vh;
    padding-bottom: 76px;
}

.ai-signal-hero {
    color: #fff;
    background:
        radial-gradient(circle at 15% 10%, rgba(106, 89, 255, .75), transparent 34%),
        radial-gradient(circle at 88% 70%, rgba(50, 193, 210, .35), transparent 30%),
        linear-gradient(120deg, #121735 0%, #202d68 100%);
    padding: 82px 0 68px;
}

.ai-signal-hero__eyebrow,
.ai-signal-status,
.ai-signal-card__meta,
.ai-signal-card__pair,
.ai-signal-card__quote,
.ai-signal-card__metrics,
.ai-signal-card__footer {
    display: flex;
    align-items: center;
}

.ai-signal-hero__eyebrow {
    gap: 8px;
    color: rgba(255,255,255,.72);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .12em;
}

.ai-signal-live-dot,
.ai-signal-status__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #58e5a2;
    box-shadow: 0 0 0 5px rgba(88,229,162,.12);
}

.ai-signal-hero h1 {
    font-size: clamp(34px, 5vw, 58px);
    letter-spacing: -.045em;
    line-height: 1.05;
    margin: 16px 0;
}

.ai-signal-hero p {
    max-width: 620px;
    color: rgba(255,255,255,.82);
    font-size: 17px;
    line-height: 1.7;
    margin: 0;
}

.ai-signal-hero__notice {
    font-size: 12px !important;
    margin-top: 18px !important;
    opacity: .68;
}

.ai-signal-content { padding-top: 30px; }

.ai-signal-status {
    gap: 9px;
    color: var(--signal-muted);
    font-size: 12px;
    margin-bottom: 38px;
}

.ai-signal-status__dot {
    background: #b5bdce;
    box-shadow: none;
}

.ai-signal-status.is-connected .ai-signal-status__dot {
    background: var(--signal-up);
    box-shadow: 0 0 0 4px rgba(8,153,129,.1);
}

.ai-signal-sr-only { height: 1px; margin: -1px; overflow: hidden; position: absolute; width: 1px; clip: rect(0, 0, 0, 0); }
.ai-signal-search {
    align-items: center;
    background: #fff;
    border: 1px solid var(--signal-line);
    border-radius: 10px;
    display: flex;
    margin: 0 0 18px;
    max-width: 460px;
    padding: 0 13px;
}
.ai-signal-search:focus-within { border-color: var(--signal-brand); box-shadow: 0 0 0 3px rgba(85, 104, 255, .12); }
.ai-signal-search__icon { color: var(--signal-muted); font-size: 23px; line-height: 1; margin-right: 8px; transform: rotate(-20deg); }
.ai-signal-search input { background: transparent; border: 0; color: var(--signal-text); font-size: 13px; height: 42px; min-width: 0; outline: 0; width: 100%; }
.ai-signal-search input::placeholder { color: #98a1b2; }
.ai-signal-search button { background: transparent; border: 0; color: var(--signal-brand); cursor: pointer; font-size: 11px; font-weight: 800; padding: 5px 0 5px 10px; }

.ai-signal-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 32px;
    overflow-x: auto;
}

.ai-signal-tab {
    background: transparent;
    border: 0;
    border-bottom: 2px solid transparent;
    color: var(--signal-muted);
    cursor: pointer;
    font-size: 14px;
    font-weight: 700;
    padding: 10px 18px;
    white-space: nowrap;
}

.ai-signal-tab.current {
    border-bottom-color: var(--signal-brand);
    color: var(--signal-brand);
}

.ai-signal-sections { display: grid; gap: 58px; }
.ai-signal-section { display: none; }
.ai-signal-section.is-active { display: block; }

.ai-signal-section__heading {
    align-items: end;
    display: flex;
    gap: 24px;
    justify-content: space-between;
    margin-bottom: 18px;
}

.ai-signal-section__heading h2 {
    color: var(--signal-text);
    font-size: 26px;
    letter-spacing: -.035em;
    margin: 2px 0 5px;
}

.ai-signal-section__heading p {
    color: var(--signal-muted);
    font-size: 13px;
    margin: 0;
}

.ai-signal-section__number {
    color: var(--signal-brand);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
}

.ai-signal-section__source {
    border: 1px solid var(--signal-line);
    border-radius: 20px;
    color: var(--signal-muted);
    font-size: 11px;
    font-weight: 700;
    padding: 6px 10px;
    white-space: nowrap;
}

.ai-signal-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ai-signal-card {
    background: var(--signal-panel);
    border: 1px solid var(--signal-line);
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(20,31,63,.035);
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 18px;
}

.ai-signal-card__meta { gap: 8px; min-height: 21px; }
.ai-signal-card__source,
.ai-signal-card__direction,
.ai-signal-card__time {
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .04em;
    line-height: 1;
    text-transform: uppercase;
}

.ai-signal-card__source {
    background: #eef0ff;
    color: #4a5bea;
    padding: 5px 7px;
}

.ai-signal-card__direction { padding: 5px 7px; }
.ai-signal-card__direction.is-long { background: #e6f8f4; color: var(--signal-up); }
.ai-signal-card__direction.is-short { background: #ffedef; color: var(--signal-down); }
.ai-signal-card__time { color: #9aa2b4; margin-left: auto; text-transform: none; }

.ai-signal-card h3 {
    color: var(--signal-text);
    font-size: 16px;
    letter-spacing: -.02em;
    line-height: 1.4;
    margin: 14px 0 9px;
    overflow-wrap: anywhere;
}

.ai-signal-card__content {
    color: var(--signal-muted);
    display: -webkit-box;
    font-size: 12px;
    line-height: 1.65;
    margin: 0 0 16px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    white-space: pre-wrap;
}
.ai-signal-card__view {
    align-self: flex-start;
    background: transparent;
    border: 0;
    color: var(--signal-brand);
    cursor: pointer;
    font-size: 11px;
    font-weight: 800;
    margin: -7px 0 13px;
    padding: 0;
}
.ai-signal-card__view:hover { text-decoration: underline; }

.ai-signal-card__quote {
    border-bottom: 1px solid var(--signal-line);
    border-top: 1px solid var(--signal-line);
    gap: 10px;
    justify-content: space-between;
    margin-top: auto;
    padding: 11px 0;
}

.ai-signal-card__pair { gap: 6px; font-size: 13px; font-weight: 800; }
.ai-signal-card__coin {
    align-items: center;
    background: linear-gradient(135deg, #5367ff, #25cbd4);
    border-radius: 50%;
    color: #fff;
    display: inline-flex;
    font-size: 9px;
    height: 22px;
    justify-content: center;
    overflow: hidden;
    width: 22px;
}
.ai-signal-card__coin img { display: block; height: 100%; object-fit: cover; width: 100%; }
.ai-signal-card__coin.is-fallback {
    border-radius: 5px;
    font-size: 7px;
    font-weight: 800;
    height: 20px;
    max-width: 46px;
    min-width: 22px;
    padding: 0 4px;
    width: auto;
}
.ai-signal-card__coin.is-fallback.is-commodity { background: linear-gradient(135deg, #c98b21, #efc55b); }
.ai-signal-card__coin.is-fallback.is-equity { background: linear-gradient(135deg, #2e719b, #5ba9d4); }
.ai-signal-card__symbol { font-variant-numeric: tabular-nums; }

.ai-signal-card__price { font-size: 14px; font-variant-numeric: tabular-nums; font-weight: 800; }
.ai-signal-card__price.is-waiting { color: #9aa2b4; font-size: 11px; font-weight: 600; }
.ai-signal-card__metrics { gap: 17px; padding-top: 11px; }
.ai-signal-card__metric { color: var(--signal-muted); font-size: 10px; }
.ai-signal-card__metric strong { color: var(--signal-text); display: block; font-size: 12px; margin-top: 3px; }
.ai-signal-card__footer { gap: 8px; justify-content: space-between; margin-top: 15px; min-height: 17px; }
.ai-signal-card__author { color: var(--signal-muted); font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ai-signal-card__link { color: var(--signal-brand); font-size: 11px; font-weight: 800; text-decoration: none; }
.ai-signal-card__link:hover { text-decoration: underline; }

.ai-signal-empty {
    align-items: center;
    background: rgba(255,255,255,.55);
    border: 1px dashed #d9deea;
    border-radius: 12px;
    color: var(--signal-muted);
    display: flex;
    font-size: 13px;
    grid-column: 1 / -1;
    justify-content: center;
    min-height: 128px;
    padding: 20px;
    text-align: center;
}

.ai-signal-modal-open { overflow: hidden; }
.ai-signal-modal {
    --signal-brand: #5568ff;
    --signal-line: #e6e9f1;
    --signal-muted: #6f7890;
    --signal-text: #172036;
    align-items: center;
    background: rgba(15, 22, 37, .66);
    display: none;
    inset: 0;
    justify-content: center;
    padding: 22px;
    position: fixed;
    z-index: 10050;
}
.ai-signal-modal.is-open { display: flex; }
.ai-signal-modal__dialog {
    background: #fff;
    border: 1px solid #dde3ef;
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(12, 19, 35, .26);
    color: var(--signal-text);
    max-height: min(720px, calc(100vh - 44px));
    max-width: 650px;
    overflow: auto;
    padding: 24px;
    width: 100%;
}
.ai-signal-modal__header { align-items: flex-start; display: flex; gap: 18px; justify-content: space-between; }
.ai-signal-modal__header h2 { font-size: 19px; line-height: 1.4; margin: 0; overflow-wrap: anywhere; }
.ai-signal-modal__close {
    background: #f1f4f9;
    border: 0;
    border-radius: 50%;
    color: #465064;
    cursor: pointer;
    flex: 0 0 30px;
    font-size: 22px;
    height: 30px;
    line-height: 1;
    padding: 0 0 3px;
    width: 30px;
}
.ai-signal-modal__meta { color: var(--signal-muted); font-size: 12px; margin: 12px 0 17px; }
.ai-signal-modal__metrics { border-bottom: 1px solid var(--signal-line); border-top: 1px solid var(--signal-line); display: flex; gap: 28px; margin-bottom: 19px; padding: 12px 0; }
.ai-signal-modal__metrics .ai-signal-card__metric { font-size: 11px; }
.ai-signal-modal__metrics .ai-signal-card__metric strong { font-size: 13px; }
.ai-signal-modal__content { color: #4c5669; font-size: 13px; line-height: 1.8; margin: 0; white-space: pre-wrap; }
.ai-signal-modal__link { color: var(--signal-brand); display: inline-block; font-size: 12px; font-weight: 800; margin-top: 20px; text-decoration: none; }
.ai-signal-modal__link:hover { text-decoration: underline; }

html[color-scheme=dark] #ai_signal_page {
    --signal-bg: #111522;
    --signal-panel: #181d2c;
    --signal-text: #edf0fa;
    --signal-muted: #a6afc3;
    --signal-line: #2a3043;
}
html[color-scheme=dark] #ai_signal_page .ai-signal-search { background: #181d2c; }
html[color-scheme=dark] #ai_signal_page .ai-signal-search input::placeholder { color: #778197; }
html[color-scheme=dark] #ai_signal_page .ai-signal-empty { background: rgba(255,255,255,.02); border-color: #343b50; }
html[color-scheme=dark] #ai_signal_page .ai-signal-card { box-shadow: 0 8px 22px rgba(0,0,0,.16); }
html[color-scheme=dark] #ai_signal_page .ai-signal-card__source { background: #27315e; color: #afbbff; }
html[color-scheme=dark] #ai_signal_page .ai-signal-card__time { color: #8f98aa; }
html[color-scheme=dark] .ai-signal-modal {
    --signal-line: #343b50;
    --signal-muted: #a6afc3;
    --signal-text: #edf0fa;
}
html[color-scheme=dark] .ai-signal-modal__dialog { background: #181d2c; border-color: #343b50; box-shadow: 0 24px 70px rgba(0,0,0,.4); }
html[color-scheme=dark] .ai-signal-modal__close { background: #2b3347; color: #dce2ee; }
html[color-scheme=dark] .ai-signal-modal__content { color: #c0c8d8; }

@media screen and (max-width: 960px) {
    .ai-signal-hero { padding: 55px 0 48px; }
    .ai-signal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media screen and (max-width: 640px) {
    .ai-signal-hero { padding: 46px 0 38px; }
    .ai-signal-hero p { font-size: 14px; }
    .ai-signal-content { padding-top: 22px; }
    .ai-signal-section__heading { align-items: flex-start; flex-direction: column; gap: 10px; }
    .ai-signal-grid { grid-template-columns: 1fr; }
    .ai-signal-sections { gap: 42px; }
    .ai-signal-search { max-width: none; }
    .ai-signal-modal { padding: 12px; }
    .ai-signal-modal__dialog { border-radius: 14px; padding: 18px; }
}
