/* Selector de perfiles: misma cabecera azul/dorada y controles compartidos. */
#picker-modal .camp-picker-topline {
  position:relative; z-index:60;
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  flex-wrap:wrap; flex-shrink:0; margin-bottom:4px;
}
#picker-modal .camp-picker-source {
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  background:transparent!important; border:0!important; padding:0!important; margin:0!important;
}
#picker-modal .camp-picker-source > div:first-child { font-size:12px!important; }
#picker-modal #picker-mode { display:flex; gap:4px; flex-wrap:wrap; }
#picker-modal #picker-mode .form-check {
  display:flex; align-items:center; gap:6px; margin:0; padding:5px 10px;
  border:1px solid #D5DFEB; border-radius:6px; background:#fff;
}
#picker-modal #picker-mode .form-check:has(input:checked) {
  border-color:#A9BDD5; background:#EAF2FC;
}
#picker-modal #picker-mode .form-check-input { float:none; margin:0!important; }
#picker-modal #picker-mode .form-check-label { margin:0!important; font-size:12px!important; }
#picker-modal .camp-picker-manual-action { display:flex; flex-wrap:wrap; gap:6px; margin:0; }
#picker-modal .camp-picker-search-bar {
  flex-shrink:0; flex-wrap:wrap; padding:10px!important; gap:10px!important;
  margin-bottom:8px!important; box-shadow:none; border-color:#D5DFEB;
}
#picker-modal .camp-picker-search-bar > div { flex:1 1 125px; min-width:0; }
#picker-modal .camp-picker-search-bar > div:nth-child(3) { flex-basis:165px; }
#picker-modal .camp-picker-search-bar > div:last-child { flex:0 0 auto; margin-left:0!important; }
#picker-modal .camp-picker-search-bar label { font-size:12px!important; margin-bottom:5px!important; }
#picker-modal :is(#picker-search, #picker-search-team, .picker-filter-control) {
  width:100%!important; font-size:12px!important;
}
#picker-modal .picker-filter-control :is(.Select-placeholder,.Select-value-label,.Select-menu-outer) {
  font-size:12px!important;
}
#picker-modal .picker-filter-control .Select-value-label { color:#253C58!important; }
#picker-modal .picker-filter-control .Select-placeholder { color:#64748B!important; }
#picker-modal .camp-picker-search-bar input::placeholder { color:#64748B; opacity:1; }
#picker-modal :is(#picker-reset-filters,#picker-empty-reset) {
  background:#F3F6FA!important; color:#334D6C!important; border:1px solid #B9C4D2!important;
  border-radius:6px; font-size:12px!important; box-shadow:none!important; transform:none!important;
}
#picker-modal :is(#picker-reset-filters,#picker-empty-reset):hover {
  background:#E8EEF6!important; border-color:#8DA9CA!important; box-shadow:none!important; transform:none!important;
}
#picker-modal :is(#btn-toggle-manual,#btn-toggle-summary,#picker-cancel,#picker-accept,#picker-clear) {
  font-size:12px!important;
}
#picker-modal .camp-picker-selection-toolbar {
  flex-shrink:0; gap:8px; flex-wrap:wrap; margin-bottom:6px!important;
}
#picker-modal .camp-picker-selection-toolbar > div:has(#btn-toggle-summary) { order:0; }
#picker-modal #btn-toggle-summary { margin-right:0!important; }
#picker-modal #picker-hidden-selection { order:1; }
#picker-modal #picker-selected-summary-peek {
  order:2; font-size:12px!important; min-width:100px;
}
#picker-modal #picker-clear { order:3; margin:0 0 0 auto!important; }
#picker-modal #picker-clear:disabled { opacity:.45; cursor:default; transform:none!important; box-shadow:none!important; }
#picker-modal .camp-picker-hidden-selection { color:#785A0D; font-size:12px; font-weight:600; }
#picker-modal .camp-picker-hidden-selection:empty { display:none; }
#picker-modal .camp-picker-results-info {
  flex-shrink:0; font-size:12px; font-weight:600; color:#425A76; margin:2px 0 6px;
}
#picker-modal .camp-picker-empty-state {
  flex-shrink:0; flex-direction:column; align-items:center; gap:8px; text-align:center;
  padding:18px 12px; margin-bottom:8px; border:1px dashed #BFCDDD; border-radius:8px;
  background:#fff; color:#52657D; font-size:12px;
}
#picker-modal .camp-picker-empty-state strong { color:#183C66; font-size:14px; }
#picker-modal :is(#collapse-manual,#collapse-summary) { max-width:100%; }
#picker-modal #collapse-summary { min-width:min(360px,calc(100vw - 80px))!important; }
#picker-modal :is(#picker-reset-filters,#picker-empty-reset,#picker-clear,#btn-toggle-summary,#btn-toggle-manual):focus-visible {
  outline:2px solid #C79B00; outline-offset:2px;
}
@media(max-width:700px) {
  #picker-modal .camp-picker-search-bar > div { flex-basis:40%; }
  #picker-modal #picker-selected-summary-peek { display:none; }
}
@media(pointer:coarse) {
  #picker-modal #picker-mode .form-check { min-height:44px; }
  #picker-modal #picker-empty-reset { min-height:44px; }
}

/* La tabla usa el espacio restante; el pie nunca tapa las últimas filas. */
#picker-modal.modal-dialog {
  transform:none!important; transition:none!important; min-height:0!important;
  height:100dvh!important; max-height:100dvh!important; margin:0 auto!important;
  overflow:visible!important;
}
#picker-modal .modal-content {
  height:100%!important; max-height:100%!important; min-height:0;
  display:flex; flex-direction:column; overflow:hidden!important;
}
#picker-modal .modal-header { flex-shrink:0; min-height:34px; padding:2px 10px!important; }
#picker-modal .modal-body {
  flex:1 1 0!important; min-height:0!important; height:auto!important;
  display:flex; flex-direction:column; padding:5px 10px!important; overflow:hidden!important;
}
#picker-modal .camp-picker-topline { gap:6px; margin-bottom:4px; }
#picker-modal #picker-mode .form-check { padding:2px 8px; min-height:26px; }
#picker-modal :is(.camp-picker-source > div:first-child,#picker-mode .form-check-label) { font-size:11px!important; }
#picker-modal .camp-picker-search-bar {
  padding:4px 8px!important; gap:8px!important; margin-bottom:4px!important;
}
#picker-modal .camp-picker-search-bar label { font-size:11px!important; margin-bottom:2px!important; }
#picker-modal :is(#picker-search,#picker-search-team) { height:28px!important; font-size:11px!important; }
#picker-modal .picker-filter-control { font-size:11px!important; }
#picker-modal .picker-filter-control .Select-control { height:28px!important; min-height:28px!important; }
#picker-modal .picker-filter-control :is(.Select-placeholder,.Select-value,.Select-value-label) {
  font-size:11px!important; line-height:26px!important;
}
#picker-modal .picker-filter-control .Select-input { height:26px!important; }
#picker-modal :is(#picker-reset-filters,#btn-toggle-manual,#btn-toggle-summary,#picker-clear,#picker-cancel,#picker-accept) {
  height:28px!important; min-height:28px!important; padding:0 9px!important;
  font-size:11px!important; margin-top:0!important; margin-bottom:0!important;
}
#picker-modal .camp-picker-selection-toolbar { gap:6px; margin-bottom:2px!important; }
#picker-modal :is(#picker-selected-summary-peek,#picker-hidden-selection) { font-size:11px!important; }
#picker-modal .camp-picker-results-info { font-size:11px; line-height:24px; min-height:24px; margin:0; }
#picker-modal #picker-table {
  display:flex; flex-direction:column; flex:1 1 0; min-height:0; min-width:0;
}
#picker-modal #picker-table .dash-spreadsheet-container {
  flex:1 1 0; min-height:0!important; height:100%!important; max-height:none!important;
  margin-top:0!important; overflow:hidden!important;
}
#picker-modal #picker-table .dash-spreadsheet-inner {
  display:flex; flex-direction:column; height:100%!important; min-height:0!important;
  max-height:none!important;
}
#picker-modal #picker-table .dt-table-container__row-0 { flex:0 0 auto; }
#picker-modal #picker-table .dt-table-container__row-1 { flex:1 1 0; min-height:0; overflow:auto; }
#picker-modal .modal-footer {
  flex:0 0 auto; gap:6px; min-height:30px; padding:0 10px!important;
}
#picker-modal .modal-footer > * { margin:0!important; }
#picker-modal #picker-accept {
  display:inline-flex; align-items:center; justify-content:center; gap:5px;
}
#picker-modal #picker-accept .spinner-border { width:12px; height:12px; border-width:2px; }
#picker-modal #picker-accept:disabled { cursor:wait!important; }

#picker-modal #picker-manual-selection-feedback:empty { display:none; }


/* Alta y gestión comparten los controles compactos del selector. */
#picker-modal :is(#collapse-manual,#collapse-manual-library) {
  flex:0 0 auto; max-height:min(280px,50dvh); overflow-y:auto; overflow-x:hidden;
}
#picker-modal .camp-manual-panel {
  padding:8px; margin-bottom:4px; border:1px solid #CBD8E7;
  border-radius:8px; background:#F3F7FD; color:#253C58;
  font-size:11px; line-height:1.4;
}
#picker-modal .camp-manual-panel-heading {
  display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; margin-bottom:6px;
}
#picker-modal .camp-manual-panel-heading strong { font-size:12px; color:#003875; }
#picker-modal .camp-manual-panel-heading span { color:#52657D; font-size:11px; }
#picker-modal #collapse-manual .camp-manual-panel {
  background:#fff; border-color:#A9BDD5; border-left:3px solid #C79B00;
  box-shadow:0 2px 8px rgba(0,40,80,.12);
}
#picker-modal #collapse-manual .camp-manual-panel-heading {
  background:#003875; border-bottom:2px solid #C79B00;
  border-radius:6px 6px 0 0; padding:5px 8px; margin:-8px -8px 7px;
}
#picker-modal #collapse-manual .camp-manual-panel-heading strong { color:#fff; }
#picker-modal #collapse-manual .camp-manual-panel-heading span { color:#DCE8F7; }
#picker-modal #collapse-manual .camp-manual-panel-heading {
  position:relative; padding-right:38px; min-height:30px; align-items:center;
}
#picker-modal #btn-close-manual {
  position:absolute; right:5px; top:50%; transform:translateY(-50%);
  display:flex; align-items:center; justify-content:center;
  width:24px; height:24px; padding:0; border:1px solid #E5A3A3;
  border-radius:5px; background:#FFF1F1; color:#B4232C;
  font-family:inherit; font-size:20px; font-weight:700; line-height:1; cursor:pointer;
}
#picker-modal #btn-close-manual:hover { background:#FDE2E2; border-color:#C85A5A; color:#991B1B; }
#picker-modal #btn-close-manual:focus-visible { outline:2px solid #C79B00; outline-offset:2px; }
#picker-modal #collapse-manual .camp-manual-fields :is(input.dash-input,.Select-control) {
  border-color:#8DA9CA; background:#F8FAFD;
}
#picker-modal #collapse-manual input.dash-input::placeholder { color:#62748B; opacity:1; }
#picker-modal #collapse-manual .Select-placeholder { color:#62748B; }
#picker-modal:has(#collapse-manual.show) #btn-toggle-manual {
  background:#EAF2FC!important; border-color:#C79B00!important; color:#003875!important;
}
#picker-modal .camp-manual-panel label {
  display:block; font-size:11px; font-weight:600; color:#003875; margin-bottom:2px;
}
#picker-modal .camp-manual-fields {
  display:grid;
  grid-template-columns:minmax(120px,1.3fr) minmax(130px,1.3fr) minmax(130px,1.3fr) 60px minmax(100px,1fr) minmax(100px,1fr);
  align-items:end; gap:8px;
}
#picker-modal .camp-manual-fields > div,
#picker-modal .camp-manual-link-fields > div { min-width:0; }
#picker-modal .camp-manual-link-fields {
  display:grid; grid-template-columns:minmax(180px,1fr) minmax(280px,2fr);
  gap:8px; align-items:start; margin-top:6px;
}
#picker-modal .camp-manual-link-fields .camp-manual-panel-actions { grid-column:1 / -1; margin-top:0; }
#picker-modal #manual-library-link-summary { font-size:11px; color:#253C58; margin-top:6px; }
#picker-modal #manual-library-link-summary:empty { display:none; }
#picker-modal #manual-library-candidate .Select-noresults { font-size:0; }
#picker-modal #manual-library-candidate .Select-noresults::after {
  content:"Sin coincidencias"; font-size:11px; color:#64748B;
}
#picker-modal #manual-library-candidate:is([data-dash-is-loading="true"], [data-manual-search-pending="true"]) .Select-menu-outer {
  min-height:38px; pointer-events:none;
}
#picker-modal #manual-library-candidate:is([data-dash-is-loading="true"], [data-manual-search-pending="true"]) .Select-menu-outer > div {
  visibility:hidden;
}
#picker-modal #manual-library-candidate:is([data-dash-is-loading="true"], [data-manual-search-pending="true"]) .Select-menu-outer::after {
  content:"Buscando jugadores…"; position:absolute; top:10px; left:28px;
  font-size:11px; color:#00489A;
}
#picker-modal #manual-library-candidate:is([data-dash-is-loading="true"], [data-manual-search-pending="true"]) .Select-menu-outer::before {
  content:""; position:absolute; top:12px; left:10px; width:11px; height:11px;
  border:2px solid #D5DFEB; border-top-color:#00489A; border-radius:50%;
  animation:camp-manual-search-spin .7s linear infinite;
}
@keyframes camp-manual-search-spin { to { transform:rotate(360deg); } }
#picker-modal .camp-manual-panel input.dash-input {
  width:100%; height:28px; padding:0 8px; border:1px solid #B9C4D2;
  border-radius:6px; background:#fff; color:#253C58; font-size:11px;
}
#picker-modal .camp-manual-panel .Select-control {
  height:28px; min-height:28px; background:#fff;
  border:1px solid #B9C4D2; border-radius:6px; box-shadow:none;
}
#picker-modal .camp-manual-panel :is(.Select-value,.Select-placeholder,.Select-value-label) {
  font-size:11px; line-height:26px;
}
#picker-modal .camp-manual-panel .Select-input { height:26px; }
#picker-modal .camp-manual-panel .Select-input > input {
  padding:0!important; border:0!important; background:transparent;
  box-shadow:none!important; outline:none; line-height:26px;
}
#picker-modal .camp-manual-panel .Select-menu-outer { font-size:11px; }
#picker-modal :is(#collapse-manual,#collapse-manual-library):has(.Select.is-open) {
  overflow:visible; position:relative; z-index:100;
}
#picker-modal .camp-manual-panel-actions {
  display:flex; align-items:center; flex-wrap:wrap; gap:6px 10px; margin-top:6px;
}
#picker-modal .camp-manual-panel-actions .form-check {
  display:flex; align-items:center; gap:5px; padding:0; margin:0;
}
#picker-modal .camp-manual-panel-actions .form-check-input { float:none; margin:0; }
#picker-modal .camp-manual-panel-actions label { margin:0; color:#253C58; }
#picker-modal .camp-manual-panel-actions span { color:#52657D; }
#picker-modal :is(#btn-toggle-manual,#btn-manage-manual) {
  background:#F3F6FA!important; color:#334D6C!important; border:1px solid #B9C4D2!important;
}
#picker-modal :is(#btn-manage-manual,#btn-add-manual,#manual-library-link,#manual-library-archive-button) {
  height:28px; min-height:28px; padding:0 9px; font-size:11px; font-weight:600;
  border-radius:6px; box-shadow:none!important; transform:none!important;
}
#picker-modal #manual-library-link {
  background:#00489A; border:1px solid #00489A; color:white;
}
#picker-modal #manual-library-link:hover:enabled { background:#003875; border-color:#003875; }
#picker-modal :is(#btn-manage-manual,#btn-add-manual,#manual-library-link,#manual-library-archive-button):focus-visible,
#picker-modal .camp-manual-panel input.dash-input:focus-visible,
#picker-modal .camp-manual-panel .is-focused > .Select-control {
  outline:2px solid #C79B00; outline-offset:2px;
}
#picker-modal #btn-manage-manual:hover:enabled { background:#E8EEF6!important; }
#picker-modal #manual-library-archive-button {
  background:#FFF1F1; color:#B4232C; border-color:#E5A3A3;
}
#picker-modal #manual-library-archive-button:hover:enabled {
  background:#FDE2E2; color:#991B1B; border-color:#C85A5A;
}
#picker-modal #manual-library-unlink-button {
  height:28px; min-height:28px; padding:0 9px; font-size:11px; font-weight:600;
  border:1px solid #B9C4D2; border-radius:6px; background:#F3F6FA; color:#334D6C;
}
#picker-modal #manual-library-unlink-button:hover:enabled { background:#E8EEF6; }
#picker-modal #manual-library-unlink-button:focus-visible { outline:2px solid #C79B00; outline-offset:2px; }
#picker-modal :is(#manual-library-feedback,#manual-feedback):empty { display:none; }
#picker-modal :is(#manual-library-feedback,#manual-feedback) { font-size:11px; }
@media(max-width:1000px) {
  #picker-modal .camp-manual-fields { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:650px) {
  #picker-modal .camp-manual-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #picker-modal .camp-manual-link-fields { grid-template-columns:1fr; }
}
