.custom-scroll::-webkit-scrollbar { width: 5px; }
.custom-scroll::-webkit-scrollbar-track { background: #f8fafc; }
.custom-scroll::-webkit-scrollbar-thumb { background: #e2e8f0; border-radius: 10px; }
.custom-scroll::-webkit-scrollbar-thumb:hover { background: #cbd5e1; }

@keyframes spin-slow { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
.spin-slow { animation: spin-slow 2.5s linear infinite; }

/* ── Mammoth-rendered document styles (Screen 6 canvas) ── */
.doc-body table {
  border-collapse: collapse; width: 100%; margin: 1.25rem 0;
  font-size: 0.8125rem; line-height: 1.5;
}
.doc-body table th,
.doc-body table td {
  border: 1px solid #cbd5e1; padding: 0.4rem 0.65rem;
  text-align: left; vertical-align: top;
}
.doc-body table th { background: #f1f5f9; font-weight: 600; color: #1e293b; }
.doc-body table tr:nth-child(even) td { background: #f8fafc; }
.doc-body p  { margin-bottom: 0.65rem; line-height: 1.7; }
.doc-body h1 { font-size: 1.25rem;  font-weight: 700; margin: 1.25rem 0 0.6rem; color: #0f172a; }
.doc-body h2 { font-size: 1.05rem;  font-weight: 700; margin: 1rem 0 0.45rem;  color: #1e293b; }
.doc-body h3 { font-size: 0.95rem;  font-weight: 600; margin: 0.9rem 0 0.4rem; color: #334155; }
.doc-body ul, .doc-body ol { padding-left: 1.4rem; margin-bottom: 0.65rem; }
.doc-body li { margin-bottom: 0.2rem; }

/* ── Text selection highlight in document canvas ── */
::highlight(ai-selection) { background-color: #bfdbfe; color: #1e3a8a; }
.ai-highlight { background-color: #bfdbfe; color: #1e3a8a; border-radius: 2px; padding: 0 2px; }
