.module-tabs {
  display: flex;
  gap: 8px;
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
  overflow-x: auto;
}
.module-tabs button {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-radius: 8px;
  color: #7b896e;
  font-size: 11px;
  white-space: nowrap;
}
.module-tabs button.selected { background: #e5edd9; color: #3e5d2d; font-weight: 650; }
.module-tabs .icon { width: 16px; height: 16px; }
.module-tabs button > span { border-radius: 4px; background: #fff; padding: 2px 5px; font-size: 9px; }
.domain-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 15px; margin-bottom: 25px; }
.domain-kpis .panel { padding: 20px; }
.domain-kpis span { display: block; font-size: 10px; color: #8c9b7c; margin-bottom: 13px; }
.domain-kpis strong { font-size: 28px; font-weight: 500; }
.domain-kpis small { font-size: 10px; color: #98a58b; font-weight: 400; margin-left: 9px; }
.domain-register { padding: 23px; }
.domain-filter { display: flex; gap: 12px; margin: 23px 0; }
.domain-filter .input-search { flex: 1; max-width: none; }
.domain-filter select { width: 220px; font-size: 11px; }
.domain-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 20px; border-top: 1px solid var(--line); margin-top: 10px; }
.domain-pagination > span { font-size: 10px; color: #8e9b80; }
.domain-pagination > div { display: flex; gap: 8px; }
.domain-pagination .button { min-height: 34px; padding: 8px 12px; font-size: 10px; }
.module-assumptions { margin-top: 22px; background: #f9fbf5; }
.module-assumptions summary, .history-entry summary { cursor: pointer; font-size: 11px; color: #6b8255; line-height: 1.7; }
.module-assumptions p { font-size: 11px; color: #8b9b79; margin: 14px 0 0; }
.domain-model-panel { margin-top: 24px; }
.workflow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; margin-top: 24px; }
.workflow-step { padding: 17px; border: 1px solid var(--line); border-radius: 10px; background: #fafcf7; }
.workflow-step > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.workflow-step strong { font-size: 22px; font-weight: 500; }
.workflow-step p { font-size: 10px; line-height: 1.7; color: #8f9d81; margin: 14px 0 0; }
.workflow-step.terminal { background: #f5f7f2; border-style: dashed; }
.span-two { grid-column: 1 / -1; }
.object-top { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.computed-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin: 24px 0; }
.computed-grid > div { background: #edf3e5; border-radius: 10px; padding: 19px; }
.computed-grid span { display: block; font-size: 10px; color: #809567; line-height: 1.6; margin-bottom: 8px; }
.computed-grid strong { font-size: 25px; font-weight: 550; color: #52733c; word-break: break-word; }
.object-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; padding: 21px 0; margin: 0; }
.object-fields > div { min-width: 0; }
.object-fields dt { font-size: 10px; color: #8c9c7b; margin-bottom: 7px; }
.object-fields dd { font-size: 13px; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.8; }
.object-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 19px 0; border-top: 1px solid var(--line); }
#domain-transition-form { margin: 15px 0 25px; padding: 21px; background: #f6f9f0; border: 1px solid #e4eadb; border-radius: 11px; }
#domain-transition-form .modal-actions { margin-top: 18px; }
#domain-transition-form .button.primary { background: #526e3c; }
.object-history { border-top: 1px solid var(--line); padding-top: 25px; }
.object-history > h3 { font-size: 18px; }
#domain-note-form { padding-bottom: 25px; }
.history-entry { border-left: 2px solid #d8e2ca; padding: 0 0 25px 18px; margin-left: 4px; }
.history-entry > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.history-entry strong { font-size: 12px; }
.history-entry time { font-size: 10px; color: #9aa78b; }
.history-entry > span { font-size: 10px; display: block; margin-top: 7px; }
.history-entry > p { font-size: 12px; white-space: pre-wrap; overflow-wrap: anywhere; margin: 12px 0; }
.history-entry details { border: 1px solid var(--line); border-radius: 8px; padding: 10px 12px; }
.history-entry details dl { display: grid; grid-template-columns: 1fr 2fr; gap: 8px 14px; font-size: 10px; }
.history-entry details dt { color: #8b9b79; }
.history-entry details dd { margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.notice > .button { margin-left: auto; align-self: center; }
.table-title strong, .history-entry p { overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  .workflow-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .domain-kpis { gap: 10px; }
  .domain-kpis .panel { padding: 16px; }
  .domain-kpis small { display: block; margin: 5px 0 0; font-size: 9px; }
}
@media (max-width: 760px) {
  .domain-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .domain-filter { flex-wrap: wrap; }
  .domain-filter .input-search { flex-basis: 100%; }
  .domain-filter select { flex: 1; min-width: 0; }
  .domain-register { padding: 17px; min-width: 0; }
  .domain-kpis strong { font-size: 25px; }
  .domain-kpis small { display: inline; margin-left: 8px; }
  .notice:has(> .button) { flex-wrap: wrap; }
  .notice > .button { margin: 5px 0 0; }
  .module-tabs button { font-size: 10px; padding: 10px 12px; }
  .object-fields { gap: 15px; }
  .history-entry time { font-size: 8px; }
}
@media (max-width: 440px) {
  .workflow-grid { grid-template-columns: 1fr; }
  .object-fields { grid-template-columns: 1fr; }
  .history-entry > div { align-items: flex-start; flex-direction: column; gap: 6px; }
  .history-entry time { font-size: 10px; }
  .domain-pagination { flex-wrap: wrap; }
  .domain-pagination > div { margin-left: auto; }
  .domain-kpis small { display: block; margin-left: 0; }
  .object-actions { align-items: flex-start; flex-direction: column; }
  #domain-transition-form { padding: 15px; }
}
