/* Changer d'EDT: same visual language as the standalone picker preview. */
#group-picker {
  width: 520px;
  max-height: min(720px, 90dvh);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 20px;
}
#group-picker-head {
  position: relative;
  flex: none;
  min-height: 94px;
  padding: 26px 28px 20px;
  overflow: hidden;
}
#group-picker-head::before {
  content: '';
  position: absolute;
  left: -8px;
  top: 3px;
  width: 112px;
  height: 112px;
  background: url('assets/willowbrancheile.png') center / contain no-repeat;
  opacity: .18;
  pointer-events: none;
}
.dark-mode #group-picker-head::before {
  background-image: url('assets/willowbrancheile_orange.png');
}
#group-picker-head > svg { display: none; }
#group-picker-head h2 {
  position: relative;
  margin: 0 0 6px;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 23px;
}
#group-picker-head p { position: relative; margin: 0; font-size: 13px; }
#group-picker-body {
  overflow-y: auto;
  min-height: 0;
  padding: 20px 22px 22px;
}
#group-picker-foot {
  flex: none;
  align-items: center;
  border-top: 1px solid var(--border);
  padding: 14px 22px 18px;
  background: var(--col-bg);
}
#gp-person-manual, .gp-person-return {
  color: var(--accent);
  border: 0;
  background: transparent;
  font: 600 13px var(--font);
  cursor: pointer;
  text-align: left;
}
#gp-person-manual { margin-right: auto; padding: 10px 0; }
.gp-person-return { padding: 3px 0 14px; }
#gp-person-manual:hover, .gp-person-return:hover { text-decoration: underline; }
.gp-person-search {
  width: 100%;
  min-height: 45px;
  padding: 0 15px;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: var(--col-bg);
  color: var(--text);
  font: 14px var(--font);
}
.gp-person-search:focus {
  outline: 2px solid var(--accent);
  outline-offset: 1px;
}
#gp-person-results { margin-top: 16px; }
.gp-person-hint {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  min-height: 45px;
  margin: 10px 2px;
}
.gp-person-card {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 60px;
  margin-bottom: 7px;
  padding: 9px 12px;
  text-align: left;
  background: var(--col-bg);
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 11px;
  cursor: pointer;
  font: 13px var(--font);
}
.gp-person-card:hover, .gp-person-card:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 0;
  background: var(--hover);
}
.gp-person-avatar {
  display: inline-grid;
  flex: none;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--accent-light);
  color: var(--accent);
  font: 700 12px var(--font);
}
.gp-person-card strong, .gp-person-card small { display: block; }
.gp-person-card strong { font-size: 13px; }
.gp-person-card small { color: var(--muted); margin-top: 3px; }
.gp-person-confirm {
  display: grid;
  justify-items: center;
  gap: 8px;
  text-align: center;
  padding: 25px 8px 30px;
}
.gp-person-confirm .gp-person-avatar { width: 62px; height: 62px; font-size: 18px; }
.gp-person-confirm strong { font-size: 18px; }
.gp-person-confirm > span:not(.gp-person-avatar) { color: var(--muted); font-size: 13px; }
#gp-person-error { color: #b42318; font-size: 13px; line-height: 1.4; margin: 7px 0 0; }
#gp-person-error:empty { display: none; }
@media (max-width: 480px) {
  #group-picker-overlay { align-items: flex-end; }
  #group-picker {
    width: 100%;
    max-width: none;
    max-height: 90dvh;
    border-radius: 20px 20px 0 0;
  }
  #group-picker-head { padding: 25px 20px 18px; }
  #group-picker-body { padding: 18px 18px 22px; }
  #group-picker-foot { padding: 12px 18px max(18px, env(safe-area-inset-bottom)); }
  #gp-person-manual { max-width: 60%; }
}
