@use '../variables'; window.Overlay { .llm-chat { padding: 20px; font-family: variables.$font-sans; background-color: variables.$bg-base; border-radius: 16px; margin-bottom: 10px; } .chat-scroll { margin-bottom: 8px; border-radius: 20px; } .messages { padding: 6px; } .message-row { margin: 4px 0; &.user { margin-left: 40px; } &.assistant { margin-right: 40px; } } .message { padding: 8px 16px; border-radius: 20px; font-size: 16px; font-family: variables.$font-sans; font-weight: 500; line-height: 1.2; transition: variables.$transition-fast; &.user { background: variables.$accent-gradient; color: variables.$text-primary; border-bottom-right-radius: 4px; } &.assistant { background: rgba(variables.$bg-surface, 0.7); color: variables.$text-primary; border-bottom-left-radius: 4px; border: 1px solid rgba(variables.$border-default, 0.5); } &.thinking { font-size: 20px; padding: 4px 16px; animation: spin 1s linear infinite; background: transparent; border: none; } } @keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } // ── backend toggle ───────────────────────────────────────────────────── .backend-toggle { border-radius: 28px; border: 1px solid variables.$border-default; } .toggle-btn { padding: 0 8px; font-size: 13px; font-family: variables.$font-sans; font-weight: 500; background: transparent; color: variables.$text-muted; border: none; border-radius: 0; transition: variables.$transition-fast; &:first-child { border-radius: 28px 0 0 28px; } &:last-child { border-radius: 0 28px 28px 0; } &:hover { color: variables.$text-primary; background: rgba(variables.$accent-primary, 0.15); } &.active { background: variables.$accent-gradient; color: variables.$text-primary; } } // ── model selector button ────────────────────────────────────────────── .model-selector { font-size: 13px; padding: 0 8px; font-family: variables.$font-sans; font-weight: 500; background: rgba(variables.$bg-surface, 0.5); color: variables.$text-muted; border: 1px solid variables.$border-default; border-radius: 28px; transition: variables.$transition-fast; &:hover { color: variables.$text-primary; border-color: variables.$accent-primary; background: rgba(variables.$bg-surface, 0.8); } } // ── model popover ────────────────────────────────────────────────────── .model-popover { background: variables.$bg-surface-hover; border: 1px solid variables.$border-default; border-radius: 12px; padding: 6px; } .model-popover contents{ background: transparent; outline: 2px solid variables.$bg-surface-hover; border: none; } .model-list { background: variables.$bg-surface-hover; min-width: 180px; } .model-item { padding: 6px 14px; font-size: 13px; font-family: variables.$font-sans; font-weight: 400; color: variables.$text-secondary; background: transparent; border: none; border-radius: 8px; transition: variables.$transition-fast; &:hover { background: rgba(variables.$accent-primary, 0.15); color: variables.$text-primary; } &.active { background: rgba(variables.$accent-primary, 0.2); color: variables.$accent-primary-light; font-weight: 500; } } // ── input row ────────────────────────────────────────────────────────── .input-row { margin-top: 4px; } .chat-input { background: rgba(variables.$bg-surface, 0.6); border-radius: 28px; padding: 0 20px; font-size: 16px; font-family: variables.$font-sans; font-weight: 400; border: 1px solid variables.$border-default; transition: variables.$transition-fast; color: variables.$text-primary; outline: none; &:focus { border-color: variables.$accent-primary; background: rgba(variables.$bg-surface, 0.8); } } .send-button { background: variables.$accent-gradient; border-radius: 28px; font-size: 32px; font-weight: bold; color: variables.$text-primary; border: none; transition: variables.$transition-fast; &:hover { transform: scale(1.02); box-shadow: variables.$shadow-md; } &.loading { opacity: 0.6; transform: none; animation: spin 1s linear infinite; } } .empty-state { background: transparent; padding: 32px 20px; margin: 20px; } .empty-svg { margin-bottom: 16px; } .empty-title { font-family: variables.$font-sans; font-size: 28px; font-weight: 500; letter-spacing: -0.5px; color: variables.$text-primary; margin-bottom: 6px; } .empty-subtitle { font-family: variables.$font-sans; font-weight: 400; font-size: 16px; color: variables.$text-muted; } }