/* artelteh — часть legacy-overrides.css. Загружается под body.newui.
 * Не редактировать вручную в продакшене без согласования.
 */
/* ══════════════════════════════════════════
   SINGLE PROJECT — single-projects.php
   Data-Dense Dashboard стиль: status-цвета, timeline, две колонки
   ══════════════════════════════════════════ */

body.newui section.single,
body.newui .single { padding: 0 !important; background: transparent; }

body.newui section.single > .wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  align-items: start;
  padding-top: 1rem !important;
}
@media (min-width: 1024px) {
  body.newui section.single > .wrap {
    grid-template-columns: 70fr 30fr;
  }
}

/* Заголовок проекта — span обе колонки */
body.newui .single .post_class h1,
body.newui section.single h1 {
  font-size: clamp(20px, 2.2vw, 26px) !important;
  font-weight: 700 !important; letter-spacing: -0.5px !important;
  line-height: 1.2 !important; color: var(--text) !important;
  margin: 0 !important;
  grid-column: 1 / -1;
}

/* statuses → column 2 (правая узкая, 30%); остальной контент → full width */
body.newui .single .post_class > .statuses,
body.newui .single > .wrap > .statuses {
  grid-column: 2;
  align-self: start;
}

body.newui .single > .wrap > .project_events,
body.newui .single > .wrap > .worker_actions,
body.newui .single > .wrap > .worker_stage_actions,
body.newui .single > .wrap > .admin_stage_request,
body.newui .single > .wrap > .single_map_nav_btn_wrapper,
body.newui .single > .wrap > .single_map_wrapper,
body.newui .single > .wrap > .comments-section,
body.newui .single > .wrap > .project-comments,
body.newui .single .post_class > .project_events,
body.newui .single .post_class > .worker_actions,
body.newui .single .post_class > .worker_stage_actions,
body.newui .single .post_class > .admin_stage_request,
body.newui .single .post_class > .single_map_nav_btn_wrapper,
body.newui .single .post_class > .single_map_wrapper,
body.newui .single .post_class > .comments-section,
body.newui .single .post_class > .project-comments,
body.newui .single .post_class > .project_comments,
body.newui .single > .wrap > .project_comments,
body.newui .single .post_class > .adm_front_noti,
body.newui .single .post_class > p {
  grid-column: 1 / -1;
}
/* Хлебные крошки сверху на всю ширину */
body.newui .single > .wrap > .bread,
body.newui .single > .wrap > .breadcrumbs {
  grid-column: 1 / -1;
}

/* Главные кнопки действий — sticky сверху */
body.newui .adm_btns {
  display: flex; flex-wrap: wrap; gap: 8px;
  padding: 12px 14px !important;
  margin: 0 0 1rem !important;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  grid-column: 1 / -1;
}
body.newui .adm_btns input[type="submit"],
body.newui .adm_btns .adm_btn {
  min-height: 38px !important;
  font-size: 12px !important;
  padding: 8px 14px !important;
  font-weight: 600;
}
/* Удаление — справа, отделено */
body.newui .adm_btn_delete,
body.newui .adm_btn[style*="#dc3545"] {
  background: transparent !important;
  color: var(--danger) !important;
  border: 1px solid rgba(248,81,73,0.35) !important;
  margin-left: auto;
}
body.newui .adm_btn_delete:hover,
body.newui .adm_btn[style*="#dc3545"]:hover {
  background: rgba(248,81,73,0.1) !important;
}
/* Зелёные / accept */
body.newui .adm_btn[style*="#28a745"],
body.newui .adm_btn[style*="#4caf50"] {
  background: var(--success) !important;
  color: #000 !important;
  border: 0 !important;
  font-weight: 600 !important;
}
/* Жёлтые / accent */
body.newui .adm_btn[style*="#bf9523"],
body.newui .adm_btn[style*="#ffc527"],
body.newui .adm_btn[style*="#ffc107"] {
  background: var(--accent-surface) !important;
  color: #000 !important;
  border: 0 !important;
  font-weight: 600 !important;
}

/* post_class — растворяем через display:contents (его дети стали прямыми элементами grid в .wrap) */
body.newui .single .post_class,
body.newui .single .type-projects,
body.newui .single article.post {
  display: contents;
}
body.newui .single .post_class > p,
body.newui .single .type-projects > p {
  grid-column: 1 / 2;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1rem 1.25rem;
  font-size: 14px; line-height: 1.65;
  color: var(--text); margin: 0;
}

/* Боковая колонка контейнер */
body.newui .adm_meta {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 1rem 1.25rem !important;
  margin: 0 !important;
  align-self: start;
}
@media (min-width: 1024px) {
  body.newui .adm_meta {
    grid-column: 1;
  }
}
body.newui .adm_meta::before {
  content: 'Информация о проекте';
  display: block;
  font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.6px;
  color: var(--text3);
  padding-bottom: 0.75rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid var(--border);
}
body.newui .adm_meta .row {
  display: grid; grid-template-columns: minmax(110px, 36%) 1fr;
  gap: 4px 10px;
  padding: 8px 0 !important;
  border-bottom: 1px solid var(--border);
  font-size: 13px; color: var(--text);
  align-items: baseline;
  line-height: 1.4;
  word-break: break-word;
}
body.newui .adm_meta .row:last-child { border-bottom: 0; }
body.newui .adm_meta .row b {
  font-weight: 600; color: var(--text3); font-size: 11px;
  text-transform: uppercase; letter-spacing: 0.4px;
}
body.newui .adm_meta .row .title b {
  font-size: 12px; color: var(--text);
}
/* Файлы заказчика — grid внутри строки */
body.newui .adm_meta .row .title + br + a,
body.newui .adm_meta .row a[href*="upload"],
body.newui .adm_meta .row a[href$=".pdf"],
body.newui .adm_meta .row a[href$=".jpg"],
body.newui .adm_meta .row a[href$=".png"],
body.newui .adm_meta .row a[href$=".doc"],
body.newui .adm_meta .row a[href$=".docx"],
body.newui .adm_meta .row a[href$=".zip"] {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 4px 10px; margin: 4px 4px 0 0;
  background: var(--bg3); border: 1px solid var(--border);
  border-radius: 100px; font-size: 12px;
  color: var(--accent); text-decoration: none;
}
body.newui .adm_meta .row .title + br + a:hover,
body.newui .adm_meta .row a[href*="upload"]:hover {
  background: var(--accent-dim); border-color: var(--accent-border);
}

/* Статусы / стадии / события — карточки */
body.newui .statuses,
body.newui .worker_actions,
body.newui .worker_stage_actions,
body.newui .admin_stage_request {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 1.25rem !important;
  margin: 1rem 0 0 !important;
  box-shadow: none !important;
  border-left: 0 !important;
}
/* Семантика по цвету inline-стиля */
body.newui .worker_stage_actions[style*="e8f5e9"] {
  border-left: 3px solid var(--success) !important;
  background: linear-gradient(90deg, rgba(86,211,100,0.06) 0%, var(--bg2) 30%) !important;
}
body.newui .worker_stage_actions[style*="fff3cd"],
body.newui .admin_stage_request {
  border-left: 3px solid var(--accent) !important;
  background: linear-gradient(90deg, var(--accent-dim) 0%, var(--bg2) 30%) !important;
}
/* Inline h3 цвета — переопределяем */
body.newui .worker_stage_actions h3,
body.newui .admin_stage_request h3,
body.newui .project_events h3 {
  color: var(--text) !important;
  font-size: 14px !important; font-weight: 600 !important;
  margin: 0 0 0.75rem !important;
}
body.newui .worker_stage_actions h3[style*="2e7d32"] { color: var(--success) !important; }
body.newui .worker_stage_actions h3[style*="856404"],
body.newui .admin_stage_request h3[style*="856404"] { color: var(--accent) !important; }

/* Statuses wrapper (правая колонка) */
body.newui .statuses {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* События проекта — timeline */
body.newui .project_events,
body.newui .project_events[style] {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 1.25rem !important;
  margin: 0 !important;
}
body.newui .project_events h3 {
  font-size: 12px !important; font-weight: 600 !important;
  text-transform: uppercase !important; letter-spacing: 0.5px !important;
  color: var(--text3) !important;
  margin: 0 0 1rem !important;
  border: 0 !important; padding: 0 !important;
}
body.newui .project_events ul {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-direction: column; gap: 8px;
  position: relative;
}

/* Items с inline color-styles — переопределяем по [style*=""] */
body.newui .project_events li[style] {
  position: relative;
  padding: 10px 12px 10px 14px !important;
  margin: 0 !important;
  background: var(--bg3) !important;
  border-left: 3px solid var(--text3) !important;
  border-radius: var(--radius-sm) !important;
  font-size: 13px;
  color: var(--text);
}
/* Зелёные (accepted / stage_approved) */
body.newui .project_events li[style*="d4edda"] {
  background: rgba(86,211,100,0.10) !important;
  border-left-color: var(--success) !important;
}
[data-theme="dark"] body.newui .project_events li[style*="d4edda"] {
  background: rgba(86,211,100,0.08) !important;
}
/* Красные (rejected / stage_rejected) */
body.newui .project_events li[style*="f8d7da"] {
  background: rgba(255,107,99,0.10) !important;
  border-left-color: var(--danger) !important;
}
[data-theme="dark"] body.newui .project_events li[style*="f8d7da"] {
  background: rgba(255,107,99,0.08) !important;
}
/* Жёлтые (pending stage_request) */
body.newui .project_events li[style*="fff3cd"] {
  background: var(--accent-dim) !important;
  border-left-color: var(--accent) !important;
}

/* Заголовок строки события (strong с inline color) */
body.newui .project_events li strong[style] {
  color: inherit !important;
  font-size: 13px !important; font-weight: 600 !important;
  display: block; margin-bottom: 4px;
}
body.newui .project_events li[style*="d4edda"] strong { color: var(--success) !important; }
body.newui .project_events li[style*="f8d7da"] strong { color: var(--danger) !important; }
body.newui .project_events li[style*="fff3cd"] strong { color: var(--accent) !important; }

/* Подробности события (.div style="color:#666") */
body.newui .project_events li > div[style*="#666"],
body.newui .project_events li > div {
  color: var(--text2) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  margin-top: 4px !important;
}
body.newui .project_events li a {
  color: var(--accent) !important;
  text-decoration: underline; text-underline-offset: 2px;
}
body.newui .project_events li a:hover { color: var(--accent-hover) !important; }

/* Карта */
body.newui .single_map_nav_btn_wrapper {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin: 0 0 0.75rem;
}
body.newui .single_map_nav_btn {
  background: var(--bg3) !important;
  color: var(--text) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-sm) !important;
  padding: 8px 12px !important;
  font-size: 12px !important; font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex; align-items: center; gap: 4px;
  min-height: 36px;
}
body.newui .single_map_nav_btn:hover {
  background: var(--bg4) !important;
  color: var(--text) !important;
  border-color: var(--accent) !important;
}
body.newui .single_map_wrapper {
  border-radius: var(--radius) !important;
  overflow: hidden;
  border: 1px solid var(--border);
  margin-top: 1rem;
  height: 360px;
}

/* ══════════════════════════════════════════
   PROJECT COMMENTS — project-comments.php (Telegram-style)
   ══════════════════════════════════════════ */
body.newui .project_comments {
  margin: 1rem 0 0 !important;
  background: var(--bg2);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 1.25rem 1.5rem;
}
body.newui .project_comments h3 {
  font-size: 14px !important; font-weight: 600 !important;
  color: var(--text) !important;
  margin: 0 0 1rem !important;
  padding: 0 0 0.75rem !important;
  border-bottom: 1px solid var(--border) !important;
  display: flex; align-items: center; gap: 8px;
}
body.newui .project_comments_list {
  list-style: none; padding: 0; margin: 0 0 1rem;
  display: flex; flex-direction: column; gap: 12px;
}

/* Каждый комментарий — карточка */
body.newui .comment_item {
  background: var(--bg) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  transition: border-color var(--transition);
}
body.newui .comment_item:hover {
  border-color: var(--border2) !important;
}

/* Шапка комментария */
body.newui .comment_header {
  display: flex !important; align-items: flex-start; gap: 10px;
  margin-bottom: 8px !important;
}
body.newui .comment_avatar {
  width: 32px; height: 32px;
  border-radius: 50% !important;
  background: var(--accent-surface) !important;
  color: #000 !important;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 700;
  flex-shrink: 0;
}
body.newui .comment_author_info {
  flex: 1; min-width: 0;
  display: flex; flex-direction: column; gap: 2px;
}
body.newui .comment_author_name {
  color: var(--text) !important;
  font-size: 13px !important; font-weight: 600 !important;
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
}
body.newui .comment_author_type {
  display: inline-block;
  padding: 1px 8px !important;
  border-radius: 100px !important;
  font-size: 10px !important; font-weight: 600 !important;
  text-transform: uppercase; letter-spacing: 0.4px;
  background: var(--bg3) !important;
  color: var(--text3) !important;
}
body.newui .comment_author_type.type-admin {
  background: rgba(121,184,255,0.15) !important;
  color: var(--info) !important;
}
body.newui .comment_author_type.type-worker {
  background: rgba(86,211,100,0.15) !important;
  color: var(--success) !important;
}
body.newui .comment_date {
  color: var(--text3) !important;
  font-size: 11px !important;
  font-variant-numeric: tabular-nums;
}

/* Действия (delete) */
body.newui .comment_actions {
  display: flex; align-items: center; gap: 4px;
  margin-left: auto;
}
body.newui .comment_delete_btn {
  background: transparent !important;
  border: 0 !important;
  color: var(--text3) !important;
  font-size: 14px !important;
  padding: 4px 8px !important;
  border-radius: var(--radius-xs) !important;
  cursor: pointer;
  transition: all var(--transition);
  opacity: 0;
}
body.newui .comment_item:hover .comment_delete_btn { opacity: 1; }
body.newui .comment_delete_btn:hover {
  background: rgba(255,107,99,0.12) !important;
  color: var(--danger) !important;
}

/* Тело */
body.newui .comment_content {
  color: var(--text) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  margin: 0 !important;
  white-space: pre-wrap;
  word-wrap: break-word; overflow-wrap: anywhere;
}

/* Файлы вложений */
body.newui .comment_files {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid var(--border) !important;
}
body.newui .comment_files_title {
  font-size: 11px !important;
  text-transform: uppercase; letter-spacing: 0.4px;
  color: var(--text3) !important;
  font-weight: 600 !important;
  margin: 0 0 6px !important;
}
body.newui .comment_file_item {
  display: inline-flex !important; align-items: center; gap: 6px;
  padding: 5px 10px !important;
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: 100px !important;
  margin: 0 4px 4px 0 !important;
  text-decoration: none !important;
  color: var(--accent) !important;
  font-size: 12px !important;
  transition: background var(--transition);
}
body.newui .comment_file_item:hover {
  background: var(--bg3) !important;
  color: var(--accent-hover) !important;
  border-color: var(--accent-border) !important;
}

/* Пустое состояние */
body.newui .comments_empty {
  padding: 2rem 1rem !important;
  text-align: center;
  color: var(--text3) !important;
  background: transparent !important;
  border: 1px dashed var(--border2) !important;
  border-radius: var(--radius) !important;
  font-size: 13px;
  font-style: normal !important;
}

/* Форма добавления комментария */
body.newui .add_comment_form {
  margin-top: 1rem !important;
  padding: 1rem 1.25rem !important;
  background: var(--bg) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
}
body.newui .add_comment_form h4 {
  font-size: 12px !important; font-weight: 600 !important;
  text-transform: uppercase; letter-spacing: 0.5px;
  color: var(--text3) !important;
  margin: 0 0 0.75rem !important;
}
body.newui .add_comment_form textarea {
  width: 100% !important;
  min-height: 80px !important;
  background: var(--bg2) !important;
  border: 1px solid var(--border2) !important;
  border-radius: var(--radius-sm) !important;
  padding: 10px 12px !important;
  font-size: 14px !important; font-family: inherit;
  color: var(--text) !important;
  resize: vertical;
}
body.newui .add_comment_form textarea:focus {
  border-color: var(--accent) !important;
  box-shadow: 0 0 0 3px var(--accent-dim) !important;
  outline: none;
}
body.newui .add_comment_form button[type="submit"],
body.newui .add_comment_form input[type="submit"] {
  background: var(--accent-surface) !important;
  color: #000 !important;
  border: 0 !important;
  padding: 10px 18px !important;
  border-radius: var(--radius-sm) !important;
  font-weight: 600 !important; font-size: 13px !important;
  cursor: pointer;
  margin-top: 0.5rem;
}
body.newui .add_comment_form button[type="submit"]:hover {
  background: var(--accent-surface-hover) !important;
}

