/* Seiten-Anordnung team: nur Layout, Komponenten kommen aus app.css. */

/* Suchfeld mit Lupe in der Werkzeugleiste */
.team-bar .team-search { position: relative; flex: 1 1 200px; min-width: 0; max-width: 420px; display: block; }
.team-bar .team-search .ic { position: absolute; left: var(--s3); top: 50%; margin-top: -8px; font-size: 16px; color: var(--text-3); pointer-events: none; }
.team-bar .team-search .input { padding-left: 38px; }
.team-bar .sw { margin-left: var(--s2); }
@media (max-width: 767px) {
  .team-bar .team-search { flex: 1 1 100%; max-width: none; }
  .team-bar .sw { margin-left: 0; }
}

/* Liste: Handy zweizeilig, ab Tablet als Raster mit Spalten */
.team-head { display: none; }
.team-list > li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; grid-template-areas: "av name status chev" "av meta meta chev"; column-gap: var(--s3); row-gap: 2px; align-items: center; }
.team-list > li > .av { grid-area: av; }
.team-list .tm-name { grid-area: name; min-width: 0; }
.team-list .tm-name .t, .team-list .tm-name .s { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-list .tm-role { display: none; }
.team-list .tm-locs { grid-area: meta; font-size: var(--fs-sm); color: var(--text-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.team-list .tm-hours { display: none; }
.team-list .tm-status { grid-area: status; }
.team-list .tm-chev { grid-area: chev; display: inline-flex; color: var(--text-3); font-size: 18px; }
.team-list > li.dim .t { color: var(--text-2); }

@media (min-width: 768px) {
  .team-head, .team-list > li { display: grid; grid-template-columns: 32px minmax(0, 2fr) minmax(0, 1.1fr) minmax(0, 1.3fr) 84px 150px 18px; grid-template-areas: none; column-gap: var(--s4); align-items: center; }
  .team-head { padding: 10px var(--s4); border-bottom: 1px solid var(--line); font: 600 var(--fs-xs)/1.2 var(--sans); letter-spacing: .05em; text-transform: uppercase; color: var(--text-3); }
  .team-head .num { text-align: right; }
  .team-list > li > .av, .team-list .tm-name, .team-list .tm-locs, .team-list .tm-status, .team-list .tm-chev { grid-area: auto; }
  .team-list .tm-role { display: block; font-size: var(--fs-ui); color: var(--text-2); }
  .team-list .tm-locs { font-size: var(--fs-ui); color: var(--text-2); }
  .team-list .tm-hours { display: block; text-align: right; font-size: var(--fs-ui); }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .team-head, .team-list > li { grid-template-columns: 32px minmax(0, 2fr) minmax(0, 1.3fr) 130px 18px; }
  .team-head span:nth-child(3), .team-head span:nth-child(5), .team-list .tm-role, .team-list .tm-hours { display: none; }
}

/* Personen-Modal */
.pm-head { display: flex; align-items: center; gap: var(--s4); padding-bottom: var(--s4); margin-bottom: var(--s2); border-bottom: 1px solid var(--line); }
.pm-who { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.pm-role { font-weight: 600; font-size: var(--fs-md); }
.pm-meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s2) var(--s4); color: var(--text-2); font-size: var(--fs-ui); }
.pm-grid { display: grid; grid-template-columns: minmax(0, 1fr); column-gap: var(--s6); }
@media (min-width: 760px) {
  .pm-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .pm-grid .pm-wide { grid-column: 1 / -1; }
}
.pm-sec { min-width: 0; padding-top: var(--s5); }
.pm-sec > .sec-title { margin: 0 0 var(--s3); }
.pm-sec .more { display: inline-flex; align-items: center; gap: 2px; font: 600 var(--fs-sm)/1 var(--sans); color: var(--accent-deep); text-decoration: none; white-space: nowrap; }
.pm-sec .more .ic { font-size: 14px; }
.pm-sec .more:hover { text-decoration: underline; }
.pm-list { margin-top: var(--s2); }
.pm-list > li { min-height: 52px; padding-top: var(--s2); padding-bottom: var(--s2); }
.pm-date { flex: none; width: 44px; display: flex; flex-direction: column; align-items: center; line-height: 1.15; font-size: var(--fs-sm); color: var(--text-2); }
.pm-date b { font-size: var(--fs-ui); color: var(--ink); }
.pm-acts { display: inline-flex; align-items: center; gap: var(--s1); flex: none; }
.pm-access { display: flex; flex-direction: column; gap: var(--s3); align-items: flex-start; }
.pm-access [data-acc-out]:empty { display: none; }
.pm-access [data-acc-out] { width: 100%; display: flex; flex-direction: column; gap: var(--s3); }
.pm-upload { margin-top: var(--s3); display: flex; flex-direction: column; gap: var(--s3); }
.pm-upload-title { display: flex; flex-direction: column; gap: var(--s3); }
.pre { white-space: pre-wrap; }

/* Einladungslink zum Kopieren */
.copy-row { display: flex; gap: var(--s2); align-items: center; }
.copy-row .input { flex: 1 1 auto; min-width: 0; font-size: var(--fs-ui); }
.invite-small, .invite-big { display: flex; flex-direction: column; gap: var(--s2); margin-top: var(--s4); }
.invite-big > .lbl { font: 500 var(--fs-sm)/1.3 var(--sans); color: var(--text-2); }
.invite-small .copy-row .input { height: 34px; font-size: var(--fs-sm); color: var(--text-2); }
.invite-small .copy-row .btn { height: 34px; }

/* Kennzahlen im Personen-Modal: feste Spalten statt Umbruch 3+1 */
.pm-sec .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pm-sec .stats.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pm-sec .stats.three .v { font-size: var(--fs-md); }
