.field { position: relative; display: flex; flex-direction: column; gap: 6px; } .label { font-size: 12px; color: var(--text-secondary); font-weight: 600; letter-spacing: 0.08em; } .trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; height: 48px; background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 10px; color: var(--text-primary); font-size: 14px; font-family: var(--font-sans); text-align: left; padding: 0 16px; cursor: pointer; outline: none; transition: border-color 0.2s, box-shadow 0.2s; } .trigger:disabled { opacity: 0.5; cursor: not-allowed; } .trigger:focus-visible, .triggerOpen { border-color: var(--interactive); box-shadow: 0 0 0 3px rgba(74, 109, 255, 0.15); } .value { color: var(--text-primary); } .placeholder { color: var(--text-secondary); } .arrow { flex-shrink: 0; color: var(--text-secondary); font-size: 12px; transition: transform 0.2s; } .arrowOpen { transform: rotate(180deg); } .dropdown { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 20; margin: 0; padding: 6px; list-style: none; background: var(--bg-mid); border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 10px; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45); max-height: 280px; overflow-y: auto; } .option { padding: 11px 12px; border-radius: 8px; font-size: 14px; color: var(--text-primary); cursor: pointer; transition: background-color 0.15s; } .option:hover { background: rgba(255, 255, 255, 0.08); } .optionSelected { background: rgba(91, 61, 184, 0.35); } .optionSelected:hover { background: rgba(91, 61, 184, 0.45); }