html { scroll-behavior: smooth; }

/* Skip anything the markup deliberately centres or right-aligns. */
p:not([class*="text-center"]):not([class*="text-right"]) {
    text-align: justify;
    text-justify: inter-word;
    -webkit-hyphens: auto;
    hyphens: auto;
}

/* Tailwind sets alignment on the container, which the rule above outranks. Inheriting picks up the
   nearest aligned ancestor rather than the outermost. Containers that flip back to left at a
   breakpoint are skipped so their prose stays justified. */
[class~="text-center"]:not([class*=":text-left"])
p:not([class*="text-left"]):not([class*="text-center"]):not([class*="text-right"]):not([class*="text-justify"]) {
    text-align: inherit;
    -webkit-hyphens: manual;
    hyphens: manual;
}

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: #EFEFEF; }
::-webkit-scrollbar-thumb { background: #90B9D5; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #548DB3; }
