/* Heute-Ansicht der Admin-Startseite (finales Design, Michael 25.10.2026 — app/modules/cleaninfo/heute.php).
   Bausteine aus design2.css (Abschnitt 8): .d2-bar, .d2-flag, .d2-legend, .d2-chips/.d2-chip, .d2-find, .d2-warn-t; hier nur das Raster der Karte.
   Personen nebeneinander, sobald die Karte mindestens 700 px breit ist (Container-Abfrage); schmaler: Filter-Chips je Person, Karten einspaltig. */
.d2 .card.ht-today{padding:20px;box-shadow:none;container-type:inline-size}
html.d2[data-da] .card.ht-today{border:0;padding:20px}
.d2 .ht-head{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;justify-content:space-between}
html.d2 .ht-title{font-size:19px;font-weight:800;margin:0;letter-spacing:-.01em}
.d2 .ht-count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.d2 .ht-find{margin:6px 0 0;font-size:14px}
.d2 .ht-legend{margin:12px 0 16px}
.d2 .ht-lg-flag{color:var(--s-prob)}
.d2 .ht-chips{display:none;margin:0 0 12px}
.d2 .ht-cols{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@container (min-width:700px){.d2 .ht-cols{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}}
@container (max-width:699.98px){.d2 .ht-chips{display:flex}.d2 .ht-person.is-off{display:none}}
.d2 .ht-person{min-width:0;display:flex;flex-direction:column;gap:10px}
.d2 .ht-phead{display:flex;align-items:baseline;gap:4px 10px;flex-wrap:wrap;padding:0 2px}
.d2 .ht-name{font-size:17px;font-weight:800}
.d2 .ht-meta{font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.d2 .ht-live{color:var(--s-run);font-weight:600}
/* Karte: Nummer · Wohnung + Prio · Fahne / Zeile 2 Stand / Zeile 3 Zeiten; Balken oben */
.d2 .ht-card{position:relative;background:var(--surface-2);border-radius:var(--r-tile);padding:14px 14px 12px;display:grid;grid-template-columns:30px minmax(0,1fr) auto;
 gap:2px 12px;align-items:start;overflow:hidden}
.d2 .ht-card>.d2-bar{position:absolute;inset:0 0 auto 0}
.d2 .ht-ord{grid-row:1/4;width:30px;height:30px;border-radius:50%;background:var(--navy-bg);color:var(--on-navy);display:grid;place-items:center;font-weight:800;font-size:14px;margin-top:2px;
 font-variant-numeric:tabular-nums}
.d2.dk .ht-ord{background:var(--primary);color:#fff}
.d2 .ht-card.is-wait .ht-ord{background:var(--s-todo);color:#fff}
.d2 .ht-l1{grid-column:2;display:flex;align-items:center;gap:8px;min-width:0}
html.d2 .ht-apt{font-size:17px;font-weight:800;letter-spacing:-.01em;color:var(--ink);text-decoration:none;white-space:nowrap}
.d2 .ht-apt:hover{text-decoration:underline;text-underline-offset:3px}
.d2 .ht-prio{font-size:11.5px;font-weight:800;padding:1px 7px;border-radius:5px;background:var(--prio-d);color:var(--prio-d-ink)}
.d2 .ht-prio.p-A{background:var(--prio-a);color:var(--prio-a-ink)}
.d2 .ht-prio.p-B{background:var(--prio-b);color:var(--prio-b-ink)}
.d2 .ht-prio.p-C{background:var(--prio-c);color:var(--prio-c-ink)}
.d2 .ht-flag{grid-column:3;grid-row:1;align-self:center}
.d2 .ht-l2{grid-column:2/4;font-size:13.5px;font-weight:700;display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.d2 .ht-card.is-done .ht-l2{color:var(--s-done)}
.d2 .ht-card:is(.is-run,.is-pause) .ht-l2{color:var(--s-run)}
.d2 .ht-card.is-wait .ht-l2{color:var(--muted)}
.d2 .ht-dur{color:inherit}
.d2 .ht-over{color:var(--s-warn);font-weight:700}
.d2 .ht-soll{font-weight:500;color:var(--muted)}
.d2 .ht-l3{grid-column:2/4;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.d2 .ht-foot{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:13px;color:var(--muted)}
html.d2 .ht-foot a{color:var(--s-run);font-weight:600}
@container (max-width:699.98px){.d2 .ht-title{font-size:17px}}
@media(max-width:699.98px){.d2 .card.ht-today,html.d2[data-da] .card.ht-today{padding:14px}}
@media(prefers-reduced-motion:no-preference){.d2 .ht-card .d2-bar>i{transition:width .5s ease}}
/* Tage blättern (nur Admins, 30.10.2026): ‹ Fr 30.10. › Heute — eigene Zeile über dem Titel, Farben aus den Tokens (hell + dunkel) */
.d2 .ht-nav{flex-basis:100%;display:flex;align-items:center;gap:6px;margin:0 0 2px}
.d2 .ht-nav-b{display:inline-grid;place-items:center;min-width:34px;height:34px;border-radius:999px;background:var(--surface-2);color:var(--ink);font-size:20px;font-weight:700;line-height:1;text-decoration:none}
.d2 a.ht-nav-b:hover{background:var(--surface-3)}
.d2 .ht-nav-b.is-off{opacity:.35}
.d2 .ht-nav-d{min-width:76px;text-align:center;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
html.d2 .ht-nav-t{margin-left:4px;font-size:13px;font-weight:600;color:var(--s-run)}
.d2 .ht-acc{color:var(--s-done);font-weight:600}
@media(pointer:coarse){.d2 .ht-nav-b{min-width:44px;height:44px}}
