.regulations-workspace { display: grid; gap: var(--space-4); min-width: 0; }
.regulations-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); }
.regulations-toolbar input { flex: 1 1 240px; min-width: 0; }
.regulations-toolbar .c-button { flex-shrink: 0; }
.regulations-table { padding: 0; overflow: hidden; }
.regulations-table__row { display: grid; grid-template-columns: 36px minmax(0, 1fr) auto; gap: var(--space-4); align-items: center; padding: var(--space-4); border-bottom: 1px solid var(--line); }
.regulations-table__row:last-child { border-bottom: 0; }
.regulations-table__head { color: var(--muted); background: var(--card-subtle); font-size: var(--type-caption); }
.regulations-number { color: var(--muted); font-variant-numeric: tabular-nums; }
.regulations-name { display: grid; gap: var(--space-2); min-width: 0; overflow-wrap: anywhere; line-height: 1.5; }
.regulations-name small, .regulations-hint { color: var(--muted); font-size: var(--type-caption); line-height: 1.5; }
.regulations-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: var(--space-2); max-width: 440px; }
.regulations-empty { padding: var(--space-8); text-align: center; color: var(--muted); }
.regulations-form { display: grid; gap: var(--space-4); min-width: 0; }
.regulations-form input[type="file"] { max-width: 100%; width: 100%; }
.regulations-hint, .regulations-error { margin: 0; overflow-wrap: anywhere; }
.regulations-error { color: var(--danger); }
.regulations-dialog .c-modal__title { overflow-wrap: anywhere; }
.regulations-dialog .c-modal__content { min-width: 0; }
.regulations-dialog { max-height: min(90dvh, 1000px); }
.regulations-viewer { width: min(1100px, calc(100vw - 32px)); }
.regulations-viewer .c-modal__body { background: var(--surface); }
.regulations-viewer canvas { display: block; max-width: 100%; height: auto; margin: auto; }
.regulations-viewer .c-modal__footer { display: flex; flex-wrap: wrap; min-width: 0; }
.regulations-pages { display: flex; align-items: center; justify-content: center; gap: var(--space-3); margin-right: auto; }
.regulations-pages[hidden] { display: none; }
.regulations-pages [data-page-count] { white-space: nowrap; font-variant-numeric: tabular-nums; }
.regulations-docx { background: var(--card-surface); color: var(--ink); padding: var(--space-6); line-height: 1.65; overflow-wrap: anywhere; }
.regulations-docx p { margin: 0 0 var(--space-3); white-space: pre-wrap; }
.regulations-docx table { width: 100%; min-width: 0; table-layout: fixed; border-collapse: collapse; margin-bottom: var(--space-4); }
.regulations-docx td { border: 1px solid var(--line-strong); padding: var(--space-2); vertical-align: top; }
.regulations-docx img { display: block; max-width: 100%; height: auto; margin: var(--space-3) auto; }
.regulations-docx__heading { font-size: var(--type-section); font-weight: var(--weight-heading); }
@media (max-width: 1000px) {
  .regulations-table__row { grid-template-columns: 28px minmax(0, 1fr); gap: var(--space-3); }
  .regulations-table__head { display: none; }
  .regulations-actions { grid-column: 2; justify-content: flex-start; max-width: none; }
}
@media (max-width: 700px) {
  .regulations-toolbar { gap: var(--space-2); }
  .regulations-toolbar input { flex-basis: calc(100% - 56px); }
  .regulations-toolbar .c-button { flex: 1 1 auto; }
  .regulations-table__row { padding: var(--space-3); }
  .regulations-dialog { width: calc(100vw - 24px); max-height: calc(100dvh - 24px); }
  .regulations-viewer .c-modal__footer { gap: var(--space-2); }
  .regulations-pages { width: 100%; justify-content: space-between; margin: 0; gap: var(--space-2); }
  .regulations-docx { padding: var(--space-3); }
}
