@import "tailwindcss"; @variant dark (&:where(.dark, .dark *)); /* ==================== Custom Select/Dropdown Styles ==================== */ /* Base select styling */ select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2371717a'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 0.5rem center; background-size: 1rem; padding-right: 2rem; } /* Option styling - works in WebView/Chromium */ select option { background-color: #18181b; color: #e4e4e7; padding: 12px 16px; font-size: 13px; border: none; } select option:hover, select option:focus { background-color: #3730a3 !important; color: white !important; } select option:checked { background: linear-gradient(0deg, #4f46e5 0%, #4f46e5 100%); color: white; font-weight: 500; } select option:disabled { color: #52525b; background-color: #18181b; } /* Optgroup styling */ select optgroup { background-color: #18181b; color: #a1a1aa; font-weight: 600; font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; padding: 8px 12px 4px; } /* Select focus state */ select:focus { outline: none; border-color: #6366f1; box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2); } /* ==================== Custom Scrollbar (Global) ==================== */ /* Firefox */ * { scrollbar-width: thin; scrollbar-color: #3f3f46 transparent; } /* Webkit browsers */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background-color: #3f3f46; border-radius: 4px; border: 2px solid transparent; background-clip: content-box; } ::-webkit-scrollbar-thumb:hover { background-color: #52525b; } ::-webkit-scrollbar-corner { background: transparent; } /* ==================== Input/Form Element Consistency ==================== */ input[type="text"], input[type="number"], input[type="password"], input[type="email"], textarea { background-color: rgba(0, 0, 0, 0.4); border: 1px solid rgba(255, 255, 255, 0.1); transition: border-color 0.2s ease, box-shadow 0.2s ease; } input[type="text"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="email"]:focus, textarea:focus { border-color: rgba(99, 102, 241, 0.5); box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.1); outline: none; } /* Number input - hide spinner */ input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } input[type="number"] { -moz-appearance: textfield; } /* ==================== Checkbox Styling ==================== */ input[type="checkbox"] { appearance: none; width: 16px; height: 16px; border: 1px solid #3f3f46; border-radius: 4px; background-color: #18181b; cursor: pointer; position: relative; transition: all 0.15s ease; } input[type="checkbox"]:hover { border-color: #52525b; } input[type="checkbox"]:checked { background-color: #4f46e5; border-color: #4f46e5; } input[type="checkbox"]:checked::after { content: ''; position: absolute; left: 5px; top: 2px; width: 4px; height: 8px; border: solid white; border-width: 0 2px 2px 0; transform: rotate(45deg); } input[type="checkbox"]:focus { outline: none; box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.3); }