diff --git a/src/assets/scss/_buttons.scss b/src/assets/scss/_buttons.scss index 2f9e80ab..c2bcc5bc 100644 --- a/src/assets/scss/_buttons.scss +++ b/src/assets/scss/_buttons.scss @@ -76,7 +76,7 @@ } &.btn-shadow { - box-shadow: rgba(0, 0, 0, 0.15) 0 .2rem .3rem; + box-shadow: color-mix(in srgb, var(--black) 10%, transparent) 0 .2rem .3rem; } } @@ -87,7 +87,7 @@ aspect-ratio: 1; background-color: var(--white); border: 1px solid var(--slate-400); - box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; + box-shadow: color-mix(in srgb, var(--black) 10%, transparent) 0px 4px 12px; border-radius: 100vmax; pointer-events: all; cursor: pointer; diff --git a/src/assets/scss/_card.scss b/src/assets/scss/_card.scss index efe9f39b..f58ced75 100644 --- a/src/assets/scss/_card.scss +++ b/src/assets/scss/_card.scss @@ -4,7 +4,7 @@ border-radius: 8px; background-color: var(--white); border: 1px solid var(--slate-100); - box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; + box-shadow: color-mix(in srgb, var(--black) 10%, transparent) 0px 4px 12px; min-width: 15rem; .card-arrow { diff --git a/src/assets/scss/radix/_dialog.scss b/src/assets/scss/radix/_dialog.scss new file mode 100644 index 00000000..a7813420 --- /dev/null +++ b/src/assets/scss/radix/_dialog.scss @@ -0,0 +1,80 @@ +.dialog-overlay { + background-color: color-mix(in srgb, var(--black) 40%, transparent); + position: fixed; + inset: 0; + animation: show-overlay 150ms cubic-bezier(0.16, 1, 0.3, 1); + z-index: 100; +} + +.dialog-content { + position: fixed; + top: 50%; + left: 50%; + z-index: 200; + transform: translate(-50%, -50%); + width: 50rem; + max-width: calc(100% - 4rem); + max-height: 85vh; + padding: 25px; + border-radius: 8px; + background-color: var(--white); + border: 1px solid var(--slate-100); + box-shadow: color-mix(in srgb, var(--black) 10%, transparent) 0px 4px 12px; + animation: show-content 150ms cubic-bezier(0.16, 1, 0.3, 1); + + &:focus { + outline: none; + } +} + +.dialog-title { + margin-bottom: .5em; + font-size: 1.5em; + font-weight: 700; +} + +.dialog-description { + h3 { + font-size: 1.25em; + font-weight: 700; + } + + font-size: 1em; + color: var(--slate-800); + line-height: 1.5; + + > * + * { + margin-top: 1em; + } + + a { + text-underline-offset: 2px; + text-decoration: underline; + + &:hover, + &:focus-visible { + text-decoration: none; + color: var(--green-500); + } + } +} + +@keyframes show-overlay { + from { + opacity: 0; + } + to { + opacity: 1; + } +} + +@keyframes show-content { + from { + opacity: 0; + transform: translate(-50%, -48%) scale(0.96); + } + to { + opacity: 1; + transform: translate(-50%, -50%) scale(1); + } +} diff --git a/src/assets/scss/radix/_toast.scss b/src/assets/scss/radix/_toast.scss index 2ad9f37d..0e46aaf9 100644 --- a/src/assets/scss/radix/_toast.scss +++ b/src/assets/scss/radix/_toast.scss @@ -28,7 +28,7 @@ background-color: var(--white); border-radius: 6px; box-shadow: hsl(206 22% 7% / 35%) 0px 10px 38px -10px, hsl(206 22% 7% / 20%) 0px 10px 20px -15px; - + &.toast-success { color: var(--green-700); border: 1px solid var(--green-700); diff --git a/src/assets/scss/theme.scss b/src/assets/scss/theme.scss index 3d70e778..d047e7a2 100644 --- a/src/assets/scss/theme.scss +++ b/src/assets/scss/theme.scss @@ -10,6 +10,7 @@ @use 'map'; @use 'radix/toast'; +@use 'radix/dialog'; :root { --white: #fff; @@ -56,6 +57,10 @@ a[href^='http']::after { margin-left: .25em; } +strong { + font-weight: 600; +} + .icon { width: 1em; } \ No newline at end of file diff --git a/src/components/maps/overlay/SearchMapSwitch.vue b/src/components/maps/overlay/SearchMapSwitch.vue index e040f9eb..894c8377 100644 --- a/src/components/maps/overlay/SearchMapSwitch.vue +++ b/src/components/maps/overlay/SearchMapSwitch.vue @@ -1,22 +1,36 @@