/* --- tt-icon-select.css --- */ .tt-icon-select-modern { position: relative; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; } .tt-icon-select-modern .tt-select-trigger { display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 0.5rem 0.75rem; font-size: 1rem; line-height: 1.5; color: #495057; background-color: #fff; border: 1px solid #ced4da; border-radius: 0.25rem; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; cursor: pointer; text-align: left; } .tt-icon-select-modern .tt-select-trigger.sm { padding: 0.25rem 0.5rem; font-size: 0.875rem; border-radius: 0.2rem; } .tt-icon-select-modern .tt-select-trigger:hover { border-color: #80bdff; } .tt-icon-select-modern .tt-select-trigger.open { border-color: #80bdff; box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); } .tt-icon-select-modern .trigger-text { display: flex; align-items: center; gap: 0.5rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex-grow: 1; } .tt-icon-select-modern .trigger-text.placeholder { color: #6c757d; } .tt-icon-select-modern .trigger-arrow { margin-left: 8px; transition: transform 0.2s ease; } .tt-icon-select-modern .tt-select-trigger.open .trigger-arrow { transform: rotate(180deg); } .tt-icon-select-modern .tt-select-dropdown { position: absolute; top: calc(100% + 4px); left: 0; /* --- FIX: Allows dropdown to grow --- */ min-width: 100%; width: max-content; /* ------------------------------------ */ z-index: 1050; background-color: #fff; border-radius: 0.3rem; box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); opacity: 0; transform: translateY(-10px); visibility: hidden; transition: opacity 0.15s ease, transform 0.15s ease; } .tt-icon-select-modern .tt-select-dropdown.show { opacity: 1; transform: translateY(0); visibility: visible; } .tt-icon-select-modern .dropdown-header { display: none; } .tt-icon-select-modern .options-list { list-style: none; padding: 0.5rem 0; margin: 0; max-height: 250px; overflow-y: auto; } /* Improved scrollbar styling */ .tt-icon-select-modern .options-list::-webkit-scrollbar { width: 8px; } .tt-icon-select-modern .options-list::-webkit-scrollbar-track { background: #f1f1f1; } .tt-icon-select-modern .options-list::-webkit-scrollbar-thumb { background: #c1c1c1; border-radius: 4px; } .tt-icon-select-modern .options-list::-webkit-scrollbar-thumb:hover { background: #a8a8a8; } .tt-icon-select-modern .option-item { display: flex; align-items: center; justify-content: space-between; padding: 0.5rem 1rem; cursor: pointer; transition: background-color 0.15s ease; user-select: none; white-space: nowrap; } .tt-icon-select-modern .option-item:hover { background-color: #f8f9fa; } .tt-icon-select-modern .option-item.selected { background-color: #e2f0ff; font-weight: 600; color: #0056b3; } .tt-icon-select-modern .option-label { display: flex; align-items: center; gap: 0.75rem; } .tt-icon-select-modern .option-label i { width: 20px; text-align: center; } .tt-icon-select-modern .option-checkmark { color: #0056b3; } /* Mobile Compliance */ @media (max-width: 768px) { .tt-icon-select-modern .tt-select-trigger, .tt-icon-select-modern .option-item { font-size: 1.1rem; } .tt-icon-select-modern .tt-select-dropdown.show { position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; border-radius: 0; display: flex; flex-direction: column; background-color: #f8f9fa; transform: none; } .tt-icon-select-modern .dropdown-header { display: flex; align-items: center; justify-content: space-between; padding: 1rem; background-color: #fff; border-bottom: 1px solid #dee2e6; font-size: 1.2rem; font-weight: 600; } .tt-icon-select-modern .close-btn { font-size: 1.5rem; cursor: pointer; line-height: 1; border: none; background: none; padding: 0 0.5rem; } .tt-icon-select-modern .options-list { max-height: none; flex-grow: 1; } }