/* Island UI: Floating Sidebar Navigation Console (Neutral Charcoal Frosted Glass) */ #anomalous-sidebar-wrapper { width: 250px; margin: 8px 0 8px 8px; height: calc(100% - 16px); background: var(--amb-lt-panel, rgba(22, 22, 25, 0.85)); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); position: relative; border: 1px solid var(--amb-border); border-radius: 10px; display: flex; flex-direction: column; transition: width 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), transform 0.3s ease; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(var(--amb-ink-rgb), 0.05); overflow: visible; box-sizing: border-box; } #anomalous-doctor-panel, #anomalous-assistant-panel { background: var(--amb-bg-page, var(--amb-bg-page)) !important; position: relative; z-index: 2; } #anomalous-sidebar input[type="text"] { background: rgba(var(--amb-ink-rgb), 0.05) !important; border: 1px solid var(--amb-border) !important; backdrop-filter: blur(8px) !important; color: var(--amb-text-main) !important; transition: all 0.2s ease !important; } #anomalous-sidebar input[type="text"]:focus { border-color: var(--amb-border-strong) !important; background: rgba(var(--amb-ink-rgb), 0.08) !important; box-shadow: 0 0 8px rgba(var(--amb-ink-rgb), 0.06) !important; } #anomalous-sidebar-wrapper::after { display: none; } .anomalous-sidebar-closed #anomalous-sidebar { opacity: 0; pointer-events: none; overflow: hidden; } /* Suppress all tooltips and action labels on clicked/active elements so they never block vision or interaction */ button:active::before, button:active::after, .anomalous-tooltip-target:active::before, .anomalous-tooltip-target:active::after { display: none !important; opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; } #anomalous-sidebar { flex: 1; overflow-y: auto; display: flex; flex-direction: column; transition: opacity 0.2s; } #anomalous-settings { border-top: 1px solid var(--border-color, var(--amb-border-strong)); background: var(--bg-color, var(--amb-bg-page)); } /* The models page's folder column (ui_folder_list.js): the type's heading with 📂 Open, then its folders; a folder's 📂 shows on hover, empty folders are dimmed, the listed one is marked. */ .anomalous-folder-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 12px 8px; color: var(--amb-text-main); font-weight: 700; } .anomalous-folder-head-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .anomalous-folder-item { display: flex; align-items: center; gap: 4px; min-height: 28px; padding: 2px 8px 2px 12px; border-left: 2px solid transparent; color: var(--amb-text-soft); font-size: 0.88em; cursor: pointer; } .anomalous-folder-item:hover { background: rgba(var(--amb-ink-rgb), 0.06); color: var(--amb-text-main); } .anomalous-folder-item.is-empty { opacity: 0.45; } .anomalous-folder-item.active { border-left-color: var(--amb-link); background: color-mix(in srgb, var(--amb-link) 14%, transparent); color: var(--amb-text-main); font-weight: 600; } .anomalous-folder-toggle { flex: none; width: 12px; color: var(--amb-text-muted); font-size: 0.85em; text-align: center; user-select: none; } .anomalous-folder-name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .anomalous-folder-count { flex: none; color: var(--amb-text-muted); font-size: 0.85em; font-variant-numeric: tabular-nums; } .anomalous-folder-open { flex: none; padding: 2px 7px; border: 1px solid var(--amb-border-strong); border-radius: 6px; background: rgba(var(--amb-ink-rgb), 0.06); color: var(--amb-text-main); font: inherit; font-size: 0.82em; font-weight: 600; cursor: pointer; } .anomalous-folder-open:hover { background: rgba(var(--amb-ink-rgb), 0.14); } .anomalous-folder-item .anomalous-folder-open { display: none; padding: 0 5px; } .anomalous-folder-item:hover .anomalous-folder-open { display: inline-block; } .anomalous-folder-item:hover .anomalous-folder-count { display: none; } /* Sidebar Icons & Actions - Normal Mode (Neutral & Clean) */ #anomalous-sidebar h3 svg { color: var(--amb-text-muted) !important; filter: none; } .theme-abyssal-scarlet #anomalous-sidebar h3 svg { color: #d4af37 !important; filter: none; } #anomalous-scan-btn, #anomalous-materials-btn, #anomalous-doctor-btn, #anomalous-assistant-btn, #anomalous-global-settings-btn { color: var(--amb-text-muted) !important; transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important; } #anomalous-scan-btn:hover, #anomalous-materials-btn:hover, #anomalous-doctor-btn:hover, #anomalous-assistant-btn:hover, #anomalous-global-settings-btn:hover { color: var(--amb-text-main) !important; filter: none !important; background: rgba(var(--amb-ink-rgb), 0.08) !important; } .theme-abyssal-scarlet #anomalous-scan-btn:hover { color: #ff4d6d !important; filter: none !important; background: rgba(220, 20, 60, 0.12) !important; } .theme-abyssal-scarlet #anomalous-materials-btn { color: var(--c-amber, #d97706) !important; } .theme-abyssal-scarlet #anomalous-materials-btn:hover { color: var(--amb-warn) !important; filter: none !important; background: rgba(217, 119, 6, 0.12) !important; } .theme-abyssal-scarlet #anomalous-doctor-btn { color: var(--c-crimson, #dc143c) !important; } .theme-abyssal-scarlet #anomalous-doctor-btn:hover { color: #ff4d6d !important; filter: none !important; background: rgba(220, 20, 60, 0.12) !important; } .theme-abyssal-scarlet #anomalous-assistant-btn { color: var(--c-purple, #8b5cf6) !important; } .theme-abyssal-scarlet #anomalous-assistant-btn:hover { color: #c4b5fd !important; filter: none !important; background: rgba(139, 92, 246, 0.14) !important; } .theme-abyssal-scarlet #anomalous-global-settings-btn { color: var(--c-silver, #94a3b8) !important; } .theme-abyssal-scarlet #anomalous-global-settings-btn:hover { color: #f8fafc !important; filter: none !important; background: rgba(var(--amb-ink-rgb), 0.08) !important; } #anomalous-detail { flex: 1; display: flex; flex-direction: column; overflow: hidden; background: var(--bg-color, var(--amb-bg-card)); } .anomalous-split-container { flex: 1; display: flex; flex-direction: row; overflow: hidden; } .anomalous-split-left { width: 40%; display: flex; align-items: center; justify-content: center; background: var(--amb-bg-page); overflow: hidden; } .anomalous-resizer { width: 5px; background: var(--border-color, var(--amb-bg-card-hover)); cursor: col-resize; transition: background 0.2s; } .anomalous-resizer:hover { background: rgba(var(--amb-ink-rgb), 0.35); } .theme-abyssal-scarlet .anomalous-resizer:hover { background: #dc143c; } .anomalous-split-right { width: 60%; background: var(--bg-color, var(--amb-bg-card)); overflow: auto; } .anomalous-card { cursor: pointer; } #anomalous-api-key { background: var(--amb-bg-card-hover); border: 1px solid var(--amb-border-strong); color: var(--amb-text-main); padding: 8px; border-radius: 4px; width: 150px; margin-right: 15px; } #anomalous-api-key::placeholder { color: var(--amb-text-muted); } @container (max-width: 750px) { .anomalous-split-left, .anomalous-resizer { display: none !important; } .anomalous-split-right { width: 100% !important; } } /* English Layout Specific Scaling */ .anomalous-lang-en { font-size: 0.9em; } .anomalous-lang-en .anomalous-card-title { font-size: 0.85em; } .anomalous-lang-en #anomalous-title { font-size: 1.1em; } /* Compatible Models Section */ .anomalous-compatible-section { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--border-color, var(--amb-border-strong)); } .anomalous-compatible-title { color: var(--fg-color, var(--amb-text-main)); font-size: 1.1em; margin-bottom: 10px; display: flex; align-items: center; gap: 8px; } .anomalous-compatible-list { display: flex; flex-wrap: wrap; gap: 10px; } .anomalous-compatible-item { background: var(--comfy-menu-bg, var(--amb-bg-card-hover)); border: 1px solid var(--border-color, var(--amb-border-strong)); border-radius: 6px; padding: 6px 10px; display: flex; align-items: center; gap: 8px; cursor: pointer; transition: all 0.2s; max-width: 200px; } .anomalous-compatible-item:hover { border-color: var(--amb-border-strong); background: var(--bg-color, var(--amb-bg-card-hover)); transform: translateY(-2px); } .theme-abyssal-scarlet .anomalous-compatible-item:hover { border-color: #dc143c; } .anomalous-compatible-item img, .anomalous-compatible-item video { width: 30px; height: 30px; object-fit: cover; border-radius: 4px; } .anomalous-compatible-item-name { color: var(--fg-color, var(--amb-text-main)); font-size: 0.85em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; }