/* Rips · cursor da identidade 2 (par do rips-cursor.js) */
html.rc-ligado, html.rc-ligado * { cursor: none !important; }
#rips-cursor { position: fixed; left: 0; top: 0; z-index: 2147483647; pointer-events: none; display: none; will-change: transform; }
#rips-cursor.rc-visivel { display: block; }
#rips-cursor svg { display: block; overflow: visible; }
.rc-inclina { width: 0; height: 0; transform-origin: 0 0; transition: transform .12s linear; }
.rc-glifo { transition: transform .26s cubic-bezier(.34, 1.8, .64, 1); }
.rc-apertado .rc-glifo { transform: scale(.93); transition-duration: .07s; }
.rc-pop { animation: rc-pop .34s cubic-bezier(.34, 1.8, .64, 1); }
@keyframes rc-pop { from { transform: scale(.55) rotate(-10deg); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .rc-pop { animation: none; }
}

/* Sem JS (ou antes dele carregar): os mesmos desenhos como cursor nativo, parados. */
@media (pointer: fine) {
  html:not(.rc-ligado) { cursor: url(cursor/seta.png) 4 3, auto; cursor: -webkit-image-set(url(cursor/seta.png) 1x, url(cursor/seta@2x.png) 2x) 4 3, auto; }
  html:not(.rc-ligado):active { cursor: url(cursor/seta-apertada.png) 4 3, auto; cursor: -webkit-image-set(url(cursor/seta-apertada.png) 1x, url(cursor/seta-apertada@2x.png) 2x) 4 3, auto; }
  html:not(.rc-ligado) :is(p, h1, h2, h3, h4, h5, h6, li, blockquote, td, th, figcaption, input:not([type]), input[type="text"], input[type="search"], input[type="email"], input[type="password"], input[type="number"], input[type="url"], input[type="tel"], textarea, [data-cursor="texto"]) { cursor: url(cursor/texto.png) 19 19, text; cursor: -webkit-image-set(url(cursor/texto.png) 1x, url(cursor/texto@2x.png) 2x) 19 19, text; }
  html:not(.rc-ligado) :is(p, h1, h2, h3, h4, h5, h6, li, blockquote, td, th, figcaption, input:not([type]), input[type="text"], input[type="search"], input[type="email"], input[type="password"], input[type="number"], input[type="url"], input[type="tel"], textarea, [data-cursor="texto"]):active { cursor: url(cursor/texto-apertado.png) 19 19, text; cursor: -webkit-image-set(url(cursor/texto-apertado.png) 1x, url(cursor/texto-apertado@2x.png) 2x) 19 19, text; }
  html:not(.rc-ligado) :is(a[href], button, [role="button"], [role="tab"], label[for], summary, select, input[type="checkbox"], input[type="radio"], input[type="submit"], [data-cursor="mao"]) { cursor: url(cursor/mao.png) 5 6, pointer; cursor: -webkit-image-set(url(cursor/mao.png) 1x, url(cursor/mao@2x.png) 2x) 5 6, pointer; }
  html:not(.rc-ligado) :is(a[href], button, [role="button"], [role="tab"], label[for], summary, select, input[type="checkbox"], input[type="radio"], input[type="submit"], [data-cursor="mao"]):active { cursor: url(cursor/mao-apertada.png) 5 6, pointer; cursor: -webkit-image-set(url(cursor/mao-apertada.png) 1x, url(cursor/mao-apertada@2x.png) 2x) 5 6, pointer; }
  html:not(.rc-ligado) :is([draggable="true"], [data-cursor="pegar"]) { cursor: url(cursor/pegar.png) 19 19, grab; cursor: -webkit-image-set(url(cursor/pegar.png) 1x, url(cursor/pegar@2x.png) 2x) 19 19, grab; }
  html:not(.rc-ligado) :is([draggable="true"], [data-cursor="pegar"]):active { cursor: url(cursor/pegando.png) 19 19, grabbing; cursor: -webkit-image-set(url(cursor/pegando.png) 1x, url(cursor/pegando@2x.png) 2x) 19 19, grabbing; }
  html:not(.rc-ligado) [data-cursor="resize-ew"] { cursor: url(cursor/resize-ew.png) 19 19, ew-resize; cursor: -webkit-image-set(url(cursor/resize-ew.png) 1x, url(cursor/resize-ew@2x.png) 2x) 19 19, ew-resize; }
  html:not(.rc-ligado) [data-cursor="resize-ns"] { cursor: url(cursor/resize-ns.png) 19 19, ns-resize; cursor: -webkit-image-set(url(cursor/resize-ns.png) 1x, url(cursor/resize-ns@2x.png) 2x) 19 19, ns-resize; }
  html:not(.rc-ligado) [data-cursor="resize-nwse"] { cursor: url(cursor/resize-nwse.png) 19 19, nwse-resize; cursor: -webkit-image-set(url(cursor/resize-nwse.png) 1x, url(cursor/resize-nwse@2x.png) 2x) 19 19, nwse-resize; }
  html:not(.rc-ligado) [data-cursor="resize-nesw"] { cursor: url(cursor/resize-nesw.png) 19 19, nesw-resize; cursor: -webkit-image-set(url(cursor/resize-nesw.png) 1x, url(cursor/resize-nesw@2x.png) 2x) 19 19, nesw-resize; }
  html:not(.rc-ligado) [aria-busy="true"], html:not(.rc-ligado) [aria-busy="true"] * { cursor: url(cursor/carregando.png) 19 19, progress; cursor: -webkit-image-set(url(cursor/carregando.png) 1x, url(cursor/carregando@2x.png) 2x) 19 19, progress; }
  html:not(.rc-ligado) :is(:disabled, [aria-disabled="true"]) { cursor: url(cursor/bloqueado.png) 19 19, not-allowed; cursor: -webkit-image-set(url(cursor/bloqueado.png) 1x, url(cursor/bloqueado@2x.png) 2x) 19 19, not-allowed; }
}
