
.hidden {
  display: none !important;
}


.general-results {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: center;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

/* General Results - Title Styling */
.general-results h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #4120A9 0%, #a16ae8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* General Results - Card Grid */
.general-results .cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  justify-content: center;
  align-items: stretch;
}

/* General Results - Individual Cards */
.general-results .card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.3);

  position: relative;
  overflow: hidden;
}

.general-results .card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #4120A9, #6366f1, #8b5cf6);
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* General Results - Icons */
.general-results .icons {
  width: 72px;
  height: 72px;
  margin: 0 auto 16px;
  padding: 16px;
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
}

.general-results .icons img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

/* General Results - Card Text Styling */
.general-results .card h3 {
  color: #1e293b;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 12px;
  letter-spacing: -0.015em;
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  background-clip: unset;
}

.general-results .card p {
  color: #64748b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
}

/* Make the whole card clickable */
.card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.card-link:hover .card {
  transform: translateY(-8px) scale(1.02);
  box-shadow:
    0 8px 32px rgba(65, 32, 169, 0.15),
    0 2px 8px rgba(0, 0, 0, 0.1);
}

.card-link:hover .card::before {
  opacity: 1;
}

.card-link:hover .icons {
  transform: scale(1.1);
  background: linear-gradient(135deg, #4120A9 0%, #6366f1 100%);
}

.card-link:hover .icons img {
  filter: brightness(0) invert(1) drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}

.card-link:hover .card h3 {
  color: #4120A9;
}

/* Active state for better mobile interaction */
.card-link:active .card {
  transform: translateY(-4px) scale(1.01);
}

/* Responsive design improvements */
@media (max-width: 1200px) {
  .general-results .cards {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
}

@media (max-width: 768px) {
  .general-results .cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}

@media (max-width: 640px) {
  .general-results {
    padding: 24px 16px;
    margin: 16px auto;
  }

  .general-results .cards {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .general-results .card {
    padding: 20px 16px;
  }

  .general-results .icons {
    width: 64px;
    height: 64px;
    padding: 12px;
  }

  .general-results .icons img {
    width: 36px;
    height: 36px;
  }
}










/* Overall Performance Section */

/* Overall Performance Section - Updated */
.overall-performance {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow: 
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

/* Performance Container */
.performance-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  align-items: stretch;
}

/* Performance Boxes */
.gauge-box,
.tips-box {
  background: rgba(255, 255, 255, 0.8);
  padding: 32px;
  border-radius: 16px;
  box-shadow: 
    0 1px 3px rgba(0, 0, 0, 0.08),
    0 4px 16px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.3);

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  height: 100%;
}

/* Performance Box Headings */
.gauge-box h4,
.tips-box h4 {
  color: #000000;
  margin-bottom: 24px;
  font-weight: 700;
  font-size: clamp(1.1rem, 3vw, 1.3rem);
  letter-spacing: -0.025em;
}
#performance-tips {
  background: #D4F1F4;
 
  padding: 1rem 1.25rem;
  border-radius: 8px;
  font-size: 18px;
  color: #374151;
  line-height: 1.8;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
  margin-top: 0.75rem;
}

#read-more-btn {
  display: none !important;
}

/* Responsive Adjustments */
@media (max-width: 768px) {
  .general-results .cards {
    grid-template-columns: repeat(2, 1fr);
    /* Stack into 2 columns */
  }

  .performance-container {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: center;
    /* Centers child elements */

  }

    #performance-tips.collapsed {
    max-height: 4.5em; /* About 3 lines */
    overflow: hidden;
    position: relative;
  }
   #performance-tips.collapsed::after {
    content: "...";
    position: absolute;
    bottom: 0;
    right: 0;
    background: #D4F1F4;
    padding-left: 20px;
  }
  #read-more-btn {
    display: none; /* Still hidden by default */
  }
  
  #read-more-btn.show-mobile {
    display: block !important; /* Only show when this class is added */
  }
  #read-more-btn {
    background: #4120A9;
    color: white;
    border: none;
    padding: 8px 16px;
    border-radius: 5px;
    margin-top: 10px;
    cursor: pointer;
    font-size: 14px;
  }

  .gauge-box,
  .tips-box {
    width: 90%;
    max-width: 500px;
    margin: 0 auto;
    /* Ensures they stay centered */
    align-items: center;
    text-align: center;
  }

  .performance-title {
    text-align: center;
    padding-left: 0;
  }

 #performance-tips {
  font-size: 16px;
  padding: 0.875rem 1rem;
  line-height: 1.6;
}
}

@media (max-width: 480px) {
  .general-results .cards {
    grid-template-columns: 1fr;
    /* Stack all into 1 column */
  }
  #performance-tips {
  font-size: 14px;
  padding: 0.75rem 0.875rem;
  line-height: 1.5;
  margin-top: 0.5rem;
}
}







/* Media Section */
#media-section {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: center;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

/* Section Title */
#media-section h2 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
   background: linear-gradient(135deg, #8b5cf6 0%, #a362d8 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Cards Container */
#media-section .cards-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  justify-content: center;
  align-items: stretch;
  margin-bottom: 32px;
}

/* Individual Stat Cards */
#media-section .stat-card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.3);

  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

#media-section .stat-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #8b5cf6, #7c3aed, #6d28d9);
  opacity: 0;
  transition: opacity 0.3s ease;
}

#media-section .stat-card:hover::before {
  opacity: 1;
}

/* Tip Card */
#media-section .tip-card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: left;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.3);

  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

#media-section .tip-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #10b981, #059669, #047857);
  opacity: 0;
  transition: opacity 0.3s ease;
}

#media-section .tip-card:hover::before {
  opacity: 1;
}

/* Card Text Styling */
#media-section .stat-card h3,
#media-section .tip-card h3 {
  color: #1e293b;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 12px;
  letter-spacing: -0.015em;
}

#media-section .stat-card p {
  color: #64748b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 4px;
}

#media-section .stat-number {
  color: #1e293b !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

#media-section .stat-number.alert {
  color: #8b5cf6 !important;
}

#media-section .stat-description {
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  opacity: 0.7;
}

/* Tip List Styling */
#media-section .tip-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

#media-section .tip-list li {
  color: #64748b;
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 8px;
  padding-left: 20px;
  position: relative;
}

#media-section .tip-list li:before {
  content: '•';
  color: #10b981;
  font-weight: bold;
  position: absolute;
  left: 0;
}

/* Data Table Container */
#media-section .data-table-container {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  padding: 24px;
  margin-bottom: 32px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.3);

  text-align: left;
}

#media-section .data-table-container h3 {
  color: #1e293b;
  font-weight: 600;
  font-size: 20px;
  margin-bottom: 20px;
  letter-spacing: -0.015em;
  text-align: center;
}

/* Table Responsive Container */
#media-section .table-responsive {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 16px;
  
}

#media-section table {
  width: 100%;
  border-collapse: collapse;
}

#media-section table th {
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  color: white;
  padding: 16px;
  text-align: left;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#media-section table td {
  padding: 16px;
  border-bottom: 1px solid #e2e8f0;
  min-width: 250px;
  max-width: 250px;
  font-size: 14px;
  color: #64748b;
}

#media-section table tr:last-child td {
  border-bottom: none;
}

#media-section table tr:hover {
  background: rgba(139, 92, 246, 0.02);
}

/* Success Card */
#media-section .success-card {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: white;
  padding: 32px;
  border-radius: 16px;
  text-align: center;
  box-shadow: 0 4px 24px rgba(16, 185, 129, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

#media-section .success-card p {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
  color: white !important;
}

/* Toggle Button */
#media-section .toggle-button {
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  color: white;
  border: none;
  padding: 12px 24px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 16px;
  box-shadow: 0 2px 8px rgba(139, 92, 246, 0.3);
  display: block;
  margin-left: auto;
  margin-right: auto;
}

#media-section .toggle-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(139, 92, 246, 0.4);
}

#media-section .toggle-button:active {
  transform: translateY(0);
}

table-responsive::-webkit-scrollbar-thumb:hover {
  background-color: #a0aec0;
  /* Darker on hover */
  min-width: 400px;
  max-width: 400px;
}

.data-table-container table {
  word-break: break-all;
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

/* Define column widths */
.col-webpage,
.col-title,
.col-size,
.col-alt,
.col-url {
  min-width: 250px;
  max-width: 250px;
}

#media-section .col-url {
  width: 25%;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  color: #f7f7f7;
  word-break: break-all;
}

/* Responsive Design */
@media (max-width: 1200px) {
  #media-section .cards-container {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  #media-section .cards-container {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  
  #media-section {
    width: 95%;
    margin: 10px auto;
    padding: 20px;
  }
  
  #media-section .table-responsive {
    overflow-x: auto;
  }
}

@media (max-width: 480px) {
  #media-section .cards-container {
    grid-template-columns: 1fr;
  }
}





/* VISIBILITY -  Results Section */
.visibility-results {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: center;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);
 
}

/* Title Styling */
.visibility-results h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #10b9b9 0%, #057496 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Report Subtitle */
.visibility-results .report-subtitle {
  color: #64748b;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 32px;
  letter-spacing: -0.01em;
}

/* Card Grid - 4 cards layout for visibility sections */
.visibility-results .cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  justify-content: center;
  align-items: stretch;
  margin-bottom: 32px;
}

/* Individual Cards */
.visibility-results .card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.3);

  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.visibility-results .card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #10b981, #059669, #047857);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.visibility-results .card:hover::before {
  opacity: 1;
}

/* Card Type Variations */
.visibility-results .secure-card::before {
  background: linear-gradient(90deg, #10b981, #059669, #047857) !important;
}

.visibility-results .warning-card::before {
  background: linear-gradient(90deg, #f59e0b, #d97706, #b45309) !important;
}

.visibility-results .danger-card::before {
  background: linear-gradient(90deg, #ef4444, #dc2626, #b91c1c) !important;
}

/* Icons */
.visibility-results .icons {
  width: 72px;
  height: 72px;
  margin: 0 auto 16px;
  padding: 16px;
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
}

.visibility-results .icon-placeholder {
  font-size: 32px;
  line-height: 1;
}

/* Card Text Styling */
.visibility-results .card h3 {
  color: #1e293b;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 12px;
  letter-spacing: -0.015em;
}

.visibility-results .card p {
  color: #64748b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 4px;
}

.visibility-results .card-value {
  color: #1e293b !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.visibility-results .secure-card .card-value {
  color: #10b981 !important;
}

.visibility-results .warning-card .card-value {
  color: #f59e0b !important;
}

.visibility-results .danger-card .card-value {
  color: #ef4444 !important;
}

.visibility-results .card-percentage {
  color: #64748b !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  opacity: 0.8;
}

.visibility-results .card-subtext {
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  opacity: 0.7;
}

/* Success Message */
.visibility-results .success-message {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: white;
  padding: 32px;
  border-radius: 20px;
  margin-bottom: 32px;
  box-shadow: 0 4px 24px rgba(16, 185, 129, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.visibility-results .success-icon {
  font-size: 48px;
  margin-bottom: 16px;
}

.visibility-results .success-message h4 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 8px;
}

.visibility-results .success-message p {
  font-size: 16px;
  opacity: 0.95;
}

/* Visibility Issues Section */
.visibility-issues {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

.visibility-issues h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.visibility-issues .issues-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.visibility-issues .issue-item {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: all 0.3s ease;
}

.visibility-issues .issue-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.visibility-issues .issue-indicator {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ef4444;
  margin-top: 4px;
  flex-shrink: 0;
}

.visibility-issues .issue-item[data-severity="warning"] .issue-indicator {
  background: #f59e0b;
}

.visibility-issues .issue-item[data-severity="low"] .issue-indicator {
  background: #10b981;
}

.visibility-issues .issue-content {
  flex: 1;
}

.visibility-issues .issue-title {
  color: #1e293b;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

.visibility-issues .issue-description {
  color: #64748b;
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 12px;
}

.visibility-issues .issue-url {
  background: #f1f5f9;
  padding: 8px 12px;
  border-radius: 8px;
  font-family: 'Courier New', Monaco, monospace;
  font-size: 14px;
  color: #10b981;
  display: block;
  word-break: break-all;
}

/* URLs Section for Visibility */
#visibility-urls-section.urls-section {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

#visibility-urls-section.urls-section h3 {
  color: #1e293b;
  overflow: hidden;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
 background: linear-gradient(135deg, #10b9b9 0%, #057496 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

#visibility-urls-section .urls-table-container {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 24px;
  overflow-x: scroll !important; 
  width: 100%; /* Ensure container takes full width */
  max-width: 100%;
}

#visibility-urls-section .urls-table {
  width: 100%;
  border-collapse: collapse;
}

#visibility-urls-section .urls-table th {
background: linear-gradient(135deg, #0f8d8d 0%, #057496 100%);
  color: white;
  padding: 16px;
  text-align: left;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#visibility-urls-section .urls-table td {
  padding: 16px;
  border-bottom: 1px solid #e2e8f0;
  font-size: 14px;
   color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

#visibility-urls-section .urls-table tr:last-child td {
  border-bottom: none;
}

#visibility-urls-section .urls-table tr:hover {
  background: rgba(16, 185, 129, 0.02);
}

#visibility-urls-section .status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #10b981;
  display: inline-block;
  margin-right: 8px;
}

#visibility-urls-section .url-row[data-status="warning"] .status-indicator {
  background: #f59e0b;
}

#visibility-urls-section .url-row[data-status="danger"] .status-indicator {
  background: #ef4444;
}

#visibility-urls-section .url-cell {
  font-family: 'Courier New', Monaco, monospace;
  color: #10b981;
  word-break: break-all;
  max-width: 300px;
}

/* FILTER */


.visibility-filter {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  padding: 8px 16px;
}

.visibility-filter label {
  font-weight: 600;
  font-size: 14px;
  color: #1e293b;
}

.visibility-filter select {
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #d1d5db;
  background-color: white;
  font-size: 14px;
  font-weight: 500;
  color: #1e293b;
  cursor: pointer;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.visibility-filter select:focus {
  outline: none;
  border-color: #10b981;
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.3);
}

.table-responsive {
  overflow-x: scroll !important; /* Always show horizontal scrollbar */
  -webkit-overflow-scrolling: touch;

}



.table-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  padding: 8px 16px;
  flex-wrap: wrap;
}
/* TABLE EXPORT  Button */
.export-button {
  background: white;
  border: 1px solid #10b981;
  color: #10b981;
  padding: 8px 16px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.export-button:hover {
  background: #10b981;
  color: white;
}
/* Purple Export Button */
.export-button-purple {
  background: white;
  border: 1px solid #8b5cf6;
  color: #8b5cf6;
  padding: 8px 16px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.export-button-purple:hover {
  background: #8b5cf6;
  color: white;
}

.table-export-actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 8px;
  padding: 8px 8px;
}
.export-button-blue {
  background: white;
  border: 1px solid #3b82f6; /* Tailwind blue-500 */
  color: #3b82f6;
  padding: 8px 16px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.export-button-blue:hover {
  background: #3b82f6;
  color: white;
}




#metadata-urls-section h3 {
  background: linear-gradient(135deg, #0f8d8d 0%, #057496 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}


/* Toggle Button */
.toggle-button {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: white;
  border: none;
  padding: 12px 24px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-top: 16px;
  box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.toggle-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(16, 185, 129, 0.4);
}

.toggle-button:active {
  transform: translateY(0);
}

/* Recommendation Item (for tip box) */
.recommendation-item {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 24px;
  transition: all 0.3s ease;
}

.recommendation-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.recommendation-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 16px;
  flex-shrink: 0;
}

.recommendation-content {
  flex: 1;
}

.recommendation-title {
  color: #1e293b;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

.recommendation-description {
  color: #64748b;
  font-size: 15px;
  line-height: 1.5;
}

/* Responsive Design */
@media (max-width: 1200px) {
  .visibility-results .cards {
    grid-template-columns: repeat(2, 1fr);
  }
  
.visibility-filter {
  width: 95%; }
}

@media (max-width: 768px) {
  .visibility-results .cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  
  .visibility-results, .visibility-issues, #visibility-urls-section.urls-section {
    width: 95%;
    margin: 10px auto;
    padding: 20px;
  }
  
  #visibility-urls-section .urls-table-container {
  overflow-x: scroll !important; 
  width: 100%; /* Ensure container takes full width */
  max-width: 100%;
  }
}

@media (max-width: 480px) {
  .visibility-results .cards {
    grid-template-columns: 1fr;
  }
}

/* Hidden utility class */
.hidden {
  display: flex !important;
}




#metadata-table-wrapper .urls-table th {
  background: linear-gradient(135deg, #0f8d8d 0%, #057496 100%)!important;
}

#metadata-table-wrapper .urls-table tr:hover {
  background: rgba(20, 184, 166, 0.05)!important;
}

#metadata-table-wrapper .url-cell {
  color: #0f766e !important;
}




.table-responsive::-webkit-scrollbar {
  height: 8px;
}

.table-responsive::-webkit-scrollbar-thumb {
  background-color: #cbd5e1;
  border-radius: 8px;
}

.table-responsive::-webkit-scrollbar-thumb:hover {
  background-color: #a0aec0;
}

/* Force table to be wider than container so it scrolls */
.table-responsive table {
  min-width: 900px; /* Adjust higher if needed */
}

/* Prevent text wrapping in all table cells */
.urls-table th,
.urls-table td {
  white-space: normal;

  text-overflow: ellipsis;
  overflow: hidden;
  font-size: 14px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  color: #64748b;

}

.row-warning {
  background-color: #fff4d1; /* soft yellow */
}

.row-error {
  background-color: #ffe4e6; /* light red */
}


/* Standardized button styling */
.show-more-button {
  width: 100%;
  margin-top: 16px;
  padding: 12px;
  background: #4120A9;
  color: white;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-family: Verdana, sans-serif;
  font-size: 14px;
  font-weight: 500;
  transition: background-color 0.2s;
}

.show-more-button:hover {
  background: rgb(43, 35, 129);
}

/* Success styling */
.success-card {
  display: flex;
  background: #ecfdf5;
  color: #065f46;
  padding: 16px;
  text-align: center;
  margin-top: 16px;
  border-radius: 12px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  width: 100%;
  box-sizing: border-box;
}

.success-icon {
  font-size: 16px;
  margin-bottom: 8px;
  display: block;
}





/* WEBHEALTH - Top Section (Gauge & Tip Box) */

.web-health-top {
  flex-direction: column;
  display: grid;
  grid-template-columns: 1fr 1fr;
  /* Two equal sections */
  gap: 20px;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0 auto 24px auto;
  /* Center the section */
  margin-bottom: 20px;
}

#web-health-section {
  display: flex;
  /* Hidden by default, will be shown by JS */
  flex-direction: column;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

  padding: 32px;
  margin-bottom: 24px;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  max-width: 1400px;
  margin: 0 auto 24px auto;
  /* Center the section */
  width: 90%;
}

#web-health-section h3 {
  font-size: 20px;
  font-weight: 600;
  color: #333;
  margin-bottom: 16px;
}

#web-health-section h2 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #FD49A0 0%, #e27cb4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}


/* Gauge Chart Box */
.barchart-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 90%;
  max-width: 550px;
  padding: 24px;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.3);

  margin-bottom: 30px;
  margin: 0 auto;
}

/* Title styling */
.barchart-box h4 {
  width: 100%;
  font-size: 16px;
  font-weight: 600;
  color: #474747;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
}

/* SPEED CHART  container */
.barchart-container {
  position: relative;
  width: 100%;
  height: 160px; /* ✅ much better for horizontal bar */
}

/* Chart canvas */
#loadTimeBar {
  width: 100%;
  height: 100%;
}

/* Legend container */
.speed-legend {
  display: flex;
  justify-content: space-around; /* or use space-evenly */
  width: 100%;
  margin-top: 12px;
  font-size: 12px;
  color: #777;
  font-family: Verdana, sans-serif;
}


/* Legend items */
.speed-legend-fast {
  color: rgb(0, 139, 105);
  font-weight: bold;
  font-family: Verdana, sans-serif;
}

.speed-legend-slow {
  color: rgb(231, 24, 76);
  font-weight: bold;
  font-family: Verdana, sans-serif;
}

/* Web Health Tip Box */
.webhealth-tip-box {
  display: flex;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}


.tip-icon {
  font-size: 24px;
  margin-right: 16px;
  display: flex;
  align-items: center;
}

.tip-content {
  flex: 1;
}


.tip-content p {
  font-size: 14px;
  color: #4b5563;
  margin: 0;
  line-height: 1.5;
}


.tip-content h4 {
  font-size: 16px;
  font-weight: 600;
  color: #1e40af;
  margin: 0 0 8px 0;
}


/* Tablet layout */
@media (max-width: 1024px) {
  .web-health-top {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }

  .barchart-box {
    max-width: 100%;
  }
}




/* Mobile layout */
@media (max-width: 768px) {
  .web-health-top {
    grid-template-columns: 1fr;
    /* Stack elements vertically */
    gap: 20px;
  }

  /* Adjust content cards for mobile */
  .card-content {
    grid-template-columns: 1fr;
    /* Stack elements vertically */
  }

  .webhealth-tip-box {
    width: 90%;
  }
}


/* LOAD SPEED TABLE STYLING */
#load-speed-section.urls-section {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
 background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

#load-speed-section.urls-section h3 {
  color: #FD49A0;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #FD49A0 0%, #e98db3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

#load-speed-section .urls-table-container {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 16px;
  overflow-x: scroll !important; 
   overflow-y: auto;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 24px;
  width: 100%;
  max-width: 100%;
  position: relative;
  display: block;
}

#load-speed-section .urls-table {
  width: 100%;
  border-collapse: collapse;
}

#load-speed-section .urls-table th {
  background: linear-gradient(135deg, #FD49A0 0%, #fa78ae 100%);
  color: white;
  padding: 16px;
  text-align: left;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#load-speed-section .urls-table td {
   color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 16px;
  border-bottom: 1px solid #f3e8ff;
  font-size: 14px;
}

#load-speed-section .urls-table tr:last-child td {
  border-bottom: none;
   color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

#load-speed-section .urls-table tr:hover {
  background: rgba(236, 72, 153, 0.05);
}

#load-speed-section .url-cell {
  font-family: 'Courier New', Monaco, monospace;
  color: #be185d;
  word-break: break-word;
  max-width: 300px;
}
/* Pink Export Button */
.export-button-pink {
  background: white;
  border: 1px solid #db2777;
  color: #db2777;
  padding: 8px 16px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.export-button-pink:hover {
  background: #db2777;
  color: white;
}





/* Card Content Layout */
.card-content {
  display: grid;
  grid-template-columns: 2fr 1fr;
  /* List takes 2/3, tip box takes 1/3 */
  gap: 20px;
  align-items: flex-start;
}



/* Small mobile layout */
@media (max-width: 480px) {
  #web-health-section {
    padding: 16px;
  }

  .webhealth-table-container {
    width: 100%;
  }

  .barchart-box {
    padding: 16px;
  }

  #web-health-section table {
    font-size: 12px;
    min-width: 450px;
    width: 100%;

  }

  #web-health-section th,
  #web-health-section td {
    padding: 8px;
 color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
    width: 100%;
    text-align: left;
  }
}


/* Responsive card content */
@media (max-width: 768px) {
  .card-content {
    grid-template-columns: 1fr;
    /* Stack elements vertically */
  }
}

/* List container */
.list-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}










/* Dashboard Summary Checklist */


        
        /* Modern Dashboard Summary Checklist */
        #dashboard-summary-checklist {
           font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
            background: #d8e7f7;
            padding: 2rem;
            line-height: 1.6;
            background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
            border-radius: 20px;
            box-shadow: 
                0 1px 3px rgba(0, 0, 0, 0.12),
                0 8px 32px rgba(0, 0, 0, 0.06),
                0 0 0 1px rgba(255, 255, 255, 0.05);
            padding: 2.5rem;
            margin: 0 auto 2rem auto;
            max-width: 1400px;
            width: 100%;
            border: 1px solid rgba(226, 232, 240, 0.8);
            position: relative;
            overflow: hidden;
        }

        #dashboard-summary-checklist::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 4px;
            background: linear-gradient(90deg, #18A558, #5cf6e2, #21B6A8);
            border-radius: 20px 20px 0 0;
        }

        #dashboard-summary-checklist h3 {
            color: #1e293b;
            margin-bottom: 2rem;
            font-weight: 700;
            font-size: clamp(1.5rem, 3vw, 1.875rem);
            letter-spacing: -0.025em;
            text-align: center;
            background: linear-gradient(135deg, #18A558 0%, #21B6A8 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }

        .checklist-container {
            width: 100%;
        }

        #checklistItems {
            list-style: none;
            padding: 0;
            margin: 0;
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        #checklistItems li {
            background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
            border: 1px solid #e5e7eb;
            border-radius: 12px;
            padding: 1rem 1.25rem;
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
            position: relative;
            overflow: hidden;
        }

        #checklistItems li::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 4px;
            background: linear-gradient(90deg, #18A558, #5cf6e2, #21B6A8);
            transform: scaleY(0);
            transition: transform 0.2s ease;
        }

        #checklistItems li:hover {
            transform: translateY(-2px);
            box-shadow: 
                0 4px 12px rgba(0, 0, 0, 0.1),
                0 2px 4px rgba(0, 0, 0, 0.06);
            border-color: #d1d5db;
        }

        #checklistItems li:hover::before {
            transform: scaleY(1);
        }

        #checklistItems li a {
            text-decoration: none;
            color: #374151;
            font-weight: 500;
            font-size: 0.95rem;
            display: flex;
            align-items: center;
            gap: 0.75rem;
            transition: color 0.2s ease;
        }

        #checklistItems li:hover a {
            color: #1f2937;
        }

        #checklistItems li a::before {
            content: '✔';
            font-size: 1.25rem;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 2rem;
            height: 2rem;
            background: linear-gradient(135deg, #f3f4f6, #e5e7eb);
            border-radius: 8px;
            transition: all 0.2s ease;
        }

        #checklistItems li:hover a::before {
            background: linear-gradient(135deg, #ddd6fe, #c7d2fe);
            transform: scale(1.05);
        }

        /* Special styling for success message */
        #checklistItems li:has(a[href=""]) {
            background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
            border-color: #bbf7d0;
        }

        #checklistItems li:has(a[href=""]) a {
            color: #15803d;
            font-weight: 600;
        }

        #checklistItems li:has(a[href=""]) a::before {
            background: linear-gradient(135deg, #bbf7d0, #86efac);
        }

        /* Responsive design */
        @media (max-width: 768px) {
            #dashboard-summary-checklist {
                padding: 1.5rem;
                margin: 0 1rem 1.5rem 1rem;
            }

            #checklistItems li {
                padding: 0.875rem 1rem;
            }

            #checklistItems li a {
                font-size: 0.9rem;
                gap: 0.625rem;
            }

            #checklistItems li a::before {
                width: 1.75rem;
                height: 1.75rem;
                font-size: 1.125rem;
            }
        }

        @media (max-width: 480px) {
           
            #dashboard-summary-checklist {
                padding: 1.25rem;
                margin: 0;
            }

            #dashboard-summary-checklist h3 {
                margin-bottom: 1.5rem;
            }

            #checklistItems {
                gap: 0.625rem;
            }
        }




/* Toggle button style */
.expert-comment-toggle {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #fd49a0 0%, #be185d 100%);
  color: white;
  border-radius: 24px;
  display: grid;
  place-items: center;
  cursor: pointer;
  margin: 0 auto 16px auto;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  box-shadow:
    0 4px 12px rgba(236, 72, 153, 0.3),
    0 2px 4px rgba(0, 0, 0, 0.1);
  border: 2px solid rgba(255, 255, 255, 0.2);

}

.expert-comment-toggle:hover {
  transform: translateY(-2px) scale(1.05);
  box-shadow:
    0 8px 24px rgba(236, 72, 153, 0.4),
    0 4px 8px rgba(0, 0, 0, 0.15);
  background: linear-gradient(135deg, #fd49a0 0%, #a92059 100%);
}

.expert-comment-toggle:active {
  transform: translateY(0) scale(1.02);
}

.expert-comment-toggle .arrow-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Arrow icon styling */
.arrow-icon {
  display: block;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  line-height: 0;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  padding: 0;
  user-select: none;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}

/* Rotate the arrow when open */
.expert-comment-toggle.open .arrow-icon {
  transform: translate(-50%, -50%) rotate(90deg);
}

.expert-comment-toggle.open {
  background: linear-gradient(135deg, #fd49a0 0%, #fd49a0 100%);
}

/* Comment container style */
.expert-comment-container {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto 24px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: left;
  color: white;
  padding: 32px 28px 32px 96px;
  background: linear-gradient(135deg, #ec4899 0%, #4120a9 100%);
  border-radius: 20px;
  box-shadow:
    0 4px 24px rgba(236, 72, 153, 0.25),
    0 2px 8px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.15);

  position: relative;
  overflow: hidden;
}

.expert-comment-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
}





/* Expert profile picture */
/* Expert profile picture */
.expert-comment-container::after {
  content: '';
  position: absolute;
  top: 32px;
  left: 28px;
  width: 66px;
  height: 66px;
  background: rgba(255, 255, 255, 0.15);
  background-image: url("/static/images/customer-support.png");
  background-size: 44px 44px;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, 0.2);

  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.expert-comment-container h3 {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: center;
  color: white;
  font-weight: 700;
  font-size: clamp(1.25rem, 3vw, 1.5rem);
  margin: 0 0 20px 0;
  letter-spacing: -0.025em;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.expert-comment-container p {
  line-height: 1.6;
  font-size: 16px;
  margin-bottom: 16px;
  font-weight: 400;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.expert-comment-container p:last-child {
  margin-bottom: 0;
  font-style: italic;
  opacity: 0.9;
  font-size: 14px;
  text-align: right;
  font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .expert-comment-container {
    padding: 24px 20px 24px 80px;
    margin: 0 auto 20px auto;
  }

  .expert-comment-container::after {
    top: 24px;
    left: 20px;
    width: 48px;
    height: 48px;
    font-size: 20px;
  }

  .expert-comment-toggle {
    width: 44px;
    height: 44px;
    margin: 0 auto 12px auto;
  }

  .arrow-icon {
    font-size: 14px;
  }
}






/* SECURITY */



/* Security Crawler Report Styles - Matching General Results Style */

/* Main Security Results Container */
.security-results {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  text-align: center;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

/* Title Styling */
.security-results h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #3400ee 0%, #6366f1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Report Subtitle */
.report-subtitle {
  color: #64748b;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 32px;
  letter-spacing: -0.01em;
}

/* Success Message */
.success-message {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: white;
  padding: 32px;
  border-radius: 20px;
  margin-bottom: 32px;
  box-shadow: 0 4px 24px rgba(16, 185, 129, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.success-icon {
  font-size: 48px;
  margin-bottom: 16px;
}

.success-message h4 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 8px;
}

.success-message p {
  font-size: 16px;
  opacity: 0.95;
}

/* Card Grid */
.security-results .cards {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 24px;
  justify-content: center;
  align-items: stretch;
}

/* Individual Cards */
.security-results .card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.05),
    0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
  border: 1px solid rgba(255, 255, 255, 0.3);

  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.security-results .card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #4120A9, #6366f1, #8b5cf6);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.security-results .card:hover::before {
  opacity: 1;
}

/* Card Type Variations */
.secure-card::before {
  background: linear-gradient(90deg, #10b981, #059669, #047857) !important;
}

.warning-card::before {
  background: linear-gradient(90deg, #f59e0b, #d97706, #b45309) !important;
}

.danger-card::before {
  background: linear-gradient(90deg, #ef4444, #dc2626, #b91c1c) !important;
}

/* Icons */
.security-results .icons {
  width: 72px;
  height: 72px;
  margin: 0 auto 16px;
  padding: 16px;
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  transition: all 0.3s ease;
}

.icon-placeholder {
  width: 40px;
  height: 40px;
  object-fit: contain;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}


/* Card Text Styling */
.security-results .card h3 {
  color: #1e293b;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 12px;
  letter-spacing: -0.015em;
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  background-clip: unset;
}

.security-results .card p {
  color: #64748b;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 4px;
}

.card-value {
  color: #1e293b !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.secure-card .card-value {
  color: #10b981 !important;
}

.warning-card .card-value {
  color: #f59e0b !important;
}

.danger-card .card-value {
  color: #ef4444 !important;
}

.card-percentage {
  color: #64748b !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  opacity: 0.8;
}

.card-subtext {
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  opacity: 0.7;
}

/* Security Issues Section */
.security-issues {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

.security-issues h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.issues-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.issue-item {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: all 0.3s ease;
}

.issue-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.issue-indicator {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ef4444;
  margin-top: 4px;
  flex-shrink: 0;
}

.issue-item[data-severity="warning"] .issue-indicator {
  background: #f59e0b;
}

.issue-item[data-severity="low"] .issue-indicator {
  background: #10b981;
}

.issue-content {
  flex: 1;
}

.issue-title {
  color: #1e293b;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

.issue-description {
  color: #64748b;
  font-size: 15px;
  line-height: 1.5;
  margin-bottom: 12px;
}

.issue-url {
  background: #f1f5f9;
  padding: 8px 12px;
  border-radius: 8px;
  font-family: 'Courier New', Monaco, monospace;
  font-size: 14px;
  color: #4120A9;
  display: block;
  word-break: break-all;
}

/* URLs Section */
.urls-section {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

.urls-section h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #3400ee 0%, #6366f1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.urls-table-container {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
 
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.urls-table {
  width: 100%;
  border-collapse: collapse;
}

.urls-table th {
  background: linear-gradient(135deg, #4120A9 0%, #6366f1 100%);
  color: white;
  padding: 16px;
  text-align: left;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.urls-table td {
   color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 16px;
  border-bottom: 1px solid #e2e8f0;
  font-size: 14px;
}

.urls-table tr:last-child td {
   color: #64748b;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  border-bottom: none;
}

.urls-table tr:hover {
  background: rgba(65, 32, 169, 0.02);
}

.status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #10b981;
  display: inline-block;
}

.url-row[data-status="warning"] .status-indicator {
  background: #f59e0b;
}

.url-row[data-status="danger"] .status-indicator {
  background: #ef4444;
}

.url-cell {
  font-family: 'Courier New', Monaco, monospace;
  color: #4120A9;
  word-break: break-all;
  max-width: 300px;
}

.https-cell, .sensitive-cell {
  font-weight: 600;
}

.risk-cell {
  font-weight: 600;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.05em;
}

/* Recommendations Section */
.recommendations-section {
  width: 90%;
  max-width: 1400px;
  margin: 20px auto;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  padding: 32px;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

}

.recommendations-section h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #4120A9 0%, #6366f1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.recommendations-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.recommendation-item {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  gap: 16px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.3);
  transition: all 0.3s ease;
}

.recommendation-item:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
}

.recommendation-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, #4120A9 0%, #6366f1 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 16px;
  flex-shrink: 0;
}

.recommendation-content {
  flex: 1;
}

.recommendation-title {
  color: #1e293b;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 8px;
}

.recommendation-description {
  color: #64748b;
  font-size: 15px;
  line-height: 1.5;
}

/* Responsive Design */
@media (max-width: 1200px) {
  .security-results .cards {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 768px) {
  .security-results .cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  
  .security-results, .security-issues, .urls-section, .recommendations-section {
    width: 95%;
    margin: 10px auto;
    padding: 20px;
  }
  
  .urls-table-container {
    overflow-x: scroll;
  }
}

@media (max-width: 480px) {
  .security-results .cards {
    grid-template-columns: 1fr;
  }
}




/* Web Health Section Cards */
#web-health-section .cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  justify-content: center;
  align-items: stretch;
  margin-bottom: 32px;
}

#web-health-section .card {
  background: rgba(255, 255, 255, 0.9);
  padding: 24px 20px;
  border-radius: 20px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05), 0 4px 12px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 140px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid rgba(226, 232, 240, 0.6);

}

#web-health-section .card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.07), 0 8px 25px rgba(0, 0, 0, 0.15);
  border-color: rgba(99, 102, 241, 0.3);
}

#web-health-section .card h3 {
  color: #1e293b;
  font-size: 14px;
  font-weight: 600;
  margin: 12px 0 8px;
  letter-spacing: -0.01em;
}

#web-health-section .card-value {
  color: #4120A9;
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 700;
  margin: 4px 0;
  line-height: 1.2;
}

#web-health-section .card-subtext {
  color: #64748b;
  font-size: 12px;
  margin: 4px 0 0;
  line-height: 1.4;
}

#web-health-section .icons {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin: 0 auto 8px;
  border-radius: 12px;
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
  border: 1px solid rgba(226, 232, 240, 0.8);
}

#web-health-section .icon-placeholder {
  font-size: 20px;
  line-height: 1;
}

/* Responsive Design for Web Health Cards */
@media (max-width: 1200px) {
  #web-health-section .cards {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  #web-health-section .cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}

@media (max-width: 480px) {
  #web-health-section .cards {
    grid-template-columns: 1fr;
  }
}







/* Q&A Accordion Section */
#qa-accordion-section {
  display: flex;
  /* Hidden by default */
  flex-direction: column;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

  padding: 32px;
  margin: 20px auto;
  margin-bottom: 20px;
  max-width: 1400px;
  width: 90%;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

#qa-accordion-section h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.accordion-container {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.accordion-item {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #f0f0f0;
  transition: all 0.3s ease;
}

.accordion-item:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.accordion-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  background-color: #f9fafb;
  cursor: pointer;
  user-select: none;
}

.accordion-title {
  font-weight: 600;
  color: #4b5563;
  font-size: 15px;
}

.accordion-icon {
  font-size: 18px;
  font-weight: 300;
  color: #6b7280;
  transition: transform 0.3s ease;
}

.accordion-item.active .accordion-icon {
  transform: rotate(45deg);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  background-color: white;
}

.accordion-item.active .accordion-content {
  max-height: 300px;
  /* Adjust based on your content */
}

.accordion-content p {
  padding: 16px 20px;
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #4b5563;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .accordion-title {
    font-size: 14px;
  }

  .accordion-content p {
    font-size: 13px;
    padding: 14px 16px;
  }
}

  /* EXPORT SECTION */
/* Export Section */

#export-section {
display: none;
  flex-direction: column;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
  border-radius: 24px;
  box-shadow:
    0 1px 3px rgba(0, 0, 0, 0.1),
    0 4px 24px rgba(0, 0, 0, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.2);

  padding: 32px;
  margin: 24px auto;
  margin-bottom: 200px;
  max-width: 1400px;
  width: 90%;
}

#export-section h3 {
  color: #1e293b;
  margin-bottom: 32px;
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 2rem);
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-align: center;
}

.export-container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center; 
  justify-content: space-between; 
}
.export-options {
  flex-shrink: 0;
}

.export-info {
  flex-grow: 1;
}
.export-options {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.export-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: white;
  color: #333;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  padding: 10px 20px;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s;
  min-width: 160px;
}

.export-btn:hover {
  background-color: #f5f5f5;
}

#download-pdf-btn {
  background-color: #4120A9;
  color: white;
  border-color: #4120A9;
}

#download-pdf-btn:hover {
  background-color: #351a8a;
}

#download-csv-btn {
  background-color: #fd49a0;
  color: white;
  border-color: #fd49a0;
}

#download-csv-btn:hover {
  background-color: #e83c8e;
}

.export-info {
  background-color: #f8f9fa;
  border-radius: 6px;
  padding: 16px;
  border-left: 2px solid #4120A9;
}

.export-info p {
  margin: 0;
  font-size: 14px;
  color: #555;
  line-height: 1.4;
}

@media (max-width: 768px) {
  #export-section {
    padding: 20px;
    width: 95%;
  }

  .export-options {
    flex-direction: column;
  }

  .export-btn {
    width: 100%;
  }
}

@media print {

  /* Hide export section */
  #export-section {
    display: flex !important;
  }

  /* Keep the purple background */
  body {
    background: #35018a !important;
    /* your desired purple shade */
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Optionally hide nav/footer/other bits */
  nav,
  footer {
    display: none !important;
  }

  /* Avoid breaking charts mid-page */
  .chart-container,
  .card {
    page-break-inside: avoid;
  }
}

/* STATUS SECTION PIE CHART  */
.piechart-main-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 16px;
}

/* Pie Chart Box - Now takes half the space */
.piechart-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 24px;
  background: linear-gradient(135deg, rgba(255,255,255,0.95) 0%, rgba(255,255,255,0.9) 100%);
  border-radius: 20px;
  box-shadow: 
    0 4px 16px rgba(0, 0, 0, 0.08),
    0 1px 4px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(10px);
  height: fit-content;
}

/* Pie Chart Container - Larger size */
.piechart-container {
  width: 100%;
  height: 350px;
  min-height: 300px;
  position: relative;
  display: flex;           /* ← Add this */
  align-items: center;     /* ← Add this */
  justify-content: center;
}

/* Title styling */
.piechart-box h4 {
  width: 100%;
  font-size: 18px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
  text-align: center;
  justify-content: center;
}

/* Modern Status Tip Box */
.status-tip-box {
  display: flex;
 
  border-radius: 20px;
  padding: 28px;
  box-shadow: 
    0 4px 16px rgba(0, 0, 0, 0.08),
    0 1px 4px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(59, 130, 246, 0.1);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  backdrop-filter: blur(10px);
  height: fit-content;
  position: relative;
  overflow: hidden;
}

.status-tip-box::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  
  border-radius: 20px 20px 0 0;
}

.tip-icon {
  font-size: 28px;
  margin-right: 20px;
  display: flex;
  align-items: flex-start;
  padding-top: 4px;
  filter: drop-shadow(0 2px 4px rgba(59, 130, 246, 0.2));
}

.tip-content {
  flex: 1;
}

.tip-content h4 {
  font-size: 18px;
  font-weight: 700;
  color: #1e40af;
  margin: 0 0 12px 0;
  background: linear-gradient(135deg, #1e40af, #7c3aed);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tip-content p {
  font-size: 15px;
  color: #4b5563;
  margin: 0 0 8px 0;
  line-height: 1.6;
  font-weight: 500;
}

.tip-content p:last-child {
  margin-bottom: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
  .piechart-main-container {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 0 12px;
  }
  
  .piechart-container {
    height: 280px;
    min-height: 250px;
  }
  
  .piechart-box h4 {
    font-size: 16px;
  }
  
  .webhealth-tip-box {
    padding: 20px;
  }
  
  .tip-content h4 {
    font-size: 16px;
  }
  
  .tip-content p {
    font-size: 14px;
  }
  
  .tip-icon {
    font-size: 24px;
    margin-right: 16px;
  }
}

@media (max-width: 480px) {
  .piechart-main-container {
    gap: 16px;
    padding: 0 8px;
  }
  
  .piechart-box, .status-tip-box {
    padding: 16px;
    border-radius: 16px;
  }
  
  .piechart-container {
    height: 240px;
    min-height: 220px;
  }
}





.blur-content {
  filter: blur(2.5px);
  pointer-events: none;
  user-select: none;
  opacity: 0.4; /* optional: to signal it's demo data */
  transition: filter 0.3s ease;
}



.demo-popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(30, 41, 59, 0.75); /* dark overlay */
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

.demo-popup {
  background: white;
  max-width: 400px;
  width: 90%;
  padding: 32px;
  border-radius: 16px;
  text-align: center;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

.demo-popup h3 {
  margin-bottom: 12px;
  font-size: 1.2rem;
  color: #1e293b;
}

.demo-popup p {
  font-size: 14px;
  color: #475569;
  margin-bottom: 24px;
}

.demo-popup-button {
  display: inline-block;
  padding: 10px 20px;
  background: #6366f1;
  color: white;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s ease;
}

.demo-popup-button:hover {
  background: #4f46e5;
}

.demo-popup-close {
  background: none;
  border: none;
  margin-top: 16px;
  font-size: 14px;
  color: #64748b;
  cursor: pointer;
}
