/* * GX SELECT — Custom Dropdown * Dark mode only, Flamingo Pink neon accents, medium glow */ .gx-select { position: relative; display: inline-block; width: 100%; max-width: 420px; font-size: 1rem; color: var(--color-text-primary); } /* The visible select box */ .gx-select-trigger { background: var(--color-bg-card); padding: 0.85rem 1rem; border-radius: var(--radius); border: 1px solid var(--color-border-soft); display: flex; justify-content: space-between; align-items: center; cursor: pointer; transition: border var(--transition), box-shadow var(--transition); box-shadow: 0 0 12px rgba(255, 79, 163, 0.08); } /* Label text inside select */ .gx-select-trigger span { opacity: 0.95; } /* Down arrow */ .gx-select-trigger svg { width: 18px; height: 18px; fill: var(--color-text-secondary); transition: transform var(--transition-fast), fill var(--transition-fast); } /* Hover */ .gx-select-trigger:hover { border-color: var(--color-brand); box-shadow: var(--shadow-glow-pink-soft); } .gx-select.open .gx-select-trigger { border-color: var(--color-brand); box-shadow: var(--shadow-glow-pink); } .gx-select.open .gx-select-trigger svg { transform: rotate(180deg); fill: var(--color-brand); } /* Dropdown Menu */ .gx-select-menu { position: absolute; left: 0; right: 0; top: calc(100% + 6px); background: var(--color-bg-elevated); border-radius: var(--radius); border: 1px solid var(--color-border-soft); box-shadow: 0 12px 34px rgba(0, 0, 0, 0.65), var(--shadow-glow-pink-soft); padding: 0.4rem 0; opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity var(--transition-fast), transform var(--transition-fast), visibility 0s linear 0.2s; z-index: 100; } .gx-select.open .gx-select-menu { opacity: 1; visibility: visible; transform: translateY(0px); transition-delay: 0s; } /* Menu items */ .gx-option { padding: 0.75rem 1rem; cursor: pointer; display: flex; align-items: center; transition: background var(--transition-fast), color var(--transition-fast); color: var(--color-text-secondary); font-size: 0.95rem; } /* Hover state */ .gx-option:hover { background: rgba(255, 79, 163, 0.08); color: var(--color-text-primary); } /* Selected option (highlighted) */ .gx-option.selected { color: var(--color-brand); font-weight: 600; } /* Divider (optional) */ .gx-select-divider { height: 1px; margin: 0.35rem 0; background: rgba(255, 255, 255, 0.08); } /* Disabled */ .gx-option.disabled { opacity: 0.35; cursor: not-allowed; }