{"id":126,"date":"2026-05-31T06:20:30","date_gmt":"2026-05-31T06:20:30","guid":{"rendered":"https:\/\/vikassrivastava.in\/academy\/?page_id=126"},"modified":"2026-07-18T14:42:44","modified_gmt":"2026-07-18T14:42:44","slug":"ai-tool-studio","status":"publish","type":"page","link":"https:\/\/vikassrivastava.in\/academy\/ai-tool-studio\/","title":{"rendered":"Depository of Free AI Tools"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"126\" class=\"elementor elementor-126\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ce89b6c e-con e-atomic-element e-flexbox-base e-941d13f \" data-id=\"ce89b6c\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"ce89b6c\">\n    \t\t<div class=\"elementor-element elementor-element-765f59d elementor-widget elementor-widget-html\" data-id=\"765f59d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- Smart AI Tools Studio \u2013 WordPress Custom HTML Block -->\r\n<script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.min.js\"><\/script>\r\n<div id=\"smart-ai-tools-studio\">\r\n\r\n\r\n<div class=\"ai-directory-wrapper\">\r\n  <div class=\"ai-directory-container\">\r\n\r\n    <div class=\"top-bar\">\r\n      <button class=\"theme-toggle\" onclick=\"toggleTheme()\" id=\"themeToggle\">\ud83c\udf19 Dark Mode<\/button>\r\n\r\n      <div class=\"top-right-actions\">\r\n        <button type=\"button\" class=\"resume-ai-launch-btn\" id=\"resumeAiLaunchBtn\" onclick=\"window.openResumeAiScreen && window.openResumeAiScreen(); return false;\">AI Tool<\/button>\r\n\r\n        <div class=\"profile-photo\">\r\n        <img decoding=\"async\" src=\"https:\/\/vikassrivastava.in\/academy\/wp-content\/uploads\/2026\/05\/a_photo_vikas7.png\" alt=\"Vikas Srivastava\">\r\n      <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"ai-header\">\r\n      <h1>Smart AI Tools Studio<\/h1>\r\n      <p class=\"directory-search-description\">Search by selecting a category or type your requirement, like image generation, video editing, resume, research, coding, PDF, automation, presentation, or meeting notes.<\/p>\r\n    <\/div>\r\n\r\n\r\n\r\n    <div class=\"finder-launch-area\">\r\n      <button\r\n        type=\"button\"\r\n        class=\"finder-launch-btn\"\r\n        id=\"finderLaunchBtn\"\r\n        aria-expanded=\"false\"\r\n        aria-controls=\"requirementFinder\"\r\n      >\r\n        \ud83d\udd0d Find AI Tool for My Requirement\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <section class=\"requirement-finder\" id=\"requirementFinder\">\r\n      <div class=\"requirement-finder-heading\">\r\n        <h2>Find the Best AI Tool for Your Requirement<\/h2>\r\n        <p>\r\n          Describe what you want to do, select your skill level, then review matching tools,\r\n          their pros and cons, and a demonstration of the selected tool.\r\n        <\/p>\r\n      <\/div>\r\n\r\n      <div class=\"requirement-form-grid\">\r\n        <div class=\"form-field\">\r\n          <label for=\"requirementInput\">Your requirement<\/label>\r\n          <input\r\n            id=\"requirementInput\"\r\n            type=\"text\"\r\n            placeholder=\"Example: Create a management presentation from Excel data\"\r\n          >\r\n        <\/div>\r\n\r\n        <div class=\"form-field\">\r\n          <label for=\"requirementLevel\">Skill level<\/label>\r\n          <select id=\"requirementLevel\">\r\n            <option value=\"Beginner\">Beginner<\/option>\r\n            <option value=\"Intermediate\">Intermediate<\/option>\r\n            <option value=\"Advance\">Advance<\/option>\r\n          <\/select>\r\n        <\/div>\r\n\r\n        <button type=\"button\" class=\"finder-btn\" id=\"findRequirementBtn\">Find AI Tools<\/button>\r\n      <\/div>\r\n\r\n      <div class=\"finder-results\" id=\"requirementResults\"><\/div>\r\n\r\n      <div class=\"selected-tool-panel\" id=\"selectedToolPanel\">\r\n        <div class=\"selected-tool-detail-label\">Selected AI Tool Details<\/div>\r\n        <div class=\"selected-tool-head\">\r\n          <div>\r\n            <p style=\"color:var(--text-soft);margin-bottom:5px;\">Selected tool<\/p>\r\n            <h3 id=\"selectedToolTitle\">Tool Details<\/h3>\r\n          <\/div>\r\n          <div style=\"display:flex;gap:10px;flex-wrap:wrap;\">\r\n            <button type=\"button\" class=\"open-btn\" id=\"backToDirectoryBtn\" style=\"border:none;cursor:pointer;\">\u2190 Back to Directory<\/button>\r\n            <a id=\"selectedToolLink\" class=\"open-btn\" href=\"#\" target=\"_blank\" rel=\"noopener noreferrer\">Open Official Tool \u2197<\/a>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"selected-tool-summary\" id=\"selectedToolSummary\">\r\n          The best-matching tool is selected automatically. Click another result card to view its pros and cons.\r\n        <\/div>\r\n\r\n        <div class=\"analysis-grid\">\r\n          <div class=\"analysis-box\">\r\n            <h4>\u2705 Pros<\/h4>\r\n            <div class=\"analysis-list\" id=\"selectedToolPros\"><\/div>\r\n          <\/div>\r\n\r\n          <div class=\"analysis-box\">\r\n            <h4>\u26a0\ufe0f Cons<\/h4>\r\n            <div class=\"analysis-list\" id=\"selectedToolCons\"><\/div>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"demo-panel\">\r\n          <h4>\ud83e\uddea Demo of Selected Tool<\/h4>\r\n          <p>\r\n            Enter a sample requirement below. This built-in demonstration shows the type\r\n            of workflow and output you can expect. It does not connect to the tool's live API.\r\n          <\/p>\r\n\r\n          <div class=\"demo-controls\">\r\n            <textarea id=\"selectedToolDemoInput\" placeholder=\"Enter a sample task for the selected tool...\"><\/textarea>\r\n            <button type=\"button\" class=\"finder-btn\" id=\"runToolDemoBtn\">Run Demo<\/button>\r\n          <\/div>\r\n\r\n          <div class=\"demo-output\" id=\"selectedToolDemoOutput\">\r\n            Click \u201cView Pros, Cons & Demo\u201d on any tool card. The selected tool\u2019s details and demonstration will appear here.\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/section>\r\n\r\n    <div id=\"directoryBrowseSection\" class=\"directory-browse-section\">\r\n    <div class=\"search-box\">\r\n      <input type=\"text\" id=\"searchInput\" placeholder=\"Search AI tools or type your requirement...\" onkeyup=\"searchTools()\">\r\n    <\/div>\r\n\r\n    <div class=\"category-tabs\" id=\"categoryTabs\"><\/div>\r\n\r\n    <div class=\"section-title\">\r\n      <h2 id=\"currentCategoryTitle\">Tools<\/h2>\r\n      <p id=\"currentCategorySubTitle\">Showing 20 popular tools sorted by user count<\/p>\r\n    <\/div>\r\n\r\n    <div class=\"tools-grid\" id=\"toolsGrid\"><\/div>\r\n\r\n    <div class=\"no-result\" id=\"noResult\">No matching tools found. Please try another keyword.<\/div>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n\r\n\r\n  <section class=\"resume-ai-screen\" id=\"resumeAiScreen\" aria-hidden=\"true\">\r\n    <div class=\"resume-ai-shell\">\r\n      <div class=\"resume-ai-header\">\r\n        <div>\r\n          <p class=\"resume-ai-kicker\">Resume-Based AI Learning Advisor<\/p>\r\n          <h2>Discover Which AI Tools You Should Learn<\/h2>\r\n          <p>\r\n            Upload your PDF resume. The system reads the resume in your browser,\r\n            identifies your skills and career focus, and recommends suitable AI tools\r\n            together with their practical benefits.\r\n          <\/p>\r\n        <\/div>\r\n\r\n        <button type=\"button\" class=\"resume-ai-close-btn\" id=\"resumeAiCloseBtn\" aria-label=\"Close\" onclick=\"window.closeResumeAiScreen && window.closeResumeAiScreen(); return false;\">\u2715<\/button>\r\n      <\/div>\r\n\r\n      <div class=\"resume-ai-upload-card\">\r\n        <div class=\"resume-drop-zone\" id=\"resumeDropZone\">\r\n          <div class=\"resume-upload-icon\">\ud83d\udcc4<\/div>\r\n          <h3>Upload Your PDF Resume<\/h3>\r\n          <p>Drag and drop your resume here or choose a PDF file from your device.<\/p>\r\n\r\n          <label class=\"resume-primary-btn resume-file-label\" id=\"chooseResumeLabel\">\r\n            <span id=\"resumeChooseText\">Choose PDF Resume<\/span>\r\n            <input\r\n              type=\"file\"\r\n              id=\"resumePdfInput\"\r\n              class=\"resume-native-file-input\"\r\n              accept=\".pdf,application\/pdf\"\r\n              aria-label=\"Choose PDF Resume\"\r\n              onchange=\"window.receiveResumePdf && window.receiveResumePdf(this.files && this.files[0]);\"\r\n            >\r\n          <\/label>\r\n\r\n          <div class=\"resume-file-status\" id=\"resumeFileStatus\">\r\n            <span class=\"resume-status-dot\"><\/span>\r\n            <span class=\"resume-file-name\" id=\"resumeFileName\">No file selected<\/span>\r\n          <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"resume-analysis-actions\">\r\n          <button type=\"button\" class=\"resume-primary-btn\" id=\"analyzeResumeBtn\" onclick=\"window.analyzeUploadedResume && window.analyzeUploadedResume(); return false;\" disabled>Analyse Resume<\/button>\r\n          <button type=\"button\" class=\"resume-secondary-btn\" id=\"resetResumeBtn\">Reset<\/button>\r\n        <\/div>\r\n\r\n        <div class=\"resume-progress-wrap\" id=\"resumeProgressWrap\">\r\n          <div class=\"resume-progress-bar\">\r\n            <div class=\"resume-progress-fill\" id=\"resumeProgressFill\"><\/div>\r\n          <\/div>\r\n          <div class=\"resume-progress-text\" id=\"resumeProgressText\">Waiting for PDF resume<\/div>\r\n          <div class=\"resume-upload-help\">\r\n            Select a text-based PDF up to 15 MB. Scanned image-only resumes may require OCR.\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n\r\n      <div class=\"resume-results\" id=\"resumeResults\">\r\n        <div class=\"resume-empty-state\">\r\n          <div>\ud83e\udd16<\/div>\r\n          <h3>Your AI learning recommendations will appear here<\/h3>\r\n          <p>The resume is processed locally in your browser. No API key is required.<\/p>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/section>\r\n\r\n<\/div>\r\n\r\n<style>\r\n#smart-ai-tools-studio {\r\n  font-family: Arial, Helvetica, sans-serif;\r\n  color: var(--text-main);\r\n  transition: 0.3s ease;\r\n}\r\n\r\n\r\n#smart-ai-tools-studio, #smart-ai-tools-studio * {\r\n  margin: 0;\r\n  padding: 0;\r\n  box-sizing: border-box;\r\n}\r\n\r\n#smart-ai-tools-studio {\r\n  --bg-main: #000000;\r\n  --bg-card: rgba(255,255,255,0.08);\r\n  --bg-tab: rgba(255,255,255,0.10);\r\n  --text-main: #ffffff;\r\n  --text-soft: #cfd3e6;\r\n  --border: rgba(255,255,255,0.16);\r\n  --button-bg: #ffffff;\r\n  --button-text: #111111;\r\n  --accent-1: #5b63ff;\r\n  --accent-2: #00d6c9;\r\n  --shadow: rgba(0,0,0,0.35);\r\n}\r\n\r\n#smart-ai-tools-studio.light-mode {\r\n  --bg-main: #f4f7fb;\r\n  --bg-card: #ffffff;\r\n  --bg-tab: #ffffff;\r\n  --text-main: #121426;\r\n  --text-soft: #555b73;\r\n  --border: rgba(0,0,0,0.10);\r\n  --button-bg: #121426;\r\n  --button-text: #ffffff;\r\n  --shadow: rgba(0,0,0,0.12);\r\n}\r\n\r\n\r\n.ai-directory-wrapper {\r\n  width: 100%;\r\n  min-height: 100vh;\r\n  padding: 35px 18px;\r\n  background:\r\n    radial-gradient(circle at top left, rgba(91, 99, 255, 0.22), transparent 35%),\r\n    radial-gradient(circle at bottom right, rgba(0, 214, 201, 0.18), transparent 35%),\r\n    var(--bg-main) !important;\r\n}\r\n\r\n.ai-directory-container {\r\n  max-width: 1280px;\r\n  margin: auto;\r\n}\r\n\r\n.top-bar {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  align-items: center;\r\n  margin-bottom: 18px;\r\n  gap: 15px;\r\n}\r\n\r\n.theme-toggle {\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-card);\r\n  color: var(--text-main);\r\n  padding: 10px 18px;\r\n  border-radius: 50px;\r\n  cursor: pointer;\r\n  font-weight: bold;\r\n  font-size: 15px;\r\n  transition: 0.25s ease;\r\n}\r\n\r\n.theme-toggle:hover {\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 10px 25px var(--shadow);\r\n}\r\n\r\n.profile-photo {\r\n  width: 82px;\r\n  height: 82px;\r\n  border-radius: 50%;\r\n  overflow: hidden;\r\n  border: 4px solid rgba(255,255,255,0.75);\r\n  box-shadow: 0 12px 30px var(--shadow);\r\n  background: #ffffff;\r\n  flex-shrink: 0;\r\n}\r\n\r\n.profile-photo img {\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n}\r\n\r\n.ai-header {\r\n  text-align: center;\r\n  margin-bottom: 25px;\r\n}\r\n\r\n.ai-header h1 {\r\n  font-size: clamp(44px, 8vw, 88px);\r\n  line-height: 1.05;\r\n  margin-bottom: 16px;\r\n  font-weight: 900;\r\n  letter-spacing: -1.5px;\r\n  background: linear-gradient(90deg, #ffffff, #8ee9ff, #ffc56e);\r\n  -webkit-background-clip: text;\r\n  -webkit-text-fill-color: transparent;\r\n}\r\n\r\n#smart-ai-tools-studio.light-mode .ai-header h1 {\r\n  background: linear-gradient(90deg, #111827, #2563eb, #0f766e);\r\n  -webkit-background-clip: text;\r\n  -webkit-text-fill-color: transparent;\r\n}\r\n\r\n.ai-header p {\r\n  color: var(--text-soft);\r\n  font-size: 17px;\r\n  max-width: 900px;\r\n  margin: auto;\r\n  line-height: 1.6;\r\n}\r\n\r\n.search-box {\r\n  max-width: 760px;\r\n  margin: 26px auto;\r\n}\r\n\r\n.search-box input {\r\n  width: 100%;\r\n  padding: 18px 24px;\r\n  border-radius: 50px;\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-card);\r\n  color: var(--text-main);\r\n  font-size: 17px;\r\n  outline: none;\r\n}\r\n\r\n.search-box input::placeholder {\r\n  color: var(--text-soft);\r\n}\r\n\r\n.category-tabs {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  justify-content: center;\r\n  gap: 12px;\r\n  margin: 25px 0 32px;\r\n}\r\n\r\n.tab-btn {\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-tab);\r\n  color: var(--text-main);\r\n  padding: 11px 18px;\r\n  border-radius: 50px;\r\n  font-size: 15px;\r\n  cursor: pointer;\r\n  transition: 0.25s ease;\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 8px;\r\n}\r\n\r\n.tab-btn span {\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n  padding: 3px 8px;\r\n  border-radius: 20px;\r\n  font-size: 12px;\r\n  font-weight: bold;\r\n}\r\n\r\n.tab-btn:hover,\r\n.tab-btn.active {\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n  color: #ffffff;\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 10px 24px var(--shadow);\r\n}\r\n\r\n.tab-btn:hover span,\r\n.tab-btn.active span {\r\n  background: #ffffff;\r\n  color: #111111;\r\n}\r\n\r\n.section-title {\r\n  text-align: center;\r\n  margin-bottom: 22px;\r\n}\r\n\r\n.section-title h2 {\r\n  font-size: 30px;\r\n  margin-bottom: 8px;\r\n}\r\n\r\n.section-title p {\r\n  color: var(--text-soft);\r\n}\r\n\r\n.tools-grid {\r\n  display: grid;\r\n  grid-template-columns: repeat(4, 1fr);\r\n  gap: 20px;\r\n}\r\n\r\n.tool-card {\r\n  background: var(--bg-card);\r\n  border: 1px solid var(--border);\r\n  border-radius: 24px;\r\n  overflow: hidden;\r\n  transition: 0.28s ease;\r\n  box-shadow: 0 12px 35px var(--shadow);\r\n  cursor: pointer;\r\n}\r\n\r\n.tool-card:hover {\r\n  transform: translateY(-8px);\r\n}\r\n\r\n.preview-box {\r\n  width: 100%;\r\n  height: 145px;\r\n  background: #e5e7eb;\r\n  overflow: hidden;\r\n  border-bottom: 1px solid var(--border);\r\n  position: relative;\r\n}\r\n\r\n.preview-box img {\r\n  width: 100%;\r\n  height: 100%;\r\n  object-fit: cover;\r\n  transition: 0.35s ease;\r\n}\r\n\r\n.tool-card:hover .preview-box img {\r\n  transform: scale(1.07);\r\n}\r\n\r\n.preview-label {\r\n  position: absolute;\r\n  top: 10px;\r\n  left: 10px;\r\n  background: rgba(0,0,0,0.68);\r\n  color: #ffffff;\r\n  padding: 5px 10px;\r\n  border-radius: 50px;\r\n  font-size: 12px;\r\n  font-weight: bold;\r\n}\r\n\r\n.preview-tool-name {\r\n  position: absolute;\r\n  left: 10px;\r\n  right: 10px;\r\n  bottom: 10px;\r\n  background: rgba(0,0,0,0.78);\r\n  color: #ffffff;\r\n  padding: 8px 12px;\r\n  border-radius: 14px;\r\n  font-size: 16px;\r\n  font-weight: 900;\r\n  line-height: 1.2;\r\n  text-align: center;\r\n  box-shadow: 0 8px 20px rgba(0,0,0,0.25);\r\n}\r\n\r\n.tool-content {\r\n  padding: 18px;\r\n}\r\n\r\n.tool-top-row {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  align-items: center;\r\n  gap: 10px;\r\n  margin-bottom: 12px;\r\n}\r\n\r\n.tool-icon {\r\n  width: 46px;\r\n  height: 46px;\r\n  border-radius: 15px;\r\n  background: linear-gradient(135deg, #ffffff, #dfe7ff);\r\n  color: #111111;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  font-size: 23px;\r\n  flex-shrink: 0;\r\n}\r\n\r\n.status-badge {\r\n  padding: 6px 10px;\r\n  border-radius: 50px;\r\n  font-size: 12px;\r\n  font-weight: bold;\r\n  white-space: nowrap;\r\n}\r\n\r\n.status-free {\r\n  background: #d1fae5;\r\n  color: #065f46;\r\n}\r\n\r\n.status-freemium {\r\n  background: #dbeafe;\r\n  color: #1e40af;\r\n}\r\n\r\n.status-trial {\r\n  background: #fef3c7;\r\n  color: #92400e;\r\n}\r\n\r\n.category-badge {\r\n  display: inline-block;\r\n  margin-bottom: 10px;\r\n  padding: 5px 10px;\r\n  border-radius: 50px;\r\n  background: rgba(255,255,255,0.12);\r\n  color: var(--text-soft);\r\n  font-size: 12px;\r\n  font-weight: bold;\r\n}\r\n\r\n#smart-ai-tools-studio.light-mode .category-badge {\r\n  background: #eef2ff;\r\n  color: #3730a3;\r\n}\r\n\r\n.tool-card h3 {\r\n  font-size: 19px;\r\n  margin-bottom: 8px;\r\n}\r\n\r\n.tool-card h3.tool-name {\r\n  display: block;\r\n  color: var(--text-main);\r\n  font-size: 21px;\r\n  font-weight: 900;\r\n  line-height: 1.25;\r\n  margin: 4px 0 10px;\r\n  letter-spacing: 0.2px;\r\n  -webkit-text-fill-color: currentColor;\r\n}\r\n\r\n#smart-ai-tools-studio.light-mode .tool-card h3.tool-name {\r\n  color: #111827;\r\n}\r\n\r\n.tool-card p {\r\n  color: var(--text-soft);\r\n  font-size: 14px;\r\n  line-height: 1.55;\r\n  margin-bottom: 14px;\r\n}\r\n\r\n.tool-meta {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  align-items: center;\r\n  gap: 10px;\r\n  margin-bottom: 15px;\r\n  color: var(--text-soft);\r\n  font-size: 13px;\r\n}\r\n\r\n.open-btn {\r\n  display: inline-block;\r\n  text-decoration: none;\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n  padding: 10px 15px;\r\n  border-radius: 50px;\r\n  font-weight: bold;\r\n  font-size: 14px;\r\n  transition: 0.25s ease;\r\n}\r\n\r\n.open-btn:hover {\r\n  background: #ffc56e;\r\n  color: #111111;\r\n}\r\n\r\n.no-result {\r\n  display: none;\r\n  text-align: center;\r\n  color: #ffbf69;\r\n  font-size: 18px;\r\n  margin-top: 28px;\r\n}\r\n\r\n@media (max-width: 1100px) {\r\n  .tools-grid {\r\n    grid-template-columns: repeat(3, 1fr);\r\n  }\r\n}\r\n\r\n@media (max-width: 780px) {\r\n  .tools-grid {\r\n    grid-template-columns: repeat(2, 1fr);\r\n  }\r\n\r\n  .ai-directory-wrapper {\r\n    padding: 28px 14px;\r\n  }\r\n\r\n  .tab-btn {\r\n    font-size: 14px;\r\n    padding: 10px 14px;\r\n  }\r\n\r\n  .preview-box {\r\n    height: 130px;\r\n  }\r\n\r\n  .profile-photo {\r\n    width: 70px;\r\n    height: 70px;\r\n  }\r\n}\r\n\r\n@media (max-width: 540px) {\r\n  .tools-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  .ai-header h1 {\r\n    font-size: 42px;\r\n  }\r\n\r\n  .preview-box {\r\n    height: 160px;\r\n  }\r\n\r\n  .profile-photo {\r\n    width: 62px;\r\n    height: 62px;\r\n  }\r\n}\r\n\r\n\/* ===== Requirement Finder, Pros\/Cons and Demo Section ===== *\/\r\n.requirement-finder {\r\n  margin: 34px 0 42px;\r\n  padding: 28px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 28px;\r\n  background:\r\n    linear-gradient(135deg, rgba(91,99,255,0.13), rgba(0,214,201,0.08)),\r\n    var(--bg-card);\r\n  box-shadow: 0 18px 45px var(--shadow);\r\n}\r\n\r\n.requirement-finder-heading {\r\n  text-align: center;\r\n  margin-bottom: 24px;\r\n}\r\n\r\n.requirement-finder-heading h2 {\r\n  font-size: clamp(28px, 4vw, 42px);\r\n  margin-bottom: 10px;\r\n}\r\n\r\n.requirement-finder-heading p {\r\n  color: var(--text-soft);\r\n  line-height: 1.65;\r\n  max-width: 850px;\r\n  margin: auto;\r\n}\r\n\r\n.requirement-form-grid {\r\n  display: grid;\r\n  grid-template-columns: 2fr 1fr 1fr auto;\r\n  gap: 12px;\r\n  align-items: end;\r\n}\r\n\r\n.form-field label {\r\n  display: block;\r\n  margin-bottom: 8px;\r\n  color: var(--text-soft);\r\n  font-size: 13px;\r\n  font-weight: 700;\r\n}\r\n\r\n.form-field input,\r\n.form-field select,\r\n.form-field textarea {\r\n  width: 100%;\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-tab);\r\n  color: var(--text-main);\r\n  border-radius: 15px;\r\n  padding: 13px 14px;\r\n  outline: none;\r\n}\r\n\r\n.form-field textarea {\r\n  min-height: 100px;\r\n  resize: vertical;\r\n}\r\n\r\n.form-field input::placeholder,\r\n.form-field textarea::placeholder {\r\n  color: var(--text-soft);\r\n}\r\n\r\n.finder-btn {\r\n  border: none;\r\n  border-radius: 15px;\r\n  padding: 14px 20px;\r\n  font-weight: 900;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n  color: #ffffff;\r\n  cursor: pointer;\r\n  transition: 0.25s ease;\r\n  white-space: nowrap;\r\n}\r\n\r\n.finder-btn:hover {\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 12px 28px var(--shadow);\r\n}\r\n\r\n.finder-reset-btn {\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n}\r\n\r\n.finder-results {\r\n  display: grid;\r\n  grid-template-columns: repeat(3, 1fr);\r\n  gap: 18px;\r\n  margin-top: 26px;\r\n}\r\n\r\n.finder-result-card {\r\n  border: 1px solid var(--border);\r\n  border-radius: 22px;\r\n  padding: 20px;\r\n  background: var(--bg-tab);\r\n  box-shadow: 0 12px 30px var(--shadow);\r\n}\r\n\r\n.finder-result-card.selected {\r\n  border-color: var(--accent-2);\r\n  box-shadow: 0 0 0 3px rgba(0,214,201,0.12), 0 14px 34px var(--shadow);\r\n}\r\n\r\n.finder-result-top {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  gap: 12px;\r\n  align-items: flex-start;\r\n  margin-bottom: 14px;\r\n}\r\n\r\n.finder-result-name {\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 10px;\r\n}\r\n\r\n.finder-result-name strong {\r\n  font-size: 20px;\r\n}\r\n\r\n.match-score {\r\n  background: #d1fae5;\r\n  color: #065f46;\r\n  padding: 6px 10px;\r\n  border-radius: 50px;\r\n  font-size: 12px;\r\n  font-weight: 900;\r\n  white-space: nowrap;\r\n}\r\n\r\n.finder-result-card p {\r\n  color: var(--text-soft);\r\n  line-height: 1.55;\r\n  font-size: 14px;\r\n}\r\n\r\n.finder-tags {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  gap: 7px;\r\n  margin: 14px 0;\r\n}\r\n\r\n.finder-tag {\r\n  padding: 6px 9px;\r\n  border-radius: 50px;\r\n  font-size: 11px;\r\n  font-weight: 800;\r\n  border: 1px solid var(--border);\r\n  color: var(--text-soft);\r\n}\r\n\r\n.finder-actions {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr;\r\n  gap: 9px;\r\n  margin-top: 16px;\r\n}\r\n\r\n.finder-action-btn {\r\n  border: 1px solid var(--border);\r\n  border-radius: 12px;\r\n  padding: 10px 12px;\r\n  font-weight: 800;\r\n  cursor: pointer;\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n}\r\n\r\n.finder-action-btn.secondary {\r\n  background: transparent;\r\n  color: var(--text-main);\r\n}\r\n\r\n.selected-tool-panel {\r\n  display: none;\r\n  margin-top: 30px;\r\n  border-top: 1px solid var(--border);\r\n  padding-top: 28px;\r\n}\r\n\r\n.selected-tool-panel.show {\r\n  display: block;\r\n}\r\n\r\n.selected-tool-head {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  gap: 16px;\r\n  align-items: center;\r\n  margin-bottom: 18px;\r\n}\r\n\r\n.selected-tool-head h3 {\r\n  font-size: 28px;\r\n}\r\n\r\n.analysis-grid {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr;\r\n  gap: 18px;\r\n}\r\n\r\n.analysis-box {\r\n  border: 1px solid var(--border);\r\n  border-radius: 20px;\r\n  padding: 20px;\r\n  background: var(--bg-tab);\r\n}\r\n\r\n.analysis-box h4 {\r\n  margin-bottom: 14px;\r\n  font-size: 19px;\r\n}\r\n\r\n.analysis-list {\r\n  display: flex;\r\n  flex-direction: column;\r\n  gap: 10px;\r\n}\r\n\r\n.analysis-item {\r\n  display: flex;\r\n  gap: 10px;\r\n  color: var(--text-soft);\r\n  line-height: 1.55;\r\n}\r\n\r\n.analysis-item .positive { color: #34d399; }\r\n.analysis-item .negative { color: #fb7185; }\r\n\r\n.demo-panel {\r\n  margin-top: 18px;\r\n  padding: 22px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 20px;\r\n  background:\r\n    linear-gradient(135deg, rgba(91,99,255,0.10), rgba(0,214,201,0.06)),\r\n    var(--bg-tab);\r\n}\r\n\r\n.demo-panel h4 {\r\n  font-size: 21px;\r\n  margin-bottom: 8px;\r\n}\r\n\r\n.demo-panel p {\r\n  color: var(--text-soft);\r\n  line-height: 1.55;\r\n}\r\n\r\n.demo-controls {\r\n  display: grid;\r\n  grid-template-columns: 1fr auto;\r\n  gap: 12px;\r\n  margin-top: 14px;\r\n}\r\n\r\n.demo-controls textarea {\r\n  width: 100%;\r\n  min-height: 110px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 15px;\r\n  padding: 14px;\r\n  background: var(--bg-main);\r\n  color: var(--text-main);\r\n  outline: none;\r\n  resize: vertical;\r\n}\r\n\r\n.demo-output {\r\n  margin-top: 14px;\r\n  min-height: 115px;\r\n  border-radius: 15px;\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-main);\r\n  padding: 16px;\r\n  color: var(--text-soft);\r\n  line-height: 1.65;\r\n  white-space: pre-wrap;\r\n}\r\n\r\n.finder-empty {\r\n  grid-column: 1 \/ -1;\r\n  text-align: center;\r\n  color: var(--text-soft);\r\n  padding: 28px;\r\n  border: 1px dashed var(--border);\r\n  border-radius: 18px;\r\n}\r\n\r\n@media (max-width: 950px) {\r\n  .requirement-form-grid {\r\n    grid-template-columns: 1fr 1fr;\r\n  }\r\n\r\n  .finder-results {\r\n    grid-template-columns: repeat(2, 1fr);\r\n  }\r\n}\r\n\r\n@media (max-width: 650px) {\r\n  .requirement-finder {\r\n    padding: 20px 15px;\r\n  }\r\n\r\n  .requirement-form-grid,\r\n  .finder-results,\r\n  .analysis-grid,\r\n  .demo-controls {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  .selected-tool-head {\r\n    align-items: flex-start;\r\n    flex-direction: column;\r\n  }\r\n}\r\n\r\n\r\n\r\n\/* ===== Separate Finder Activation Button ===== *\/\r\n.finder-launch-area {\r\n  display: flex;\r\n  justify-content: center;\r\n  margin: 26px 0 30px;\r\n}\r\n\r\n.finder-launch-btn {\r\n  border: none;\r\n  border-radius: 50px;\r\n  padding: 15px 28px;\r\n  font-size: 16px;\r\n  font-weight: 900;\r\n  cursor: pointer;\r\n  color: #ffffff;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n  box-shadow: 0 14px 32px var(--shadow);\r\n  transition: 0.25s ease;\r\n}\r\n\r\n.finder-launch-btn:hover {\r\n  transform: translateY(-3px);\r\n  box-shadow: 0 18px 38px var(--shadow);\r\n}\r\n\r\n.finder-launch-btn.active {\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n}\r\n\r\n.requirement-finder {\r\n  display: none;\r\n}\r\n\r\n.requirement-finder.finder-active {\r\n  display: block;\r\n  animation: finderReveal 0.35s ease;\r\n}\r\n\r\n@keyframes finderReveal {\r\n  from {\r\n    opacity: 0;\r\n    transform: translateY(-14px);\r\n  }\r\n  to {\r\n    opacity: 1;\r\n    transform: translateY(0);\r\n  }\r\n}\r\n\r\n\r\n\/* ===== WordPress Button and Layout Fixes ===== *\/\r\n#smart-ai-tools-studio button,\r\n#smart-ai-tools-studio a {\r\n  box-sizing: border-box;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-launch-area {\r\n  width: 100%;\r\n  padding: 0 10px;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-launch-btn {\r\n  width: auto;\r\n  min-width: 300px;\r\n  max-width: 100%;\r\n  min-height: 52px;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  white-space: normal;\r\n  text-align: center;\r\n  line-height: 1.25;\r\n}\r\n\r\n#smart-ai-tools-studio .requirement-form-grid {\r\n  grid-template-columns: minmax(280px, 2fr) minmax(170px, 1fr) minmax(150px, 1fr) minmax(150px, auto);\r\n}\r\n\r\n#smart-ai-tools-studio .finder-btn {\r\n  min-height: 48px;\r\n  width: 100%;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  white-space: normal;\r\n  line-height: 1.2;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-action-btn {\r\n  width: 100%;\r\n  min-height: 42px;\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  text-align: center;\r\n  white-space: normal;\r\n  line-height: 1.2;\r\n}\r\n\r\n#smart-ai-tools-studio .tab-btn {\r\n  min-height: 42px;\r\n  white-space: nowrap;\r\n  flex: 0 0 auto;\r\n}\r\n\r\n#smart-ai-tools-studio .category-tabs {\r\n  overflow-x: auto;\r\n  justify-content: flex-start;\r\n  padding: 6px 2px 12px;\r\n  scrollbar-width: thin;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-results {\r\n  align-items: stretch;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card {\r\n  display: flex;\r\n  flex-direction: column;\r\n  min-width: 0;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-actions {\r\n  margin-top: auto;\r\n}\r\n\r\n@media (max-width: 1000px) {\r\n  #smart-ai-tools-studio .requirement-form-grid {\r\n    grid-template-columns: 1fr 1fr;\r\n  }\r\n}\r\n\r\n@media (max-width: 700px) {\r\n  #smart-ai-tools-studio .requirement-form-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-launch-btn {\r\n    width: 100%;\r\n    min-width: 0;\r\n    font-size: 15px;\r\n    padding: 14px 18px;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-actions {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-results {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  #smart-ai-tools-studio .category-tabs {\r\n    flex-wrap: nowrap;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Finder Mode: Hide Tool Directory and Website Images ===== *\/\r\n#smart-ai-tools-studio .directory-browse-section {\r\n  display: block;\r\n}\r\n\r\n#smart-ai-tools-studio.finder-mode .directory-browse-section {\r\n  display: none !important;\r\n}\r\n\r\n#smart-ai-tools-studio.finder-mode .tools-grid,\r\n#smart-ai-tools-studio.finder-mode .tool-card,\r\n#smart-ai-tools-studio.finder-mode .preview-box,\r\n#smart-ai-tools-studio.finder-mode .preview-box img,\r\n#smart-ai-tools-studio.finder-mode .category-tabs,\r\n#smart-ai-tools-studio.finder-mode .section-title,\r\n#smart-ai-tools-studio.finder-mode .search-box {\r\n  display: none !important;\r\n}\r\n\r\n#smart-ai-tools-studio.finder-mode .finder-launch-area {\r\n  margin-bottom: 18px;\r\n}\r\n\r\n#smart-ai-tools-studio.finder-mode .requirement-finder {\r\n  display: block;\r\n}\r\n\r\n\r\n\/* ===== Final Button Sizing and Alignment Fix ===== *\/\r\n\r\n\/* Category buttons: size exactly to text + count *\/\r\n#smart-ai-tools-studio .category-tabs {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  justify-content: flex-start;\r\n  align-items: center;\r\n  gap: 12px;\r\n  overflow: visible;\r\n}\r\n\r\n#smart-ai-tools-studio .tab-btn {\r\n  width: auto !important;\r\n  min-width: max-content !important;\r\n  max-width: none !important;\r\n  flex: 0 0 auto !important;\r\n  display: inline-flex !important;\r\n  align-items: center;\r\n  justify-content: center;\r\n  gap: 8px;\r\n  padding: 11px 14px !important;\r\n  min-height: 44px;\r\n  line-height: 1.2;\r\n  white-space: nowrap !important;\r\n  overflow: visible !important;\r\n}\r\n\r\n#smart-ai-tools-studio .tab-btn span {\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  min-width: max-content;\r\n  flex: 0 0 auto;\r\n  padding: 4px 8px;\r\n  line-height: 1;\r\n  white-space: nowrap;\r\n  overflow: visible;\r\n}\r\n\r\n\/* Finder and action buttons should fit their text *\/\r\n#smart-ai-tools-studio .finder-launch-btn,\r\n#smart-ai-tools-studio .finder-btn,\r\n#smart-ai-tools-studio .finder-action-btn {\r\n  width: auto;\r\n  min-width: max-content;\r\n  max-width: 100%;\r\n  padding-left: 18px;\r\n  padding-right: 18px;\r\n}\r\n\r\n\/* Keep form button properly aligned *\/\r\n#smart-ai-tools-studio .requirement-form-grid .finder-btn {\r\n  width: 100%;\r\n  min-width: 0;\r\n}\r\n\r\n\/* Tool card button centered *\/\r\n#smart-ai-tools-studio .tool-content {\r\n  display: flex;\r\n  flex-direction: column;\r\n  height: 100%;\r\n}\r\n\r\n#smart-ai-tools-studio .tool-card {\r\n  display: flex;\r\n  flex-direction: column;\r\n}\r\n\r\n#smart-ai-tools-studio .open-btn {\r\n  display: inline-flex !important;\r\n  align-items: center;\r\n  justify-content: center;\r\n  text-align: center;\r\n  width: 100%;\r\n  min-height: 42px;\r\n  margin-top: auto;\r\n  padding: 10px 16px;\r\n  line-height: 1.2;\r\n  white-space: normal;\r\n  border-radius: 50px;\r\n}\r\n\r\n\/* Selected tool header buttons *\/\r\n#smart-ai-tools-studio .selected-tool-head .open-btn {\r\n  width: auto;\r\n  min-width: max-content;\r\n  margin-top: 0;\r\n}\r\n\r\n\/* Ensure metadata does not push button out *\/\r\n#smart-ai-tools-studio .tool-meta {\r\n  width: 100%;\r\n}\r\n\r\n\/* Mobile layout *\/\r\n@media (max-width: 700px) {\r\n  #smart-ai-tools-studio .category-tabs {\r\n    flex-wrap: wrap;\r\n    overflow: visible;\r\n    gap: 9px;\r\n  }\r\n\r\n  #smart-ai-tools-studio .tab-btn {\r\n    width: auto !important;\r\n    min-width: max-content !important;\r\n    font-size: 14px;\r\n    padding: 10px 12px !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-launch-btn {\r\n    width: 100%;\r\n    min-width: 0;\r\n  }\r\n\r\n  #smart-ai-tools-studio .selected-tool-head .open-btn {\r\n    width: 100%;\r\n    min-width: 0;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Resume-Based AI Tool Advisor ===== *\/\r\n#smart-ai-tools-studio .top-right-actions {\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 12px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-launch-btn {\r\n  border: none;\r\n  border-radius: 50px;\r\n  min-height: 44px;\r\n  padding: 11px 20px;\r\n  font-size: 15px;\r\n  font-weight: 900;\r\n  color: #ffffff;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n  cursor: pointer;\r\n  box-shadow: 0 10px 28px var(--shadow);\r\n  transition: 0.25s ease;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-launch-btn:hover {\r\n  transform: translateY(-2px);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen {\r\n  position: fixed;\r\n  inset: 0;\r\n  z-index: 999999;\r\n  display: none;\r\n  overflow-y: auto;\r\n  background:\r\n    radial-gradient(circle at top left, rgba(91,99,255,0.24), transparent 32%),\r\n    radial-gradient(circle at bottom right, rgba(0,214,201,0.18), transparent 34%),\r\n    var(--bg-main);\r\n  color: var(--text-main);\r\n  padding: 26px 18px 50px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen.open {\r\n  display: block;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-shell {\r\n  width: min(1180px, 100%);\r\n  margin: auto;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-header {\r\n  display: flex;\r\n  justify-content: space-between;\r\n  gap: 24px;\r\n  align-items: flex-start;\r\n  margin-bottom: 24px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-kicker {\r\n  color: var(--accent-2);\r\n  font-weight: 900;\r\n  margin-bottom: 8px;\r\n  text-transform: uppercase;\r\n  letter-spacing: 0.8px;\r\n  font-size: 12px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-header h2 {\r\n  font-size: clamp(32px, 5vw, 58px);\r\n  line-height: 1.08;\r\n  margin-bottom: 12px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-header p {\r\n  color: var(--text-soft);\r\n  max-width: 850px;\r\n  line-height: 1.65;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-close-btn {\r\n  width: 46px;\r\n  height: 46px;\r\n  flex: 0 0 46px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 50%;\r\n  background: var(--bg-card);\r\n  color: var(--text-main);\r\n  cursor: pointer;\r\n  font-size: 20px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-upload-card {\r\n  border: 1px solid var(--border);\r\n  border-radius: 26px;\r\n  padding: 24px;\r\n  background: var(--bg-card);\r\n  box-shadow: 0 18px 45px var(--shadow);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-drop-zone {\r\n  border: 2px dashed var(--border);\r\n  border-radius: 22px;\r\n  padding: 34px 20px;\r\n  text-align: center;\r\n  transition: 0.25s ease;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-drop-zone.dragover {\r\n  border-color: var(--accent-2);\r\n  background: rgba(0,214,201,0.08);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-upload-icon {\r\n  font-size: 54px;\r\n  margin-bottom: 10px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-drop-zone h3 {\r\n  font-size: 24px;\r\n  margin-bottom: 8px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-drop-zone p {\r\n  color: var(--text-soft);\r\n  margin-bottom: 18px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-primary-btn,\r\n#smart-ai-tools-studio .resume-secondary-btn {\r\n  border: none;\r\n  border-radius: 50px;\r\n  min-height: 46px;\r\n  padding: 12px 22px;\r\n  font-weight: 900;\r\n  cursor: pointer;\r\n  transition: 0.25s ease;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-primary-btn {\r\n  color: #ffffff;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n}\r\n\r\n#smart-ai-tools-studio .resume-primary-btn:disabled {\r\n  opacity: 0.45;\r\n  cursor: not-allowed;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-secondary-btn {\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-name {\r\n  margin-top: 14px;\r\n  color: var(--text-soft);\r\n  font-size: 13px;\r\n  word-break: break-word;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-analysis-actions {\r\n  display: flex;\r\n  justify-content: center;\r\n  gap: 12px;\r\n  margin-top: 18px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-progress-wrap {\r\n  margin-top: 18px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-progress-bar {\r\n  height: 10px;\r\n  border-radius: 50px;\r\n  overflow: hidden;\r\n  background: var(--bg-main);\r\n  border: 1px solid var(--border);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-progress-fill {\r\n  width: 0%;\r\n  height: 100%;\r\n  background: linear-gradient(90deg, var(--accent-1), var(--accent-2));\r\n  transition: width 0.25s ease;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-upload-help {\r\n  margin-top: 8px;\r\n  text-align: center;\r\n  color: var(--text-soft);\r\n  font-size: 12px;\r\n  line-height: 1.45;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-progress-text {\r\n  margin-top: 8px;\r\n  text-align: center;\r\n  color: var(--text-soft);\r\n  font-size: 13px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-results {\r\n  margin-top: 24px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-empty-state {\r\n  text-align: center;\r\n  padding: 42px 20px;\r\n  border: 1px dashed var(--border);\r\n  border-radius: 24px;\r\n  color: var(--text-soft);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-empty-state > div {\r\n  font-size: 52px;\r\n  margin-bottom: 12px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-grid,\r\n#smart-ai-tools-studio .resume-tools-grid {\r\n  display: grid;\r\n  gap: 18px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-grid {\r\n  grid-template-columns: repeat(4, 1fr);\r\n  margin-bottom: 20px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-card,\r\n#smart-ai-tools-studio .resume-tool-recommendation {\r\n  border: 1px solid var(--border);\r\n  border-radius: 22px;\r\n  background: var(--bg-card);\r\n  box-shadow: 0 12px 32px var(--shadow);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-card {\r\n  padding: 20px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-card span {\r\n  display: block;\r\n  color: var(--text-soft);\r\n  font-size: 12px;\r\n  margin-bottom: 7px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-summary-card strong {\r\n  font-size: 21px;\r\n  line-height: 1.25;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-analysis-section {\r\n  margin-top: 22px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-analysis-section h3 {\r\n  font-size: 26px;\r\n  margin-bottom: 14px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-skill-tags {\r\n  display: flex;\r\n  flex-wrap: wrap;\r\n  gap: 9px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-skill-tag {\r\n  padding: 8px 12px;\r\n  border-radius: 50px;\r\n  border: 1px solid var(--border);\r\n  background: var(--bg-card);\r\n  color: var(--text-main);\r\n  font-weight: 700;\r\n  font-size: 13px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tools-grid {\r\n  grid-template-columns: repeat(3, 1fr);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-recommendation {\r\n  padding: 20px;\r\n  display: flex;\r\n  flex-direction: column;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-head {\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 11px;\r\n  margin-bottom: 12px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-icon {\r\n  width: 46px;\r\n  height: 46px;\r\n  border-radius: 14px;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n  font-size: 22px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-head h4 {\r\n  font-size: 20px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-recommendation p {\r\n  color: var(--text-soft);\r\n  line-height: 1.55;\r\n  font-size: 14px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-benefit-list {\r\n  display: flex;\r\n  flex-direction: column;\r\n  gap: 8px;\r\n  margin: 14px 0 18px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-benefit-item {\r\n  display: flex;\r\n  gap: 8px;\r\n  color: var(--text-soft);\r\n  line-height: 1.5;\r\n  font-size: 13px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-open {\r\n  margin-top: auto;\r\n  text-decoration: none;\r\n  text-align: center;\r\n  border-radius: 50px;\r\n  padding: 10px 14px;\r\n  font-weight: 900;\r\n  background: var(--button-bg);\r\n  color: var(--button-text);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-disclaimer {\r\n  margin-top: 20px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 18px;\r\n  padding: 16px;\r\n  color: var(--text-soft);\r\n  line-height: 1.55;\r\n  font-size: 13px;\r\n}\r\n\r\n@media (max-width: 900px) {\r\n  #smart-ai-tools-studio .resume-summary-grid {\r\n    grid-template-columns: repeat(2, 1fr);\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-tools-grid {\r\n    grid-template-columns: repeat(2, 1fr);\r\n  }\r\n}\r\n\r\n@media (max-width: 620px) {\r\n  #smart-ai-tools-studio .top-bar {\r\n    align-items: flex-start;\r\n  }\r\n\r\n  #smart-ai-tools-studio .top-right-actions {\r\n    gap: 8px;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-ai-launch-btn {\r\n    padding: 10px 14px;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-ai-header {\r\n    flex-direction: column-reverse;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-ai-close-btn {\r\n    align-self: flex-end;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-summary-grid,\r\n  #smart-ai-tools-studio .resume-tools-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-analysis-actions {\r\n    flex-direction: column;\r\n  }\r\n\r\n  #smart-ai-tools-studio .resume-analysis-actions button {\r\n    width: 100%;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Reliable AI Tool Button Click Fix ===== *\/\r\n#smart-ai-tools-studio .top-bar,\r\n#smart-ai-tools-studio .top-right-actions,\r\n#smart-ai-tools-studio .resume-ai-launch-btn {\r\n  position: relative !important;\r\n  z-index: 999999 !important;\r\n  pointer-events: auto !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-launch-btn {\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  width: auto !important;\r\n  min-width: 132px !important;\r\n  min-height: 50px !important;\r\n  padding: 13px 26px !important;\r\n  border: none !important;\r\n  border-radius: 50px !important;\r\n  cursor: pointer !important;\r\n  user-select: none !important;\r\n  touch-action: manipulation !important;\r\n  line-height: 1.2 !important;\r\n  white-space: nowrap !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-launch-btn * {\r\n  pointer-events: none !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen {\r\n  pointer-events: auto !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen.open {\r\n  display: block !important;\r\n  visibility: visible !important;\r\n  opacity: 1 !important;\r\n}\r\n\r\n\r\n\/* ===== Final Resume Advisor Opening Fix ===== *\/\r\n#smart-ai-tools-studio .resume-ai-screen {\r\n  display: none !important;\r\n  visibility: hidden !important;\r\n  opacity: 0 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen.open {\r\n  display: block !important;\r\n  visibility: visible !important;\r\n  opacity: 1 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-launch-btn {\r\n  pointer-events: auto !important;\r\n  cursor: pointer !important;\r\n}\r\n\r\n\r\n\/* ===== WordPress-Safe Native PDF Upload Fix ===== *\/\r\n#smart-ai-tools-studio .resume-native-file-input {\r\n  position: absolute !important;\r\n  width: 1px !important;\r\n  height: 1px !important;\r\n  padding: 0 !important;\r\n  margin: -1px !important;\r\n  overflow: hidden !important;\r\n  clip: rect(0, 0, 0, 0) !important;\r\n  white-space: nowrap !important;\r\n  border: 0 !important;\r\n  opacity: 0 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-label {\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  cursor: pointer !important;\r\n  pointer-events: auto !important;\r\n  user-select: none !important;\r\n  touch-action: manipulation !important;\r\n  text-decoration: none !important;\r\n  min-width: 220px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-label:hover {\r\n  transform: translateY(-2px);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-drop-zone,\r\n#smart-ai-tools-studio .resume-drop-zone * {\r\n  pointer-events: auto;\r\n}\r\n\r\n\r\n\/* ===== Direct Native PDF Input Fix ===== *\/\r\n#smart-ai-tools-studio .resume-file-label {\r\n  position: relative !important;\r\n  overflow: hidden !important;\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  min-width: 230px !important;\r\n  cursor: pointer !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-label .resume-native-file-input {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  width: 100% !important;\r\n  height: 100% !important;\r\n  opacity: 0.001 !important;\r\n  cursor: pointer !important;\r\n  z-index: 5 !important;\r\n  padding: 0 !important;\r\n  margin: 0 !important;\r\n  clip: auto !important;\r\n  overflow: visible !important;\r\n  white-space: normal !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-status {\r\n  margin: 15px auto 0;\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  gap: 9px;\r\n  min-height: 24px;\r\n  color: var(--text-soft);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-status-dot {\r\n  width: 10px;\r\n  height: 10px;\r\n  border-radius: 50%;\r\n  background: #6b7280;\r\n  flex: 0 0 10px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-status.ready .resume-status-dot {\r\n  background: #22c55e;\r\n  box-shadow: 0 0 0 5px rgba(34,197,94,0.12);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-status.error .resume-status-dot {\r\n  background: #ef4444;\r\n  box-shadow: 0 0 0 5px rgba(239,68,68,0.12);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-file-name {\r\n  margin-top: 0 !important;\r\n  word-break: break-word;\r\n}\r\n\r\n\r\n\/* ===== Recommendation Cards and Clickable Link Fix ===== *\/\r\n#smart-ai-tools-studio .resume-tools-grid {\r\n  display: grid !important;\r\n  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\r\n  gap: 18px !important;\r\n  width: 100% !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-recommendation {\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  min-height: 330px !important;\r\n  visibility: visible !important;\r\n  opacity: 1 !important;\r\n  overflow: visible !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-open {\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  width: 100% !important;\r\n  min-height: 44px !important;\r\n  margin-top: auto !important;\r\n  padding: 11px 16px !important;\r\n  border-radius: 50px !important;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2)) !important;\r\n  color: #ffffff !important;\r\n  text-decoration: none !important;\r\n  text-align: center !important;\r\n  font-weight: 900 !important;\r\n  cursor: pointer !important;\r\n  pointer-events: auto !important;\r\n  position: relative !important;\r\n  z-index: 20 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-tool-open:hover {\r\n  transform: translateY(-2px);\r\n  box-shadow: 0 10px 24px var(--shadow);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-analysis-warning {\r\n  margin: 0 0 18px;\r\n  padding: 14px 16px;\r\n  border: 1px solid #f59e0b;\r\n  border-radius: 16px;\r\n  color: var(--text-main);\r\n  background: rgba(245,158,11,0.10);\r\n  line-height: 1.55;\r\n}\r\n\r\n@media (max-width: 900px) {\r\n  #smart-ai-tools-studio .resume-tools-grid {\r\n    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;\r\n  }\r\n}\r\n\r\n@media (max-width: 620px) {\r\n  #smart-ai-tools-studio .resume-tools-grid {\r\n    grid-template-columns: 1fr !important;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Resume Topic Mapping and URL Display ===== *\/\r\n#smart-ai-tools-studio .resume-topic-box {\r\n  margin: 14px 0;\r\n  padding: 14px;\r\n  border: 1px solid var(--border);\r\n  border-radius: 16px;\r\n  background: rgba(91,99,255,0.08);\r\n}\r\n\r\n#smart-ai-tools-studio .resume-topic-box span {\r\n  display: block;\r\n  margin-bottom: 6px;\r\n  color: var(--accent-2);\r\n  font-size: 11px;\r\n  font-weight: 900;\r\n  text-transform: uppercase;\r\n  letter-spacing: 0.5px;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-topic-box strong {\r\n  display: block;\r\n  color: var(--text-main);\r\n  font-size: 14px;\r\n  line-height: 1.5;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-url-label {\r\n  margin: 5px 0 7px;\r\n  color: var(--text-soft);\r\n  font-size: 11px;\r\n  font-weight: 800;\r\n  text-transform: uppercase;\r\n  letter-spacing: 0.4px;\r\n}\r\n\r\n\r\n\/* ===== Close Button and Main Page Restore Fix ===== *\/\r\n#smart-ai-tools-studio .resume-ai-close-btn {\r\n  position: relative !important;\r\n  z-index: 1000001 !important;\r\n  pointer-events: auto !important;\r\n  cursor: pointer !important;\r\n  touch-action: manipulation !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-header {\r\n  position: relative !important;\r\n  z-index: 1000000 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .resume-ai-screen.open {\r\n  display: block !important;\r\n  visibility: visible !important;\r\n  opacity: 1 !important;\r\n}\r\n\r\n\r\n\/* ===== Finder Layout, Skill Tabs and Center Alignment Update ===== *\/\r\n#smart-ai-tools-studio .requirement-finder {\r\n  width: min(980px, calc(100% - 24px)) !important;\r\n  margin: 34px auto 42px !important;\r\n  padding: 34px !important;\r\n  text-align: center !important;\r\n}\r\n\r\n#smart-ai-tools-studio .requirement-finder-heading {\r\n  text-align: center !important;\r\n}\r\n\r\n#smart-ai-tools-studio .requirement-finder-heading p {\r\n  text-align: center !important;\r\n  margin-left: auto !important;\r\n  margin-right: auto !important;\r\n}\r\n\r\n#smart-ai-tools-studio .requirement-form-grid {\r\n  grid-template-columns: minmax(320px, 2fr) minmax(230px, 1fr) minmax(190px, auto) !important;\r\n  max-width: 900px !important;\r\n  margin: 0 auto !important;\r\n  gap: 18px !important;\r\n  align-items: end !important;\r\n}\r\n\r\n#smart-ai-tools-studio .form-field {\r\n  text-align: left !important;\r\n}\r\n\r\n#smart-ai-tools-studio .form-field label {\r\n  font-size: 15px !important;\r\n  margin-bottom: 10px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .form-field input,\r\n#smart-ai-tools-studio .form-field select {\r\n  min-height: 56px !important;\r\n  padding: 14px 18px !important;\r\n  font-size: 17px !important;\r\n  border-radius: 18px !important;\r\n}\r\n\r\n#smart-ai-tools-studio #requirementLevel {\r\n  font-weight: 800 !important;\r\n  cursor: pointer !important;\r\n}\r\n\r\n#smart-ai-tools-studio #findRequirementBtn {\r\n  min-height: 56px !important;\r\n  font-size: 16px !important;\r\n  padding: 14px 26px !important;\r\n  border-radius: 18px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .directory-search-description {\r\n  max-width: 950px !important;\r\n  margin: 0 auto !important;\r\n  text-align: center !important;\r\n  line-height: 1.7 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .ai-header p {\r\n  text-align: center !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-results {\r\n  max-width: 980px !important;\r\n  margin-left: auto !important;\r\n  margin-right: auto !important;\r\n  text-align: left !important;\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-panel {\r\n  text-align: left !important;\r\n}\r\n\r\n@media (max-width: 900px) {\r\n  #smart-ai-tools-studio .requirement-form-grid {\r\n    grid-template-columns: 1fr !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .requirement-finder {\r\n    width: min(100%, calc(100% - 16px)) !important;\r\n    padding: 24px 18px !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio #findRequirementBtn {\r\n    width: 100% !important;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Finder Recommendation Card Layout and Click Behaviour ===== *\/\r\n\r\n#smart-ai-tools-studio .finder-results {\r\n  display: grid !important;\r\n  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;\r\n  gap: 20px !important;\r\n  align-items: stretch !important;\r\n  width: 100% !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card {\r\n  position: relative !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  width: 100% !important;\r\n  min-width: 0 !important;\r\n  min-height: 360px !important;\r\n  padding: 20px !important;\r\n  overflow: hidden !important;\r\n  cursor: pointer !important;\r\n  box-sizing: border-box !important;\r\n  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card:hover,\r\n#smart-ai-tools-studio .finder-result-card:focus {\r\n  transform: translateY(-4px) !important;\r\n  border-color: var(--accent-2) !important;\r\n  box-shadow: 0 16px 36px var(--shadow) !important;\r\n  outline: none !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card.selected {\r\n  border-color: var(--accent-2) !important;\r\n  box-shadow:\r\n    0 0 0 3px rgba(0,214,201,0.15),\r\n    0 16px 36px var(--shadow) !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-top {\r\n  display: grid !important;\r\n  grid-template-columns: minmax(0, 1fr) auto !important;\r\n  align-items: start !important;\r\n  gap: 12px !important;\r\n  width: 100% !important;\r\n  margin-bottom: 14px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-name {\r\n  display: grid !important;\r\n  grid-template-columns: 48px minmax(0, 1fr) !important;\r\n  align-items: center !important;\r\n  gap: 12px !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-name > div {\r\n  min-width: 0 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-name strong {\r\n  display: block !important;\r\n  width: 100% !important;\r\n  overflow-wrap: anywhere !important;\r\n  word-break: normal !important;\r\n  line-height: 1.22 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .match-score {\r\n  position: static !important;\r\n  align-self: start !important;\r\n  max-width: 100% !important;\r\n  white-space: nowrap !important;\r\n  flex: 0 0 auto !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card > p {\r\n  width: 100% !important;\r\n  min-height: 88px !important;\r\n  margin: 0 0 14px !important;\r\n  overflow-wrap: anywhere !important;\r\n  word-break: normal !important;\r\n  line-height: 1.55 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-tags {\r\n  display: flex !important;\r\n  flex-wrap: wrap !important;\r\n  align-items: center !important;\r\n  gap: 7px !important;\r\n  width: 100% !important;\r\n  margin: 0 0 18px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-tag {\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  max-width: 100% !important;\r\n  padding: 6px 9px !important;\r\n  overflow-wrap: anywhere !important;\r\n  white-space: normal !important;\r\n  line-height: 1.15 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-actions {\r\n  display: grid !important;\r\n  grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.85fr) !important;\r\n  gap: 10px !important;\r\n  width: 100% !important;\r\n  margin-top: auto !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-action-btn {\r\n  width: 100% !important;\r\n  min-width: 0 !important;\r\n  min-height: 48px !important;\r\n  padding: 11px 12px !important;\r\n  display: inline-flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  text-align: center !important;\r\n  white-space: normal !important;\r\n  overflow-wrap: anywhere !important;\r\n  line-height: 1.2 !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-panel {\r\n  width: min(980px, 100%) !important;\r\n  margin: 30px auto 0 !important;\r\n  scroll-margin-top: 24px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-grid {\r\n  align-items: stretch !important;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-box {\r\n  height: 100% !important;\r\n}\r\n\r\n@media (max-width: 1000px) {\r\n  #smart-ai-tools-studio .finder-results {\r\n    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;\r\n  }\r\n}\r\n\r\n@media (max-width: 680px) {\r\n  #smart-ai-tools-studio .finder-results {\r\n    grid-template-columns: 1fr !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-result-card {\r\n    min-height: 0 !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-result-card > p {\r\n    min-height: 0 !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-actions {\r\n    grid-template-columns: 1fr !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .finder-result-top {\r\n    grid-template-columns: 1fr !important;\r\n  }\r\n\r\n  #smart-ai-tools-studio .match-score {\r\n    justify-self: start !important;\r\n  }\r\n}\r\n\r\n\r\n\/* ===== Requirement-Based Recommendation and Auto-Selected Details ===== *\/\r\n#smart-ai-tools-studio .selected-tool-panel.show {\r\n  display: block !important;\r\n  margin-top: 28px !important;\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-summary {\r\n  margin: 0 0 18px !important;\r\n  padding: 14px 16px !important;\r\n  border: 1px solid var(--border) !important;\r\n  border-radius: 16px !important;\r\n  background: rgba(91,99,255,0.08) !important;\r\n  color: var(--text-soft) !important;\r\n  line-height: 1.55 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-summary strong {\r\n  color: var(--text-main) !important;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card.selected::after {\r\n  content: \"Selected\";\r\n  position: absolute;\r\n  top: 12px;\r\n  right: 12px;\r\n  padding: 5px 9px;\r\n  border-radius: 50px;\r\n  background: var(--accent-2);\r\n  color: #052f2d;\r\n  font-size: 10px;\r\n  font-weight: 900;\r\n  z-index: 4;\r\n}\r\n\r\n#smart-ai-tools-studio .finder-result-card.selected .match-score {\r\n  margin-right: 62px !important;\r\n}\r\n\r\n\r\n\/* ===== Final Pros, Cons and Demo Interaction Fix ===== *\/\r\n#smart-ai-tools-studio .selected-tool-panel {\r\n  display: none;\r\n  width: min(980px, 100%);\r\n  margin: 30px auto 0;\r\n  padding-top: 28px;\r\n  border-top: 1px solid var(--border);\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-panel.show {\r\n  display: block !important;\r\n  visibility: visible !important;\r\n  opacity: 1 !important;\r\n}\r\n\r\n#smart-ai-tools-studio .selected-tool-detail-label {\r\n  display: inline-flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  margin-bottom: 14px;\r\n  padding: 7px 12px;\r\n  border-radius: 50px;\r\n  background: linear-gradient(135deg, var(--accent-1), var(--accent-2));\r\n  color: #ffffff;\r\n  font-size: 12px;\r\n  font-weight: 900;\r\n  text-transform: uppercase;\r\n  letter-spacing: 0.5px;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-grid {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr;\r\n  gap: 18px;\r\n  align-items: stretch;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-box {\r\n  display: flex;\r\n  flex-direction: column;\r\n  min-height: 240px;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-list {\r\n  display: flex;\r\n  flex-direction: column;\r\n  gap: 11px;\r\n}\r\n\r\n#smart-ai-tools-studio .analysis-item {\r\n  align-items: flex-start;\r\n}\r\n\r\n#smart-ai-tools-studio .demo-panel {\r\n  margin-top: 20px;\r\n}\r\n\r\n#smart-ai-tools-studio .select-tool-btn {\r\n  cursor: pointer !important;\r\n  pointer-events: auto !important;\r\n  position: relative !important;\r\n  z-index: 10 !important;\r\n}\r\n\r\n@media (max-width: 700px) {\r\n  #smart-ai-tools-studio .analysis-grid {\r\n    grid-template-columns: 1fr;\r\n  }\r\n}\r\n\r\n<\/style>\r\n\r\n<script>\r\n(function() {\r\n\r\nconst rawData = {\r\n\"Tools\": [\r\n\"ChatGPT|https:\/\/chatgpt.com\/|Freemium|180000000|\ud83d\udcac|AI assistant for writing coding research analysis chatbot productivity content generation office work.\",\r\n\"Google Gemini|https:\/\/gemini.google.com\/|Freemium|120000000|\u2728|Google AI assistant for writing research image analysis search productivity coding and study.\",\r\n\"Microsoft Copilot|https:\/\/copilot.microsoft.com\/|Freemium|100000000|\ud83e\ude9f|AI assistant for Microsoft 365 Excel Word PowerPoint email office work and productivity.\",\r\n\"Canva AI|https:\/\/www.canva.com\/|Freemium|90000000|\ud83c\udfa8|Create images graphics presentations social media posters videos thumbnails and designs with AI.\",\r\n\"Grammarly|https:\/\/www.grammarly.com\/|Freemium|70000000|\u270d\ufe0f|AI writing assistant for grammar email content editing tone correction and clarity.\",\r\n\"Perplexity|https:\/\/www.perplexity.ai\/|Freemium|50000000|\ud83d\udd0e|AI search engine for research deep research study answers citation and web search.\",\r\n\"Claude|https:\/\/claude.ai\/|Freemium|40000000|\ud83e\udde0|AI assistant for documents long writing research analysis coding and business tasks.\",\r\n\"QuillBot|https:\/\/quillbot.com\/|Freemium|35000000|\ud83d\udcdd|Paraphrasing grammar rewriting summarizing writing improvement and content editing tool.\",\r\n\"Notion AI|https:\/\/www.notion.so\/product\/ai|Free Trial|30000000|\ud83d\udcd2|AI writing note taking task management knowledge base and productivity assistant.\",\r\n\"DeepL|https:\/\/www.deepl.com\/|Freemium|25000000|\ud83c\udf0d|AI translation writing improvement grammar and language tool.\",\r\n\"NotebookLM|https:\/\/notebooklm.google.com\/|100% Free|20000000|\ud83d\udcd8|AI research study assistant for PDFs notes documents websites YouTube summarization and Q&A.\",\r\n\"Gamma|https:\/\/gamma.app\/|Freemium|18000000|\ud83d\udcca|Create AI presentations documents webpages pitch decks and landing pages quickly.\",\r\n\"Poe|https:\/\/poe.com\/|Freemium|16000000|\ud83e\udd16|Access multiple AI chatbots AI models writing coding and research tools.\",\r\n\"ElevenLabs|https:\/\/elevenlabs.io\/|Freemium|15000000|\ud83c\udf99\ufe0f|AI voice generation text to speech dubbing audio narration and voice cloning.\",\r\n\"Runway|https:\/\/runwayml.com\/|Freemium|14000000|\ud83c\udfac|AI video generation video editing background removal image to video and creative editing.\",\r\n\"Midjourney|https:\/\/www.midjourney.com\/|Free Trial|13000000|\ud83d\uddbc\ufe0f|AI image generation art design concept art posters illustrations and creative visuals.\",\r\n\"Leonardo AI|https:\/\/leonardo.ai\/|Freemium|12000000|\ud83c\udfad|AI image generation game assets design art graphics and creative visuals.\",\r\n\"Zapier AI|https:\/\/zapier.com\/ai|Freemium|10000000|\u2699\ufe0f|Automate workflows connect apps email CRM forms and business process automation.\",\r\n\"Beautiful.ai|https:\/\/www.beautiful.ai\/|Free Trial|8000000|\ud83d\udcc8|Create professional AI presentations slides pitch decks and business reports.\",\r\n\"Copy.ai|https:\/\/www.copy.ai\/|Freemium|7000000|\ud83d\udce2|AI writing tool for marketing content social media email sales and business copy.\"\r\n],\r\n\r\n\"Mini tools\": [\r\n\"TinyWow|https:\/\/tinywow.com\/|100% Free|30000000|\ud83e\uddf0|Free mini tools for PDF image writing file conversion editing and online productivity.\",\r\n\"Remove.bg|https:\/\/www.remove.bg\/|Freemium|28000000|\ud83d\uddbc\ufe0f|Remove image background automatically for photos graphics design and ecommerce.\",\r\n\"PDF24 Tools|https:\/\/tools.pdf24.org\/|100% Free|26000000|\ud83d\udcc4|Free PDF tools merge split compress convert edit OCR and document utility.\",\r\n\"ILovePDF|https:\/\/www.ilovepdf.com\/|Freemium|25000000|\ud83d\udcd1|PDF merge split compress convert edit sign and document management tools.\",\r\n\"Smallpdf|https:\/\/smallpdf.com\/|Freemium|22000000|\ud83d\udcd5|PDF compression conversion editing eSign OCR and office document tools.\",\r\n\"Cleanup Pictures|https:\/\/cleanup.pictures\/|Freemium|15000000|\ud83e\uddfd|Remove unwanted objects people text and background from images using AI.\",\r\n\"Magic Eraser|https:\/\/www.magiceraser.io\/|Freemium|12000000|\ud83e\ude84|Erase objects clean photos edit images and remove background using AI.\",\r\n\"OCR Space|https:\/\/ocr.space\/|Freemium|9000000|\ud83d\udd24|Extract text from images scanned documents and PDF using OCR.\",\r\n\"WatermarkRemover|https:\/\/www.watermarkremover.io\/|Freemium|8500000|\ud83d\udca7|Remove watermarks from photos graphics and images using AI.\",\r\n\"ImgUpscaler|https:\/\/imgupscaler.com\/|Freemium|8000000|\ud83d\udd0d|Upscale enhance sharpen and improve image quality with AI.\",\r\n\"Photopea|https:\/\/www.photopea.com\/|100% Free|7500000|\ud83c\udfa8|Free online image editor photo editing design graphics and PSD editing.\",\r\n\"Compress JPEG|https:\/\/compressjpeg.com\/|100% Free|7000000|\ud83d\udddc\ufe0f|Compress JPEG PNG images and reduce file size online.\",\r\n\"Online Convert|https:\/\/www.online-convert.com\/|Freemium|6500000|\ud83d\udd01|Convert documents images audio videos ebooks and files online.\",\r\n\"Convertio|https:\/\/convertio.co\/|Freemium|6000000|\ud83d\udd04|Online file converter for images documents videos audio and PDF.\",\r\n\"EZGIF|https:\/\/ezgif.com\/|100% Free|5500000|\ud83c\udf9e\ufe0f|Create edit convert compress GIF video and image files.\",\r\n\"Squoosh|https:\/\/squoosh.app\/|100% Free|5000000|\ud83d\uddbc\ufe0f|Compress resize and optimize images directly in browser.\",\r\n\"Character Counter|https:\/\/charactercounter.com\/|100% Free|4500000|\ud83d\udd22|Count characters words sentences paragraphs and text length.\",\r\n\"WordCounter|https:\/\/wordcounter.net\/|100% Free|4200000|\ud83e\uddee|Online word counter character counter writing and text analysis.\",\r\n\"Diffchecker|https:\/\/www.diffchecker.com\/|Freemium|4000000|\ud83d\udd0e|Compare text images PDFs files code and document differences.\",\r\n\"QR Code Monkey|https:\/\/www.qrcode-monkey.com\/|100% Free|3500000|\ud83d\udd33|Create custom QR codes for links business and marketing.\"\r\n],\r\n\r\n\"Indian AI\": [\r\n\"Sarvam AI|https:\/\/www.sarvam.ai\/|Freemium|5000000|\ud83c\uddee\ud83c\uddf3|Indian language AI speech translation voice and multilingual AI models.\",\r\n\"Krutrim|https:\/\/www.olakrutrim.com\/|Freemium|4500000|\ud83d\ude80|Indian AI assistant language model chatbot and productivity platform.\",\r\n\"Hanooman|https:\/\/www.hanooman.ai\/|Freemium|3000000|\ud83d\udde3\ufe0f|Multilingual Indian AI assistant for Indian languages and productivity.\",\r\n\"Yellow.ai|https:\/\/yellow.ai\/|Free Trial|2500000|\ud83d\udcbc|Conversational AI chatbot customer support automation and business assistant.\",\r\n\"CoRover|https:\/\/corover.ai\/|Free Trial|2000000|\ud83e\udd1d|Conversational AI chatbot virtual assistant customer support and automation.\",\r\n\"Gnani.ai|https:\/\/www.gnani.ai\/|Free Trial|1500000|\ud83c\udf99\ufe0f|Voice AI speech automation call center support and language technology.\",\r\n\"Niki.ai|https:\/\/niki.ai\/|Freemium|1200000|\ud83d\uded2|Conversational commerce AI assistant payments booking and shopping.\",\r\n\"KissanAI|https:\/\/kissan.ai\/|100% Free|1000000|\ud83c\udf3e|AI assistant for agriculture farming crop guidance and farmer support.\",\r\n\"BharatGPT|https:\/\/bharatgpt.co.in\/|Freemium|900000|\ud83d\udce2|Indian language AI chatbot enterprise assistant and multilingual AI.\",\r\n\"AskDISHA|https:\/\/www.irctc.co.in\/|100% Free|800000|\ud83d\ude86|AI chatbot assistant for railway booking support and passenger queries.\",\r\n\"Reverie Language Tech|https:\/\/reverieinc.com\/|Free Trial|700000|\ud83d\udd24|Indian language localization translation text speech and language AI.\",\r\n\"Skit AI|https:\/\/skit.ai\/|Free Trial|650000|\ud83d\udcde|Voice AI platform call automation customer support and contact center.\",\r\n\"Wysa|https:\/\/www.wysa.com\/|Freemium|600000|\ud83d\udc99|AI mental wellness chatbot self care stress anxiety and wellbeing support.\",\r\n\"Mad Street Den|https:\/\/www.madstreetden.com\/|Free Trial|550000|\ud83d\udecd\ufe0f|AI retail fashion visual intelligence ecommerce and product discovery.\",\r\n\"Qure.ai|https:\/\/qure.ai\/|Free Trial|500000|\ud83c\udfe5|AI healthcare medical imaging diagnostics radiology and clinical support.\",\r\n\"SigTuple|https:\/\/sigtuple.com\/|Free Trial|450000|\ud83e\uddea|AI healthcare diagnostics medical analysis and pathology automation.\",\r\n\"Uniphore|https:\/\/www.uniphore.com\/|Free Trial|400000|\ud83c\udfa7|Enterprise conversational AI customer service analytics and automation.\",\r\n\"Observe.AI|https:\/\/www.observe.ai\/|Free Trial|350000|\ud83d\udcde|AI contact center intelligence call analysis and customer support.\",\r\n\"Fractal AI|https:\/\/fractal.ai\/|Free Trial|300000|\ud83d\udcca|Enterprise AI data analytics decision intelligence and business automation.\",\r\n\"Staqu|https:\/\/www.staqu.com\/|Free Trial|250000|\ud83d\udc41\ufe0f|AI video analytics security surveillance and computer vision.\"\r\n],\r\n\r\n\"Companies\": [\r\n\"OpenAI|https:\/\/openai.com\/|Freemium|180000000|\ud83c\udfe2|AI company for chatbot models image generation voice coding and productivity.\",\r\n\"Google DeepMind|https:\/\/deepmind.google\/|Freemium|120000000|\ud83c\udf10|Advanced AI research models science reasoning robotics and intelligence.\",\r\n\"Microsoft AI|https:\/\/www.microsoft.com\/en-us\/ai|Freemium|100000000|\ud83e\ude9f|AI Copilot productivity office automation coding search and business tools.\",\r\n\"Meta AI|https:\/\/ai.meta.com\/|100% Free|90000000|\ud83d\udcf1|AI research open models image generation chatbot and social AI.\",\r\n\"Anthropic|https:\/\/www.anthropic.com\/|Freemium|40000000|\ud83e\udde0|AI company behind Claude for writing reasoning coding and analysis.\",\r\n\"Hugging Face|https:\/\/huggingface.co\/|Freemium|35000000|\ud83e\udd17|AI models datasets apps NLP image audio and machine learning community.\",\r\n\"Stability AI|https:\/\/stability.ai\/|Freemium|30000000|\ud83c\udfa8|AI image generation creative models art design and media.\",\r\n\"Mistral AI|https:\/\/mistral.ai\/|Freemium|25000000|\u26a1|Open and commercial AI models coding reasoning and chatbot applications.\",\r\n\"Runway|https:\/\/runwayml.com\/|Freemium|20000000|\ud83c\udfac|AI video generation editing creative tools and image to video.\",\r\n\"Cohere|https:\/\/cohere.com\/|Free Trial|18000000|\ud83d\udd17|Enterprise AI search generation chatbot language models and automation.\",\r\n\"Perplexity AI|https:\/\/www.perplexity.ai\/|Freemium|15000000|\ud83d\udd0e|AI answer engine search research and citation based answers.\",\r\n\"Character.AI|https:\/\/character.ai\/|Freemium|14000000|\ud83d\udcac|AI character chatbot conversation roleplay and entertainment assistant.\",\r\n\"Jasper|https:\/\/www.jasper.ai\/|Free Trial|12000000|\ud83d\udce2|AI marketing content brand writing and campaign creation platform.\",\r\n\"Midjourney|https:\/\/www.midjourney.com\/|Free Trial|10000000|\ud83d\uddbc\ufe0f|AI image generation art illustration concept design and creative visuals.\",\r\n\"ElevenLabs|https:\/\/elevenlabs.io\/|Freemium|9000000|\ud83c\udf99\ufe0f|AI voice generation dubbing narration speech and audio tools.\",\r\n\"Scale AI|https:\/\/scale.com\/|Free Trial|8000000|\ud83d\udcca|AI data model evaluation labeling and enterprise machine learning.\",\r\n\"DataRobot|https:\/\/www.datarobot.com\/|Free Trial|7000000|\ud83e\udd16|Enterprise AI machine learning analytics prediction and automation.\",\r\n\"Databricks|https:\/\/www.databricks.com\/|Free Trial|6500000|\ud83d\udcc8|Data AI analytics machine learning and enterprise intelligence platform.\",\r\n\"Snowflake AI|https:\/\/www.snowflake.com\/en\/data-cloud\/cortex\/|Free Trial|6000000|\u2744\ufe0f|Enterprise data cloud AI analytics and business intelligence.\",\r\n\"Adobe Firefly|https:\/\/www.adobe.com\/products\/firefly.html|Freemium|5500000|\ud83d\udd25|Creative AI image generation design graphics and Adobe tools.\"\r\n],\r\n\r\n\"Tasks\": [\r\n\"Notion AI|https:\/\/www.notion.so\/product\/ai|Free Trial|30000000|\ud83d\udcdd|Write summarize notes documents tasks projects knowledge base and productivity.\",\r\n\"ClickUp AI|https:\/\/clickup.com\/ai|Free Trial|25000000|\ud83d\udccc|AI productivity task management project management documents and workflows.\",\r\n\"Grammarly|https:\/\/www.grammarly.com\/|Freemium|22000000|\u270d\ufe0f|Writing grammar email tone editing content and communication assistant.\",\r\n\"Otter AI|https:\/\/otter.ai\/|Freemium|18000000|\ud83c\udf99\ufe0f|Meeting transcription notes summaries audio recording and team collaboration.\",\r\n\"Fireflies|https:\/\/fireflies.ai\/|Freemium|16000000|\ud83d\udd25|Meeting recorder transcription summary action items and call notes.\",\r\n\"Taskade|https:\/\/www.taskade.com\/|Freemium|15000000|\u2705|AI task management planning mind map project work and team collaboration.\",\r\n\"Motion|https:\/\/www.usemotion.com\/|Free Trial|12000000|\ud83d\udcc5|AI calendar scheduling task planning productivity and time management.\",\r\n\"Reclaim AI|https:\/\/reclaim.ai\/|Freemium|10000000|\u23f0|AI scheduling calendar time blocking routines tasks and meetings.\",\r\n\"Zapier AI|https:\/\/zapier.com\/ai|Freemium|9500000|\u2699\ufe0f|Workflow automation app integration email CRM forms and business tasks.\",\r\n\"Beautiful.ai|https:\/\/www.beautiful.ai\/|Free Trial|9000000|\ud83d\udcca|AI presentation maker slides pitch deck business report and visual design.\",\r\n\"Tome|https:\/\/tome.app\/|Freemium|8500000|\ud83d\udcd1|AI presentation storytelling documents pitch deck and visual content.\",\r\n\"Gamma|https:\/\/gamma.app\/|Freemium|8000000|\ud83d\ude80|AI presentations documents landing pages webpages and business content.\",\r\n\"SaneBox|https:\/\/www.sanebox.com\/|Free Trial|7500000|\ud83d\udce9|AI email filtering inbox organization email productivity and cleaning.\",\r\n\"Mem|https:\/\/get.mem.ai\/|Free Trial|7000000|\ud83e\udde0|AI note taking knowledge management memory and personal productivity.\",\r\n\"Todoist AI|https:\/\/todoist.com\/|Freemium|6500000|\ud83d\udccb|Task manager planning reminders productivity and smart task organization.\",\r\n\"Asana Intelligence|https:\/\/asana.com\/product\/ai|Free Trial|6000000|\ud83d\uddc2\ufe0f|AI project management tasks team workflow and status updates.\",\r\n\"Monday AI|https:\/\/monday.com\/ai|Free Trial|5500000|\ud83d\udcc6|AI workflow project management CRM automation and team productivity.\",\r\n\"Fathom|https:\/\/fathom.video\/|Freemium|5000000|\ud83c\udfa5|AI meeting notes call summaries transcription and video meetings.\",\r\n\"Clockwise|https:\/\/www.getclockwise.com\/|Freemium|4500000|\ud83d\udd52|AI calendar optimization meeting scheduling focus time and productivity.\",\r\n\"Superhuman AI|https:\/\/superhuman.com\/|Free Trial|4000000|\u26a1|AI email productivity inbox management writing and fast communication.\"\r\n],\r\n\r\n\"Jobs\": [\r\n\"LinkedIn|https:\/\/www.linkedin.com\/|Freemium|150000000|\ud83d\udcbc|Professional networking job search career branding hiring and resume profile.\",\r\n\"Indeed|https:\/\/www.indeed.com\/|100% Free|120000000|\ud83d\udd0e|Job search career openings hiring resume and employment opportunities.\",\r\n\"Resume.io|https:\/\/resume.io\/|Freemium|30000000|\ud83d\udcc4|Resume builder cover letter CV job application and career documents.\",\r\n\"Canva Resume Builder|https:\/\/www.canva.com\/resumes\/|Freemium|25000000|\ud83c\udfa8|Design resume CV portfolio job document and career templates.\",\r\n\"Kickresume|https:\/\/www.kickresume.com\/|Freemium|20000000|\ud83d\ude80|AI resume builder cover letter website career documents and job application.\",\r\n\"Jobscan|https:\/\/www.jobscan.co\/|Freemium|18000000|\ud83c\udfaf|ATS resume optimization job description matching and keyword analysis.\",\r\n\"Rezi|https:\/\/www.rezi.ai\/|Freemium|16000000|\ud83e\uddfe|ATS friendly AI resume builder CV cover letter and job application.\",\r\n\"Teal|https:\/\/www.tealhq.com\/|Freemium|14000000|\ud83d\udccc|Job tracker resume builder career planning and application management.\",\r\n\"Enhancv|https:\/\/enhancv.com\/|Freemium|12000000|\ud83d\udcbc|Resume CV builder modern templates cover letter and career documents.\",\r\n\"Huntr|https:\/\/huntr.co\/|Freemium|10000000|\ud83d\uddc2\ufe0f|Job application tracker resume career workflow and job search management.\",\r\n\"WonsultingAI|https:\/\/www.wonsulting.ai\/|Freemium|9000000|\ud83d\udc54|AI career tools resume LinkedIn cover letter and job search support.\",\r\n\"CoverDoc AI|https:\/\/coverdoc.ai\/|Freemium|8000000|\u2709\ufe0f|Generate cover letter job application email resume support and career content.\",\r\n\"Interview Warmup|https:\/\/grow.google\/certificates\/interview-warmup\/|100% Free|7500000|\ud83c\udfa4|Practice interview questions answers job interview and career preparation.\",\r\n\"Pramp|https:\/\/www.pramp.com\/|100% Free|7000000|\ud83e\udd1d|Mock interview coding interview practice peer interview preparation.\",\r\n\"Big Interview|https:\/\/biginterview.com\/|Free Trial|6500000|\ud83c\udf99\ufe0f|Interview training practice answers career coaching and job preparation.\",\r\n\"ResumAI|https:\/\/www.wonsulting.ai\/resumai|Freemium|6000000|\ud83d\udcc3|AI resume bullet points resume writing and career document generator.\",\r\n\"Careerflow AI|https:\/\/www.careerflow.ai\/|Freemium|5500000|\ud83c\udf0a|Job search LinkedIn optimization resume review and career tools.\",\r\n\"Hiration|https:\/\/www.hiration.com\/|Freemium|5000000|\ud83e\uddd1\u200d\ud83d\udcbb|AI resume CV builder cover letter and career support.\",\r\n\"Skillroads|https:\/\/skillroads.com\/|Freemium|4500000|\ud83d\udee3\ufe0f|AI resume builder career service cover letter and job application.\",\r\n\"Loopcv|https:\/\/www.loopcv.pro\/|Freemium|4000000|\ud83d\udd01|Automate job search job applications resume and career workflow.\"\r\n],\r\n\r\n\"Events\": [\r\n\"Eventbrite|https:\/\/www.eventbrite.com\/|Freemium|50000000|\ud83d\udcc5|Create discover manage events webinars workshops and online programs.\",\r\n\"Meetup|https:\/\/www.meetup.com\/|Freemium|35000000|\ud83e\udd1d|Find communities networking professional events meetups and learning sessions.\",\r\n\"Zoom Events|https:\/\/events.zoom.us\/|Free Trial|30000000|\ud83c\udfa5|Host webinars virtual events meetings conferences and online training.\",\r\n\"Microsoft Teams Events|https:\/\/www.microsoft.com\/en-us\/microsoft-teams\/webinars|Free Trial|25000000|\ud83e\ude9f|Webinars meetings online events training and business sessions.\",\r\n\"Google Meet|https:\/\/meet.google.com\/|Freemium|22000000|\ud83c\udf10|Online meetings webinars classes video calls and virtual sessions.\",\r\n\"Luma|https:\/\/lu.ma\/|Freemium|20000000|\ud83c\udf9f\ufe0f|Host events communities webinars workshops and online sessions.\",\r\n\"Airmeet|https:\/\/www.airmeet.com\/|Free Trial|15000000|\ud83c\udf99\ufe0f|Virtual events webinars summits networking and hybrid events.\",\r\n\"Hopin|https:\/\/hopin.com\/|Free Trial|12000000|\ud83c\udf0d|Virtual conferences online events webinars and community sessions.\",\r\n\"Livestorm|https:\/\/livestorm.co\/|Freemium|10000000|\ud83d\udce2|Webinar platform video engagement online events and product demos.\",\r\n\"Webex Events|https:\/\/www.webex.com\/events.html|Free Trial|9500000|\ud83d\udcbb|Events webinars conferences online meetings and virtual training.\",\r\n\"Goldcast|https:\/\/www.goldcast.io\/|Free Trial|8500000|\ud83c\udfc6|B2B webinar event marketing and virtual event platform.\",\r\n\"Splash|https:\/\/splashthat.com\/|Free Trial|8000000|\u2728|Event marketing branded events registration and campaign management.\",\r\n\"Whova|https:\/\/whova.com\/|Free Trial|7500000|\ud83d\udcf1|Event management conference app agenda networking and attendee engagement.\",\r\n\"Hubilo|https:\/\/www.hubilo.com\/|Free Trial|7000000|\ud83d\udce1|Virtual hybrid events webinars community and engagement platform.\",\r\n\"Bizzabo|https:\/\/www.bizzabo.com\/|Free Trial|6500000|\ud83c\udfab|Event management marketing conference and registration platform.\",\r\n\"Accelevents|https:\/\/www.accelevents.com\/|Free Trial|6000000|\u26a1|Virtual hybrid in person event management and ticketing platform.\",\r\n\"Demio|https:\/\/www.demio.com\/|Free Trial|5500000|\ud83d\udce3|Webinar platform marketing events product demos and online sessions.\",\r\n\"BigMarker|https:\/\/www.bigmarker.com\/|Free Trial|5000000|\ud83c\udfa4|Webinar virtual event video conferencing and online summit platform.\",\r\n\"Run The World|https:\/\/www.runtheworld.today\/|Freemium|4500000|\ud83c\udf0e|Online event community webinars networking and virtual sessions.\",\r\n\"Remo|https:\/\/remo.co\/|Free Trial|4000000|\ud83e\uddd1\u200d\ud83e\udd1d\u200d\ud83e\uddd1|Virtual networking event platform webinars and online community events.\"\r\n],\r\n\r\n\"Papers\": [\r\n\"Google Scholar|https:\/\/scholar.google.com\/|100% Free|100000000|\ud83c\udf93|Search academic papers research articles citations authors and literature.\",\r\n\"ResearchGate|https:\/\/www.researchgate.net\/|Freemium|80000000|\ud83d\udd2c|Research network academic papers authors researchers and publications.\",\r\n\"arXiv|https:\/\/arxiv.org\/|100% Free|50000000|\ud83e\uddea|Open research papers AI ML science physics mathematics and computer science.\",\r\n\"Semantic Scholar|https:\/\/www.semanticscholar.org\/|100% Free|40000000|\ud83d\udcda|AI powered research paper search literature review and citations.\",\r\n\"PubMed|https:\/\/pubmed.ncbi.nlm.nih.gov\/|100% Free|35000000|\ud83c\udfe5|Biomedical healthcare medical research papers and scientific articles.\",\r\n\"ScienceDirect|https:\/\/www.sciencedirect.com\/|Freemium|30000000|\ud83d\udcd6|Scientific technical research papers journals and academic articles.\",\r\n\"SpringerLink|https:\/\/link.springer.com\/|Freemium|28000000|\ud83d\udcd8|Academic journals papers books research and scientific literature.\",\r\n\"IEEE Xplore|https:\/\/ieeexplore.ieee.org\/|Freemium|25000000|\u26a1|Engineering technology AI computer science and research papers.\",\r\n\"JSTOR|https:\/\/www.jstor.org\/|Freemium|22000000|\ud83c\udfdb\ufe0f|Academic journals humanities research papers and archive.\",\r\n\"Academia.edu|https:\/\/www.academia.edu\/|Freemium|20000000|\ud83c\udf93|Share discover academic papers research and scholarly work.\",\r\n\"Elicit|https:\/\/elicit.com\/|Freemium|15000000|\ud83d\udd0e|AI research assistant literature review paper summary and evidence search.\",\r\n\"Consensus|https:\/\/consensus.app\/|Freemium|14000000|\u2705|AI research answer engine evidence based answers and papers.\",\r\n\"SciSpace|https:\/\/typeset.io\/|Freemium|13000000|\ud83e\udde0|Understand research papers summarize PDFs explain concepts and literature review.\",\r\n\"Connected Papers|https:\/\/www.connectedpapers.com\/|Freemium|12000000|\ud83d\udd78\ufe0f|Visualize related academic papers literature graph and research discovery.\",\r\n\"ResearchRabbit|https:\/\/www.researchrabbit.ai\/|Freemium|11000000|\ud83d\udc07|Research discovery paper mapping literature review and citation network.\",\r\n\"Scite|https:\/\/scite.ai\/|Free Trial|10000000|\ud83d\udcd6|Smart citations research validation evidence and academic paper analysis.\",\r\n\"Paperpal|https:\/\/paperpal.com\/|Freemium|9000000|\u270d\ufe0f|Academic writing research paper editing grammar and manuscript support.\",\r\n\"Litmaps|https:\/\/www.litmaps.com\/|Freemium|8000000|\ud83d\uddfa\ufe0f|Literature mapping research discovery and paper tracking.\",\r\n\"OpenAlex|https:\/\/openalex.org\/|100% Free|7000000|\ud83c\udf10|Open catalog of scholarly papers authors journals and institutions.\",\r\n\"CORE|https:\/\/core.ac.uk\/|100% Free|6000000|\ud83d\udcc2|Open access research papers academic articles and repository search.\"\r\n],\r\n\r\n\"Models\": [\r\n\"ChatGPT Models|https:\/\/platform.openai.com\/docs\/models|Freemium|180000000|\ud83e\udde0|OpenAI models text vision voice coding reasoning chatbot and AI applications.\",\r\n\"Google Gemini Models|https:\/\/ai.google.dev\/gemini-api\/docs\/models|Freemium|120000000|\u2728|Google multimodal AI models text image video coding and reasoning.\",\r\n\"Meta Llama|https:\/\/llama.meta.com\/|100% Free|90000000|\ud83e\udd99|Open AI models chatbot coding text generation and local AI.\",\r\n\"Claude Models|https:\/\/www.anthropic.com\/claude|Freemium|40000000|\ud83d\udcac|Anthropic Claude models reasoning writing coding and document analysis.\",\r\n\"Hugging Face Models|https:\/\/huggingface.co\/models|Freemium|35000000|\ud83e\udd17|Open AI models text image audio video NLP and machine learning.\",\r\n\"Mistral Models|https:\/\/mistral.ai\/|Freemium|25000000|\u26a1|Open commercial AI models coding reasoning chatbot and enterprise AI.\",\r\n\"Stable Diffusion|https:\/\/stability.ai\/|Freemium|22000000|\ud83c\udfa8|AI image generation model art design graphics and creative visuals.\",\r\n\"Replicate|https:\/\/replicate.com\/|Freemium|20000000|\ud83d\udd01|Run open source AI models image video audio text and machine learning.\",\r\n\"Ollama|https:\/\/ollama.com\/|100% Free|18000000|\ud83d\udda5\ufe0f|Run local AI models chatbot coding and offline AI on computer.\",\r\n\"Cohere Models|https:\/\/cohere.com\/models|Free Trial|16000000|\ud83d\udd17|Enterprise AI models search text generation chatbot and automation.\",\r\n\"Together AI|https:\/\/www.together.ai\/|Free Trial|14000000|\ud83e\udd1d|Run fine tune open source AI models and inference.\",\r\n\"GroqCloud|https:\/\/groq.com\/|Freemium|13000000|\u26a1|Fast AI inference chatbot models and developer AI platform.\",\r\n\"OpenRouter|https:\/\/openrouter.ai\/|Freemium|12000000|\ud83d\udee3\ufe0f|Access multiple AI models API chatbot coding and text generation.\",\r\n\"Perplexity Models|https:\/\/www.perplexity.ai\/|Freemium|11000000|\ud83d\udd0e|Search focused AI models research answer engine and citation search.\",\r\n\"DeepSeek|https:\/\/www.deepseek.com\/|Freemium|10000000|\ud83c\udf0a|AI models coding reasoning chatbot math and developer tasks.\",\r\n\"Qwen|https:\/\/qwenlm.github.io\/|100% Free|9000000|\ud83c\ude2f|Open AI models chatbot coding reasoning multilingual and local AI.\",\r\n\"Fal AI|https:\/\/fal.ai\/|Free Trial|8000000|\ud83d\ude80|Fast generative media AI models image video and creative tools.\",\r\n\"ModelScope|https:\/\/www.modelscope.cn\/|100% Free|7000000|\ud83d\udce6|Open model platform AI models datasets and machine learning community.\",\r\n\"LM Studio|https:\/\/lmstudio.ai\/|100% Free|6500000|\ud83d\udcbb|Run local AI models desktop chatbot and offline AI.\",\r\n\"Jan AI|https:\/\/jan.ai\/|100% Free|6000000|\ud83e\udde9|Open source local AI assistant chatbot and offline AI.\"\r\n],\r\n\r\n\"Repos\": [\r\n\"GitHub Copilot|https:\/\/github.com\/features\/copilot|Free Trial|50000000|\ud83d\udc19|AI coding assistant autocomplete code generation debugging and developer productivity.\",\r\n\"GitHub Trending|https:\/\/github.com\/trending|100% Free|40000000|\ud83d\udcc8|Explore trending repositories open source projects code and developer tools.\",\r\n\"Cursor|https:\/\/www.cursor.com\/|Freemium|30000000|\ud83d\udcbb|AI code editor coding debugging code generation and software development.\",\r\n\"Replit AI|https:\/\/replit.com\/ai|Freemium|25000000|\ud83d\ude80|AI coding app building deployment and online programming.\",\r\n\"Codeium Windsurf|https:\/\/codeium.com\/|Freemium|22000000|\u2699\ufe0f|AI coding assistant autocomplete IDE software development and coding workflow.\",\r\n\"Tabnine|https:\/\/www.tabnine.com\/|Freemium|20000000|\u2328\ufe0f|AI code completion coding assistant and developer productivity.\",\r\n\"Sourcegraph Cody|https:\/\/sourcegraph.com\/cody|Freemium|18000000|\ud83d\udd0e|AI coding assistant codebase search debugging and code understanding.\",\r\n\"Continue|https:\/\/www.continue.dev\/|100% Free|15000000|\ud83d\udd04|Open source AI coding assistant IDE extension and developer workflow.\",\r\n\"Pieces|https:\/\/pieces.app\/|Freemium|12000000|\ud83e\udde9|Save reuse code snippets AI coding memory and developer assistant.\",\r\n\"CodeRabbit|https:\/\/www.coderabbit.ai\/|Free Trial|10000000|\ud83d\udc07|AI code review pull request review and developer workflow.\",\r\n\"Blackbox AI|https:\/\/www.blackbox.ai\/|Freemium|9500000|\u2b1b|AI coding code search code generation and developer assistant.\",\r\n\"Phind|https:\/\/www.phind.com\/|Freemium|9000000|\ud83d\udd0d|AI search engine for developers coding questions and technical answers.\",\r\n\"Mutable AI|https:\/\/mutable.ai\/|Free Trial|8500000|\ud83d\udee0\ufe0f|AI code generation documentation refactoring and software development.\",\r\n\"CodiumAI|https:\/\/www.codium.ai\/|Freemium|8000000|\u2705|AI test generation code quality and developer automation.\",\r\n\"AskCodi|https:\/\/www.askcodi.com\/|Freemium|7500000|\ud83d\udcac|AI coding assistant code generation SQL and developer tools.\",\r\n\"GitLab Duo|https:\/\/about.gitlab.com\/gitlab-duo\/|Free Trial|7000000|\ud83e\udd8a|AI coding DevSecOps code review and developer productivity.\",\r\n\"Amazon CodeWhisperer|https:\/\/aws.amazon.com\/codewhisperer\/|Freemium|6500000|\u2601\ufe0f|AI coding assistant AWS developer tools and code generation.\",\r\n\"Supermaven|https:\/\/supermaven.com\/|Freemium|6000000|\u26a1|Fast AI code completion coding assistant and IDE support.\",\r\n\"Aider|https:\/\/aider.chat\/|100% Free|5500000|\ud83e\udd16|AI pair programming terminal coding and code editing.\",\r\n\"Devika AI|https:\/\/github.com\/stitionai\/devika|100% Free|5000000|\ud83e\uddd1\u200d\ud83d\udcbb|Open source AI software engineer coding agent and developer assistant.\"\r\n],\r\n\r\n\"Robots\": [\r\n\"Boston Dynamics|https:\/\/bostondynamics.com\/|Free Trial|20000000|\ud83e\uddbe|Advanced robotics mobile robots automation engineering and industrial robots.\",\r\n\"Tesla Optimus|https:\/\/www.tesla.com\/AI|Free Trial|18000000|\u26a1|Humanoid robot AI robotics automation and future work assistant.\",\r\n\"Figure AI|https:\/\/www.figure.ai\/|Free Trial|15000000|\ud83e\udd16|Humanoid robot AI automation robotics and real world work.\",\r\n\"Unitree Robotics|https:\/\/www.unitree.com\/|Free Trial|12000000|\ud83d\udc15|Quadruped robots humanoid robotics automation and robot development.\",\r\n\"Agility Robotics|https:\/\/agilityrobotics.com\/|Free Trial|10000000|\ud83d\udeb6|Humanoid robots logistics warehouse automation and robotics.\",\r\n\"1X Technologies|https:\/\/www.1x.tech\/|Free Trial|9000000|\ud83c\udfe0|AI humanoid robots home assistant robotics and automation.\",\r\n\"Sanctuary AI|https:\/\/www.sanctuary.ai\/|Free Trial|8000000|\ud83e\udde0|General purpose humanoid robot AI robotics and automation.\",\r\n\"Apptronik|https:\/\/apptronik.com\/|Free Trial|7500000|\ud83c\udfed|Humanoid robots industrial automation robotics and work assistant.\",\r\n\"Covariant|https:\/\/covariant.ai\/|Free Trial|7000000|\ud83d\udce6|AI robotics warehouse automation picking logistics and robots.\",\r\n\"Roboflow|https:\/\/roboflow.com\/|Freemium|6500000|\ud83d\udc41\ufe0f|Computer vision AI image detection robotics and automation.\",\r\n\"Open Robotics|https:\/\/www.openrobotics.org\/|100% Free|6000000|\u2699\ufe0f|Open source robotics software ROS simulation and robot development.\",\r\n\"ROS|https:\/\/www.ros.org\/|100% Free|5500000|\ud83e\udd16|Robot Operating System robotics programming automation and simulation.\",\r\n\"NVIDIA Isaac|https:\/\/developer.nvidia.com\/isaac|Freemium|5000000|\ud83d\udfe9|Robotics simulation AI robot development computer vision and automation.\",\r\n\"ANYbotics|https:\/\/www.anybotics.com\/|Free Trial|4500000|\ud83d\udc3e|Autonomous robots inspection industrial robotics and automation.\",\r\n\"GreyOrange|https:\/\/www.greyorange.com\/|Free Trial|4000000|\ud83d\udce6|Warehouse robotics automation fulfillment and logistics intelligence.\",\r\n\"Locus Robotics|https:\/\/locusrobotics.com\/|Free Trial|3500000|\ud83d\ude9a|Warehouse automation robots logistics and fulfillment robotics.\",\r\n\"SoftBank Robotics|https:\/\/www.softbankrobotics.com\/|Free Trial|3000000|\ud83e\udd1d|Service robots humanoid robots customer assistance and robotics solutions.\",\r\n\"Universal Robots|https:\/\/www.universal-robots.com\/|Free Trial|2800000|\ud83e\uddbf|Collaborative industrial robot arms factory automation and robotics.\",\r\n\"ABB Robotics|https:\/\/new.abb.com\/products\/robotics|Free Trial|2600000|\ud83c\udfd7\ufe0f|Industrial robots automation manufacturing and factory robotics.\",\r\n\"Fanuc Robotics|https:\/\/www.fanucamerica.com\/|Free Trial|2400000|\ud83c\udfed|Industrial robotics factory automation CNC and manufacturing robots.\"\r\n],\r\n\r\n\"Devices\": [\r\n\"Apple Vision Pro|https:\/\/www.apple.com\/apple-vision-pro\/|Free Trial|30000000|\ud83e\udd7d|Spatial computing AR VR device immersive apps productivity and entertainment.\",\r\n\"Meta Ray-Ban|https:\/\/www.ray-ban.com\/meta-smart-glasses|Free Trial|25000000|\ud83d\udd76\ufe0f|Smart glasses camera AI assistant wearable and voice control.\",\r\n\"Amazon Echo|https:\/\/www.amazon.com\/echo|Free Trial|22000000|\ud83c\udfe0|Smart speaker voice assistant home automation and AI device.\",\r\n\"Google Nest|https:\/\/store.google.com\/category\/connected_home|Free Trial|20000000|\ud83c\udf10|Smart home devices voice assistant automation and connected home.\",\r\n\"Samsung Galaxy AI|https:\/\/www.samsung.com\/global\/galaxy\/galaxy-ai\/|Free Trial|18000000|\ud83d\udcf1|AI smartphone features photo editing translation notes and productivity.\",\r\n\"Rabbit R1|https:\/\/www.rabbit.tech\/|Free Trial|15000000|\ud83d\udc30|AI pocket assistant device voice control and personal assistant.\",\r\n\"Plaud Note|https:\/\/www.plaud.ai\/|Free Trial|12000000|\ud83c\udf99\ufe0f|AI voice recorder meeting notes transcription and audio summary.\",\r\n\"Humane AI Pin|https:\/\/humane.com\/|Free Trial|10000000|\ud83d\udccc|Wearable AI assistant voice camera and personal device.\",\r\n\"Limitless Pendant|https:\/\/www.limitless.ai\/|Free Trial|9000000|\ud83d\udd0a|AI wearable memory meeting notes conversations and productivity.\",\r\n\"Brilliant Labs Frame|https:\/\/brilliant.xyz\/|Free Trial|8500000|\ud83d\udc53|Open source AI glasses visual assistant and wearable device.\",\r\n\"reMarkable|https:\/\/remarkable.com\/|Free Trial|8000000|\ud83d\udcdd|Digital paper tablet notes reading writing and productivity.\",\r\n\"Kindle Scribe|https:\/\/www.amazon.com\/kindle-scribe|Free Trial|7500000|\ud83d\udcd6|Reading writing tablet notes ebooks and productivity device.\",\r\n\"Boox Tablet|https:\/\/shop.boox.com\/|Free Trial|7000000|\ud83d\udcda|E ink tablet reading note taking documents and productivity.\",\r\n\"AI Pin|https:\/\/humane.com\/|Free Trial|6500000|\ud83d\udccd|Wearable AI assistant voice camera and device.\",\r\n\"RayNeo AI Glasses|https:\/\/www.rayneo.com\/|Free Trial|6000000|\ud83d\udd76\ufe0f|Smart glasses AR AI assistant and wearable technology.\",\r\n\"XREAL Air|https:\/\/www.xreal.com\/|Free Trial|5500000|\ud83e\udd7d|AR glasses display productivity gaming and entertainment.\",\r\n\"Whoop|https:\/\/www.whoop.com\/|Free Trial|5000000|\u231a|Wearable health fitness tracker recovery sleep and performance.\",\r\n\"Oura Ring|https:\/\/ouraring.com\/|Free Trial|4500000|\ud83d\udc8d|Smart ring sleep health fitness recovery and wellness tracking.\",\r\n\"Fitbit|https:\/\/www.fitbit.com\/|Free Trial|4000000|\u231a|Wearable fitness health sleep tracker and smartwatch.\",\r\n\"Garmin Smartwatch|https:\/\/www.garmin.com\/|Free Trial|3500000|\ud83c\udfc3|Smartwatch fitness health sports GPS and performance tracking.\"\r\n]\r\n};\r\n\r\nconst categoryCounts = {\r\n  \"Tools\": \"49,609\",\r\n  \"Mini tools\": \"35,431\",\r\n  \"Indian AI\": \"222\",\r\n  \"Companies\": \"7,067\",\r\n  \"Tasks\": \"11,155\",\r\n  \"Jobs\": \"5,224\",\r\n  \"Events\": \"60\",\r\n  \"Papers\": \"7,784\",\r\n  \"Models\": \"1,147\",\r\n  \"Repos\": \"42,008\",\r\n  \"Robots\": \"527\",\r\n  \"Devices\": \"174\"\r\n};\r\n\r\nconst categoryIcons = {\r\n  \"Tools\": \"\ud83d\udcaa\",\r\n  \"Mini tools\": \"\ud83d\udee0\ufe0f\",\r\n  \"Indian AI\": \"IN\",\r\n  \"Companies\": \"\ud83c\udfe2\",\r\n  \"Tasks\": \"\u2705\",\r\n  \"Jobs\": \"\ud83d\udcbc\",\r\n  \"Events\": \"\u2611\ufe0f\",\r\n  \"Papers\": \"\ud83d\udcc4\",\r\n  \"Models\": \"\ud83e\udde0\",\r\n  \"Repos\": \"\ud83d\udc19\",\r\n  \"Robots\": \"\ud83e\udd16\",\r\n  \"Devices\": \"\ud83d\udcf7\"\r\n};\r\n\r\nconst requirementKeywords = {\r\n  \"image generation\": \"image images photo photos art design graphics visual poster thumbnail background illustration\",\r\n  \"image\": \"image images photo photos art design graphics visual poster thumbnail background illustration\",\r\n  \"photo\": \"image photo photos background editing upscale watermark remove\",\r\n  \"video\": \"video editing generation image to video reels shorts animation\",\r\n  \"voice\": \"voice audio speech dubbing narration text to speech transcription\",\r\n  \"audio\": \"voice audio speech dubbing narration transcription meeting recording\",\r\n  \"resume\": \"resume cv ats job career cover letter interview linkedin\",\r\n  \"job\": \"job career resume cv ats cover letter interview linkedin\",\r\n  \"research\": \"research papers literature pdf study citation scholar deep research\",\r\n  \"study\": \"study notes research pdf documents summarize Q&A learning\",\r\n  \"pdf\": \"pdf documents OCR merge split compress convert summarize notes\",\r\n  \"document\": \"documents pdf notes summarize writing analysis\",\r\n  \"presentation\": \"presentation slides pitch deck powerpoint report visual\",\r\n  \"ppt\": \"presentation slides pitch deck powerpoint\",\r\n  \"coding\": \"coding code developer programming software github repo debugging\",\r\n  \"code\": \"coding code developer programming software github repo debugging\",\r\n  \"automation\": \"automation workflow tasks app integration email crm productivity\",\r\n  \"meeting\": \"meeting notes transcription summary call recording action items\",\r\n  \"email\": \"email writing inbox communication automation productivity\",\r\n  \"translation\": \"translation language multilingual speech text\",\r\n  \"chatbot\": \"chatbot assistant conversation customer support AI assistant\",\r\n  \"excel\": \"Excel office Microsoft data analysis productivity reports\",\r\n  \"data analysis\": \"data analytics analysis BI reports dashboard decision intelligence\",\r\n  \"social media\": \"social media content marketing copy poster graphics reels\",\r\n  \"marketing\": \"marketing content copy sales campaign brand social media\",\r\n  \"robot\": \"robot robotics automation humanoid warehouse industrial computer vision\",\r\n  \"device\": \"device wearable smart glasses assistant smart home\"\r\n};\r\n\r\nconst aiData = {};\r\nlet allTools = [];\r\n\r\nfunction normalizeToolKey(tool) {\r\n  return (tool.url || tool.name || \"\")\r\n    .toLowerCase()\r\n    .replace(\/^https?:\\\/\\\/\/, \"\")\r\n    .replace(\/^www\\.\/, \"\")\r\n    .replace(\/\\\/$\/, \"\")\r\n    .split(\"?\")[0]\r\n    .trim();\r\n}\r\n\r\nfunction uniqueTools(tools) {\r\n  const seen = new Map();\r\n\r\n  tools.forEach(tool => {\r\n    const key = normalizeToolKey(tool);\r\n\r\n    if (!seen.has(key)) {\r\n      seen.set(key, tool);\r\n    } else {\r\n      const existing = seen.get(key);\r\n\r\n      \/* Keep only one card for the same tool.\r\n         Priority: higher user count, then shorter\/better category name. *\/\r\n      if (tool.users > existing.users) {\r\n        seen.set(key, tool);\r\n      }\r\n    }\r\n  });\r\n\r\n  return Array.from(seen.values());\r\n}\r\n\r\nconst globalToolMap = new Map();\r\n\r\nObject.keys(rawData).forEach(category => {\r\n  const parsedTools = rawData[category].map(item => {\r\n    const parts = item.split(\"|\");\r\n    return {\r\n      category: category,\r\n      name: parts[0],\r\n      url: parts[1],\r\n      status: parts[2],\r\n      users: Number(parts[3]),\r\n      icon: parts[4],\r\n      desc: parts[5]\r\n    };\r\n  });\r\n\r\n  aiData[category] = uniqueTools(parsedTools).sort((a, b) => b.users - a.users);\r\n\r\n  aiData[category].forEach(tool => {\r\n    const key = normalizeToolKey(tool);\r\n\r\n    if (!globalToolMap.has(key)) {\r\n      globalToolMap.set(key, tool);\r\n    } else {\r\n      const existing = globalToolMap.get(key);\r\n\r\n      if (tool.users > existing.users) {\r\n        globalToolMap.set(key, tool);\r\n      }\r\n    }\r\n  });\r\n});\r\n\r\nallTools = Array.from(globalToolMap.values()).sort((a, b) => b.users - a.users);\r\n\r\nlet currentCategory = \"Tools\";\r\n\r\nfunction formatUsers(num) {\r\n  if (num >= 1000000000) return (num \/ 1000000000).toFixed(1) + \"B\";\r\n  if (num >= 1000000) return (num \/ 1000000).toFixed(1) + \"M\";\r\n  if (num >= 1000) return (num \/ 1000).toFixed(1) + \"K\";\r\n  return num;\r\n}\r\n\r\nfunction getStatusClass(status) {\r\n  if (status === \"100% Free\") return \"status-free\";\r\n  if (status === \"Freemium\") return \"status-freemium\";\r\n  return \"status-trial\";\r\n}\r\n\r\nfunction getScreenshot(url) {\r\n  return \"https:\/\/s.wordpress.com\/mshots\/v1\/\" + encodeURIComponent(url) + \"?w=800\";\r\n}\r\n\r\nfunction createTabs() {\r\n  const tabsContainer = document.getElementById(\"categoryTabs\");\r\n  tabsContainer.innerHTML = \"\";\r\n\r\n  Object.keys(aiData).forEach(category => {\r\n    const button = document.createElement(\"button\");\r\n    button.className = \"tab-btn\";\r\n\r\n    if (category === currentCategory) {\r\n      button.classList.add(\"active\");\r\n    }\r\n\r\n    button.innerHTML = `${categoryIcons[category]} ${category} <span>${categoryCounts[category]}<\/span>`;\r\n\r\n    button.onclick = () => {\r\n      currentCategory = category;\r\n      document.getElementById(\"searchInput\").value = \"\";\r\n      createTabs();\r\n      renderTools(aiData[category].slice(0, 20));\r\n      document.getElementById(\"currentCategoryTitle\").innerText = category;\r\n      document.getElementById(\"currentCategorySubTitle\").innerText = \"Showing 20 popular tools sorted by user count\";\r\n    };\r\n\r\n    tabsContainer.appendChild(button);\r\n  });\r\n}\r\n\r\nfunction getSearchTerms(query) {\r\n  let q = query.toLowerCase().trim();\r\n  let expanded = q;\r\n\r\n  Object.keys(requirementKeywords).forEach(key => {\r\n    if (q.includes(key)) {\r\n      expanded += \" \" + requirementKeywords[key];\r\n    }\r\n  });\r\n\r\n  return [...new Set(expanded.split(\/\\s+\/).filter(word => word.length > 1))];\r\n}\r\n\r\nfunction searchTools() {\r\n  const query = document.getElementById(\"searchInput\").value.toLowerCase().trim();\r\n\r\n  if (query === \"\") {\r\n    renderTools(aiData[currentCategory].slice(0, 20));\r\n    document.getElementById(\"currentCategoryTitle\").innerText = currentCategory;\r\n    document.getElementById(\"currentCategorySubTitle\").innerText = \"Showing 20 popular tools sorted by user count\";\r\n    createTabs();\r\n    return;\r\n  }\r\n\r\n  document.querySelectorAll(\".tab-btn\").forEach(btn => btn.classList.remove(\"active\"));\r\n\r\n  const terms = getSearchTerms(query);\r\n\r\n  const rankedTools = allTools.map(tool => {\r\n    const searchText = `${tool.name} ${tool.desc} ${tool.category} ${tool.status}`.toLowerCase();\r\n    let score = 0;\r\n\r\n    terms.forEach(term => {\r\n      if (tool.name.toLowerCase().includes(term)) score += 8;\r\n      if (tool.category.toLowerCase().includes(term)) score += 5;\r\n      if (tool.desc.toLowerCase().includes(term)) score += 3;\r\n      if (tool.status.toLowerCase().includes(term)) score += 2;\r\n      if (searchText.includes(term)) score += 1;\r\n    });\r\n\r\n    return { ...tool, score };\r\n  })\r\n  .filter(tool => tool.score > 0)\r\n  .sort((a, b) => {\r\n    if (b.score !== a.score) return b.score - a.score;\r\n    return b.users - a.users;\r\n  })\r\n  .slice(0, 20);\r\n\r\n  renderTools(rankedTools);\r\n\r\n  document.getElementById(\"currentCategoryTitle\").innerText = \"Best Tools for: \" + query;\r\n  document.getElementById(\"currentCategorySubTitle\").innerText = \"Showing top 20 matching tools from all categories\";\r\n}\r\n\r\nfunction renderTools(tools) {\r\n  const grid = document.getElementById(\"toolsGrid\");\r\n  const noResult = document.getElementById(\"noResult\");\r\n\r\n  tools = uniqueTools(tools || []);\r\n\r\n  grid.innerHTML = \"\";\r\n\r\n  if (!tools || tools.length === 0) {\r\n    noResult.style.display = \"block\";\r\n    return;\r\n  }\r\n\r\n  noResult.style.display = \"none\";\r\n\r\n  tools.forEach(tool => {\r\n    const card = document.createElement(\"div\");\r\n    card.className = \"tool-card\";\r\n\r\n    card.onclick = function(e) {\r\n      if (!e.target.classList.contains(\"open-btn\")) {\r\n        window.open(tool.url, \"_blank\");\r\n      }\r\n    };\r\n\r\n    card.innerHTML = `\r\n      <div class=\"preview-box\">\r\n        <img decoding=\"async\" src=\"${getScreenshot(tool.url)}\" alt=\"${tool.name} Website Preview\" loading=\"lazy\">\r\n        <div class=\"preview-label\">Website Preview<\/div>\r\n        <div class=\"preview-tool-name\">${tool.name}<\/div>\r\n      <\/div>\r\n\r\n      <div class=\"tool-content\">\r\n        <div class=\"tool-top-row\">\r\n          <div class=\"tool-icon\">${tool.icon}<\/div>\r\n          <div class=\"status-badge ${getStatusClass(tool.status)}\">${tool.status}<\/div>\r\n        <\/div>\r\n\r\n        <div class=\"category-badge\">${tool.category}<\/div>\r\n\r\n        <h3 class=\"tool-name\">${tool.name}<\/h3>\r\n        <p>${tool.desc}<\/p>\r\n\r\n        <div class=\"tool-meta\">\r\n          <span>\ud83d\udc65 Users<\/span>\r\n          <strong>${formatUsers(tool.users)}<\/strong>\r\n        <\/div>\r\n\r\n        <a class=\"open-btn\" href=\"${tool.url}\" target=\"_blank\" rel=\"noopener noreferrer\">Open Tool \u2197<\/a>\r\n      <\/div>\r\n    `;\r\n\r\n    grid.appendChild(card);\r\n  });\r\n}\r\n\r\nfunction toggleTheme() {\r\n  const body = document.getElementById(\"smart-ai-tools-studio\");\r\n  const button = document.getElementById(\"themeToggle\");\r\n\r\n  body.classList.toggle(\"light-mode\");\r\n\r\n  if (body.classList.contains(\"light-mode\")) {\r\n    button.innerHTML = \"\u2600\ufe0f Light Mode\";\r\n    localStorage.setItem(\"aiTheme\", \"light\");\r\n  } else {\r\n    button.innerHTML = \"\ud83c\udf19 Dark Mode\";\r\n    localStorage.setItem(\"aiTheme\", \"dark\");\r\n  }\r\n}\r\n\r\nfunction loadTheme() {\r\n  const savedTheme = localStorage.getItem(\"aiTheme\");\r\n  const button = document.getElementById(\"themeToggle\");\r\n\r\n  if (savedTheme === \"light\") {\r\n    document.getElementById(\"smart-ai-tools-studio\").classList.add(\"light-mode\");\r\n    button.innerHTML = \"\u2600\ufe0f Light Mode\";\r\n  } else {\r\n    document.getElementById(\"smart-ai-tools-studio\").classList.remove(\"light-mode\");\r\n    button.innerHTML = \"\ud83c\udf19 Dark Mode\";\r\n  }\r\n}\r\n\r\n\r\n\r\nfunction toggleRequirementFinder() {\r\n  const root = document.getElementById(\"smart-ai-tools-studio\");\r\n  const finder = document.getElementById(\"requirementFinder\");\r\n  const button = document.getElementById(\"finderLaunchBtn\");\r\n\r\n  if (!root || !finder || !button) return;\r\n\r\n  const isOpen = !finder.classList.contains(\"finder-active\");\r\n\r\n  finder.classList.toggle(\"finder-active\", isOpen);\r\n  root.classList.toggle(\"finder-mode\", isOpen);\r\n  button.classList.toggle(\"active\", isOpen);\r\n\r\n  button.setAttribute(\"aria-expanded\", isOpen ? \"true\" : \"false\");\r\n  button.innerHTML = isOpen\r\n    ? \"\u2715 Close AI Tool Finder\"\r\n    : \"\ud83d\udd0d Find AI Tool for My Requirement\";\r\n\r\n  if (isOpen) {\r\n    setTimeout(function() {\r\n      finder.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n      const input = document.getElementById(\"requirementInput\");\r\n      if (input) input.focus();\r\n    }, 100);\r\n  } else {\r\n    const panel = document.getElementById(\"selectedToolPanel\");\r\n    const results = document.getElementById(\"requirementResults\");\r\n\r\n    if (panel) panel.classList.remove(\"show\");\r\n    if (results) results.innerHTML = \"\";\r\n\r\n    setTimeout(function() {\r\n      const header = document.querySelector(\"#smart-ai-tools-studio .ai-header\");\r\n      if (header) header.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n    }, 100);\r\n  }\r\n}\r\n\r\nconst toolIntelligence = {\r\n  \"ChatGPT\": {\r\n    level: \"Beginner\",\r\n    demo: \"general\",\r\n    pros: [\r\n      \"Supports writing, analysis, coding, brainstorming, document work, and office productivity.\",\r\n      \"Easy conversational interface for beginners.\",\r\n      \"Can transform rough requirements into structured professional outputs.\",\r\n      \"Suitable for a wide range of personal and business tasks.\"\r\n    ],\r\n    cons: [\r\n      \"Answers may contain errors and should be verified.\",\r\n      \"Advanced capabilities may require a paid plan.\",\r\n      \"Output quality depends on the clarity of the prompt.\"\r\n    ]\r\n  },\r\n  \"Google Gemini\": {\r\n    level: \"Beginner\",\r\n    demo: \"general\",\r\n    pros: [\r\n      \"Useful for research, writing, image understanding, and Google Workspace tasks.\",\r\n      \"Supports multimodal prompts involving text, images, and documents.\",\r\n      \"Convenient for users already working in Google's ecosystem.\"\r\n    ],\r\n    cons: [\r\n      \"Feature availability can vary by account and region.\",\r\n      \"Some Workspace integrations require eligible paid plans.\",\r\n      \"Important facts should still be verified.\"\r\n    ]\r\n  },\r\n  \"Microsoft Copilot\": {\r\n    level: \"Beginner\",\r\n    demo: \"office\",\r\n    pros: [\r\n      \"Strong fit for Word, Excel, PowerPoint, Outlook, and Teams users.\",\r\n      \"Helps convert business data into summaries, reports, and presentations.\",\r\n      \"Works well in Microsoft-centric organizations.\"\r\n    ],\r\n    cons: [\r\n      \"Full Microsoft 365 integration may require additional licensing.\",\r\n      \"Results depend on the quality and permissions of organizational data.\",\r\n      \"Some features differ across applications and plans.\"\r\n    ]\r\n  },\r\n  \"Canva AI\": {\r\n    level: \"Beginner\",\r\n    demo: \"presentation\",\r\n    pros: [\r\n      \"Very easy for presentations, posters, social posts, and visual documents.\",\r\n      \"Large library of editable templates and design assets.\",\r\n      \"Fast workflow for non-designers.\",\r\n      \"Useful for both images and presentations.\"\r\n    ],\r\n    cons: [\r\n      \"Premium templates and assets may require Canva Pro.\",\r\n      \"AI-generated layouts often need manual refinement.\",\r\n      \"Advanced data visualisation controls are limited.\"\r\n    ]\r\n  },\r\n  \"Gamma\": {\r\n    level: \"Beginner\",\r\n    demo: \"presentation\",\r\n    pros: [\r\n      \"Creates presentation drafts quickly from a short prompt.\",\r\n      \"Produces modern layouts with minimal design effort.\",\r\n      \"Useful for reports, proposals, and pitch decks.\"\r\n    ],\r\n    cons: [\r\n      \"PowerPoint export may need formatting adjustments.\",\r\n      \"Fine design control is more limited than professional presentation software.\",\r\n      \"Free usage is credit-limited.\"\r\n    ]\r\n  },\r\n  \"Beautiful.ai\": {\r\n    level: \"Beginner\",\r\n    demo: \"presentation\",\r\n    pros: [\r\n      \"Automates slide layout and visual alignment.\",\r\n      \"Good for professional business presentations.\",\r\n      \"Reduces manual slide-formatting effort.\"\r\n    ],\r\n    cons: [\r\n      \"Less suitable for highly customized slide designs.\",\r\n      \"Export and premium features may require a paid plan.\",\r\n      \"Data-heavy slides may need manual adjustment.\"\r\n    ]\r\n  },\r\n  \"Perplexity\": {\r\n    level: \"Beginner\",\r\n    demo: \"research\",\r\n    pros: [\r\n      \"Provides source-linked answers for web research.\",\r\n      \"Useful for current topics, comparisons, and quick fact checks.\",\r\n      \"Simple search-based user experience.\"\r\n    ],\r\n    cons: [\r\n      \"Source quality can vary.\",\r\n      \"Citations should still be opened and reviewed.\",\r\n      \"Advanced research features may require a subscription.\"\r\n    ]\r\n  },\r\n  \"Claude\": {\r\n    level: \"Beginner\",\r\n    demo: \"summary\",\r\n    pros: [\r\n      \"Strong for long documents, summaries, reports, and structured writing.\",\r\n      \"Produces natural and professional language.\",\r\n      \"Useful for detailed analysis of supplied material.\"\r\n    ],\r\n    cons: [\r\n      \"Free-plan usage limits may apply.\",\r\n      \"Facts and calculations still require verification.\",\r\n      \"Some features and integrations depend on plan availability.\"\r\n    ]\r\n  },\r\n  \"NotebookLM\": {\r\n    level: \"Beginner\",\r\n    demo: \"summary\",\r\n    pros: [\r\n      \"Grounds answers in user-supplied sources.\",\r\n      \"Useful for PDFs, notes, websites, videos, and study material.\",\r\n      \"Good for summaries, questions, and source-based understanding.\"\r\n    ],\r\n    cons: [\r\n      \"Best results depend on the quality of uploaded sources.\",\r\n      \"Not designed as a general-purpose creative assistant.\",\r\n      \"Export and workflow options may be more limited than full document suites.\"\r\n    ]\r\n  },\r\n  \"Runway\": {\r\n    level: \"Intermediate\",\r\n    demo: \"video\",\r\n    pros: [\r\n      \"Combines AI video generation and editing tools.\",\r\n      \"Useful for image-to-video, background removal, and creative effects.\",\r\n      \"Suitable for marketing and social video production.\"\r\n    ],\r\n    cons: [\r\n      \"High-quality generation can consume credits quickly.\",\r\n      \"Complex scenes may produce inconsistent results.\",\r\n      \"Professional output still requires editing skills.\"\r\n    ]\r\n  },\r\n  \"Midjourney\": {\r\n    level: \"Intermediate\",\r\n    demo: \"image\",\r\n    pros: [\r\n      \"Produces high-quality artistic and concept visuals.\",\r\n      \"Excellent for creative exploration and premium-looking images.\",\r\n      \"Large community with many prompt examples.\"\r\n    ],\r\n    cons: [\r\n      \"Usually requires paid access.\",\r\n      \"Precise text and layout control can be difficult.\",\r\n      \"Advanced prompting requires practice.\"\r\n    ]\r\n  },\r\n  \"Leonardo AI\": {\r\n    level: \"Beginner\",\r\n    demo: \"image\",\r\n    pros: [\r\n      \"Useful for image generation, game assets, and creative graphics.\",\r\n      \"Offers several style and generation controls.\",\r\n      \"Suitable for both beginners and creative professionals.\"\r\n    ],\r\n    cons: [\r\n      \"Free generations are limited by credits.\",\r\n      \"Some models and features require a paid plan.\",\r\n      \"Output consistency may vary between prompts.\"\r\n    ]\r\n  },\r\n  \"GitHub Copilot\": {\r\n    level: \"Advance\",\r\n    demo: \"code\",\r\n    pros: [\r\n      \"Provides code completion inside popular development environments.\",\r\n      \"Speeds up repetitive coding tasks.\",\r\n      \"Supports many programming languages and development workflows.\"\r\n    ],\r\n    cons: [\r\n      \"Generated code must be reviewed and tested.\",\r\n      \"Suggestions can include security or logic issues.\",\r\n      \"Full access generally requires a subscription.\"\r\n    ]\r\n  },\r\n  \"Cursor\": {\r\n    level: \"Advance\",\r\n    demo: \"code\",\r\n    pros: [\r\n      \"AI-first code editor with codebase understanding.\",\r\n      \"Useful for generating, editing, explaining, and debugging code.\",\r\n      \"Supports conversational changes across multiple files.\"\r\n    ],\r\n    cons: [\r\n      \"Requires understanding of software development.\",\r\n      \"AI changes can affect unrelated code if instructions are unclear.\",\r\n      \"Advanced usage may require a paid plan.\"\r\n    ]\r\n  },\r\n  \"Zapier AI\": {\r\n    level: \"Intermediate\",\r\n    demo: \"automation\",\r\n    pros: [\r\n      \"Connects many business applications without traditional coding.\",\r\n      \"Reduces repetitive manual work.\",\r\n      \"Useful for notifications, lead handling, forms, email, and CRM workflows.\"\r\n    ],\r\n    cons: [\r\n      \"High-volume or complex automations can become expensive.\",\r\n      \"Workflows must be tested for exceptions and failures.\",\r\n      \"Advanced logic may require technical understanding.\"\r\n    ]\r\n  },\r\n  \"Grammarly\": {\r\n    level: \"Beginner\",\r\n    demo: \"writing\",\r\n    pros: [\r\n      \"Improves grammar, tone, clarity, and sentence structure.\",\r\n      \"Works across email, documents, and web applications.\",\r\n      \"Helpful for professional communication.\"\r\n    ],\r\n    cons: [\r\n      \"Suggestions may change the intended meaning.\",\r\n      \"Advanced rewriting features may require a paid plan.\",\r\n      \"Specialized technical wording may need manual review.\"\r\n    ]\r\n  },\r\n  \"ElevenLabs\": {\r\n    level: \"Beginner\",\r\n    demo: \"voice\",\r\n    pros: [\r\n      \"Generates natural and expressive AI voices.\",\r\n      \"Useful for narration, training videos, dubbing, and audio content.\",\r\n      \"Supports multiple voices and languages.\"\r\n    ],\r\n    cons: [\r\n      \"Free usage is limited.\",\r\n      \"Voice cloning requires consent and responsible use.\",\r\n      \"Commercial rights depend on the selected plan.\"\r\n    ]\r\n  }\r\n};\r\n\r\nlet selectedRequirementTool = null;\r\n\r\n\r\nconst requirementIntentRules = [\r\n  {\r\n    intent: \"excel_data_cleaning\",\r\n    phrases: [\r\n      \"data cleaning\", \"clean excel\", \"excel cleaning\", \"cleaning excel\",\r\n      \"remove duplicates\", \"missing values\", \"data validation\",\r\n      \"clean spreadsheet\", \"format excel\", \"standardize data\"\r\n    ],\r\n    preferredTools: [\r\n      \"Microsoft Copilot\", \"ChatGPT\", \"Power BI Copilot\",\r\n      \"Claude\", \"Notion AI\", \"Zapier AI\"\r\n    ],\r\n    preferredCategories: [\"Tools\", \"Tasks\"],\r\n    keywords: [\r\n      \"excel\", \"data\", \"cleaning\", \"spreadsheet\", \"duplicates\",\r\n      \"missing\", \"format\", \"validation\", \"power query\", \"analysis\"\r\n    ]\r\n  },\r\n  {\r\n    intent: \"presentation\",\r\n    phrases: [\r\n      \"create ppt\", \"create presentation\", \"make ppt\", \"powerpoint\",\r\n      \"presentation\", \"pitch deck\", \"management presentation\", \"slides\"\r\n    ],\r\n    preferredTools: [\r\n      \"Gamma\", \"Beautiful.ai\", \"Canva AI\", \"Microsoft Copilot\",\r\n      \"ChatGPT\", \"Tome\"\r\n    ],\r\n    preferredCategories: [\"Tools\", \"Tasks\"],\r\n    keywords: [\"presentation\", \"slides\", \"ppt\", \"powerpoint\", \"deck\", \"report\"]\r\n  },\r\n  {\r\n    intent: \"resume\",\r\n    phrases: [\r\n      \"resume\", \"cv\", \"cover letter\", \"ats\", \"job application\",\r\n      \"linkedin profile\", \"interview preparation\"\r\n    ],\r\n    preferredTools: [\r\n      \"Resume.io\", \"Kickresume\", \"Jobscan\", \"Rezi\",\r\n      \"Canva Resume Builder\", \"ChatGPT\"\r\n    ],\r\n    preferredCategories: [\"Jobs\", \"Tools\"],\r\n    keywords: [\"resume\", \"cv\", \"ats\", \"career\", \"cover letter\", \"job\"]\r\n  },\r\n  {\r\n    intent: \"research\",\r\n    phrases: [\r\n      \"research\", \"literature review\", \"academic paper\", \"study paper\",\r\n      \"find sources\", \"citations\", \"deep research\"\r\n    ],\r\n    preferredTools: [\r\n      \"Perplexity\", \"NotebookLM\", \"Elicit\", \"Consensus\",\r\n      \"Semantic Scholar\", \"Google Scholar\", \"SciSpace\"\r\n    ],\r\n    preferredCategories: [\"Papers\", \"Tools\"],\r\n    keywords: [\"research\", \"paper\", \"citation\", \"study\", \"literature\", \"sources\"]\r\n  },\r\n  {\r\n    intent: \"coding\",\r\n    phrases: [\r\n      \"coding\", \"write code\", \"build application\", \"create website\",\r\n      \"html code\", \"python code\", \"javascript\", \"debug code\"\r\n    ],\r\n    preferredTools: [\r\n      \"GitHub Copilot\", \"Cursor\", \"Replit AI\", \"ChatGPT\",\r\n      \"Claude\", \"Codeium Windsurf\"\r\n    ],\r\n    preferredCategories: [\"Repos\", \"Tools\"],\r\n    keywords: [\"coding\", \"code\", \"developer\", \"programming\", \"debug\", \"software\"]\r\n  },\r\n  {\r\n    intent: \"pdf\",\r\n    phrases: [\r\n      \"pdf\", \"summarize pdf\", \"analyse pdf\", \"merge pdf\",\r\n      \"split pdf\", \"ocr pdf\", \"convert pdf\"\r\n    ],\r\n    preferredTools: [\r\n      \"NotebookLM\", \"ChatGPT\", \"Claude\", \"PDF24 Tools\",\r\n      \"ILovePDF\", \"Smallpdf\"\r\n    ],\r\n    preferredCategories: [\"Tools\", \"Mini tools\"],\r\n    keywords: [\"pdf\", \"document\", \"ocr\", \"merge\", \"split\", \"convert\", \"summary\"]\r\n  },\r\n  {\r\n    intent: \"automation\",\r\n    phrases: [\r\n      \"automation\", \"automate workflow\", \"workflow automation\",\r\n      \"email automation\", \"business process automation\", \"task automation\"\r\n    ],\r\n    preferredTools: [\r\n      \"Zapier AI\", \"Microsoft Copilot\", \"ChatGPT\",\r\n      \"Notion AI\", \"ClickUp AI\", \"Monday AI\"\r\n    ],\r\n    preferredCategories: [\"Tasks\", \"Tools\"],\r\n    keywords: [\"automation\", \"workflow\", \"integration\", \"task\", \"email\", \"process\"]\r\n  },\r\n  {\r\n    intent: \"image\",\r\n    phrases: [\r\n      \"image generation\", \"generate image\", \"create image\", \"photo editing\",\r\n      \"poster design\", \"thumbnail\", \"background removal\"\r\n    ],\r\n    preferredTools: [\r\n      \"Canva AI\", \"Midjourney\", \"Leonardo AI\",\r\n      \"Adobe Firefly\", \"Remove.bg\", \"Cleanup Pictures\"\r\n    ],\r\n    preferredCategories: [\"Tools\", \"Mini tools\"],\r\n    keywords: [\"image\", \"photo\", \"design\", \"poster\", \"thumbnail\", \"background\"]\r\n  },\r\n  {\r\n    intent: \"video\",\r\n    phrases: [\r\n      \"video generation\", \"create video\", \"video editing\",\r\n      \"image to video\", \"reels\", \"short video\"\r\n    ],\r\n    preferredTools: [\r\n      \"Runway\", \"Canva AI\", \"ElevenLabs\",\r\n      \"EZGIF\", \"InVideo\", \"HeyGen\"\r\n    ],\r\n    preferredCategories: [\"Tools\", \"Mini tools\"],\r\n    keywords: [\"video\", \"editing\", \"reels\", \"animation\", \"media\"]\r\n  },\r\n  {\r\n    intent: \"meeting\",\r\n    phrases: [\r\n      \"meeting notes\", \"meeting summary\", \"transcription\",\r\n      \"record meeting\", \"action items\", \"call notes\"\r\n    ],\r\n    preferredTools: [\r\n      \"Otter AI\", \"Fireflies\", \"Fathom\",\r\n      \"Microsoft Copilot\", \"ChatGPT\"\r\n    ],\r\n    preferredCategories: [\"Tasks\", \"Tools\"],\r\n    keywords: [\"meeting\", \"notes\", \"transcription\", \"summary\", \"action items\"]\r\n  }\r\n];\r\n\r\nfunction detectRequirementIntent(requirementText) {\r\n  const text = requirementText.toLowerCase().trim();\r\n\r\n  let bestRule = null;\r\n  let bestScore = 0;\r\n\r\n  requirementIntentRules.forEach(function(rule) {\r\n    let score = 0;\r\n\r\n    rule.phrases.forEach(function(phrase) {\r\n      if (text.includes(phrase)) {\r\n        score += phrase.includes(\" \") ? 12 : 7;\r\n      }\r\n    });\r\n\r\n    rule.keywords.forEach(function(keyword) {\r\n      if (text.includes(keyword)) score += 4;\r\n    });\r\n\r\n    if (score > bestScore) {\r\n      bestScore = score;\r\n      bestRule = rule;\r\n    }\r\n  });\r\n\r\n  return bestRule;\r\n}\r\n\r\nfunction getRequirementMatchScore(tool, requirementText, selectedLevel) {\r\n  const intelligence = getToolIntelligence(tool);\r\n\r\n  if (intelligence.level !== selectedLevel) {\r\n    return -1;\r\n  }\r\n\r\n  const text = requirementText.toLowerCase().trim();\r\n  const toolName = tool.name.toLowerCase();\r\n  const category = tool.category.toLowerCase();\r\n  const description = tool.desc.toLowerCase();\r\n  const rule = detectRequirementIntent(text);\r\n\r\n  let score = 0;\r\n\r\n  \/\/ Direct name, category and description matches.\r\n  const exactTerms = text\r\n    .split(\/\\s+\/)\r\n    .map(function(term) { return term.trim(); })\r\n    .filter(function(term) { return term.length > 2; });\r\n\r\n  exactTerms.forEach(function(term) {\r\n    if (toolName.includes(term)) score += 10;\r\n    if (description.includes(term)) score += 5;\r\n    if (category.includes(term)) score += 2;\r\n  });\r\n\r\n  \/\/ Strong intent-level ranking.\r\n  if (rule) {\r\n    const preferredIndex = rule.preferredTools.indexOf(tool.name);\r\n\r\n    if (preferredIndex !== -1) {\r\n      score += 100 - (preferredIndex * 8);\r\n    }\r\n\r\n    if (rule.preferredCategories.includes(tool.category)) {\r\n      score += 18;\r\n    }\r\n\r\n    rule.keywords.forEach(function(keyword) {\r\n      if (description.includes(keyword)) score += 7;\r\n      if (toolName.includes(keyword)) score += 10;\r\n    });\r\n\r\n    \/\/ Penalize clearly unrelated categories.\r\n    if (!rule.preferredCategories.includes(tool.category)) {\r\n      const unrelatedCategories = [\r\n        \"Events\", \"Robots\", \"Devices\", \"Companies\"\r\n      ];\r\n\r\n      if (unrelatedCategories.includes(tool.category)) {\r\n        score -= 35;\r\n      }\r\n    }\r\n  }\r\n\r\n  return score;\r\n}\r\n\r\n\r\nfunction getToolIntelligence(tool) {\r\n  if (toolIntelligence[tool.name]) {\r\n    return toolIntelligence[tool.name];\r\n  }\r\n\r\n  const desc = tool.desc.toLowerCase();\r\n  let demo = \"general\";\r\n  let level = \"Beginner\";\r\n\r\n  if (desc.includes(\"presentation\") || desc.includes(\"slides\")) demo = \"presentation\";\r\n  else if (desc.includes(\"image\") || desc.includes(\"graphics\") || desc.includes(\"photo\")) demo = \"image\";\r\n  else if (desc.includes(\"video\")) demo = \"video\";\r\n  else if (desc.includes(\"code\") || desc.includes(\"coding\") || desc.includes(\"developer\")) {\r\n    demo = \"code\";\r\n    level = \"Advance\";\r\n  }\r\n  else if (desc.includes(\"automation\") || desc.includes(\"workflow\")) {\r\n    demo = \"automation\";\r\n    level = \"Intermediate\";\r\n  }\r\n  else if (desc.includes(\"voice\") || desc.includes(\"audio\") || desc.includes(\"speech\")) demo = \"voice\";\r\n  else if (desc.includes(\"research\") || desc.includes(\"citation\") || desc.includes(\"papers\")) demo = \"research\";\r\n  else if (desc.includes(\"summary\") || desc.includes(\"summar\")) demo = \"summary\";\r\n  else if (desc.includes(\"writing\") || desc.includes(\"grammar\")) demo = \"writing\";\r\n\r\n  return {\r\n    level,\r\n    demo,\r\n    pros: [\r\n      `Designed for tasks related to ${tool.category.toLowerCase()}.`,\r\n      `Its main capabilities include ${tool.desc.replace(\/\\.$\/, \"\")}.`,\r\n      `The ${tool.status.toLowerCase()} access model allows users to evaluate the tool before wider adoption.`,\r\n      \"Can reduce manual effort when used for the right requirement.\"\r\n    ],\r\n    cons: [\r\n      \"Feature availability and usage limits may depend on the selected plan.\",\r\n      \"Generated results should be reviewed before business use.\",\r\n      \"Data privacy and commercial-use terms should be checked.\",\r\n      \"The tool may not be suitable for every specialized workflow.\"\r\n    ]\r\n  };\r\n}\r\n\r\nfunction findToolsByRequirement() {\r\n  const root = document.getElementById(\"smart-ai-tools-studio\");\r\n  if (root) root.classList.add(\"finder-mode\");\r\n  const requirement = document.getElementById(\"requirementInput\").value.trim().toLowerCase();\r\n  const level = document.getElementById(\"requirementLevel\").value;\r\n  const resultsBox = document.getElementById(\"requirementResults\");\r\n  const backBtn = document.getElementById(\"backToDirectoryBtn\");\r\n\r\n  if (!requirement) {\r\n    resultsBox.innerHTML = '<div class=\"finder-empty\">Please describe your requirement first.<\/div>';\r\n    document.getElementById(\"selectedToolPanel\").classList.remove(\"show\");\r\n    return;\r\n  }\r\n\r\n  const ranked = allTools.map(function(tool) {\r\n    const intelligence = getToolIntelligence(tool);\r\n    const score = getRequirementMatchScore(tool, requirement, level);\r\n\r\n    return {\r\n      ...tool,\r\n      intelligence: intelligence,\r\n      score: score\r\n    };\r\n  })\r\n  .filter(function(tool) {\r\n    return tool.score > 0;\r\n  })\r\n  .sort(function(a, b) {\r\n    if (b.score !== a.score) return b.score - a.score;\r\n    return b.users - a.users;\r\n  })\r\n  .slice(0, 10);\r\n\r\n  if (!ranked.length) {\r\n    resultsBox.innerHTML = '<div class=\"finder-empty\">No exact match was found for the selected skill level. Try broader words such as presentation, image, research, coding, PDF, meeting, or automation.<\/div>';\r\n    document.getElementById(\"selectedToolPanel\").classList.remove(\"show\");\r\n    return;\r\n  }\r\n\r\n  const maxScore = Math.max(...ranked.map(tool => tool.score));\r\n\r\n  resultsBox.innerHTML = ranked.map((tool, index) => {\r\n    const match = Math.max(\r\n      55,\r\n      Math.min(98, Math.round((tool.score \/ Math.max(maxScore, 1)) * 98))\r\n    );\r\n    return `\r\n      <article\r\n        class=\"finder-result-card\"\r\n        id=\"finder-card-${encodeURIComponent(tool.name)}\"\r\n        data-tool-name=\"${encodeURIComponent(tool.name)}\"\r\n        tabindex=\"0\"\r\n        role=\"button\"\r\n        aria-label=\"View pros and cons for ${tool.name}\"\r\n      >\r\n        <div class=\"finder-result-top\">\r\n          <div class=\"finder-result-name\">\r\n            <span class=\"tool-icon\">${tool.icon}<\/span>\r\n            <div>\r\n              <strong>${tool.name}<\/strong>\r\n              <div style=\"color:var(--text-soft);font-size:12px;margin-top:4px;\">${tool.category}<\/div>\r\n            <\/div>\r\n          <\/div>\r\n          <span class=\"match-score\">${match}% Match<\/span>\r\n        <\/div>\r\n\r\n        <p>${tool.desc}<\/p>\r\n\r\n        <div class=\"finder-tags\">\r\n          <span class=\"finder-tag\">${tool.status}<\/span>\r\n          <span class=\"finder-tag\">${tool.intelligence.level}<\/span>\r\n          <span class=\"finder-tag\">${formatUsers(tool.users)} users<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"finder-actions\">\r\n          <button\r\n            type=\"button\"\r\n            class=\"finder-action-btn select-tool-btn\"\r\n            data-tool-name=\"${encodeURIComponent(tool.name)}\"\r\n            onclick=\"window.showFinderToolDetails && window.showFinderToolDetails('${encodeURIComponent(tool.name)}'); return false;\"\r\n          >\r\n            View Pros, Cons & Demo\r\n          <\/button>\r\n          <a class=\"finder-action-btn secondary\" href=\"${tool.url}\" target=\"_blank\" rel=\"noopener noreferrer\" style=\"text-align:center;text-decoration:none;\">Open Tool \u2197<\/a>\r\n        <\/div>\r\n      <\/article>\r\n    `;\r\n  }).join(\"\");\r\n\r\n  if (ranked.length > 0) {\r\n    selectRequirementTool(ranked[0].name, false);\r\n  }\r\n}\r\n\r\n\r\nfunction showFinderToolDetails(encodedToolName) {\r\n  const toolName = decodeURIComponent(encodedToolName || \"\");\r\n  if (!toolName) return;\r\n  selectRequirementTool(toolName, true);\r\n}\r\n\r\nwindow.showFinderToolDetails = showFinderToolDetails;\r\n\r\nfunction selectRequirementTool(toolName, shouldScroll = true) {\r\n  const tool = allTools.find(item => item.name === toolName);\r\n  if (!tool) return;\r\n\r\n  selectedRequirementTool = { ...tool, intelligence: getToolIntelligence(tool) };\r\n\r\n  document.querySelectorAll(\".finder-result-card\").forEach(card => card.classList.remove(\"selected\"));\r\n  const selectedCard = document.getElementById(`finder-card-${encodeURIComponent(tool.name)}`);\r\n  if (selectedCard) selectedCard.classList.add(\"selected\");\r\n\r\n  document.getElementById(\"selectedToolTitle\").textContent = `${tool.icon} ${tool.name}`;\r\n\r\n  const summary = document.getElementById(\"selectedToolSummary\");\r\n  if (summary) {\r\n    summary.innerHTML =\r\n      `<strong>${tool.name}<\/strong> is selected for the requirement. ` +\r\n      `Review its pros, cons, and demo below.`;\r\n  }\r\n  document.getElementById(\"selectedToolLink\").href = tool.url;\r\n\r\n  document.getElementById(\"selectedToolPros\").innerHTML =\r\n    selectedRequirementTool.intelligence.pros\r\n      .map(item => `<div class=\"analysis-item\"><span class=\"positive\">\u25cf<\/span><span>${item}<\/span><\/div>`)\r\n      .join(\"\");\r\n\r\n  document.getElementById(\"selectedToolCons\").innerHTML =\r\n    selectedRequirementTool.intelligence.cons\r\n      .map(item => `<div class=\"analysis-item\"><span class=\"negative\">\u25cf<\/span><span>${item}<\/span><\/div>`)\r\n      .join(\"\");\r\n\r\n  document.getElementById(\"selectedToolDemoInput\").value =\r\n    document.getElementById(\"requirementInput\").value.trim();\r\n\r\n  document.getElementById(\"selectedToolDemoOutput\").textContent =\r\n    `Enter or edit the sample task, then click \u201cRun Demo\u201d to see the expected ${tool.name} workflow.`;\r\n\r\n  const selectedPanel = document.getElementById(\"selectedToolPanel\");\r\n  if (!selectedPanel) return;\r\n  selectedPanel.classList.add(\"show\");\r\n  selectedPanel.style.display = \"block\";\r\n  selectedPanel.style.visibility = \"visible\";\r\n  selectedPanel.style.opacity = \"1\";\r\n\r\n  if (shouldScroll) {\r\n    setTimeout(function() {\r\n      selectedPanel.scrollIntoView({\r\n        behavior: \"smooth\",\r\n        block: \"start\"\r\n      });\r\n    }, 100);\r\n  }\r\n}\r\n\r\nfunction runSelectedToolDemo() {\r\n  const input = document.getElementById(\"selectedToolDemoInput\").value.trim();\r\n  const output = document.getElementById(\"selectedToolDemoOutput\");\r\n\r\n  if (!selectedRequirementTool) {\r\n    output.textContent = \"Please select a recommended tool first.\";\r\n    return;\r\n  }\r\n\r\n  if (!input) {\r\n    output.textContent = \"Please enter a sample task for the demo.\";\r\n    return;\r\n  }\r\n\r\n  const tool = selectedRequirementTool;\r\n  const demoType = tool.intelligence.demo;\r\n\r\n  const demos = {\r\n    general:\r\n`Suggested workflow using ${tool.name}:\r\n\r\n1. Clarify the objective and target audience.\r\n2. Convert the requirement into a structured prompt.\r\n3. Generate the first draft or analysis.\r\n4. Verify facts, calculations, names, and dates.\r\n5. Refine the output for tone, format, and completeness.\r\n\r\nSample task:\r\n${input}`,\r\n\r\n    office:\r\n`Microsoft office workflow for:\r\n${input}\r\n\r\n\u2022 Excel: Clean and analyse the source data.\r\n\u2022 Word: Prepare a detailed narrative report.\r\n\u2022 PowerPoint: Create KPI cards, charts, and management insights.\r\n\u2022 Outlook: Draft the action-oriented communication.\r\n\u2022 Teams: Track decisions and follow-up actions.`,\r\n\r\n    presentation:\r\n`Suggested presentation structure for:\r\n${input}\r\n\r\nSlide 1 \u2014 Title and management objective\r\nSlide 2 \u2014 Current situation and background\r\nSlide 3 \u2014 Key KPIs and headline figures\r\nSlide 4 \u2014 Charts and category-wise analysis\r\nSlide 5 \u2014 Major insights\r\nSlide 6 \u2014 Risks and gaps\r\nSlide 7 \u2014 Recommendations and implementation plan\r\nSlide 8 \u2014 Decisions required`,\r\n\r\n    research:\r\n`Suggested research workflow for:\r\n${input}\r\n\r\n1. Define scope, location, industry, and timeframe.\r\n2. Gather reliable primary and secondary sources.\r\n3. Compare evidence from multiple sources.\r\n4. Identify agreements, gaps, and conflicting information.\r\n5. Present findings with citations.\r\n6. Add conclusions, limitations, and recommendations.`,\r\n\r\n    summary:\r\n`Sample document-analysis structure:\r\n\r\nSubject: ${input}\r\n\r\n\u2022 Executive summary\r\n\u2022 Important facts and figures\r\n\u2022 Main findings\r\n\u2022 Risks or concerns\r\n\u2022 Action items\r\n\u2022 Questions requiring clarification\r\n\u2022 Recommended next steps\r\n\r\nAll source figures, dates, and names should be verified before final use.`,\r\n\r\n    writing:\r\n`Suggested professional writing workflow:\r\n\r\nOriginal task:\r\n${input}\r\n\r\nThe tool can improve:\r\n\u2022 Grammar and sentence structure\r\n\u2022 Tone and professionalism\r\n\u2022 Clarity and readability\r\n\u2022 Conciseness\r\n\u2022 Call to action\r\n\u2022 Subject line and closing\r\n\r\nReview the revised message to ensure the original business meaning is preserved.`,\r\n\r\n    image:\r\n`Sample AI image prompt:\r\n\r\n\u201cCreate a premium, high-quality visual representing ${input}. Use a clean professional composition, realistic lighting, sharp details, balanced spacing, modern styling, and a polished presentation-ready finish.\u201d`,\r\n\r\n    video:\r\n`Suggested AI video workflow:\r\n\r\nTopic: ${input}\r\n\r\n1. Define audience and video objective.\r\n2. Create a short script and scene list.\r\n3. Generate or upload source visuals.\r\n4. Produce video clips and transitions.\r\n5. Add narration, captions, and background audio.\r\n6. Review timing, factual accuracy, branding, and export quality.`,\r\n\r\n    code:\r\n`Suggested development plan:\r\n\r\nRequirement: ${input}\r\n\r\n1. Define inputs, outputs, and user workflow.\r\n2. Build semantic HTML structure.\r\n3. Add responsive CSS.\r\n4. Add JavaScript interactions and validation.\r\n5. Include error handling and accessibility.\r\n6. Test on desktop and mobile.\r\n7. Review security before deployment.`,\r\n\r\n    automation:\r\n`Suggested automation design:\r\n\r\nProcess: ${input}\r\n\r\nTrigger \u2192 Capture input \u2192 Validate data \u2192 Apply business rules \u2192 Update system \u2192 Send notification \u2192 Record status \u2192 Handle errors\r\n\r\nBefore activation, confirm ownership, permissions, duplicate handling, failure alerts, and approval controls.`,\r\n\r\n    voice:\r\n`Suggested voice-production plan:\r\n\r\nScript topic: ${input}\r\n\r\n\u2022 Tone: Professional and confident\r\n\u2022 Pace: Moderate\r\n\u2022 Delivery: Clear, natural, and engaging\r\n\u2022 Suggested duration: 30\u201360 seconds\r\n\u2022 Review: Pronunciation, pauses, volume, music balance, and usage rights`\r\n  };\r\n\r\n  output.textContent = demos[demoType] || demos.general;\r\n}\r\n\r\n\r\n\r\n\r\n\r\nwindow.toggleTheme = toggleTheme;\r\nwindow.searchTools = searchTools;\r\n\r\n\r\nconst resumeAiRecommendations = [\r\n  {\r\n    name: \"ChatGPT\",\r\n    url: \"https:\/\/chatgpt.com\/\",\r\n    icon: \"\ud83d\udcac\",\r\n    keywords: [\"management\",\"planning\",\"analysis\",\"report\",\"communication\",\"email\",\"procurement\",\"inventory\",\"operations\",\"project\",\"business\",\"strategy\",\"writing\"],\r\n    benefit: \"General AI productivity, analysis, drafting, structured reports, decision support, and professional communication.\",\r\n    outcomes: [\"Create reports and management summaries faster\", \"Draft professional emails and proposals\", \"Analyse business problems and generate action plans\"]\r\n  },\r\n  {\r\n    name: \"Microsoft Copilot\",\r\n    url: \"https:\/\/copilot.microsoft.com\/\",\r\n    icon: \"\ud83e\ude9f\",\r\n    keywords: [\"excel\",\"word\",\"powerpoint\",\"outlook\",\"microsoft\",\"office\",\"dashboard\",\"report\",\"presentation\",\"data\"],\r\n    benefit: \"Best suited for users working extensively with Microsoft Office, presentations, spreadsheets, and email.\",\r\n    outcomes: [\"Automate Excel, Word, and PowerPoint work\", \"Summarise meetings and emails\", \"Create presentations and reports from business data\"]\r\n  },\r\n  {\r\n    name: \"Power BI Copilot\",\r\n    url: \"https:\/\/www.microsoft.com\/en-us\/power-platform\/products\/power-bi\",\r\n    icon: \"\ud83d\udcca\",\r\n    keywords: [\"power bi\",\"dashboard\",\"analytics\",\"data analysis\",\"excel\",\"kpi\",\"mis\",\"visualization\",\"reporting\"],\r\n    benefit: \"Helps convert operational data into dashboards, insights, KPIs, and management-ready visual reports.\",\r\n    outcomes: [\"Build interactive management dashboards\", \"Identify trends and exceptions\", \"Present KPIs in a decision-friendly format\"]\r\n  },\r\n  {\r\n    name: \"Canva AI\",\r\n    url: \"https:\/\/www.canva.com\/\",\r\n    icon: \"\ud83c\udfa8\",\r\n    keywords: [\"presentation\",\"design\",\"marketing\",\"social media\",\"training\",\"communication\",\"creative\",\"poster\",\"branding\"],\r\n    benefit: \"Useful for professional presentations, business graphics, posters, training material, and visual communication.\",\r\n    outcomes: [\"Create polished presentations quickly\", \"Design social and professional visuals\", \"Convert written ideas into visual content\"]\r\n  },\r\n  {\r\n    name: \"Gamma\",\r\n    url: \"https:\/\/gamma.app\/\",\r\n    icon: \"\ud83d\udcd1\",\r\n    keywords: [\"presentation\",\"report\",\"proposal\",\"pitch\",\"management\",\"training\",\"business\"],\r\n    benefit: \"Creates presentation drafts and visual documents quickly from short business requirements.\",\r\n    outcomes: [\"Generate presentation structure instantly\", \"Reduce slide-formatting effort\", \"Create proposals and management briefs\"]\r\n  },\r\n  {\r\n    name: \"Perplexity\",\r\n    url: \"https:\/\/www.perplexity.ai\/\",\r\n    icon: \"\ud83d\udd0e\",\r\n    keywords: [\"research\",\"strategy\",\"market\",\"analysis\",\"study\",\"policy\",\"technical\",\"engineering\",\"planning\"],\r\n    benefit: \"Useful for source-linked research, comparisons, current information, and evidence-based exploration.\",\r\n    outcomes: [\"Research topics with cited sources\", \"Compare products, methods, and policies\", \"Support planning with current information\"]\r\n  },\r\n  {\r\n    name: \"NotebookLM\",\r\n    url: \"https:\/\/notebooklm.google.com\/\",\r\n    icon: \"\ud83d\udcd8\",\r\n    keywords: [\"pdf\",\"document\",\"policy\",\"manual\",\"research\",\"study\",\"training\",\"knowledge\",\"technical\"],\r\n    benefit: \"Analyses user-provided documents and helps with summaries, questions, learning, and source-grounded understanding.\",\r\n    outcomes: [\"Summarise long PDFs and manuals\", \"Ask questions from uploaded documents\", \"Create study notes and knowledge briefs\"]\r\n  },\r\n  {\r\n    name: \"Zapier AI\",\r\n    url: \"https:\/\/zapier.com\/ai\",\r\n    icon: \"\u2699\ufe0f\",\r\n    keywords: [\"automation\",\"workflow\",\"email\",\"crm\",\"operations\",\"process\",\"approval\",\"procurement\",\"task\",\"project\"],\r\n    benefit: \"Connects business applications and automates repetitive workflows without extensive coding.\",\r\n    outcomes: [\"Automate notifications and follow-ups\", \"Connect forms, email, CRM, and task systems\", \"Reduce repetitive administrative work\"]\r\n  },\r\n  {\r\n    name: \"Claude\",\r\n    url: \"https:\/\/claude.ai\/\",\r\n    icon: \"\ud83e\udde0\",\r\n    keywords: [\"document\",\"report\",\"analysis\",\"policy\",\"writing\",\"research\",\"legal\",\"technical\",\"long\"],\r\n    benefit: \"Strong for long documents, structured analysis, writing, policies, and detailed business content.\",\r\n    outcomes: [\"Analyse lengthy documents\", \"Prepare structured reports\", \"Improve complex business writing\"]\r\n  },\r\n  {\r\n    name: \"Grammarly\",\r\n    url: \"https:\/\/www.grammarly.com\/\",\r\n    icon: \"\u270d\ufe0f\",\r\n    keywords: [\"communication\",\"email\",\"writing\",\"english\",\"training\",\"hr\",\"management\",\"customer\"],\r\n    benefit: \"Improves grammar, clarity, tone, confidence, and professional writing quality.\",\r\n    outcomes: [\"Write clearer professional emails\", \"Improve tone and grammar\", \"Build communication confidence\"]\r\n  },\r\n  {\r\n    name: \"GitHub Copilot\",\r\n    url: \"https:\/\/github.com\/features\/copilot\",\r\n    icon: \"\ud83d\udcbb\",\r\n    keywords: [\"coding\",\"developer\",\"software\",\"python\",\"javascript\",\"html\",\"sql\",\"programming\",\"automation\",\"api\"],\r\n    benefit: \"Supports code generation, debugging, explanation, and faster application development.\",\r\n    outcomes: [\"Write and understand code faster\", \"Generate repetitive code\", \"Support debugging and technical learning\"]\r\n  },\r\n  {\r\n    name: \"Cursor\",\r\n    url: \"https:\/\/www.cursor.com\/\",\r\n    icon: \"\u2328\ufe0f\",\r\n    keywords: [\"coding\",\"developer\",\"software\",\"html\",\"javascript\",\"python\",\"application\",\"website\",\"programming\"],\r\n    benefit: \"AI-first coding environment for building, editing, explaining, and troubleshooting complete applications.\",\r\n    outcomes: [\"Build applications through natural-language instructions\", \"Edit multiple project files\", \"Learn coding through explanations\"]\r\n  },\r\n  {\r\n    name: \"Otter AI\",\r\n    url: \"https:\/\/otter.ai\/\",\r\n    icon: \"\ud83c\udf99\ufe0f\",\r\n    keywords: [\"meeting\",\"training\",\"sales\",\"customer\",\"interview\",\"project\",\"management\",\"communication\"],\r\n    benefit: \"Records, transcribes, and summarises meetings with action items and searchable notes.\",\r\n    outcomes: [\"Capture meeting discussions\", \"Generate summaries and action items\", \"Reduce manual note-taking\"]\r\n  },\r\n  {\r\n    name: \"Runway\",\r\n    url: \"https:\/\/runwayml.com\/\",\r\n    icon: \"\ud83c\udfac\",\r\n    keywords: [\"video\",\"creative\",\"marketing\",\"media\",\"training\",\"content\",\"design\"],\r\n    benefit: \"AI video generation and editing for marketing, training, communication, and creative projects.\",\r\n    outcomes: [\"Create short professional videos\", \"Edit and enhance visual content\", \"Produce training and promotional media\"]\r\n  },\r\n  {\r\n    name: \"Notion AI\",\r\n    url: \"https:\/\/www.notion.so\/product\/ai\",\r\n    icon: \"\ud83d\udcd2\",\r\n    keywords: [\"notes\",\"project\",\"planning\",\"knowledge\",\"task\",\"documentation\",\"management\",\"productivity\"],\r\n    benefit: \"Combines notes, project tracking, knowledge management, and AI-assisted writing in one workspace.\",\r\n    outcomes: [\"Organise projects and notes\", \"Create summaries and action lists\", \"Build a searchable knowledge base\"]\r\n  },\r\n  {\r\n    name: \"Fireflies AI\",\r\n    url: \"https:\/\/fireflies.ai\/\",\r\n    icon: \"\ud83d\udd25\",\r\n    keywords: [\"meeting\",\"sales\",\"project\",\"customer\",\"interview\",\"notes\",\"transcription\"],\r\n    benefit: \"Captures meetings, creates summaries, identifies action items, and supports follow-up.\",\r\n    outcomes: [\"Record meeting discussions\", \"Generate action items\", \"Search past conversations\"]\r\n  },\r\n  {\r\n    name: \"Elicit\",\r\n    url: \"https:\/\/elicit.com\/\",\r\n    icon: \"\ud83d\udcda\",\r\n    keywords: [\"research\",\"study\",\"academic\",\"paper\",\"analysis\",\"evidence\",\"literature\"],\r\n    benefit: \"Supports literature review, evidence discovery, research summaries, and academic analysis.\",\r\n    outcomes: [\"Find relevant research papers\", \"Summarise evidence\", \"Accelerate literature reviews\"]\r\n  },\r\n  {\r\n    name: \"Beautiful.ai\",\r\n    url: \"https:\/\/www.beautiful.ai\/\",\r\n    icon: \"\ud83d\udcc8\",\r\n    keywords: [\"presentation\",\"management\",\"report\",\"proposal\",\"pitch\",\"business\",\"slides\"],\r\n    benefit: \"Creates structured professional presentations with automated layouts and design consistency.\",\r\n    outcomes: [\"Build executive presentations\", \"Improve slide design\", \"Reduce manual formatting\"]\r\n  }\r\n];\r\n\r\nlet selectedResumeFile = null;\r\n\r\nfunction openResumeAiScreen() {\r\n  const screen = document.getElementById(\"resumeAiScreen\");\r\n  if (!screen) return;\r\n\r\n  screen.style.display = \"block\";\r\n  screen.style.visibility = \"visible\";\r\n  screen.style.opacity = \"1\";\r\n  screen.classList.add(\"open\");\r\n  screen.setAttribute(\"aria-hidden\", \"false\");\r\n\r\n  document.documentElement.style.overflow = \"hidden\";\r\n  document.body.style.overflow = \"hidden\";\r\n}\r\n\r\nfunction closeResumeAiScreen() {\r\n  const screen = document.getElementById(\"resumeAiScreen\");\r\n  const root = document.getElementById(\"smart-ai-tools-studio\");\r\n\r\n  if (screen) {\r\n    screen.classList.remove(\"open\");\r\n    screen.setAttribute(\"aria-hidden\", \"true\");\r\n    screen.style.display = \"none\";\r\n    screen.style.visibility = \"hidden\";\r\n    screen.style.opacity = \"0\";\r\n  }\r\n\r\n  if (root) {\r\n    root.style.display = \"block\";\r\n    root.style.visibility = \"visible\";\r\n    root.style.opacity = \"1\";\r\n  }\r\n\r\n  document.documentElement.style.overflow = \"\";\r\n  document.body.style.overflow = \"\";\r\n\r\n  setTimeout(function() {\r\n    const header = document.querySelector(\"#smart-ai-tools-studio .ai-header\");\r\n    if (header) {\r\n      header.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n    } else {\r\n      window.scrollTo({ top: 0, behavior: \"smooth\" });\r\n    }\r\n  }, 80);\r\n}\r\n\r\nfunction updateResumeProgress(percent, text) {\r\n  const fill = document.getElementById(\"resumeProgressFill\");\r\n  const label = document.getElementById(\"resumeProgressText\");\r\n  if (fill) fill.style.width = percent + \"%\";\r\n  if (label) label.textContent = text;\r\n}\r\n\r\nfunction handleResumeFile(file) {\r\n  const fileName = document.getElementById(\"resumeFileName\");\r\n  const fileStatus = document.getElementById(\"resumeFileStatus\");\r\n  const analyzeBtn = document.getElementById(\"analyzeResumeBtn\");\r\n  const chooseText = document.getElementById(\"resumeChooseText\");\r\n\r\n  if (!file) {\r\n    selectedResumeFile = null;\r\n    if (fileName) fileName.textContent = \"No file selected\";\r\n    if (fileStatus) fileStatus.className = \"resume-file-status\";\r\n    if (analyzeBtn) analyzeBtn.disabled = true;\r\n    if (chooseText) chooseText.textContent = \"Choose PDF Resume\";\r\n    updateResumeProgress(0, \"Waiting for PDF resume\");\r\n    return;\r\n  }\r\n\r\n  const isPdf =\r\n    file.type === \"application\/pdf\" ||\r\n    file.name.toLowerCase().endsWith(\".pdf\");\r\n\r\n  if (!isPdf) {\r\n    selectedResumeFile = null;\r\n    if (fileName) fileName.textContent = \"Only a PDF resume is allowed.\";\r\n    if (fileStatus) fileStatus.className = \"resume-file-status error\";\r\n    if (analyzeBtn) analyzeBtn.disabled = true;\r\n    if (chooseText) chooseText.textContent = \"Choose Another PDF\";\r\n    updateResumeProgress(0, \"Invalid file type\");\r\n    return;\r\n  }\r\n\r\n  if (file.size > 15 * 1024 * 1024) {\r\n    selectedResumeFile = null;\r\n    if (fileName) fileName.textContent = \"PDF exceeds the 15 MB limit.\";\r\n    if (fileStatus) fileStatus.className = \"resume-file-status error\";\r\n    if (analyzeBtn) analyzeBtn.disabled = true;\r\n    if (chooseText) chooseText.textContent = \"Choose Smaller PDF\";\r\n    updateResumeProgress(0, \"File is too large\");\r\n    return;\r\n  }\r\n\r\n  selectedResumeFile = file;\r\n\r\n  if (fileName) {\r\n    fileName.textContent =\r\n      \"PDF uploaded: \" + file.name + \" \u2022 \" + (file.size \/ 1024 \/ 1024).toFixed(2) + \" MB\";\r\n  }\r\n\r\n  if (fileStatus) fileStatus.className = \"resume-file-status ready\";\r\n  if (analyzeBtn) analyzeBtn.disabled = false;\r\n  if (chooseText) chooseText.textContent = \"Change PDF Resume\";\r\n\r\n  updateResumeProgress(15, \"PDF uploaded successfully. Click Analyse Resume to view recommended AI tools.\");\r\n}\r\n\r\nasync function ensurePdfJsLoaded() {\r\n  if (window.pdfjsLib) return window.pdfjsLib;\r\n\r\n  const sources = [\r\n    \"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.min.js\",\r\n    \"https:\/\/cdn.jsdelivr.net\/npm\/pdfjs-dist@3.11.174\/build\/pdf.min.js\",\r\n    \"https:\/\/unpkg.com\/pdfjs-dist@3.11.174\/build\/pdf.min.js\"\r\n  ];\r\n\r\n  for (const source of sources) {\r\n    try {\r\n      await new Promise(function(resolve, reject) {\r\n        const script = document.createElement(\"script\");\r\n        script.src = source;\r\n        script.async = true;\r\n        script.onload = resolve;\r\n        script.onerror = reject;\r\n        document.head.appendChild(script);\r\n      });\r\n\r\n      if (window.pdfjsLib) return window.pdfjsLib;\r\n    } catch (error) {\r\n      \/* Try next source *\/\r\n    }\r\n  }\r\n\r\n  throw new Error(\"PDF reader unavailable\");\r\n}\r\n\r\nasync function extractResumeText(file) {\r\n  const pdfjs = await ensurePdfJsLoaded();\r\n\r\n  pdfjs.GlobalWorkerOptions.workerSrc =\r\n    \"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/pdf.js\/3.11.174\/pdf.worker.min.js\";\r\n\r\n  const arrayBuffer = await file.arrayBuffer();\r\n  const pdf = await pdfjs.getDocument({ data: arrayBuffer }).promise;\r\n  let fullText = \"\";\r\n\r\n  for (let pageNumber = 1; pageNumber <= pdf.numPages; pageNumber++) {\r\n    updateResumeProgress(\r\n      15 + Math.round((pageNumber \/ pdf.numPages) * 45),\r\n      \"Reading page \" + pageNumber + \" of \" + pdf.numPages\r\n    );\r\n\r\n    const page = await pdf.getPage(pageNumber);\r\n    const textContent = await page.getTextContent();\r\n    const pageText = textContent.items\r\n      .map(function(item) { return item.str || \"\"; })\r\n      .join(\" \");\r\n\r\n    fullText += \" \" + pageText;\r\n  }\r\n\r\n  return {\r\n    text: fullText.replace(\/\\s+\/g, \" \").trim(),\r\n    pages: pdf.numPages\r\n  };\r\n}\r\n\r\nfunction detectResumeProfile(text) {\r\n  const lower = text.toLowerCase();\r\n\r\n  const skillDictionary = [\r\n    \"excel\",\"power bi\",\"tableau\",\"sql\",\"python\",\"javascript\",\"html\",\"css\",\"sap\",\r\n    \"procurement\",\"inventory\",\"supply chain\",\"project management\",\"operations\",\r\n    \"data analysis\",\"dashboard\",\"mis\",\"reporting\",\"planning\",\"strategy\",\"finance\",\r\n    \"marketing\",\"sales\",\"human resources\",\"hr\",\"customer service\",\"engineering\",\r\n    \"electrical\",\"automation\",\"communication\",\"training\",\"presentation\",\"research\",\r\n    \"word\",\"powerpoint\",\"outlook\",\"vba\",\"power query\",\"machine learning\",\"ai\"\r\n  ];\r\n\r\n  const foundSkills = skillDictionary.filter(skill => lower.includes(skill));\r\n\r\n  const yearsMatches = [...lower.matchAll(\/(\\d{1,2})\\+?\\s*(?:years|yrs)\/g)]\r\n    .map(match => Number(match[1]))\r\n    .filter(value => value > 0 && value < 60);\r\n\r\n  const experienceYears = yearsMatches.length ? Math.max(...yearsMatches) : null;\r\n\r\n  let seniority = \"Professional\";\r\n  if (experienceYears !== null) {\r\n    if (experienceYears >= 15) seniority = \"Senior Leader\";\r\n    else if (experienceYears >= 8) seniority = \"Experienced Professional\";\r\n    else if (experienceYears >= 3) seniority = \"Mid-Level Professional\";\r\n    else seniority = \"Early-Career Professional\";\r\n  }\r\n\r\n  const roleSignals = [\r\n    { label: \"Data & Analytics\", keys: [\"data analysis\",\"power bi\",\"dashboard\",\"sql\",\"excel\",\"tableau\",\"reporting\",\"mis\"] },\r\n    { label: \"Operations & Supply Chain\", keys: [\"procurement\",\"inventory\",\"supply chain\",\"operations\",\"stores\",\"vendor\",\"material\"] },\r\n    { label: \"Project & Management\", keys: [\"project management\",\"planning\",\"strategy\",\"management\",\"pmo\",\"leadership\"] },\r\n    { label: \"Technology & Development\", keys: [\"python\",\"javascript\",\"html\",\"css\",\"developer\",\"software\",\"coding\",\"api\"] },\r\n    { label: \"Marketing & Communication\", keys: [\"marketing\",\"sales\",\"communication\",\"content\",\"social media\",\"branding\"] },\r\n    { label: \"Engineering\", keys: [\"engineering\",\"electrical\",\"mechanical\",\"civil\",\"maintenance\",\"technical\"] }\r\n  ];\r\n\r\n  const roleScores = roleSignals.map(role => ({\r\n    label: role.label,\r\n    score: role.keys.reduce((sum, key) => sum + (lower.includes(key) ? 1 : 0), 0)\r\n  })).sort((a, b) => b.score - a.score);\r\n\r\n  const careerFocus = roleScores[0].score > 0 ? roleScores[0].label : \"General Business & Productivity\";\r\n\r\n  return {\r\n    foundSkills,\r\n    experienceYears,\r\n    seniority,\r\n    careerFocus,\r\n    wordCount: text.split(\/\\s+\/).filter(Boolean).length\r\n  };\r\n}\r\n\r\nfunction recommendToolsFromResume(text, profile) {\r\n  const lower = text.toLowerCase();\r\n\r\n  const ranked = resumeAiRecommendations.map(tool => {\r\n    let score = 0;\r\n\r\n    tool.keywords.forEach(keyword => {\r\n      if (lower.includes(keyword)) score += keyword.includes(\" \") ? 5 : 3;\r\n    });\r\n\r\n    if (profile.careerFocus === \"Data & Analytics\" &&\r\n        [\"Microsoft Copilot\",\"Power BI Copilot\",\"ChatGPT\",\"Perplexity\"].includes(tool.name)) score += 6;\r\n\r\n    if (profile.careerFocus === \"Operations & Supply Chain\" &&\r\n        [\"ChatGPT\",\"Microsoft Copilot\",\"Zapier AI\",\"Power BI Copilot\"].includes(tool.name)) score += 6;\r\n\r\n    if (profile.careerFocus === \"Project & Management\" &&\r\n        [\"ChatGPT\",\"Microsoft Copilot\",\"Gamma\",\"Otter AI\"].includes(tool.name)) score += 6;\r\n\r\n    if (profile.careerFocus === \"Technology & Development\" &&\r\n        [\"GitHub Copilot\",\"Cursor\",\"ChatGPT\",\"Claude\"].includes(tool.name)) score += 7;\r\n\r\n    if (profile.careerFocus === \"Marketing & Communication\" &&\r\n        [\"Canva AI\",\"ChatGPT\",\"Grammarly\",\"Runway\"].includes(tool.name)) score += 7;\r\n\r\n    if (profile.careerFocus === \"Engineering\" &&\r\n        [\"ChatGPT\",\"Microsoft Copilot\",\"NotebookLM\",\"Perplexity\"].includes(tool.name)) score += 6;\r\n\r\n    return { ...tool, score };\r\n  });\r\n\r\n  return ranked.sort((a, b) => b.score - a.score).slice(0, 10);\r\n}\r\n\r\n\r\nfunction getResumeTopicForTool(toolName, profile) {\r\n  const focus = (profile && profile.careerFocus) || \"General Business & Productivity\";\r\n\r\n  const map = {\r\n    \"ChatGPT\": {\r\n      \"Data & Analytics\": \"KPI analysis, management summaries, data interpretation, and insight generation\",\r\n      \"Operations & Supply Chain\": \"Inventory analysis, procurement planning, process improvement, and vendor communication\",\r\n      \"Project & Management\": \"Project planning, action tracking, management reports, and decision support\",\r\n      \"Technology & Development\": \"Code explanation, debugging, technical documentation, and solution design\",\r\n      \"Marketing & Communication\": \"Content writing, campaign ideas, customer communication, and brand messaging\",\r\n      \"Engineering\": \"Technical reports, maintenance analysis, troubleshooting, and engineering documentation\",\r\n      \"default\": \"Professional communication, business analysis, report writing, planning, and problem-solving\"\r\n    },\r\n    \"Microsoft Copilot\": {\r\n      \"Data & Analytics\": \"Excel analysis, Power BI summaries, dashboards, and management presentations\",\r\n      \"Operations & Supply Chain\": \"Inventory tracking, procurement reports, and workflow documentation\",\r\n      \"Project & Management\": \"Project reports, PowerPoint updates, meeting summaries, and email follow-ups\",\r\n      \"Engineering\": \"Engineering reports, Excel calculations, technical presentations, and documentation\",\r\n      \"default\": \"Excel, Word, PowerPoint, Outlook, and Microsoft 365 productivity\"\r\n    },\r\n    \"Power BI Copilot\": {\r\n      \"Data & Analytics\": \"Interactive dashboards, trend analysis, KPI monitoring, and executive reporting\",\r\n      \"Operations & Supply Chain\": \"Inventory dashboards, procurement status, stock ageing, and operational KPIs\",\r\n      \"Project & Management\": \"Project dashboards, milestone tracking, budget monitoring, and status reporting\",\r\n      \"Engineering\": \"Maintenance KPIs, failure analysis, asset dashboards, and engineering performance\",\r\n      \"default\": \"Dashboard creation, KPI reporting, data visualization, and management insights\"\r\n    },\r\n    \"Canva AI\": {\r\n      \"Marketing & Communication\": \"Social content, campaign creatives, posters, and brand presentations\",\r\n      \"Project & Management\": \"Project update decks, timelines, status visuals, and stakeholder presentations\",\r\n      \"Engineering\": \"Technical diagrams, safety visuals, process illustrations, and training slides\",\r\n      \"default\": \"Presentations, posters, social media graphics, and visual communication\"\r\n    },\r\n    \"Gamma\": {\r\n      \"Data & Analytics\": \"Data-storytelling presentations, KPI reports, and executive summaries\",\r\n      \"Operations & Supply Chain\": \"Procurement reviews, inventory analysis decks, and process presentations\",\r\n      \"Project & Management\": \"Project proposals, review decks, status reports, and implementation plans\",\r\n      \"default\": \"AI-generated presentations, proposals, reports, and visual documents\"\r\n    },\r\n    \"Perplexity\": {\r\n      \"Operations & Supply Chain\": \"Vendor research, procurement benchmarks, policy comparison, and market intelligence\",\r\n      \"Technology & Development\": \"Technical research, product comparison, and current technology updates\",\r\n      \"Engineering\": \"Technical standards, equipment research, engineering comparisons, and source-based study\",\r\n      \"default\": \"Research, comparison, source-based answers, and current information\"\r\n    },\r\n    \"NotebookLM\": {\r\n      \"Operations & Supply Chain\": \"Procurement documents, manuals, inventory reports, and policy review\",\r\n      \"Project & Management\": \"Project documents, meeting notes, policies, and source-based summaries\",\r\n      \"Engineering\": \"Technical manuals, specifications, and engineering documents\",\r\n      \"default\": \"PDF analysis, document summarization, source-grounded Q&A, and learning\"\r\n    },\r\n    \"Zapier AI\": {\r\n      \"Operations & Supply Chain\": \"Procurement alerts, stock notifications, approvals, and vendor follow-ups\",\r\n      \"Project & Management\": \"Task automation, status alerts, meeting follow-ups, and project workflows\",\r\n      \"Engineering\": \"Maintenance alerts, work-order notifications, and inspection workflow automation\",\r\n      \"default\": \"Workflow automation, notifications, app integration, and repetitive task reduction\"\r\n    },\r\n    \"Claude\": {\r\n      \"Operations & Supply Chain\": \"Policy review, procurement analysis, inventory reports, and business documentation\",\r\n      \"Project & Management\": \"Project reports, risk analysis, proposals, and long-form documentation\",\r\n      \"Engineering\": \"Technical reports, specifications, risk analysis, and engineering documentation\",\r\n      \"default\": \"Long-document analysis, structured writing, policies, and detailed reports\"\r\n    },\r\n    \"Grammarly\": {\r\n      \"Operations & Supply Chain\": \"Vendor emails, procurement communication, and action-oriented reporting\",\r\n      \"Project & Management\": \"Project updates, stakeholder communication, and professional documentation\",\r\n      \"Engineering\": \"Technical emails, reports, and clear engineering communication\",\r\n      \"default\": \"Grammar, clarity, tone, and professional writing improvement\"\r\n    },\r\n    \"GitHub Copilot\": {\r\n      \"Technology & Development\": \"Application development, debugging, code completion, and technical learning\",\r\n      \"default\": \"Code generation, debugging, test creation, and developer productivity\"\r\n    },\r\n    \"Cursor\": {\r\n      \"Technology & Development\": \"Building full applications, understanding codebases, debugging, and rapid development\",\r\n      \"default\": \"AI-assisted application building, code editing, debugging, and multi-file development\"\r\n    },\r\n    \"Otter AI\": {\r\n      \"Project & Management\": \"Project meeting notes, action tracking, decisions, and follow-ups\",\r\n      \"Marketing & Communication\": \"Sales calls, interviews, meeting summaries, and customer discussions\",\r\n      \"default\": \"Meeting transcription, summaries, notes, and action-item capture\"\r\n    },\r\n    \"Runway\": {\r\n      \"Marketing & Communication\": \"Promotional videos, social media content, campaign visuals, and brand storytelling\",\r\n      \"Engineering\": \"Training videos, process demonstrations, and technical communication\",\r\n      \"default\": \"AI video generation, editing, visual content, and creative media\"\r\n    },\r\n    \"Notion AI\": {\r\n      \"Project & Management\": \"Project planning, action tracking, knowledge management, and task documentation\",\r\n      \"Operations & Supply Chain\": \"Process notes, SOP documentation, procurement tracking, and team knowledge\",\r\n      \"default\": \"Notes, project management, knowledge organisation, and productivity\"\r\n    },\r\n    \"Fireflies AI\": {\r\n      \"Project & Management\": \"Meeting transcription, decisions, action items, and follow-up tracking\",\r\n      \"Marketing & Communication\": \"Sales calls, customer discussions, and meeting summaries\",\r\n      \"default\": \"Meeting notes, transcription, summaries, and action tracking\"\r\n    },\r\n    \"Elicit\": {\r\n      \"Data & Analytics\": \"Evidence-based research, literature review, and analytical study\",\r\n      \"Engineering\": \"Technical research, academic references, and evidence discovery\",\r\n      \"default\": \"Research papers, literature review, evidence summaries, and academic analysis\"\r\n    },\r\n    \"Beautiful.ai\": {\r\n      \"Project & Management\": \"Management presentations, project reviews, proposals, and stakeholder updates\",\r\n      \"Data & Analytics\": \"KPI presentations, executive summaries, and visual reporting\",\r\n      \"default\": \"Professional presentations, proposals, and business reports\"\r\n    }\r\n  };\r\n\r\n  const item = map[toolName] || {};\r\n  return item[focus] || item.default || \"AI productivity and career development\";\r\n}\r\n\r\nfunction renderResumeAnalysis(profile, recommendations, pages, warningMessage) {\r\n  const results = document.getElementById(\"resumeResults\");\r\n  if (!results) return;\r\n\r\n  const skills = profile.foundSkills && profile.foundSkills.length\r\n    ? profile.foundSkills\r\n    : [\"Professional communication\", \"Productivity\", \"Business problem-solving\"];\r\n\r\n  const safeRecommendations =\r\n    recommendations && recommendations.length\r\n      ? recommendations\r\n      : resumeAiRecommendations.slice(0, 10);\r\n\r\n  results.innerHTML = `\r\n    ${warningMessage ? `\r\n      <div class=\"resume-analysis-warning\">\r\n        <strong>Note:<\/strong> ${warningMessage}\r\n      <\/div>\r\n    ` : \"\"}\r\n\r\n    <div class=\"resume-summary-grid\">\r\n      <div class=\"resume-summary-card\">\r\n        <span>Career focus<\/span>\r\n        <strong>${profile.careerFocus || \"General Business & Productivity\"}<\/strong>\r\n      <\/div>\r\n      <div class=\"resume-summary-card\">\r\n        <span>Professional level<\/span>\r\n        <strong>${profile.seniority || \"Professional\"}<\/strong>\r\n      <\/div>\r\n      <div class=\"resume-summary-card\">\r\n        <span>Experience detected<\/span>\r\n        <strong>${\r\n          profile.experienceYears !== null && profile.experienceYears !== undefined\r\n            ? profile.experienceYears + \"+ years\"\r\n            : \"Not clearly stated\"\r\n        }<\/strong>\r\n      <\/div>\r\n      <div class=\"resume-summary-card\">\r\n        <span>Resume analysed<\/span>\r\n        <strong>${pages || 1} page${pages === 1 ? \"\" : \"s\"}<\/strong>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"resume-analysis-section\">\r\n      <h3>Skills Identified from the Resume<\/h3>\r\n      <div class=\"resume-skill-tags\">\r\n        ${skills.map(function(skill) {\r\n          return `<span class=\"resume-skill-tag\">${skill}<\/span>`;\r\n        }).join(\"\")}\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"resume-analysis-section\">\r\n      <h3>Recommended AI Tools Based on Your Resume<\/h3><p style=\"color:var(--text-soft);margin:-5px 0 16px;line-height:1.55;\">At least 10 AI tools are recommended below. Each recommendation shows the resume topic the tool can solve, its benefits, and a clickable official URL.<\/p>\r\n      <div class=\"resume-tools-grid\">\r\n        ${safeRecommendations.map(function(tool, index) {\r\n          return `\r\n            <article class=\"resume-tool-recommendation\">\r\n              <div class=\"resume-tool-head\">\r\n                <div class=\"resume-tool-icon\">${tool.icon}<\/div>\r\n                <div>\r\n                  <div style=\"color:var(--accent-2);font-size:12px;font-weight:900;margin-bottom:3px;\">\r\n                    Recommendation ${index + 1}\r\n                  <\/div>\r\n                  <h4>${tool.name}<\/h4>\r\n                <\/div>\r\n              <\/div>\r\n\r\n              <p>${tool.benefit}<\/p>\r\n\r\n              <div class=\"resume-topic-box\">\r\n                <span>Resume topic this tool can solve<\/span>\r\n                <strong>${getResumeTopicForTool(tool.name, profile)}<\/strong>\r\n              <\/div>\r\n\r\n              <div class=\"resume-benefit-list\">\r\n                ${(tool.outcomes || []).map(function(item) {\r\n                  return `\r\n                    <div class=\"resume-benefit-item\">\r\n                      <span>\u2713<\/span>\r\n                      <span>${item}<\/span>\r\n                    <\/div>\r\n                  `;\r\n                }).join(\"\")}\r\n              <\/div>\r\n\r\n              <div class=\"resume-url-label\">Official URL<\/div>\r\n              <a\r\n                class=\"resume-tool-open\"\r\n                href=\"${tool.url}\"\r\n                target=\"_blank\"\r\n                rel=\"noopener noreferrer\"\r\n                title=\"Open ${tool.name}\"\r\n              >\r\n                ${tool.url.replace(\/^https?:\\\/\\\/\/, \"\").replace(\/\\\/$\/, \"\")} \u2197\r\n              <\/a>\r\n            <\/article>\r\n          `;\r\n        }).join(\"\")}\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"resume-disclaimer\">\r\n      <strong>Important:<\/strong> Recommendations are based on professional terms,\r\n      skills, and career signals identified in the uploaded resume.\r\n    <\/div>\r\n  `;\r\n\r\n  results.style.display = \"block\";\r\n  results.style.visibility = \"visible\";\r\n  results.style.opacity = \"1\";\r\n}\r\n\r\nasync function analyzeUploadedResume() {\r\n  if (!selectedResumeFile) return;\r\n\r\n  const analyzeBtn = document.getElementById(\"analyzeResumeBtn\");\r\n  if (analyzeBtn) analyzeBtn.disabled = true;\r\n\r\n  try {\r\n    updateResumeProgress(12, \"Opening PDF resume\");\r\n    const extracted = await extractResumeText(selectedResumeFile);\r\n\r\n    let profile;\r\n    let recommendations;\r\n    let warningMessage = \"\";\r\n\r\n    if (extracted.text && extracted.text.length >= 80) {\r\n      updateResumeProgress(68, \"Identifying skills and career focus\");\r\n      profile = detectResumeProfile(extracted.text);\r\n\r\n      updateResumeProgress(84, \"Matching suitable AI tools\");\r\n      recommendations = recommendToolsFromResume(extracted.text, profile);\r\n    } else {\r\n      profile = {\r\n        foundSkills: [\"Professional communication\", \"Productivity\", \"Document management\"],\r\n        experienceYears: null,\r\n        seniority: \"Professional\",\r\n        careerFocus: \"General Business & Productivity\",\r\n        wordCount: 0\r\n      };\r\n\r\n      recommendations = resumeAiRecommendations.slice(0, 10);\r\n      warningMessage =\r\n        \"Limited readable text was found in the PDF. General professional AI-tool recommendations are displayed.\";\r\n    }\r\n\r\n    renderResumeAnalysis(\r\n      profile,\r\n      recommendations,\r\n      extracted.pages || 1,\r\n      warningMessage\r\n    );\r\n\r\n    updateResumeProgress(100, \"Resume analysis completed\");\r\n\r\n    const results = document.getElementById(\"resumeResults\");\r\n    if (results) {\r\n      setTimeout(function() {\r\n        results.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n      }, 100);\r\n    }\r\n  } catch (error) {\r\n    const fallbackProfile = {\r\n      foundSkills: [\"Professional communication\", \"Productivity\", \"Business analysis\"],\r\n      experienceYears: null,\r\n      seniority: \"Professional\",\r\n      careerFocus: \"General Business & Productivity\",\r\n      wordCount: 0\r\n    };\r\n\r\n    renderResumeAnalysis(\r\n      fallbackProfile,\r\n      resumeAiRecommendations.slice(0, 10),\r\n      1,\r\n      \"The PDF text could not be fully extracted. General AI-tool recommendations are displayed.\"\r\n    );\r\n\r\n    updateResumeProgress(100, \"Recommendations displayed\");\r\n\r\n    const results = document.getElementById(\"resumeResults\");\r\n    if (results) {\r\n      setTimeout(function() {\r\n        results.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n      }, 100);\r\n    }\r\n  } finally {\r\n    if (analyzeBtn) analyzeBtn.disabled = false;\r\n  }\r\n}\r\n\r\nfunction resetResumeAdvisor() {\r\n  selectedResumeFile = null;\r\n  const input = document.getElementById(\"resumePdfInput\");\r\n  const fileName = document.getElementById(\"resumeFileName\");\r\n  const analyzeBtn = document.getElementById(\"analyzeResumeBtn\");\r\n  const results = document.getElementById(\"resumeResults\");\r\n  const fileStatus = document.getElementById(\"resumeFileStatus\");\r\n  const chooseText = document.getElementById(\"resumeChooseText\");\r\n\r\n  if (input) input.value = \"\";\r\n  if (fileName) fileName.textContent = \"No file selected\";\r\n  if (fileStatus) fileStatus.className = \"resume-file-status\";\r\n  if (chooseText) chooseText.textContent = \"Choose PDF Resume\";\r\n  if (analyzeBtn) analyzeBtn.disabled = true;\r\n\r\n  updateResumeProgress(0, \"Waiting for PDF resume\");\r\n\r\n  if (results) {\r\n    results.innerHTML = `\r\n      <div class=\"resume-empty-state\">\r\n        <div>\ud83e\udd16<\/div>\r\n        <h3>Your AI learning recommendations will appear here<\/h3>\r\n        <p>The analysis runs locally in your browser. No API key is required.<\/p>\r\n      <\/div>\r\n    `;\r\n  }\r\n}\r\n\r\nfunction bindResumeAiEvents() {\r\n  const launch = document.getElementById(\"resumeAiLaunchBtn\");\r\n  const close = document.getElementById(\"resumeAiCloseBtn\");\r\n  const input = document.getElementById(\"resumePdfInput\");\r\n  const analyze = document.getElementById(\"analyzeResumeBtn\");\r\n  const reset = document.getElementById(\"resetResumeBtn\");\r\n  const dropZone = document.getElementById(\"resumeDropZone\");\r\n  const screen = document.getElementById(\"resumeAiScreen\");\r\n\r\n  if (launch && !launch.dataset.resumeBound) {\r\n    const openHandler = function(event) {\r\n      event.preventDefault();\r\n      event.stopPropagation();\r\n      openResumeAiScreen();\r\n      return false;\r\n    };\r\n\r\n    launch.addEventListener(\"click\", openHandler, true);\r\n    launch.addEventListener(\"pointerup\", openHandler, true);\r\n    launch.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n  if (close && !close.dataset.resumeBound) {\r\n    close.addEventListener(\"click\", function(event) {\r\n      event.preventDefault();\r\n      event.stopPropagation();\r\n      closeResumeAiScreen();\r\n    }, true);\r\n    close.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n\r\n\r\n  if (reset && !reset.dataset.resumeBound) {\r\n    reset.addEventListener(\"click\", function(event) {\r\n      event.preventDefault();\r\n      resetResumeAdvisor();\r\n    });\r\n    reset.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n  if (input && !input.dataset.resumeBound) {\r\ninput.addEventListener(\"change\", function(event) {\r\n      const selectedFile = event.target.files && event.target.files.length\r\n        ? event.target.files[0]\r\n        : null;\r\n\r\n      handleResumeFile(selectedFile);\r\n    });\r\n\r\n    input.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n  if (dropZone && !dropZone.dataset.resumeBound) {\r\n    [\"dragenter\", \"dragover\"].forEach(function(eventName) {\r\n      dropZone.addEventListener(eventName, function(event) {\r\n        event.preventDefault();\r\n        dropZone.classList.add(\"dragover\");\r\n      });\r\n    });\r\n\r\n    [\"dragleave\", \"drop\"].forEach(function(eventName) {\r\n      dropZone.addEventListener(eventName, function(event) {\r\n        event.preventDefault();\r\n        dropZone.classList.remove(\"dragover\");\r\n      });\r\n    });\r\n\r\n    dropZone.addEventListener(\"drop\", function(event) {\r\n      const file = event.dataTransfer.files && event.dataTransfer.files[0];\r\n      handleResumeFile(file);\r\n    });\r\n\r\n    dropZone.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n  if (screen && !screen.dataset.resumeBound) {\r\n    screen.addEventListener(\"click\", function(event) {\r\n      if (event.target === screen) {\r\n        closeResumeAiScreen();\r\n      }\r\n    });\r\n    screen.dataset.resumeBound = \"true\";\r\n  }\r\n\r\n  if (!document.documentElement.dataset.resumeEscBound) {\r\n    document.addEventListener(\"keydown\", function(event) {\r\n      if (event.key === \"Escape\" && screen && screen.classList.contains(\"open\")) {\r\n        closeResumeAiScreen();\r\n      }\r\n    });\r\n    document.documentElement.dataset.resumeEscBound = \"true\";\r\n  }\r\n}\r\n\r\n\r\nwindow.openResumeAiScreen = openResumeAiScreen;\r\nwindow.closeResumeAiScreen = closeResumeAiScreen;\r\nwindow.handleResumeFile = handleResumeFile;\r\nwindow.analyzeUploadedResume = analyzeUploadedResume;\r\n\r\nwindow.receiveResumePdf = function(file) {\r\n  handleResumeFile(file || null);\r\n};\r\n\r\n\r\nfunction bindSmartAIToolEvents() {\r\n  const launchBtn = document.getElementById(\"finderLaunchBtn\");\r\n  const findBtn = document.getElementById(\"findRequirementBtn\");\r\n  const demoBtn = document.getElementById(\"runToolDemoBtn\");\r\n  const requirementInput = document.getElementById(\"requirementInput\");\r\n  const resultsBox = document.getElementById(\"requirementResults\");\r\n\r\n  if (launchBtn && !launchBtn.dataset.bound) {\r\n    launchBtn.addEventListener(\"click\", toggleRequirementFinder);\r\n    launchBtn.dataset.bound = \"true\";\r\n  }\r\n\r\n  if (findBtn && !findBtn.dataset.bound) {\r\n    findBtn.addEventListener(\"click\", findToolsByRequirement);\r\n    findBtn.dataset.bound = \"true\";\r\n  }\r\n\r\n  if (demoBtn && !demoBtn.dataset.bound) {\r\n    demoBtn.addEventListener(\"click\", runSelectedToolDemo);\r\n    demoBtn.dataset.bound = \"true\";\r\n  }\r\n\r\n  if (requirementInput && !requirementInput.dataset.bound) {\r\n    requirementInput.addEventListener(\"keydown\", function(event) {\r\n      if (event.key === \"Enter\") {\r\n        event.preventDefault();\r\n        findToolsByRequirement();\r\n      }\r\n    });\r\n    requirementInput.dataset.bound = \"true\";\r\n  }\r\n\r\n\r\n  if (backBtn && !backBtn.dataset.bound) {\r\n    backBtn.addEventListener(\"click\", function() {\r\n      const finder = document.getElementById(\"requirementFinder\");\r\n      if (finder && finder.classList.contains(\"finder-active\")) {\r\n        toggleRequirementFinder();\r\n      }\r\n    });\r\n    backBtn.dataset.bound = \"true\";\r\n  }\r\n\r\n  if (resultsBox && !resultsBox.dataset.bound) {\r\n    resultsBox.addEventListener(\"click\", function(event) {\r\n      const actionButton = event.target.closest(\".select-tool-btn\");\r\n\r\n      if (actionButton) {\r\n        event.preventDefault();\r\n        event.stopPropagation();\r\n\r\n        const buttonToolName = decodeURIComponent(\r\n          actionButton.dataset.toolName || \"\"\r\n        );\r\n\r\n        showFinderToolDetails(encodeURIComponent(buttonToolName));\r\n        return;\r\n      }\r\n\r\n      const externalLink = event.target.closest(\"a\");\r\n      if (externalLink) return;\r\n\r\n      const card = event.target.closest(\".finder-result-card\");\r\n      if (!card) return;\r\n\r\n      const cardToolName = decodeURIComponent(card.dataset.toolName || \"\");\r\n      selectRequirementTool(cardToolName);\r\n    });\r\n\r\n    resultsBox.addEventListener(\"keydown\", function(event) {\r\n      if (event.key !== \"Enter\" && event.key !== \" \") return;\r\n\r\n      const card = event.target.closest(\".finder-result-card\");\r\n      if (!card) return;\r\n\r\n      event.preventDefault();\r\n\r\n      const cardToolName = decodeURIComponent(card.dataset.toolName || \"\");\r\n      selectRequirementTool(cardToolName);\r\n    });\r\n\r\n    resultsBox.dataset.bound = \"true\";\r\n  }\r\n}\r\n\r\n\r\nfunction ensureResumeAiButtonIsBound() {\r\n  bindResumeAiEvents();\r\n\r\n  let attempts = 0;\r\n  const timer = setInterval(function() {\r\n    attempts += 1;\r\n    bindResumeAiEvents();\r\n\r\n    const launch = document.getElementById(\"resumeAiLaunchBtn\");\r\n    if ((launch && launch.dataset.resumeBound === \"true\") || attempts >= 10) {\r\n      clearInterval(timer);\r\n    }\r\n  }, 300);\r\n}\r\n\r\nfunction initializeSmartAIToolsStudio() {\r\n  loadTheme();\r\n  createTabs();\r\n  renderTools(aiData[currentCategory].slice(0, 20));\r\n  bindSmartAIToolEvents();\r\n  ensureResumeAiButtonIsBound();\r\n}\r\n\r\n\r\nif (document.readyState === \"loading\") {\r\n  document.addEventListener(\"DOMContentLoaded\", initializeSmartAIToolsStudio);\r\n} else {\r\n  initializeSmartAIToolsStudio();\r\n}\r\n\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\ud83c\udf19 Dark Mode AI Tool Smart AI Tools Studio Search by selecting a category or type your requirement, like image generation, video editing, resume, research, coding, PDF, automation, presentation, or meeting notes. \ud83d\udd0d Find AI Tool for My Requirement Find the Best AI Tool for Your Requirement Describe what you want to do, select your [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-126","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/pages\/126","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/comments?post=126"}],"version-history":[{"count":80,"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/pages\/126\/revisions"}],"predecessor-version":[{"id":759,"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/pages\/126\/revisions\/759"}],"wp:attachment":[{"href":"https:\/\/vikassrivastava.in\/academy\/wp-json\/wp\/v2\/media?parent=126"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}