/* Party Challenge · Formularios de foto compactos y selector de participantes */

/* Deja suficiente espacio desplazable para que la navegación fija no tape el final del formulario. */
.shell{padding-bottom:calc(138px + env(safe-area-inset-bottom))}

/* Selector de participantes */
.team-picker-enhanced{padding:12px}
.team-picker-tools{display:grid;gap:9px;margin:9px 0 10px}
.team-picker-search{position:relative;display:block}
.team-picker-search::before{content:'⌕';position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:18px;pointer-events:none}
.team-picker-search input{width:100%;min-height:44px;padding:11px 36px 11px 39px;border:1px solid rgba(255,255,255,.16);border-radius:14px;outline:0;background:rgba(12,7,14,.32);color:var(--text)}
.team-picker-search input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(255,212,120,.12)}
.team-picker-search input::-webkit-search-cancel-button{cursor:pointer}
.team-picker-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.team-picker-count{padding:5px 9px;border-radius:999px;background:rgba(255,212,120,.12);color:var(--gold);font-size:10px;font-weight:900}
.team-picker-count.is-ready{background:rgba(115,237,182,.14);color:var(--mint)}
.team-selected-members{display:flex;flex-wrap:wrap;gap:6px;min-height:27px}
.team-selected-chip{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 8px;border:1px solid rgba(211,157,255,.30);border-radius:999px;background:rgba(211,157,255,.13);color:var(--text);font-size:11px;font-weight:800}
.team-selected-chip button{display:grid;place-items:center;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.10);color:var(--muted);font:inherit;line-height:1}
.team-member-list{max-height:260px;overflow-y:auto;overscroll-behavior:contain;padding-right:3px;scrollbar-width:thin}
.team-member-option:has(input:checked){border-color:rgba(255,212,120,.52);background:rgba(255,212,120,.11)}
.team-member-option[hidden]{display:none!important}
.team-picker-empty{display:none;margin:8px 0 0;padding:10px;border-radius:12px;background:rgba(255,255,255,.045);color:var(--muted);font-size:11px;text-align:center}
.team-picker-empty.visible{display:block}

/* En móvil, cámara y galería siguen lado a lado en vez de volver a una columna. */
@media(max-width:600px){
  .photo-upload-card .photo-source-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .photo-upload-card .photo-source-action{min-height:82px;padding:9px 6px;border-radius:15px}
  .photo-upload-card .photo-source-action span{font-size:24px}
  .photo-upload-card .photo-source-action b{font-size:12px;line-height:1.2}
  .photo-upload-card .photo-source-action small{font-size:9.5px;line-height:1.2}
  .team-member-list{grid-template-columns:1fr;max-height:240px}
}

@media(max-width:350px){
  .photo-upload-card .photo-source-action{min-height:76px;padding:8px 4px}
  .photo-upload-card .photo-source-action b{font-size:11px}
  .photo-upload-card .photo-source-action small{font-size:9px}
}
