:root {
    --navy: #1a3328;
    --gold: #b5984e;
    --gold3: #e8d9b0;
    --cream: #f4f7f4;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    background: var(--cream);
    font-family: 'Jost', sans-serif;
    color: var(--navy);
}

.site-header {
    background: var(--navy);
    color: var(--cream);
    padding: 18px 28px;
    display: flex;
    align-items: baseline;
    gap: 16px;
}

.logo {
    font-family: 'Cormorant Garamond', serif;
    font-size: 26px;
    font-weight: 600;
    letter-spacing: 2px;
}

.logo .dot {
    color: var(--gold);
    font-size: 40px;
    line-height: 0;
    vertical-align: middle;
    display: inline-block;
    transform: translateY(4px);
}

.header-divider {
    width: 1px;
    height: 24px;
    background: rgba(232, 217, 176, 0.4); /* --gold3 gedimmt */
}

.header-sub {
    font-family: 'Jost', sans-serif;
    font-weight: 500;
    font-size: 14px;
    color: var(--gold3);
}

.logout-link {
    margin-left: auto;
    color: var(--gold3);
    text-decoration: none;
    font-size: 13px;
}

main { padding: 28px; max-width: 1200px; margin: 0 auto; }

h1, h2 { font-family: 'Cormorant Garamond', serif; color: var(--navy); }

.stats-row { display: flex; gap: 16px; margin-bottom: 20px; flex-wrap: wrap; }

.stat-card {
    background: white;
    border: 1px solid #ddd;
    border-left: 4px solid var(--navy);
    padding: 14px 20px;
    border-radius: 6px;
    min-width: 160px;
}
.stat-card.ok { border-left-color: #4c7a4c; }
.stat-card.warn { border-left-color: var(--gold); }
.stat-card.neutral { border-left-color: #999; }

.stat-num { display: block; font-size: 28px; font-family: 'DM Mono', monospace; font-weight: 600; }
.stat-label { font-size: 12px; color: #555; }

.run-now-form { margin-bottom: 24px; }

.flash {
    padding: 12px 16px;
    border-radius: 6px;
    margin-bottom: 16px;
    font-size: 14px;
}
.flash-ok { background: #eaf5ea; border: 1px solid #b7dab7; color: #245a24; }
.flash-error { background: #fbeaea; border: 1px solid #e2b3b3; color: #7a1f1f; }

button {
    background: var(--navy);
    color: var(--cream);
    border: none;
    padding: 10px 18px;
    border-radius: 4px;
    font-family: 'Jost', sans-serif;
    font-size: 14px;
    cursor: pointer;
}
button:hover { background: var(--gold); color: var(--navy); }

.log-table {
    width: 100%;
    border-collapse: collapse;
    background: white;
    font-size: 13px;
    margin-bottom: 32px;
}
.log-table th, .log-table td {
    padding: 8px 10px;
    border-bottom: 1px solid #eee;
    text-align: left;
    vertical-align: top;
}
.log-table th {
    background: var(--navy);
    color: var(--cream);
    font-weight: 500;
    font-size: 12px;
}
.row-rechnung { background: #f2f8f2; }
.row-unsicher { background: #fdf6e8; }
.row-error { background: #fbeaea; }

.login-box {
    max-width: 320px;
    margin: 80px auto;
    background: white;
    padding: 32px;
    border-radius: 8px;
    text-align: center;
}
.login-box input {
    width: 100%;
    padding: 10px;
    margin-bottom: 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: 'DM Mono', monospace;
    font-size: 16px;
    letter-spacing: 2px;
}
.error { color: #a33; font-size: 13px; }
