/* JS-rendered slash-command autocomplete dropdown.
   Used by chatInterop.mountSlashTextarea (chat-interop.js). */

.js-slash-dropdown {
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    max-height: 288px; /* 8 items * 36px */
    overflow-y: auto;
    background: rgba(20, 24, 33, 0.95);
    backdrop-filter: blur(24px);
    border: 1px solid var(--glass-border, rgba(255, 255, 255, 0.1));
    border-radius: 8px;
    margin-bottom: 4px;
    z-index: 100;
    animation: js-slash-fade-in 150ms ease;
}

@keyframes js-slash-fade-in {
    from { opacity: 0; transform: translateY(4px); }
    to { opacity: 1; transform: translateY(0); }
}

.js-slash-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    cursor: pointer;
    transition: background 100ms ease;
    min-height: 36px;
}

.js-slash-item:hover,
.js-slash-item.selected {
    background: rgba(230, 122, 46, 0.12);
}

.js-slash-name {
    color: var(--color-primary, #e67a2e);
    font-family: var(--font-mono, 'JetBrains Mono', monospace);
    font-size: 13px;
    font-weight: 500;
    white-space: nowrap;
}

.js-slash-type {
    font-size: 11px;
    padding: 1px 6px;
    border-radius: 4px;
    white-space: nowrap;
    flex-shrink: 0;
}

.js-slash-type.command {
    color: rgba(130, 177, 255, 0.9);
    background: rgba(130, 177, 255, 0.1);
}

.js-slash-type.skill {
    color: rgba(160, 230, 160, 0.9);
    background: rgba(160, 230, 160, 0.1);
}

.js-slash-desc {
    color: var(--text-muted, rgba(255, 255, 255, 0.45));
    font-size: 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
}

/* Wrapper must be positioned for the dropdown to anchor correctly.
   Applied by mountSlashTextarea to the textarea's parent. */
.js-slash-wrapper {
    position: relative;
}
