/**
 * SEO Booster — Premium UI polish layer (presentation only)
 * Upload zones, dashboards, tables, FAQ, contact, responsive tweaks
 */

/* ── 48px Kadence infobox icons ── */
.sbi-saas-features .kt-info-box-icon-container,
.sbi-saas-how .kt-info-box-icon-container,
.sbi-saas-related .kt-info-box-icon-container,
.sbi-home-features .kt-info-box-icon-container {
  width: 48px !important;
  height: 48px !important;
  font-size: 24px !important;
}

.wp-block-kadence-infobox .kt-info-box-icon-container {
  transition: transform var(--sbi-transition), color var(--sbi-transition);
}

.wp-block-kadence-infobox:hover .kt-info-box-icon-container {
  transform: scale(1.05);
}

/* ── Premium upload zone ── */
.sbi-bc-upload-zone,
.sbi-gpc-upload-zone,
.sbi-pw-upload-zone {
  min-height: 320px;
  padding: 56px 32px;
  border: 2px dashed #cbd5e1;
  border-radius: var(--sbi-radius-lg);
  background: #fff;
  box-shadow: var(--sbi-shadow);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.sbi-bc-upload-zone:hover,
.sbi-gpc-upload-zone:hover,
.sbi-pw-upload-zone:hover {
  border-color: var(--sbi-primary);
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.08), var(--sbi-shadow-hover);
}

.sbi-bc-upload-zone.is-dragover,
.sbi-gpc-upload-zone.is-dragover,
.sbi-pw-upload-zone.is-dragover {
  border-color: var(--sbi-primary);
  background: var(--sbi-primary-soft);
  box-shadow: 0 0 0 6px rgba(37, 99, 235, 0.12), 0 12px 32px rgba(37, 99, 235, 0.15);
  animation: sbi-upload-glow 1.5s ease-in-out infinite alternate;
}

@keyframes sbi-upload-glow {
  from { box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1), var(--sbi-shadow-hover); }
  to { box-shadow: 0 0 0 8px rgba(37, 99, 235, 0.16), 0 16px 40px rgba(37, 99, 235, 0.12); }
}

.sbi-bc-upload-icon svg,
.sbi-bc-upload-icon {
  width: 56px;
  height: 56px;
  margin-bottom: 16px;
}

.sbi-bc-upload-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--sbi-text);
}

.sbi-bc-providers-row,
.sbi-saas-providers .sbi-bc-providers-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-top: 20px;
}

.sbi-bc-provider-chip {
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 0.8125rem;
  font-weight: 700;
  background: #fff;
  border: 1px solid var(--sbi-border);
  color: var(--sbi-text);
  transition: border-color var(--sbi-transition), transform var(--sbi-transition);
}

.sbi-bc-provider-chip:hover {
  border-color: var(--sbi-primary);
  transform: translateY(-1px);
}

/* ── Dashboard hero stats ── */
.sbi-bc-classification-hero,
.sbi-bc-intel-hero {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: var(--sbi-space-xs);
  margin-bottom: var(--sbi-space-sm);
}

.sbi-bc-hero-stat,
.sbi-bc-intel-stat {
  background: #fff;
  border: 1px solid var(--sbi-border);
  border-radius: var(--sbi-radius);
  padding: 20px 22px;
  box-shadow: var(--sbi-shadow);
  transition: transform var(--sbi-transition), box-shadow var(--sbi-transition);
}

.sbi-bc-hero-stat:hover,
.sbi-bc-intel-stat:hover {
  transform: translateY(-2px);
  box-shadow: var(--sbi-shadow-hover);
}

.sbi-bc-hero-stat-value,
.sbi-bc-intel-stat-value {
  font-size: 1.75rem;
  font-weight: 800;
  letter-spacing: -0.02em;
}

/* ── Tables ── */
.sbi-bc-table-wrap,
.sbi-gpc-table-wrap {
  border: 1px solid var(--sbi-border);
  border-radius: var(--sbi-radius);
  overflow: hidden;
  box-shadow: var(--sbi-shadow);
  background: #fff;
}

.sbi-bc-table tbody tr,
.sbi-gpc-table tbody tr {
  transition: background var(--sbi-transition);
}

.sbi-bc-table tbody tr:hover,
.sbi-gpc-table tbody tr:hover {
  background: var(--sbi-primary-soft);
}

.sbi-sticky-bar {
  top: 80px;
}

/* ── FAQ accordion premium ── */
.sbi-saas-faq .wp-block-kadence-accordion {
  max-width: 820px;
}

.sbi-saas-faq .kt-blocks-accordion-header {
  padding: 20px 24px !important;
  font-size: 1.0625rem !important;
  border-radius: var(--sbi-radius-sm) !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}

.sbi-saas-faq .kt-blocks-accordion-header:hover {
  background: var(--sbi-primary-soft) !important;
}

.sbi-saas-faq .kt-accordion-panel-inner {
  padding: 0 24px 20px !important;
  font-size: var(--sbi-font-body);
  line-height: var(--sbi-line-body);
  color: var(--sbi-muted);
}

/* ── Homepage: trusted strip ── */
.sbi-home-trusted {
  padding-block: var(--sbi-space-md);
  border-block: 1px solid var(--sbi-border);
  background: #fff;
}

.sbi-home-trusted-inner {
  max-width: var(--sbi-content-max);
  margin: 0 auto;
  padding-inline: 20px;
  text-align: center;
}

.sbi-home-trusted-label {
  font-size: var(--sbi-font-small);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--sbi-muted);
  margin-bottom: 16px;
}

.sbi-home-trusted-logos {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px 32px;
}

.sbi-home-trusted-logo {
  font-size: 0.9375rem;
  font-weight: 700;
  color: #94a3b8;
  letter-spacing: -0.01em;
}

/* ── Comparison table ── */
.sbi-home-comparison {
  overflow-x: auto;
}

.sbi-home-comparison table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  border-radius: var(--sbi-radius);
  overflow: hidden;
  box-shadow: var(--sbi-shadow);
}

.sbi-home-comparison th,
.sbi-home-comparison td {
  padding: 16px 20px;
  text-align: left;
  border-bottom: 1px solid var(--sbi-border);
  font-size: 0.9375rem;
}

.sbi-home-comparison th {
  background: var(--sbi-bg);
  font-weight: 700;
  color: var(--sbi-text);
}

.sbi-home-comparison td:first-child {
  font-weight: 600;
  color: var(--sbi-text);
}

.sbi-home-comparison .is-win {
  color: var(--sbi-success);
  font-weight: 700;
}

/* ── Contact support page ── */
.sbi-contact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--sbi-space-sm);
}

.sbi-contact-card {
  background: #fff;
  border: 1px solid var(--sbi-border);
  border-radius: var(--sbi-radius);
  padding: var(--sbi-card-padding);
  box-shadow: var(--sbi-shadow);
  transition: transform var(--sbi-transition), box-shadow var(--sbi-transition), border-color var(--sbi-transition);
}

.sbi-contact-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sbi-shadow-hover);
  border-color: #cbd5e1;
}

.sbi-contact-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--sbi-primary-soft);
  color: var(--sbi-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  font-size: 1.25rem;
  font-weight: 800;
}

.sbi-contact-card h3 {
  margin: 0 0 8px;
  font-size: var(--sbi-font-card);
}

.sbi-contact-card p {
  margin: 0;
  font-size: 0.9375rem;
}

.sbi-contact-meta {
  margin-top: var(--sbi-space-md);
  padding: var(--sbi-space-sm);
  background: var(--sbi-bg);
  border-radius: var(--sbi-radius);
  font-size: 0.9375rem;
}

/* ── Project workspace cards ── */
.sbi-pw-project-card {
  transition: transform var(--sbi-transition), box-shadow var(--sbi-transition);
}

.sbi-pw-project-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--sbi-shadow-hover);
}

.sbi-pw-empty {
  padding: var(--sbi-space-lg);
}

/* ── Responsive breakpoints ── */
@media (max-width: 1280px) {
  .sbi-saas-hero .kt-row-column-wrap { gap: var(--sbi-space-md); }
}

@media (max-width: 1024px) {
  .sbi-site-header-inner { height: auto; min-height: 64px; max-height: none; padding-block: 12px; }
  .sbi-bc-upload-zone { min-height: 260px; padding: 40px 20px; }
}

@media (max-width: 768px) {
  .sbi-saas-hero-cta { flex-direction: column; align-items: stretch; }
  .sbi-saas-hero-cta .sbi-bc-btn { width: 100%; }
  .sbi-home-comparison th, .sbi-home-comparison td { padding: 12px 14px; font-size: 0.875rem; }
}

@media (max-width: 480px) {
  .sbi-trust-pills { gap: 6px; }
  .sbi-trust-pill { font-size: 0.75rem; padding: 5px 10px; }
}

@media (prefers-reduced-motion: reduce) {
  .sbi-bc-upload-zone.is-dragover { animation: none; }
  .sbi-nav-dropdown-panel { transition: none; }
}
