import React from 'react';
import {
  ArrowDownTrayIcon as ArrowDownTray,
  SparklesIcon as Sparkles,
  Bars3Icon as Hamburger,
  XMarkIcon as Close,
  ChevronRightIcon as ChevronRight,
  ChevronDownIcon as ChevronDown, // Added
  Squares2X2Icon as Squares2X2, // Added
  PlayIcon as Play,
  PauseIcon as Pause,
  AcademicCapIcon,
  ShieldCheckIcon,
  CpuChipIcon,
  SparklesIcon as SoraIcon, // Using SparklesIcon for Sora as a placeholder
  CircleStackIcon,
  BuildingOffice2Icon,
  BookOpenIcon,
  InformationCircleIcon,
  NewspaperIcon,
  EnvelopeIcon as Email, // Renaming for clarity
  HomeIcon as HomeOutline, // For About context nav
  UserGroupIcon as UserGroup, // For About Us
  LightBulbIcon as LightBulb, // For Our Mission
  BriefcaseIcon as Briefcase, // For Careers
  WrenchScrewdriverIcon, // For Business Services
  ArrowUturnLeftIcon as ArrowUturnLeft, // Added for back buttons
  RocketLaunchIcon,      // For Startup Accelerator
  CubeTransparentIcon as CubeTransparent,   // For Accelerator Projects
  CurrencyDollarIcon,     // For Accelerator Investment
  BuildingLibraryIcon, // Added for Education
  MapPinIcon,          // Added for VacancyDetail
  ClockIcon,            // Added for VacancyDetail
  ChartBarIcon,        // Added for BusinessCourse, AcceleratorFeature
  UsersIcon,           // Added for AcceleratorFeature
  CodeBracketIcon,     // Added for BusinessCourse, StudentProgram, ServiceItemData
  PaintBrushIcon,      // Added for ServiceItemData
  MagnifyingGlassIcon, // Added for ServiceItemData
  PuzzlePieceIcon,     // Added for ServiceItemData
  PresentationChartLineIcon, // Added for AcceleratorInvestment
  TagIcon,             // Added for AcceleratorProjects
  LinkIcon,             // Added for AcceleratorProjects
  ComputerDesktopIcon, // Added for development services
  CommandLineIcon,      // Added for development/programs
  ArrowLeftIcon as ArrowLeft, // For item navigation
  ArrowRightIcon as ArrowRight, // For item navigation
  PhotoIcon as Photo, // Added for Gallery
  VideoCameraIcon as VideoCamera, // Added for Gallery
  ArrowUpIcon as ArrowUp,
  PlusIcon,
  CheckIcon,
} from '@heroicons/react/24/outline';

export const ChevronDownIcon = ChevronDown;
export const Squares2X2Icon = Squares2X2;

export const ArrowDownTrayIcon = ArrowDownTray;
export const SparklesIcon = Sparkles;
export const Bars3Icon = Hamburger;
export const XMarkIcon = Close;
export const ChevronRightIcon = ChevronRight;
export const PlayIcon = Play;
export const PauseIcon = Pause;
export const EmailIcon = Email; // Export with specific name for ConnectSection
export const ArrowUturnLeftIcon = ArrowUturnLeft; // Exporting ArrowUturnLeftIcon
export const ArrowLeftIcon = ArrowLeft; 
export const ArrowRightIcon = ArrowRight;
export const PhotoIcon = Photo; 
export const VideoCameraIcon = VideoCamera;
export const ArrowUpIcon = ArrowUp;

export { 
  CubeTransparent as CubeTransparentIcon, 
  PlusIcon,
  AcademicCapIcon,
  ShieldCheckIcon,
  CpuChipIcon,
  SoraIcon,
  CircleStackIcon,
  BuildingOffice2Icon,
  BookOpenIcon,
  InformationCircleIcon,
  NewspaperIcon,
  UserGroup as UserGroupIcon,
  LightBulb as LightBulbIcon,
  Briefcase as BriefcaseIcon,
  WrenchScrewdriverIcon,
  RocketLaunchIcon,
  CurrencyDollarIcon,
  BuildingLibraryIcon,
  MapPinIcon,
  ClockIcon,
  ChartBarIcon,
  UsersIcon,
  CodeBracketIcon,
  PaintBrushIcon,
  MagnifyingGlassIcon,
  PuzzlePieceIcon,
  PresentationChartLineIcon,
  TagIcon,
  LinkIcon,
  ComputerDesktopIcon,
  CommandLineIcon,
  CheckIcon,
  HomeOutline as HomeIcon,
};

export const AdjustmentsHorizontalIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" {...props}>
    <path d="M9.66667 3.33333C8.93029 3.33333 8.33333 3.93029 8.33333 4.66667C8.33333 5.40305 8.93029 6 9.66667 6C10.403 6 11 5.40305 11 4.66667C11 3.93029 10.403 3.33333 9.66667 3.33333ZM7.08401 4C7.38004 2.84985 8.42411 2 9.66667 2C10.9092 2 11.9533 2.84985 12.2493 4H13.3333C13.7015 4 14 4.29848 14 4.66667C14 5.03486 13.7015 5.33333 13.3333 5.33333H12.2493C11.9533 6.48349 10.9092 7.33333 9.66667 7.33333C8.42411 7.33333 7.38004 6.48349 7.08401 5.33333H2.66667C2.29848 5.33333 2 5.03486 2 4.66667C2 4.29848 2.29848 4 2.66667 4H7.08401ZM6.33333 10C5.59695 10 5 10.597 5 11.3333C5 12.0697 5.59695 12.6667 6.33333 12.6667C7.06971 12.6667 7.66667 12.0697 7.66667 11.3333C7.66667 10.597 7.06971 10 6.33333 10ZM3.75068 10.6667C4.04671 9.51652 5.09077 8.66667 6.33333 8.66667C7.57589 8.66667 8.61996 9.51652 8.91599 10.6667H13.3333C13.7015 10.6667 14 10.9651 14 11.3333C14 11.7015 13.7015 12 13.3333 12H8.91599C8.61996 13.1502 7.57589 14 6.33333 14C5.09077 14 4.04671 13.1502 3.75068 12H2.66667C2.29848 12 2 11.7015 2 11.3333C2 10.9651 2.29848 10.6667 2.66667 10.6667H3.75068Z" />
  </svg>
);

export const ListBulletIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12" fill="currentColor" {...props}>
    <path fillRule="evenodd" clipRule="evenodd" d="M1 0C0.447715 0 0 0.447715 0 1C0 1.55228 0.447715 2 1 2C1.55228 2 2 1.55228 2 1C2 0.447715 1.55228 0 1 0ZM5 0C4.44772 0 4 0.447715 4 1C4 1.55228 4.44771 2 5 2H15C15.5523 2 16 1.55228 16 1C16 0.447715 15.5523 0 15 0H5ZM0 6C0 5.44772 0.447715 5 1 5C1.55228 5 2 5.44772 2 6C2 6.55228 1.55228 7 1 7C0.447715 7 0 6.55228 0 6ZM5 5C4.44772 5 4 5.44772 4 6C4 6.55228 4.44771 7 5 7H15C15.5523 7 16 6.55228 16 6C16 5.44772 15.5523 5 15 5H5ZM0 11C0 10.4477 0.447715 10 1 10C1.55228 10 2 10.4477 2 11C2 11.5523 1.55228 12 1 12C0.447715 12 0 11.5523 0 11ZM5 10C4.44772 10 4 10.4477 4 11C4 11.5523 4.44771 12 5 12H15C15.5523 12 16 11.5523 16 11C16 10.4477 15.5523 10 15 10H5Z" />
  </svg>
);


export const ArrowTopRightIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg width="11" height="12" viewBox="0 0 11 12" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}>
    <path d="M1.70985 4.5H7.7804M7.7804 4.5V10.5705M7.7804 4.5L0.780396 11.5" stroke="currentColor" strokeWidth="1.3" strokeLinecap="round" strokeLinejoin="round"></path>
  </svg>
);

export const SidebarToggleIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg viewBox="0 0 24 24" fill="currentColor" {...props}>
    <path fillRule="evenodd" clipRule="evenodd" d="M9.35719 3H14.6428C15.7266 2.99999 16.6007 2.99998 17.3086 3.05782C18.0375 3.11737 18.6777 3.24318 19.27 3.54497C20.2108 4.02433 20.9757 4.78924 21.455 5.73005C21.7568 6.32234 21.8826 6.96253 21.9422 7.69138C22 8.39925 22 9.27339 22 10.3572V13.6428C22 14.7266 22 15.6008 21.9422 16.3086C21.8826 17.0375 21.7568 17.6777 21.455 18.27C20.9757 19.2108 20.2108 19.9757 19.27 20.455C18.6777 20.7568 18.0375 20.8826 17.3086 20.9422C16.6008 21 15.7266 21 14.6428 21H9.35717C8.27339 21 7.39925 21 6.69138 20.9422C5.96253 20.8826 5.32234 20.7568 4.73005 20.455C3.78924 19.9757 3.02433 19.2108 2.54497 18.27C2.24318 17.6777 2.11737 17.0375 2.05782 16.3086C1.99998 15.6007 1.99999 14.7266 2 13.6428V10.3572C1.99999 9.27341 1.99998 8.39926 2.05782 7.69138C2.11737 6.96253 2.24318 6.32234 2.54497 5.73005C3.02433 4.78924 3.78924 4.02433 4.73005 3.54497C5.32234 3.24318 5.96253 3.11737 6.69138 3.05782C7.39926 2.99998 8.27341 2.99999 9.35719 3ZM6.85424 5.05118C6.24907 5.10062 5.90138 5.19279 5.63803 5.32698C5.07354 5.6146 4.6146 6.07354 4.32698 6.63803C4.19279 6.90138 4.10062 7.24907 4.05118 7.85424C4.00078 8.47108 4 9.26339 4 10.4V13.6C4 14.7366 4.00078 15.5289 4.05118 16.1458C4.10062 16.7509 4.19279 17.0986 4.32698 17.362C4.6146 17.9265 5.07354 18.3854 5.63803 18.673C5.90138 18.8072 6.24907 18.8994 6.85424 18.9488C7.47108 18.9992 8.26339 19 9.4 19H14.6C15.7366 19 16.5289 18.9992 17.1458 18.9488C17.7509 18.8994 18.0986 18.8072 18.362 18.673C18.9265 18.3854 19.3854 17.9265 19.673 17.362C19.8072 17.0986 19.8994 16.7509 19.9488 16.1458C19.9992 15.5289 20 14.7366 20 13.6V10.4C20 9.26339 19.9992 8.47108 19.9488 7.85424C19.8994 7.24907 19.8072 6.90138 19.673 6.63803C19.3854 6.07354 18.9265 5.6146 18.362 5.32698C18.0986 5.19279 17.7509 5.10062 17.1458 5.05118C16.5289 5.00078 15.7366 5 14.6 5H9.4C8.26339 5 7.47108 5.00078 6.85424 5.05118ZM7 7C7.55229 7 8 7.44772 8 8V16C8 16.5523 7.55229 17 7 17C6.44772 17 6 16.5523 6 16V8C6 7.44772 5 7 5 7Z" />
    <path d="M10 8C10 7.44772 10.4477 7 11 7H13C13.5523 7 14 7.44772 14 8C14 8.55228 13.5523 9 13 9H11C10.4477 9 10 8.55228 10 8ZM11 15C10.4477 15 10 15.4477 10 16C10 16.5523 10.4477 17 11 17H13C13.5523 17 14 16.5523 14 16C14 15.4477 13.5523 15 13 15H11Z" />
  </svg>
);

export const TelegramIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg viewBox="0 0 24 24" fill="currentColor" {...props}><path d="M9.78 18.65l.28-4.23 7.68-6.92c.34-.31-.07-.46-.52-.19L7.74 13.3 3.64 12c-.51-.16-.52-.53.11-.7L16.94 6c.4-.15.75.12.63.53l-2.22 10.21c-.13.51-.47.64-1.01.38l-4.56-3.35-2.14 2.05c-.22.21-.4.33-.66.33z"></path></svg>
);

export const WhatsAppIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg viewBox="0 0 24 24" fill="currentColor" {...props}><path d="M16.75 13.96c.25.13.43.2.5.33.07.13.07.66-.03 1.39-.1.73-.55 1.34-1.14 1.78-.59.44-1.34.58-1.9.58-.55 0-1.12-.08-1.74-.25-1.8-.5-3.35-1.42-4.63-2.82-1.49-1.63-2.5-3.5-2.82-5.1-.17-.62-.25-1.23-.25-1.78 0-.58.14-1.33.58-1.9.44-.6.99-1.07 1.72-1.17.73-.1 1.26-.1 1.39-.03.13.07.2.26.33.5.13.25.28.58.31.62.03.04.06.07.06.14 0 .07-.03.13-.06.19-.03.06-2.14 2.44-2.14 2.44s-.59.58-.59 1.02c0 .44.59 1.02.59 1.02s2.14 2.44 2.14 2.44c.06.06.13.1.19.1.07 0 .14-.03.14-.06.04-.03.36-.19.61-.31zM12 2a10 10 0 100 20 10 10 0 000-20z"></path></svg>
);

export const VKIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg viewBox="0 0 24 24" fill="currentColor" {...props}><path d="M13.125 10.368l1.453-.162c.594 0 .97.234 1.13.729.135.45.032 1.152-.451 2.034-.516.945-1.11 1.836-1.11 1.836s.693 1.17 1.828 1.485c.421.126 1.026.153 1.69.153h.27s.243.027.243.162c0 .243-.648.783-1.432.891-.972.108-2.025-.135-2.97-.621-.972-.513-1.62-.972-2.16-1.296-.54-.351-.89-.27-.89-.27s-.054 1.269-.432 1.62c-.378.351-1.053.405-1.215.27-.405-.297-1.242-1.323-2.457-3.267C5.176 12.333 4 10.09 4 10.09s-.027-.189.135-.297c.135-.081.405 0 .405 0h2.43s.189 0 .297.054c.108.054.135.216.135.216s.324 1.026.702 1.674c.756 1.296 1.404 1.647 1.62 1.485.351-.27.243-1.782.243-1.782s.027-.972-.27-1.35c-.297-.378-.891-.378-1.053-.351l-1.836.216c-.243 0-.405-.081-.405-.27s.054-.27.216-.324c.162-.054.513-.108.972-.108h1.269c.594 0 1.026.054 1.296.189.27.135.378.432.243.594-.135.162-.216.216-.324.216s-.297.027-.297.027z"></path></svg>
);

export const RutubeIcon: React.FC<React.SVGProps<SVGSVGElement>> = (props) => (
  <svg viewBox="0 0 24 24" fill="currentColor" {...props}><path d="M12.012 1.8a10.2 10.2 0 100 20.4 10.2 10.2 0 000-20.4zm-1.63 15.637V6.56l7.863 3.92-7.863 7.017zm-4.63-7.567a.555.555 0 01.555-.554h2.723a.555.555 0 01.554.554v2.723a.555.555 0 01-.554.554H6.307a.555.555 0 01-.555-.554V9.87z"></path></svg>
);
