/* Components and utilities that are good candidates for extraction to StyleKit. */ :root { } .bg-grey-super-light { background-color: var(--sn-stylekit-grey-super-light); } .h-90vh { height: 90vh; } .h-26 { width: 6.5rem; } .h-33 { height: 8.25rem; } .hidden { display: none; } .underline { text-decoration: underline; } .hover\:underline:hover { text-decoration: underline; } .sn-icon { @extend .h-5; @extend .w-5; @extend .fill-current; &.sn-icon--small { @extend .h-3\.5; @extend .w-3\.5; } &.sn-icon--mid { @extend .w-4; @extend .h-4; } } .sn-dropdown { @extend .bg-default; @extend .rounded; @extend .box-shadow; z-index: $z-index-dropdown-menu; &.sn-dropdown--anchor-right { right: 0; } &[data-state='collapsed'] { display: none; } &.sn-dropdown--animated { @extend .transition-transform; @extend .duration-150; @extend .slide-down-animation; } &.sn-dropdown--small { @extend .min-w-40; } } .sn-dropdown-popover { z-index: 3001; max-height: 40%; overflow: auto; &[data-reach-listbox-popover] { background: var(--sn-stylekit-background-color); } } .sn-dropdown-button { @extend .rounded; @extend .px-3\.5; @extend .py-1\.75; @extend .fit-content; @extend .bg-default; @extend .text-input; @extend .color-text; @extend .border-solid; @extend .border-main; @extend .border-1; @extend .min-w-55; } .sn-dropdown-button-label { @extend .flex; @extend .items-center; } .sn-dropdown-arrow { @extend .flex; &.sn-dropdown-arrow-flipped { transform: rotate(180deg); } } .sn-accordion-arrow-icon { &[data-is-expanded='true'] { transform: rotate(180deg); } } .accordion-contents-container { transition: all 0.23s ease-out; transform-origin: top; transform: scaleY(0); height: 0; &[data-is-expanded='true'] { height: auto; transform-origin: top; transform: none; } } /** Lesser specificity will give priority to reach's styles */ [data-reach-custom-checkbox-container].sn-switch { @extend .duration-150; @extend .ease-out; @extend .rounded-full; @extend .transition-background; @extend .bg-clip-padding; @extend .cursor-pointer; @extend .border-transparent; @extend .w-8; @extend .h-4\.5; @extend .border-2; @extend .border-solid; @extend .focus-within\:ring-info; @extend .focus-within\:outline-none; @extend .focus-within\:border-background; box-sizing: content-box; } .sn-switch-handle { @extend .absolute; @extend .block; @extend .bg-default; @extend .rounded-full; @extend .ease-out; @extend .transition-transform; @extend .duration-150; left: 2px; @extend .w-3\.5; @extend .h-3\.5; top: 50%; transform: translate(0px, -50%); &.sn-switch-handle--right { transform: translate(calc(2rem - 1.125rem), -50%); } } .sn-component .sk-app-bar .sk-app-bar-item { justify-content: flex-start; } .sn-dropdown-item { @extend .flex; @extend .items-center; @extend .border-0; @extend .focus\:shadow-none; @extend .cursor-pointer; @extend .hover\:bg-contrast; @extend .hover\:color-foreground; @extend .color-text; @extend .bg-transparent; @extend .px-3; @extend .py-1\.5; @extend .text-left; @extend .w-full; &.sn-dropdown-item--no-icon { @extend .py-2; } .sn-dropdown-popover & { @extend .bg-default; } &[data-current-nav] { color: var(--sn-stylekit-contrast-foreground-color); @extend .bg-contrast; @extend .hover\:color-text; } .sn-dropdown-popover &[data-current-selected] { background-color: var(--sn-stylekit-info-backdrop-color); @extend .color-info; } } .sn-tag { @extend .h-6; @extend .bg-contrast; @extend .border-0; @extend .rounded; @extend .text-xs; @extend .color-text; @extend .py-1; @extend .py-2; @extend .pr-2; @extend .flex; @extend .items-center; @extend .mt-2; @extend .cursor-pointer; @extend .hover\:bg-secondary-contrast; @extend .focus\:bg-secondary-contrast; } .sn-titlebar { @extend .w-full; @extend .bg-default; @extend .h-14; @extend .border-bottom-solid; @extend .border-b-1; @extend .border-main; @extend .py-3; @extend .px-3; @extend .flex; @extend .flex-row; } .sn-title { @extend .font-bold; } .ml-0-important { margin-left: 0rem !important; } .ml-3 { margin-left: 0.75rem; } .ml-4 { margin-left: 1rem; } .mr-3 { margin-right: 0.75rem; } .mr-4 { margin-right: 1rem; } .mr-12 { margin-right: 3rem; } .my-0\.5 { margin-top: 0.125rem; margin-bottom: 0.125rem; } .my-1\.5 { margin-top: 0.375rem; margin-bottom: 0.375rem; } .my-4 { margin-top: 1rem; margin-bottom: 1rem; } .mt-0 { margin-top: 0; } .mb-2 { margin-bottom: 0.5rem; } .max-w-1\/2 { max-width: 50%; } .max-w-3\/4 { max-width: 75%; } .max-w-72 { max-width: 18rem; } .max-w-89 { max-width: 22.25rem; } .mb-4 { margin-bottom: 1rem; } .mb-5 { margin-bottom: 1.25rem; } .mb-8 { margin-bottom: 2rem; } .w-26 { width: 6.5rem; } .max-w-200 { max-width: 50rem; } .w-92 { width: 23rem; } .w-200 { width: 50rem; } .min-w-1 { min-width: 0.25rem; } .min-w-2 { min-width: 0.5rem; } .min-w-3 { min-width: 0.75rem; } .min-w-5 { min-width: 1.25rem; } .min-w-6 { min-width: 1.5rem; } .min-w-7 { min-width: 1.75rem; } .min-w-15 { min-width: 3.75rem; } .min-w-70 { min-width: 17.5rem; } .min-w-24 { min-width: 6rem; } .min-w-30 { min-width: 7.5rem; } .min-w-90 { min-width: 22.5rem; } .min-h-1px { min-height: 1px; } .min-h-1 { min-height: 0.25rem; } .min-h-2 { min-height: 0.5rem; } .min-h-3 { min-height: 0.75rem; } .min-h-4 { min-height: 1rem; } .min-h-6 { min-height: 1.5rem; } .max-h-5 { max-height: 1.25rem; } .border-danger { border-color: var(--sn-stylekit-danger-color); } .border-neutral-contrast-bg { border-color: var(--sn-stylekit-neutral-contrast-color); } .border-2 { border-width: 0.5rem; } .bg-inverted-default { background-color: var(--sn-stylekit-contrast-foreground-color); } .color-inverted-default { color: var(--sn-stylekit-background-color); } .p-1 { padding: 0.25rem; } .p-8 { padding: 2rem; } .p-12 { padding: 3rem; } .pt-1 { padding-top: 0.25rem; } .pt-1\.5 { padding-top: 0.375rem; } .pt-2 { padding-top: 0.5rem; } .pt-3 { padding-top: 0.75rem; } .pt-6 { padding-top: 1.5rem; } .pb-1 { padding-bottom: 0.25rem; } .pb-2 { padding-bottom: 0.5rem; } .pb-2\.5 { padding-bottom: 0.625rem; } .sn-component .px-0 { padding-left: 0; padding-right: 0; } .px-4 { padding-left: 1rem; padding-right: 1rem; } .sn-component .px-4\.5, .sn-component .sk-panel .px-4\.5 { padding-left: 1.375rem; padding-right: 1.375rem; } .px-9 { padding-left: 2.25rem; padding-right: 2.25rem; } .px-12 { padding-left: 3rem; padding-right: 3rem; } .sn-component .py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; } .py-9 { padding-top: 2.25rem; padding-bottom: 2.25rem; } .select-none { user-select: none; } .placeholder-dark-red::placeholder { @extend .color-dark-red; } .placeholder-medium::placeholder { font-weight: 500; } .top-30\% { top: 30%; } .top-35\% { top: 35%; } .top-40\% { top: 40%; } .-top-0\.25 { top: -0.0625rem; } .bottom-20\% { bottom: 20%; } .bottom-25\% { bottom: 25%; } .bottom-30\% { bottom: 30%; } .bottom-35\% { bottom: 35%; } .bottom-40\% { bottom: 40%; } .left-2 { left: 0.5rem; } .-left-10 { left: -2.5rem; } .-left-28 { left: -7rem; } .-left-16 { left: -4rem; } .-left-40 { left: -10rem; } .-left-56 { left: -14rem; } .right-0 { right: 0; } .-right-2 { right: -0.5rem; } .-right-10 { right: -2.5rem; } .-right-20 { right: -5rem; } .-right-24 { right: -6rem; } .-right-44 { right: -11rem; } .-right-56 { right: -14rem; } .-translate-x-1\/2 { transform: translateX(-50%); } .-translate-y-1\/2 { transform: translateY(-50%); } .translate-x-1\/2 { transform: translateX(50%); } .-bottom-5 { bottom: -1.25rem; } .-z-index-1 { z-index: -1; } .sn-component .btn-w-full { width: 100%; } .cursor-not-allowed { cursor: not-allowed; } .hover\:bg-grey-4:hover { background: var(--sn-stylekit-grey-4); } .sn-component .spinner-info { border-color: var(--sn-stylekit-info-color); border-right-color: transparent; } @keyframes slide-up { 0% { opacity: 1; transform: translateY(0); } 100% { opacity: 0; transform: translateY(-10px); } } .slide-up-animation { animation: slide-up 0.2s ease; } .bottom-100 { bottom: 100%; } .cursor-auto { cursor: auto; } .top-1\/2 { top: 50%; } .left-2 { left: 0.5rem; } .left-1\/2 { left: 50%; } .-translate-1\/2 { transform: translate(-50%, -50%); } .pseudo-radio-btn { @extend .w-4; @extend .h-4; @extend .border-2; @extend .border-solid; @extend .border-info; @extend .rounded-full; @extend .relative; } .pseudo-radio-btn--checked::after { content: ''; @extend .bg-info; @extend .absolute; @extend .top-1\/2; @extend .left-1\/2; @extend .-translate-1\/2; @extend .w-2; @extend .h-2; @extend .rounded-full; } .focus\:bg-info:focus { @extend .bg-info; } .focus\:color-info-contrast:focus { @extend .color-info-contrast; } .hover\:color-foreground:hover { color: var(--sn-stylekit-foreground-color) !important; } .focus\:bg-info-backdrop:focus { background-color: var(--sn-stylekit-info-backdrop-color); } .list-style-none { list-style-type: none; } .rounded-0\.5 { border-radius: 0.125rem; } @media screen and (max-width: 480px) { .sn-component { .xs\:items-start { align-items: flex-start; } .xs\:px-4 { padding-left: 1rem; padding-right: 1rem; } .xs\:px-8 { padding-left: 2rem; padding-right: 2rem; } .xs\:mb-4 { margin-bottom: 1rem; } .xs\:min-w-auto { min-width: auto; } .xs\:flex-col-reverse { flex-flow: column-reverse; } .xs\:rounded-0 { border-radius: 0; } } } .border-info-contrast { border-color: var(--sn-stylekit-info-contrast-color); } .sn-icon-button { &:focus { border-color: transparent; } &.toggled { border-color: transparent; @extend .bg-info; @extend .color-info-contrast; &:focus { background-color: var(--sn-stylekit-info-color) !important; border: none; } &:hover { background-color: var(--sn-stylekit-contrast-background-color) !important; @extend .color-info; @extend .border-info; } &:focus:hover { background-color: var(--sn-stylekit-contrast-background-color) !important; } } } .sn-button { &.normal-focus-brightness { &:hover, &:focus { filter: brightness(100%); } } } @media screen and (max-width: $screen-md-min) { .sn-component { .md\:hidden { display: none; } .md\:mr-0 { margin-right: 0; } } } .dimmed { opacity: .5; cursor: default; pointer-events: none; }