select2-tailwindcss-v4-theme
Version:
A Select2 theme for Tailwindcss v4
605 lines (604 loc) • 21.1 kB
CSS
/*! tailwindcss v4.0.0 | MIT License | https://tailwindcss.com */
.select2-container--tailwindcss-4 {
display: block;
}
.select2-container--tailwindcss-4.select2-container--open .select2-dropdown {
margin-top: calc(var(--spacing) * 1);
max-height: calc(var(--spacing) * 60);
width: 100%;
overflow: auto;
border-radius: var(--radius-md);
--tw-border-style: none;
border-style: none;
background-color: var(--color-white);
padding-block: calc(var(--spacing) * 1);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
--tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
--tw-ring-color: color-mix(in oklab, var(--color-black) 5%, transparent);
&:focus {
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: var(--tw-leading, var(--text-sm--line-height));
}
&:where(.dark, .dark *) {
border-color: var(--color-gray-600);
}
&:where(.dark, .dark *) {
background-color: var(--color-gray-700);
}
&:where(.dark, .dark *) {
color: var(--color-white);
}
&:where(.dark, .dark *) {
&::placeholder {
color: var(--color-gray-400);
}
}
&:where(.dark, .dark *) {
&:focus {
border-color: var(--color-indigo-600);
}
}
&:where(.dark, .dark *) {
&:focus {
--tw-ring-color: var(--color-indigo-600);
}
}
}
.select2-container--tailwindcss-4.select2-container--open .select2-dropdown--below {
transform-origin: top;
}
.select2-container--tailwindcss-4.select2-container--open .select2-dropdown--above {
transform-origin: bottom;
}
.select2-container--tailwindcss-4 .select2-search--dropdown .select2-search__field {
display: block;
width: 100%;
border-radius: var(--radius-md);
border-style: var(--tw-border-style);
border-width: 1px;
border-color: var(--color-gray-300);
padding-inline: calc(var(--spacing) * 3);
padding-block: calc(var(--spacing) * 1.5);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
&::placeholder {
color: var(--color-gray-400);
}
--tw-shadow: 0 1px 2px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.05));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
&:focus {
border-color: var(--color-indigo-600);
}
&:focus {
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
&:focus {
--tw-ring-color: var(--color-indigo-600);
}
&:focus {
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
&:where(.dark, .dark *) {
background-color: var(--color-gray-700);
}
}
.select2-container--tailwindcss-4 .select2-results__options {
max-height: calc(var(--spacing) * 60);
overflow: auto;
}
.select2-container--tailwindcss-4 .select2-results__option {
position: relative;
cursor: default;
padding-block: calc(var(--spacing) * 2);
padding-right: calc(var(--spacing) * 9);
padding-left: calc(var(--spacing) * 3);
color: var(--color-gray-900);
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
--tw-duration: 150ms;
transition-duration: 150ms;
--tw-ease: var(--ease-in-out);
transition-timing-function: var(--ease-in-out);
-webkit-user-select: none;
user-select: none;
&:where(.dark, .dark *) {
color: var(--color-white);
}
}
.select2-container--tailwindcss-4 .select2-results__option--disabled {
cursor: not-allowed;
border-color: var(--color-gray-200);
background-color: var(--color-gray-50);
color: var(--color-gray-500);
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
&:where(.dark, .dark *) {
background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
}
}
.select2-container--tailwindcss-4 .select2-results__option--highlighted {
background-color: var(--color-indigo-600);
color: var(--color-white);
}
.select2-container--tailwindcss-4 .select2-results__option--highlighted::after {
color: var(--color-white);
}
.select2-container--tailwindcss-4 .select2-results__option--selected {
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
&:where(.dark, .dark *) {
color: var(--color-white);
}
}
.select2-container--tailwindcss-4 .select2-results__option--selected::after {
position: absolute;
inset-block: calc(var(--spacing) * 0);
right: calc(var(--spacing) * 3);
display: flex;
align-items: center;
color: var(--color-indigo-600);
content: "✓";
}
.select2-container--tailwindcss-4 .select2-results__group {
display: flex;
cursor: default;
background-color: var(--color-gray-50);
padding-inline: calc(var(--spacing) * 3);
padding-block: calc(var(--spacing) * 1.5);
font-size: var(--text-xs);
line-height: var(--tw-leading, var(--text-xs--line-height));
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
--tw-tracking: var(--tracking-wider);
letter-spacing: var(--tracking-wider);
color: var(--color-gray-700);
text-transform: uppercase;
&:where(.dark, .dark *) {
background-color: var(--color-gray-800);
}
&:where(.dark, .dark *) {
color: var(--color-gray-300);
}
}
.select2-container--tailwindcss-4 .select2-results__option--group {
padding-inline: calc(var(--spacing) * 0);
padding-block: calc(var(--spacing) * 0);
}
.input-group > * + select + .select2-container--tailwindcss-4 .select2-selection {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
border-left-style: var(--tw-border-style);
border-left-width: 0px;
}
.input-group > .select2-container--tailwindcss-4:not(:last-child) .select2-selection {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
border-right-style: var(--tw-border-style);
border-right-width: 0px;
}
.select2-container--tailwindcss-4 .select2-results__option--loading {
display: flex;
align-items: center;
justify-content: center;
padding-block: calc(var(--spacing) * 4);
color: var(--color-gray-400);
}
.select2-container--tailwindcss-4 .select2-results__option--loading::after {
height: calc(var(--spacing) * 5);
width: calc(var(--spacing) * 5);
animation: var(--animate-spin);
border-radius: calc(infinity * 1px);
border-style: var(--tw-border-style);
border-width: 2px;
border-color: var(--color-gray-300);
border-top-color: var(--color-indigo-600);
content: "";
}
.field_with_errors .select2-container--tailwindcss-4 .select2-selection, select.is-invalid ~ .select2-container--tailwindcss-4 .select2-selection, select:invalid ~ .select2-container--tailwindcss-4 .select2-selection {
border-color: var(--color-red-500);
color: var(--color-red-900);
}
.field_with_errors .select2-container--tailwindcss-4 .select2-container--focus, select.is-invalid ~ .select2-container--tailwindcss-4 .select2-container--focus, select:invalid ~ .select2-container--tailwindcss-4 .select2-container--focus {
border-color: var(--color-red-500);
--tw-ring-color: var(--color-red-500);
}
.field_with_errors .select2-container--tailwindcss-4 .select2-selection__placeholder, select.is-invalid ~ .select2-container--tailwindcss-4 .select2-selection__placeholder, select:invalid ~ .select2-container--tailwindcss-4 .select2-selection__placeholder {
color: var(--color-red-300);
}
.select2-container--tailwindcss-4 .select2-selection--single {
position: relative;
height: auto;
min-height: 2.25rem;
width: 100%;
cursor: pointer;
border-radius: var(--radius-md);
border-style: var(--tw-border-style);
border-width: 1px;
border-color: var(--color-gray-300);
background-color: var(--color-white);
padding-block: calc(var(--spacing) * 1.5);
padding-right: calc(var(--spacing) * 8);
padding-left: calc(var(--spacing) * 3);
text-align: left;
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
--tw-duration: 200ms;
transition-duration: 200ms;
--tw-ease: var(--ease-in-out);
transition-timing-function: var(--ease-in-out);
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
}
&:where(.dark, .dark *) {
background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
&:where(.dark, .dark *) {
color: var(--color-white);
}
}
.select2-container--tailwindcss-4 .select2-selection--single .select2-selection__rendered {
display: block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
padding-right: calc(var(--spacing) * 0);
padding-left: calc(var(--spacing) * 0);
color: var(--color-gray-900);
&:where(.dark, .dark *) {
color: var(--color-white);
}
}
.select2-container--tailwindcss-4 .select2-selection--single .select2-selection__placeholder {
color: var(--color-gray-400);
&:where(.dark, .dark *) {
color: var(--color-gray-500);
}
}
.select2-container--tailwindcss-4 .select2-selection--single .select2-selection__arrow {
position: absolute;
inset-block: calc(var(--spacing) * 0);
right: calc(var(--spacing) * 0);
display: flex;
align-items: center;
padding-right: calc(var(--spacing) * 2);
}
.select2-container--tailwindcss-4 .select2-selection--single .select2-selection__arrow b {
height: calc(var(--spacing) * 5);
width: calc(var(--spacing) * 5);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
color: var(--color-gray-400);
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
}
.select2-container--tailwindcss-4.select2-container--disabled .select2-selection--single {
cursor: not-allowed;
border-color: var(--color-gray-200);
background-color: var(--color-gray-50);
color: var(--color-gray-500);
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
&:where(.dark, .dark *) {
background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
}
}
.select2-container--tailwindcss-4.select2-container--disabled.select2-container--focus .select2-selection--single {
border-color: var(--color-gray-200);
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
}
.select2-container--tailwindcss-4 .select2-selection--single .select2-selection__clear {
position: absolute;
inset-block: calc(var(--spacing) * 0);
right: calc(var(--spacing) * 0);
display: flex;
cursor: pointer;
align-items: center;
padding-right: 2rem;
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
--tw-font-weight: var(--font-weight-bold);
font-weight: var(--font-weight-bold);
color: var(--color-gray-400);
&:hover {
@media (hover: hover) {
color: var(--color-gray-700);
}
}
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
}
.select2-container--tailwindcss-4.select2-container--focus .select2-selection--single {
border-color: var(--color-indigo-600);
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
--tw-ring-color: var(--color-indigo-600);
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
.select2-container--tailwindcss-4[dir=rtl] .select2-selection--single .select2-selection__rendered {
padding-right: calc(var(--spacing) * 3);
padding-left: calc(var(--spacing) * 10);
}
.select2-container--tailwindcss-4 .select2-selection--multiple {
height: auto;
min-height: 2.25rem;
cursor: default;
border-radius: var(--radius-md);
border-style: var(--tw-border-style);
border-width: 1px;
border-color: var(--color-gray-300);
background-color: var(--color-white);
padding-inline: calc(var(--spacing) * 3);
padding-block: calc(var(--spacing) * 1.5);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
}
&:where(.dark, .dark *) {
background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
&:where(.dark, .dark *) {
color: var(--color-white);
}
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-selection__rendered {
margin: calc(var(--spacing) * 0);
display: flex;
list-style-type: none;
flex-direction: row;
flex-wrap: wrap;
gap: calc(var(--spacing) * 2);
padding: calc(var(--spacing) * 0);
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-selection__choice {
display: inline-flex;
align-items: center;
border-radius: var(--radius-md);
background-color: var(--color-indigo-100);
padding-inline: calc(var(--spacing) * 2.5);
padding-block: calc(var(--spacing) * 0.5);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
--tw-font-weight: var(--font-weight-medium);
font-weight: var(--font-weight-medium);
color: var(--color-indigo-800);
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-selection__choice__remove {
margin-right: calc(var(--spacing) * 1.5);
margin-left: calc(var(--spacing) * -1);
display: flex;
height: calc(var(--spacing) * 4);
width: calc(var(--spacing) * 4);
align-items: center;
justify-content: center;
border-radius: calc(infinity * 1px);
padding-bottom: 0.10rem;
color: var(--color-indigo-600);
&:hover {
@media (hover: hover) {
background-color: var(--color-blue-200);
}
}
&:hover {
@media (hover: hover) {
color: var(--color-indigo-900);
}
}
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-search--inline {
display: block;
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-search--inline .select2-search__field {
margin: calc(var(--spacing) * 0);
height: 1.5rem;
border-style: var(--tw-border-style);
border-width: 0px;
background-color: transparent;
padding: calc(var(--spacing) * 0);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
&::placeholder {
color: var(--color-gray-400);
}
&:focus {
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
&:focus {
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
&:where(.dark, .dark *) {
&::placeholder {
color: var(--color-gray-500);
}
}
}
.select2-container--tailwindcss-4.select2-container--disabled .select2-selection--multiple {
cursor: not-allowed;
border-color: var(--color-gray-200);
background-color: var(--color-gray-50);
color: var(--color-gray-500);
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
&:where(.dark, .dark *) {
background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
}
}
.select2-container--tailwindcss-4.select2-container--disabled.select2-container--focus .select2-selection--multiple {
border-color: var(--color-gray-200);
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
&:where(.dark, .dark *) {
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
}
}
.select2-container--tailwindcss-4 .select2-selection--multiple.select2-selection--clearable {
padding-right: calc(var(--spacing) * 4);
}
.select2-container--tailwindcss-4 .select2-selection--multiple .select2-selection__clear {
position: absolute;
inset-block: calc(var(--spacing) * 0);
right: calc(var(--spacing) * 0);
display: flex;
cursor: pointer;
align-items: center;
padding-right: calc(var(--spacing) * 4);
font-size: var(--text-base);
line-height: var(--tw-leading, var(--text-base--line-height));
--tw-font-weight: var(--font-weight-bold);
font-weight: var(--font-weight-bold);
color: var(--color-gray-400);
&:hover {
@media (hover: hover) {
color: var(--color-gray-700);
}
}
@media (width >= 40rem) {
font-size: var(--text-sm);
line-height: calc(var(--spacing) * 6);
}
}
.select2-container--tailwindcss-4.select2-container--focus .select2-selection--multiple {
border-color: var(--color-indigo-600);
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
--tw-ring-color: var(--color-indigo-600);
outline-style: none;
@media (forced-colors: active) {
outline: 2px solid transparent;
outline-offset: 2px;
}
}
@property --tw-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
syntax: "*";
inherits: false;
}
@property --tw-inset-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
syntax: "*";
inherits: false;
}
@property --tw-ring-color {
syntax: "*";
inherits: false;
}
@property --tw-ring-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
syntax: "*";
inherits: false;
}
@property --tw-inset-ring-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
syntax: "*";
inherits: false;
}
@property --tw-ring-offset-width {
syntax: "<length>";
inherits: false;
initial-value: 0px;
}
@property --tw-ring-offset-color {
syntax: "*";
inherits: false;
initial-value: #fff;
}
@property --tw-ring-offset-shadow {
syntax: "*";
inherits: false;
initial-value: 0 0 #0000;
}
@property --tw-border-style {
syntax: "*";
inherits: false;
initial-value: solid;
}
@property --tw-duration {
syntax: "*";
inherits: false;
}
@property --tw-ease {
syntax: "*";
inherits: false;
}
@property --tw-font-weight {
syntax: "*";
inherits: false;
}
@property --tw-tracking {
syntax: "*";
inherits: false;
}