/* TomSelect Base Styles (Inlined from application_v2.css) - WITH MODIFICATIONS FOR PADDING/FONT-SIZE */

.ts-control.plugin-drag_drop.multi>.ts-input>div.ui-sortable-placeholder{visibility:visible!important;background:#f2f2f2!important;background:rgba(0,0,0,.06)!important;border:0!important;box-shadow:inset 0 0 12px 4px #fff}.ts-control.plugin-drag_drop .ui-sortable-placeholder:after{content:"!";visibility:hidden}.ts-control.plugin-drag_drop .ui-sortable-helper{box-shadow:0 2px 5px rgba(0,0,0,.2)}.plugin-checkbox_options .option input{margin-right:.5rem}.plugin-clear_button .items{padding-right:calc(1em + 18px)!important}.plugin-clear_button .clear-button{opacity:0;position:absolute;top:8px;right:2px;margin-right:0!important;background:transparent!important;transition:opacity .5s}.plugin-clear_button .has-items.focus .clear-button,.plugin-clear_button:hover .has-items .clear-button{opacity:1}.ts-control .dropdown-header{position:relative;padding:10px 8px;border-bottom:1px solid #d0d0d0;background:#f8f8f8;border-radius:3px 3px 0 0}.ts-control .dropdown-header-close{position:absolute;right:8px;top:50%;color:#303030;opacity:.4;margin-top:-12px;line-height:20px;font-size:20px!important}.ts-control .dropdown-header-close:hover{color:#000}.plugin-dropdown_input .ts-input.focus{box-shadow:none;border:1px solid #d0d0d0}.plugin-dropdown_input .dropdown-input{border:solid #d0d0d0;border-width:0 0 1px;display:block;padding:8px;box-shadow:none;width:100%;background:transparent}.ts-control.plugin-input_autogrow .ts-input.has-items>input{min-width:0}.ts-control.plugin-input_autogrow .ts-input.focus.has-items>input{flex:none}.ts-dropdown.plugin-optgroup_columns .ts-dropdown-content{display:flex}.ts-dropdown.plugin-optgroup_columns .optgroup{border-right:1px solid #f2f2f2;border-top:0;flex-grow:1;flex-basis:0;min-width:0}.ts-dropdown.plugin-optgroup_columns .optgroup:last-child{border-right:0}.ts-dropdown.plugin-optgroup_columns .optgroup:before{display:none}.ts-dropdown.plugin-optgroup_columns .optgroup-header{border-top:0}.ts-control.plugin-remove_button .item{display:inline-flex;align-items:center;padding-right:0!important}.ts-control.plugin-remove_button .item .remove{color:inherit;text-decoration:none;vertical-align:middle;display:inline-block;padding:2px 6px;border-left:1px solid #d0d0d0;border-radius:0 2px 2px 0;box-sizing:border-box;margin-left:6px}.ts-control.plugin-remove_button .item .remove:hover{background:rgba(0,0,0,.05)}.ts-control.plugin-remove_button .item.active .remove{border-left-color:#cacaca}.ts-control.plugin-remove_button .disabled .item .remove:hover{background:none}.ts-control.plugin-remove_button .disabled .item .remove{border-left-color:#fff}.ts-control.plugin-remove_button .remove-single{position:absolute;right:0;top:0;font-size:23px}.ts-control{position:relative}.ts-dropdown,.ts-input,.ts-input input{color:#303030;font-family:inherit;font-size:13px;line-height:18px;font-smoothing:inherit}.ts-control.single .ts-input.input-active,.ts-input{background:#fff;cursor:text}.ts-input{border:1px solid #d0d0d0;padding:8px;width:100%;overflow:hidden;position:relative;z-index:1;box-sizing:border-box;box-shadow:none;border-radius:3px;display:flex;flex-wrap:wrap}.ts-control.multi .ts-input.has-items{padding:6px 8px 3px}.ts-input.full{background-color:#fff}.ts-input.disabled,.ts-input.disabled *{cursor:default!important}.ts-input.focus{box-shadow:none}.ts-input.dropdown-active{border-radius:3px 3px 0 0}.ts-input>*{vertical-align:baseline;display:inline-block}.ts-control.multi .ts-input>div{cursor:pointer;margin:0 3px 3px 0;padding:2px 6px;background:#f2f2f2;color:#303030;border:0 solid #d0d0d0}.ts-control.multi .ts-input>div.active{background:#e8e8e8;color:#303030;border:0 solid #cacaca}.ts-control.multi .ts-input.disabled>div,.ts-control.multi .ts-input.disabled>div.active{color:#7d7c7c;background:#fff;border:0 solid #fff}.ts-input>input{flex:1 1 auto;min-width:7rem;display:inline-block!important;padding:0!important;min-height:0!important;max-height:none!important;max-width:100%!important;margin:0!important;text-indent:0!important;border:0!important;background:none!important;line-height:inherit!important;-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important;box-shadow:none!important}.ts-input>input::-ms-clear{display:none}.ts-input>input:focus{outline:none!important}.ts-input.has-items>input{margin:0 4px!important}.ts-input:after{content:" ";display:block;clear:left}.ts-input.dropdown-active:before{content:" ";display:block;position:absolute;background:#f0f0f0;height:1px;bottom:0;left:0;right:0}.ts-input.rtl{text-align:right}.ts-input.rtl.single .ts-input:after{left:15px;right:auto}.ts-input.rtl .ts-input>input{margin:0 4px 0 -2px!important}.ts-input .ts-input.disabled{opacity:.5;background-color:#fafafa}.input-hidden .ts-input>input{opacity:0}.ts-dropdown{position:absolute;top:100%;left:0;width:100%;z-index:10;background:#fff;margin:.25rem 0 0;border:1px solid #d0d0d0;border-top:0;box-sizing:border-box;box-shadow:0 1px 3px rgba(0,0,0,.1);border-radius:0 0 3px 3px}.ts-dropdown [data-selectable]{cursor:pointer;overflow:hidden}.ts-dropdown [data-selectable] .highlight{background:rgba(125,168,208,.2);border-radius:1px}.ts-dropdown .create,.ts-dropdown .no-results,.ts-dropdown .optgroup-header,.ts-dropdown .option{padding:0.5rem 0.75rem;font-size:0.875rem;line-height:1.25rem}.ts-dropdown .option,.ts-dropdown [data-disabled],.ts-dropdown [data-disabled] [data-selectable].option{cursor:inherit;opacity:.5}.ts-dropdown [data-selectable].option{opacity:1;cursor:pointer}.ts-dropdown .optgroup:first-child .optgroup-header{border-top:0}.ts-dropdown .optgroup-header{color:#303030;background:#fff;cursor:default}.ts-dropdown .active,.ts-dropdown .create:hover,.ts-dropdown .option:hover{background-color:#f5fafd;color:#495c68}.ts-dropdown .active.create,.ts-dropdown .create:hover.create,.ts-dropdown .option:hover.create{color:#495c68}.ts-dropdown .create{color:rgba(48,48,48,.5)}.ts-dropdown .spinner{display:inline-block;width:30px;height:30px;margin:5px 8px}.ts-dropdown .spinner:after{content:" ";display:block;width:24px;height:24px;margin:3px;border-radius:50%;border-color:#d0d0d0 transparent;border-style:solid;border-width:5px;animation:lds-dual-ring 1.2s linear infinite}@keyframes lds-dual-ring{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.ts-dropdown-content{overflow-y:auto;overflow-x:hidden;max-height:200px;overflow-scrolling:touch}

/* TomSelect Dark Mode Overrides (Revised with !important) */
.dark .ts-control,
.dark .ts-input { /* Target both .ts-control and .ts-input for background/border */
  background-color: #374151 !important; /* gray-700 */
  border-color: #4b5563 !important; /* gray-600 */
}

/* The actual <input> element inside for text and placeholder */
.dark .ts-control input,
.dark .ts-input input {
  color: #e5e7eb !important; /* gray-200 for text */
  background-color: transparent !important; /* Ensure it's transparent over its parent's dark background */
}

.dark .ts-control input::placeholder,
.dark .ts-input input::placeholder {
  color: #9ca3af !important; /* gray-400 for placeholder */
}

/* Disabled states */
.dark .ts-control.disabled,
.dark .ts-input.disabled {
  background-color: #4b5563 !important; /* gray-600 */
  border-color: #6b7280 !important; /* gray-500 */
  opacity: 0.7 !important;
}
.dark .ts-control.disabled input,
.dark .ts-input.disabled input {
  color: #9ca3af !important; /* gray-400 */
  background-color: transparent !important;
  cursor: not-allowed !important;
}
.dark .ts-control.disabled input::placeholder,
.dark .ts-input.disabled input::placeholder {
  color: #6b7280 !important; /* gray-500 */
}

/* Dropdown styles */
.dark .ts-dropdown {
  background-color: #374151; /* gray-700 */
  border-color: #4b5563; /* gray-600 */
  /* Text color for dropdown options is now handled by the modified base style or specific .option override */
}

.dark .ts-dropdown .option {
  color: #e5e7eb; /* gray-200 */
}

.dark .ts-dropdown .option:hover,
.dark .ts-dropdown .active {
  background-color: #4b5563; /* gray-600 */
  color: #f3f4f6; /* gray-100 */
}

.dark .ts-dropdown .create {
  color: #e5e7eb; /* gray-200 */
}

/* Selected items (pills) */
.dark .ts-control .item {
  background-color: #4f46e5; /* indigo-600 */
  color: #ffffff;
  border: 1px solid #4338ca; /* indigo-700 */
}

/* Multi-select item remove button */
.dark .ts-control .item .remove {
  border-left-color: #4338ca; /* indigo-700 */
  color: #e0e7ff; /* indigo-200 for the x */
}
.dark .ts-control .item .remove:hover {
  background: #3730a3; /* indigo-800 */
}
