/* GodsKids.ai — Custom CSS for LibreChat
   Hide UI elements not configurable via YAML/env */

/* ===== BRAND: Login button gradient ===== */
button[data-testid="login-button"],
button[aria-label="Continue"] {
    background: linear-gradient(135deg, #2563eb, #3b82f6) !important;
}
button[data-testid="login-button"]:hover,
button[aria-label="Continue"]:hover {
    background: linear-gradient(135deg, #1e3a5f, #2563eb) !important;
}

/* ===== ADD: Dropdown chevron to model selector ===== */
button[aria-label="Select a model"]::after {
    content: '';
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-left: 6px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.2s;
}

button[aria-label="Select a model"][aria-expanded="true"]::after {
    transform: rotate(180deg);
}

/* ===== HIDE: Fork button on messages ===== */
button[aria-label="Open Fork Menu"],
button[aria-label="Fork"],
button:has(.lucide-git-fork) {
    display: none !important;
}

/* ===== HIDE: Artifacts toggle ===== */
[class*="artifact"],
button[aria-label*="rtifact"],
label:has(input[id*="artifact"]),
div:has(> label:has(input[id*="artifact"])) {
    display: none !important;
}

/* ===== HIDE: Balance display ===== */
div[role="note"] {
    display: none !important;
}

/* ===== HIDE: Menu separators (leftover lines after hiding items) ===== */
[role="separator"][data-slot="dropdown-menu-separator"] {
    display: none !important;
}

/* ===== USER MENU: Show only Logout + Theme toggle ===== */
/* The JS MutationObserver hides individual items by text content (HIDE_TEXTS array).
   We do NOT use CSS to blanket-hide all menu items — that hides Logout too.
   Instead, JS handles hiding specific items (My Files, Settings, etc.) */

/* ===== LOGOUT WIDGET — lives inside the sidebar nav ===== */
#gk-logout-widget {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 10px 12px;
    margin-top: 4px;
    background: linear-gradient(135deg, #2563eb, #3b82f6);
    border: none;
    border-radius: 12px;
    color: #fff;
    font-family: Nunito, sans-serif;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s;
}
#gk-logout-widget:hover {
    background: linear-gradient(135deg, #1e3a5f, #2563eb);
}
#gk-logout-widget .gk-user-name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    text-align: left;
}
#gk-logout-widget .gk-divider {
    width: 1px;
    height: 16px;
    background: rgba(255,255,255,0.4);
    flex-shrink: 0;
}
#gk-logout-widget .gk-logout-label {
    white-space: nowrap;
    flex-shrink: 0;
}

/* ===== Theme toggle button in sidebar ===== */
#gk-theme-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 8px 12px;
    background: transparent;
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 10px;
    color: var(--text-secondary, #9ca3af);
    font-family: Nunito, sans-serif;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
}
#gk-theme-btn:hover {
    background: var(--surface-active-alt, rgba(255,255,255,0.05));
}

/* ===== HIDE: Conversation delete buttons (parental control — only parents can delete) ===== */
[role="menuitem"]:has(.lucide-trash),
[role="menuitem"]:has(.lucide-trash-2),
[role="menuitem"]:has(svg[class*="trash"]),
button[aria-label="Delete"],
button[aria-label="Delete conversation"] {
    display: none !important;
}

/* Hide "Delete All" and "Archive All" options */
button:has(.lucide-archive),
[role="menuitem"]:has(.lucide-archive) {
    display: none !important;
}
