/* ============================================================
   MVZ Dienstplan — Seiten-spezifische Stile (Stammdaten)
   ============================================================ */

/* ── Skill-Matrix ── */
.matrix-wrap{border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:auto;background:var(--c-surface);max-height:calc(100vh - 220px)}
.skill-matrix{border-collapse:collapse;table-layout:fixed}
.skill-matrix th,.skill-matrix td{border-right:1px solid var(--c-border2);border-bottom:1px solid var(--c-border2)}
.skill-matrix .sticky-name{position:sticky;left:0;z-index:5;background:var(--c-surface2);min-width:160px;width:160px;text-align:left;padding:8px 12px}
.skill-matrix thead .sticky-name{z-index:15}
.skill-matrix thead th{position:sticky;top:0;z-index:10;background:var(--c-surface2);padding:8px 4px;font-size:9px;font-weight:600;color:var(--c-text3);text-transform:uppercase;letter-spacing:.04em;width:62px;min-width:62px;text-align:center;line-height:1.3;vertical-align:bottom}
.skill-col-dot{display:block;width:8px;height:8px;border-radius:50%;margin:0 auto 4px}
.skill-matrix tbody .sticky-name{background:var(--c-surface)}
.skill-matrix tbody tr:hover .sticky-name{background:var(--c-surface2)}
.ma-matrix-name{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:500}
.skill-cell{height:34px;text-align:center;vertical-align:middle}
.skill-empty{color:var(--c-border);font-size:14px}
.dots{display:inline-flex;gap:2px;align-items:center;justify-content:center}
.dot{width:7px;height:7px;border-radius:50%;background:var(--c-border);display:inline-block}
.dot.on{background:var(--c-accent-t)}

/* ── Skill-Zeilen (Detail) ── */
.skill-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--c-border2)}
.skill-row:last-child{border-bottom:none}
.skill-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.skill-name{font-size:12px;font-weight:500;flex:1}
.skill-label{font-size:10px;color:var(--c-text3);min-width:110px;text-align:right}
.lvl-btns{display:flex;gap:3px}
.lvl-btn{width:26px;height:26px;border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-surface);font-size:11px;font-weight:600;color:var(--c-text2);cursor:pointer;font-family:inherit}
.lvl-btn:hover{border-color:var(--c-accent-t)}
.lvl-btn.active{background:var(--c-accent);color:#fff;border-color:var(--c-accent)}
.lvl-btn:disabled{cursor:default;opacity:.7}

/* ── Präferenzen ── */
.pref-row{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--c-border2)}
.pref-row:last-child{border-bottom:none}
.pref-kind{font-size:10px;color:var(--c-text3);min-width:64px}
.pref-value{font-size:12px;flex:1}
.pref-weight{display:flex;gap:2px}
.w-btn{width:28px;height:24px;border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-surface);font-size:10px;font-weight:600;color:var(--c-text2);cursor:pointer;font-family:inherit}
.w-btn.active{background:var(--c-text2);color:#fff;border-color:var(--c-text2)}
.w-btn.active.pos{background:var(--c-accent);border-color:var(--c-accent)}
.w-btn.active.neg{background:var(--c-warn);border-color:var(--c-warn)}

/* ── Aufgaben ── */
.farb-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0;vertical-align:middle}
.vk-chip{font-size:9px;padding:1px 6px;border-radius:99px;background:var(--c-surface2);border:1px solid var(--c-border);color:var(--c-text2);display:inline-block}
.color-opt{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:transform .1s}
.color-opt:hover{transform:scale(1.12)}
.color-opt.sel{border-color:var(--c-text)}

/* ── Festtermine ── */
.termin-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:12px;cursor:pointer;transition:border-color .15s,box-shadow .15s;box-shadow:var(--shadow)}
.termin-card:hover{border-color:var(--c-accent-t);box-shadow:var(--shadow-md)}
.termin-icon{width:36px;height:36px;border-radius:var(--r-sm);background:var(--c-accent-l);color:var(--c-accent2);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.ev-member{font-size:10px;font-weight:600;padding:2px 7px;border-radius:99px}
