summaryrefslogtreecommitdiffhomepage
path: root/packages/console/app/src/style/component
diff options
context:
space:
mode:
authorFrank <[email protected]>2025-09-18 10:59:01 -0400
committerFrank <[email protected]>2025-09-18 10:59:01 -0400
commit4ceabdffa07b1af8d99eb73622a4d549d99ec6d2 (patch)
tree72e2ae62084a9e24cc76caffbd1f30dafc69ea56 /packages/console/app/src/style/component
parentc87480cf931a6f8f8b55552558ef521f1918b578 (diff)
downloadopencode-4ceabdffa07b1af8d99eb73622a4d549d99ec6d2.tar.gz
opencode-4ceabdffa07b1af8d99eb73622a4d549d99ec6d2.zip
wip: zen
Diffstat (limited to 'packages/console/app/src/style/component')
-rw-r--r--packages/console/app/src/style/component/button.css102
1 files changed, 102 insertions, 0 deletions
diff --git a/packages/console/app/src/style/component/button.css b/packages/console/app/src/style/component/button.css
new file mode 100644
index 000000000..d10f7af53
--- /dev/null
+++ b/packages/console/app/src/style/component/button.css
@@ -0,0 +1,102 @@
+[data-component="button"] {
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ gap: var(--space-2);
+ padding: var(--space-3) var(--space-4);
+ border: 1px solid transparent;
+ border-radius: var(--space-2);
+ font-family: var(--font-sans);
+ font-size: var(--font-size-md);
+ font-weight: 500;
+ line-height: 1.25;
+ cursor: pointer;
+ transition: all 0.2s ease-in-out;
+ text-decoration: none;
+ user-select: none;
+
+ &:disabled {
+ opacity: 0.5;
+ cursor: not-allowed;
+ }
+
+ &:focus {
+ outline: none;
+ box-shadow: 0 0 0 2px var(--color-primary);
+ }
+
+ &[data-color="primary"] {
+ background-color: var(--color-primary);
+ color: var(--color-primary-text);
+ border-color: var(--color-primary);
+
+ &:hover:not(:disabled) {
+ background-color: var(--color-primary-hover);
+ border-color: var(--color-primary-hover);
+ }
+
+ &:active:not(:disabled) {
+ background-color: var(--color-primary-active);
+ border-color: var(--color-primary-active);
+ }
+ }
+
+ &[data-color="danger"] {
+ background-color: var(--color-danger);
+ color: var(--color-danger-text);
+ border-color: var(--color-danger);
+
+ &:hover:not(:disabled) {
+ background-color: var(--color-danger-hover);
+ border-color: var(--color-danger-hover);
+ }
+
+ &:active:not(:disabled) {
+ background-color: var(--color-danger-active);
+ border-color: var(--color-danger-active);
+ }
+
+ &:focus {
+ box-shadow: 0 0 0 2px var(--color-danger);
+ }
+ }
+
+ &[data-color="warning"] {
+ background-color: var(--color-warning);
+ color: var(--color-warning-text);
+ border-color: var(--color-warning);
+
+ &:hover:not(:disabled) {
+ background-color: var(--color-warning-hover);
+ border-color: var(--color-warning-hover);
+ }
+
+ &:active:not(:disabled) {
+ background-color: var(--color-warning-active);
+ border-color: var(--color-warning-active);
+ }
+
+ &:focus {
+ box-shadow: 0 0 0 2px var(--color-warning);
+ }
+ }
+
+ &[data-size="small"] {
+ padding: var(--space-2) var(--space-3);
+ font-size: var(--font-size-sm);
+ gap: var(--space-1-5);
+ }
+
+ &[data-size="large"] {
+ padding: var(--space-4) var(--space-6);
+ font-size: var(--font-size-lg);
+ gap: var(--space-3);
+ }
+
+ [data-slot="icon"] {
+ display: flex;
+ align-items: center;
+ width: 1em;
+ height: 1em;
+ }
+}