/* Preserve the existing desktop max-width classes and AI reading columns. */
* { box-sizing: border-box; }
body { overflow-wrap: anywhere; }

button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #9565ed; outline-offset: 3px; }
button { touch-action: manipulation; }
main, .flex > *, .grid > *, #file-info { min-width: 0; }
#file-name { overflow-wrap: anywhere; }
table { overflow-wrap: normal; }
.table-scroll { overflow-x: auto; }
.table-scroll table { min-width: 34rem; }
.portfolio-links { margin: 1rem 0; line-height: 1.8; }
[data-cookie-settings] { cursor: pointer; color: inherit; text-decoration: underline; padding: .5rem; }
#cookie-banner a { color: #bac8ff !important; }
#status { overflow-wrap: anywhere; }
.dark .text-primary { color: #a8b8ff; }
.dark .hash-type.active { color: #fff; }
.dark a.text-primary, .dark button.text-primary { color: #b5c3ff; }
.dark .hash-type.active i { color: #fff !important; }
#results-list .flex { flex-wrap: wrap; gap: .5rem; }
.text-yellow-600 { color: #854d0e; }
.dark .text-yellow-600 { color: #fde047; }
@media (max-width: 480px) {
  body { padding-top: 4rem; }
  #drop-zone { padding: 1rem; }
  .overflow-x-auto { max-width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
