/* Action Text / Trix styling aligned with the Material-inspired HRMS shell. */
.policy-rich-text { min-width: 0; }
.policy-rich-text > small { color: var(--color-text-secondary); font-size: 12px; }

trix-toolbar { position: relative; z-index: 2; }
trix-toolbar .trix-button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 9px;
  border: 1px solid var(--color-border);
  border-bottom: 0;
  border-radius: 10px 10px 0 0;
  background: var(--color-surface-variant);
}
trix-toolbar .trix-button-group {
  display: flex;
  margin: 0;
  overflow: hidden;
  border: 1px solid #cbd2dc;
  border-radius: 7px;
  background: white;
}
trix-toolbar .trix-button {
  min-width: 34px;
  min-height: 34px;
  border: 0;
  border-left: 1px solid var(--color-border);
  background-color: white;
  color: var(--color-text-primary);
}
trix-toolbar .trix-button:first-child { border-left: 0; }
trix-toolbar .trix-button:hover,
trix-toolbar .trix-button.trix-active {
  background-color: var(--color-primary-light);
  color: var(--color-primary-dark);
}
trix-toolbar .policy-rich-text-clear {
  width: auto;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 750;
  text-indent: 0;
}
trix-toolbar .trix-dialog {
  padding: 12px;
  border: 1px solid var(--color-border);
  border-radius: 9px;
  background: white;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .16);
}
trix-editor {
  min-height: 190px;
  overflow-y: auto;
  border: 1px solid #cbd2dc;
  border-radius: 0 0 10px 10px;
  background: white;
  padding: 16px;
  color: var(--color-text-primary);
  line-height: 1.65;
}
trix-editor:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 15%, transparent);
  outline: none;
}
.hr-section-editor trix-editor { min-height: 150px; }

.trix-content { color: #334155; line-height: 1.7; overflow-wrap: anywhere; }
.trix-content h1 { margin: 1.2em 0 .5em; font-size: 1.35em; font-weight: 800; }
.trix-content p { margin: .65em 0; }
.trix-content ul { margin: .75em 0; padding-left: 1.6em; list-style: disc; }
.trix-content ol { margin: .75em 0; padding-left: 1.6em; list-style: decimal; }
.trix-content blockquote {
  margin: 1em 0;
  border-left: 4px solid var(--color-primary);
  background: var(--color-primary-light);
  padding: .75em 1em;
}
.trix-content pre {
  overflow-x: auto;
  border-radius: 8px;
  background: #111827;
  padding: 12px;
  color: #f8fafc;
}
.trix-content a { color: var(--color-primary); text-decoration: underline; }
.trix-content .attachment { margin: 1em 0; text-align: center; }
.trix-content .attachment img { max-width: 100%; height: auto; border-radius: 8px; }

@media (max-width: 639px) {
  trix-toolbar .trix-button-row { flex-wrap: nowrap; overflow-x: auto; }
  trix-toolbar .trix-button-group { flex: 0 0 auto; }
  trix-editor { min-height: 160px; padding: 12px; }
}
