/* Tagesübersicht: Zeit, Arbeitsstand und tatsächliche Erledigung getrennt lesbar. */
.af-zp-uhr { color: #343a46; font-weight: 650; font-variant-numeric: tabular-nums; border: 1px solid var(--af-line); border-radius: 5px; padding: 2px 6px; background: var(--af-card); white-space: nowrap; }
.af-zeitplan { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.af-zp { display: grid; grid-template-columns: minmax(0,1fr) auto; align-content: start; align-items: center; min-width: 0; padding: 10px; gap: 5px 8px; border-top-width: 3px; }
.af-zp .af-zp-edit { min-height: 0; height: auto; padding: 0; }
.af-zp .af-zp-name { grid-row: 2; grid-column: 1 / -1; font-size: 13px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
.af-zp .af-z-zeit { grid-row: 1; grid-column: 1; font-size: 16px; font-weight: 750; color: #343a46; letter-spacing: -.025em; font-variant-numeric: tabular-nums; line-height: 1.3; }
.af-zp.fertig .af-z-zeit { color: var(--af-ok); }
.af-zp-status { grid-row: 1; grid-column: 2; justify-self: end; align-self: start; font-size: 10px; font-weight: 700; letter-spacing: .035em; text-transform: uppercase; border-radius: 5px; padding: 3px 6px; background: #f0f1f4; color: #606878; }
.af-zp.jetzt .af-zp-status { color: var(--af-rot); background: #fff; }
.af-zp.ueber .af-zp-status { color: var(--af-crit); background: #fff; }
.af-zp.fertig .af-zp-status { color: var(--af-ok); background: #fff; }
.af-zp.vorbei { opacity: 1; }
.af-zp .af-z-rest { grid-row: 3; grid-column: 1; font-size: 12px; font-weight: 600; margin-top: 0; line-height: 1.4; }
.af-zp-fortschritt { grid-row: 4; grid-column: 1 / -1; width: 100%; height: 6px; border: 0; border-radius: 10px; overflow: hidden; accent-color: var(--af-rot); background: #e5e7eb; }
.af-zp-fortschritt::-webkit-progress-bar { background: #e5e7eb; border-radius: 10px; }
.af-zp-fortschritt::-webkit-progress-value { background: var(--af-rot); border-radius: 10px; }
.af-zp-fortschritt::-moz-progress-bar { background: var(--af-rot); border-radius: 10px; }
.af-zp.fertig progress { accent-color: var(--af-ok); }
.af-zp.fertig progress::-webkit-progress-value { background: var(--af-ok); }
.af-zp.fertig progress::-moz-progress-bar { background: var(--af-ok); }
.af-zp-detail { grid-row: 5; grid-column: 1 / -1; color: var(--af-mute); font-size: 11px; line-height: 1.35; }
.af-zp-detail:empty { display: none; }
.af-zp-ordnung { grid-row: 3; grid-column: 2; justify-self: end; margin-top: 0; padding-top: 0; }
.af-zp-ordnung .af-knopf.klein { min-height: 24px; height: 24px; min-width: 28px; padding: 0 6px; line-height: 22px; font-size: 13px; }
.af-zp-auswahl { flex-basis: 100%; min-width: 0; border: 0; padding: 10px 0; margin: 0; border-top: 1px solid var(--af-line); }
.af-zp-auswahl legend { font-weight: 600; font-size: 14px; }
.af-zp-auswahl p { margin: 0 0 10px; }
.af-zp-optionen { display: grid; grid-template-columns: repeat(auto-fit,minmax(220px,1fr)); gap: 7px; }
.af-zp-optionen label { flex-direction: row; align-items: center; border: 1px solid var(--af-line); border-radius: 7px; padding: 8px 10px; background: #faf9fa; cursor: pointer; }
.af-zp-optionen label:has(input:checked) { border-color: var(--af-rot); background: var(--af-rot-soft); }
.af-zp-optionen input[type=checkbox] { min-height: 0; width: 16px; height: 16px; flex-shrink: 0; accent-color: var(--af-rot); margin: 0 5px 0 0; }
@media(max-width:900px) { .af-zeitplan { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .af-zeitplan { grid-template-columns: 1fr; } .af-zp-optionen { grid-template-columns: 1fr; } }
