/* Загрузка документа в открытой группе (плюс у курсанта, «Добавить документ», «Добавить документ PDF»):
   список ячеек документов скрыт, экран делится на документ 50% | разметка 20% | курсанты 30%. */

/* Список ячеек слева не нужен: тип документа уже выбран */
#docsModalBackdrop .docs-split:has(.docs-viewer--inline-upload),
#docsModalBackdrop .docs-split.docs-split--documents-open:has(.docs-viewer--inline-upload){
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important
}
#docsModalBackdrop .docs-split:has(.docs-viewer--inline-upload) > #docsContainer{
  display:none!important
}

/* Документ + разметка (70%) | курсанты (30%) */
#docsModalBackdrop .docs-viewer.docs-viewer--markup-workspace.docs-viewer--inline-upload{
  grid-template-columns:minmax(0,7fr) minmax(0,3fr)!important;
  gap:10px!important
}

/* Внутри: документ 5 частей | разметка 2 части (от всей ширины 50% и 20%) */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace{
  display:grid!important;
  grid-template-columns:minmax(0,5fr) minmax(170px,2fr);
  grid-template-rows:auto auto auto auto minmax(0,1fr);
  column-gap:0
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header{
  grid-column:1 / -1;
  grid-row:1
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-left{
  display:contents!important
}
/* Документ: поле выбора PDF и предпросмотр — во всю высоту слева */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-file-label,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-pdf-preview{
  grid-column:1;
  grid-row:2 / -1;
  min-height:0;
  height:100%;
  border-right:1px solid var(--border)
}
/* Разметка: узкая колонка справа от документа */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields{
  grid-column:2;
  grid-row:2;
  grid-template-columns:minmax(0,1fr)!important;
  min-height:0;
  max-height:none;
  overflow:visible;
  padding:10px 8px;
  border-bottom:0
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields input,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields select{
  width:100%;
  min-width:0;
  box-sizing:border-box
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields .inline-waiting-add-btn{
  white-space:normal
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .transfer-upload-status{
  grid-column:2;
  grid-row:3;
  margin:6px 8px 0
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-actions{
  grid-column:2;
  grid-row:4;
  flex-direction:column-reverse;
  align-items:stretch;
  gap:6px;
  padding:10px 8px;
  border-top:0
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-actions button{
  width:100%
}

/* Экзамен (ведомость, акт ГИБДД): курсанты с результатом умещаются в 30% без горизонтальной прокрутки */
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.registry-enriched,
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  grid-template-columns:28px 28px minmax(0,1fr) 78px 104px!important;
  grid-template-areas:"mark num fio dob result"!important;
  min-width:0!important
}
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.registry-enriched > span{
  padding:4px 5px!important;
  font-size:12px!important
}
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .sp-docs{
  display:none!important
}
#docsModalBackdrop .docs-viewer--inline-upload .sp-inline-exam-result__select{
  padding:0 4px;
  font-size:11px
}

/* Просмотр документа (по «Есть» и из списка документов группы): PDF 50% | атрибуты 20% | курсанты 30%.
   Прокрутка одна — у окна группы: PDF и атрибуты закреплены, листается список курсантов. */
#docsModalBackdrop .docs-split:has(.docs-viewer--doc-view),
#docsModalBackdrop .docs-split.docs-split--documents-open:has(.docs-viewer--doc-view){
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important
}
#docsModalBackdrop .docs-split:has(.docs-viewer--doc-view) > #docsContainer{display:none!important}
#docsModalBackdrop .docs-viewer.docs-viewer--doc-view{
  display:grid!important;
  grid-template-columns:minmax(0,5fr) minmax(200px,2fr) minmax(0,3fr)!important;
  gap:10px!important;
  align-items:start!important
}
#docsModalBackdrop .docs-viewer--doc-view .docs-preview-pane{
  grid-column:1;
  grid-row:1;
  min-width:0;
  position:sticky!important;
  top:var(--docs-modal-header-height,0px);
  height:calc(100vh - var(--docs-modal-header-height,0px) - 20px)!important
}
#docsModalBackdrop .docs-viewer--doc-view:not(.docs-viewer--markup-workspace) #groupStudentsPanel{display:none!important}
#docsModalBackdrop .doc-view-side,
#docsModalBackdrop .doc-view-list{
  min-width:0;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--bg-card);
  color:var(--text-main)
}
#docsModalBackdrop .doc-view-side{
  grid-column:2;
  grid-row:1;
  position:sticky;
  top:var(--docs-modal-header-height,0px);
  padding:14px 12px;
  font-size:22px;
  line-height:1.25;
  word-break:break-word
}
#docsModalBackdrop .doc-view-side__title{font-size:22px;font-weight:700;margin-bottom:8px}
#docsModalBackdrop .doc-view-side__hint{color:var(--text-muted);font-size:16px}
#docsModalBackdrop .doc-view-side__l{margin-top:14px;color:var(--text-muted);font-size:16px;text-transform:uppercase;letter-spacing:.02em}
#docsModalBackdrop .doc-view-side__v{font-weight:600;font-size:22px}
#docsModalBackdrop .doc-view-side__btn{display:block;width:100%;margin-top:10px;padding:10px 8px;border:1px solid var(--border);border-radius:10px;background:transparent;color:inherit;font:inherit;font-size:16px;line-height:1.25;text-align:center;text-decoration:none;cursor:pointer}
#docsModalBackdrop .doc-view-side__btn--primary{margin-top:16px;background:#0d9488;border-color:#0d9488;color:#fff}
#docsModalBackdrop .doc-view-list{grid-column:3;grid-row:1;padding:6px}
#docsModalBackdrop .doc-view-list__head{display:flex;align-items:center;gap:8px;padding:6px 6px 8px;font-size:15px;font-weight:700}
#docsModalBackdrop .doc-view-list__head span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:22px;padding:0 7px;border-radius:11px;background:#0d9488;color:#fff;font-size:12px}
#docsModalBackdrop .doc-view-table{width:100%;border-collapse:collapse;font-size:13px}
#docsModalBackdrop .doc-view-table th{position:sticky;top:var(--docs-modal-header-height,0px);z-index:1;background:var(--bg-card);padding:7px 6px;border-bottom:2px solid var(--border);color:var(--text-muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;text-align:left;white-space:nowrap}
#docsModalBackdrop .doc-view-table td{padding:7px 6px;border-bottom:1px solid var(--border);vertical-align:middle}
#docsModalBackdrop .doc-view-table td.n{width:28px;color:var(--text-muted);text-align:right}
#docsModalBackdrop .doc-view-table td.fio{font-weight:600}
#docsModalBackdrop .doc-view-table td.dob{white-space:nowrap;color:var(--text-muted)}
#docsModalBackdrop .doc-view-table td.st{font-size:12px}
#docsModalBackdrop .doc-view-table td.res{font-weight:700;white-space:nowrap}
#docsModalBackdrop .doc-view-table td.res--pass{color:#059669}
#docsModalBackdrop .doc-view-table td.res--fail,#docsModalBackdrop .doc-view-table td.res--absent{color:#dc2626}
#docsModalBackdrop .doc-view-table tr.is-current td{background:rgba(13,148,136,.12)}
#docsModalBackdrop .doc-view-table tr.is-current td.n{box-shadow:inset 3px 0 #0d9488}
#docsModalBackdrop .doc-view-list__empty{padding:12px 8px;color:var(--text-muted);font-size:14px}
/* Разметка документа (галочки у курсантов): та же сетка, вместо списка документа — список группы */
#docsModalBackdrop .docs-viewer--doc-view.docs-viewer--markup-workspace #docViewList{display:none!important}
#docsModalBackdrop .docs-viewer--doc-view.docs-viewer--markup-workspace #groupStudentsPanel{
  display:block!important;
  grid-column:3;
  grid-row:1;
  min-width:0
}
@media (max-width:900px){
  #docsModalBackdrop .docs-viewer.docs-viewer--doc-view{grid-template-columns:minmax(0,5fr) minmax(170px,2fr)!important}
  #docsModalBackdrop .docs-viewer--doc-view .docs-preview-pane{position:relative!important;height:70vh!important}
  #docsModalBackdrop .doc-view-side{position:static;font-size:18px}
  #docsModalBackdrop .doc-view-side__v,#docsModalBackdrop .doc-view-side__title{font-size:18px}
  #docsModalBackdrop .doc-view-list,
  #docsModalBackdrop .docs-viewer--doc-view.docs-viewer--markup-workspace #groupStudentsPanel{grid-column:1 / -1;grid-row:2}
}

/* «Открыть в новой вкладке» не нужна; имя файла в шапке просмотра не пишем */
#docsModalBackdrop #viewerOpen{display:none!important}
#docsModalBackdrop .docs-viewer--doc-view #viewerName{visibility:hidden}

/* ===== Единый вид загрузки с просмотром документа: три карточки, разметка 20% крупным текстом, курсанты таблицей ===== */
#docsModalBackdrop .docs-viewer--inline-upload .docs-preview-pane{
  border:0!important;
  background:transparent!important;
  overflow:visible!important
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace{
  background:transparent!important;
  column-gap:10px!important;
  overflow:visible!important
}
/* Документ — своя карточка */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-file-label,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-pdf-preview{
  grid-row:1 / -1!important;
  border:1px solid var(--border)!important;
  border-radius:10px;
  background:var(--bg-card);
  overflow:hidden
}
/* Разметка — карточка как «атрибуты» в просмотре: заголовок, поля, кнопки */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .transfer-upload-status,
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-actions{
  grid-column:2!important;
  background:var(--bg-card)!important;
  border-left:1px solid var(--border)!important;
  border-right:1px solid var(--border)!important;
  margin:0!important
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header{
  grid-row:1!important;
  border-top:1px solid var(--border)!important;
  border-bottom:0!important;
  border-radius:10px 10px 0 0;
  padding:14px 12px 4px!important
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header b{font-size:22px!important;line-height:1.2!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header small{font-size:14px!important;margin-top:6px!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-markup-fields{grid-row:2!important;padding:10px 12px!important;gap:12px!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .transfer-upload-status{grid-row:3!important;padding:6px 12px!important;font-size:15px}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-actions{
  grid-row:4!important;
  border-bottom:1px solid var(--border)!important;
  border-radius:0 0 10px 10px;
  padding:10px 12px 14px!important
}
#docsModalBackdrop .docs-viewer--inline-upload .cert-markup-fields .transfer-label span{
  color:var(--text-muted);
  font-size:16px!important;
  text-transform:uppercase;
  letter-spacing:.02em
}
#docsModalBackdrop .docs-viewer--inline-upload .cert-markup-fields input,
#docsModalBackdrop .docs-viewer--inline-upload .cert-markup-fields select{
  font-size:20px!important;
  padding:10px!important;
  height:auto!important
}
#docsModalBackdrop .docs-viewer--inline-upload .cert-markup-fields small,
#docsModalBackdrop .docs-viewer--inline-upload .cert-markup-fields .inline-waiting-add-btn{font-size:14px!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace .cert-upload-actions button{font-size:16px!important;padding:10px 8px!important;border-radius:10px!important}

/* Курсанты — таблица как в просмотре: компактные строки, линии, заголовок колонок */
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel{
  border:1px solid var(--border)!important;
  border-radius:10px;
  background:var(--bg-card)!important;
  padding:6px!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.registry-enriched{
  min-height:0!important;
  padding:6px!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid var(--border)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  align-items:center!important;
  font-size:13px!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.registry-enriched > span{
  min-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.person-row--marked{
  background:rgba(13,148,136,.12)!important;
  box-shadow:inset 3px 0 #0d9488!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  position:sticky;
  top:var(--docs-modal-header-height,0px);
  z-index:2;
  min-height:0!important;
  background:var(--bg-card)!important;
  border-bottom:2px solid var(--border)!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched > span{
  color:var(--text-muted);
  font-size:11px!important;
  font-weight:700!important;
  text-transform:uppercase;
  letter-spacing:.02em
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-fio__text{font-weight:600}

/* ===== Окно группы: шапка закреплена и не меняет положение и высоту; зазор до содержимого постоянный ===== */
#docsModalBackdrop .modal.modal--xl{padding-top:0!important;border-top-width:0!important} /* без верхней рамки шапка не сдвигается на 1px при прокрутке — нет щели над заголовком таблицы */
#docsModalBackdrop .modal__header--split{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-bottom:12px!important /* заголовок таблицы — вплотную под шапкой, без щели */
}
/* Таблица курсантов и просмотр документа — во всю ширину шапки */
#docsModalBackdrop .docs-split{padding-left:0!important;padding-right:0!important}
#docsModalBackdrop .docs-viewer--students #groupStudentsPanel{padding-left:0!important;padding-right:0!important}

/* «Переразметить» — жёлтая */
#docsModalBackdrop .doc-view-side__btn--warn{margin-top:16px;background:#f59e0b;border-color:#f59e0b;color:#1f2937;font-weight:700}
#docsModalBackdrop .doc-view-side__btn--warn:hover{background:#d97706;border-color:#d97706}

/* ===== Просмотр документа: заголовки не скачут относительно шапки группы =====
   содержимое начинается сразу под шапкой (зазор уже внутри шапки), PDF и атрибуты помещаются в окно,
   «Курсанты документа» и строка заголовков таблицы закреплены под шапкой */
#docsModalBackdrop .docs-split{padding-top:0!important}
#docsModalBackdrop .docs-viewer.docs-viewer--doc-view{border:0!important}
#docsModalBackdrop .docs-viewer--doc-view .docs-preview-pane{
  top:var(--docs-modal-header-height,0px)!important;
  height:calc(100vh - var(--docs-modal-header-height,0px) - 32px)!important
}
#docsModalBackdrop .doc-view-side{top:var(--docs-modal-header-height,0px)}
#docsModalBackdrop .doc-view-list{padding-top:0!important}
#docsModalBackdrop .doc-view-list__head{
  position:sticky;
  top:var(--docs-modal-header-height,0px);
  z-index:3;
  height:44px;
  box-sizing:border-box;
  margin:0 -6px;
  padding:0 12px!important;
  background:var(--bg-card);
  border-radius:10px 10px 0 0
}
#docsModalBackdrop .doc-view-table th{top:calc(var(--docs-modal-header-height,0px) + 44px)!important}
/* Щель между шапкой группы и «Курсанты документа»: шапка при прокрутке на 1px выше расчётной высоты.
   Заголовок поднимаем на 1px и закрываем полосу над ним фоном (шапка группы рисуется поверх, z-index 50) */
#docsModalBackdrop .doc-view-list__head{
  top:calc(var(--docs-modal-header-height,0px) - 1px)!important;
  box-shadow:0 -12px 0 0 var(--bg-card)
}
#docsModalBackdrop .doc-view-table th{top:calc(var(--docs-modal-header-height,0px) + 43px)!important}

/* Подпись «Наименование документа» — в стиле остальных подписей атрибутов */
#docsModalBackdrop .doc-view-side__l--first{margin-top:0}
#docsModalBackdrop .doc-view-side__title{margin-top:2px}
#docsModalBackdrop .inline-document-workspace__label{display:block;margin-bottom:2px;color:var(--text-muted);font-size:16px;text-transform:uppercase;letter-spacing:.02em}

/* Просмотр документа: шапка группы не рисуется, один крестик — справа от «Курсанты документа».
   Закреплённые блоки стоят вплотную к верху окна на том же месте при прокрутке */
/* вплотную к верху: без рамки окна сверху и рамки списка сверху над закреплёнными блоками нет полосы, где видна прокрутка */
#docsModalBackdrop .modal:has(.docs-viewer--doc-view){--docs-modal-header-height:0px;border-top-width:0!important}
#docsModalBackdrop .docs-viewer--doc-view .doc-view-list{border-top-width:0!important;border-top-left-radius:0;border-top-right-radius:0}
#docsModalBackdrop .modal:has(.docs-viewer--doc-view) .doc-view-list__head{top:0!important;box-shadow:none}
#docsModalBackdrop .modal:has(.docs-viewer--doc-view) .doc-view-table th{top:44px!important}
#docsModalBackdrop .modal:has(.docs-viewer--doc-view) .modal__header--split{display:none!important}
#docsModalBackdrop .docs-split:has(.docs-viewer--doc-view){padding-top:0!important}
#docsModalBackdrop .docs-viewer--doc-view #viewerClosePreview{display:none!important}
#docsModalBackdrop .doc-view-close{
  margin-left:auto;
  width:34px;
  height:34px;
  border:1px solid var(--border);
  border-radius:8px;
  background:transparent;
  color:var(--text-main);
  font-size:24px;
  line-height:1;
  cursor:pointer
}
#docsModalBackdrop .doc-view-close:hover{background:rgba(239,68,68,.12);border-color:#ef4444;color:#ef4444}

/* ===== Загрузка и переразметка в едином стиле с просмотром документа ===== */
/* Шапки группы нет — как в просмотре; блоки прижаты к верху окна */
#docsModalBackdrop .modal:has(.docs-viewer--inline-upload){--docs-modal-header-height:0px;border-top-width:0!important}
#docsModalBackdrop .modal:has(.docs-viewer--inline-upload) .modal__header--split{display:none!important}
#docsModalBackdrop .docs-split:has(.docs-viewer--inline-upload){padding-top:0!important}

/* Колонка разметки: заголовок, счётчик обучающихся и каждая дата — отдельными строками, как атрибуты в просмотре */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header{flex-wrap:wrap!important;align-items:flex-start!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header > div:first-child{flex:1 1 0;min-width:0}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__header small{display:none!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-count{
  order:3;
  flex:1 0 100%;
  display:block!important;
  margin:12px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-count > span{display:block;color:var(--text-muted);font-size:16px!important;font-weight:400!important;text-transform:uppercase;letter-spacing:.02em}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-count__value{display:block!important;min-width:0!important;height:auto!important;padding:0!important;background:transparent!important;color:inherit!important;font-size:22px!important;font-weight:600!important;text-align:left!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-fields{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-fields .transfer-label{display:block!important;margin:0!important}
#docsModalBackdrop .docs-viewer--inline-upload .inline-order-fields input{width:100%!important}
/* Крестик — как в просмотре документа */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__close{
  order:2;
  width:34px;height:34px;flex:0 0 34px;
  border:1px solid var(--border)!important;border-radius:8px;
  color:var(--text-main)!important;font-size:24px!important;line-height:1!important
}
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__close:hover{background:rgba(239,68,68,.12);border-color:#ef4444!important;color:#ef4444!important}

/* Курсанты: строка «Курсанты · выбрано» и поиск под ней, закреплены сверху */
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel{padding-top:0!important;border-top-width:0!important;border-top-left-radius:0;border-top-right-radius:0}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-toolbar{
  position:sticky;top:0;z-index:4;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:6px 10px;
  height:92px;box-sizing:border-box;
  margin:0 -6px!important;padding:8px 12px!important;
  background:var(--bg-card)!important;
  border-bottom:1px solid var(--border)
}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-toolbar > label{display:contents!important}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-toolbar > label > span{grid-column:1;grid-row:1;font-size:15px}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-count{grid-column:2;grid-row:1;font-size:13px!important}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-search{grid-column:1 / -1;grid-row:2;width:100%!important;max-width:none!important;min-width:0!important;height:36px;padding:6px 10px!important;font-size:14px!important}

/* Таблица курсантов — как в просмотре: №, ФИО, дата рождения; колонка «есть документ» не нужна */
#docsModalBackdrop .docs-viewer--inline-upload:not([data-inline-doc-key="exam_sheet"]):not([data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.registry-enriched,
#docsModalBackdrop .docs-viewer--inline-upload:not([data-inline-doc-key="exam_sheet"]):not([data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  grid-template-columns:28px 32px minmax(0,1fr) 96px!important;
  grid-template-areas:"mark num fio dob"!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-docs{display:none!important}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  top:92px!important;
  height:34px!important;min-height:34px!important;
  align-items:center!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched > span{min-height:0!important;height:auto!important;padding-top:0!important;padding-bottom:0!important;justify-content:flex-start!important;text-align:left!important}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.registry-enriched{height:37px!important;min-height:37px!important}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn .sp-num{justify-content:flex-end!important;color:var(--text-muted)}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn .sp-dob{justify-content:flex-start!important;color:var(--text-muted)}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-fio__text{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* ===== Загрузка/переразметка = просмотр: «Курсанты документа» со счётчиком и крестиком, таблица со статусом ===== */
#docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace__close{display:none!important}
#docsModalBackdrop .docs-viewer--inline-upload .document-person-selection-toolbar.document-person-selection-toolbar--doc{
  grid-template-columns:auto auto minmax(0,1fr) 34px!important;
  height:96px!important;
  gap:8px!important;
  border:0!important;
  border-bottom:1px solid var(--border)!important
}
#docsModalBackdrop .document-person-selection-toolbar--doc .doc-view-list__title{grid-column:1;grid-row:1;font-size:15px;font-weight:700;white-space:nowrap}
#docsModalBackdrop .document-person-selection-toolbar--doc .doc-view-list__badge{
  grid-column:2;grid-row:1;
  display:inline-flex;align-items:center;justify-content:center;
  min-width:24px;height:22px;padding:0 7px!important;border-radius:11px;
  background:#0d9488;color:#fff!important;font-size:12px!important;font-weight:700
}
#docsModalBackdrop .document-person-selection-toolbar--doc .doc-view-close{grid-column:4;grid-row:1;margin:0}
#docsModalBackdrop .document-person-selection-toolbar--doc .document-person-selection-search{grid-column:1 / -1!important;grid-row:2!important}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{top:96px!important}

/* Таблица: как «Курсанты документа» в просмотре — №, ФИО, дата рождения, статус (+ результат у экзаменов) */
#docsModalBackdrop .docs-viewer--inline-upload:not([data-inline-doc-key="exam_sheet"]):not([data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.registry-enriched,
#docsModalBackdrop .docs-viewer--inline-upload:not([data-inline-doc-key="exam_sheet"]):not([data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  grid-template-columns:28px 32px minmax(0,1fr) 92px minmax(96px,auto)!important;
  grid-template-areas:"mark num fio dob status"!important
}
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.registry-enriched,
#docsModalBackdrop .docs-viewer--inline-upload:is([data-inline-doc-key="exam_sheet"],[data-inline-doc-key="gibdd_extract"]) #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{
  grid-template-columns:28px 28px minmax(0,1fr) 78px minmax(90px,auto) 104px!important;
  grid-template-areas:"mark num fio dob status result"!important
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-registry-training{
  display:flex!important;grid-area:status!important;align-items:center;justify-content:flex-start!important;min-width:0
}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-registry-training .status-pill,
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-registry-training .registry-sb{font-size:11px!important;white-space:nowrap}
/* Заголовки колонок — как th в просмотре */
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.sp-header.registry-enriched{border-bottom:2px solid var(--border)!important}
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-header .sp-hdr-label,
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .sp-header .sp-hdr-label *{
  color:var(--text-muted)!important;font-size:11px!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.02em
}
/* Строки — как td в просмотре */
#docsModalBackdrop .docs-viewer--inline-upload #groupStudentsPanel .student-person-btn.registry-enriched:not(.sp-header) > span{font-size:13px!important}

/* ===== Единый крестик закрытия во всём «Контроле групп» — как в просмотре документа =====
   квадрат 34×34 с рамкой, «×» 24px, при наведении красный */
.modal__close,
.transfer-modal__close,
.kprzm-close,
.viewer-close-btn,
.school-create-modal__close,
.document-type-picker__close,
.registry-exam-editor__close,
.kgatt-close,
.ga-close,
.archive-upload-preview-close,
.ver-modal__x,
.doc-view-close,
button.text-gray-400.leading-none.px-2,
#_pravaClose,
#oadCloseX,
#certCloseX,
#wmdCloseX,
#_gaiFullClose,
#_expClose,
#gaCloseBtn,
#mergeCloseBtn,
#docMergeCloseBtn,
#trViewerClose,
#trModalCloseBtn,
#studentModalCloseBtn,
#studentViewerClosePreview,
#modalCloseBtn,
#docsModalCloseBtn,
#viewerClosePreview{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:34px!important;height:34px!important;min-width:34px!important;flex:0 0 34px!important;
  padding:0!important; /* внешние отступы не трогаем: многие крестики держатся справа за счёт margin-left:auto */
  border:1px solid var(--border,rgba(148,163,184,.35))!important;border-radius:8px!important;
  background:transparent!important;box-shadow:none!important;
  color:var(--text-main,currentColor)!important;
  font-size:24px!important;font-weight:400!important;line-height:1!important;
  cursor:pointer!important;opacity:1!important
}
.modal__close:hover,
.transfer-modal__close:hover,
.kprzm-close:hover,
.viewer-close-btn:hover,
.school-create-modal__close:hover,
.document-type-picker__close:hover,
.registry-exam-editor__close:hover,
.kgatt-close:hover,
.ga-close:hover,
.archive-upload-preview-close:hover,
.ver-modal__x:hover,
.doc-view-close:hover,
button.text-gray-400.leading-none.px-2:hover,
#_pravaClose:hover,
#oadCloseX:hover,
#certCloseX:hover,
#wmdCloseX:hover,
#_gaiFullClose:hover,
#_expClose:hover,
#gaCloseBtn:hover,
#mergeCloseBtn:hover,
#docMergeCloseBtn:hover,
#trViewerClose:hover,
#trModalCloseBtn:hover,
#studentModalCloseBtn:hover,
#studentViewerClosePreview:hover,
#modalCloseBtn:hover,
#docsModalCloseBtn:hover,
#viewerClosePreview:hover{
  background:rgba(239,68,68,.12)!important;border-color:#ef4444!important;color:#ef4444!important
}

/* ===== Шапка группы: «Добавить документ · Примечание · Выгрузить в Excel · Управление» всегда в одну строку =====
   Левая часть берёт ширину по содержимому (раньше max-width:50% и перенос), сжимается полоса этапов */
#docsModalBackdrop .modal__header--split .modal__header-left{flex:0 0 auto!important;max-width:none!important;min-width:0!important}
#docsModalBackdrop .modal__header-left > .flex{flex-wrap:nowrap!important}
#docsModalBackdrop .modal__header-left > .flex > *{flex:0 0 auto!important;white-space:nowrap!important}
#docsModalBackdrop .modal__header--split .group-progress-bar{flex:1 1 0!important;min-width:0!important}
/* Планшет книжно и уже: название группы отдельной строкой, все кнопки — одной строкой под ним */
@media (max-width:900px){
  #docsModalBackdrop .modal__header-left > .flex{display:grid!important;grid-template-columns:repeat(4,max-content);justify-content:start;align-items:center}
  #docsModalBackdrop .modal__header-left > .flex > #docsModalTitle{grid-column:1 / -1}
}
/* Очень узко: кнопки значками, подпись — во всплывающей подсказке (title) */
@media (max-width:640px){
  #docsModalBackdrop .modal__header-left > .flex > button,
  #docsModalBackdrop #btnGroupDocs,#docsModalBackdrop #btnGroupNote,#docsModalBackdrop #btnExportGroupRoster,#docsModalBackdrop #btnGroupAdmin{font-size:0!important;gap:0!important;padding:6px 10px!important;min-width:0!important;width:auto!important}
  #docsModalBackdrop .modal__header-left > .flex > button span{display:none!important}
  #docsModalBackdrop .modal__header-left > .flex > button svg{width:18px!important;height:18px!important}
}
/* Узкие окна: кнопки компактнее, но тоже в одну строку */
@media (max-width:1100px){
  #docsModalBackdrop .modal__header-left > .flex{gap:6px!important}
  #docsModalBackdrop .modal__header-left > .flex > button{padding-left:8px!important;padding-right:8px!important;font-size:12px!important}
}

/* График подготовки группы: без полосы прокрутки ни при каком шрифте/масштабе.
   Было overflow-x:auto (23-group-stepper.css) — при 1-2px лишней высоты в приложении появлялся скролл.
   Шаги сжимаются по ширине (min-width:0), поэтому прокрутка не нужна */
#docsModalBackdrop #groupProgressBar,
#docsModalBackdrop .group-progress-bar{overflow:visible!important;scrollbar-width:none}
#docsModalBackdrop #groupProgressBar::-webkit-scrollbar{display:none;width:0;height:0}
#docsModalBackdrop #groupProgressBar .gp-step{min-width:0!important}

/* «Группа: 1-153» — буквы по высоте кнопок шапки (34px); высота строки = высоте кнопки, шапка не растёт */
#docsModalBackdrop #docsModalTitle,
#docsModalBackdrop .modal__header-left .modal__title{font-size:36px!important;line-height:34px!important;letter-spacing:-.01em}
@media (max-width:1366px){#docsModalBackdrop #docsModalTitle,#docsModalBackdrop .modal__header-left .modal__title{font-size:32px!important}}
@media (max-width:900px){#docsModalBackdrop #docsModalTitle,#docsModalBackdrop .modal__header-left .modal__title{font-size:28px!important}}
@media (max-width:640px){#docsModalBackdrop #docsModalTitle,#docsModalBackdrop .modal__header-left .modal__title{font-size:24px!important}}

/* Подписи этапов («Начало обучения», «Окончание обучения») в одну строку — шапка не растёт */
#docsModalBackdrop #groupProgressBar .gp-step__label{white-space:nowrap!important;max-width:none!important}

/* Заголовок таблицы группы заходит под шапку на 1px: высота шапки дробная (98,35px), а переменная округлена вверх —
   без нахлёста на некоторых экранах оставалась полоска, в которой видны строки (зелёный статус) */
#docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header.registry-enriched{top:calc(var(--docs-modal-header-height,0px) - 1px)!important}

/* ===== Заголовки таблицы группы: один стиль для всех колонок, без обрезки =====
   раньше колонки документов были серыми и мельче, длинные слова обрезались краем колонки */
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control,
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control__label,
#docsModalBackdrop .docs-viewer--students .sp-header .doc-cell--hdr,
#docsModalBackdrop .docs-viewer--students .sp-header .sp-hdr-label{
  color:var(--text-main)!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.2!important;
  opacity:1!important
}
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control__label{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:manual!important;
  text-align:center
}
#docsModalBackdrop .docs-viewer--students .sp-header .doc-cell--hdr{overflow:visible!important}
/* Стрелка сортировки — под подписью: вся ширина колонки остаётся тексту, слова не обрезаются */
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control{
  flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;
  width:100%!important;padding-left:2px!important;padding-right:2px!important
}
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control__label{max-width:100%}
#docsModalBackdrop .docs-viewer--students .sp-header .sp-num .sp-head-control{padding:0!important}
/* Средние экраны: колонки документов узкие (53–70px) — меньше отступов и шрифт 11px, слова не обрезаются */
@media (max-width:1700px){
  #docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header .sp-docs .doc-cell.doc-cell--hdr{padding-left:1px!important;padding-right:1px!important}
  #docsModalBackdrop .docs-viewer--students .sp-header .doc-cell--hdr .sp-head-control{padding-left:0!important;padding-right:0!important}
  #docsModalBackdrop .docs-viewer--students .sp-header .doc-cell--hdr .sp-head-control__label{font-size:11px!important;letter-spacing:-.01em}
}
#docsModalBackdrop .docs-viewer--students .sp-header .sp-head-control__icon{color:var(--text-muted)!important;font-size:10px!important;line-height:1!important;flex:0 0 auto}

/* МК «Нет записи» — красная плашка в две строки (стиль «Просрочен» статуса призыва) */
#docsModalBackdrop .registry-mk-missing{text-align:center;line-height:1.15}
#docsModalBackdrop .registry-mk-missing b{display:block;white-space:normal}

/* ===== Фильтр в заголовке таблицы: выбранное подсвечено, «×» у выбранного, «×» сброса в самом заголовке ===== */
.sp-filter-menu .sp-filter-value{display:flex!important;align-items:center;justify-content:space-between;gap:8px;text-align:left}
.sp-filter-menu .sp-filter-value.is-selected,
.sp-filter-menu .sp-filter-menu__sort button.is-selected{
  background:rgba(13,148,136,.22)!important;border-color:#0d9488!important;color:#fff!important;font-weight:700!important
}
.sp-filter-menu .sp-filter-value__x{
  display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;
  border-radius:5px;background:rgba(239,68,68,.18);color:#fca5a5;font-size:16px;line-height:1
}
.sp-filter-menu .sp-filter-value.is-selected:hover .sp-filter-value__x{background:#ef4444;color:#fff}
#docsModalBackdrop .sp-header .sp-head-cell--active{position:relative!important;overflow:visible!important}
#docsModalBackdrop .sp-header .sp-head-control.is-filtered .sp-head-control__label,
#docsModalBackdrop .sp-header .sp-head-control.is-sorted .sp-head-control__label{color:#2dd4bf!important}
#docsModalBackdrop .sp-header .sp-head-reset{
  position:absolute;top:2px;right:2px;z-index:2;
  display:inline-flex;align-items:center;justify-content:center;
  width:18px;height:18px;padding:0;border:1px solid #ef4444;border-radius:5px;
  background:rgba(239,68,68,.18);color:#fca5a5;font-size:14px;line-height:1;cursor:pointer
}
#docsModalBackdrop .sp-header .sp-head-reset:hover{background:#ef4444;color:#fff}
#docsModalBackdrop .sp-header .sp-head-reset[hidden]{display:none!important}

/* Планшет в книжной ориентации и узкие окна: документ и разметка сверху, курсанты ниже */
@media (max-width:900px){
  #docsModalBackdrop .docs-viewer.docs-viewer--markup-workspace.docs-viewer--inline-upload{
    grid-template-columns:minmax(0,1fr)!important
  }
  #docsModalBackdrop .docs-viewer--inline-upload .docs-preview-pane{
    position:relative!important;
    height:70vh!important
  }
  #docsModalBackdrop .docs-viewer--inline-upload .inline-document-workspace{
    grid-template-columns:minmax(0,5fr) minmax(160px,2fr)
  }
}

/* «+ внести результат сдачи экзаменов»: выбор ВЭК / ПДД / вождение (23.10.2026) */
.exam-kind-picker__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.exam-kind-picker__btn { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 18px 12px;
  border: 1px solid var(--border, #334155); border-radius: 12px; background: var(--card, transparent); color: inherit; cursor: pointer; }
.exam-kind-picker__btn b { font-size: 18px; }
.exam-kind-picker__btn small { opacity: .7; font-size: 12px; }
.exam-kind-picker__btn:hover, .exam-kind-picker__btn:focus-visible { border-color: #14b8a6; background: rgba(20,184,166,.12); outline: none; }
@media (max-width: 520px) { .exam-kind-picker__list { grid-template-columns: 1fr; } }

/* Статус «сдал пдд» (23.10.2026): между «сдал вэк» и «сдал гаи» */
.status-pill.status-pill--pdd-pass { background: #99f6e4; color: #134e4a; border-color: #2dd4bf; }
html.dark .status-pill.status-pill--pdd-pass { background: rgba(13,148,136,.25); color: #5eead4; border-color: rgba(13,148,136,.55); }

/* «Разметка экзаменов»: документ к попытке — кнопка, открывает окно загрузки 50/20/30 (23.10.2026) */
.registry-exam-doc-btn { align-self: flex-start; padding: 7px 14px; border-radius: 8px; border: 1px solid #0d9488;
  background: rgba(13,148,136,.12); color: #0f766e; font-weight: 600; font-size: 13px; cursor: pointer; white-space: nowrap; }
.registry-exam-doc-btn:hover, .registry-exam-doc-btn:focus-visible { background: rgba(13,148,136,.22); outline: none; }
html.dark .registry-exam-doc-btn { color: #5eead4; border-color: rgba(45,212,191,.6); }

/* Ячейка «Экзамен» — контрастный вид для людей с плохим зрением (23.10.2026):
   фон ячейки нейтральный, состояние — толстой полосой слева; заголовок крупный и тёмный/белый;
   по каждому сданному экзамену — отдельная строка-плашка со сплошным фоном и значком ✓ / ! */
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage{
  background: var(--bg-card, #fff) !important;
  border: 1px solid var(--border, #cbd5e1) !important;
  border-left: 5px solid #64748b !important;
  border-radius: 8px !important;
  padding: 6px 8px !important;
  gap: 4px !important;
  color: #0f172a !important;
}
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage.registry-ex--ok{ border-left-color: #16a34a !important; }
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage.registry-ex--no{ border-left-color: #dc2626 !important; }
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage b{
  font-size: 14px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  white-space: normal !important;
  line-height: 1.2 !important;
}
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage small{
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #334155 !important;
  white-space: normal !important;
  line-height: 1.25 !important;
}
/* Есть строки по экзаменам — подпись «ВЭК, ПДД, вождение» лишняя */
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage:has(.sp-exam-docs) > small{ display: none !important; }
#docsModalBackdrop .registry-ex--stage .sp-exam-docs{ display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px; margin-top: 2px; }
#docsModalBackdrop .sp-exam-doc{
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 6px 2px 3px; border-radius: 6px;
  font-size: 13px; font-weight: 800; line-height: 18px; white-space: nowrap;
}
#docsModalBackdrop .sp-exam-doc__icon{
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 18px;
  width: 16px; height: 16px; border-radius: 50%; font-size: 11px; font-weight: 900;
}
#docsModalBackdrop .sp-exam-doc--yes{ background: #166534; color: #ffffff; }
#docsModalBackdrop .sp-exam-doc--yes .sp-exam-doc__icon{ background: #ffffff; color: #166534; }
#docsModalBackdrop .sp-exam-doc--no{ background: #facc15; color: #1c1917; border: 1px solid #a16207; }
#docsModalBackdrop .sp-exam-doc--no .sp-exam-doc__icon{ background: #1c1917; color: #facc15; }
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage{
  background: #0f172a !important; border-color: #475569 !important; color: #f8fafc !important;
}
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage.registry-ex--ok{ border-left-color: #22c55e !important; }
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage.registry-ex--no{ border-left-color: #f87171 !important; }
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage.registry-ex--wait{ border-left-color: #94a3b8 !important; }
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage b{ color: #ffffff !important; }
html.dark #docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage small{ color: #e2e8f0 !important; }
html.dark #docsModalBackdrop .sp-exam-doc--yes{ background: #15803d; color: #ffffff; }
html.dark #docsModalBackdrop .sp-exam-doc--yes .sp-exam-doc__icon{ background: #ffffff; color: #15803d; }

/* ===== Таблица курсантов группы — читаемость при плохом зрении (23.10.2026) =====
   Крупнее и контрастнее текст, заметнее кнопки «Есть» / «+», разделители строк.
   Статусы — крупнее, но обычной толщины (не жирные). Высоту строк не раздуваем. */
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header){
  border-bottom: 1px solid rgba(148,163,184,.38) !important;
}
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header):nth-child(even){ background: rgba(148,163,184,.08) !important; }
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header):hover{ background: rgba(56,189,248,.12) !important; }
/* ФИО, номер, дата рождения */
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-fio,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-fio__text{
  font-size: 15px !important; font-weight: 600 !important; color: #f8fafc !important;
}
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-num,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-dob,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-doc-attribute{
  font-size: 13px !important; color: #e2e8f0 !important;
}
/* Шапка */
#docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header.registry-enriched .sp-hdr-label,
#docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header.registry-enriched .sp-head-control{
  font-size: 13px !important; font-weight: 700 !important; color: #f8fafc !important;
}
/* «Есть» — документ загружен */
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-pill{
  background: #1d4ed8 !important; color: #ffffff !important; border: 1px solid #60a5fa !important;
  font-size: 12px !important; font-weight: 700 !important; width: auto !important; min-width: 30px !important; padding: 3px 3px !important; overflow: visible !important;
}
/* «+» — документа нет */
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-cell--empty{
  background: transparent !important; color: #e2e8f0 !important;
  border: 1.5px solid #94a3b8 !important; font-size: 18px !important;
}
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-cell--empty:hover{ border-color: #e2e8f0 !important; background: rgba(226,232,240,.12) !important; }
/* МК, статус призыва, статус подготовки — крупнее, обычной толщины */
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .registry-mk,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .registry-ext,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .registry-ext b,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .status-pill{
  font-size: 13px !important; font-weight: 500 !important;
}
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .registry-ext small{ font-size: 12px !important; color: #e2e8f0 !important; }
/* Ячейка «Экзамен»: заголовок-статус не жирный, плашки обычной толщины */
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam__status .registry-ex--stage b{ font-weight: 500 !important; }
#docsModalBackdrop .sp-exam-doc{ font-weight: 600 !important; }
#docsModalBackdrop .docs-viewer--students:not(.docs-viewer--markup-workspace):not(.docs-viewer--inline-upload) .sp-exam--combined{ overflow: visible !important; }

/* Светлая тема */
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-fio,
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-fio__text{ color: #0f172a !important; }
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-num,
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-dob,
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .sp-doc-attribute{ color: #1e293b !important; }
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header.registry-enriched .sp-hdr-label,
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.sp-header.registry-enriched .sp-head-control{ color: #0f172a !important; }
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-cell--empty{ color: #334155 !important; border-color: #64748b !important; }
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-pill{ border-color: #1e3a8a !important; }
html:not(.dark) #docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched:not(.sp-header) .registry-ext small{ color: #334155 !important; }

/* Сводка «Контроля групп»: процент от плана внутри счётчика — в скобках, мельче числа (23.10.2026) */
.stat-card-mini__pct { font-size: 58%; font-weight: 600; opacity: .85; white-space: nowrap; }
/* Подписи счётчиков переносим только целыми словами («Продолжают / подготовку»), без разрыва слова */
#groupsSummaryCards .stat-card-mini__label { word-break: normal !important; overflow-wrap: normal !important; hyphens: none !important; }

/* «Ручн.» в колонке «Отчисление ВК»: курсант отчислен вручную, приказа ВК нет (27.10.2026) */
#docsModalBackdrop .doc-cell.doc-cell--manual,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-cell--manual{
  background: #fde047 !important; color: #713f12 !important; border: 1px solid #ca8a04 !important;
  font-size: 10px !important; font-weight: 700 !important; letter-spacing: -.03em !important;
  width: auto !important; min-width: 30px !important; padding: 0 2px !important; cursor: pointer;
}
#docsModalBackdrop .doc-cell.doc-cell--manual:hover,
#docsModalBackdrop .docs-viewer--students .student-person-btn.registry-enriched .doc-cell--manual:hover{ background: #facc15 !important; }
