@import 'tailwindcss';
@import '../../vendor/livewire/flux/dist/flux.css';
@import 'select2/dist/css/select2.min.css';

@source "../views";
@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../vendor/livewire/flux-pro/stubs/**/*.blade.php';
@source '../../vendor/livewire/flux/stubs/**/*.blade.php';

@custom-variant dark (&:where(.dark, .dark *));

@theme {
    --font-sans: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';

    --color-zinc-50: #fafafa;
    --color-zinc-100: #f5f5f5;
    --color-zinc-200: #e5e5e5;
    --color-zinc-300: #d4d4d4;
    --color-zinc-400: #a3a3a3;
    --color-zinc-500: #737373;
    --color-zinc-600: #525252;
    --color-zinc-700: #404040;
    --color-zinc-800: #262626;
    --color-zinc-900: #171717;
    --color-zinc-950: #0a0a0a;

    --color-accent: var(--color-neutral-800);
    --color-accent-content: var(--color-neutral-800);
    --color-accent-foreground: var(--color-white);
}

@layer theme {
    .dark {
        --color-accent: var(--color-white);
        --color-accent-content: var(--color-white);
        --color-accent-foreground: var(--color-neutral-800);
    }
}

@layer base {

    *,
    ::after,
    ::before,
    ::backdrop,
    ::file-selector-button {
        border-color: var(--color-gray-200, currentColor);
    }

    body {
        @apply bg-gradient-to-br from-slate-100 via-slate-50 to-emerald-50 text-slate-800;
    }

    .card-surface {
        @apply rounded-2xl border border-slate-200 bg-white/80 shadow-[0_10px_25px_-15px_rgba(15,23,42,0.45)] backdrop-blur-sm;
    }
}

.select2-container {
    width: 100% !important;
    max-width: 100%;
    margin-top: 0.25rem;
}

.select2-container--default .select2-selection--single {
    display: flex;
    height: 2.75rem;
    align-items: center;
    border: 1px solid #cbd5e1;
    border-radius: 0.75rem;
    background-color: #fff;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 0.75rem;
    color: #020617;
    line-height: 1.5rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 0.55rem;
    right: 0.5rem;
}

.select2-dropdown {
    max-width: 100vw;
    overflow: hidden;
    border: 1px solid #cbd5e1;
    border-radius: 0.75rem;
    background-color: #fff;
    box-shadow: 0 12px 24px -12px rgb(15 23 42 / 35%);
}

.select2-container--default .select2-search--dropdown {
    padding: 0.5rem;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    box-sizing: border-box;
    width: 100%;
    border: 1px solid #cbd5e1;
    border-radius: 0.5rem;
    padding: 0.5rem 0.75rem;
    color: #020617;
    outline: none;
}

.select2-container--default .select2-search--dropdown .select2-search__field:focus {
    border-color: #059669;
    box-shadow: 0 0 0 3px rgb(16 185 129 / 15%);
}

.select2-container--default .select2-results__option {
    padding: 0.55rem 0.75rem;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: #047857;
}

@media (max-width: 639px) {
    .select2-container--open .select2-dropdown {
        max-width: calc(100vw - 2rem);
    }

    .select2-container--default .select2-search--dropdown .select2-search__field {
        min-height: 2.75rem;
        font-size: 16px;
    }
}

[data-flux-field] {
    @apply grid gap-2;
}

[data-flux-label] {
    @apply  !mb-0 !leading-tight;
}

input:focus[data-flux-control],
textarea:focus[data-flux-control],
select:focus[data-flux-control] {
    @apply outline-hidden ring-2 ring-accent ring-offset-2 ring-offset-accent-foreground;
}

/* \[:where(&)\]:size-4 {
    @apply size-4;
} */
