:root {
  --kf-dark-bg: #1a1a1a;
  --kf-dark-header: #2a2a2a;
  --kf-dark-border: #333;
  --kf-text-main: #eee;
  --kf-text-muted: #ccc;
  --kf-accent: #3498db;
}

.kt-termine-filter {
    margin-bottom: 1em;
    color: var(--kf-text-main);
}

.kt-termine-filter label {
    margin-right: .6em;
}

.kt-termine-filter p {
    margin-top: .6em;
}

.kt-termine-form {
    margin: 1.5em 0;
    padding: 1.5em;
    border: 1px solid var(--kf-dark-border);
    background: #222;
    color: var(--kf-text-main);
    border-radius: 4px;
}

.kt-termine-form label,
.kt-termine-form p,
.kt-termine-form h3 {
    color: var(--kf-text-main);
}

.kt-termine-form h3 {
    margin-top: 0;
}

.kt-termine-form textarea,
.kt-termine-form input,
.kt-termine-form select {
    background: #1a1a1a;
    border: 1px solid #444;
    color: #eee;
    padding: 6px;
    border-radius: 3px;
}

.kt-termine-form textarea {
    width: 100%;
    max-width: 600px;
}

.kt-termine-delete-form {
    display: inline;
}

.button-link-delete {
    padding: 0 !important;
    min-height: auto !important;
    line-height: 1 !important;
    color: #e74c3c !important;
}

.kt-csv-export-link {
    margin-top: .6em;
}

.kt-extplus {
    opacity: .85;
}

.kt-wasgeht-note {
    margin-top: .4em;
    font-size: .95em;
    line-height: 1.4;
    color: var(--kf-text-muted);
}

.kf-fieldset {
    display: inline-block;
    margin: 0 2em 1em 0;
    padding: 0.5em 1em 0.8em;
    border: 1px solid var(--kf-dark-border);
    background: #222;
}

.kt-termine-filter legend {
    font-weight: bold;
    padding: 0 0.4em;
    color: #fff;
}

/* Tabelle: nicht umbrechen; bei Platzmangel horizontal scrollen */
.kt-termine-list, .kt-wasgeht-list {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    border: 1px solid var(--kf-dark-border);
    border-radius: 4px;
    margin-bottom: 1em;
}

.kt-termine-table, .kt-wasgeht-list table {
    width: 100%;
    table-layout: auto;
    border-collapse: collapse;
    background: var(--kf-dark-bg);
    color: var(--kf-text-main);
}

.kt-termine-table thead th, .kt-wasgeht-list table thead th {
    background: var(--kf-dark-header);
    color: var(--kf-text-main);
    border-bottom: 2px solid var(--kf-dark-border);
    padding: 10px 8px;
    text-align: left;
}

.kt-termine-table td, .kt-wasgeht-list table td {
    padding: 8px;
    border-bottom: 1px solid var(--kf-dark-border);
    color: var(--kf-text-muted);
}

.kt-termine-table tr:nth-child(even), .kt-wasgeht-list table tr:nth-child(even) {
    background: #222;
}

.kt-termine-table th, .kt-termine-table td, .kt-wasgeht-list table th, .kt-wasgeht-list table td {
    white-space: nowrap;
}

.kt-wasgeht-list table td {
    white-space: normal;
}

.kt-filter-buttons {
    margin-top: .6em;
}

.notice-success {
    padding: .6em 1em;
    margin: .6em 0;
    background: #1b4d2e;
    border-left: 4px solid #2ecc71;
    color: #eee;
}

.notice-error {
    padding: .6em 1em;
    margin: .6em 0;
    background: #5d1a1a;
    border-left: 4px solid #e74c3c;
    color: #eee;
}
