From c3630a8c74ac15b5ed87e37494dfacbd912a6761 Mon Sep 17 00:00:00 2001 From: gregortokarev Date: Fri, 1 May 2026 18:21:54 +0300 Subject: [PATCH 1/2] feat: add cursor-pointer rule for all clickable elements --- packages/ui/src/styles/globals.css | 68 ++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/packages/ui/src/styles/globals.css b/packages/ui/src/styles/globals.css index ca0570e..c95afc2 100644 --- a/packages/ui/src/styles/globals.css +++ b/packages/ui/src/styles/globals.css @@ -181,6 +181,74 @@ } } +button:not(:disabled):not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +a[href], +input[type="button"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled="true"] + ), +input[type="checkbox"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled="true"] + ), +input[type="radio"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled="true"] + ), +input[type="reset"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled="true"] + ), +input[type="submit"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled="true"] + ), +label[for], +summary, +[role="button"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="checkbox"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="menuitem"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="menuitemcheckbox"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="menuitemradio"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="option"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="radio"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="switch"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[role="tab"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ), +[data-slot$="-trigger"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled] + ):not([data-disabled="true"]), +[data-slot="checkbox"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled] + ):not([data-disabled="true"]), +[data-slot="command-item"]:not([aria-disabled="true"]):not([data-disabled]):not( + [data-disabled="true"] + ) { + cursor: pointer; +} + +button:disabled, +[disabled], +[aria-disabled="true"], +[data-disabled], +[data-disabled="true"] { + cursor: not-allowed; +} + /* Custom scrollbar — thumb only, no track, overlays content */ * { scrollbar-width: thin; From 7e69f8e840daeb5cbd4ac058ce99a3959cce3bc9 Mon Sep 17 00:00:00 2001 From: gregortokarev Date: Sun, 3 May 2026 11:32:32 +0300 Subject: [PATCH 2/2] fix: from coderabbit review --- packages/ui/src/styles/globals.css | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/packages/ui/src/styles/globals.css b/packages/ui/src/styles/globals.css index c95afc2..00b0ef2 100644 --- a/packages/ui/src/styles/globals.css +++ b/packages/ui/src/styles/globals.css @@ -184,24 +184,30 @@ button:not(:disabled):not([aria-disabled="true"]):not([data-disabled]):not( [data-disabled="true"] ), -a[href], -input[type="button"]:not(:disabled):not([aria-disabled="true"]):not( +a[href]:not([disabled]):not([aria-disabled="true"]):not([data-disabled]):not( [data-disabled="true"] ), +input[type="button"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled] + ):not([data-disabled="true"]), input[type="checkbox"]:not(:disabled):not([aria-disabled="true"]):not( - [data-disabled="true"] - ), + [data-disabled] + ):not([data-disabled="true"]), input[type="radio"]:not(:disabled):not([aria-disabled="true"]):not( - [data-disabled="true"] - ), + [data-disabled] + ):not([data-disabled="true"]), input[type="reset"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled] + ):not([data-disabled="true"]), +input[type="submit"]:not(:disabled):not([aria-disabled="true"]):not( + [data-disabled] + ):not([data-disabled="true"]), +label[for]:not([disabled]):not([aria-disabled="true"]):not([data-disabled]):not( [data-disabled="true"] ), -input[type="submit"]:not(:disabled):not([aria-disabled="true"]):not( +summary:not([disabled]):not([aria-disabled="true"]):not([data-disabled]):not( [data-disabled="true"] ), -label[for], -summary, [role="button"]:not([aria-disabled="true"]):not([data-disabled]):not( [data-disabled="true"] ),