/* --- Custom UI Dropdown --- */ .custom-dropdown { position: relative; width: 100%; } .custom-dropdown-trigger { width: 100%; padding: 14px 18px; background: white; border: 1px solid #e2e8f0; border-radius: 4px; font-family: inherit; font-size: 0.9rem; font-weight: 700; color: var(--primary-blue); cursor: pointer; display: flex; justify-content: space-between; align-items: center; transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); } .custom-dropdown-trigger:hover { border-color: var(--secondary-gold); background: #fffdf5; } .custom-dropdown-trigger:focus-visible { outline: none; border-color: var(--primary-blue); box-shadow: 0 0 0 3px rgba(0, 49, 80, 0.08); } .custom-dropdown-trigger .trigger-arrow { font-size: 0.8rem; transition: transform 0.25s ease; color: var(--primary-blue); } .custom-dropdown.active .custom-dropdown-trigger .trigger-arrow { transform: rotate(180deg); } .custom-dropdown.active .custom-dropdown-trigger { border-color: var(--primary-blue); box-shadow: 0 0 0 3px rgba(0, 49, 80, 0.08); } .custom-dropdown-menu { position: absolute; top: calc(100% + 6px); left: 0; right: 0; background: white; border: 1px solid #e2e8f0; border-radius: 6px; box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1); z-index: 100; opacity: 0; visibility: hidden; transform: translateY(-8px); transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1); overflow: hidden; max-height: 300px; overflow-y: auto; } .custom-dropdown.active .custom-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); } .custom-dropdown-item { padding: 12px 18px; font-size: 0.88rem; font-weight: 600; color: #475569; cursor: pointer; transition: all 0.15s ease; display: flex; align-items: center; justify-content: space-between; } .custom-dropdown-item:hover { background: #f1f5f9; color: var(--primary-blue); } .custom-dropdown-item.active { background: #f0f7ff; color: var(--primary-blue); font-weight: 700; } /* Tick mark for selected item */ .custom-dropdown-item.active::after { content: "\f00c"; font-family: "Font Awesome 5 Free"; font-weight: 900; font-size: 0.75rem; color: var(--primary-blue); } /* --- Filter Skeleton Loading --- */ .filter-skeleton { display: flex; flex-direction: column; gap: 8px; } .filter-skeleton-item { height: 48px; border-radius: 4px; background: linear-gradient(90deg, #f1f5f9 25%, #e2e8f0 50%, #f1f5f9 75%); background-size: 200% 100%; animation: skeleton-shimmer 1.5s ease-in-out infinite; } .filter-skeleton-item.short { width: 70%; } @keyframes skeleton-shimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } .sidebar-info-box { background: #f1f5f9; padding: 20px; border-radius: 4px; display: flex; gap: 12px; } .sidebar-info-box i { color: var(--primary-blue); margin-top: 3px; } .sidebar-info-box p { font-size: 0.82rem; color: #64748b; line-height: 1.5; }