/* THE CURSOR: one rounded arrow for the whole Workspace, black on light backgrounds and white on dark ones.
   js/cursor.mjs looks at what is under the pointer and sets data-cur on <html> ("on-dark" = a white arrow).
   Every clickable thing uses var(--cur) too (not the browser's hand); text fields keep the text caret and drag/resize keep theirs. */
:root{--cur:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 512 512'%3E%3Cpath d='M62 62 452 205 300 300 208 452Z' fill='%23000' stroke='%23000' stroke-width='46' stroke-linejoin='round'/%3E%3C/svg%3E") 3 3,default}
:root[data-cur=on-dark]{--cur:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 512 512'%3E%3Cpath d='M62 62 452 205 300 300 208 452Z' fill='%23fff' stroke='%23fff' stroke-width='46' stroke-linejoin='round'/%3E%3C/svg%3E") 3 3,default}
html,body,a,button,summary,select,label,[role=button],[role=tab],[role=menuitem],[role=option],input[type=checkbox],input[type=radio],input[type=range],input[type=color],input[type=file],input[type=button],input[type=submit]{cursor:var(--cur)}
input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=button],[type=submit]),textarea,[contenteditable]:not([contenteditable=false]){cursor:text}
