/* ============================================
   Business Tools - Shared Styles
   All business tools share these styles
   ============================================ */

/*---------------------------------------------
   1. SCROLLABLE CONTAINERS
----------------------------------------------*/
.scroll-container {
  position: relative;
  margin: 1.5rem 0;
  width: 100%;
}

.scroll-wrapper {
  display: flex;
  gap: 0.75rem;
  scroll-behavior: smooth;
  padding: 0.5rem 0 1rem 0;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.scroll-wrapper::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

.scroll-wrapper::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.scroll-wrapper::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

/* Horizontal scroll */
.scroll-wrapper.horizontal {
  overflow-x: auto;
  flex-wrap: nowrap;
}

/* Vertical scroll */
.scroll-wrapper.vertical {
  overflow-y: auto;
  flex-wrap: wrap;
  max-height: 300px;
}

/*---------------------------------------------
   2. SCROLL ARROWS
----------------------------------------------*/
.scroll-arrow {
  position: absolute;
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  font-size: 1.2rem;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3) !important;
  border-color: #3f7cf3 !important;
}

/* Arrow positions */
.scroll-arrow.left {
  left: -5px;
  top: 50%;
  transform: translateY(-50%);
}

.scroll-arrow.right {
  right: -5px;
  top: 50%;
  transform: translateY(-50%);
}

.scroll-arrow.up {
  top: 1.5px;
  left: 90%;
  transform: translateX(-50%);
}

.scroll-arrow.down {
  bottom: 1.5px;
  left: 90%;
  transform: translateX(-50%);
}

/* Mobile: always show arrows */
@media (max-width: 768px) {
  .scroll-arrow {
    display: flex !important;
  }
}

/* Desktop: hide by default, show via JS */
@media (min-width: 769px) {
  .scroll-arrow {
    display: none;
  }
}

/*---------------------------------------------
   3. INPUT FIELDS
----------------------------------------------*/
.input {
  background: rgba(255,255,255,0.05);
  color: var(--text, #eaeaea);
  border: 1px solid rgba(199,197,197,0.20);
  transition: background .2s ease, border-color .2s ease;
  outline: none !important;
  box-shadow: none !important;
  width: 100%;
  padding: 12px 14px;
  border-radius: 12px;
}

.input:focus {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.25);
}

.input::placeholder {
  color: #9E9B9B;
  opacity: .5;
}

select.input {
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234299e1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
  padding-right: 40px;
}

/*---------------------------------------------
   4. BUTTONS
----------------------------------------------*/
/*.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  border: 1px solid #3b3f5a;
  border-radius: 14px;
  background: linear-gradient(135deg, #1b2142, #131a33);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  cursor: pointer;
}

.btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px -12px #0ea5e99e;
  border-color: #4a69ff;
}
.btn-primary {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border: none;
}

.btn-secondary {
  background: linear-gradient(135deg, #2d3748, #1a202c);
  border: 1px solid #4a5568;
}

.btn-sm {
  padding: 8px 14px;
  font-size: 0.9rem;
}

*/
/*---------------------------------------------
   5. SLOGAN CARDS
----------------------------------------------*/
.slogan-results {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  margin: 1.5rem 0;
}

.slogan-card {
  background: linear-gradient(180deg, #0e1433, #0c122b);
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1rem;
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.slogan-card:hover {
  transform: translateY(-2px);
  border-color: #3d56ff;
}

.slogan-content {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.slogan-text {
  font-size: 1.1rem;
  line-height: 1.4;
  color: white;
  word-break: break-word;
}

.slogan-actions {
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
}

.slogan-copy, .slogan-favorite {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.5rem 0.75rem;
  color: #718096;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1rem;
}

.slogan-copy:hover, .slogan-favorite:hover {
  background: #2d3748;
  color: white;
  border-color: #4299e1;
}

.slogan-favorite.favorited {
  color: #fbbf24;
  border-color: #fbbf24;
}
/*
.slogan-copy.copied {
  color: #22c55e;
  border-color: #22c55e;
}
*/
/*---------------------------------------------
   6. FAVORITES PANEL
----------------------------------------------*/
.favorites-panel {
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1.5rem;
  margin: 2rem 0;
}

.favorites-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 1.5rem 0;
  max-height: 300px;
  overflow-y: auto;
  padding-right: 0.5rem;
}

.favorite-item {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 10px;
  padding: 0.75rem 1rem;
}

.favorite-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.favorite-text {
  color: white;
  font-size: 1rem;
  flex: 1;
  word-break: break-word;
}

.favorite-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.favorite-copy, .favorite-remove {
  background: transparent;
  border: none;
  color: #718096;
  cursor: pointer;
  font-size: 1.1rem;
  padding: 0.25rem 0.5rem;
  transition: all 0.2s ease;
}

.favorite-copy:hover {
  color: #4299e1;
}

.favorite-remove:hover {
  color: #fc8181;
}

.favorite-copy.copied {
  color: #22c55e;
}

/*---------------------------------------------
   7. CONTROLS
----------------------------------------------*/
.controls-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
  margin: 1.5rem 0;
}

.control-group {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.control-group label {
  color: #4299e1;
  font-size: 0.9rem;
  font-weight: 600;
}

.actions-row {
  display: flex;
  gap: 1rem;
  margin: 1.5rem 0;
  flex-wrap: wrap;
}

.favorites-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/*---------------------------------------------
   8. STATS
----------------------------------------------*/
.stats-row {
  display: flex;
  gap: 1.5rem;
  color: #718096;
  font-size: 0.95rem;
  margin: 1rem 0;
  flex-wrap: wrap;
}

/*---------------------------------------------
   9. MOBILE OVERRIDES
----------------------------------------------*/
@media (max-width: 768px) {
  .slogan-results {
    grid-template-columns: 1fr;
  }
  
  .controls-row {
    grid-template-columns: 1fr;
  }
  
  .actions-row {
    flex-direction: column;
  }
  
  .favorites-actions {
    justify-content: flex-start;
  }
  
  .favorite-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .favorite-actions {
    align-self: flex-end;
  }
}

/*---------------------------------------1. SLOGAN GENERATOR - NEW--------------------------------------*/
/* Industry buttons */
/*.industry-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin: 1.5rem 0;
  justify-content: center;
}
*/
.industry-buttons {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding: 0.5rem 0 1rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.industry-buttons::-webkit-scrollbar {
  height: 6px;
}

.industry-buttons::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.industry-buttons::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

.industry-btn {
  padding: 10px 18px;
  border-radius: 30px;
  border: 1px solid #263056;
  background: #0e1433;
  color: #718096;
  font-size: 0.95rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

.industry-btn:hover {
  border-color: #4299e1;
  color: white;
}

.industry-btn.active {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
  color: white;
  font-weight: 600;
}

/* Tone buttons grid - always visible */
.tone-grid-container {
  position: relative;
  margin: 1.5rem 0;
}

.tone-grid {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding: 0.5rem 0 1rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.tone-grid::-webkit-scrollbar {
  height: 6px;
}

.tone-grid::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.tone-grid::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

.tone-btn {
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid #263056;
  background: #0e1433;
  color: #718096;
  font-size: 0.9rem;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.tone-btn:hover {
  border-color: #4299e1;
  color: white;
}

.tone-btn.active {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
  color: white;
  font-weight: 600;
}

/* Scroll arrows for tone grid */
.tone-scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.tone-scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
}

.tone-scroll-arrow.left {
  left: -5px;
}

.tone-scroll-arrow.right {
  right: -5px;
}

@media (max-width: 768px) {
  .tone-scroll-arrow {
    display: flex !important;
  }
}

@media (min-width: 769px) {
  .tone-scroll-arrow {
    display: none;
  }
}

/* Selection indicator */
.selection-indicator {
  text-align: center;
  color: #718096;
  margin: 1rem 0 2rem 0;
  font-size: 1rem;
}

.selection-indicator strong {
  color: #4299e1;
}



/* Pagination controls */
.pagination-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  margin: 2rem 0;
}

.page-btn {
  padding: 8px 20px;
  border-radius: 20px;
  border: 1px solid #263056;
  background: #0e1433;
  color: white;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 0.95rem;
}

.page-btn:hover:not(:disabled) {
  background: #1a1f3a;
  border-color: #4299e1;
}

.page-btn.disabled,
.page-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.page-info {
  color: #718096;
  font-size: 0.95rem;
}

/* Favorites panel - reuse from previous */
.favorites-panel {
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1.5rem;
  margin: 2rem 0;
}

.favorites-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 1.5rem 0;
  max-height: 300px;
  overflow-y: auto;
  padding-right: 0.5rem;
}

.favorite-item {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 10px;
  padding: 0.75rem 1rem;
}

.favorite-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.favorite-text {
  color: white;
  font-size: 1rem;
  flex: 1;
  word-break: break-word;
}

.favorite-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.favorite-copy, .favorite-remove {
  background: transparent;
  border: none;
  color: #718096;
  cursor: pointer;
  font-size: 1.1rem;
  padding: 0.25rem 0.5rem;
  transition: all 0.2s ease;
}

.favorite-copy:hover {
  color: #4299e1;
}

.favorite-remove:hover {
  color: #fc8181;
}

.favorite-copy.copied {
  color: #22c55e;
}

.favorites-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/* Slogan cards */
.slogan-card {
  background: linear-gradient(180deg, #0e1433, #0c122b);
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1.25rem;
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.slogan-card:hover {
  transform: translateY(-2px);
  border-color: #3d56ff;
}

.slogan-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.slogan-text {
  font-size: 1.1rem;
  line-height: 1.5;
  color: white;
  flex: 1;
}

.slogan-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.slogan-copy, .slogan-favorite {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.5rem 0.75rem;
  color: #718096;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1rem;
}

.slogan-copy:hover, .slogan-favorite:hover {
  background: #2d3748;
  color: white;
  border-color: #4299e1;
}

.slogan-favorite.favorited {
  color: #fbbf24;
  border-color: #fbbf24;
}
/*
.slogan-copy.copied {
  color: #22c55e;
  border-color: #22c55e;
}
*/
/* Stats row */
.stats-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 1rem 0;
  color: #718096;
  font-size: 0.95rem;
}

/* Mobile responsive */
@media (max-width: 768px) {
  .industry-buttons {
    gap: 0.5rem;
  }
  
  .industry-btn {
    padding: 8px 14px;
    font-size: 0.85rem;
  }
  
  .slogan-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .slogan-actions {
    align-self: flex-end;
  }
  
  .pagination-controls {
    gap: 1rem;
  }
  
  .favorites-actions {
    justify-content: flex-start;
  }
  
  .favorite-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .favorite-actions {
    align-self: flex-end;
  }
}

/*---------------------------------------1. SLOGAN GENERATOR - NEW - 1 --------------------------------------*/

/* Section Headers */
.section-header {
  margin-bottom: 1rem;
}

.section-header h3 {
  color: white;
  font-size: 1.2rem;
  margin: 0 0 0.5rem 0;
  font-weight: 600;
}

.section-divider {
  height: 2px;
  background: linear-gradient(90deg, #4299e1, transparent);
  width: 100px;
  border-radius: 2px;
}

/* Industry Container with Scroll Arrows */
.industry-container {
  position: relative;
  margin: 1rem 0;
}

.industry-buttons {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding: 0.5rem 0 1rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.industry-buttons::-webkit-scrollbar {
  height: 6px;
}

.industry-buttons::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.industry-buttons::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

.industry-btn {
  padding: 10px 18px;
  border-radius: 30px;
  border: 1px solid #263056;
  background: #0e1433;
  color: #718096;
  font-size: 0.95rem;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  flex-shrink: 0;
}

.industry-btn:hover {
  border-color: #4299e1;
  color: white;
}

.industry-btn.active {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
  color: white;
  font-weight: 600;
}

/* Industry Scroll Arrows */
.industry-scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.industry-scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
}

.industry-scroll-arrow.left {
  left: -5px;
}

.industry-scroll-arrow.right {
  right: -5px;
}

/* Tone Grid Container */
.tone-grid-container {
  position: relative;
  margin: 1rem 0;
}

.tone-grid {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding: 0.5rem 0 1rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.tone-grid::-webkit-scrollbar {
  height: 6px;
}

.tone-grid::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.tone-grid::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

.tone-btn {
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid #263056;
  background: #0e1433;
  color: #718096;
  font-size: 0.9rem;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.tone-btn:hover {
  border-color: #4299e1;
  color: white;
}

.tone-btn.active {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
  color: white;
  font-weight: 600;
}

/* Scroll Arrows - Hide by default, show on desktop when needed */
.industry-scroll-arrow,
.tone-scroll-arrow {
  display: none;
}

@media (min-width: 769px) {
  .industry-scroll-arrow,
  .tone-scroll-arrow {
    display: none; /* Hidden by default, shown via JS when needed */
  }
}

@media (max-width: 768px) {
  .industry-scroll-arrow,
  .tone-scroll-arrow {
    display: flex !important; /* Always show on mobile */
  }
}

/* Selection Indicator */
.selection-indicator {
  text-align: center;
  color: #718096;
  margin: 2rem 0;
  padding: 1rem;
  background: rgba(14, 20, 51, 0.5);
  border-radius: 12px;
  border: 1px solid #263056;
  font-size: 1rem;
}

.selection-indicator strong {
  color: #4299e1;
}

/* Results Container - Grid layout */
.results-container {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, 1fr); /* 2 columns by default */
  margin: 1.5rem 0;
}


/* Slogan Cards */
.slogan-card {
  background: linear-gradient(180deg, #0e1433, #0c122b);
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1rem 1.25rem;
  transition: transform 0.2s ease, border-color 0.2s ease;
  width: 100%;
  box-sizing: border-box;
}

.slogan-card:hover {
  transform: translateY(-2px);
  border-color: #3d56ff;
}

.slogan-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.slogan-text {
  font-size: 1rem;
  line-height: 1.5;
  color: white;
  flex: 1;
  word-break: break-word;
  padding-right: 0.5rem;
}

.slogan-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.slogan-copy, .slogan-favorite {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.4rem 0.6rem;
  color: #718096;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 0.9rem;
  min-width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.slogan-favorite.favorited {
  color: #fbbf24;
  border-color: #fbbf24;
}
/*
.slogan-copy.copied {
  color: #22c55e;
  border-color: #22c55e;
}
*/
/* Pagination Controls */
.pagination-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  margin: 1.5rem 0;
}

.page-btn {
  padding: 6px 16px;
  border-radius: 20px;
  border: 1px solid #263056;
  background: #0e1433;
  color: white;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 0.9rem;
}

.page-btn:hover:not(:disabled) {
  background: #1a1f3a;
  border-color: #4299e1;
}

.page-btn.disabled,
.page-btn:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.page-info {
  color: #718096;
  font-size: 0.9rem;
}

/* Stats Row */
.stats-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 1.5rem 0 2rem 0;
  padding: 0.75rem 1rem;
  background: rgba(14, 20, 51, 0.5);
  border-radius: 12px;
  border: 1px solid #263056;
  color: #718096;
  font-size: 0.95rem;
}

/* Favorites Panel */
.favorites-panel {
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1.5rem;
  margin: 2rem 0;
}

.favorites-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 1.5rem 0;
  max-height: 300px;
  overflow-y: auto;
  padding-right: 0.5rem;
}

.favorite-item {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 10px;
  padding: 0.75rem 1rem;
}

.favorite-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.favorite-text {
  color: white;
  font-size: 1rem;
  flex: 1;
  word-break: break-word;
}

.favorite-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.favorite-copy, .favorite-remove {
  background: transparent;
  border: none;
  color: #718096;
  cursor: pointer;
  font-size: 1.1rem;
  padding: 0.25rem 0.5rem;
  transition: all 0.2s ease;
}

.favorite-copy:hover {
  color: #4299e1;
}

.favorite-remove:hover {
  color: #fc8181;
}

.favorite-copy.copied {
  color: #22c55e;
}

.favorites-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .industry-buttons,
  .tone-grid {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  
  .industry-scroll-arrow,
  .tone-scroll-arrow {
    display: flex !important;
    width: 28px;
    height: 28px;
    font-size: 1rem;
  }
  
  .slogan-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .slogan-actions {
    align-self: flex-end;
  }
  
  .pagination-controls {
    gap: 1rem;
  }
  
  .favorites-actions {
    justify-content: flex-start;
  }
  
  .favorite-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .favorite-actions {
    align-self: flex-end;
  }
  
  .selection-indicator {
    margin: 1.5rem 0;
    padding: 0.75rem;
  }
}

/* Tablet - 2 columns */
@media (min-width: 769px) and (max-width: 1024px) {
  .results-container {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Desktop - 2 columns (you can change to 3 if you want) */
@media (min-width: 1025px) {
  .results-container {
    grid-template-columns: repeat(3, 1fr); /* Change to 3 for 3 columns */
  }
}

/* Mobile - 1 column */
@media (max-width: 768px) {
  .results-container {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  
  .slogan-card {
    padding: 0.875rem 1rem;
  }
  
  .slogan-text {
    font-size: 0.95rem;
  }
}
@media (min-width: 769px) {
      .slogan-card {
    height: 100%;
  }
  .results-container{
    height: 300px;
  justify-content: flex-start; /* Aligns items to the top vertically */
  }    
} 
@media (max-width: 768px) {
      .slogan-card {
    height: 120px;
  }
  .results-container{
    height: 800px;
    display: flex;
  flex-direction: column;
  justify-content: flex-start; /* Aligns items to the top vertically */
  }
  .fav-slogans-heading{
      margin-bottom: 20px !important;
  }
  #currentIndicator{
      
    height: 80px;
  }
}
.slogan-copy, .favorite-copy {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.4rem 0.6rem;
  color: #718096;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1.1rem;
  min-width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Segoe UI', system-ui, sans-serif;
}

.slogan-copy.copied, 
.favorite-copy.copied {
  color: #22c55e;
  border-color: #22c55e;
  font-size: 0.95rem;
}

#copyAllBtn.copied {
  color: #22c55e;
  border-color: #22c55e;
  /*font-size: 0.95rem;*/
}

.slogan-copy, .favorite-copy, #copyAllBtn {
  min-width: 60px; /* Adjust based on your button size */
  transition: all 0.2s ease;
}

.slogan-copy.copied, 
.favorite-copy.copied, 
#copyAllBtn.copied {
  color: #22c55e;
  border-color: #22c55e;
  background: rgba(34, 197, 94, 0.1);
}

/* Favorites container with scroll arrows */
.favorites-container {
  position: relative;
  margin: 1rem 0;
}

.favorites-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-height: 300px;
  overflow-y: auto;
  padding: 0.5rem 0.5rem 0.5rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.favorites-list::-webkit-scrollbar {
  width: 6px;
}

.favorites-list::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.favorites-list::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

/* Favorites scroll arrows */
.favorites-scroll-arrow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.favorites-scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
}

.favorites-scroll-arrow.up {
  top: -20px;
}

.favorites-scroll-arrow.down {
  bottom: -28px;
}

.favorites-scroll-arrow.up {

   left: 97%;
  transform: translateX(-50%);
}

.favorites-scroll-arrow.down {
   left: 97%;
  transform: translateX(-50%);
}
/* Hide arrows by default on desktop, show via JS when needed */
@media (min-width: 769px) {
  .favorites-scroll-arrow {
    display: none;
  }
}

/* Always show on mobile */
@media (max-width: 768px) {
  .favorites-scroll-arrow {
    display: flex !important;
  }
  
  .favorites-scroll-arrow.up {
    top: -28px;
  }
  
  .favorites-scroll-arrow.down {
    bottom: -38px;
  }

.favorites-scroll-arrow.up {

   left: 90%;
  transform: translateX(-50%);
}

.favorites-scroll-arrow.down {
   left: 90%;
  transform: translateX(-50%);
}
    
}


.favorites-scroll-arrow svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
}

/*---------------------------------------2. ELEVATOR PITCH--------------------------------------*/
@media (min-width: 769px) {
  .results-container.elevator{
    height: 400px;
  justify-content: flex-start; /* Aligns items to the top vertically */
  }    
} 
@media (max-width: 768px) {
  .results-container.elevator{
    height: 1000px;
    display: flex;
  flex-direction: column;
  justify-content: flex-start; /* Aligns items to the top vertically */
  }
        .pitch-card.slogan-card {
    height: 150px;
  }
}
/*---------------------------------------3. BUSINESS PLAN--------------------------------------*/
/*---------------------------------------4. START UP NAME CHECKER--------------------------------------*/
/* ============================================
   Startup Name Checker Specific Styles
   ============================================ */

/* Input Section */
.name-input-container {
  margin: 2rem 0;
}

.name-input-wrapper {
  display: flex;
  gap: 1rem;
  align-items: center;
  flex-wrap: wrap;
}

.name-input-field {
  flex: 1;
  min-width: 250px;
}

.name-input-actions {
  display: flex;
  gap: 0.5rem;
}

/* Category Buttons */
.category-container {
  position: relative;
  margin: 1.5rem 0;
}

.category-buttons {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding: 0.5rem 0 1rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.category-buttons::-webkit-scrollbar {
  height: 6px;
}

.category-buttons::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.category-buttons::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

.category-btn {
  padding: 8px 16px;
  border-radius: 20px;
  border: 1px solid #263056;
  background: #0e1433;
  color: #718096;
  font-size: 0.9rem;
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.2s ease;
  flex-shrink: 0;
}

.category-btn:hover {
  border-color: #4299e1;
  color: white;
}

.category-btn.active {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
  color: white;
  font-weight: 600;
}

/* Category Scroll Arrows */
.category-scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.category-scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
}

.category-scroll-arrow.left {
  left: -5px;
}

.category-scroll-arrow.right {
  right: -5px;
}

/* Platform Groups */
.platform-group-header {
  font-size: 1.2rem;
  font-weight: 600;
  color: #4299e1;
  margin: 2rem 0 1rem 0;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #263056;
}

.platform-group-header:first-of-type {
  margin-top: 0;
}

/* Platform Cards */
.platforms-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  margin: 1rem 0;
}

.platform-card {
  background: linear-gradient(180deg, #0e1433, #0c122b);
  border: 1px solid #263056;
  border-radius: 12px;
  transition: transform 0.2s ease, border-color 0.2s ease;
}

.platform-card:hover {
  transform: translateY(-2px);
  border-color: #3d56ff;
}

.platform-card-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  gap: 1rem;
}

.platform-info {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
}

.platform-icon {
  font-size: 1.5rem;
  min-width: 32px;
  text-align: center;
}

.platform-name {
  color: white;
  font-size: 1rem;
  font-weight: 500;
  word-break: break-word;
}

.platform-actions {
  display: flex;
  gap: 0.5rem;
  flex-shrink: 0;
}

.platform-check-btn {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border: none;
  border-radius: 8px;
  padding: 0.4rem 0.8rem;
  color: white;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.platform-check-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(42, 52, 168, 0.3);
}

.platform-copy {
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.4rem 0.6rem;
  color: #718096;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 1rem;
  min-width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.platform-copy:hover {
  background: #2d3748;
  color: white;
  border-color: #4299e1;
}

.platform-copy.copied {
  color: #22c55e;
  border-color: #22c55e;
}

/* History Panel */
.history-panel {
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 14px;
  padding: 1.5rem;
  margin: 2rem 0;
}

.history-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 1rem 0;
  max-height: 200px;
  overflow-y: auto;
  padding-right: 0.5rem;
}

.history-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #1a1f3a;
  border: 1px solid #263056;
  border-radius: 8px;
  padding: 0.5rem 1rem;
}

.history-name {
  color: white;
  font-size: 0.95rem;
  font-weight: 500;
}

.history-use {
  background: transparent;
  border: 1px solid #4299e1;
  border-radius: 6px;
  padding: 0.25rem 0.75rem;
  color: #4299e1;
  font-size: 0.8rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

.history-use:hover {
  background: #4299e1;
  color: white;
}

/* Stats Row */
.stats-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 1rem 0 2rem 0;
  padding: 0.75rem 1rem;
  background: rgba(14, 20, 51, 0.5);
  border-radius: 12px;
  border: 1px solid #263056;
  color: #718096;
  font-size: 0.95rem;
}

/* Mobile Responsive */
@media (max-width: 768px) {
  .name-input-wrapper {
    flex-direction: column;
    align-items: stretch;
  }
  
  .platforms-grid {
    grid-template-columns: 1fr;
  }
  
  .platform-card-content {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .platform-actions {
    align-self: flex-end;
  }
  
  .history-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  
  .history-use {
    align-self: flex-end;
  }
}

/* Category Scroll Arrows - Match the pattern */
.category-scroll-arrow {
  display: none; /* Hidden by default, shown via JS when needed */
}

@media (min-width: 769px) {
  .category-scroll-arrow {
    display: none; /* Hidden by default, shown via JS when needed */
  }
}

@media (max-width: 768px) {
  .category-scroll-arrow {
    display: flex !important; /* Always show on mobile */
  }
}

/* Force platform headers to be full width in the grid */
.platform-group-header {
  grid-column: 1 / -1; /* This makes it span all columns */
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #263056;
  font-size: 1.2rem;
  font-weight: 600;
  color: #4299e1;
}

/* Remove the top margin from first header */
.platform-group-header:first-of-type {
  margin-top: 0;
}

/*---------------------------------------4. START UP NAME CHECKER--------------------------------------*/
.platforms-container {
  position: relative;
  margin: 1rem 0 3rem 0; /* Add bottom margin to make room for the arrow */
}

.platforms-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  margin: 1rem 0;
  max-height: 600px;
  overflow-y: auto;
  padding: 0.5rem 0.5rem 0.5rem 0;
  scroll-behavior: smooth;
  scrollbar-width: thin;
  scrollbar-color: #404FF7 #0e1433;
}

.platforms-grid::-webkit-scrollbar {
  width: 6px;
}

.platforms-grid::-webkit-scrollbar-track {
  background: #0e1433;
  border-radius: 10px;
}

.platforms-grid::-webkit-scrollbar-thumb {
  background: #4299e1;
  border-radius: 10px;
}

/* Platforms scroll arrows */
.platforms-scroll-arrow {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 32px;
  background: #0e1433;
  border: 1px solid #263056;
  border-radius: 50%;
 /* display: flex;*/
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 10;
  color: white;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.platforms-scroll-arrow:hover {
  background: linear-gradient(135deg, #2a34a8, #3f7cf3);
  border-color: #3f7cf3;
}

.platforms-scroll-arrow.up {
  top: -15px;
}

.platforms-scroll-arrow.down {
  bottom: -45px;
}

/* Hide arrows by default on desktop, show via JS when needed */
@media (min-width: 769px) {
  .platforms-scroll-arrow {
    display: none;
  }
}

/* Always show on mobile */
@media (max-width: 768px) {
 /* .platforms-scroll-arrow {
    display: flex !important;
  }*/
  
  .platforms-scroll-arrow.up {
    top: -10px;
  }
  
  .platforms-scroll-arrow.down {
    bottom: -40px;
  }
}

.platforms-scroll-arrow svg {
  width: 20px;
  height: 20px;
  stroke: currentColor;
}

/* Scroll divider styling */
.scroll-divider-container {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 20px 0 30px 0;
  width: 100%;
}

.divider-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, #4299e1, transparent);
  border: none;
}

.scroll-more-text {
  color: #4299e1;
  font-size: 0.85rem;
  font-weight: 500;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  opacity: 0.7;
}

@media (max-width: 768px) {
  /* Only force arrows for specific containers */
  .category-scroll-arrow {
    display: flex !important;
  }
  /* Let platforms arrows be controlled by JS */
  .platforms-scroll-arrow {
    display: none; /* JS will override this */
  }
}

@media (max-width: 768px) {
  .history-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .platform-card-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}


/*---------------------------------------5. BRAND VOICE ANALYZER --------------------------------------*/
#textInput {
  width: 100%;
  min-height: 150px;   
  font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
  font-size: 1rem;
  line-height: 1.6; 
  background: rgba(255,255,255,0.05);
  color: var(--text, #eaeaea);
  /*border: 1px solid rgba(255,255,255,0.15);*/
  border: 1px solid rgba(199,197,197,0.20);
  /*border: 1px solid var(--border);*/
  transition: background .2s ease, border-color .2s ease;
  outline: none !important;
  box-shadow: none !important;
}
#textInput:focus, input[type="text"]:focus, input[list]:focus {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.25);
  outline: none !important;
  box-shadow: none !important;
}

.history-load {
  background: transparent;
  border: 1px solid #4299e1;
  border-radius: 6px;
  padding: 0.25rem 0.75rem;
  color: #4299e1;
  font-size: 0.8rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

.history-load:hover {
  background: #4299e1;
  color: white;
}

.history-tone {
  color: #718096;  /* Grey color */
  font-size: 0.85rem;
  font-weight: 500;
  text-transform: capitalize;
  white-space: nowrap;
  background: #0e1433;
  padding: 4px 10px;
  border-radius: 20px;
  border: 1px solid #263056;
  min-width: 100px;  /* Ensures consistent width */
  text-align: center;   /* Left aligned text */
  display: inline-block;
}
    .radar-label {
      margin-top: 10px;
      font-size: 0.7rem;
      color: #718096;
      transform: rotate(-45deg);
      white-space: nowrap;
      text-align: center;
    }
@media (min-width: 769px) {
  .history-tone {
  margin-left:200px;
  }  
.history-preview {
  color: white;
  font-size: 0.95rem;
  flex: 1;
  max-width: 300px; /* Fixed max width */
  min-width: 200px; /* Minimum width */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  padding-right: 8px;
}    
}

/* Radar Chart Styles */
.radar-chart {
  display: flex;
  justify-content: space-around;
  align-items: flex-end;
  height: 300px;  /* Increased from 250px to 300px */
  padding: 20px 0 40px 0;  /* Added more bottom padding for labels */
  background: rgba(14, 20, 51, 0.5);
  /*border-radius: 14px;*/
  border: 1px solid #263056;
  margin: 2rem 0;  /* Increased margin */
}

.radar-column {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 7%;
  position: relative;
  height: 90%;
}

.radar-bar-container {
  width: 100%;
  height: 200px;  /* Increased from 150px to 200px */
  display: flex;
  align-items: flex-end;
  justify-content: center;
  margin-bottom: 15px;  /* Added gap between bar and label */
}

.radar-bar {
  width: 24px;  /* Slightly wider bars */
  /*border-radius: 12px 12px 0 0;*/
  transition: height 0.5s ease;
  min-height: 2px;
  box-shadow: 0 -2px 8px rgba(66, 153, 225, 0.2);  /* Optional: add glow at top */
}

.radar-label {
  font-size: 0.7rem;
  color: #718096;
  text-align: center;
  white-space: nowrap;
  transform: rotate(-45deg);
  transform-origin: top left;
  position: absolute;
  bottom: -30px;  /* Position labels below the gap */
  left: 50%;
  margin-left: -10px;  /* Adjust based on rotation */
}

/* Hover effect for bars */
.radar-bar:hover {
  opacity: 0.9;
  transform: scaleX(1.1);  /* Slightly widen on hover */
  box-shadow: 0 0 12px currentColor;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .radar-chart {
    height: 250px;
    padding: 20px 0 50px 0;
  }
  
  .radar-bar-container {
    height: 150px;
  }
  
  .radar-bar {
    width: 26px;
  }
 .radar-column {
  height: 100%;
     
 } 
  .radar-label {
    font-size: 0.6rem;
    transform: rotate(-90deg);
    bottom: -50px;
    margin-left: -12px;
  }
}