/* Native is always visible even if image loading or JS fails. */
:root {
  --ba-circle-cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='16' r='14' fill='none' stroke='%230a0f09' stroke-width='3'/%3E%3Ccircle cx='16' cy='16' r='14' fill='none' stroke='%23d4f53c' stroke-width='1.5'/%3E%3Ccircle cx='16' cy='16' r='2.2' fill='%23d4f53c' stroke='%230a0f09' stroke-width='1'/%3E%3C/svg%3E");
}
html body { cursor:auto!important; }
html body * { cursor:inherit!important; }
html body :is(a[href],button,summary,label[for],select,[role="button"],[role="link"],[onclick],.nav-avatar-wrap,.conv-item,.anuncio) { cursor:pointer!important; }
html body :is(input,textarea,[contenteditable]:not([contenteditable="false"]),[role="textbox"]) { cursor:text!important; }
html body :is(input[type="button"],input[type="submit"],input[type="reset"],input[type="checkbox"],input[type="radio"],input[type="range"],input[type="color"],input[type="file"],input[type="image"]) { cursor:pointer!important; }
html body [draggable="true"] { cursor:grab!important; }
html body :is([disabled],[aria-disabled="true"],fieldset[disabled] input,fieldset[disabled] button,fieldset[disabled] select,fieldset[disabled] textarea) { cursor:not-allowed!important; }
html body [aria-busy="true"] { cursor:progress!important; }

/* The browser draws this circle: no DOM overlay, RAF or mode switching. */
@media (hover:hover) and (pointer:fine) and (min-width:901px) and (prefers-reduced-motion:no-preference) and (forced-colors:none) {
  html body { cursor:var(--ba-circle-cursor) 16 16,auto!important; }
  html body :is(a[href],button,summary,label[for],[role="button"],[role="link"],[onclick],.nav-avatar-wrap,.conv-item,.anuncio) { cursor:var(--ba-circle-cursor) 16 16,pointer!important; }
  html body [draggable="true"] { cursor:var(--ba-circle-cursor) 16 16,grab!important; }
  html body :is([disabled],[aria-disabled="true"],fieldset[disabled] button) { cursor:var(--ba-circle-cursor) 16 16,not-allowed!important; }
  html body [aria-busy="true"] { cursor:var(--ba-circle-cursor) 16 16,progress!important; }
  /* Native controls/OS popups and text selection retain their usual behavior. */
  html body :is(input,textarea,[contenteditable]:not([contenteditable="false"]),[role="textbox"]) { cursor:text!important; }
  html body :is(select,input[type="button"],input[type="submit"],input[type="reset"],input[type="checkbox"],input[type="radio"],input[type="range"],input[type="color"],input[type="file"],input[type="image"]) { cursor:pointer!important; }
  html body :is(input[disabled],textarea[disabled],select[disabled],fieldset[disabled] input,fieldset[disabled] textarea,fieldset[disabled] select) { cursor:not-allowed!important; }
}
