/* Базовые цвета и шрифты */
:root {
  --ar-bg: #0d1116;
  --ar-card: rgba(18, 24, 32, 0.92);
  --ar-accent: #00f2ff;
  --ar-danger: #ff4d4d;
  --ar-text: #ffffff;
  --ar-muted: #cdd2dc;
}

body {
  background-color: var(--ar-bg);
  color: var(--ar-text);
  font-family: 'Segoe UI', Roboto, 'Montserrat', Arial, sans-serif;
  overflow-x: hidden;
}

/* Контейнер страницы */
.page-content, .main-content {
  max-width: 1280px;
  margin: 0 auto;
  padding: 20px;
}

/* Карточки разделов и тем — матовое стекло + рамка */
.section, .node-list, .thread-list, .message-block, .block {
  background: var(--ar-card);
  border: 1px solid rgba(40, 55, 75, 0.4);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(6px);
}

/* Заголовки */
h1, h2, h3, .p-title-value {
  color: var(--ar-text);
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Ссылки и кнопки */
a {
  color: var(--ar-accent);
  transition: color 0.2s ease;
}
a:hover {
  color: #fff;
  text-shadow: 0 0 8px var(--ar-accent);
}

.button, .xf-button {
  background: #1a2530;
  border: 1px solid rgba(0, 242, 255, 0.3);
  color: var(--ar-accent);
  border-radius: 4px;
}
.button:hover, .xf-button:hover {
  background: var(--ar-accent);
  color: #000;
  box-shadow: 0 0 12px rgba(0, 242, 255, 0.5);
}

/* Префиксы тем (как на Arizona RP форумах) */
.label, .node-title .label {
  background: rgba(0, 242, 255, 0.15);
  border: 1px solid var(--ar-accent);
  color: var(--ar-accent);
  font-weight: 700;
  text-transform: uppercase;
}

/* Статус онлайна (для профилей/списков) */
.OnlineStatus--online::after {
  background-color: #4dff4d !important;
  box-shadow: 0 0 6px #4dff4d !important;
}

/* Уведомления/ошибки (важные сообщения) */
.alert, .notice {
  border-left: 4px solid var(--ar-danger);
  background: rgba(255, 77, 77, 0.08);
  color: #ffcccc;
}

/* Полосы прогресса (если есть) — стиль HUD */
.progress-bar {
  background: #2a3645;
  border-radius: 4px;
}
.progress-fill {
  background: var(--ar-accent);
  box-shadow: 0 0 8px var(--ar-accent);
}

/* Таблицы (для журналов/реестров) */
table {
  border-collapse: collapse;
  width: 100%;
}
th, td {
  border: 1px solid rgba(60, 75, 95, 0.3);
  padding: 10px;
  text-align: left;
}
th {
  background: rgba(0, 242, 255, 0.05);
  color: var(--ar-accent);
}
tr:nth-child(even) {
  background: rgba(0, 0, 0, 0.03);
}

/* Футер */
.p-footer {
  background: #0a0e12;
  border-top: 1px solid rgba(40, 50, 65, 0.4);
}

/* Адаптив для мобильных */
@media (max-width: 768px) {
  .page-content, .main-content {
    padding: 10px;
  }
  h1, h2 {
    font-size: 1.2rem;
  }
}