    /* ==================== CSS RESET & BASE ==================== */
    *, *::before, *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    :root {
      --background: #0a0b14;
      --foreground: #f0f0f5;
      --card: #12131f;
      --card-hover: #181a29;
      --primary: #22d3bb;
      --primary-dark: #14b8a6;
      --primary-glow: rgba(34, 211, 187, 0.3);
      --secondary: #1e1f2e;
      --muted: #6b7280;
      --muted-foreground: #9ca3af;
      --border: #2a2b3d;
      --border-light: rgba(255, 255, 255, 0.1);
      --success: #22c55e;
      --warning: #f59e0b;
      --error: #ef4444;
      --info: #3b82f6;
      --glass: rgba(18, 19, 31, 0.7);
      --glass-border: rgba(255, 255, 255, 0.08);
      --radius: 12px;
      --radius-sm: 8px;
      --radius-lg: 16px;
      --sidebar-width: 260px;
      --navbar-height: 64px;
    }

    html {
      font-size: 16px;
      scroll-behavior: smooth;
    }

    body {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
      background: var(--background);
      color: var(--foreground);
      line-height: 1.6;
      min-height: 100vh;
      overflow-x: hidden;
    }

    /* Custom Scrollbar */
    ::-webkit-scrollbar {
      width: 6px;
      height: 6px;
    }

    ::-webkit-scrollbar-track {
      background: transparent;
    }

    ::-webkit-scrollbar-thumb {
      background: var(--border);
      border-radius: 3px;
    }

    ::-webkit-scrollbar-thumb:hover {
      background: var(--muted);
    }

    /* ==================== ANIMATIONS ==================== */
    @keyframes fadeIn {
      from { opacity: 0; transform: translateY(10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes slideInLeft {
      from { opacity: 0; transform: translateX(-20px); }
      to { opacity: 1; transform: translateX(0); }
    }

    @keyframes slideInRight {
      from { opacity: 0; transform: translateX(20px); }
      to { opacity: 1; transform: translateX(0); }
    }

    @keyframes slideIn {
      from { opacity: 0; transform: translateY(-10px); }
      to { opacity: 1; transform: translateY(0); }
    }

    @keyframes pulse {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.5; }
    }

    @keyframes pulseGlow {
      0%, 100% { box-shadow: 0 0 20px var(--primary-glow); }
      50% { box-shadow: 0 0 40px var(--primary-glow); }
    }

    @keyframes spin {
      to { transform: rotate(360deg); }
    }

    .spinning {
      animation: spin 1s linear infinite;
    }

    .animate-fade-in {
      animation: fadeIn 0.4s ease-out forwards;
    }

    .animate-slide-left {
      animation: slideInLeft 0.3s ease-out forwards;
    }

    .animate-slide-right {
      animation: slideInRight 0.3s ease-out forwards;
    }

    .animate-pulse {
      animation: pulse 2s ease-in-out infinite;
    }

    .animate-pulse-glow {
      animation: pulseGlow 2s ease-in-out infinite;
    }

    /* ==================== UTILITIES ==================== */
    .glass {
      background: var(--glass);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border: 1px solid var(--glass-border);
    }

    .glass-card {
      background: linear-gradient(135deg, rgba(18, 19, 31, 0.9), rgba(18, 19, 31, 0.6));
      backdrop-filter: blur(20px);
      -webkit-backdrop-filter: blur(20px);
      border: 1px solid var(--glass-border);
    }

    .glow-accent {
      box-shadow: 0 0 30px var(--primary-glow);
    }

    .text-gradient {
      background: linear-gradient(135deg, var(--primary), #60a5fa);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    /* ==================== SIDEBAR ==================== */
    .sidebar {
      position: fixed;
      left: 0;
      top: 0;
      width: var(--sidebar-width);
      height: 100vh;
      background: #08090f;
      border-right: 1px solid var(--border);
      display: flex;
      flex-direction: column;
      z-index: 100;
      transition: transform 0.3s ease;
    }

    .sidebar-header {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 16px 20px;
      height: var(--navbar-height);
      border-bottom: 1px solid var(--border);
    }

    .sidebar-header-link {
      display: flex;
      align-items: center;
      gap: 12px;
      text-decoration: none;
      color: inherit;
      flex: 1;
      min-width: 0;
      border-radius: var(--radius-sm);
      transition: opacity 0.2s ease;
    }

    .sidebar-header-link:hover {
      opacity: 0.8;
    }

    .sidebar-logo {
      width: 36px;
      height: 36px;
      background: transparent;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .sidebar-logo img {
      width: 36px;
      height: 36px;
      object-fit: contain;
    }

    .sidebar-logo svg {
      width: 22px;
      height: 22px;
      color: var(--background);
    }

    .sidebar-brand {
      font-size: 1.25rem;
      font-weight: 600;
      color: var(--foreground);
    }

    .sidebar-nav {
      flex: 1;
      padding: 16px 12px;
      overflow-y: auto;
    }

    .nav-section {
      margin-bottom: 24px;
    }

    .nav-section-title {
      font-size: 0.7rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--muted);
      padding: 0 12px;
      margin-bottom: 8px;
    }

    .nav-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 10px 12px;
      border-radius: var(--radius-sm);
      color: var(--muted-foreground);
      text-decoration: none;
      font-size: 0.9rem;
      font-weight: 500;
      transition: all 0.2s ease;
      cursor: pointer;
      border: none;
      background: none;
      width: 100%;
      text-align: left;
      position: relative;
    }

    .nav-item:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .nav-item.active {
      background: linear-gradient(135deg, rgba(34, 211, 187, 0.15), rgba(34, 211, 187, 0.05));
      color: var(--primary);
    }

    .nav-item.active::before {
      content: '';
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      width: 3px;
      height: 24px;
      background: var(--primary);
      border-radius: 0 2px 2px 0;
    }

    .ui-toast-container {
      position: fixed;
      top: 16px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      flex-direction: column;
      gap: 10px;
      z-index: 2000;
      width: min(92vw, 520px);
      pointer-events: none;
    }

    .ui-toast {
      border: 1px solid var(--border);
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 252, 255, 0.98));
      color: #17304f;
      border-radius: 12px;
      padding: 12px;
      line-height: 1.4;
      white-space: pre-line;
      box-shadow: 0 14px 34px rgba(15, 23, 42, 0.18);
      opacity: 0;
      transform: translateY(-8px);
      transition: opacity 0.2s ease, transform 0.2s ease;
      pointer-events: auto;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: start;
      gap: 10px;
    }

    .ui-toast.show {
      opacity: 1;
      transform: translateY(0);
    }

    .ui-toast.success {
      border-color: rgba(22, 163, 74, 0.32);
      box-shadow: 0 14px 34px rgba(22, 163, 74, 0.14);
    }

    .ui-toast.error {
      border-color: rgba(220, 38, 38, 0.3);
      box-shadow: 0 14px 34px rgba(220, 38, 38, 0.14);
    }

    .ui-toast.warning {
      border-color: rgba(217, 119, 6, 0.3);
      box-shadow: 0 14px 34px rgba(217, 119, 6, 0.14);
    }

    .ui-toast.info {
      border-color: rgba(37, 99, 235, 0.3);
      box-shadow: 0 14px 34px rgba(37, 99, 235, 0.14);
    }

    .ui-toast-icon {
      width: 26px;
      height: 26px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 0.85rem;
      font-weight: 700;
      color: #fff;
      margin-top: 2px;
    }

    .ui-toast.success .ui-toast-icon {
      background: #16a34a;
    }

    .ui-toast.error .ui-toast-icon {
      background: #dc2626;
    }

    .ui-toast.warning .ui-toast-icon {
      background: #d97706;
    }

    .ui-toast.info .ui-toast-icon {
      background: #2563eb;
    }

    .ui-toast-title {
      font-size: 0.86rem;
      font-weight: 700;
      margin-bottom: 2px;
      letter-spacing: 0.02em;
      text-transform: uppercase;
      color: #1f3652;
    }

    .ui-toast-message {
      font-size: 0.93rem;
      color: #274260;
      line-height: 1.45;
    }

    .ui-toast-close {
      border: 0;
      background: transparent;
      color: #64748b;
      width: 24px;
      height: 24px;
      border-radius: 6px;
      cursor: pointer;
      font-size: 1rem;
      line-height: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      transition: background 0.2s ease, color 0.2s ease;
    }

    .ui-toast-close:hover {
      background: #e2e8f0;
      color: #334155;
    }

    .nav-item svg {
      width: 20px;
      height: 20px;
      flex-shrink: 0;
    }

    .nav-badge {
      margin-left: auto;
      padding: 2px 8px;
      background: var(--primary);
      color: var(--background);
      border-radius: 10px;
      font-size: 0.75rem;
      font-weight: 600;
    }

    .sidebar-footer {
      padding: 16px;
      border-top: 1px solid var(--border);
    }

    .user-card {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px;
      border-radius: var(--radius);
      background: var(--secondary);
    }

    .user-avatar {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--primary), #60a5fa);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      font-size: 1rem;
      color: var(--background);
    }

    .user-info {
      flex: 1;
      min-width: 0;
    }

    .user-name {
      font-weight: 600;
      font-size: 0.9rem;
      color: var(--foreground);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .user-email {
      font-size: 0.75rem;
      color: var(--muted);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    /* Mobile Menu Button */
    .mobile-menu-btn {
      display: none;
      position: fixed;
      top: 16px;
      left: 16px;
      z-index: 150;
      width: 44px;
      height: 44px;
      border-radius: var(--radius-sm);
      background: var(--card);
      border: 1px solid var(--border);
      color: var(--foreground);
      cursor: pointer;
      align-items: center;
      justify-content: center;
    }

    .mobile-menu-btn svg {
      width: 24px;
      height: 24px;
    }

    .sidebar-overlay {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.6);
      backdrop-filter: blur(4px);
      z-index: 90;
    }

    .sidebar-close {
      display: none;
      position: absolute;
      top: 16px;
      right: 12px;
      width: 32px;
      height: 32px;
      border-radius: var(--radius-sm);
      background: transparent;
      border: none;
      color: var(--muted);
      cursor: pointer;
      align-items: center;
      justify-content: center;
    }

    .sidebar-close:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    /* ==================== MAIN CONTENT ==================== */
    .main-content {
      margin-left: var(--sidebar-width);
      min-height: 100vh;
    }

    /* ==================== TOP NAVBAR ==================== */
    .navbar {
      position: sticky;
      top: 0;
      height: var(--navbar-height);
      background: rgba(10, 11, 20, 0.8);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border-bottom: 1px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 24px;
      z-index: 50;
    }

    .navbar-left {
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .page-title {
      font-size: 1.25rem;
      font-weight: 600;
      color: var(--foreground);
    }

    .search-box {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 10px 16px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      min-width: 280px;
      transition: all 0.2s ease;
    }

    .search-box:focus-within {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .search-box svg {
      width: 18px;
      height: 18px;
      color: var(--muted);
    }

    .search-box input {
      flex: 1;
      background: none;
      border: none;
      outline: none;
      color: var(--foreground);
      font-size: 0.9rem;
    }

    .search-box input::placeholder {
      color: var(--muted);
    }

    .search-shortcut {
      padding: 4px 8px;
      background: var(--card);
      border-radius: 4px;
      font-size: 0.7rem;
      color: var(--muted);
      font-family: 'JetBrains Mono', monospace;
    }

    .navbar-right {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    /* User Profile Section */
    .user-profile-section {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 0 12px;
      border-right: 1px solid var(--border);
    }

    .user-info {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      font-size: 0.85rem;
    }

    .user-name {
      color: var(--foreground);
      font-weight: 500;
    }

    .user-role {
      color: var(--muted);
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }

    .user-role.admin {
      color: #fbbf24;
    }

    .user-selector-trigger {
      position: relative;
    }

    /* User Selector Modal */
    .user-selector-modal {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.6);
      display: none;
      align-items: center;
      justify-content: center;
      z-index: 1000;
    }

    .user-selector-modal.open {
      display: flex;
    }

    .user-selector-content {
      background: var(--card);
      border-radius: var(--radius-lg);
      padding: 32px;
      width: 90%;
      max-width: 500px;
      box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
      border: 1px solid var(--border);
    }

    .user-selector-header {
      margin-bottom: 24px;
    }

    .user-selector-header h3 {
      color: var(--foreground);
      margin-bottom: 4px;
    }

    .user-selector-header p {
      color: var(--muted);
      font-size: 0.9rem;
    }

    .user-selector-close {
      position: absolute;
      top: 16px;
      right: 16px;
      background: var(--card-hover);
      border: none;
      color: var(--foreground);
      cursor: pointer;
      width: 32px;
      height: 32px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.2s ease;
    }

    .user-selector-close:hover {
      background: var(--border);
    }

    .user-list {
      display: flex;
      flex-direction: column;
      gap: 8px;
      max-height: 400px;
      overflow-y: auto;
    }

    .user-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px;
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
      border: 1px solid transparent;
    }

    .user-item:hover {
      background: var(--secondary);
      border-color: var(--border);
    }

    .user-item.active {
      background: var(--primary)20;
      border-color: var(--primary);
    }

    .user-avatar {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: var(--primary)20;
      color: var(--primary);
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      font-size: 0.9rem;
    }

    .user-item.active .user-avatar {
      background: var(--primary);
      color: var(--background);
    }

    .user-item-info {
      flex: 1;
    }

    .user-item-name {
      color: var(--foreground);
      font-weight: 500;
      font-size: 0.9rem;
    }

    .user-item-email {
      color: var(--muted);
      font-size: 0.8rem;
    }

    .user-item-badge {
      background: var(--warning);
      color: var(--background);
      padding: 2px 8px;
      border-radius: 4px;
      font-size: 0.7rem;
      font-weight: 600;
      margin-left: 8px;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 10px 20px;
      border-radius: var(--radius-sm);
      font-size: 0.9rem;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.2s ease;
      border: none;
      text-decoration: none;
    }

    .btn-primary {
      background: var(--primary);
      color: var(--background);
    }

    .btn-primary:hover {
      background: var(--primary-dark);
      box-shadow: 0 0 20px var(--primary-glow);
    }

    .btn-secondary {
      background: var(--secondary);
      color: var(--foreground);
      border: 1px solid var(--border);
    }

    .btn-secondary:hover {
      background: var(--card-hover);
      border-color: var(--muted);
    }

    .btn-ghost {
      background: transparent;
      color: var(--muted-foreground);
      padding: 8px;
    }

    .btn-ghost:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .icon-btn {
      width: 40px;
      height: 40px;
      padding: 0;
      border-radius: var(--radius-sm);
      background: var(--secondary);
      border: 1px solid var(--border);
      color: var(--muted-foreground);
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      transition: all 0.2s ease;
    }

    .icon-btn:hover {
      background: var(--card-hover);
      color: var(--foreground);
    }

    .icon-btn svg {
      width: 20px;
      height: 20px;
    }

    .notification-dot {
      position: absolute;
      top: 8px;
      right: 8px;
      width: 8px;
      height: 8px;
      background: var(--error);
      border-radius: 50%;
      border: 2px solid var(--secondary);
    }

    .avatar-btn {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--primary), #60a5fa);
      border: none;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 600;
      color: var(--background);
      font-size: 0.9rem;
      transition: all 0.2s ease;
    }

    .avatar-btn:hover {
      box-shadow: 0 0 20px var(--primary-glow);
    }

    /* ==================== DASHBOARD CONTENT ==================== */
    .dashboard {
      padding: 24px;
    }

    .dashboard-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 24px;
    }

    .dashboard-title {
      font-size: 1.75rem;
      font-weight: 700;
      color: var(--foreground);
    }

    .dashboard-subtitle {
      color: var(--muted);
      font-size: 0.9rem;
      margin-top: 4px;
    }

    /* ==================== DASHBOARD STAT CARDS ==================== */
    .dashboard-stats-row {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-bottom: 24px;
    }

    .dashboard-stat-card {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 20px;
      display: flex;
      align-items: center;
      gap: 16px;
      transition: all 0.3s ease;
    }

    .dashboard-stat-card:hover {
      border-color: var(--primary);
      transform: translateY(-2px);
      box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
    }

    .dashboard-stat-icon {
      width: 48px;
      height: 48px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .dashboard-stat-info {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .dashboard-stat-value {
      font-size: 1.75rem;
      font-weight: 700;
      color: var(--foreground);
      line-height: 1.2;
    }

    .dashboard-stat-label {
      font-size: 0.8rem;
      color: var(--muted);
      font-weight: 500;
    }

    /* ==================== ANALYTICS CARDS ==================== */
    .stats-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
      margin-bottom: 24px;
    }

    .stat-card {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 20px;
      transition: all 0.3s ease;
    }

    .stat-card:hover {
      border-color: var(--primary);
      transform: translateY(-2px);
      box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
    }

    .stat-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 12px;
    }

    .stat-icon {
      width: 44px;
      height: 44px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .stat-icon svg {
      width: 22px;
      height: 22px;
    }

    .stat-icon.primary {
      background: rgba(34, 211, 187, 0.15);
      color: var(--primary);
    }

    .stat-icon.info {
      background: rgba(59, 130, 246, 0.15);
      color: var(--info);
    }

    .stat-icon.warning {
      background: rgba(245, 158, 11, 0.15);
      color: var(--warning);
    }

    .stat-icon.success {
      background: rgba(34, 197, 94, 0.15);
      color: var(--success);
    }

    .stat-trend {
      display: flex;
      align-items: center;
      gap: 4px;
      font-size: 0.8rem;
      font-weight: 500;
      padding: 4px 8px;
      border-radius: 20px;
    }

    .stat-trend.up {
      background: rgba(34, 197, 94, 0.15);
      color: var(--success);
    }

    .stat-trend.down {
      background: rgba(239, 68, 68, 0.15);
      color: var(--error);
    }

    .stat-trend svg {
      width: 14px;
      height: 14px;
    }

    .stat-value {
      font-size: 2rem;
      font-weight: 700;
      color: var(--foreground);
      line-height: 1.2;
    }

    .stat-label {
      font-size: 0.85rem;
      color: var(--muted);
      margin-top: 4px;
    }

    /* ==================== DASHBOARD GRID ==================== */
    .dashboard-grid {
      display: grid;
      grid-template-columns: 1fr 400px;
      gap: 24px;
      margin-bottom: 24px;
    }

    /* ==================== CHART CARD ==================== */
    .card {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      overflow: hidden;
    }

    .card-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 20px;
      border-bottom: 1px solid var(--border);
    }

    .card-title {
      font-size: 1rem;
      font-weight: 600;
      color: var(--foreground);
    }

    .card-actions {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .card-body {
      padding: 20px;
    }

    .chart-controls {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .chart-btn {
      padding: 6px 12px;
      background: transparent;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .chart-btn:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .chart-btn.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .chart-container {
      height: 280px;
      position: relative;
    }

    .chart-canvas {
      width: 100%;
      height: 100%;
    }

    /* ==================== WORKFLOW BUILDER ==================== */
    .workflow-card {
      height: 100%;
      display: flex;
      flex-direction: column;
    }

    .workflow-body {
      flex: 1;
      padding: 20px;
      display: flex;
      flex-direction: column;
      gap: 16px;
    }

    .workflow-step {
      display: flex;
      align-items: center;
      gap: 16px;
      padding: 16px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
      position: relative;
    }

    .workflow-step:hover {
      border-color: var(--primary);
      background: var(--card-hover);
    }

    .workflow-step.active {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .step-icon {
      width: 44px;
      height: 44px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .step-icon img {
      width: 28px;
      height: 28px;
      border-radius: 6px;
    }

    .step-content {
      flex: 1;
      min-width: 0;
    }

    .step-type {
      font-size: 0.7rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--primary);
      margin-bottom: 2px;
    }

    .step-name {
      font-weight: 600;
      color: var(--foreground);
      font-size: 0.9rem;
    }

    .step-desc {
      font-size: 0.8rem;
      color: var(--muted);
      margin-top: 2px;
    }

    .step-status {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: var(--success);
    }

    .step-status.pending {
      background: var(--warning);
    }

    .step-connector {
      width: 2px;
      height: 20px;
      background: var(--border);
      margin-left: 37px;
    }

    .add-step-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 16px;
      border: 2px dashed var(--border);
      border-radius: var(--radius-sm);
      background: transparent;
      color: var(--muted);
      cursor: pointer;
      transition: all 0.2s ease;
      font-size: 0.9rem;
    }

    .add-step-btn:hover {
      border-color: var(--primary);
      color: var(--primary);
      background: rgba(34, 211, 187, 0.05);
    }

    .workflow-footer {
      padding: 16px 20px;
      border-top: 1px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .workflow-status {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 0.85rem;
      color: var(--muted);
    }

    .status-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--success);
    }

    .status-dot.running {
      background: var(--primary);
      animation: pulse 1s ease-in-out infinite;
    }

    /* ==================== QUOTA / USAGE SECTION ==================== */
    .quota-section {
      margin-bottom: 24px;
    }

    .quota-card {
      background: linear-gradient(135deg, var(--card), var(--secondary));
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 24px;
      display: grid;
      grid-template-columns: 1fr 2fr;
      gap: 32px;
      align-items: center;
    }

    @media (max-width: 768px) {
      .quota-card {
        grid-template-columns: 1fr;
        gap: 24px;
      }

      .dashboard-stats-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
      }

      .dashboard-stat-card {
        padding: 16px;
      }

      .dashboard-stat-value {
        font-size: 1.4rem;
      }

      .workflow-table-dates {
        gap: 4px;
      }

      .workflow-table-date-row {
        font-size: 0.72rem;
      }
    }

    @media (max-width: 480px) {
      .dashboard-stats-row {
        grid-template-columns: 1fr;
      }
    }

    .quota-info {
      display: flex;
      flex-direction: column;
      gap: 16px;
    }

    .quota-title {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--foreground);
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .quota-title svg {
      width: 22px;
      height: 22px;
      color: var(--primary);
    }

    .quota-numbers {
      display: flex;
      gap: 32px;
    }

    .quota-item {
      display: flex;
      flex-direction: column;
      gap: 4px;
    }

    .quota-value {
      font-size: 1.75rem;
      font-weight: 700;
      color: var(--foreground);
    }

    .quota-value.consumed {
      color: var(--warning);
    }

    .quota-value.remaining {
      color: var(--success);
    }

    .quota-label {
      font-size: 0.8rem;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: 0.5px;
    }

    .quota-progress-container {
      flex: 1;
    }

    .quota-progress-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 12px;
    }

    .quota-progress-text {
      font-size: 0.9rem;
      color: var(--muted-foreground);
    }

    .quota-progress-percent {
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--foreground);
    }

    .quota-progress-bar {
      height: 12px;
      background: var(--secondary);
      border-radius: 6px;
      overflow: hidden;
      position: relative;
    }

    .quota-progress-fill {
      height: 100%;
      border-radius: 6px;
      transition: width 0.5s ease;
      position: relative;
      overflow: hidden;
    }

    .quota-progress-fill.low {
      background: linear-gradient(90deg, var(--success), #2dd4bf);
    }

    .quota-progress-fill.medium {
      background: linear-gradient(90deg, var(--warning), #fbbf24);
    }

    .quota-progress-fill.high {
      background: linear-gradient(90deg, var(--error), #f87171);
    }

    .quota-progress-fill::after {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
      animation: shimmer 2s infinite;
    }

    @keyframes shimmer {
      0% { transform: translateX(-100%); }
      100% { transform: translateX(100%); }
    }

    .quota-upgrade {
      margin-top: 16px;
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .quota-upgrade-text {
      font-size: 0.85rem;
      color: var(--muted);
    }

    .quota-upgrade-btn {
      padding: 8px 16px;
      background: var(--primary);
      color: var(--background);
      border: none;
      border-radius: var(--radius-sm);
      font-size: 0.85rem;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.2s ease;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    .email-variable-chip-list {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 8px;
    }
    .smtp-config-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 12px;
    }

    .gs-source-config-panel {
      margin-top: 14px;
      padding: 16px;
      border: 1px solid var(--border);
      border-radius: var(--radius-md);
      background: #f8fbff;
    }

    .gs-source-config-panel .section-subtitle {
      margin: 8px 0 10px;
    }
    .email-variable-chip {
      border: 1px solid #cfd8e3;
      background: #f8fbff;
      color: #1f3553;
      border-radius: 999px;
      padding: 6px 12px;
      font-size: 0.85rem;
      cursor: pointer;
    }
    .email-variable-chip:hover {
      background: #e9f3ff;
    }
    .email-variable-row {
      display: grid;
      grid-template-columns: 1fr 1.5fr;
      gap: 10px;
      align-items: center;
      margin-bottom: 10px;
    }
    .email-variable-row code {
      background: #f3f4f6;
      border: 1px solid #e5e7eb;
      border-radius: 6px;
      padding: 6px 8px;
    }

    .quota-upgrade-btn:hover {
      opacity: 0.9;
      transform: translateY(-1px);
    }

    .quota-upgrade-btn svg {
      width: 14px;
      height: 14px;
    }

    /* ==================== WORKFLOW TABLES SECTION ==================== */
    .workflow-tables-section {
      margin-top: 24px;
    }

    .workflow-tables-tabs {
      display: flex;
      gap: 8px;
      margin-bottom: 20px;
      border-bottom: 1px solid var(--border);
      padding-bottom: 16px;
    }

    .workflow-table-tab {
      padding: 10px 20px;
      background: transparent;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted-foreground);
      font-size: 0.9rem;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.2s ease;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .workflow-table-tab:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .workflow-table-tab.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .workflow-table-tab svg {
      width: 16px;
      height: 16px;
    }

    .workflow-table-tab .tab-count {
      background: rgba(255,255,255,0.2);
      padding: 2px 8px;
      border-radius: 10px;
      font-size: 0.75rem;
    }

    .workflow-table-tab.active .tab-count {
      background: rgba(0,0,0,0.2);
    }

    .workflow-table-container {
      display: none;
    }

    .workflow-table-container.active {
      display: block;
    }

    .workflow-data-table {
      width: 100%;
      border-collapse: collapse;
    }

    .workflow-data-table thead {
      background: var(--secondary);
    }

    .workflow-data-table th {
      padding: 14px 16px;
      text-align: left;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: 0.5px;
      border-bottom: 1px solid var(--border);
    }

    .workflow-data-table td {
      padding: 16px;
      border-bottom: 1px solid var(--border);
      vertical-align: middle;
    }

    .workflow-data-table tbody tr {
      transition: background 0.15s ease;
    }

    .workflow-data-table tbody tr:hover {
      background: var(--secondary);
    }

    .workflow-data-table tbody tr.workflow-clickable-row {
      cursor: pointer;
    }

    .workflow-table-info {
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .workflow-table-apps {
      display: flex;
      align-items: center;
    }

    .workflow-table-app-icon {
      width: 36px;
      height: 36px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1rem;
      font-weight: 600;
      border: 2px solid var(--background);
    }

    .workflow-table-app-icon:not(:first-child) {
      margin-left: -10px;
    }

    .workflow-table-details {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .workflow-table-name {
      font-weight: 600;
      color: var(--foreground);
      font-size: 0.95rem;
    }

    .workflow-table-desc {
      font-size: 0.8rem;
      color: var(--muted);
    }

    .workflow-table-status {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 6px 12px;
      border-radius: 20px;
      font-size: 0.8rem;
      font-weight: 500;
    }

    .workflow-table-status.active {
      background: rgba(34, 197, 94, 0.15);
      color: var(--success);
    }

    .workflow-table-status.inactive {
      background: rgba(156, 163, 175, 0.15);
      color: var(--muted);
    }

    .workflow-table-status.error {
      background: rgba(239, 68, 68, 0.15);
      color: var(--error);
    }

    .workflow-table-status svg {
      width: 12px;
      height: 12px;
    }

    .workflow-table-executions {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .workflow-table-exec-count {
      font-weight: 600;
      color: var(--foreground);
    }

    .workflow-table-exec-label {
      font-size: 0.75rem;
      color: var(--muted);
    }

    .workflow-table-dates {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }

    .workflow-table-date-row {
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 0.8rem;
      color: var(--muted);
    }

    .workflow-table-date-row svg {
      flex-shrink: 0;
      opacity: 0.6;
    }

    .workflow-table-date-label {
      color: var(--muted);
      white-space: nowrap;
    }

    .workflow-table-date-value {
      color: var(--foreground);
      font-weight: 500;
    }

    .workflow-table-date-value.muted {
      color: var(--muted);
      font-style: italic;
      font-weight: 400;
    }

    /* ==================== EMPTY STATE ==================== */
    .workflow-table-empty {
      padding: 0 !important;
      border-bottom: none !important;
    }

    .workflow-table-empty-state {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 12px;
      padding: 48px 24px;
      color: var(--muted);
    }

    .workflow-table-empty-state svg {
      opacity: 0.35;
    }

    .workflow-table-empty-state p {
      font-size: 0.88rem;
      max-width: 340px;
      text-align: center;
      line-height: 1.5;
      margin: 0;
    }

    /* ==================== GETTING STARTED ==================== */
    .getting-started-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      padding: 4px 0 8px;
    }

    .getting-started-card {
      display: flex;
      gap: 14px;
      align-items: flex-start;
      padding: 16px;
      border-radius: 12px;
      border: 1px solid rgba(148, 163, 184, 0.15);
      background: rgba(15, 23, 42, 0.3);
      transition: background 0.2s ease, transform 0.15s ease;
    }

    .getting-started-card:hover {
      background: rgba(15, 23, 42, 0.5);
      transform: translateY(-2px);
    }

    .getting-started-step {
      flex-shrink: 0;
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: rgba(34, 211, 187, 0.15);
      color: var(--primary);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.85rem;
      font-weight: 700;
    }

    .getting-started-content h4 {
      font-size: 0.88rem;
      font-weight: 600;
      color: var(--foreground);
      margin: 0 0 4px;
    }

    .getting-started-content p {
      font-size: 0.78rem;
      color: var(--muted);
      margin: 0;
      line-height: 1.45;
    }

    @media (max-width: 768px) {
      .getting-started-grid {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    @media (max-width: 480px) {
      .getting-started-grid {
        grid-template-columns: 1fr;
      }
    }

    .workflow-table-toggle {
      position: relative;
      width: 44px;
      height: 24px;
      background: var(--muted);
      border-radius: 12px;
      cursor: pointer;
      transition: background 0.2s ease;
    }

    .workflow-table-toggle.on {
      background: var(--primary);
    }

    .workflow-table-toggle::after {
      content: '';
      position: absolute;
      top: 3px;
      left: 3px;
      width: 18px;
      height: 18px;
      background: white;
      border-radius: 50%;
      transition: transform 0.2s ease;
    }

    .workflow-table-toggle.on::after {
      transform: translateX(20px);
    }

    .workflow-table-toggle.readonly {
      cursor: not-allowed;
      opacity: 0.55;
    }

    .workflow-table-readonly-tag {
      display: inline-flex;
      align-items: center;
      border: 1px solid var(--border);
      background: var(--secondary);
      color: var(--muted);
      border-radius: 12px;
      padding: 5px 10px;
      font-size: 0.75rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.03em;
    }

    .workflow-table-actions {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .workflow-table-action-btn {
      width: 32px;
      height: 32px;
      border-radius: var(--radius-sm);
      background: transparent;
      border: 1px solid var(--border);
      color: var(--muted);
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.2s ease;
    }

    .workflow-table-action-btn:hover {
      background: var(--secondary);
      color: var(--foreground);
      border-color: var(--primary);
    }

    .workflow-table-action-btn svg {
      width: 16px;
      height: 16px;
    }

    .empty-table-message {
      padding: 60px 20px;
      text-align: center;
      color: var(--muted);
    }

    .empty-table-message svg {
      width: 48px;
      height: 48px;
      margin-bottom: 16px;
      opacity: 0.5;
    }

    .empty-table-message p {
      font-size: 0.95rem;
    }

    /* ==================== WORKFLOW DETAILS DRAWER ==================== */
    .workflow-drawer-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.42);
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.2s ease, visibility 0.2s ease;
      z-index: 230;
    }

    .workflow-drawer-overlay.open {
      opacity: 1;
      visibility: visible;
    }

    .workflow-drawer {
      position: fixed;
      right: 0;
      top: 0;
      width: min(420px, 94vw);
      height: 100vh;
      background:
        radial-gradient(circle at 0% 0%, rgba(56, 189, 248, 0.14), transparent 34%),
        linear-gradient(180deg, #101827 0%, #0c1422 100%);
      border-left: 1px solid rgba(148, 163, 184, 0.25);
      z-index: 240;
      transform: translateX(100%);
      transition: transform 0.25s ease;
      display: flex;
      flex-direction: column;
      box-shadow: -20px 0 44px rgba(2, 8, 23, 0.52);
    }

    .workflow-drawer.open {
      transform: translateX(0);
    }

    .workflow-drawer-header {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      padding: 20px 20px 16px;
      border-bottom: 1px solid rgba(148, 163, 184, 0.2);
      background: linear-gradient(120deg, rgba(34, 211, 187, 0.12), rgba(59, 130, 246, 0.14));
    }

    .workflow-drawer-kicker {
      margin: 0;
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.07em;
      color: #9fc2e4;
    }

    .workflow-drawer-title {
      margin: 4px 0 0;
      font-size: 1.15rem;
      line-height: 1.38;
      color: #f5f9ff;
      letter-spacing: 0.01em;
    }

    .workflow-drawer-close {
      width: 34px;
      height: 34px;
      border-radius: 8px;
      border: 1px solid rgba(148, 163, 184, 0.34);
      background: rgba(15, 23, 42, 0.36);
      color: #d9e7f7;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      flex-shrink: 0;
    }

    .workflow-drawer-close:hover {
      color: #ffffff;
      background: rgba(59, 130, 246, 0.24);
    }

    .workflow-drawer-close svg {
      width: 16px;
      height: 16px;
    }

    .workflow-drawer-body {
      padding: 18px 20px 24px;
      overflow-y: auto;
      display: flex;
      flex-direction: column;
      gap: 18px;
    }

    .workflow-drawer-badge-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      flex-wrap: wrap;
    }

    .workflow-drawer-status {
      display: inline-flex;
      align-items: center;
      padding: 6px 10px;
      border-radius: 999px;
      font-size: 0.78rem;
      font-weight: 600;
      text-transform: capitalize;
      background: rgba(156, 163, 175, 0.16);
      color: var(--muted);
      border: 1px solid rgba(156, 163, 175, 0.26);
    }

    .workflow-drawer-status.active {
      background: rgba(34, 197, 94, 0.14);
      color: var(--success);
      border-color: rgba(34, 197, 94, 0.3);
    }

    .workflow-drawer-status.inactive {
      background: rgba(156, 163, 175, 0.16);
      color: var(--muted);
      border-color: rgba(156, 163, 175, 0.26);
    }

    .workflow-drawer-id {
      font-size: 0.8rem;
      color: #a8c0dc;
      font-family: 'Space Mono', 'Courier New', monospace;
    }

    .workflow-drawer-section-title {
      font-size: 0.8rem;
      color: #aac3e0;
      margin-bottom: 8px;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    .workflow-drawer-flow {
      padding: 12px 13px;
      border-radius: 10px;
      border: 1px solid rgba(148, 163, 184, 0.3);
      background: rgba(15, 23, 42, 0.48);
      color: #f2f8ff;
      font-weight: 600;
    }

    .workflow-drawer-description {
      margin: 0;
      color: #d8e5f4;
      line-height: 1.55;
      background: rgba(15, 23, 42, 0.44);
      border: 1px solid rgba(148, 163, 184, 0.26);
      border-radius: 10px;
      padding: 12px;
    }

    .workflow-drawer-link-details {
      border: 1px solid rgba(148, 163, 184, 0.3);
      border-radius: 10px;
      background:
        radial-gradient(circle at 92% 8%, rgba(34, 211, 187, 0.18), transparent 46%),
        linear-gradient(155deg, rgba(59, 130, 246, 0.2), rgba(15, 23, 42, 0.28));
      color: #f5f9ff;
      padding: 14px;
      font-size: 0.87rem;
      line-height: 1.5;
    }

    .workflow-link-topbar {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 10px;
      flex-wrap: wrap;
    }

    .workflow-link-chip {
      border-radius: 999px;
      padding: 5px 10px;
      border: 1px solid rgba(34, 211, 187, 0.4);
      background: rgba(34, 211, 187, 0.12);
      color: var(--primary);
      text-transform: uppercase;
      letter-spacing: 0.04em;
      font-size: 0.7rem;
      font-weight: 700;
    }

    .workflow-link-chip.muted {
      border-color: rgba(148, 163, 184, 0.35);
      background: rgba(148, 163, 184, 0.12);
      color: var(--muted-foreground);
    }

    .workflow-link-columns {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      margin-bottom: 10px;
    }

    .workflow-link-panel {
      border: 1px solid rgba(148, 163, 184, 0.26);
      border-radius: 10px;
      background: rgba(15, 23, 42, 0.44);
      padding: 10px;
    }

    .workflow-link-panel-title {
      margin: 0 0 8px;
      font-size: 0.74rem;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: #a8c4e3;
      font-weight: 700;
    }

    .workflow-link-info-item {
      display: flex;
      flex-direction: column;
      gap: 2px;
      margin-bottom: 7px;
    }

    .workflow-link-info-item:last-child {
      margin-bottom: 0;
    }

    .workflow-link-info-label {
      color: #9eb7d4;
      font-size: 0.72rem;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      font-weight: 600;
    }

    .workflow-link-info-value {
      color: #f2f8ff;
      font-size: 0.83rem;
      word-break: break-word;
    }

    .workflow-link-actions {
      display: flex;
      gap: 8px;
      margin-bottom: 10px;
      flex-wrap: wrap;
    }

    .workflow-link-action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 8px;
      border: 1px solid rgba(59, 130, 246, 0.35);
      background: rgba(59, 130, 246, 0.24);
      color: #f2f7ff;
      font-size: 0.78rem;
      font-weight: 700;
      text-decoration: none;
      padding: 6px 10px;
      transition: transform 0.14s ease, background 0.2s ease;
    }

    .workflow-link-action:hover {
      background: rgba(59, 130, 246, 0.34);
      transform: translateY(-1px);
    }

    .workflow-map-section {
      margin-top: 2px;
    }

    .workflow-map-list {
      display: flex;
      flex-direction: column;
      gap: 8px;
      max-height: 240px;
      overflow-y: auto;
      padding-right: 4px;
    }

    .workflow-map-row {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 10px;
      border: 1px solid rgba(148, 163, 184, 0.26);
      border-radius: 10px;
      padding: 10px;
      background: rgba(15, 23, 42, 0.52);
    }

    .workflow-map-order {
      min-width: 30px;
      height: 30px;
      border-radius: 8px;
      border: 1px solid rgba(34, 211, 187, 0.35);
      color: var(--primary);
      font-weight: 700;
      font-size: 0.75rem;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      background: rgba(34, 211, 187, 0.1);
    }

    .workflow-map-head {
      display: flex;
      align-items: center;
      gap: 8px;
      flex-wrap: wrap;
      margin-bottom: 4px;
    }

    .workflow-map-mode {
      border-radius: 999px;
      font-size: 0.66rem;
      padding: 3px 8px;
      border: 1px solid rgba(148, 163, 184, 0.3);
      color: #dbe5f1;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      font-weight: 700;
    }

    .workflow-map-mode.fixed {
      border-color: rgba(245, 158, 11, 0.45);
      background: rgba(245, 158, 11, 0.13);
      color: #facc75;
    }

    .workflow-map-arrow {
      font-weight: 600;
      color: #f3f8ff;
      font-size: 0.82rem;
      word-break: break-word;
    }

    .workflow-map-meta {
      font-size: 0.73rem;
      color: #b5c8de;
      line-height: 1.45;
      word-break: break-word;
    }

    .workflow-link-empty {
      font-size: 0.8rem;
      color: #c1d4e8;
      border: 1px dashed rgba(148, 163, 184, 0.32);
      border-radius: 8px;
      padding: 10px;
      background: rgba(15, 23, 42, 0.44);
    }

    .workflow-drawer-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .workflow-drawer-item {
      border: 1px solid rgba(148, 163, 184, 0.26);
      border-radius: 10px;
      padding: 10px;
      background: rgba(15, 23, 42, 0.46);
      display: flex;
      flex-direction: column;
      gap: 5px;
    }

    .workflow-drawer-label {
      font-size: 0.72rem;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: #a6bfdb;
      font-weight: 600;
      display: flex;
      align-items: center;
      gap: 5px;
    }

    .workflow-drawer-label svg {
      flex-shrink: 0;
      opacity: 0.7;
    }

    .workflow-drawer-value {
      font-size: 0.9rem;
      color: #f3f9ff;
      font-weight: 600;
      line-height: 1.35;
      word-break: break-word;
    }

    .workflow-drawer-note {
      border-left: 3px solid var(--primary);
      border-radius: 8px;
      background: rgba(34, 211, 187, 0.14);
      color: #d9ecf8;
      padding: 10px 12px;
      font-size: 0.85rem;
      line-height: 1.45;
    }

    .workflow-drawer-section-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 10px;
      margin-bottom: 8px;
      flex-wrap: wrap;
    }

    .workflow-leads-export-btn {
      border: 1px solid rgba(59, 130, 246, 0.35);
      background: rgba(59, 130, 246, 0.24);
      color: #f2f7ff;
      border-radius: 8px;
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.02em;
      padding: 6px 10px;
      cursor: pointer;
      transition: background 0.2s ease, transform 0.15s ease;
    }

    .workflow-leads-export-btn:hover {
      background: rgba(59, 130, 246, 0.34);
      transform: translateY(-1px);
    }

    .workflow-leads-export-btn:disabled {
      opacity: 0.6;
      cursor: not-allowed;
      transform: none;
    }

    .workflow-leads-meta {
      font-size: 0.77rem;
      color: #b5c8de;
      margin-bottom: 8px;
    }

    .workflow-leads-table-wrap {
      border: 1px solid rgba(148, 163, 184, 0.26);
      border-radius: 10px;
      overflow: hidden;
      background: rgba(15, 23, 42, 0.44);
      max-height: 280px;
      overflow-y: auto;
    }

    .workflow-leads-table {
      width: 100%;
      border-collapse: collapse;
      table-layout: fixed;
    }

    .workflow-leads-table th,
    .workflow-leads-table td {
      padding: 8px 9px;
      border-bottom: 1px solid rgba(148, 163, 184, 0.2);
      text-align: left;
      word-break: break-word;
    }

    .workflow-leads-table th {
      position: sticky;
      top: 0;
      z-index: 1;
      background: rgba(15, 23, 42, 0.72);
      color: #a6bfdb;
      font-size: 0.7rem;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .workflow-leads-table td {
      color: #e9f2fd;
      font-size: 0.78rem;
    }

    .workflow-leads-empty {
      text-align: center;
      color: #c1d4e8;
      font-size: 0.78rem;
      padding: 14px 10px;
    }

    @media (max-width: 640px) {
      .workflow-drawer {
        width: 100vw;
      }

      .workflow-drawer-grid {
        grid-template-columns: 1fr;
      }

      .workflow-link-columns {
        grid-template-columns: 1fr;
      }

      .workflow-map-row {
        grid-template-columns: 1fr;
      }

      .workflow-map-order {
        width: 30px;
      }
    }

    /* ==================== NEW WORKFLOW MODAL ==================== */
    .modal-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.7);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
      z-index: 200;
      display: flex;
      align-items: flex-start;
      justify-content: center;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease, visibility 0.3s ease;
      overflow: hidden;
      padding: 24px 16px;
    }

    .modal-overlay.open {
      opacity: 1;
      visibility: visible;
    }

    .modal {
      width: 90%;
      max-width: 900px;
      height: 90vh;
      max-height: 90vh;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      overflow: hidden;
      transform: scale(0.95) translateY(20px);
      transition: transform 0.3s ease;
      display: flex;
      flex-direction: column;
      margin: 0 auto;
    }

    .modal-overlay.open .modal {
      transform: scale(1) translateY(0);
    }

    .modal-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 20px 24px;
      border-bottom: 1px solid var(--border);
    }

    .modal-title {
      font-size: 1.25rem;
      font-weight: 600;
      color: var(--foreground);
    }

    .modal-close {
      width: 36px;
      height: 36px;
      border-radius: var(--radius-sm);
      background: transparent;
      border: none;
      color: var(--muted);
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.2s ease;
    }

    .modal-close:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .modal-close svg {
      width: 20px;
      height: 20px;
    }

    .modal-body {
      flex: 1;
      overflow-y: auto;
      padding: 24px;
      min-height: 0;
    }

    /* Tabs */
    .modal-tabs {
      display: flex;
      gap: 8px;
      margin-bottom: 24px;
      border-bottom: 1px solid var(--border);
      padding-bottom: 16px;
    }

    .modal-tab {
      padding: 10px 20px;
      background: transparent;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted-foreground);
      font-size: 0.9rem;
      font-weight: 500;
      cursor: pointer;
      transition: all 0.2s ease;
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .modal-tab:hover {
      background: var(--secondary);
      color: var(--foreground);
    }

    .modal-tab.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .modal-tab svg {
      width: 18px;
      height: 18px;
    }

    /* Template Categories */
    .template-section {
      margin-bottom: 32px;
    }

    .template-section:last-child {
      margin-bottom: 0;
    }

    .template-section-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 16px;
    }

    .template-section-title {
      font-size: 1rem;
      font-weight: 600;
      color: var(--foreground);
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .template-section-title svg {
      width: 20px;
      height: 20px;
      color: var(--primary);
    }

    .template-count {
      font-size: 0.8rem;
      color: var(--muted);
      padding: 4px 10px;
      background: var(--secondary);
      border-radius: 20px;
    }

    /* Template Grid */
    .template-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
      gap: 16px;
    }

    .template-card {
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 20px;
      cursor: pointer;
      transition: all 0.2s ease;
      position: relative;
      overflow: hidden;
    }

    .template-card:hover {
      border-color: var(--primary);
      transform: translateY(-2px);
      box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3);
    }

    .template-card.popular::before {
      content: 'Popular';
      position: absolute;
      top: 12px;
      right: -24px;
      background: linear-gradient(135deg, var(--primary), #14b8a6);
      color: var(--background);
      font-size: 0.65rem;
      font-weight: 600;
      padding: 4px 30px;
      transform: rotate(45deg);
      text-transform: uppercase;
    }

    .template-apps {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 16px;
    }

    .template-app-icon {
      width: 48px;
      height: 48px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      flex-shrink: 0;
    }

    .template-connector {
      width: 32px;
      height: 2px;
      background: var(--border);
      position: relative;
    }

    .template-connector::before {
      content: '';
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      border: 5px solid transparent;
      border-left-color: var(--border);
    }

    .template-info {
      margin-bottom: 12px;
    }

    .template-name {
      font-weight: 600;
      font-size: 1rem;
      color: var(--foreground);
      margin-bottom: 4px;
    }

    .template-desc {
      font-size: 0.85rem;
      color: var(--muted);
      line-height: 1.5;
    }

    .template-meta {
      display: flex;
      align-items: center;
      gap: 16px;
      padding-top: 12px;
      border-top: 1px solid var(--border);
    }

    .template-meta-item {
      display: flex;
      align-items: center;
      gap: 6px;
      font-size: 0.8rem;
      color: var(--muted);
    }

    .template-meta-item svg {
      width: 14px;
      height: 14px;
    }

    /* Create from Scratch */
    .scratch-card {
      background: linear-gradient(135deg, rgba(34, 211, 187, 0.1), rgba(34, 211, 187, 0.02));
      border: 2px dashed var(--primary);
      border-radius: var(--radius);
      padding: 40px 20px;
      text-align: center;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .scratch-card:hover {
      background: linear-gradient(135deg, rgba(34, 211, 187, 0.15), rgba(34, 211, 187, 0.05));
      box-shadow: 0 0 30px var(--primary-glow);
    }

    .scratch-icon {
      width: 64px;
      height: 64px;
      margin: 0 auto 16px;
      background: var(--primary);
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 0 30px var(--primary-glow);
    }

    .scratch-icon svg {
      width: 32px;
      height: 32px;
      color: var(--background);
    }

    .scratch-title {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 8px;
    }

    .scratch-desc {
      font-size: 0.9rem;
      color: var(--muted);
    }

    /* Search in Modal */
    .modal-search {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 16px;
      background: var(--background);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      margin-bottom: 24px;
    }

    .modal-search:focus-within {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
      background: var(--card-hover);
    }

    .modal-search svg {
      width: 20px;
      height: 20px;
      color: var(--muted);
    }

    .modal-search input {
      flex: 1;
      background: none;
      border: none;
      outline: none;
      color: var(--foreground);
      font-size: 0.95rem;
    }

    .modal-search input::placeholder {
      color: var(--muted);
    }

    /* App Selection Step */
    .app-selection {
      display: none;
    }

    .app-selection.active {
      display: block;
    }

    .app-selection-header {
      text-align: center;
      margin-bottom: 32px;
    }

    .app-selection-title {
      font-size: 1.5rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 8px;
    }

    .app-selection-desc {
      color: var(--muted);
    }

    .app-step-indicator {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
      margin-bottom: 32px;
    }

    .step-dot {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: var(--secondary);
      border: 2px solid var(--border);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.85rem;
      font-weight: 600;
      color: var(--muted);
      transition: all 0.2s ease;
    }

    .step-dot.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .step-dot.completed {
      background: var(--success);
      border-color: var(--success);
      color: var(--background);
    }

    .step-line {
      width: 60px;
      height: 2px;
      background: var(--border);
    }

    .step-line.active {
      background: var(--primary);
    }

    .selected-apps {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 24px;
      margin-bottom: 32px;
      padding: 24px;
      background: var(--secondary);
      border-radius: var(--radius);
    }

    .selected-app {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      border: 2px solid transparent;
      border-radius: var(--radius);
      padding: 16px;
      transition: all 0.2s ease;
      cursor: pointer;
    }

    .selected-app:hover {
      border-color: var(--primary);
      box-shadow: 0 0 0 2px rgba(34, 211, 187, 0.2);
    }

    .selected-app.selecting {
      border-color: var(--primary);
      box-shadow: 0 0 0 2px rgba(34, 211, 187, 0.2);
    }

    .selected-app-icon {
      width: 64px;
      height: 64px;
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 2rem;
      transition: all 0.2s ease;
    }

    .selected-app-icon.empty {
      background: var(--card);
      border: 2px dashed var(--border);
      color: var(--muted);
      cursor: pointer;
    }

    .selected-app-icon.empty:hover {
      border-color: var(--primary);
      color: var(--primary);
    }

    .selected-app-label {
      font-size: 0.85rem;
      color: var(--muted);
    }

    .selected-app-name {
      font-size: 0.9rem;
      font-weight: 500;
      color: var(--foreground);
    }

    .flow-arrow {
      color: var(--primary);
    }

    .flow-arrow svg {
      width: 24px;
      height: 24px;
    }

    /* App Grid */
    .app-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
      gap: 12px;
    }

    .app-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 10px;
      padding: 20px 16px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .app-item:hover {
      border-color: var(--primary);
      background: var(--card-hover);
    }

    .app-item.selected {
      border-color: var(--primary);
      background: rgba(34, 211, 187, 0.1);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .app-item-icon {
      width: 48px;
      height: 48px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
    }

    .app-item-name {
      font-size: 0.85rem;
      font-weight: 500;
      color: var(--foreground);
      text-align: center;
    }

    /* Modal Footer */
    .modal-footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 16px 24px;
      border-top: 1px solid var(--border);
      background: var(--secondary);
    }

    .modal-footer-left {
      display: flex;
      align-items: center;
      gap: 8px;
      color: var(--muted);
      font-size: 0.85rem;
    }

    .modal-footer-left svg {
      width: 16px;
      height: 16px;
    }

    .modal-footer-actions {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    /* ==================== FACEBOOK WORKFLOW ==================== */
    .facebook-workflow {
      display: none;
    }

    .facebook-workflow.active {
      display: block;
    }

    .facebook-header {
      text-align: center;
      margin-bottom: 32px;
    }

    .facebook-icon {
      width: 64px;
      height: 64px;
      margin: 0 auto 16px;
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 0 30px rgba(24, 119, 242, 0.3);
    }

    .facebook-title {
      font-size: 1.5rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 8px;
    }

    .facebook-desc {
      color: var(--muted);
      font-size: 0.95rem;
    }

    .facebook-steps {
      display: flex;
      flex-direction: column;
      gap: 24px;
    }

    .facebook-step {
      display: flex;
      align-items: flex-start;
      gap: 16px;
      padding: 20px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      opacity: 0.5;
      transition: all 0.3s ease;
    }

    .facebook-step.active {
      opacity: 1;
      border-color: var(--primary);
      background: rgba(34, 211, 187, 0.05);
    }

    .facebook-step.completed {
      opacity: 0.8;
      border-color: var(--success);
      background: rgba(34, 197, 94, 0.05);
    }

    .step-number {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      background: var(--muted);
      color: var(--background);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.9rem;
      font-weight: 600;
      flex-shrink: 0;
    }

    .facebook-step.active .step-number {
      background: var(--primary);
    }

    .facebook-step.completed .step-number {
      background: var(--success);
    }

    /* Initially hide API Configuration, Parameter Mapping, and Google Sheets steps */
    #facebookStep6,
    #facebookStep7,
    #facebookStep6GS {
      display: none;
    }

    .step-content {
      flex: 1;
    }

    .step-title {
      font-size: 1.1rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 4px;
    }

    .step-desc {
      color: var(--muted);
      font-size: 0.9rem;
      margin-bottom: 16px;
    }

    .btn-facebook {
      background: #1877f2;
      color: white;
      border: none;
      padding: 12px 24px;
      border-radius: var(--radius-sm);
      font-size: 0.95rem;
      font-weight: 500;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      transition: all 0.2s ease;
    }

    .btn-facebook:hover {
      background: #166fe5;
      box-shadow: 0 0 20px rgba(24, 119, 242, 0.3);
    }

    /* Google Ads Button */
    .btn-google {
      background: #1f2937;
      color: white;
      border: 1px solid #4285f4;
      padding: 12px 24px;
      border-radius: var(--radius-sm);
      font-size: 0.95rem;
      font-weight: 500;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      transition: all 0.2s ease;
    }

    .btn-google:hover {
      background: #2d3748;
      box-shadow: 0 0 20px rgba(66, 133, 244, 0.3);
    }

    .google-dropdown {
      width: 100%;
      padding: 12px 16px;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.95rem;
      cursor: pointer;
      transition: all 0.2s ease;
      appearance: none;
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
      background-position: right 12px center;
      background-repeat: no-repeat;
      background-size: 16px;
      padding-right: 40px;
    }

    .google-dropdown:focus {
      border-color: #4285f4;
      box-shadow: 0 0 0 3px rgba(66, 133, 244, 0.1);
    }

    .google-dropdown:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }

    .google-steps {
      display: flex;
      flex-direction: column;
      gap: 24px;
    }

    .google-step {
      display: flex;
      align-items: flex-start;
      gap: 16px;
      padding: 20px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      opacity: 0.5;
      transition: all 0.3s ease;
    }

    .google-step.active {
      opacity: 1;
      border-color: #4285f4;
      background: rgba(66, 133, 244, 0.05);
    }

    .google-step.completed {
      opacity: 0.8;
      border-color: var(--success);
      background: rgba(34, 197, 94, 0.05);
    }

    .google-header {
      text-align: center;
      margin-bottom: 32px;
    }

    .google-icon {
      width: 64px;
      height: 64px;
      margin: 0 auto 16px;
      border-radius: var(--radius);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 0 30px rgba(66, 133, 244, 0.3);
    }

    .google-title {
      font-size: 1.5rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 8px;
    }

    .google-desc {
      color: var(--muted);
      font-size: 0.95rem;
    }

    .login-status {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-top: 12px;
      padding: 8px 12px;
      background: rgba(34, 197, 94, 0.1);
      border: 1px solid var(--success);
      border-radius: var(--radius-sm);
      color: var(--success);
      font-size: 0.9rem;
    }

    .status-icon {
      width: 20px;
      height: 20px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .status-icon.success {
      background: var(--success);
      color: white;
    }

    .status-icon svg {
      width: 12px;
      height: 12px;
    }

    .dropdown-container {
      position: relative;
    }

    .facebook-dropdown {
      width: 100%;
      padding: 12px 16px;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.95rem;
      cursor: pointer;
      transition: all 0.2s ease;
      appearance: none;
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
      background-position: right 12px center;
      background-repeat: no-repeat;
      background-size: 16px;
      padding-right: 40px;
    }

    .facebook-dropdown:focus {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .facebook-dropdown:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }

    .ad-parameters {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      padding: 16px;
      margin-bottom: 16px;
    }

    .parameter-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 0;
      border-bottom: 1px solid var(--border-light);
    }

    .parameter-item:last-child {
      border-bottom: none;
    }

    .parameter-item label {
      font-weight: 500;
      color: var(--foreground);
      font-size: 0.9rem;
    }

    .parameter-item span {
      color: var(--muted);
      font-size: 0.9rem;
      font-family: 'JetBrains Mono', monospace;
    }

    .lead-fields-section {
      margin-top: 20px;
      padding-top: 16px;
      border-top: 1px solid var(--border-light);
    }

    .lead-fields-section h4 {
      font-size: 1rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 12px;
    }

    .lead-fields-container {
      max-height: 200px;
      overflow-y: auto;
    }

    .destination-apps {
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .dest-app-option {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 16px;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .dest-app-option:hover {
      border-color: var(--primary);
      background: rgba(34, 211, 187, 0.05);
    }

    .dest-app-icon {
      width: 48px;
      height: 48px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.2rem;
      font-weight: 600;
      color: white;
      flex-shrink: 0;
    }

    .dest-app-info {
      flex: 1;
    }

    .dest-app-name {
      font-weight: 600;
      color: var(--foreground);
      font-size: 0.95rem;
      margin-bottom: 2px;
    }

    .dest-app-desc {
      color: var(--muted);
      font-size: 0.85rem;
    }

    .dest-app-radio {
      position: relative;
    }

    .dest-app-radio input[type="radio"] {
      position: absolute;
      opacity: 0;
      width: 0;
      height: 0;
    }

    .dest-app-radio label {
      width: 20px;
      height: 20px;
      border: 2px solid var(--border);
      border-radius: 50%;
      cursor: pointer;
      transition: all 0.2s ease;
      display: block;
    }

    .dest-app-radio input[type="radio"]:checked + label {
      border-color: var(--primary);
      background: var(--primary);
    }

    .dest-app-radio input[type="radio"]:checked + label::after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 6px;
      height: 6px;
      background: white;
      border-radius: 50%;
    }

    /* ==================== API CONFIGURATION ==================== */
    .api-config {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      padding: 16px;
      margin-bottom: 16px;
    }

    .form-group {
      margin-bottom: 12px;
    }

    .form-group label {
      display: block;
      font-weight: 500;
      color: var(--foreground);
      font-size: 0.9rem;
      margin-bottom: 6px;
    }

    .api-input {
      width: 100%;
      padding: 10px 12px;
      background: var(--background);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.9rem;
      outline: none;
      transition: all 0.2s ease;
    }

    .api-input:focus {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .api-textarea {
      width: 100%;
      padding: 10px 12px;
      background: var(--background);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.9rem;
      font-family: 'JetBrains Mono', monospace;
      outline: none;
      transition: all 0.2s ease;
      resize: vertical;
      min-height: 120px;
    }

    .api-textarea:focus {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .curl-input-group {
      display: flex;
      gap: 8px;
      align-items: flex-start;
    }

    .curl-input-group textarea {
      flex: 1;
    }

    .curl-input-group .btn-outline {
      background: transparent;
      border: 1px solid var(--border);
      color: var(--foreground);
      padding: 8px 12px;
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
      white-space: nowrap;
      font-size: 0.85rem;
      display: flex;
      align-items: center;
      gap: 6px;
    }

    .curl-input-group .btn-outline:hover {
      background: var(--hover);
      border-color: var(--primary);
    }

    .section-subtitle {
      font-size: 0.9rem;
      font-weight: 600;
      color: var(--foreground);
      margin-bottom: 12px;
    }

    /* Parameter Mapping */
    .parameter-mapping {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      padding: 16px;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .mapping-row {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      gap: 12px;
      align-items: center;
      padding: 12px;
      background: var(--background);
      border-radius: var(--radius-sm);
    }

    .mapping-field {
      display: flex;
      flex-direction: column;
    }

    .mapping-field-label {
      font-size: 0.75rem;
      color: var(--muted);
      margin-bottom: 4px;
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    .mapping-field-value {
      font-size: 0.9rem;
      color: var(--foreground);
      font-weight: 500;
      padding: 8px;
      background: var(--secondary);
      border-radius: var(--radius-sm);
      border: 1px solid var(--border);
    }

    .mapping-sample {
      font-size: 0.75rem;
      color: var(--muted);
      margin-top: 4px;
      font-style: italic;
    }

    .mapping-select {
      padding: 8px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.9rem;
      cursor: pointer;
      appearance: none;
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");
      background-position: right 6px center;
      background-repeat: no-repeat;
      background-size: 16px;
      padding-right: 28px;
    }

    .mapping-select:focus {
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
      outline: none;
    }

    .fixed-value-input {
      margin-top: 6px;
      padding: 8px;
      background: var(--secondary);
      border: 1px solid var(--primary);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.9rem;
      width: 100%;
      box-sizing: border-box;
    }

    .fixed-value-input:focus {
      outline: none;
      box-shadow: 0 0 0 3px rgba(24, 119, 242, 0.12);
    }

    .mapping-arrow {
      display: flex;
      justify-content: center;
      color: var(--primary);
    }

    .mapping-arrow svg {
      width: 18px;
      height: 18px;
    }

    .parameters-table {
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    /* ==================== GOOGLE SHEETS CONFIGURATION ==================== */
    .google-sheets-config {
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 20px;
      text-align: center;
    }

    .google-sheets-status {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 16px;
      background: rgba(34, 197, 94, 0.1);
      border: 1px solid rgba(34, 197, 94, 0.3);
      border-radius: var(--radius-sm);
      margin-top: 16px;
    }

    .status-icon {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .status-icon.success {
      background: rgba(34, 197, 94, 0.2);
      color: var(--success);
    }

    .status-icon svg {
      width: 20px;
      height: 20px;
    }

    .status-info {
      text-align: left;
      flex: 1;
    }

    .status-title {
      color: var(--foreground);
      font-weight: 500;
      margin-bottom: 4px;
    }

    .status-email {
      color: #334155;
      font-size: 0.9rem;
      font-weight: 500;
    }

    #facebookStep6GS .step-desc,
    #facebookStep6GS small,
    #facebookStep6GS .radio-option small,
    #facebookStep6GS .form-group label,
    #facebookStep6GS #serviceAccountMethodContainer div[style*="font-size: 0.85rem"],
    #facebookStep6GS #serviceAccountMethodContainer div[style*="font-size: 0.9rem"] {
      color: #334155 !important;
      font-weight: 500;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }

    #facebookStep6GS #serviceAccountMethodContainer div[style*="text-transform: uppercase"] {
      letter-spacing: 0.03em !important;
    }

    /* ==================== FIELD SELECTOR INTERFACE ==================== */
    .fields-section {
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius);
      padding: 16px;
      margin-bottom: 16px;
    }

    .fields-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px;
      padding-bottom: 12px;
      border-bottom: 1px solid var(--border);
    }

    .fields-header h5 {
      font-size: 0.95rem;
      font-weight: 600;
      color: var(--foreground);
      margin: 0;
    }

    .fields-count {
      font-size: 0.8rem;
      color: var(--muted);
      background: var(--background);
      padding: 4px 8px;
      border-radius: var(--radius-sm);
    }

    .reset-order-btn {
      display: flex;
      align-items: center;
      gap: 6px;
      padding: 6px 12px;
      background: transparent;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s ease;
      white-space: nowrap;
    }

    .reset-order-btn:hover {
      background: rgba(34, 211, 187, 0.1);
      border-color: var(--primary);
      color: var(--primary);
    }

    .reset-order-btn svg {
      width: 14px;
      height: 14px;
    }

    .fields-list {
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .available-fields-list {
      max-height: 300px;
      overflow-y: auto;
      padding: 4px;
    }

    .selected-fields-list {
      min-height: 200px;
      padding: 12px;
      background: var(--background);
      border: 1px dashed var(--border);
      border-radius: var(--radius-sm);
      position: relative;
    }

    .empty-state-message {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 8px;
      color: var(--muted);
      font-size: 0.9rem;
      min-height: 120px;
    }

    .empty-state-message svg {
      opacity: 0.5;
    }

    .field-item {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 12px 12px;
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
      position: relative;
      min-height: 56px;
    }

    .field-item:hover {
      background: var(--card-hover);
      border-color: var(--primary);
    }

    .field-item.selected {
      background: rgba(34, 211, 187, 0.1);
      border-color: var(--primary);
    }

    .field-item.sortable {
      cursor: grab;
      padding-left: 8px;
    }

    .field-item.sortable:active {
      cursor: grabbing;
    }

    .field-item.drag-over {
      background: rgba(34, 211, 187, 0.2);
      border: 2px solid var(--primary);
      box-shadow: inset 0 0 0 1mm rgba(34, 211, 187, 0.1);
    }

    .field-checkbox {
      width: 18px;
      height: 18px;
      cursor: pointer;
      accent-color: var(--primary);
    }

    .column-badge {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      min-width: 42px;
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
      font-size: 11px;
      white-space: nowrap;
    }

    .field-drag-handle {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 24px;
      height: 24px;
      color: var(--muted);
      cursor: grab;
      flex-shrink: 0;
    }

    .field-drag-handle:active {
      cursor: grabbing;
    }

    .field-drag-handle svg {
      width: 16px;
      height: 16px;
    }

    .field-name {
      flex: 1;
      font-size: 0.9rem;
      color: var(--foreground);
      font-weight: 500;
    }

    .field-actions {
      display: flex;
      gap: 4px;
      align-items: center;
    }

    .field-action-btn {
      background: transparent;
      border: none;
      color: var(--muted);
      padding: 4px 6px;
      border-radius: 4px;
      cursor: pointer;
      transition: all 0.2s ease;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .field-action-btn:hover {
      background: rgba(34, 211, 187, 0.1);
      color: var(--primary);
    }

    .field-action-btn.danger:hover {
      background: rgba(239, 68, 68, 0.1);
      color: var(--error);
    }

    .field-action-btn svg {
      width: 16px;
      height: 16px;
    }

    .selected-section {
      background: var(--card);
    }

    /* ==================== INTEGRATIONS PANEL ==================== */
    .integrations-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 24px;
      margin-bottom: 24px;
    }

    .integrations-panel {
      height: fit-content;
    }

    .integrations-search {
      padding: 16px 20px;
      border-bottom: 1px solid var(--border);
    }

    .integrations-search input {
      width: 100%;
      padding: 10px 14px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 0.9rem;
      outline: none;
      transition: all 0.2s ease;
    }

    .integrations-search input:focus {
      border-color: var(--primary);
    }

    .integrations-categories {
      display: flex;
      gap: 8px;
      padding: 16px 20px;
      border-bottom: 1px solid var(--border);
      overflow-x: auto;
    }

    .category-btn {
      padding: 6px 14px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: 20px;
      color: var(--muted);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s ease;
      white-space: nowrap;
    }

    .category-btn:hover {
      border-color: var(--muted);
      color: var(--foreground);
    }

    .category-btn.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .integrations-list {
      padding: 16px 20px;
      display: flex;
      flex-direction: column;
      gap: 12px;
      max-height: 400px;
      overflow-y: auto;
    }

    .integration-item {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 14px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .integration-item:hover {
      border-color: var(--primary);
      transform: translateX(4px);
    }

    .integration-icon {
      width: 44px;
      height: 44px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5rem;
      flex-shrink: 0;
    }

    .integration-info {
      flex: 1;
      min-width: 0;
    }

    .integration-name {
      font-weight: 600;
      color: var(--foreground);
      font-size: 0.9rem;
    }

    .integration-category {
      font-size: 0.75rem;
      color: var(--muted);
      margin-top: 2px;
    }

    .integration-status {
      padding: 4px 10px;
      border-radius: 12px;
      font-size: 0.7rem;
      font-weight: 600;
      text-transform: uppercase;
    }

    .integration-status.connected {
      background: rgba(34, 197, 94, 0.15);
      color: var(--success);
    }

    .integration-status.available {
      background: rgba(59, 130, 246, 0.15);
      color: var(--info);
    }

    /* ==================== RECENT WORKFLOWS ==================== */
    .recent-workflows {
      height: fit-content;
    }

    .workflows-list {
      padding: 16px 20px;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .workflow-item {
      display: flex;
      align-items: center;
      gap: 14px;
      padding: 14px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .workflow-item:hover {
      border-color: var(--primary);
    }

    .workflow-apps {
      display: flex;
      align-items: center;
    }

    .workflow-app-icon {
      width: 32px;
      height: 32px;
      border-radius: 50%;
      border: 2px solid var(--card);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 0.9rem;
      margin-left: -8px;
    }

    .workflow-app-icon:first-child {
      margin-left: 0;
    }

    .workflow-meta {
      flex: 1;
      min-width: 0;
    }

    .workflow-name {
      font-weight: 600;
      color: var(--foreground);
      font-size: 0.9rem;
    }

    .workflow-runs {
      font-size: 0.75rem;
      color: var(--muted);
      margin-top: 2px;
    }

    .workflow-toggle {
      width: 44px;
      height: 24px;
      background: var(--border);
      border-radius: 12px;
      position: relative;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .workflow-toggle.active {
      background: var(--primary);
    }

    .workflow-toggle::after {
      content: '';
      position: absolute;
      top: 2px;
      left: 2px;
      width: 20px;
      height: 20px;
      background: white;
      border-radius: 50%;
      transition: all 0.2s ease;
    }

    .workflow-toggle.active::after {
      left: 22px;
    }

    /* ==================== ACTIVITY LOGS TABLE ==================== */
    .logs-section {
      margin-top: 24px;
    }

    .table-controls {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 16px 20px;
      border-bottom: 1px solid var(--border);
    }

    .filter-tabs {
      display: flex;
      gap: 8px;
    }

    .filter-tab {
      padding: 6px 14px;
      background: transparent;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted);
      font-size: 0.8rem;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .filter-tab:hover {
      border-color: var(--muted);
      color: var(--foreground);
    }

    .filter-tab.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .table-wrapper {
      overflow-x: auto;
    }

    .data-table {
      width: 100%;
      border-collapse: collapse;
    }

    .data-table th {
      text-align: left;
      padding: 14px 20px;
      font-size: 0.75rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      color: var(--muted);
      background: var(--secondary);
      border-bottom: 1px solid var(--border);
    }

    .data-table td {
      padding: 16px 20px;
      font-size: 0.9rem;
      color: var(--foreground);
      border-bottom: 1px solid var(--border);
    }

    .data-table tbody tr {
      transition: background 0.2s ease;
    }

    .data-table tbody tr:hover {
      background: var(--secondary);
    }

    .log-workflow {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .log-icon {
      width: 36px;
      height: 36px;
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1rem;
    }

    .status-badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 4px 10px;
      border-radius: 12px;
      font-size: 0.75rem;
      font-weight: 500;
    }

    .status-badge.success {
      background: rgba(34, 197, 94, 0.15);
      color: var(--success);
    }

    .status-badge.failed {
      background: rgba(239, 68, 68, 0.15);
      color: var(--error);
    }

    .status-badge.pending {
      background: rgba(245, 158, 11, 0.15);
      color: var(--warning);
    }

    .status-badge.running {
      background: rgba(59, 130, 246, 0.15);
      color: var(--info);
    }

    .status-badge svg {
      width: 12px;
      height: 12px;
    }

    .table-pagination {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 16px 20px;
      border-top: 1px solid var(--border);
    }

    .pagination-info {
      font-size: 0.85rem;
      color: var(--muted);
    }

    .pagination-controls {
      display: flex;
      align-items: center;
      gap: 8px;
    }

    .page-btn {
      width: 36px;
      height: 36px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--muted);
      cursor: pointer;
      transition: all 0.2s ease;
      font-size: 0.85rem;
    }

    .page-btn:hover:not(:disabled) {
      border-color: var(--muted);
      color: var(--foreground);
    }

    .page-btn.active {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .page-btn:disabled {
      opacity: 0.5;
      cursor: not-allowed;
    }

    .page-btn svg {
      width: 16px;
      height: 16px;
    }

    /* ==================== RESPONSIVE DESIGN ==================== */
    @media (max-width: 1280px) {
      .stats-grid {
        grid-template-columns: repeat(2, 1fr);
      }

      .dashboard-grid {
        grid-template-columns: 1fr;
      }

      .integrations-grid {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 1024px) {
      .sidebar {
        transform: translateX(-100%);
      }

      .sidebar.open {
        transform: translateX(0);
      }

      .sidebar-overlay.open {
        display: block;
      }

      .sidebar-close {
        display: flex;
      }

      .mobile-menu-btn {
        display: flex;
      }

      .main-content {
        margin-left: 0;
      }

      .navbar {
        padding-left: 72px;
      }

      .search-box {
        min-width: 200px;
      }
    }

    @media (max-width: 768px) {
      .stats-grid {
        grid-template-columns: 1fr;
      }

      .navbar {
        padding: 0 16px;
        padding-left: 72px;
      }

      .search-box {
        display: none;
      }

      .navbar-right .btn span {
        display: none;
      }

      .dashboard {
        padding: 16px;
      }

      .dashboard-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
      }

      .data-table th,
      .data-table td {
        padding: 12px;
      }

      .table-pagination {
        flex-direction: column;
        gap: 12px;
      }
    }

    /* ==================== LOGIN & AUTH PAGES ==================== */
    .auth-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: var(--background);
      z-index: 9000;
      overflow-y: auto;
    }

    .auth-container.active {
      display: flex;
    }

    /* Split layout */
    .auth-split {
      display: flex;
      width: 100%;
      min-height: 100vh;
    }

    /* ---- Left brand panel ---- */
    .auth-brand-panel {
      position: relative;
      width: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      padding: 48px;
    }

    .auth-brand-bg {
      position: absolute;
      inset: 0;
      z-index: 0;
    }

    .auth-brand-gradient {
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, #0c1a2e 0%, #0a1628 30%, #0d1f35 60%, #0a0b14 100%);
    }

    .auth-brand-grid {
      position: absolute;
      inset: 0;
      background-image:
        linear-gradient(rgba(34, 211, 187, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(34, 211, 187, 0.04) 1px, transparent 1px);
      background-size: 40px 40px;
    }

    .auth-brand-orb {
      position: absolute;
      border-radius: 50%;
      filter: blur(80px);
      opacity: 0.35;
    }

    .auth-brand-orb-1 {
      width: 400px;
      height: 400px;
      background: radial-gradient(circle, #22d3bb 0%, transparent 70%);
      top: -100px;
      right: -100px;
      animation: authOrbFloat 8s ease-in-out infinite;
    }

    .auth-brand-orb-2 {
      width: 300px;
      height: 300px;
      background: radial-gradient(circle, #3b82f6 0%, transparent 70%);
      bottom: -80px;
      left: -80px;
      animation: authOrbFloat 10s ease-in-out infinite reverse;
    }

    @keyframes authOrbFloat {
      0%, 100% { transform: translate(0, 0) scale(1); }
      50% { transform: translate(30px, -20px) scale(1.1); }
    }

    .auth-brand-content {
      position: relative;
      z-index: 1;
      max-width: 440px;
    }

    .auth-brand-logo {
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 40px;
    }

    .auth-brand-logo span {
      font-size: 22px;
      font-weight: 700;
      color: #fff;
    }

    .auth-brand-logo em {
      font-style: normal;
      background: linear-gradient(135deg, #22d3bb, #3b82f6);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    .auth-brand-headline {
      font-size: 32px;
      font-weight: 800;
      line-height: 1.2;
      color: #fff;
      margin-bottom: 16px;
    }

    .auth-brand-desc {
      font-size: 15px;
      line-height: 1.6;
      color: rgba(255, 255, 255, 0.6);
      margin-bottom: 32px;
    }

    .auth-brand-features {
      display: flex;
      flex-direction: column;
      gap: 14px;
      margin-bottom: 40px;
    }

    .auth-brand-feature {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 14px;
      color: rgba(255, 255, 255, 0.8);
    }

    .auth-brand-feature svg {
      flex-shrink: 0;
    }

    .auth-brand-stats {
      display: flex;
      align-items: center;
      gap: 20px;
      padding: 20px 24px;
      background: rgba(255, 255, 255, 0.04);
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-radius: 12px;
      backdrop-filter: blur(8px);
    }

    .auth-brand-stat {
      display: flex;
      flex-direction: column;
      gap: 2px;
    }

    .auth-brand-stat strong {
      font-size: 20px;
      font-weight: 800;
      background: linear-gradient(135deg, #22d3bb, #60a5fa);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    .auth-brand-stat span {
      font-size: 12px;
      color: rgba(255, 255, 255, 0.5);
    }

    .auth-brand-stat-divider {
      width: 1px;
      height: 32px;
      background: rgba(255, 255, 255, 0.1);
    }

    /* ---- Right form panel ---- */
    .auth-form-panel {
      width: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 48px;
      background: var(--background);
    }

    .auth-box {
      width: 100%;
      max-width: 420px;
      animation: authSlideIn 0.5s ease-out;
    }

    @keyframes authSlideIn {
      from { opacity: 0; transform: translateY(16px); }
      to { opacity: 1; transform: translateY(0); }
    }

    .auth-logo-mobile {
      display: none;
      margin-bottom: 24px;
    }

    .auth-header {
      margin-bottom: 32px;
    }

    .auth-title {
      font-size: 28px;
      font-weight: 800;
      margin-bottom: 8px;
      color: var(--foreground);
      letter-spacing: -0.02em;
    }

    .auth-subtitle {
      font-size: 15px;
      color: var(--muted);
      line-height: 1.5;
    }

    .auth-form {
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    .form-row-half {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .form-group {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }

    .form-label {
      font-size: 13px;
      font-weight: 600;
      color: var(--foreground);
      letter-spacing: 0.02em;
      text-transform: uppercase;
    }

    .input-wrapper {
      position: relative;
      display: flex;
      align-items: center;
    }

    .input-icon {
      position: absolute;
      left: 14px;
      color: var(--muted);
      pointer-events: none;
      transition: color 0.2s ease;
      z-index: 1;
    }

    .input-wrapper:focus-within .input-icon {
      color: var(--primary);
    }

    .form-input {
      width: 100%;
      padding: 13px 16px 13px 44px;
      background: var(--secondary);
      border: 1.5px solid var(--border);
      border-radius: 10px;
      color: var(--foreground);
      font-size: 14px;
      font-family: inherit;
      transition: all 0.25s ease;
    }

    .form-input:focus {
      outline: none;
      border-color: var(--primary);
      background: var(--card);
      box-shadow: 0 0 0 4px rgba(34, 211, 187, 0.1), 0 2px 8px rgba(0, 0, 0, 0.15);
    }

    .form-input::placeholder {
      color: var(--muted);
    }

    /* Password toggle */
    .password-toggle {
      position: absolute;
      right: 12px;
      background: none;
      border: none;
      cursor: pointer;
      color: var(--muted);
      padding: 4px;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: color 0.2s ease;
      z-index: 1;
    }

    .password-toggle:hover {
      color: var(--foreground);
    }

    /* Password strength */
    .password-strength {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-top: 6px;
    }

    .strength-bars {
      display: flex;
      gap: 4px;
      flex: 1;
    }

    .strength-bar {
      height: 3px;
      flex: 1;
      border-radius: 2px;
      background: var(--border);
      transition: background 0.3s ease;
    }

    .strength-bar.weak { background: #ef4444; }
    .strength-bar.fair { background: #f59e0b; }
    .strength-bar.good { background: #22d3bb; }
    .strength-bar.strong { background: #22d3bb; }

    .strength-text {
      font-size: 11px;
      color: var(--muted);
      white-space: nowrap;
      min-width: 100px;
      text-align: right;
    }

    /* Submit button */
    .auth-submit {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: 100%;
      padding: 14px 24px;
      background: linear-gradient(135deg, #22d3bb, #14b8a6);
      border: none;
      border-radius: 10px;
      color: #0a0b14;
      font-size: 15px;
      font-weight: 700;
      cursor: pointer;
      transition: all 0.3s ease;
      margin-top: 4px;
      position: relative;
      overflow: hidden;
    }

    .auth-submit::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, transparent 0%, rgba(255,255,255,0.15) 50%, transparent 100%);
      transform: translateX(-100%);
      transition: transform 0.5s ease;
    }

    .auth-submit:hover:not(:disabled)::before {
      transform: translateX(100%);
    }

    .auth-submit:hover:not(:disabled) {
      transform: translateY(-2px);
      box-shadow: 0 8px 24px rgba(34, 211, 187, 0.3), 0 2px 8px rgba(34, 211, 187, 0.15);
    }

    .auth-submit:active:not(:disabled) {
      transform: translateY(0);
    }

    .auth-submit:disabled {
      opacity: 0.6;
      cursor: not-allowed;
    }

    .auth-submit svg {
      transition: transform 0.2s ease;
    }

    .auth-submit:hover:not(:disabled) svg {
      transform: translateX(3px);
    }

    /* Footer */
    .auth-footer {
      text-align: center;
      margin-top: 28px;
      font-size: 14px;
      color: var(--muted);
    }

    .auth-footer a {
      color: var(--primary);
      text-decoration: none;
      cursor: pointer;
      font-weight: 600;
      transition: all 0.2s ease;
    }

    .auth-footer a:hover {
      color: var(--primary-dark);
      text-decoration: underline;
      text-underline-offset: 3px;
    }

    /* ---- Auth responsive ---- */
    @media (max-width: 1024px) {
      .auth-brand-panel {
        width: 45%;
        padding: 32px;
      }
      .auth-form-panel {
        width: 55%;
        padding: 32px;
      }
      .auth-brand-headline {
        font-size: 26px;
      }
    }

    @media (max-width: 768px) {
      .auth-brand-panel {
        display: none;
      }
      .auth-form-panel {
        width: 100%;
        padding: 24px;
        min-height: 100vh;
      }
      .auth-logo-mobile {
        display: block;
      }
      .form-row-half {
        grid-template-columns: 1fr;
      }
      .auth-box {
        max-width: 100%;
      }
    }

    @media (max-width: 480px) {
      .auth-form-panel {
        padding: 20px 16px;
      }
      .auth-title {
        font-size: 24px;
      }
    }

    /* ==================== PLAN SELECTION ==================== */
    .plan-selection-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: var(--background);
      z-index: 9000;
      align-items: center;
      justify-content: center;
      overflow-y: auto;
      padding: 20px;
    }

    .plan-selection-container.active {
      display: flex;
    }

    .plan-selection-box {
      width: 100%;
      max-width: 1200px;
      animation: slideInUp 0.4s ease-out;
    }

    .plan-header {
      text-align: center;
      margin-bottom: 40px;
    }

    .plan-title {
      font-size: 32px;
      font-weight: 700;
      margin-bottom: 12px;
      color: var(--foreground);
    }

    .plan-subtitle {
      font-size: 16px;
      color: var(--muted);
      max-width: 600px;
      margin: 0 auto;
    }

    .plans-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 24px;
      margin-bottom: 32px;
    }

    .plan-card {
      background: var(--card);
      border: 2px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 32px 24px;
      position: relative;
      cursor: pointer;
      transition: all 0.3s ease;
      display: flex;
      flex-direction: column;
    }

    .plan-card:hover {
      border-color: var(--primary);
      transform: translateY(-8px);
      box-shadow: 0 12px 30px rgba(34, 211, 187, 0.15);
    }

    .plan-card.selected {
      border-color: var(--primary);
      background: rgba(34, 211, 187, 0.05);
      box-shadow: 0 0 20px rgba(34, 211, 187, 0.2);
    }

    .plan-badge {
      position: absolute;
      top: -12px;
      left: 24px;
      background: var(--primary);
      color: var(--background);
      padding: 4px 12px;
      border-radius: 20px;
      font-size: 12px;
      font-weight: 600;
      text-transform: uppercase;
    }

    .plan-card.selected .plan-badge {
      display: flex;
    }

    .plan-name {
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 8px;
      color: var(--foreground);
    }

    .plan-description {
      font-size: 14px;
      color: var(--muted);
      margin-bottom: 16px;
      flex: 1;
    }

    .plan-price {
      font-size: 24px;
      font-weight: 700;
      color: var(--primary);
      margin-bottom: 4px;
    }

    .plan-price-period {
      font-size: 13px;
      color: var(--muted);
      margin-bottom: 24px;
    }

    .plan-features {
      display: flex;
      flex-direction: column;
      gap: 12px;
      margin-bottom: 24px;
    }

    .plan-feature {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 14px;
      color: var(--foreground);
    }

    .plan-feature svg {
      width: 16px;
      height: 16px;
      color: var(--primary);
      flex-shrink: 0;
    }

    .plan-select-btn {
      padding: 12px 24px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .plan-card.selected .plan-select-btn {
      background: var(--primary);
      border-color: var(--primary);
      color: var(--background);
    }

    .plan-select-btn:hover {
      background: var(--card-hover);
      border-color: var(--primary);
    }

    .plan-action-buttons {
      display: flex;
      gap: 16px;
      justify-content: center;
      margin-top: 32px;
    }

    .plan-action-btn {
      padding: 14px 32px;
      border: none;
      border-radius: var(--radius-sm);
      font-size: 14px;
      font-weight: 600;
      cursor: pointer;
      transition: all 0.2s ease;
    }

    .plan-action-btn.primary {
      background: var(--primary);
      color: var(--background);
    }

    .plan-action-btn.primary:hover {
      background: var(--primary-dark);
      transform: translateY(-2px);
    }

    .plan-action-btn.secondary {
      background: var(--secondary);
      border: 1px solid var(--border);
      color: var(--foreground);
    }

    .plan-action-btn.secondary:hover {
      border-color: var(--primary);
    }

    /* ==================== USER SELECTOR SEARCH ==================== */
    .user-selector-search {
      margin-bottom: 16px;
    }

    .user-selector-search input {
      width: 100%;
      padding: 12px 16px;
      background: var(--secondary);
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      color: var(--foreground);
      font-size: 14px;
    }

    .user-selector-search input:focus {
      outline: none;
      border-color: var(--primary);
      box-shadow: 0 0 0 3px rgba(34, 211, 187, 0.1);
    }

    .user-selector-search input::placeholder {
      color: var(--muted);
    }

    .user-no-results {
      text-align: center;
      padding: 32px 16px;
      color: var(--muted);
      font-size: 14px;
    }

    /* ==================== RESPONSIVE AUTH ==================== */
    @media (max-width: 640px) {
      .auth-box {
        padding: 32px 24px;
        max-width: 100%;
      }

      .plan-card {
        padding: 24px 16px;
      }

      .plan-selection-box {
        max-width: 100%;
      }

      .plans-grid {
        grid-template-columns: 1fr;
      }
    }

    /* Hide main dashboard until authenticated */
    .main-content {
      display: none;
    }

    .main-content.visible {
      display: block;
    }

    .sidebar {
      display: none;
    }

    .sidebar.visible {
      display: flex;
    }

    /* ==================== UI REFRESH (LIGHT META-STYLE) ==================== */
    :root {
      --background: #eef3fb;
      --foreground: #1d2a3b;
      --card: #ffffff;
      --card-hover: #f4f8ff;
      --primary: #1877f2;
      --primary-dark: #0f5fca;
      --primary-glow: rgba(24, 119, 242, 0.22);
      --secondary: #eef4ff;
      --muted: #6f7f94;
      --muted-foreground: #5e7088;
      --border: #d7e2f1;
      --border-light: rgba(20, 39, 69, 0.12);
      --success: #18a06a;
      --warning: #da8a16;
      --error: #d3455b;
      --info: #1877f2;
      --glass: rgba(255, 255, 255, 0.82);
      --glass-border: rgba(18, 38, 64, 0.08);
      --radius: 14px;
      --radius-sm: 10px;
      --radius-lg: 18px;
      --sidebar-width: 248px;
      --navbar-height: 62px;
    }

    html {
      font-size: 13px;
    }

    body {
      font-family: 'Manrope', 'Segoe UI', sans-serif;
      color: var(--foreground);
      background:
        radial-gradient(900px 500px at 100% 0%, rgba(24, 119, 242, 0.14), rgba(24, 119, 242, 0)),
        radial-gradient(700px 420px at 0% 100%, rgba(23, 170, 255, 0.12), rgba(23, 170, 255, 0)),
        linear-gradient(180deg, #f7f9ff 0%, #edf3fb 100%);
    }

    body::before {
      content: '';
      position: fixed;
      inset: 0;
      pointer-events: none;
      background-image:
        linear-gradient(rgba(24, 119, 242, 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(24, 119, 242, 0.035) 1px, transparent 1px);
      background-size: 28px 28px;
      opacity: 0.6;
      z-index: -1;
    }

    .sidebar {
      background: linear-gradient(180deg, rgba(255, 255, 255, 0.93), rgba(249, 252, 255, 0.91));
      border-right: 1px solid var(--border);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      box-shadow: 8px 0 22px rgba(21, 43, 78, 0.05);
    }

    .sidebar-header,
    .sidebar-footer {
      border-color: var(--border);
    }

    .sidebar-brand {
      letter-spacing: -0.02em;
      font-weight: 800;
      color: #12223a;
    }

    .sidebar-logo {
      border-radius: 10px;
      background: linear-gradient(145deg, #ebf4ff, #dcebff);
    }

    .main-content {
      margin-left: var(--sidebar-width);
    }

    .navbar {
      border-bottom: 1px solid var(--border);
      background: rgba(255, 255, 255, 0.78);
      backdrop-filter: blur(14px);
      -webkit-backdrop-filter: blur(14px);
    }

    .page-title {
      font-size: 1.38rem;
      letter-spacing: -0.02em;
      color: #142744;
    }

    .dashboard,
    .modal-body,
    .modal-header,
    .modal-footer {
      color: var(--foreground);
    }

    .card,
    .quota-card,
    .auth-box,
    .plan-card,
    .modal,
    .user-selector-content {
      background: linear-gradient(180deg, #ffffff, #f8fbff);
      border: 1px solid var(--border);
      box-shadow: 0 14px 34px rgba(22, 44, 79, 0.07);
    }

    .card:hover,
    .plan-card:hover {
      box-shadow: 0 18px 42px rgba(22, 44, 79, 0.11);
    }

    .card-title,
    .dashboard-title,
    .plan-title,
    .auth-title,
    .modal-title,
    .step-title {
      letter-spacing: -0.015em;
      color: #152844;
    }

    .dashboard-subtitle,
    .step-desc,
    .plan-subtitle,
    .auth-subtitle,
    .workflow-table-desc {
      color: var(--muted-foreground);
    }

    .search-box,
    .form-input,
    .facebook-dropdown,
    .google-dropdown,
    .api-input,
    .api-textarea {
      background: #f7fbff;
      border-color: var(--border);
      color: #1a2f4f;
    }

    .search-box input,
    .form-input,
    .facebook-dropdown,
    .google-dropdown,
    .api-input,
    .api-textarea,
    .nav-item,
    .btn,
    .workflow-item,
    .integration-item,
    .table-wrapper table,
    .workflow-data-table th,
    .workflow-data-table td,
    .data-table th,
    .data-table td,
    .template-desc,
    .template-meta-item,
    .auth-footer,
    .quota-label,
    .modal-footer-left {
      font-size: 0.9rem;
    }

    .page-title,
    .dashboard-title,
    .card-title,
    .plan-name,
    .template-name,
    .workflow-table-name {
      font-size: 1.03rem;
    }

    .search-shortcut,
    .nav-section-title,
    .workflow-table-exec-label,
    .workflow-runs,
    .user-email,
    .table-pagination,
    .pagination-info {
      font-size: 0.8rem;
    }

    .btn,
    .auth-submit,
    .plan-action-btn,
    .plan-select-btn,
    .btn-facebook,
    .btn-google {
      border-radius: 10px;
      font-weight: 700;
      letter-spacing: 0.01em;
    }

    .btn-primary,
    .auth-submit,
    .plan-action-btn.primary {
      background: linear-gradient(135deg, #1877f2, #1594ff);
      color: #ffffff;
      border: 1px solid rgba(20, 92, 184, 0.25);
      box-shadow: 0 10px 22px rgba(24, 119, 242, 0.25);
    }

    .btn-primary:hover,
    .auth-submit:hover:not(:disabled),
    .plan-action-btn.primary:hover {
      background: linear-gradient(135deg, #0f63d4, #117ce5);
    }

    .btn-secondary,
    .plan-action-btn.secondary,
    .workflow-table-action-btn,
    .icon-btn,
    .oauth-button {
      background: #f4f8ff;
      border-color: var(--border);
      color: #1f3553;
    }

    .nav-item {
      color: #4e6280;
    }

    .nav-item:hover {
      background: #edf4ff;
      color: #1d3861;
    }

    .nav-item.active {
      color: #0f4b9a;
      background: linear-gradient(90deg, rgba(24, 119, 242, 0.18), rgba(24, 119, 242, 0.05));
    }

    .workflow-data-table thead,
    .data-table thead {
      background: #f4f8ff;
    }

    .workflow-data-table tr,
    .data-table tr {
      border-bottom-color: #e4edf9;
    }

    .workflow-table-toggle {
      background: #d4e4f8;
    }

    .workflow-table-toggle.on {
      background: linear-gradient(90deg, #1877f2, #1aa8ff);
    }

    .status-badge.success,
    .workflow-table-status.active {
      background: rgba(24, 160, 106, 0.12);
      color: #15764f;
      border: 1px solid rgba(24, 160, 106, 0.25);
    }

    .status-badge.failed,
    .workflow-table-status.inactive {
      background: rgba(211, 69, 91, 0.12);
      color: #a82f45;
      border: 1px solid rgba(211, 69, 91, 0.24);
    }

    .auth-container,
    .plan-selection-container {
      background:
        radial-gradient(620px 380px at 20% 20%, rgba(24, 119, 242, 0.14), rgba(24, 119, 242, 0)),
        linear-gradient(180deg, #f2f7ff 0%, #eaf2fc 100%);
    }

    .auth-box {
      width: min(94vw, 380px);
      padding: 26px 24px;
      border-radius: 16px;
    }

    .auth-header {
      margin-bottom: 18px;
    }

    .auth-logo {
      margin-bottom: 10px;
      gap: 7px;
      font-size: 0;
    }

    .auth-logo img {
      width: 28px;
      height: 28px;
      object-fit: contain;
      border-radius: 8px;
    }

    .auth-logo span {
      font-size: 1.18rem;
      font-weight: 800;
      letter-spacing: -0.02em;
      color: #173050;
    }

    .auth-title {
      font-size: 1.18rem;
      margin-bottom: 4px;
    }

    .auth-subtitle {
      font-size: 0.86rem;
      line-height: 1.45;
    }

    .auth-form {
      gap: 11px;
    }

    .form-label {
      font-size: 0.84rem;
    }

    .auth-box .form-input {
      padding: 10px 16px 10px 44px;
      font-size: 0.86rem;
      border-radius: 9px;
    }

    .auth-box .input-wrapper:has(.password-toggle) .form-input {
      padding-right: 44px;
    }

    .auth-submit {
      margin-top: 4px;
      padding: 10px 12px;
      font-size: 0.88rem;
    }

    .auth-footer {
      margin-top: 14px;
      font-size: 0.84rem;
    }

    .modal-overlay {
      background: rgba(11, 23, 40, 0.36);
      backdrop-filter: blur(3px);
    }

    .modal {
      border-radius: 18px;
    }

    /* Rich interactive dropdown styling inside modal flows */
    .modal .facebook-dropdown,
    .modal .google-dropdown {
      background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
      border: 1px solid #c4d8f2;
      color: #1a2f4f;
      font-weight: 600;
      box-shadow: 0 2px 8px rgba(22, 44, 79, 0.06);
      transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, background 0.2s ease;
      background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%231877f2' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.8' d='m5.8 7.6 4.2 4.6 4.2-4.6'/%3e%3c/svg%3e");
      background-position: right 12px center;
      background-repeat: no-repeat;
      background-size: 16px;
    }

    .modal .facebook-dropdown:hover,
    .modal .google-dropdown:hover {
      border-color: #8cb6e6;
      box-shadow: 0 6px 16px rgba(24, 119, 242, 0.14);
      background: linear-gradient(180deg, #ffffff 0%, #edf5ff 100%);
    }

    .modal .facebook-dropdown:focus,
    .modal .google-dropdown:focus {
      outline: none;
      border-color: #1877f2;
      box-shadow: 0 0 0 4px rgba(24, 119, 242, 0.14), 0 8px 20px rgba(24, 119, 242, 0.18);
      transform: translateY(-1px);
    }

    .modal .facebook-dropdown:disabled,
    .modal .google-dropdown:disabled {
      background: #edf3fb;
      border-color: #d4e1f2;
      color: #7a8da6;
      box-shadow: none;
      cursor: not-allowed;
    }

    .modal .facebook-dropdown option,
    .modal .google-dropdown option {
      color: #1a2f4f;
      background: #ffffff;
      font-weight: 500;
    }

    .modal-header,
    .modal-footer {
      border-color: var(--border);
      background: #f7fbff;
    }

    .template-card,
    .app-item,
    .dest-app-option,
    .facebook-step,
    .google-step,
    .field-item,
    .mapping-row {
      background: #ffffff;
      border-color: var(--border);
    }

    .template-card:hover,
    .app-item:hover,
    .dest-app-option:hover,
    .facebook-step:hover,
    .google-step:hover,
    .field-item:hover,
    .mapping-row:hover {
      background: #f5f9ff;
      border-color: #bdd3ef;
    }

    /* Keep Google Sheets destination text tone consistent with top heading */
    #facebookStep6GS .step-title,
    #facebookStep6GS .step-desc,
    #facebookStep6GS .radio-option span,
    #facebookStep6GS .radio-option small,
    #facebookStep6GS .form-group label,
    #facebookStep6GS .status-title,
    #facebookStep6GS .status-email,
    #facebookStep6GS #serviceAccountMethodContainer small,
    #facebookStep6GS #serviceAccountMethodContainer div,
    #facebookStep6GS #googleSheetsContainer p {
      color: #1f3553 !important;
    }

    .dashboard-header,
    .quota-section,
    .workflow-tables-section,
    .integrations-grid,
    .logs-section {
      animation-duration: 0.55s;
    }

    /* ==================== WORKFLOW DRAWER THEME ALIGNMENT ==================== */
    .workflow-drawer {
      background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
      border-left: 1px solid #d7e2f1;
      box-shadow: -14px 0 30px rgba(22, 44, 79, 0.12);
    }

    .workflow-drawer-header {
      border-bottom: 1px solid #d7e2f1;
      background: linear-gradient(115deg, rgba(24, 119, 242, 0.14), rgba(24, 119, 242, 0.05));
    }

    .workflow-drawer-kicker {
      color: #4b6280;
    }

    .workflow-drawer-title {
      color: #153156;
    }

    .workflow-drawer-close {
      background: #f4f8ff;
      border-color: #d7e2f1;
      color: #365377;
    }

    .workflow-drawer-close:hover {
      background: #e8f1ff;
      color: #173860;
    }

    .workflow-drawer-id,
    .workflow-drawer-section-title,
    .workflow-drawer-label,
    .workflow-link-panel-title,
    .workflow-link-info-label {
      color: #5c7594;
    }

    .workflow-drawer-flow,
    .workflow-drawer-description,
    .workflow-drawer-item,
    .workflow-link-panel,
    .workflow-map-row,
    .workflow-link-empty {
      background: #f4f8ff;
      border-color: #d7e2f1;
    }

    .workflow-drawer-flow,
    .workflow-drawer-value,
    .workflow-link-info-value,
    .workflow-map-arrow {
      color: #163253;
    }

    .workflow-drawer-description,
    .workflow-map-meta,
    .workflow-link-empty,
    .workflow-link-chip.muted {
      color: #5d7591;
    }

    .workflow-drawer-link-details {
      background:
        radial-gradient(circle at 94% 8%, rgba(24, 119, 242, 0.12), transparent 44%),
        linear-gradient(165deg, #f7fbff, #eef4ff);
      border-color: #cfe0f5;
      color: #173456;
    }

    .workflow-link-chip {
      background: rgba(24, 119, 242, 0.12);
      border-color: rgba(24, 119, 242, 0.28);
      color: #0f4b9a;
    }

    .workflow-link-chip.muted {
      background: rgba(148, 163, 184, 0.16);
      border-color: rgba(148, 163, 184, 0.24);
    }

    .workflow-link-action {
      background: #eaf2ff;
      border-color: #bdd3ef;
      color: #114a98;
    }

    .workflow-link-action:hover {
      background: #dceaff;
    }

    .workflow-map-order {
      background: rgba(24, 119, 242, 0.1);
      border-color: rgba(24, 119, 242, 0.3);
      color: #0f4b9a;
    }

    .workflow-map-mode {
      border-color: #c5d9f3;
      color: #3d5a80;
      background: #edf4ff;
    }

    .workflow-map-mode.fixed {
      border-color: rgba(218, 138, 22, 0.32);
      background: rgba(218, 138, 22, 0.1);
      color: #9a5f07;
    }

    .workflow-drawer-note {
      background: rgba(24, 119, 242, 0.09);
      border-left-color: #1877f2;
      color: #1f4168;
    }

    .workflow-leads-export-btn {
      background: #eaf2ff;
      border-color: #bdd3ef;
      color: #114a98;
    }

    .workflow-leads-export-btn:hover {
      background: #dceaff;
    }

    .workflow-leads-meta {
      color: #5d7591;
    }

    .workflow-leads-table-wrap {
      background: #f4f8ff;
      border-color: #d7e2f1;
    }

    .workflow-leads-table th {
      background: #edf4ff;
      color: #5c7594;
      border-bottom-color: #d7e2f1;
    }

    .workflow-leads-table td {
      color: #163253;
      border-bottom-color: #d7e2f1;
    }

    .workflow-leads-empty {
      color: #5d7591;
    }

    @media (max-width: 1024px) {
      .navbar {
        padding-left: 74px;
      }

      .sidebar {
        box-shadow: 0 0 0 rgba(0, 0, 0, 0);
      }
    }

    @media (max-width: 768px) {
      html {
        font-size: 12px;
      }

      .dashboard {
        padding: 14px;
      }

      .card,
      .quota-card,
      .modal,
      .auth-box,
      .plan-card {
        border-radius: 14px;
      }

      .auth-box {
        width: min(94vw, 350px);
        padding: 22px 18px;
      }

      .auth-logo img {
        width: 24px;
        height: 24px;
      }
    }
