/* Light cyber-clinical prose styling for article/guide bodies */
.prose-cyber { color: #3d4d5a; font-size: 1rem; line-height: 1.75; }
.prose-cyber h2 { font-family: 'Manrope', sans-serif; color: #005f66;
  font-size: 1.4rem; font-weight: 700; margin: 1.75rem 0 .6rem;
  border-bottom: 1px solid rgba(0,168,188,.25); padding-bottom: .4rem; }
.prose-cyber h3 { font-family: 'Manrope', sans-serif; color: #17202b;
  font-size: 1.12rem; font-weight: 600; margin: 1.25rem 0 .4rem; }
.prose-cyber h4 { color: #17202b; font-weight: 600; margin: 1rem 0 .35rem; }
.prose-cyber p { margin: 0 0 1rem; }
.prose-cyber a { color: #007680; text-decoration: underline;
  text-decoration-color: rgba(0,168,188,.4); }
.prose-cyber a:hover { text-decoration-color: #00a8bc; }
.prose-cyber ul, .prose-cyber ol { margin: 0 0 1rem 1.25rem; }
.prose-cyber ul { list-style: disc; }
.prose-cyber ol { list-style: decimal; }
.prose-cyber li { margin-bottom: .35rem; }
.prose-cyber strong { color: #17202b; }
.prose-cyber blockquote { border-left: 3px solid #00a8bc; padding: .5rem 1rem;
  background: rgba(0,168,188,.07); margin: 1rem 0; border-radius: 0 .25rem .25rem 0; }
.prose-cyber table { display: block; width: 100%; overflow-x: auto;
  border-collapse: collapse; margin: 1rem 0; font-size: .875rem; }
.prose-cyber thead, .prose-cyber tbody { display: table; width: 100%; min-width: 480px; }
.prose-cyber th { font-family: 'Manrope', sans-serif; text-transform: uppercase;
  font-size: .68rem; letter-spacing: .05em; color: #005f66; background: #e9eef4;
  text-align: left; padding: .5rem .75rem; border: 1px solid #cdd8e3; }
.prose-cyber td { padding: .5rem .75rem; border: 1px solid #cdd8e3; color: #3d4d5a; }
.prose-cyber tr:nth-child(even) td { background: #f0f4f8; }
.prose-cyber code { font-family: ui-monospace, 'SF Mono', Menlo, monospace; font-size: .85em;
  background: #e9eef4; padding: .1rem .35rem; border-radius: .25rem; color: #005f66; }
.prose-cyber img { max-width: 100%; height: auto; border-radius: .5rem; }
/* telemetry pulse dot */
@keyframes pulse-dot { 0%,100% { opacity: 1; } 50% { opacity: .35; } }
.pulse-dot { animation: pulse-dot 2s ease-in-out infinite; }
/* alpine / htmx helpers */
[x-cloak] { display: none !important; }
.htmx-indicator { display: none; }
.htmx-request .htmx-indicator { display: inline-block; }
.htmx-request.htmx-indicator { display: inline-block; }
/* thin scrollbar */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #eef2f6; }
::-webkit-scrollbar-thumb { background: #cdd8e3; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #00a8bc; }
/* prevent horizontal overflow on mobile */
html, body { overflow-x: hidden; }
img, video { max-width: 100%; height: auto; }
