/* Henel Kalender – Darstellung für Cockpit-Karte und Vollbild */
.kwoche{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:8px}
.kwoche.gross{margin-top:0}
.ktag{border:1px solid var(--line);border-radius:var(--r);padding:8px;min-height:92px;background:var(--panel);display:flex;flex-direction:column;gap:5px;cursor:pointer}
.kwoche.gross .ktag{min-height:calc(100vh - 190px);padding:10px}
.ktag.we{background:var(--panel2)}
.ktag.heute{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.ktag .kd{font-size:13px;color:var(--muted);font-weight:600}
.kwoche.gross .ktag .kd{font-size:15px}
.ktag.heute .kd{color:var(--accent)}
.kleer{color:var(--muted);font-size:13px}
.ktermin{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink);border-radius:6px;padding:5px 7px;font:inherit;font-size:13px;line-height:1.3;cursor:pointer;min-height:0}
.ktermin.ganz{border-left-color:var(--ok);background:var(--ok-soft)}
.kwoche.gross .ktermin{font-size:15px;padding:8px 10px}
.ktermin b{display:block;font-weight:600;overflow-wrap:anywhere}
.ktermin span{color:var(--muted);font-size:12px}
.kwoche.gross .ktermin span{font-size:13px}
.kwoche.zwei .ktag{min-height:120px}
@media (max-width:900px){.kwoche{grid-template-columns:1fr}.kwoche.gross .ktag,.kwoche.zwei .ktag{min-height:0}}
/* Monat */
.kmonat{display:flex;flex-direction:column;gap:6px}
.kkopf,.kraster{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.kkopf span{font-size:13px;color:var(--muted);font-weight:600;padding-left:4px}
.kfeld{border:1px solid var(--line);border-radius:10px;background:var(--panel);min-height:calc((100vh - 230px) / 6);padding:5px;display:flex;flex-direction:column;gap:3px;cursor:pointer;min-width:0;overflow:hidden}
.kfeld.fremd{opacity:.5}
.kfeld.heute{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.kfeld .kz{font-size:13px;font-weight:700}
.kfeld.heute .kz{color:var(--accent)}
.kfeld .ktermin{font-size:12px;padding:2px 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kfeld .ktermin b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kmehr{font-size:11px;color:var(--muted)}
@media (max-width:640px){.kkopf,.kraster{gap:3px}.kfeld{min-height:64px;padding:3px}.kfeld .ktermin b{font-size:11px}}
/* Termin-Fenster */
dialog.kdlg{border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--ink);padding:18px;width:min(460px,calc(100vw - 32px));box-shadow:0 20px 50px rgba(0,0,0,.35)}
dialog.kdlg::backdrop{background:rgba(10,14,18,.5)}
dialog.kdlg h2{margin:0 0 10px}
.kreihe{display:grid;grid-template-columns:1fr 1fr;gap:10px}
