/* Контакты клиники (docs/design/admin/Adm_Clinic.dc.html): панели формы и справка «Где выводятся контакты». */
@layer pages {
  .admin-clinic { display: flex; flex-direction: column; gap: 20px; }
  .admin-clinic .admin-panel__body { display: flex; flex-direction: column; gap: 14px; }
  /* .cl-g: поле и узкое поле рядом (название и год, короткий адрес и метро) */
  .admin-clinic__pair { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, 220px); gap: 16px; }
  .admin-clinic__rows { gap: 8px; }
  .admin-clinic__rows .admin-add-row { align-self: flex-start; }
  .admin-clinic__map { --map-h: 220px; }

  /* .ph-row: ручка | номер | подпись | «В шапке» | удалить; у соцсети — ручка | название | ссылка | удалить */
  .admin-contact-row {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) minmax(0, 1fr) 130px 44px;
    gap: 10px;
    align-items: start;
    padding: 10px 0;
    border-top: 1px solid var(--line);
    background: var(--surface);
  }
  .admin-contact-row:first-child { border-top: 0; }
  .admin-contact-row--social { grid-template-columns: 24px 170px minmax(0, 1fr) 44px; }
  .admin-contact-row .admin-drag { min-height: 44px; }
  .admin-contact-row__check { display: flex; align-items: center; gap: 8px; min-height: 44px; font-size: 15px; color: var(--ink-2); cursor: pointer; }
  .admin-contact-row__check input { width: 20px; height: 20px; margin: 0; accent-color: var(--accent); }
  .admin-contact-row__error { grid-column: 2 / -1; }
  .admin-contact-row.is-sortable-dragging { opacity: 0.5; }

  /* «Так будет в шапке»: строка .site-topbar с сайта в рамке */
  .admin-clinic__header-preview { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
  .admin-clinic__topbar { display: block; border: 1px solid var(--line); border-radius: 12px; font-size: 14px; }
  .admin-clinic__topbar .site-topbar__inner { gap: 6px 18px; padding: 8px 14px; }

  /* .hours: день | с | — | до | «Выходной» */
  .admin-clinic__hours { gap: 6px; }
  .admin-hours-row { display: grid; grid-template-columns: 110px 130px 24px 130px minmax(0, 1fr); gap: 10px; align-items: center; padding: 6px 0; }
  .admin-hours-row__day { font-weight: 600; }
  .admin-hours-row__closed { align-items: center; font-size: 15px; }
  .admin-hours-row.is-closed .input { opacity: 0.4; }
  .admin-hours-row__error { grid-column: 2 / -1; }

  .admin-clinic__places { gap: 0; padding-top: 6px; padding-bottom: 6px; }
  .admin-place-link {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 20px;
    gap: 6px;
    align-items: center;
    min-height: 56px;
    padding: 4px;
    border-radius: 10px;
    color: var(--ink);
    font-size: 15px;
    line-height: 1.3;
    text-decoration: none;
  }
  .admin-place-link:hover { background: var(--soft-2); }
  .admin-place-link > span { display: flex; flex-direction: column; }
  .admin-place-link .icon { color: var(--ink-3); }

  @media (max-width: 820px) {
    .admin-clinic__pair { grid-template-columns: minmax(0, 1fr); }
    .admin-contact-row { grid-template-columns: 20px minmax(0, 1fr) 44px; }
    .admin-contact-row > :nth-child(3), .admin-contact-row__check { grid-column: 2; }
    .admin-contact-row .admin-icon-button { grid-row: 1; grid-column: 3; }
    .admin-contact-row__check { min-height: 32px; }
    .admin-hours-row { grid-template-columns: 44px minmax(0, 1fr) 12px minmax(0, 1fr); row-gap: 4px; }
    .admin-hours-row__closed, .admin-hours-row__error { grid-column: 2 / -1; }
  }
}
