/* SIGNAL 0.6 — světlé, klidnější téma
 * Načítat až ZA dashboard.css.
 */

:root {
    color-scheme: light;
    --bg: #edf3f8;
    --panel: #ffffff;
    --panel-soft: #f6f9fc;
    --text: #15283a;
    --muted: #61788b;
    --blue: #087ec1;
    --blue-soft: #176a9c;
    --line: rgba(23, 84, 123, 0.16);
    --line-strong: rgba(8, 126, 193, 0.32);
    --green: #008c63;
    --amber: #a96700;
    --red: #d4213d;
}

html,
body {
    background: #edf3f8 !important;
}

body {
    color: var(--text);
    background-image:
        radial-gradient(circle at 85% 0%, rgba(37, 168, 255, 0.09), transparent 34%),
        linear-gradient(180deg, #f7fafc 0, #edf3f8 420px) !important;
}

.app-shell {
    background: transparent !important;
}

.topbar {
    border-color: var(--line) !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 2px 14px rgba(27, 58, 82, 0.07);
}

.brand-mark {
    color: #087ec1;
    background: #eaf6fc !important;
    box-shadow: none !important;
}

.brand h1,
.navigation-item,
.folder-item,
.folder-parent {
    color: #13283a !important;
}

.brand p,
.system-state,
.navigation-label,
.folder-copy small,
.sidebar-note span,
.detail-toolbar span,
.detail-meta {
    color: #61788b !important;
}

.sidebar {
    border-color: var(--line) !important;
    background: rgba(248, 251, 253, 0.97) !important;
    box-shadow: 6px 0 20px rgba(29, 60, 83, 0.04);
}

.navigation-item {
    border-color: rgba(8, 126, 193, 0.24) !important;
    background: #e9f5fc !important;
}

.navigation-item:hover,
.navigation-item.active,
.folder-item:hover,
.folder-parent:hover,
.folder-item.active {
    border-color: #087ec1 !important;
    background: #dff1fb !important;
}

.folder-count,
.counter {
    color: #0872ad !important;
    border-color: rgba(8, 126, 193, 0.28) !important;
    background: #ffffff !important;
}

.sidebar-note {
    border-color: rgba(169, 103, 0, 0.25) !important;
    background: #fff9ec !important;
    box-shadow: none !important;
}

.sidebar-note strong {
    color: #9a5e00 !important;
}

.content {
    background: transparent !important;
}

.hero h2,
.catalog-hero h2,
.detail-name,
.dashboard-section-header h3,
.top-card-heading h4,
.catalog-card h3 {
    color: #10283b !important;
}

.hero p,
.catalog-hero p,
.top-card-heading p,
.catalog-card p,
.catalog-card small,
.loading,
.loading-card {
    color: #60788b !important;
}

.eyebrow,
.section-code,
.detail-symbol,
.last-update strong {
    color: #087ec1 !important;
}

.last-update span {
    color: #6b8192 !important;
}

.dashboard-section,
.catalog-panel,
.detail-panel,
.detail-hero {
    border-color: var(--line) !important;
    background: rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 8px 26px rgba(27, 58, 82, 0.07) !important;
}

.dashboard-section-header {
    border-color: var(--line) !important;
}

.dashboard-section-header button,
.detail-toolbar button,
.open-detail {
    color: #086fa9 !important;
    border-color: rgba(8, 126, 193, 0.28) !important;
    background: #eef8fd !important;
    box-shadow: none !important;
}

.dashboard-section-header button:hover,
.detail-toolbar button:hover,
.open-detail:hover {
    color: #ffffff !important;
    border-color: #087ec1 !important;
    background: #087ec1 !important;
}

.top-card,
.catalog-card {
    border-color: rgba(28, 85, 121, 0.18) !important;
    background: #ffffff !important;
    box-shadow: 0 4px 15px rgba(27, 58, 82, 0.06) !important;
}

.top-card:hover,
.catalog-card:hover {
    border-color: #168dca !important;
    background: #fbfdff !important;
    box-shadow: 0 9px 24px rgba(13, 103, 154, 0.12) !important;
}

.top-card.empty {
    border-style: dashed !important;
    background: #f6f9fb !important;
}

.compact-metric,
.detail-fact {
    border-color: rgba(23, 84, 123, 0.14) !important;
    background: #f5f9fc !important;
}

.compact-metric span,
.detail-fact span,
.compact-score span {
    color: #668094 !important;
}

.compact-metric strong,
.detail-fact strong,
.compact-score strong {
    color: #122b3e !important;
}

.score-track {
    background: #dce8f0 !important;
}

.score-fill {
    background: linear-gradient(90deg, #158fd1, #00a979) !important;
    box-shadow: none !important;
}

.top-card-reason,
.detail-panel p,
.factor-box ul {
    color: #425f73 !important;
}

.top-card.closed,
.top-card.delayed,
.top-card.unknown {
    border-color: rgba(212, 33, 61, 0.34) !important;
    background: #fffafb !important;
}

.top-card.closed .top-card-reason,
.top-card.delayed .top-card-reason,
.top-card.unknown .top-card-reason {
    color: #c01832 !important;
    font-weight: 750;
}

.market-badge.closed,
.market-badge.delayed,
.market-badge.unknown {
    color: #c01832 !important;
    border-color: rgba(212, 33, 61, 0.4) !important;
    background: #fff0f2 !important;
    box-shadow: none !important;
}

.market-badge.open,
.direction-badge.long {
    color: #007b57 !important;
    border-color: rgba(0, 140, 99, 0.32) !important;
    background: #eaf9f3 !important;
    box-shadow: none !important;
}

.direction-badge.short {
    color: #c01832 !important;
    border-color: rgba(212, 33, 61, 0.32) !important;
    background: #fff0f2 !important;
    box-shadow: none !important;
}

.direction-badge.watch,
.direction-badge {
    box-shadow: none !important;
}

.factor-box.positive {
    border-color: rgba(0, 140, 99, 0.23) !important;
    background: #effaf6 !important;
}

.factor-box.negative,
.xtb-state {
    border-color: rgba(212, 33, 61, 0.24) !important;
    background: #fff4f5 !important;
}

.detail-panel h3,
.detail-panel h4 {
    color: #176a9c !important;
}

.empty-value {
    color: #758b9b !important;
}

.footer {
    color: #6b8192 !important;
    border-color: var(--line) !important;
    background: #f7fafc !important;
}

@media (max-width: 900px) {
    .sidebar {
        border-bottom: 1px solid var(--line) !important;
        box-shadow: 0 5px 16px rgba(27, 58, 82, 0.05);
    }
}

/* SIGNAL 0.6.1 — čitelnější levé menu */

.sidebar {
    color: #102536 !important;
}

.navigation-label {
    color: #38576d !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    letter-spacing: 0.08em !important;
}

.navigation-item {
    color: #102536 !important;
    font-size: 17px !important;
    font-weight: 850 !important;
}

.folder-item,
.folder-parent {
    color: #102536 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
}

.folder-copy strong,
.folder-item strong,
.folder-parent strong {
    color: #102536 !important;
    font-size: 16px !important;
    font-weight: 850 !important;
    line-height: 1.3 !important;
}

.folder-copy small,
.folder-item small,
.folder-parent small {
    color: #46667c !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.35 !important;
}

.folder-count,
.counter {
    color: #075f91 !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}

.sidebar-note strong {
    font-size: 15px !important;
}

.sidebar-note span {
    color: #425f73 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

/* SIGNAL 0.6.2 — rozšířené informační zápatí */

.app-shell {
    grid-template-rows:
        82px
        minmax(calc(100vh - 128px), auto)
        auto !important;
}

.footer {
    display: grid !important;
    grid-template-columns: auto minmax(300px, 900px) !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 24px !important;
    min-height: 100px !important;
    padding: 18px 28px !important;
    color: #4d687b !important;
    border-top: 1px solid var(--line) !important;
    background: #f7fafc !important;
}

.footer-status {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    color: #526f83;
    font-size: 12px;
    font-weight: 700;
}

.footer-legal {
    text-align: right;
}

.footer-legal strong {
    color: #17384f;
    font-size: 13px;
}

.footer-legal a {
    color: #087ec1;
    text-decoration: none;
}

.footer-legal a:hover {
    text-decoration: underline;
}

.footer-legal p {
    max-width: 900px;
    margin: 7px 0 0;
    color: #60798b;
    font-size: 11px;
    line-height: 1.5;
}

@media (max-width: 900px) {
    .footer {
        grid-template-columns: 1fr !important;
        gap: 13px !important;
        padding: 18px !important;
    }

    .footer-legal {
        text-align: left;
    }
}
