/* General Bots Suite - Sentient Theme */ /* Dark background with neon lime/green accents */ /* Inspired by modern AI dashboard aesthetics */ [data-theme="sentient"] { /* Core Colors */ --accent: #d4f505; --accent-hover: #bfdd04; --accent-light: rgba(212, 245, 5, 0.15); --accent-glow: rgba(212, 245, 5, 0.3); --accent-rgb: 212, 245, 5; /* Background Hierarchy */ --bg: #0a0a0a; --bg-secondary: #111111; --surface: #161616; --surface-hover: #1e1e1e; --surface-active: #252525; --surface-elevated: #1a1a1a; /* Border Colors */ --border: #2a2a2a; --border-light: #222222; --border-accent: rgba(212, 245, 5, 0.3); /* Text Colors */ --text: #ffffff; --text-secondary: #888888; --text-tertiary: #666666; --text-muted: #444444; --text-accent: #d4f505; /* Status Colors */ --success: #22c55e; --success-bg: rgba(34, 197, 94, 0.15); --warning: #f59e0b; --warning-bg: rgba(245, 158, 11, 0.15); --error: #ef4444; --error-bg: rgba(239, 68, 68, 0.15); --info: #3b82f6; --info-bg: rgba(59, 130, 246, 0.15); /* Component Specific */ --header-bg: rgba(10, 10, 10, 0.95); --header-border: #1e1e1e; --sidebar-bg: #0f0f0f; --sidebar-border: #1e1e1e; --card-bg: #161616; --card-border: #2a2a2a; --card-hover-border: rgba(212, 245, 5, 0.4); --input-bg: #1a1a1a; --input-border: #2a2a2a; --input-focus-border: #d4f505; /* Shadows */ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.4); --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5); --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.6); --shadow-accent: 0 0 20px rgba(212, 245, 5, 0.2); --shadow-glow: 0 0 30px rgba(212, 245, 5, 0.15); /* HSL Bridge Variables for compatibility */ --background: 0 0% 4%; --foreground: 0 0% 100%; --card: 0 0% 9%; --card-foreground: 0 0% 100%; --popover: 0 0% 7%; --popover-foreground: 0 0% 100%; --primary: 67 96% 49%; --primary-foreground: 0 0% 0%; --secondary: 0 0% 12%; --secondary-foreground: 0 0% 100%; --muted: 0 0% 15%; --muted-foreground: 0 0% 53%; --accent-hsl: 67 96% 49%; --accent-foreground: 0 0% 0%; --destructive: 0 84% 60%; --destructive-foreground: 0 0% 100%; --border-hsl: 0 0% 17%; --input-hsl: 0 0% 17%; --ring: 67 96% 49%; } /* ============================================ */ /* SENTIENT THEME - GLOBAL OVERRIDES */ /* ============================================ */ [data-theme="sentient"] body { background: var(--bg); color: var(--text); } /* Header Styling */ [data-theme="sentient"] .float-header { background: var(--header-bg); border-bottom: 1px solid var(--header-border); backdrop-filter: blur(12px); } [data-theme="sentient"] .header-app-tabs .app-tab { color: var(--text-secondary); background: transparent; border: 1px solid transparent; border-radius: 8px; transition: all 0.2s ease; } [data-theme="sentient"] .header-app-tabs .app-tab:hover { color: var(--text); background: var(--surface-hover); } [data-theme="sentient"] .header-app-tabs .app-tab.active { color: #000000; background: var(--accent); border-color: var(--accent); font-weight: 600; } [data-theme="sentient"] .header-app-tabs .app-tab.active svg { stroke: #000000; } /* Search Bar */ [data-theme="sentient"] .header-search { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; } [data-theme="sentient"] .header-search:focus-within { border-color: var(--accent); box-shadow: var(--shadow-accent); } [data-theme="sentient"] .search-shortcut { background: var(--surface-hover); color: var(--text-tertiary); border: 1px solid var(--border); } /* Icon Buttons */ [data-theme="sentient"] .icon-button { color: var(--text-secondary); background: transparent; border: 1px solid transparent; border-radius: 8px; transition: all 0.2s ease; } [data-theme="sentient"] .icon-button:hover { color: var(--text); background: var(--surface-hover); border-color: var(--border); } /* Notification Badge */ [data-theme="sentient"] .notification-badge { background: var(--accent); color: #000000; font-weight: 700; } /* User Avatar */ [data-theme="sentient"] .user-avatar { border: 2px solid var(--border); } [data-theme="sentient"] .user-avatar:hover { border-color: var(--accent); } /* ============================================ */ /* CARDS & PANELS */ /* ============================================ */ [data-theme="sentient"] .card, [data-theme="sentient"] .panel, [data-theme="sentient"] .intent-card { background: var(--card-bg); border: 1px solid var(--card-border); border-radius: 12px; } [data-theme="sentient"] .card:hover, [data-theme="sentient"] .panel:hover, [data-theme="sentient"] .intent-card:hover { border-color: var(--card-hover-border); } /* ============================================ */ /* BUTTONS */ /* ============================================ */ [data-theme="sentient"] .btn-primary, [data-theme="sentient"] .button-primary { background: var(--accent); color: #000000; border: none; font-weight: 600; border-radius: 8px; transition: all 0.2s ease; } [data-theme="sentient"] .btn-primary:hover, [data-theme="sentient"] .button-primary:hover { background: var(--accent-hover); box-shadow: var(--shadow-accent); } [data-theme="sentient"] .btn-secondary, [data-theme="sentient"] .button-secondary { background: transparent; color: var(--text); border: 1px solid var(--border); border-radius: 8px; } [data-theme="sentient"] .btn-secondary:hover, [data-theme="sentient"] .button-secondary:hover { background: var(--surface-hover); border-color: var(--text-secondary); } [data-theme="sentient"] .btn-ghost { background: transparent; color: var(--text-secondary); border: 1px solid transparent; } [data-theme="sentient"] .btn-ghost:hover { background: var(--surface-hover); color: var(--text); } /* ============================================ */ /* STATUS FILTERS / TABS */ /* ============================================ */ [data-theme="sentient"] .status-filter, [data-theme="sentient"] .filter-tab { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: transparent; border: 1px solid var(--border); border-radius: 20px; color: var(--text-secondary); font-size: 14px; cursor: pointer; transition: all 0.2s ease; } [data-theme="sentient"] .status-filter:hover, [data-theme="sentient"] .filter-tab:hover { background: var(--surface-hover); color: var(--text); } [data-theme="sentient"] .status-filter.active, [data-theme="sentient"] .filter-tab.active { background: var(--accent); color: #000000; border-color: var(--accent); font-weight: 600; } [data-theme="sentient"] .status-filter .count, [data-theme="sentient"] .filter-tab .count { display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px; background: var(--surface-hover); border-radius: 10px; font-size: 12px; font-weight: 600; } [data-theme="sentient"] .status-filter.active .count, [data-theme="sentient"] .filter-tab.active .count { background: rgba(0, 0, 0, 0.2); color: #000000; } /* ============================================ */ /* PROGRESS BARS */ /* ============================================ */ [data-theme="sentient"] .progress-bar { height: 8px; background: var(--surface-hover); border-radius: 4px; overflow: hidden; } [data-theme="sentient"] .progress-bar-fill { height: 100%; background: var(--accent); border-radius: 4px; transition: width 0.3s ease; } [data-theme="sentient"] .progress-percentage { color: var(--accent); font-weight: 600; font-size: 14px; } /* ============================================ */ /* BADGES & TAGS */ /* ============================================ */ [data-theme="sentient"] .badge { padding: 4px 10px; border-radius: 12px; font-size: 12px; font-weight: 500; } [data-theme="sentient"] .badge-primary, [data-theme="sentient"] .badge-active { background: var(--accent-light); color: var(--accent); } [data-theme="sentient"] .badge-success, [data-theme="sentient"] .badge-complete { background: var(--success-bg); color: var(--success); } [data-theme="sentient"] .badge-warning, [data-theme="sentient"] .badge-pending { background: var(--warning-bg); color: var(--warning); } [data-theme="sentient"] .badge-danger, [data-theme="sentient"] .badge-blocked { background: var(--error-bg); color: var(--error); } [data-theme="sentient"] .badge-secondary, [data-theme="sentient"] .badge-paused { background: var(--surface-hover); color: var(--text-secondary); } /* Tag pills */ [data-theme="sentient"] .tag { display: inline-flex; align-items: center; padding: 4px 12px; background: var(--surface); border: 1px solid var(--border); border-radius: 16px; color: var(--text-secondary); font-size: 12px; } /* ============================================ */ /* INTENT/TASK CARDS */ /* ============================================ */ [data-theme="sentient"] .intent-card { padding: 20px; margin-bottom: 16px; } [data-theme="sentient"] .intent-card-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 16px; } [data-theme="sentient"] .intent-title { font-size: 16px; font-weight: 600; color: var(--text); } [data-theme="sentient"] .intent-status { display: flex; align-items: center; gap: 8px; color: var(--text-secondary); font-size: 14px; } [data-theme="sentient"] .intent-status.active { color: var(--accent); } [data-theme="sentient"] .intent-meta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; } [data-theme="sentient"] .intent-meta-item { display: inline-flex; align-items: center; padding: 6px 12px; background: var(--surface-hover); border-radius: 8px; font-size: 13px; color: var(--text-secondary); } [data-theme="sentient"] .intent-health { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; background: var(--accent-light); border-radius: 8px; font-size: 13px; font-weight: 600; } [data-theme="sentient"] .intent-health-good { color: var(--accent); } [data-theme="sentient"] .intent-health-warning { background: var(--warning-bg); color: var(--warning); } [data-theme="sentient"] .intent-health-bad { background: var(--error-bg); color: var(--error); } /* ============================================ */ /* DECISION REQUIRED PANEL */ /* ============================================ */ [data-theme="sentient"] .decision-panel { background: var(--surface); border: 1px solid var(--accent); border-radius: 12px; padding: 20px; box-shadow: var(--shadow-glow); } [data-theme="sentient"] .decision-header { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; color: var(--accent); font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: 0.5px; } [data-theme="sentient"] .decision-title { color: var(--text); font-size: 16px; font-weight: 500; margin-bottom: 16px; } [data-theme="sentient"] .decision-context { background: var(--surface-hover); border-radius: 8px; padding: 16px; color: var(--text-secondary); font-size: 14px; line-height: 1.6; margin-bottom: 16px; } [data-theme="sentient"] .decision-actions { display: flex; gap: 12px; } [data-theme="sentient"] .decision-btn-primary { background: var(--accent); color: #000000; border: none; padding: 10px 20px; border-radius: 8px; font-weight: 600; cursor: pointer; transition: all 0.2s ease; } [data-theme="sentient"] .decision-btn-primary:hover { background: var(--accent-hover); box-shadow: var(--shadow-accent); } [data-theme="sentient"] .decision-btn-secondary { background: transparent; color: var(--text); border: 1px solid var(--border); padding: 10px 20px; border-radius: 8px; font-weight: 500; cursor: pointer; transition: all 0.2s ease; } [data-theme="sentient"] .decision-btn-secondary:hover { background: var(--surface-hover); border-color: var(--text-secondary); } /* ============================================ */ /* PROGRESS LOG */ /* ============================================ */ [data-theme="sentient"] .progress-log { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 20px; } [data-theme="sentient"] .progress-log-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; color: var(--text); font-weight: 600; font-size: 14px; text-transform: uppercase; letter-spacing: 0.5px; } [data-theme="sentient"] .progress-log-item { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--border-light); } [data-theme="sentient"] .progress-log-item:last-child { border-bottom: none; } [data-theme="sentient"] .progress-log-icon { width: 24px; height: 24px; display: flex; align-items: center; justify-content: center; border-radius: 50%; flex-shrink: 0; } [data-theme="sentient"] .progress-log-icon.complete { background: var(--success-bg); color: var(--success); } [data-theme="sentient"] .progress-log-icon.pending { background: var(--warning-bg); color: var(--warning); } [data-theme="sentient"] .progress-log-icon.active { background: var(--accent-light); color: var(--accent); } [data-theme="sentient"] .progress-log-content { flex: 1; } [data-theme="sentient"] .progress-log-title { color: var(--text); font-weight: 500; margin-bottom: 4px; } [data-theme="sentient"] .progress-log-detail { color: var(--text-tertiary); font-size: 13px; } [data-theme="sentient"] .progress-log-step { display: inline-flex; align-items: center; padding: 4px 10px; background: var(--accent); color: #000000; border-radius: 10px; font-size: 12px; font-weight: 600; } [data-theme="sentient"] .progress-log-step.complete { background: var(--success); } [data-theme="sentient"] .progress-log-time { color: var(--text-tertiary); font-size: 12px; flex-shrink: 0; } /* ============================================ */ /* SIDEBAR / NAVIGATION */ /* ============================================ */ [data-theme="sentient"] .sidebar { background: var(--sidebar-bg); border-right: 1px solid var(--sidebar-border); } [data-theme="sentient"] .sidebar-item { color: var(--text-secondary); padding: 10px 16px; border-radius: 8px; margin: 4px 8px; transition: all 0.2s ease; } [data-theme="sentient"] .sidebar-item:hover { background: var(--surface-hover); color: var(--text); } [data-theme="sentient"] .sidebar-item.active { background: var(--accent-light); color: var(--accent); } /* ============================================ */ /* DROPDOWN MENUS */ /* ============================================ */ [data-theme="sentient"] .apps-dropdown, [data-theme="sentient"] .dropdown-menu { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; box-shadow: var(--shadow-lg); } [data-theme="sentient"] .apps-dropdown-title { color: var(--text-secondary); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; padding: 12px 16px; border-bottom: 1px solid var(--border); } [data-theme="sentient"] .app-item { color: var(--text-secondary); padding: 12px; border-radius: 8px; transition: all 0.2s ease; } [data-theme="sentient"] .app-item:hover { background: var(--surface-hover); color: var(--text); } [data-theme="sentient"] .app-item.active { background: var(--accent-light); color: var(--accent); } /* ============================================ */ /* FORMS & INPUTS */ /* ============================================ */ [data-theme="sentient"] input, [data-theme="sentient"] textarea, [data-theme="sentient"] select { background: var(--input-bg); border: 1px solid var(--input-border); color: var(--text); border-radius: 8px; padding: 10px 14px; transition: all 0.2s ease; } [data-theme="sentient"] input:focus, [data-theme="sentient"] textarea:focus, [data-theme="sentient"] select:focus { border-color: var(--input-focus-border); outline: none; box-shadow: 0 0 0 3px var(--accent-light); } [data-theme="sentient"] input::placeholder, [data-theme="sentient"] textarea::placeholder { color: var(--text-tertiary); } /* ============================================ */ /* MODALS */ /* ============================================ */ [data-theme="sentient"] .modal-content { background: var(--surface); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow-lg); } [data-theme="sentient"] .modal-header { border-bottom: 1px solid var(--border); padding: 20px 24px; } [data-theme="sentient"] .modal-header h3 { color: var(--text); } [data-theme="sentient"] .modal-body { padding: 24px; } [data-theme="sentient"] .modal-footer { border-top: 1px solid var(--border); padding: 16px 24px; } /* ============================================ */ /* TABLES */ /* ============================================ */ [data-theme="sentient"] table { width: 100%; border-collapse: collapse; } [data-theme="sentient"] th { background: var(--surface-hover); color: var(--text-secondary); font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--border); } [data-theme="sentient"] td { padding: 14px 16px; border-bottom: 1px solid var(--border-light); color: var(--text); } [data-theme="sentient"] tr:hover td { background: var(--surface-hover); } /* ============================================ */ /* SCROLLBAR */ /* ============================================ */ [data-theme="sentient"] ::-webkit-scrollbar { width: 8px; height: 8px; } [data-theme="sentient"] ::-webkit-scrollbar-track { background: var(--bg); } [data-theme="sentient"] ::-webkit-scrollbar-thumb { background: var(--surface-hover); border-radius: 4px; } [data-theme="sentient"] ::-webkit-scrollbar-thumb:hover { background: var(--border); } /* ============================================ */ /* LOADING STATES */ /* ============================================ */ [data-theme="sentient"] .loading-overlay { background: rgba(10, 10, 10, 0.9); } [data-theme="sentient"] .loading-spinner { border-color: var(--surface-hover); border-top-color: var(--accent); } [data-theme="sentient"] .skeleton { background: linear-gradient( 90deg, var(--surface) 25%, var(--surface-hover) 50%, var(--surface) 75% ); background-size: 200% 100%; animation: skeleton-loading 1.5s infinite; } @keyframes skeleton-loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } } /* ============================================ */ /* CHAT SPECIFIC */ /* ============================================ */ [data-theme="sentient"] .message-user { background: var(--accent); color: #000000; } [data-theme="sentient"] .message-bot { background: var(--surface); color: var(--text); border: 1px solid var(--border); } [data-theme="sentient"] .chat-input-container { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; } [data-theme="sentient"] .chat-input-container:focus-within { border-color: var(--accent); } /* ============================================ */ /* ANIMATIONS */ /* ============================================ */ [data-theme="sentient"] .pulse-accent { animation: pulse-accent 2s infinite; } @keyframes pulse-accent { 0%, 100% { box-shadow: 0 0 0 0 var(--accent-glow); } 50% { box-shadow: 0 0 0 10px transparent; } } /* ============================================ */ /* STATS & METRICS */ /* ============================================ */ [data-theme="sentient"] .stat-card { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 20px; } [data-theme="sentient"] .stat-value { color: var(--text); font-size: 28px; font-weight: 700; } [data-theme="sentient"] .stat-label { color: var(--text-secondary); font-size: 14px; margin-top: 4px; } [data-theme="sentient"] .stat-highlight { color: var(--accent); } /* Time saved indicator */ [data-theme="sentient"] .time-saved { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: var(--accent-light); border-radius: 20px; color: var(--accent); font-weight: 600; font-size: 14px; } /* ============================================ */ /* DETAIL VIEW */ /* ============================================ */ [data-theme="sentient"] .detail-panel { background: var(--surface); border: 1px solid var(--border); border-radius: 12px; } [data-theme="sentient"] .detail-header { display: flex; justify-content: space-between; align-items: center; padding: 20px; border-bottom: 1px solid var(--border); } [data-theme="sentient"] .detail-title { font-size: 18px; font-weight: 600; color: var(--text); } [data-theme="sentient"] .detail-body { padding: 20px; } [data-theme="sentient"] .detail-section { margin-bottom: 24px; } [data-theme="sentient"] .detail-section-title { color: var(--text-secondary); font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 12px; } /* ============================================ */ /* PAUSE/ACTION BUTTONS */ /* ============================================ */ [data-theme="sentient"] .action-btn { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 8px; border: 1px solid var(--border); background: transparent; color: var(--text-secondary); cursor: pointer; transition: all 0.2s ease; } [data-theme="sentient"] .action-btn:hover { background: var(--surface-hover); color: var(--text); border-color: var(--text-secondary); } [data-theme="sentient"] .action-btn.pause { border-color: var(--warning); color: var(--warning); } [data-theme="sentient"] .action-btn.pause:hover {