/* =====================================================================
   Modul-CSS Personalplaner-Tab (ausfuehrung.js)
   Nur modul-spezifische Overrides. Generische Patterns kommen aus
   css/components/.
   Mockup-Quelle: docs/redesign/mockups/12_personalplaner_v2_standalone.html

   Sprint S4.15b Phase 1: 1:1-Extraktion der proj-lz-/af-lz-/af-zp-Klassen
   aus design-system.css. Phase 2 schreibt das Markup auf v2-Bibliothek-
   Klassen um — danach werden die meisten Definitionen hier obsolet und
   können gelöscht werden.
   ===================================================================== */

/* ── Personalplaner-Sub-Tab Container ─────────────────────────── */
.proj-lz-pad{padding:8px}
.proj-lz-pad-overflow{padding:0 8px 8px 8px;overflow-x:auto}
.ds-body .proj-detail-pad,
.ds-body .proj-lz-pad-overflow{width:100%;box-sizing:border-box}

/* ── Add-Buttons ─────────────────────────────────────────────── */

/* ── Slot-Stack-Grid (5 Spalten harte Pixel, Sprint-A.2-Excel-Modus)
   180 px Name · 90 px Rolle · 100 px Status · 190 px Aktionen · 24 px Slot-Del
   24-px-Spalte 5 ist Restschuld aus S4.0 Phase 2 (siehe POST_CUTOVER_BACKLOG).
   Wird in Phase 2 durch v2 .slot-stack ersetzt. ─────────────── */
.proj-lz-pers-row{display:flex;align-items:center;gap:8px;margin-bottom:2px;/* überschrieben durch Grid-Block unten */}
.af-lz-pers-row{flex-wrap:nowrap}
.af-lz-pers-row, .proj-lz-pers-row {
    display: grid !important;
    grid-template-columns: 180px 90px 100px 190px 24px !important;
    gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
}

/* ── Slot-Dropdowns ──────────────────────────────────────────── */
.proj-lz-pers-sel {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 180px !important;
    box-sizing: border-box !important;
    font-size:12px;padding:2px 4px;flex:1;
}
.proj-lz-pers-sel-warn{background:#fff0f0;border-color:#f5c6cb}  /* S58: hardcoded für Spec */
.af-zp-status-sel { width: 100px !important; min-width: 100px !important; max-width: 100px !important; }

/* ── Slot-Status-Badge ───────────────────────────────────────── */

/* ── Cell-Vertical-Align Modifier (Tabellen-Zellen für Slot-Spalten) ── */
.proj-lz-cell-top{vertical-align:top;padding-top:6px;white-space:nowrap}
.proj-lz-cell-noml{vertical-align:top;padding-top:4px}
.proj-lz-cell-vertical{vertical-align:top}
.proj-lz-actions{vertical-align:top;padding-top:6px;text-align:right}

/* ── Color-Dot (KW-Spalte links) ─────────────────────────────── */
.proj-lz-color-dot{width:10px;height:10px;border-radius:2px;display:inline-block;vertical-align:middle;margin-right:4px}

/* ── Spalten-Breiten (alte Excel-Modus-Selects) ──────────────── */
.proj-lz-sel-90 { width: 85px !important; min-width: 85px !important; max-width: 85px !important; }

/* ── Tabellen-Breite Header-Spalten ──────────────────────────── */
.proj-lz-table-w-190{width:190px}
.proj-lz-table-mw-270{min-width:270px}
.proj-lz-table-w-110{width:110px}
.proj-lz-table-w-36{width:36px}

/* ── Delete-Button (Zeile entfernen) ─────────────────────────── */

/* ── Action-Buttons im Slot (Phase 2 Popover-Pattern) ────────── */
.af-zp-actions {
    display: flex !important;
    gap: 10px !important;
    width: 190px !important;
}
.af-zp-slot-del{
    width:22px;height:22px;padding:0;
    font-size:12px;
    color:var(--semantic-red);
    background:transparent;
    border:1px solid #f5c2bd;  /* S58: hardcoded für Spec */
    cursor:pointer;border-radius:3px;
}
.af-zp-slot-del:hover{
    background:#fde0dd;  /* S58: hardcoded für Spec */
    color:var(--semantic-red);
}
.af-zp-send-confirm{
    background:var(--brand-blue);
    color:var(--surface);
    border-color:var(--brand-blue);
}
.af-zp-send-confirm:hover{
    background:var(--brand-blue-hover);
}

/* ── Archiv-Block (vergangene Zeiträume) ─────────────────────── */
.af-lz-archiv-wrap{margin-top:14px;border-top:1px dashed var(--border);padding-top:10px}
.af-lz-archiv-head:hover{background:#eef2f7;color:var(--dark)}  /* S58: hardcoded für Spec */
.af-lz-archiv-tog.open{transform:rotate(90deg)}
.af-lz-archiv-body{display:none;padding-top:8px}
.af-lz-archiv-body.open{display:block}
.af-lz-archiv-body .data-table{opacity:.7}

/* ── Mobile-Override für Rolle-Select ────────────────────────── */
@media (max-width: 599px) {
    .af-lz-rolle-sel{min-width:100%;max-width:100%;margin-top:2px}
}
