var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { Component, ChangeDetectorRef, ChangeDetectionStrategy, inject } from '@angular/core';
import { RegisterClass } from '@memberjunction/global';
import { BaseResourceComponent } from '@memberjunction/ng-shared';
import { AIEngineBase } from '@memberjunction/ai-engine-base';
import * as i0 from "@angular/core";
const _forTrack0 = ($index, $item) => $item.Key;
const _forTrack1 = ($index, $item) => $item.Label;
function AIOverviewHubComponent_For_36_For_11_Template(rf, ctx) { if (rf & 1) {
    i0.ɵɵelementStart(0, "span", 24)(1, "span", 25);
    i0.ɵɵtext(2);
    i0.ɵɵelementEnd();
    i0.ɵɵtext(3);
    i0.ɵɵelementEnd();
} if (rf & 2) {
    const stat_r4 = ctx.$implicit;
    i0.ɵɵadvance(2);
    i0.ɵɵtextInterpolate(stat_r4.Value);
    i0.ɵɵadvance();
    i0.ɵɵtextInterpolate1(" ", stat_r4.Label, " ");
} }
function AIOverviewHubComponent_For_36_Template(rf, ctx) { if (rf & 1) {
    const _r1 = i0.ɵɵgetCurrentView();
    i0.ɵɵelementStart(0, "div", 17);
    i0.ɵɵlistener("click", function AIOverviewHubComponent_For_36_Template_div_click_0_listener() { const card_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.NavigateToTab(card_r2.NavItemLabel)); });
    i0.ɵɵelementStart(1, "div", 18)(2, "div", 19);
    i0.ɵɵelement(3, "i");
    i0.ɵɵelementEnd();
    i0.ɵɵelement(4, "i", 20);
    i0.ɵɵelementEnd();
    i0.ɵɵelementStart(5, "h3", 21);
    i0.ɵɵtext(6);
    i0.ɵɵelementEnd();
    i0.ɵɵelementStart(7, "p", 22);
    i0.ɵɵtext(8);
    i0.ɵɵelementEnd();
    i0.ɵɵelementStart(9, "div", 23);
    i0.ɵɵrepeaterCreate(10, AIOverviewHubComponent_For_36_For_11_Template, 4, 2, "span", 24, _forTrack1);
    i0.ɵɵelementEnd()();
} if (rf & 2) {
    const card_r2 = ctx.$implicit;
    i0.ɵɵclassMap(card_r2.ColorClass);
    i0.ɵɵadvance(2);
    i0.ɵɵclassMap(card_r2.ColorClass + "-icon");
    i0.ɵɵadvance();
    i0.ɵɵclassMap(card_r2.Icon);
    i0.ɵɵadvance(3);
    i0.ɵɵtextInterpolate(card_r2.Title);
    i0.ɵɵadvance(2);
    i0.ɵɵtextInterpolate(card_r2.Description);
    i0.ɵɵadvance(2);
    i0.ɵɵrepeater(card_r2.Stats);
} }
/**
 * AI Overview Hub — the default landing page for the AI Administration application.
 * Displays quick stats and navigation cards using only in-memory data from AIEngineBase.
 */
let AIOverviewHubComponent = class AIOverviewHubComponent extends BaseResourceComponent {
    cdr = inject(ChangeDetectorRef);
    ActiveAgentCount = 0;
    ModelCount = 0;
    PromptCount = 0;
    VendorCount = 0;
    Cards = [];
    async ngOnInit() {
        super.ngOnInit();
        this.LoadStats();
        this.BuildCards();
        this.NotifyLoadComplete();
        this.cdr.markForCheck();
    }
    ngOnDestroy() {
        super.ngOnDestroy();
    }
    async GetResourceDisplayName(data) {
        return 'AI Overview';
    }
    async GetResourceIconClass(data) {
        return 'fa-solid fa-grid-2';
    }
    /**
     * Reads counts from the in-memory AIEngineBase singleton.
     * No database queries are made.
     */
    LoadStats() {
        const engine = AIEngineBase.Instance;
        this.ActiveAgentCount = engine.Agents.filter(a => a.Status === 'Active').length;
        this.ModelCount = engine.Models.length;
        this.PromptCount = engine.Prompts.length;
        this.VendorCount = engine.Vendors.length;
    }
    /**
     * Constructs the navigation card definitions with live stat data.
     */
    BuildCards() {
        const engine = AIEngineBase.Instance;
        this.Cards = [
            {
                Key: 'analytics',
                Title: 'Analytics',
                Description: 'View execution metrics, cost trends, error rates, and usage patterns across your AI operations.',
                Icon: 'fa-solid fa-chart-line',
                ColorClass: 'card-analytics',
                NavItemLabel: 'Analytics',
                Stats: [
                    { Label: 'Agents', Value: engine.Agents.length },
                    { Label: 'Models', Value: engine.Models.length }
                ]
            },
            {
                Key: 'agents',
                Title: 'Agents',
                Description: 'Configure and manage AI agents, their capabilities, prompts, and execution parameters.',
                Icon: 'fa-solid fa-robot',
                ColorClass: 'card-agents',
                NavItemLabel: 'Agents',
                Stats: [
                    { Label: 'Active', Value: engine.Agents.filter(a => a.Status === 'Active').length },
                    { Label: 'Types', Value: engine.AgentTypes.length }
                ]
            },
            {
                Key: 'prompts',
                Title: 'Prompts',
                Description: 'Manage prompt templates, categories, and model priority assignments.',
                Icon: 'fa-solid fa-message-lines',
                ColorClass: 'card-prompts',
                NavItemLabel: 'Prompts',
                Stats: [
                    { Label: 'Total', Value: engine.Prompts.length },
                    { Label: 'Categories', Value: engine.PromptCategories.length }
                ]
            },
            {
                Key: 'models',
                Title: 'Models',
                Description: 'Browse AI models, configure vendor integrations, and manage model capabilities.',
                Icon: 'fa-solid fa-microchip',
                ColorClass: 'card-models',
                NavItemLabel: 'Models',
                Stats: [
                    { Label: 'Models', Value: engine.Models.length },
                    { Label: 'Vendors', Value: engine.Vendors.length }
                ]
            },
            {
                Key: 'requests',
                Title: 'Agent Requests',
                Description: 'Monitor and manage incoming agent requests, approvals, and execution queues.',
                Icon: 'fa-solid fa-inbox',
                ColorClass: 'card-requests',
                NavItemLabel: 'Agent Requests',
                Stats: [
                    { Label: 'Agents', Value: engine.Agents.filter(a => a.Status === 'Active').length },
                    { Label: 'Types', Value: engine.AgentTypes.length }
                ]
            },
            {
                Key: 'config',
                Title: 'Configuration',
                Description: 'System-level AI settings, configuration parameters, and platform defaults.',
                Icon: 'fa-solid fa-gear',
                ColorClass: 'card-config',
                NavItemLabel: 'Configuration',
                Stats: [
                    { Label: 'Configs', Value: engine.Configurations.length },
                    { Label: 'Params', Value: engine.ConfigurationParams.length }
                ]
            }
        ];
    }
    /**
     * Navigate to another tab in the current AI application by its nav item label.
     */
    NavigateToTab(navItemLabel) {
        this.navigationService.OpenNavItemByName(navItemLabel);
    }
    static ɵfac = /*@__PURE__*/ (() => { let ɵAIOverviewHubComponent_BaseFactory; return function AIOverviewHubComponent_Factory(__ngFactoryType__) { return (ɵAIOverviewHubComponent_BaseFactory || (ɵAIOverviewHubComponent_BaseFactory = i0.ɵɵgetInheritedFactory(AIOverviewHubComponent)))(__ngFactoryType__ || AIOverviewHubComponent); }; })();
    static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AIOverviewHubComponent, selectors: [["app-ai-overview-hub"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 37, vars: 4, consts: [[1, "overview-hub"], [1, "hero-section"], [1, "hero-content"], [1, "hero-title-row"], [1, "fa-solid", "fa-robot", "hero-icon"], [1, "hero-title"], [1, "hero-subtitle"], [1, "stats-strip"], [1, "stat-pill"], [1, "fa-solid", "fa-robot"], [1, "stat-value"], [1, "stat-label"], [1, "fa-solid", "fa-microchip"], [1, "fa-solid", "fa-message-lines"], [1, "fa-solid", "fa-building"], [1, "cards-grid"], [1, "nav-card", 3, "class"], [1, "nav-card", 3, "click"], [1, "card-header"], [1, "card-icon-circle"], [1, "fa-solid", "fa-arrow-right", "card-arrow"], [1, "card-title"], [1, "card-description"], [1, "card-stats"], [1, "card-stat-badge"], [1, "card-stat-value"]], template: function AIOverviewHubComponent_Template(rf, ctx) { if (rf & 1) {
            i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "div", 3);
            i0.ɵɵelement(4, "i", 4);
            i0.ɵɵelementStart(5, "h1", 5);
            i0.ɵɵtext(6, "AI Administration");
            i0.ɵɵelementEnd()();
            i0.ɵɵelementStart(7, "p", 6);
            i0.ɵɵtext(8, " Manage agents, models, prompts, and system configuration for your AI platform. ");
            i0.ɵɵelementEnd()()();
            i0.ɵɵelementStart(9, "div", 7)(10, "div", 8);
            i0.ɵɵelement(11, "i", 9);
            i0.ɵɵelementStart(12, "span", 10);
            i0.ɵɵtext(13);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(14, "span", 11);
            i0.ɵɵtext(15, "Active Agents");
            i0.ɵɵelementEnd()();
            i0.ɵɵelementStart(16, "div", 8);
            i0.ɵɵelement(17, "i", 12);
            i0.ɵɵelementStart(18, "span", 10);
            i0.ɵɵtext(19);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(20, "span", 11);
            i0.ɵɵtext(21, "Models");
            i0.ɵɵelementEnd()();
            i0.ɵɵelementStart(22, "div", 8);
            i0.ɵɵelement(23, "i", 13);
            i0.ɵɵelementStart(24, "span", 10);
            i0.ɵɵtext(25);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(26, "span", 11);
            i0.ɵɵtext(27, "Prompts");
            i0.ɵɵelementEnd()();
            i0.ɵɵelementStart(28, "div", 8);
            i0.ɵɵelement(29, "i", 14);
            i0.ɵɵelementStart(30, "span", 10);
            i0.ɵɵtext(31);
            i0.ɵɵelementEnd();
            i0.ɵɵelementStart(32, "span", 11);
            i0.ɵɵtext(33, "Vendors");
            i0.ɵɵelementEnd()()();
            i0.ɵɵelementStart(34, "div", 15);
            i0.ɵɵrepeaterCreate(35, AIOverviewHubComponent_For_36_Template, 12, 8, "div", 16, _forTrack0);
            i0.ɵɵelementEnd()();
        } if (rf & 2) {
            i0.ɵɵadvance(13);
            i0.ɵɵtextInterpolate(ctx.ActiveAgentCount);
            i0.ɵɵadvance(6);
            i0.ɵɵtextInterpolate(ctx.ModelCount);
            i0.ɵɵadvance(6);
            i0.ɵɵtextInterpolate(ctx.PromptCount);
            i0.ɵɵadvance(6);
            i0.ɵɵtextInterpolate(ctx.VendorCount);
            i0.ɵɵadvance(4);
            i0.ɵɵrepeater(ctx.Cards);
        } }, styles: ["[_nghost-%COMP%] {\n      display: block;\n      height: 100%;\n      overflow-y: auto;\n      background: var(--mj-bg-page);\n    }\n\n    .overview-hub[_ngcontent-%COMP%] {\n      max-width: 1200px;\n      margin: 0 auto;\n      padding: 32px 24px;\n    }\n\n    \n\n    .hero-section[_ngcontent-%COMP%] {\n      margin-bottom: 24px;\n    }\n\n    .hero-title-row[_ngcontent-%COMP%] {\n      display: flex;\n      align-items: center;\n      gap: 12px;\n      margin-bottom: 8px;\n    }\n\n    .hero-icon[_ngcontent-%COMP%] {\n      font-size: 28px;\n      color: var(--mj-brand-primary);\n    }\n\n    .hero-title[_ngcontent-%COMP%] {\n      font-size: 28px;\n      font-weight: 700;\n      color: var(--mj-text-primary);\n      margin: 0;\n    }\n\n    .hero-subtitle[_ngcontent-%COMP%] {\n      font-size: 15px;\n      color: var(--mj-text-muted);\n      margin: 0;\n      line-height: 1.5;\n    }\n\n    \n\n    .stats-strip[_ngcontent-%COMP%] {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 12px;\n      margin-bottom: 32px;\n    }\n\n    .stat-pill[_ngcontent-%COMP%] {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      padding: 8px 16px;\n      background: var(--mj-bg-surface);\n      border: 1px solid var(--mj-border-default);\n      border-radius: 24px;\n      font-size: 13px;\n      color: var(--mj-text-secondary);\n    }\n\n    .stat-pill[_ngcontent-%COMP%]   i[_ngcontent-%COMP%] {\n      color: var(--mj-brand-primary);\n      font-size: 14px;\n    }\n\n    .stat-value[_ngcontent-%COMP%] {\n      font-weight: 700;\n      color: var(--mj-text-primary);\n    }\n\n    .stat-label[_ngcontent-%COMP%] {\n      color: var(--mj-text-muted);\n    }\n\n    \n\n    .cards-grid[_ngcontent-%COMP%] {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 20px;\n    }\n\n    .nav-card[_ngcontent-%COMP%] {\n      position: relative;\n      background: var(--mj-bg-surface);\n      border: 1px solid var(--mj-border-default);\n      border-radius: 12px;\n      padding: 24px;\n      cursor: pointer;\n      transition: transform 0.2s ease, box-shadow 0.2s ease;\n      overflow: hidden;\n    }\n\n    .nav-card[_ngcontent-%COMP%]::before {\n      content: '';\n      position: absolute;\n      top: 0;\n      left: 0;\n      right: 0;\n      height: 4px;\n    }\n\n    .nav-card[_ngcontent-%COMP%]:hover {\n      transform: translateY(-4px);\n      box-shadow: 0 8px 24px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n    }\n\n    .nav-card[_ngcontent-%COMP%]:hover   .card-arrow[_ngcontent-%COMP%] {\n      transform: translateX(4px);\n    }\n\n    \n\n    .card-analytics[_ngcontent-%COMP%]::before { background: var(--mj-brand-primary); }\n    .card-agents[_ngcontent-%COMP%]::before { background: var(--mj-status-success); }\n    .card-prompts[_ngcontent-%COMP%]::before { background: var(--mj-brand-primary); }\n    .card-models[_ngcontent-%COMP%]::before { background: var(--mj-color-violet-500, #8b5cf6); }\n    .card-requests[_ngcontent-%COMP%]::before { background: var(--mj-status-warning); }\n    .card-config[_ngcontent-%COMP%]::before { background: var(--mj-text-muted); }\n\n    \n\n    .card-header[_ngcontent-%COMP%] {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-bottom: 16px;\n    }\n\n    .card-icon-circle[_ngcontent-%COMP%] {\n      width: 48px;\n      height: 48px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      font-size: 20px;\n    }\n\n    .card-analytics-icon[_ngcontent-%COMP%] {\n      background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n      color: var(--mj-brand-primary);\n    }\n\n    .card-agents-icon[_ngcontent-%COMP%] {\n      background: color-mix(in srgb, var(--mj-status-success) 12%, var(--mj-bg-surface));\n      color: var(--mj-status-success);\n    }\n\n    .card-prompts-icon[_ngcontent-%COMP%] {\n      background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n      color: var(--mj-brand-primary);\n    }\n\n    .card-models-icon[_ngcontent-%COMP%] {\n      background: color-mix(in srgb, var(--mj-color-violet-500, #8b5cf6) 12%, var(--mj-bg-surface));\n      color: var(--mj-color-violet-500, #8b5cf6);\n    }\n\n    .card-requests-icon[_ngcontent-%COMP%] {\n      background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n      color: var(--mj-status-warning);\n    }\n\n    .card-config-icon[_ngcontent-%COMP%] {\n      background: var(--mj-bg-surface-sunken);\n      color: var(--mj-text-muted);\n    }\n\n    .card-arrow[_ngcontent-%COMP%] {\n      color: var(--mj-text-muted);\n      font-size: 14px;\n      transition: transform 0.2s ease;\n    }\n\n    .card-title[_ngcontent-%COMP%] {\n      font-size: 17px;\n      font-weight: 600;\n      color: var(--mj-text-primary);\n      margin: 0 0 8px 0;\n    }\n\n    .card-description[_ngcontent-%COMP%] {\n      font-size: 13px;\n      color: var(--mj-text-muted);\n      line-height: 1.5;\n      margin: 0 0 16px 0;\n    }\n\n    .card-stats[_ngcontent-%COMP%] {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 8px;\n    }\n\n    .card-stat-badge[_ngcontent-%COMP%] {\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n      padding: 4px 10px;\n      background: var(--mj-bg-surface-sunken);\n      border-radius: 12px;\n      font-size: 12px;\n      color: var(--mj-text-secondary);\n    }\n\n    .card-stat-value[_ngcontent-%COMP%] {\n      font-weight: 700;\n      color: var(--mj-text-primary);\n    }\n\n    \n\n    @media (max-width: 1024px) {\n      .cards-grid[_ngcontent-%COMP%] {\n        grid-template-columns: repeat(2, 1fr);\n      }\n    }\n\n    @media (max-width: 640px) {\n      .cards-grid[_ngcontent-%COMP%] {\n        grid-template-columns: 1fr;\n      }\n\n      .overview-hub[_ngcontent-%COMP%] {\n        padding: 20px 16px;\n      }\n\n      .hero-title[_ngcontent-%COMP%] {\n        font-size: 22px;\n      }\n\n      .stats-strip[_ngcontent-%COMP%] {\n        gap: 8px;\n      }\n    }"], changeDetection: 0 });
};
AIOverviewHubComponent = __decorate([
    RegisterClass(BaseResourceComponent, 'AIMonitorResource')
], AIOverviewHubComponent);
export { AIOverviewHubComponent };
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AIOverviewHubComponent, [{
        type: Component,
        args: [{ standalone: false, selector: 'app-ai-overview-hub', changeDetection: ChangeDetectionStrategy.OnPush, template: `
    <div class="overview-hub">
      <!-- Hero Section -->
      <div class="hero-section">
        <div class="hero-content">
          <div class="hero-title-row">
            <i class="fa-solid fa-robot hero-icon"></i>
            <h1 class="hero-title">AI Administration</h1>
          </div>
          <p class="hero-subtitle">
            Manage agents, models, prompts, and system configuration for your AI platform.
          </p>
        </div>
      </div>

      <!-- Quick Stats Strip -->
      <div class="stats-strip">
        <div class="stat-pill">
          <i class="fa-solid fa-robot"></i>
          <span class="stat-value">{{ ActiveAgentCount }}</span>
          <span class="stat-label">Active Agents</span>
        </div>
        <div class="stat-pill">
          <i class="fa-solid fa-microchip"></i>
          <span class="stat-value">{{ ModelCount }}</span>
          <span class="stat-label">Models</span>
        </div>
        <div class="stat-pill">
          <i class="fa-solid fa-message-lines"></i>
          <span class="stat-value">{{ PromptCount }}</span>
          <span class="stat-label">Prompts</span>
        </div>
        <div class="stat-pill">
          <i class="fa-solid fa-building"></i>
          <span class="stat-value">{{ VendorCount }}</span>
          <span class="stat-label">Vendors</span>
        </div>
      </div>

      <!-- Navigation Cards Grid -->
      <div class="cards-grid">
        @for (card of Cards; track card.Key) {
          <div class="nav-card" [class]="card.ColorClass" (click)="NavigateToTab(card.NavItemLabel)">
            <div class="card-header">
              <div class="card-icon-circle" [class]="card.ColorClass + '-icon'">
                <i [class]="card.Icon"></i>
              </div>
              <i class="fa-solid fa-arrow-right card-arrow"></i>
            </div>
            <h3 class="card-title">{{ card.Title }}</h3>
            <p class="card-description">{{ card.Description }}</p>
            <div class="card-stats">
              @for (stat of card.Stats; track stat.Label) {
                <span class="card-stat-badge">
                  <span class="card-stat-value">{{ stat.Value }}</span>
                  {{ stat.Label }}
                </span>
              }
            </div>
          </div>
        }
      </div>
    </div>
  `, styles: ["\n    :host {\n      display: block;\n      height: 100%;\n      overflow-y: auto;\n      background: var(--mj-bg-page);\n    }\n\n    .overview-hub {\n      max-width: 1200px;\n      margin: 0 auto;\n      padding: 32px 24px;\n    }\n\n    /* Hero Section */\n    .hero-section {\n      margin-bottom: 24px;\n    }\n\n    .hero-title-row {\n      display: flex;\n      align-items: center;\n      gap: 12px;\n      margin-bottom: 8px;\n    }\n\n    .hero-icon {\n      font-size: 28px;\n      color: var(--mj-brand-primary);\n    }\n\n    .hero-title {\n      font-size: 28px;\n      font-weight: 700;\n      color: var(--mj-text-primary);\n      margin: 0;\n    }\n\n    .hero-subtitle {\n      font-size: 15px;\n      color: var(--mj-text-muted);\n      margin: 0;\n      line-height: 1.5;\n    }\n\n    /* Stats Strip */\n    .stats-strip {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 12px;\n      margin-bottom: 32px;\n    }\n\n    .stat-pill {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      padding: 8px 16px;\n      background: var(--mj-bg-surface);\n      border: 1px solid var(--mj-border-default);\n      border-radius: 24px;\n      font-size: 13px;\n      color: var(--mj-text-secondary);\n    }\n\n    .stat-pill i {\n      color: var(--mj-brand-primary);\n      font-size: 14px;\n    }\n\n    .stat-value {\n      font-weight: 700;\n      color: var(--mj-text-primary);\n    }\n\n    .stat-label {\n      color: var(--mj-text-muted);\n    }\n\n    /* Cards Grid */\n    .cards-grid {\n      display: grid;\n      grid-template-columns: repeat(3, 1fr);\n      gap: 20px;\n    }\n\n    .nav-card {\n      position: relative;\n      background: var(--mj-bg-surface);\n      border: 1px solid var(--mj-border-default);\n      border-radius: 12px;\n      padding: 24px;\n      cursor: pointer;\n      transition: transform 0.2s ease, box-shadow 0.2s ease;\n      overflow: hidden;\n    }\n\n    .nav-card::before {\n      content: '';\n      position: absolute;\n      top: 0;\n      left: 0;\n      right: 0;\n      height: 4px;\n    }\n\n    .nav-card:hover {\n      transform: translateY(-4px);\n      box-shadow: 0 8px 24px color-mix(in srgb, var(--mj-brand-primary) 15%, transparent);\n    }\n\n    .nav-card:hover .card-arrow {\n      transform: translateX(4px);\n    }\n\n    /* Card color variants - top border */\n    .card-analytics::before { background: var(--mj-brand-primary); }\n    .card-agents::before { background: var(--mj-status-success); }\n    .card-prompts::before { background: var(--mj-brand-primary); }\n    .card-models::before { background: var(--mj-color-violet-500, #8b5cf6); }\n    .card-requests::before { background: var(--mj-status-warning); }\n    .card-config::before { background: var(--mj-text-muted); }\n\n    /* Card icon circles */\n    .card-header {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      margin-bottom: 16px;\n    }\n\n    .card-icon-circle {\n      width: 48px;\n      height: 48px;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      font-size: 20px;\n    }\n\n    .card-analytics-icon {\n      background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n      color: var(--mj-brand-primary);\n    }\n\n    .card-agents-icon {\n      background: color-mix(in srgb, var(--mj-status-success) 12%, var(--mj-bg-surface));\n      color: var(--mj-status-success);\n    }\n\n    .card-prompts-icon {\n      background: color-mix(in srgb, var(--mj-brand-primary) 12%, var(--mj-bg-surface));\n      color: var(--mj-brand-primary);\n    }\n\n    .card-models-icon {\n      background: color-mix(in srgb, var(--mj-color-violet-500, #8b5cf6) 12%, var(--mj-bg-surface));\n      color: var(--mj-color-violet-500, #8b5cf6);\n    }\n\n    .card-requests-icon {\n      background: color-mix(in srgb, var(--mj-status-warning) 12%, var(--mj-bg-surface));\n      color: var(--mj-status-warning);\n    }\n\n    .card-config-icon {\n      background: var(--mj-bg-surface-sunken);\n      color: var(--mj-text-muted);\n    }\n\n    .card-arrow {\n      color: var(--mj-text-muted);\n      font-size: 14px;\n      transition: transform 0.2s ease;\n    }\n\n    .card-title {\n      font-size: 17px;\n      font-weight: 600;\n      color: var(--mj-text-primary);\n      margin: 0 0 8px 0;\n    }\n\n    .card-description {\n      font-size: 13px;\n      color: var(--mj-text-muted);\n      line-height: 1.5;\n      margin: 0 0 16px 0;\n    }\n\n    .card-stats {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 8px;\n    }\n\n    .card-stat-badge {\n      display: inline-flex;\n      align-items: center;\n      gap: 4px;\n      padding: 4px 10px;\n      background: var(--mj-bg-surface-sunken);\n      border-radius: 12px;\n      font-size: 12px;\n      color: var(--mj-text-secondary);\n    }\n\n    .card-stat-value {\n      font-weight: 700;\n      color: var(--mj-text-primary);\n    }\n\n    /* Responsive */\n    @media (max-width: 1024px) {\n      .cards-grid {\n        grid-template-columns: repeat(2, 1fr);\n      }\n    }\n\n    @media (max-width: 640px) {\n      .cards-grid {\n        grid-template-columns: 1fr;\n      }\n\n      .overview-hub {\n        padding: 20px 16px;\n      }\n\n      .hero-title {\n        font-size: 22px;\n      }\n\n      .stats-strip {\n        gap: 8px;\n      }\n    }\n  "] }]
    }], null, null); })();
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AIOverviewHubComponent, { className: "AIOverviewHubComponent", filePath: "src/AI/components/overview/ai-overview-hub.component.ts", lineNumber: 340 }); })();
/** Tree-shaking prevention */
export function LoadAIOverviewHub() { }
//# sourceMappingURL=ai-overview-hub.component.js.map