        body { font-family: 'Inter', sans-serif; }
        .glass {
            background: rgba(255, 255, 255, 0.7);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border: 1px solid rgba(255, 255, 255, 0.18);
        }
        .dark .glass {
            background: rgba(15, 23, 42, 0.7);
            border: 1px solid rgba(255, 255, 255, 0.05);
        }
        /* Custom scrollbar */
        ::-webkit-scrollbar { width: 8px; height: 8px; }
        ::-webkit-scrollbar-track { background: transparent; }
        ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
        .dark ::-webkit-scrollbar-thumb { background: #334155; }
        ::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
        
        /* Hide scrollbars */
        .no-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .no-scrollbar {
            -ms-overflow-style: none;  /* IE and Edge */
            scrollbar-width: none;  /* Firefox */
            -webkit-overflow-scrolling: touch;
        }
        
        /* Native inputs styling (date, time, etc.) */
        html.dark { color-scheme: dark; }
        html:not(.dark) { color-scheme: light; }
        
        /* Universal TomSelect Overrides (Modern & Stylish) */
        .ts-wrapper { padding: 0 !important; border: none !important; background: transparent !important; box-shadow: none !important; }
        .ts-control { 
            border-radius: 0.75rem !important; 
            border: 1px solid #e2e8f0 !important; 
            background: #f8fafc !important; 
            padding: 0.6rem 1rem !important; 
            font-size: 0.875rem !important; 
            box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05) !important;
            transition: all 0.2s ease !important;
            min-height: 42px !important;
            display: flex !important;
            align-items: center !important;
        }
        .ts-wrapper.single .ts-control:after {
            border-color: #94a3b8 transparent transparent transparent !important;
            border-width: 5px 4px 0 4px !important;
            right: 14px !important;
        }
        .ts-wrapper.single.input-active .ts-control:after {
            border-color: transparent transparent #94a3b8 transparent !important;
            border-width: 0 4px 5px 4px !important;
        }
        .ts-wrapper.input-active .ts-control, .ts-control:focus {
            border-color: #6366f1 !important;
            box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2) !important;
        }
        .ts-dropdown { 
            border-radius: 0.75rem !important; 
            border: 1px solid #e2e8f0 !important; 
            background: rgba(255, 255, 255, 0.95) !important; 
            backdrop-filter: blur(12px) !important;
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1) !important; 
            margin-top: 6px !important; 
            padding: 6px !important;
            overflow: hidden !important;
        }
        .ts-dropdown .ts-dropdown-content { padding: 0 !important; scrollbar-width: thin; }
        .ts-dropdown .option { 
            padding: 8px 12px !important; 
            border-radius: 0.5rem !important; 
            margin-bottom: 2px !important; 
            font-size: 0.875rem !important; 
            transition: all 0.15s ease !important;
            color: #475569 !important;
            cursor: pointer !important;
        }
        .ts-dropdown .option:last-child { margin-bottom: 0 !important; }
        .ts-dropdown .option:hover, .ts-dropdown .active { 
            background-color: #eff6ff !important;
            color: #2563eb !important;
            font-weight: 500 !important;
        }
        .ts-control > input { font-size: 0.875rem !important; }
        
        /* Dark Mode TomSelect */
        .dark .ts-control { 
            background: #1e293b !important; 
            border-color: #334155 !important; 
            color: #f8fafc !important; 
        }
        .dark .ts-wrapper.input-active .ts-control, .dark .ts-control:focus {
            border-color: #6366f1 !important;
            box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.25) !important;
        }
        .dark .ts-control > input { color: #f8fafc !important; }
        .dark .ts-dropdown { 
            background: rgba(17, 24, 39, 0.95) !important; 
            border-color: #334155 !important; 
            box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important; 
        }
        .dark .ts-dropdown .option { color: #cbd5e1 !important; }
        .dark .ts-dropdown .option:hover, .dark .ts-dropdown .active { 
            background-color: rgba(99, 102, 241, 0.15) !important; 
            color: #818cf8 !important; 
        }
        .dark .ts-wrapper.multi .ts-control > div { 
            background: #334155 !important; 
            color: #f8fafc !important; 
            border: 1px solid #475569 !important; 
            border-radius: 6px !important;
            padding: 2px 8px !important;
        }
        /* Universal Flatpickr Overrides (Modern Light Theme + Layout Fixes) */
        .flatpickr-calendar { background: #ffffff !important; border: 1px solid #e2e8f0 !important; box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1) !important; border-radius: 16px !important; padding: 10px 0 !important; }
        .flatpickr-calendar.arrowTop:before { border-bottom-color: #e2e8f0 !important; }
        .flatpickr-calendar.arrowTop:after { border-bottom-color: #ffffff !important; }
        .flatpickr-calendar.arrowBottom:before { border-top-color: #e2e8f0 !important; }
        .flatpickr-calendar.arrowBottom:after { border-top-color: #ffffff !important; }
        .flatpickr-innerContainer, .flatpickr-days, .flatpickr-weekwrapper .flatpickr-weeks { border: none !important; }
        .flatpickr-month { color: #0f172a !important; fill: #0f172a !important; }
        .flatpickr-months { margin-bottom: 10px !important; }
        /* Minimal Layout Fixes for Tailwind Forms Interference */
        /* Minimal Layout Fixes for Tailwind Forms Interference */
        .flatpickr-calendar select.flatpickr-monthDropdown-months {
            appearance: none !important;
            -webkit-appearance: none !important;
            padding: 0 16px 0 0 !important;
            background: transparent !important;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
            background-position: right center !important;
            background-repeat: no-repeat !important;
            background-size: 14px !important;
            width: auto !important;
            border: none !important;
            box-shadow: none !important;
        }
        .flatpickr-calendar .numInputWrapper {
            width: auto !important;
            display: inline-block !important;
            margin-left: 8px !important;
        }
        .flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month {
            top: 12px !important;
        }
        .flatpickr-calendar input.cur-year {
            width: 5ch !important;
            padding: 0 !important;
            margin: 0 !important;
            border: none !important;
            background: transparent !important;
            box-shadow: none !important;
            display: inline-block !important;
        }
        
        span.flatpickr-weekday { color: #64748b !important; font-weight: 600 !important; }
        .flatpickr-day { color: #334155 !important; border: none !important; border-radius: 8px !important; box-shadow: none !important; }
        .flatpickr-day:hover, .flatpickr-day:focus { background: #f1f5f9 !important; }
        .flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange { background: #f1f5f9 !important; box-shadow: none !important; border: none !important; }
        .flatpickr-day.today { border: 1px solid rgba(79, 70, 229, 0.3) !important; font-weight: bold !important; }
        .flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay { background: #4f46e5 !important; border: none !important; color: #fff !important; font-weight: bold !important; }
        .flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover { color: #cbd5e1 !important; background: transparent !important; }
        .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay { color: #94a3b8 !important; }
        .flatpickr-time { border-top: 1px solid #e2e8f0 !important; margin-top: 10px !important; }
        
        /* Dark Mode Flatpickr Enhancements */
        .dark .flatpickr-calendar { background: #1e293b !important; border: 1px solid #334155 !important; box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5) !important; }
        .dark .flatpickr-calendar.arrowTop:before { border-bottom-color: #334155 !important; }
        .dark .flatpickr-calendar.arrowTop:after { border-bottom-color: #1e293b !important; }
        .dark .flatpickr-calendar.arrowBottom:before { border-top-color: #334155 !important; }
        .dark .flatpickr-calendar.arrowBottom:after { border-top-color: #1e293b !important; }
        .dark .flatpickr-month { color: #f8fafc !important; fill: #f8fafc !important; }
        .dark .flatpickr-current-month .flatpickr-monthDropdown-months { color: #f8fafc !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23f8fafc' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; }
        .dark .flatpickr-current-month .flatpickr-monthDropdown-months:hover { background-color: rgba(255,255,255,0.05) !important; }
        .dark .flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month { background: #1e293b !important; color: #f8fafc !important; }
        .dark .flatpickr-current-month input.cur-year { color: #f8fafc !important; }
        .dark span.flatpickr-weekday { color: #94a3b8 !important; }
        .dark .flatpickr-day { color: #e2e8f0 !important; }
        .dark .flatpickr-day:hover, .dark .flatpickr-day:focus { background: #334155 !important; }
        .dark .flatpickr-day.inRange, .dark .flatpickr-day.prevMonthDay.inRange, .dark .flatpickr-day.nextMonthDay.inRange, .dark .flatpickr-day.today.inRange, .dark .flatpickr-day.prevMonthDay.today.inRange, .dark .flatpickr-day.nextMonthDay.today.inRange { background: #334155 !important; }
        .dark .flatpickr-day.flatpickr-disabled, .dark .flatpickr-day.flatpickr-disabled:hover { color: #475569 !important; }
        .dark .flatpickr-day.prevMonthDay, .dark .flatpickr-day.nextMonthDay { color: #64748b !important; }
        .dark .flatpickr-time { border-top: 1px solid #334155 !important; }
        .dark .flatpickr-time input { color: #f8fafc; background: transparent; font-weight: bold; }
        .dark .flatpickr-time input:hover, .dark .flatpickr-time .flatpickr-am-pm:hover, .dark .flatpickr-time input:focus, .dark .flatpickr-time .flatpickr-am-pm:focus { background: #334155; }
        .dark .flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: #94a3b8; }
        .dark .flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: #94a3b8; }
        .dark .flatpickr-time .numInputWrapper:hover span.arrowUp:after { border-bottom-color: #f8fafc; }
        .dark .flatpickr-time .numInputWrapper:hover span.arrowDown:after { border-top-color: #f8fafc; }
        .dark .flatpickr-time .flatpickr-am-pm { color: #f8fafc; }
        .pb-safe-bottom {
            padding-bottom: calc(0.5rem + env(safe-area-inset-bottom, 0px));
        }

        /* Custom Styled Checkboxes */
        input[type="checkbox"]:not(.sr-only):not(.custom-checkbox) {
            -webkit-appearance: none !important;
            appearance: none !important;
            background-color: #ffffff !important;
            margin: 0 !important;
            font: inherit !important;
            border: 1px solid #cbd5e1 !important;
            border-radius: 0.375rem !important;
            display: inline-grid !important;
            place-content: center !important;
            cursor: pointer !important;
            transition: 150ms all ease-in-out !important;
        }

        .dark input[type="checkbox"]:not(.sr-only):not(.custom-checkbox) {
            background-color: #0f131f !important;
            border-color: #334155 !important;
        }

        input[type="checkbox"]:not(.sr-only):not(.custom-checkbox)::before {
            content: "" !important;
            width: 0.55em !important;
            height: 0.55em !important;
            clip-path: polygon(14% 44%, 0 58%, 38% 96%, 100% 16%, 86% 2%, 38% 68%) !important;
            transform: scale(0) !important;
            transform-origin: center !important;
            transition: 120ms transform ease-in-out !important;
            background-color: #ffffff !important;
        }

        input[type="checkbox"]:not(.sr-only):not(.custom-checkbox):checked::before {
            transform: scale(1) !important;
        }

        input[type="checkbox"]:not(.sr-only):not(.custom-checkbox):checked {
            background-color: #6366f1 !important;
            border-color: #6366f1 !important;
        }

        input[type="checkbox"]:not(.sr-only):not(.custom-checkbox):focus {
            outline: none !important;
            box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.2) !important;
        }

        .dark input[type="checkbox"]:not(.sr-only):not(.custom-checkbox):focus {
            box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.25) !important;
        }