/* Soft neo-brutal preset. Scoped to html.theme-neo so other color schemes stay intact. */

html.theme-neo {
    --nb-bg: #ffffff;
    --nb-cream: #f1e1b0;
    --nb-ink: #111111;
    --nb-gray: #6b7280;
    --nb-sakura: #F7C5C8;
    --nb-border: 2px solid #111111;
    --nb-shadow-sm: 2px 2px 0 #111111;
    --nb-shadow: 4px 4px 0 #111111;
    --nb-shadow-hover: 6px 6px 0 #111111;
    --nb-shadow-active: 2px 2px 0 #111111;
    --nb-radius: 4px;
    --color-primary: 17 17 17;
    --color-primary-light: 255 219 87;
    --color-primary-dark-light: 17 17 17 / 0.15;
    --nb-warning: #a8740d;
    --nb-info: #487f95;
    --nb-success: #7EBC8B;
    --nb-danger: #FD6A6B;
}

html.theme-neo,
html.theme-neo body,
html.theme-neo body.dark {
    background: var(--nb-bg) !important;
    color: var(--nb-ink);
    font-family: 'IBM Plex Sans', sans-serif;
}

html.theme-neo h1,
html.theme-neo h2,
html.theme-neo h3,
html.theme-neo h4,
html.theme-neo h5,
html.theme-neo h6,
html.theme-neo .btn {
    font-family: 'Space Grotesk', sans-serif;
}


html.theme-neo .text-warning{
    color: var(--nb-warning) !important;
}
html.theme-neo .text-info{
    color: var(--nb-info) !important;
}

html.theme-neo .screen_loader {
    background: var(--nb-bg) !important;
}

/* --- Panels / cards --- */
html.theme-neo .panel {
    background: var(--nb-bg);
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
}

/* --- Buttons --- */
html.theme-neo .btn {
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
    font-weight: 600;
    transition: transform 120ms ease, box-shadow 120ms ease;
}

html.theme-neo .btn:hover {
    transform: translate(-2px, -2px);
    box-shadow: var(--nb-shadow-hover);
}

html.theme-neo .btn:active {
    transform: translate(0, 0);
    box-shadow: var(--nb-shadow-active);
}

html.theme-neo .btn-primary,
html.theme-neo .btn-gradient,
html.theme-neo .btn-dark {
    background: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
    border-color: var(--nb-ink) !important;
}

html.theme-neo .btn-outline-primary,
html.theme-neo .btn-outline-dark {
    background: var(--nb-bg);
    color: var(--nb-ink);
    border-color: var(--nb-ink);
}

html.theme-neo .btn-outline-primary:hover,
html.theme-neo .btn-outline-dark:hover {
    background: var(--nb-cream);
    color: var(--nb-ink);
}

html.theme-neo .btn-success,
html.theme-neo .btn-danger,
html.theme-neo .btn-warning,
html.theme-neo .btn-info,
html.theme-neo .btn-secondary {
    border: var(--nb-border);
    box-shadow: var(--nb-shadow);
    color: var(--nb-ink);
}

html.theme-neo .btn-outline-success,
html.theme-neo .btn-outline-danger,
html.theme-neo .btn-outline-warning,
html.theme-neo .btn-outline-info,
html.theme-neo .btn-outline-secondary {
    border: var(--nb-border);
    box-shadow: var(--nb-shadow);
}

html.theme-neo .badge {
    border: 2px solid var(--nb-ink);
    box-shadow: var(--nb-shadow-sm);
}

html.theme-neo .nb-button {
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow-sm);
    transition: transform 120ms ease, box-shadow 120ms ease;
}


html.theme-neo .badge.badge-nb.text-success{
    background-color: var(--nb-success) !important;
    color: var(--nb-ink) !important;
}
html.theme-neo .badge.badge-nb.text-warning{
    background-color: var(--nb-sakura) !important;
    color: var(--nb-ink) !important;
}
html.theme-neo .badge.badge-nb.text-info{
    background-color: var(--nb-info) !important;
    color: var(--nb-bg) !important;
}
html.theme-neo .badge.badge-nb.text-danger{
    background-color: var(--nb-danger) !important;
    color: var(--nb-ink) !important;
}
html.theme-neo .badge.badge-nb.text-dark{
    background-color: var(--nb-ink) !important;
    color: var(--nb-bg) !important;
}
html.theme-neo .badge.badge-nb.text-primary{
    background-color: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .nb-card {
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
}

/* --- Forms --- */
html.theme-neo .form-input,
html.theme-neo .form-textarea,
html.theme-neo .form-select,
html.theme-neo .form-multiselect {
    background: var(--nb-bg);
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow-sm);
    color: var(--nb-ink);
}

html.theme-neo .form-input:focus,
html.theme-neo .form-textarea:focus,
html.theme-neo .form-select:focus,
html.theme-neo .form-multiselect:focus {
    border-color: var(--nb-ink);
    background: var(--nb-cream);
}

/* React-select (User Email, product search, etc.) */
html.theme-neo .user-form-select__control,
html.theme-neo .custom-select [class$='-control'] {
    min-height: 42px !important;
    background: var(--nb-bg) !important;
    border: var(--nb-border) !important;
    border-radius: var(--nb-radius) !important;
    box-shadow: var(--nb-shadow-sm) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .user-form-select__control--is-focused,
html.theme-neo .custom-select [class*='-control']:hover,
html.theme-neo .custom-select [class*='--is-focused'] {
    background: var(--nb-cream) !important;
    border-color: var(--nb-ink) !important;
    box-shadow: var(--nb-shadow-sm) !important;
}

html.theme-neo .user-form-select__placeholder,
html.theme-neo .user-form-select__single-value,
html.theme-neo .user-form-select__singleValue,
html.theme-neo .user-form-select__input,
html.theme-neo .user-form-select__input-container {
    color: var(--nb-ink) !important;
    font-family: 'IBM Plex Sans', sans-serif;
}

html.theme-neo .user-form-select__indicator-separator,
html.theme-neo .custom-select [class*='indicatorSeparator'] {
    display: none !important;
}

html.theme-neo .user-form-select__dropdown-indicator,
html.theme-neo .user-form-select__clear-indicator,
html.theme-neo .custom-select [class*='indicatorContainer'] {
    color: var(--nb-ink) !important;
}

html.theme-neo .user-form-select__menu,
html.theme-neo .custom-select [class$='-menu'] {
    background: var(--nb-bg) !important;
    border: var(--nb-border) !important;
    border-radius: var(--nb-radius) !important;
    box-shadow: var(--nb-shadow) !important;
    overflow: hidden;
}

html.theme-neo .user-form-select__option,
html.theme-neo .custom-select [class$='-option'] {
    background: transparent !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .user-form-select__option--is-focused,
html.theme-neo .user-form-select__option--is-selected,
html.theme-neo .custom-select [class*='-option']:hover {
    background: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .form-checkbox,
html.theme-neo .form-radio {
    border: 2px solid var(--nb-ink);
}

html.theme-neo .form-checkbox {
    border-radius: var(--nb-radius);
}

/* --- Dropdown --- */
html.theme-neo .dropdown ul {
    background: var(--nb-bg);
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
    color: var(--nb-ink);
}

html.theme-neo .dropdown ul li > a:hover,
html.theme-neo .dropdown ul li > button:hover {
    background: var(--nb-cream);
    color: var(--nb-ink);
}

/* --- Tables --- */
html.theme-neo table thead tr,
html.theme-neo table tfoot tr {
    background: var(--nb-cream) !important;
}

html.theme-neo table thead tr th,
html.theme-neo table tfoot tr th {
    color: var(--nb-ink);
    border-bottom: var(--nb-border);
}

html.theme-neo table tbody tr {
    border-bottom: 2px solid #d1d5db;
}

html.theme-neo table.table-hover tbody tr:hover {
    background: var(--nb-cream) !important;
}

/* --- Header / sidebar --- */
html.theme-neo header > div {
    box-shadow: none;
}

html.theme-neo header .shadow-sm > div:first-child,
html.theme-neo header > .shadow-sm > div {
    background: var(--nb-bg);
    border-bottom: var(--nb-border);
}

html.theme-neo .sidebar {
    box-shadow: 4px 0 0 var(--nb-ink);
    border-right: var(--nb-border);
}

html.theme-neo .sidebar .h-full.bg-white {
    background: var(--nb-bg) !important;
}

html.theme-neo .sidebar .nav-item > button,
html.theme-neo .sidebar .nav-item > a {
    border-radius: var(--nb-radius);
    color: var(--nb-ink);
}

html.theme-neo .sidebar .nav-item > button:hover,
html.theme-neo .sidebar .nav-item > a:hover {
    background: var(--nb-cream);
    color: var(--nb-ink);
}

html.theme-neo .sidebar .nav-item > button.active,
html.theme-neo .sidebar .nav-item > a.active {
    background: var(--nb-cream);
    color: var(--nb-ink);
    border: var(--nb-border);
    box-shadow: 3px 3px 0 var(--nb-ink);
}

html.theme-neo .sidebar ul.sub-menu li a:hover,
html.theme-neo .sidebar ul.sub-menu li button:hover,
html.theme-neo .sidebar ul.sub-menu li a.active,
html.theme-neo .sidebar ul.sub-menu li button.active {
    color: var(--nb-ink);
}

html.theme-neo .sidebar ul.sub-menu li a.active::before,
html.theme-neo .sidebar ul.sub-menu li button.active::before,
html.theme-neo .sidebar ul.sub-menu li a:hover::before,
html.theme-neo .sidebar ul.sub-menu li button:hover::before {
    background: var(--nb-ink);
}

html.theme-neo .navbar-floating header {
    background: rgb(255 255 255 / 0.92);
}

/* Appearance drawer */
html.theme-neo nav.fixed.max-w-\[400px\],
html.theme-neo .fixed.bottom-0.top-0.z-\[51\] {
    border-left: var(--nb-border);
    box-shadow: -4px 0 0 var(--nb-ink);
}

/* Order / affiliate / product status tabs (hardcoded gray) */
html.theme-neo .bg-\[\#f6f7f8\],
html.theme-neo .bg-primary-light {
    background-color: var(--nb-cream) !important;
}

html.theme-neo .\!bg-white {
    background-color: var(--nb-bg) !important;
}

html.theme-neo .border-t-2.border-transparent {
    font-family: 'Space Grotesk', sans-serif;
}

/* --- Hardcoded Tailwind blues / soft chrome --- */
html.theme-neo .bg-blue-50,
html.theme-neo .bg-blue-100,
html.theme-neo .hover\:bg-blue-100:hover,
html.theme-neo .hover\:bg-blue-200:hover {
    background-color: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .bg-blue-300,
html.theme-neo .bg-blue-400,
html.theme-neo .bg-blue-500,
html.theme-neo .bg-blue-600,
html.theme-neo .bg-blue-700,
html.theme-neo .bg-blue-800,
html.theme-neo .hover\:bg-blue-400:hover,
html.theme-neo .hover\:bg-blue-600:hover,
html.theme-neo .hover\:bg-blue-700:hover,
html.theme-neo .hover\:bg-blue-800:hover {
    background-color: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
    border-color: var(--nb-ink);
}

html.theme-neo .text-blue-500,
html.theme-neo .text-blue-600,
html.theme-neo .text-blue-700,
html.theme-neo .text-blue-800,
html.theme-neo .text-blue-900,
html.theme-neo .hover\:text-blue-700:hover {
    color: var(--nb-ink) !important;
}

html.theme-neo .border-blue-300,
html.theme-neo .border-blue-400,
html.theme-neo .border-blue-400\/20,
html.theme-neo .border-blue-500 {
    border-color: var(--nb-ink) !important;
}

html.theme-neo .focus\:border-blue-500:focus,
html.theme-neo .focus\:ring-blue-300:focus,
html.theme-neo .focus\:ring-blue-500:focus,
html.theme-neo .peer-focus\:ring-blue-300:focus {
    --tw-ring-color: var(--nb-ink);
    border-color: var(--nb-ink) !important;
}

html.theme-neo .rounded-lg,
html.theme-neo .rounded-xl,
html.theme-neo .rounded-2xl,
html.theme-neo .rounded-md {
    border-radius: var(--nb-radius) !important;
}

html.theme-neo .shadow,
html.theme-neo .shadow-sm,
html.theme-neo .shadow-lg,
html.theme-neo .shadow-xl {
    box-shadow: var(--nb-shadow) !important;
}

html.theme-neo .ring-1,
html.theme-neo .ring-gray-300 {
    --tw-ring-color: var(--nb-ink);
}

/* Toggles that used blue-600 */
html.theme-neo .peer-checked\:bg-blue-600:checked,
html.theme-neo .peer:checked ~ .peer-checked\:bg-blue-600,
html.theme-neo .peer:checked + .peer-checked\:bg-blue-600 {
    background-color: var(--nb-ink) !important;
}

/* --- Plugin / third-party accents --- */
html.theme-neo .tippy-box[data-theme~='primary'] {
    background-color: var(--nb-ink);
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
}

html.theme-neo .tippy-box[data-theme~='primary'][data-placement^='top'] > .tippy-arrow::before {
    border-top-color: var(--nb-ink);
}

html.theme-neo .swiper-button-next,
html.theme-neo .swiper-button-prev {
    color: var(--nb-ink);
}

html.theme-neo #slider3 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--nb-ink);
}

html.theme-neo input[type='range']::-webkit-slider-thumb,
html.theme-neo input[type='range']:active::-webkit-slider-thumb,
html.theme-neo .noUi-connect {
    background: var(--nb-ink) !important;
}

html.theme-neo .editor-toolbar button.active,
html.theme-neo .editor-toolbar button:hover {
    color: var(--nb-ink);
}

html.theme-neo .custom-file-container label,
html.theme-neo .custom-file-container__custom-file__custom-file-control__button {
    color: var(--nb-ink);
}

html.theme-neo .custom-file-container__custom-file__custom-file-control {
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow-sm);
}

html.theme-neo .mantine-Pagination-item {
    border-radius: var(--nb-radius) !important;
    border: var(--nb-border) !important;
    font-family: 'IBM Plex Sans', sans-serif;
    background: var(--nb-bg) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .mantine-Pagination-item[data-active] {
    background: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .swal2-popup {
    border: var(--nb-border);
    border-radius: var(--nb-radius);
    box-shadow: var(--nb-shadow);
}

html.theme-neo .swal2-popup .swal2-styled {
    border-radius: var(--nb-radius) !important;
    box-shadow: var(--nb-shadow) !important;
    border: var(--nb-border) !important;
}

html.theme-neo .swal2-popup .swal2-styled.swal2-cancel {
    background-color: var(--nb-bg) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .swal2-popup .swal2-styled.swal2-confirm {
    background-color: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .swal2-icon.swal2-info {
    color: var(--nb-ink) !important;
}

html.theme-neo .calendar-wrapper .fc-button-primary,
html.theme-neo .calendar-wrapper .fc-button-primary:disabled {
    color: var(--nb-ink) !important;
    border-color: var(--nb-ink) !important;
}

html.theme-neo .calendar-wrapper .fc-button-primary:not(:disabled):hover,
html.theme-neo .calendar-wrapper .fc-button-primary:not(:disabled).fc-button-active {
    background-color: var(--nb-cream) !important;
    color: var(--nb-ink) !important;
}

html.theme-neo .calendar-wrapper .fc-daygrid-event.primary,
html.theme-neo .calendar-wrapper .fc-timegrid-event.primary,
html.theme-neo .calendar-wrapper .fc-daygrid-event.primary:hover,
html.theme-neo .calendar-wrapper .fc-timegrid-event.primary:hover {
    background-color: var(--nb-ink);
    border-color: var(--nb-ink);
}

html.theme-neo .calendar-wrapper .fc-button.fc-prev-button:hover,
html.theme-neo .calendar-wrapper .fc-button.fc-next-button:hover {
    color: var(--nb-ink) !important;
    border-color: var(--nb-ink) !important;
}

html.theme-neo .floating-menu {
    border: 2px solid var(--nb-ink) !important;
    border-radius: var(--nb-radius) !important;
    box-shadow: var(--nb-shadow) !important;
}

/* Gift card / coupon voucher previews use CSS modules (not Tailwind rounded-lg / shadow-xl),
   so they are not restyled here. Do not add descendant resets — they would wipe capture transforms. */
