/* City trainer directory: centered people cards, shared across all towns. */
#trainersTable_wrapper .dataTables_scrollHead,
#trainersTable_wrapper .dataTables_scrollFoot,
#trainersTable thead,#trainersTable tfoot { display:none!important; }
#trainersTable_wrapper .dataTables_scrollBody,
.trainers-analytics-table-scroll { overflow:visible!important; max-height:none!important; height:auto!important; }
#trainersTable { display:block!important; width:100%!important; min-width:0!important; border:0!important; background:transparent!important; }
#trainersTable tbody { display:grid!important; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; width:100%; }
#trainersTable tbody tr { display:flex!important; flex-direction:column; align-items:stretch; min-width:0; min-height:282px; padding:24px 18px 18px; background:#fff!important; border:1px solid #e1e5eb; border-radius:12px; box-shadow:0 2px 8px rgba(20,35,50,.04); }
#trainersTable tbody tr:hover { border-color:#bec6d0; box-shadow:0 4px 14px rgba(20,35,50,.07); }
#trainersTable tbody td { display:block; width:auto!important; min-width:0!important; padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; text-align:center; }
#trainersTable .trainer-login-cell,#trainersTable .trainer-password-cell { display:none!important; }
#trainersTable .trainer-identity { display:flex; flex-direction:column; align-items:center; gap:16px; width:100%; }
#trainersTable .trainer-avatar-button { padding:0; margin:0; flex:none; }
#trainersTable .trainer-avatar { width:88px; height:88px; min-width:88px; border-radius:50%; margin:0 auto; font-size:24px; }
#trainersTable .trainer-avatar img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
#trainersTable .trainer-name-content,#trainersTable .trainer-main-link { display:block; width:100%; max-width:none; white-space:normal; text-align:center; }
#trainersTable .trainer-main-link,#trainersTable .trainer-person-primary,#trainersTable .trainer-person-middle { color:#111!important; font-size:16px!important; font-weight:700!important; line-height:1.45; overflow-wrap:anywhere; }
#trainersTable .trainer-person-primary,#trainersTable .trainer-person-middle { display:block; }
#trainersTable .trainer-cabinet-cell { margin-top:auto; padding-top:20px!important; }
#trainersTable .trainer-cabinet-form { width:100%; margin:0; }
#trainersTable .trainer-cabinet-launch { display:flex; align-items:center; justify-content:center; width:100%; min-height:42px; padding:10px 12px; border:1px solid #dce2e9; border-radius:8px; background:#fff; color:#172b40; }

#trainersTable .trainer-cabinet-launch:hover { background:#f5f6f8; }
#trainersTable .dataTables_empty { grid-column:1/-1; }
@media(max-width:580px) { #trainersTable tbody { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; } #trainersTable tbody tr { padding:18px 10px 12px; min-height:260px; } #trainersTable .trainer-avatar { width:72px; height:72px; min-width:72px; } #trainersTable .trainer-main-link,#trainersTable .trainer-person-primary,#trainersTable .trainer-person-middle { font-size:14px!important; } }
@media(max-width:340px) { #trainersTable tbody { grid-template-columns:1fr; } }


@media(min-width:581px) and (max-width:820px) { #trainersTable tbody { grid-template-columns:repeat(3,minmax(0,1fr)); } }

#trainersTable .trainer-person-primary { color:#1260db!important; font-size:17px!important; font-weight:700!important; }
#trainersTable .trainer-person-middle { color:#1260db!important; font-size:14px!important; font-weight:600!important; }
#trainersTable .trainer-cabinet-launch { gap:7px; font-size:13px; padding:10px 5px; }
#trainersTable .trainer-cabinet-launch-icon { display:none; }
#trainersTable .trainer-cabinet-launch::before { content:''; width:18px; height:18px; flex:none; background:currentColor; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 4h5v16h-5M3 12h12M10 7l5 5-5 5'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat; }

#trainersTable.table.dataTable tbody tr {background:#fff!important;}
#trainersTable.table.dataTable .trainer-avatar {display:flex!important;align-items:center;justify-content:center;width:88px!important;height:88px!important;min-width:88px!important;flex:0 0 88px!important;border-radius:50%!important;}
#trainersTable.table.dataTable td:before,#trainersTable.table.dataTable td:after {border:0!important;box-shadow:none!important;}
@media(max-width:580px){#trainersTable.table.dataTable .trainer-avatar {width:72px!important;height:72px!important;min-width:72px!important;flex-basis:72px!important;}}

#trainersTable_wrapper #trainersTable.table.dataTable tbody tr > td {background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;}
/* Cards must remain readable beside the fixed mobile sidebar. */
@media(max-width:580px) {
 #trainersTable_wrapper #trainersTable .trainer-name-content,
 #trainersTable_wrapper #trainersTable .trainer-main-link,
 #trainersTable_wrapper #trainersTable .trainer-person-primary,
 #trainersTable_wrapper #trainersTable .trainer-person-last,
 #trainersTable_wrapper #trainersTable .trainer-person-middle,
 #trainersTable_wrapper #trainersTable .trainer-person-first,
 #trainersTable_wrapper #trainersTable .trainer-person-patronymic {white-space:normal!important;overflow-wrap:anywhere!important;min-width:0!important;max-width:100%!important;}
 #trainersTable_wrapper #trainersTable .trainer-cabinet-launch {white-space:normal!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;gap:6px!important;font-size:13px!important;padding:10px 6px!important;min-height:44px!important;}
 #trainersTable_wrapper #trainersTable .trainer-cabinet-launch>span:last-child {white-space:normal!important;min-width:0;overflow-wrap:normal;}
}
@media(max-width:480px) {
 #trainersTable_wrapper #trainersTable tbody,#trainersTable tbody {grid-template-columns:minmax(0,1fr)!important;}
 #trainersTable_wrapper #trainersTable tbody tr {min-height:250px!important;padding:18px 14px 14px!important;}
}

#trainersTable_wrapper #trainersTable_info { display:none!important; }

#trainersTable_wrapper #trainersToolbarLeft { justify-content:flex-start!important; gap:20px!important; }
