/* === Страница «Обязанности» === */
.obyaz-page {
  display: flex;
  flex-direction: column;
}
.obyaz-page__toolbar {
  height: 48px;
  position: sticky;
  top: 0;
  background: var(--color-bg);
  border-bottom: 1px solid var(--color-border);
  display: flex;
  align-items: center;
  padding: 0 16px;
  font-size: 18px;
  font-weight: 600;
  color: var(--color-on-surface);
  z-index: 5;
  margin: 0 -16px;
}
.obyaz-list {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 16px auto 32px;
  width: 100%;
  container-type: inline-size;
  container-name: obyaz;
}
.obyaz-list__intro {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
}
.obyaz-list__columns {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
}
.obyaz-list__column {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.obyaz-list > .obyaz-ad-slot--top {
  display: none;
}
@container obyaz (min-width: 1200px) {
  .obyaz-list__intro,
  .obyaz-list__columns {
    max-width: none;
  }
  .obyaz-list__columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    align-items: start;
  }
  .obyaz-list > .obyaz-ad-slot--top {
    display: block;
    margin-bottom: 16px;
  }
  .obyaz-list__column .obyaz-ad-slot--intro {
    display: none;
  }
}
.obyaz-list .upr-item {
  border-bottom: none;
}
.obyaz-list .upr-item > .tool-accordion__header {
  padding: 14px 16px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  transition: background 0.15s, border-color 0.15s;
}
.obyaz-list .upr-item > .tool-accordion__header:hover {
  background: var(--color-hover);
  transform: none;
}
.obyaz-list .upr-item > .tool-accordion__header .tool-accordion__title {
  flex: 1;
  min-width: 0;
  flex-shrink: 1;
  font-size: 15px;
  font-weight: 600;
  white-space: normal;
  text-align: left;
}
.obyaz-list .upr-item > .tool-accordion__body {
  margin: 4px 0 0;
  padding: 0 16px;
  background: transparent;
}
.obyaz-list .upr-item.tool-accordion--open > .tool-accordion__header {
  background: color-mix(in srgb, var(--color-primary) 8%, transparent);
  border-color: var(--color-primary);
}
.obyaz-list .upr-item.tool-accordion--open > .tool-accordion__body {
  padding: 14px 18px 18px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  margin-top: 4px;
}
.obyaz-list .upr-item--wide > .tool-accordion__body {
  padding: 0;
  margin: 0;
}
.obyaz-list .upr-item--wide.tool-accordion--open > .tool-accordion__body {
  padding: 0;
  margin-top: 4px;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.upr-item--wide .tool-accordion__body-inner {
  padding: 0;
}
.upr-item--wide .obyaz-table-wrap {
  border-radius: 0;
  overflow-x: visible;
}
.upr-item--wide .obyaz-table {
  min-width: 0;
}
.upr-item--wide .obyaz-table__note,
.upr-item--wide .obyaz-ad-slot--inside {
  display: none;
}
.obyaz-intro {
  margin: 12px 0 4px;
  padding: 14px 18px;
  background: var(--color-surface);
  border-left: 3px solid var(--color-primary);
  border-radius: 0 10px 10px 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--color-on-surface-secondary);
  white-space: pre-wrap;
}
.obyaz-text {
  white-space: pre-wrap;
  font: inherit;
  font-family: var(--font-family);
  color: var(--color-on-surface);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
}

/* Табель боевого расчёта — настоящая таблица */
.obyaz-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--color-border);
  border-radius: 8px;
  background: var(--color-surface);
}
.obyaz-table {
  width: 100%;
  min-width: 860px;
  border-collapse: collapse;
  font-size: 13px;
  line-height: 1.5;
  color: var(--color-on-surface);
}
.obyaz-table th,
.obyaz-table td {
  padding: 10px 12px;
  border: 1px solid var(--color-border);
  vertical-align: top;
  text-align: left;
}
.obyaz-table thead th {
  background: color-mix(in srgb, var(--color-primary) 8%, transparent);
  font-weight: 600;
  text-align: center;
  white-space: pre-line;
}
.obyaz-table tbody th {
  width: 140px;
  background: color-mix(in srgb, var(--color-on-surface) 4%, transparent);
  font-weight: 600;
  text-align: center;
}
.obyaz-table__corner {
  width: 140px;
}
.obyaz-table__note {
  margin-top: 6px;
  font-size: 12px;
  color: var(--color-on-surface-secondary);
  font-style: italic;
}
.main-content:has(.obyaz-page) { padding-top: 0; }

