/* Einheitliche, modernere Optik der Verwaltungsseiten (Mitarbeiter, Objekte, Urlaub).
   Bewusst NUR ueber die Seiten-Container gescoped: die .shift-editor-*-Klassen aus styles.css
   werden auch in den Dialogen der Planung benutzt und duerfen dort unveraendert bleiben.
   Alle Farben/Radien kommen aus css/tokens.css, es wird nichts Neues eingefuehrt ausser
   einem etwas groesseren Kartenradius und weicheren Schatten. */

#np-app #np-team-container,
#np-app #np-objekte-container {
  --np-card-radius: 14px;
  --np-card-shadow: 0 1px 2px rgba(20,22,26,.05), 0 6px 20px rgba(20,22,26,.05);
  max-width: 960px;
  padding: 32px 36px 48px;
}

/* Kopf: gleiche Typo auf allen Seiten */
.team-page-head h1,
.objekte-page-head h1 {
  font-size: 24px; letter-spacing: -.01em;
}
.team-page-head, .objekte-page-head { margin-bottom: 20px; }
#empManageMeta, #objektManageMeta {
  font-size: 13px; color: var(--text-secondary);
  background: var(--bg-surface); border-radius: var(--radius-full);
  padding: 4px 12px; box-shadow: var(--shadow-sm);
}

/* Werkzeugleiste: Suche + Aktionen */
#np-team-container .shift-editor-actions {
  display: flex; align-items: center; gap: 10px; margin-bottom: 16px;
}
#np-team-container .emp-manage-search-input {
  flex: 1 1 auto; min-width: 0; height: 40px; box-sizing: border-box;
  padding: 0 14px; border-radius: 10px;
  border: 1px solid var(--border-default); background: var(--bg-surface);
  box-shadow: var(--shadow-sm);
}
#np-team-container .emp-manage-search-input:focus,
.team-page-body select:focus {
  border-color: var(--np-accent); box-shadow: 0 0 0 3px var(--np-accent-soft);
}
#np-team-container .shift-editor-actions .action-btn,
#np-objekte-container .objekte-page-head .action-btn {
  height: 40px; padding: 0 16px; border-radius: 10px; font-weight: 600;
  display: inline-flex; align-items: center; gap: 6px;
}
#empManageAdd, #objektManageAdd {
  background: var(--np-accent); color: #fff; border-color: var(--np-accent);
}
#empManageAdd:hover, #objektManageAdd:hover { background: var(--np-accent-deep); }
#objektManageAdd .material-icons { font-size: 18px; }

/* Tabelle wird zur Karte */
#np-team-container .shift-editor-table,
#np-objekte-container .shift-editor-table {
  border: 1px solid var(--border-default);
  border-radius: var(--np-card-radius);
  background: var(--bg-surface);
  box-shadow: var(--np-card-shadow);
  overflow: hidden;
}
#np-team-container .shift-editor-head,
#np-objekte-container .shift-editor-head {
  background: transparent; border-bottom: 1px solid var(--border-default);
  color: var(--text-tertiary); font-size: 11px; letter-spacing: .06em;
  padding-top: 12px; padding-bottom: 12px;
}
#np-team-container .shift-editor-list-wrap,
#np-objekte-container .shift-editor-list-wrap { padding: 0; background: transparent; border: 0; max-height: none; overflow: visible; }

/* Zeilen: keine Zebra-Streifen, ruhiger Hover */
#np-team-container .shift-editor-row,
#np-objekte-container .shift-editor-row {
  background: transparent !important;
  border-bottom: 1px solid var(--border-default);
  min-height: 60px; transition: background .12s ease;
}
#np-team-container .shift-editor-row:hover,
#np-objekte-container .shift-editor-row:hover { background: var(--bg-surface-alt) !important; }
#np-team-container .shift-editor-group-body .shift-editor-row:last-child,
#np-objekte-container .shift-editor-row:last-child { border-bottom: none; }

/* Gruppenkopf */
#np-team-container .shift-editor-group { margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
#np-team-container .shift-editor-group + .shift-editor-group { border-top: 1px solid var(--border-default); }
#np-team-container .shift-editor-group-head {
  background: var(--bg-surface-alt); border: 0; border-bottom: 1px solid var(--border-default);
  padding: 9px 16px;
}
#np-team-container .shift-editor-group-count {
  background: var(--bg-surface); border-radius: var(--radius-full); padding: 1px 8px;
  font-size: 11px; color: var(--text-secondary); box-shadow: var(--shadow-sm);
}

/* Personenzeile */
#np-team-container .emp-manage-row .emp-avatar { width: 36px; height: 36px; font-size: 12px; }
#np-team-container .emp-manage-name-text { font-weight: 600; }
#np-team-container .emp-manage-email-text { color: var(--text-tertiary); }
#np-team-container .emp-manage-email-icon { display: none; }

/* Gruppen-Auswahl je Zeile: ruhige Pille, immer gleich */
#np-team-container .emp-manage-row .emp-manage-section {
  height: 32px; padding: 0 28px 0 12px; border-radius: var(--radius-full);
  border: 1px solid var(--border-default); background-color: var(--bg-surface-alt);
  font-size: 12.5px; cursor: pointer; appearance: none; -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23898e97' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 10px center;
}
#np-team-container .emp-manage-row .emp-manage-section:hover { border-color: var(--border-strong); background-color: var(--bg-surface); }

/* Aktions-Icons: zurueckhaltend grau, Farbe erst beim Hover */
.emp-manage-edit, .emp-manage-delete,
.objekt-manage-edit, .objekt-manage-delete {
  width: 32px; height: 32px; border-radius: 8px; border: 0; background: transparent;
  color: var(--text-tertiary); display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background .12s ease, color .12s ease;
}
.emp-manage-edit .material-icons, .emp-manage-delete .material-icons,
.objekt-manage-edit .material-icons, .objekt-manage-delete .material-icons { font-size: 19px; }
.emp-manage-edit:hover, .objekt-manage-edit:hover { background: var(--np-accent-soft); color: var(--np-accent); }
.emp-manage-delete:hover, .objekt-manage-delete:hover { background: var(--signal-red-light); color: var(--signal-red); }

/* Objekte */
#np-objekte-container .objekt-manage-name { font-weight: 600; }
#np-objekte-container .objekt-manage-address { color: var(--text-tertiary); font-size: 12.5px; margin-top: 2px; }
#objektManageList .shift-editor-row.objekt-manage-row { padding-top: 10px; padding-bottom: 10px; }

/* Urlaub: dieselben Karten */
.urlaub-main .vac-card {
  border-radius: 14px; border-color: var(--border-default);
  box-shadow: 0 1px 2px rgba(20,22,26,.05), 0 6px 20px rgba(20,22,26,.05);
}
.urlaub-rail { background: var(--bg-surface); }
.urlaub-emp-row { padding: 9px 10px; }

.urlaub-rail-head input[type="text"] {
  height: 38px; box-sizing: border-box; border-radius: 10px;
  border: 1px solid var(--border-default); background: var(--bg-surface-alt);
  padding: 0 12px; font-size: 13px;
}
.urlaub-rail-head input[type="text"]:focus {
  background: var(--bg-surface); border-color: var(--np-accent); box-shadow: 0 0 0 3px var(--np-accent-soft);
}
.urlaub-main .vac-add-btn {
  background: var(--np-accent-soft); color: var(--np-accent); border-radius: var(--radius-full);
  padding: 5px 12px; font-weight: 600; text-decoration: none;
}
.urlaub-main .vac-add-btn:hover { background: var(--np-accent); color: #fff; text-decoration: none; }
.urlaub-main .year-nav { display: inline-flex; gap: 6px; }
.urlaub-main .year-nav button {
  width: 30px; height: 30px; padding: 0; border: 1px solid var(--border-default); border-radius: 8px;
  background: var(--bg-surface); color: var(--text-secondary); display: inline-flex;
  align-items: center; justify-content: center; cursor: pointer;
}
.urlaub-main .year-nav button:hover { background: var(--bg-surface-alt); color: var(--text-primary); }
.urlaub-main .year-nav .material-icons { font-size: 18px; }
.urlaub-main .vac-edit-btn { color: var(--text-tertiary); }

/* Team: Zeilen ohne Einrueckung, Trennlinien laufen durchgehend */
#np-team-container .shift-editor-group .shift-editor-row { margin-left: 0; }
