/* Station departure landing page — standalone, no sidebar */
*, *::before, *::after { box-sizing: border-box; }

body {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    background: #001f5b;
    color: #ffffff;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.dep-header {
    background: #0050c8;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.dep-logo img {
    height: 36px;
    display: block;
}

.dep-clock {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.04em;
    font-variant-numeric: tabular-nums;
}

/* ── Main content ─────────────────────────────────────────────────────────── */
.dep-main {
    flex: 1;
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding: 24px 16px 32px;
}

.dep-title {
    font-size: 26px;
    font-weight: 700;
    margin: 0 0 20px;
    line-height: 1.2;
}

.dep-title span {
    color: #ffd54a;
}

/* ── Board ─────────────────────────────────────────────────────────────── */
.dep-board-wrap {
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
}

.dep-columns {
    display: grid;
    grid-template-columns: 72px 100px 1fr 90px 1fr;
    gap: 0;
    background: #0050c8;
    padding: 10px 14px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.04em;
}

.dep-body {
    background: rgba(255,255,255,0.04);
}

.dep-row {
    display: grid;
    grid-template-columns: 72px 100px 1fr 90px 1fr;
    padding: 10px 14px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    font-size: 15px;
    align-items: center;
    transition: background 0.15s;
}

.dep-row:last-child {
    border-bottom: none;
}

.dep-row:nth-child(even) {
    background: rgba(255,255,255,0.04);
}

.dep-row.cancelled {
    color: #ff8b8b;
}

.dep-row.delayed {
    color: #ffd54a;
}

.dep-time {
    font-weight: 700;
    font-size: 17px;
    font-variant-numeric: tabular-nums;
}

.exp-ontime  { color: #6ee46e; }
.exp-delayed { color: #ffd54a; }
.exp-cancelled { color: #ff8b8b; }

.dep-plat {
    text-align: center;
}

.dep-empty {
    padding: 20px 14px;
    opacity: 0.6;
    font-style: italic;
}

/* ── CTA ─────────────────────────────────────────────────────────────── */
.dep-cta {
    font-size: 15px;
    color: rgba(255,255,255,0.8);
    margin: 0;
}

.dep-cta-link {
    display: inline-block;
    margin-top: 8px;
    background: #0050c8;
    color: #fff;
    text-decoration: none;
    padding: 9px 18px;
    border-radius: 6px;
    font-weight: 700;
    font-size: 15px;
    transition: background 0.15s;
}

.dep-cta-link:hover {
    background: #003d9e;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.dep-footer {
    background: rgba(0,0,0,0.3);
    padding: 14px 20px;
    font-size: 12px;
    color: rgba(255,255,255,0.55);
    text-align: center;
}

.dep-footer a {
    color: rgba(255,255,255,0.7);
    text-decoration: none;
}

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

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .dep-title { font-size: 20px; }

    .dep-columns,
    .dep-row {
        grid-template-columns: 64px 90px 1fr 50px;
    }

    /* hide operator column on mobile */
    .dep-columns span:last-child,
    .dep-row .dep-op {
        display: none;
    }

    .dep-clock { font-size: 18px; }
}
