/* ZÁKLADNÍ BARVY (Světly režim) */
:root {
    --bg-color: #f4f7f6;
    --card-bg: #ffffff;
    --text-main: #222222;
    --text-muted: #666666;
    --table-border: #eeeeee;
    --table-hover: #f8fbff;
    --header-bg: #004a8f;
    --header-text: #ffffff;
    --gauge-empty: #e2e3e5;
    --gauge-text-live: #000000;
    --gauge-text-pred: #777777;
    --delay-color: #d9534f;
}

/* TMAVÝ REŽIM (Automaticky se zapne, pokud to má uživatel v systému) */
@media (prefers-color-scheme: dark) {
    :root {
        --bg-color: #121212;
        --card-bg: #1e1e1e;
        --text-main: #e0e0e0;
        --text-muted: #aaaaaa;
        --table-border: #2c2c2c;
        --table-hover: #252b30;
        --header-bg: #153b6b; /* Tlumenější modrá pro oči */
        --header-text: #e0e0e0;
        --gauge-empty: #333333;
        --gauge-text-live: #ffffff; /* Bílé tučné nástupiště ve tmě */
        --gauge-text-pred: #999999;
        --delay-color: #ff6b6b;
    }
}

body { 
    /* Dopravní fonty: Bahnschrift pro Windows, DIN pro profi monitory, Roboto jako fallback */
    font-family: 'Bahnschrift', 'DIN Pro', 'Roboto', 'Segoe UI', sans-serif; 
    background-color: var(--bg-color); 
    color: var(--text-main); 
    margin: 0; 
    padding: 20px; 
    transition: background-color 0.3s, color 0.3s; /* Plynulý přechod při změně režimu */
}

h1 { text-align: center; color: var(--header-bg); margin-bottom: 30px; font-weight: 600;}

table { 
    width: 100%; 
    max-width: 1000px; 
    margin: 0 auto; 
    border-collapse: collapse; 
    background: var(--card-bg); 
    box-shadow: 0 4px 20px rgba(0,0,0,0.1); 
    border-radius: 8px; 
    overflow: hidden; 
}

th, td { padding: 15px; text-align: left; border-bottom: 1px solid var(--table-border); vertical-align: middle; }
th { background-color: var(--header-bg); color: var(--header-text); text-transform: uppercase; font-size: 0.9em; letter-spacing: 1px; }
tr:hover { background-color: var(--table-hover); }

.delay { color: var(--delay-color); font-weight: bold; font-size: 0.95em; }
.train-name { font-size: 1.15em; letter-spacing: 0.5px; }
.destination { color: var(--text-muted); font-size: 1.05em; }

/* Obal pro všechny budíky jednoho vlaku */
.platforms-container { display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap; }

/* LINEÁRNÍ UKAZATEL (Bar Chart) */
.bar-wrapper { 
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 46px; /* Kompaktní šířka pro zarovnání */
    gap: 5px; /* Rovnoměrná mezera mezi číslem, čárou a procentem */
}

.bar-svg { 
    width: 100%; 
    height: auto; 
    display: block; 
}

.platform-number { line-height: 1; }
.platform-prob { font-size: 0.65em; color: var(--text-muted); font-weight: 600; line-height: 1; }

/* Typografie nástupišť */
.is-live { font-weight: 700; font-size: 1.35em; color: var(--gauge-text-live); }
.is-pred { font-weight: 500; font-size: 1.15em; color: var(--gauge-text-pred); }
