/* General Reset */
*:where(
    :not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)
  ) {
  all: unset;
  display: revert;
}

/* Box-Sizing */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* HTML Adjustments for Mobile Safari */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Cursor for Interactive Elements */
a,
button {
  cursor: revert;
}

/* Remove List Styles */
ol,
ul,
menu,
summary {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Image Scaling */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
  display: block; /* Ensure images are block-level for consistent spacing */
}

/* Table Styling */
table {
  border-collapse: collapse;
  border-spacing: 0; /* Remove space between cells */
}

/* Textarea White-Space Fix for Safari */
textarea {
  white-space: revert;
}

/* Meter Element Styling */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* Preformatted Text */
pre {
  all: revert;
  box-sizing: border-box;
  overflow: auto; /* Ensure scroll for overflowed content */
}

/* Placeholder Text */
::placeholder {
  color: unset;
  opacity: 1; /* Ensures placeholder text is visible */
}

/* Hidden Attribute Fix */
:where([hidden]) {
  display: none;
}

/* Content Editable Attributes */
:where([contenteditable]:not([contenteditable="false"])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
}

/* Draggable Elements */
:where([draggable="true"]) {
  -webkit-user-drag: element;
}

/* Modal Dialogs */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Details Summary Marker Removal */
::-webkit-details-marker {
  display: none;
}

/* Additional Modern Resets */
html,
body {
  margin: 0;
  padding: 0;
}

body {
  line-height: 1.5; /* Improve readability */
}

/* Avoid text selection issues */
::selection {
  background: rgba(0, 0, 0, 0.1);
  color: inherit;
}
