diff --git a/Styles/neo.css b/Styles/neo.css index 15b0e21..8aec87b 100644 --- a/Styles/neo.css +++ b/Styles/neo.css @@ -14,6 +14,11 @@ each one excludes the variants it must leave alone. :where() keeps those exclusions at specificity (0,1,0). To drop a neo shadow at a call site use shadow-none! or neo-flat!. + A gradient on a control is painted from its border box (background-origin: border-box). daisyUI keeps a 1px border + on its controls, made transparent here, and a background image starts at the padding box and repeats into the + border: the strip then showed the far end of the gradient, a thin seam along the edges, as if the control sat in a + second frame. + Never write @utility collapse: it brings back Tailwind's own collapse utility (visibility: collapse), which daisyUI otherwise suppresses, and hides every collapse. DCollapse adds neo-raised in its markup instead. */ @@ -64,10 +69,12 @@ @utility neo-gradient { background-image: linear-gradient(145deg, var(--neo-grad-light), var(--neo-grad-dark)); + background-origin: border-box; } @utility neo-gradient-pressed { background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; } @utility neo-hue-track { @@ -92,6 +99,7 @@ --btn-bg: var(--btn-color, var(--color-base-100)); --btn-border: transparent; background-image: linear-gradient(145deg, color-mix(in oklab, var(--btn-bg), white var(--neo-lift)), color-mix(in oklab, var(--btn-bg), black var(--neo-sink))); + background-origin: border-box; box-shadow: -3px -3px 6px var(--neo-light), 3px 3px 6px var(--neo-dark); &:where(:focus-visible) { @@ -116,6 +124,7 @@ &:not(:where(.input-ghost)) { background-color: var(--color-base-100); background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); &:focus, &:focus-within { @@ -163,6 +172,7 @@ &:not(:where(.textarea-ghost)) { background-color: var(--color-base-100); background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); &:focus, &:focus-within { @@ -181,6 +191,7 @@ &:not(:where(.file-input-ghost)) { background-color: var(--color-base-100); background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); } @@ -194,6 +205,7 @@ &:not(:where(:checked, :indeterminate, [aria-checked="true"], [aria-checked="mixed"], :disabled)) { border-color: transparent; background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); } } @@ -202,6 +214,7 @@ &:not(:where(:checked, [aria-checked="true"], :disabled)) { border-color: transparent; background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); } } @@ -210,6 +223,7 @@ &:not(:where(:disabled)) { border-color: transparent; background-image: linear-gradient(145deg, var(--neo-grad-dark), var(--neo-grad-light)); + background-origin: border-box; box-shadow: inset 2px 2px 4px var(--neo-dark), inset -2px -2px 4px var(--neo-light); &::before {