:root{
  --wpsc-primary:#37788e;
  --wpsc-primary-dark:#224e5f;
  --wpsc-primary-soft:#e8f0f2;
  --wpsc-accent:#c53026;
  --wpsc-accent-strong:#d96122;
  --wpsc-accent-soft:#f6e9e2;
  --wpsc-ink:#1f2d33;
  --wpsc-muted:#5f6f77;
  --wpsc-border:rgba(55,120,142,.16);
  --wpsc-shadow:0 18px 50px rgba(34,78,95,.10);
}
body{
  background:
    radial-gradient(circle at top left, rgba(55,120,142,.16), transparent 22%),
    radial-gradient(circle at top right, rgba(201,48,38,.10), transparent 18%),
    linear-gradient(180deg, #faf8f6, #f3f6f6 52%, #fbf8f5);
  color:var(--wpsc-ink);
}
.navbar{
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(10px);
}
.navbar-brand span{
  color:var(--wpsc-primary-dark);
}
.nav-link{
  color:var(--wpsc-primary-dark)!important;
}
.nav-link:hover{
  color:var(--wpsc-accent)!important;
}
.app-logo{width:34px;height:auto;display:block}
.hero-card,.panel-card,.plan-card,.summary-card{
  background:linear-gradient(180deg, rgba(255,255,255,.97), rgba(251,249,247,.99));
  border:1px solid var(--wpsc-border);
  border-radius:1.5rem;
  box-shadow:var(--wpsc-shadow);
}
.hero-grad{
  background:
    radial-gradient(circle at top left, rgba(255,255,255,.18), transparent 30%),
    linear-gradient(135deg, rgba(34,78,95,.98), rgba(55,120,142,.95) 58%, rgba(201,48,38,.88));
  color:white;
}
.metric-box{
  background:linear-gradient(180deg, rgba(55,120,142,.06), rgba(217,97,34,.05));
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  padding:1rem;
}
.form-control,.form-select{
  background:rgba(255,255,255,.96);
  border-color:rgba(55,120,142,.20);
  color:var(--wpsc-ink);
}
.form-control:focus,.form-select:focus{
  background:#fff;
  border-color:rgba(55,120,142,.44);
  box-shadow:0 0 0 .25rem rgba(55,120,142,.14);
}
.table-soft > :not(caption) > * > *{
  background:transparent;
  color:var(--wpsc-ink);
  border-color:var(--wpsc-border);
}
.small-muted{color:var(--wpsc-muted)}
.api-key-box{
  background:linear-gradient(180deg, var(--wpsc-primary-soft), #f4f8f8);
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  padding:.95rem 1rem;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  color:var(--wpsc-primary-dark);
  word-break:break-all;
}
.section-eyebrow{
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.78rem;
  font-weight:700;
  color:var(--wpsc-accent);
}
.badge.text-bg-secondary{
  background:var(--wpsc-primary-soft)!important;
  color:var(--wpsc-primary-dark)!important;
}
.btn-primary{
  --bs-btn-bg:var(--wpsc-accent);
  --bs-btn-border-color:var(--wpsc-accent);
  --bs-btn-hover-bg:#ad2a22;
  --bs-btn-hover-border-color:#ad2a22;
  --bs-btn-active-bg:#96241d;
  --bs-btn-active-border-color:#96241d;
  --bs-btn-disabled-bg:var(--wpsc-accent);
  --bs-btn-disabled-border-color:var(--wpsc-accent);
}
.btn-outline-primary{
  --bs-btn-color:var(--wpsc-primary);
  --bs-btn-border-color:var(--wpsc-primary);
  --bs-btn-hover-bg:var(--wpsc-primary);
  --bs-btn-hover-border-color:var(--wpsc-primary);
  --bs-btn-active-bg:var(--wpsc-primary-dark);
  --bs-btn-active-border-color:var(--wpsc-primary-dark);
  --bs-btn-hover-color:#fff;
}
.btn-light{
  color:var(--wpsc-primary-dark)!important;
}
.text-primary{
  color:var(--wpsc-primary)!important;
}
.border-primary{
  border-color:rgba(201,48,38,.35)!important;
}
.bg-primary-subtle{
  background:linear-gradient(180deg, rgba(201,48,38,.08), rgba(217,97,34,.06))!important;
}
.alert-success{
  background:#eef7f2;
  color:#24443b;
  border-color:#cfe6db;
}
.alert-warning{
  background:#faf3ec;
  color:#6a452f;
  border-color:#f0dac9;
}
.alert-danger{
  background:#f9eceb;
  color:#7a2d28;
  border-color:#edcfcd;
}
.hero-card .badge{
  color:var(--wpsc-primary-dark)!important;
}
.illustration-card{
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.illustration-card img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
  object-position:center;
}
@media (min-width: 992px){
  .illustration-card img{
    max-height:420px;
  }
}

.feature-illustration{
  background:linear-gradient(180deg, rgba(55,120,142,.04), rgba(217,97,34,.04));
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  padding:.45rem;
  min-height:132px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.feature-illustration img{
  width:100%;
  height:132px;
  object-fit:contain;
}

.demo-callout{
  background:linear-gradient(180deg, rgba(55,120,142,.06), rgba(217,97,34,.05));
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  padding:1rem 1.1rem;
}
img{max-width:100%;height:auto}


.panel-card ul li{
  margin-bottom:.55rem;
}
.panel-card code{
  background:rgba(55,120,142,.08);
  color:var(--wpsc-primary-dark);
  padding:.12rem .36rem;
  border-radius:.4rem;
}


.requirements-list li{
  margin-bottom:.55rem;
}


footer a{
  color:var(--wpsc-primary-dark);
  text-decoration:none;
}
footer a:hover{
  color:var(--wpsc-accent);
}


.protected-downloads-note{
  color:var(--wpsc-muted);
}


.plugin-download-status{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.6rem 1rem;
  padding:1rem 1.1rem;
  background:linear-gradient(180deg, rgba(55,120,142,.05), rgba(217,97,34,.04));
  border:1px solid rgba(55,120,142,.14);
  border-radius:1rem;
}
.plugin-download-status code{
  background:rgba(55,120,142,.08);
  color:var(--wpsc-primary-dark);
  padding:.1rem .35rem;
  border-radius:.35rem;
  word-break:break-all;
}


.form-check-label a{
  color:var(--wpsc-primary-dark);
  font-weight:600;
  text-decoration:underline;
}
.form-check-label a:hover{
  color:var(--wpsc-accent);
}


.review-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.review-card{
  padding:1rem 1.1rem;
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(251,249,247,.98));
}
.review-card-wide{
  grid-column:1 / -1;
}
.review-label{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--wpsc-muted);
  margin-bottom:.45rem;
  font-weight:700;
}
.review-value{
  color:var(--wpsc-ink);
  word-break:break-word;
}
@media (max-width: 767.98px){
  .review-grid{
    grid-template-columns:1fr;
  }
}


.review-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.review-card{
  padding:1rem 1.1rem;
  border:1px solid var(--wpsc-border);
  border-radius:1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(251,249,247,.98));
  box-shadow:0 6px 18px rgba(20,40,50,.04);
}
.review-card-accent{
  background:linear-gradient(135deg, rgba(34,78,95,.08), rgba(55,120,142,.06));
}
.review-card-wide{
  grid-column:1 / -1;
}
.review-label{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--wpsc-muted);
  margin-bottom:.45rem;
  font-weight:700;
}
.review-value{
  color:var(--wpsc-ink);
  word-break:break-word;
}
.review-big{
  font-size:1.18rem;
  font-weight:700;
}
.review-subvalue{
  color:var(--wpsc-muted);
  margin-top:.25rem;
}
.review-metadata{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.65rem 1rem;
  color:var(--wpsc-ink);
}
.verification-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  padding:1.2rem 1.25rem;
  border-radius:1.1rem;
  border:1px solid rgba(55,120,142,.16);
  background:linear-gradient(135deg, rgba(34,78,95,.06), rgba(217,97,34,.05));
}
.verification-eyebrow{
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:var(--wpsc-muted);
  font-weight:700;
  margin-bottom:.35rem;
}
.verification-heading{
  font-size:1.35rem;
  margin:0 0 .45rem;
}
.verification-copy{
  color:var(--wpsc-muted);
  max-width:52rem;
}
.verification-badges{
  display:flex;
  flex-direction:column;
  gap:.55rem;
  min-width:220px;
}
.verification-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:.55rem .85rem;
  border-radius:999px;
  font-weight:700;
  border:1px solid rgba(31,45,51,.10);
  background:#f4f6f6;
  color:var(--wpsc-ink);
}
.verification-chip.is-valid{
  background:rgba(25,135,84,.12);
  color:#0f5132;
  border-color:rgba(25,135,84,.2);
}
.verification-chip.is-pending{
  background:rgba(255,193,7,.14);
  color:#7a5b00;
  border-color:rgba(255,193,7,.25);
}
.payment-box{
  border:1px solid rgba(55,120,142,.14);
  border-radius:1rem;
  padding:1rem 1rem 1.1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,248,247,.98));
}
.verification-title{
  font-size:1rem;
  font-weight:700;
  color:var(--wpsc-primary-dark);
  margin-bottom:.35rem;
}
.payment-review-row{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
}
@media (max-width: 991.98px){
  .verification-hero{
    flex-direction:column;
  }
  .verification-badges{
    min-width:0;
    width:100%;
  }
}
@media (max-width: 767.98px){
  .review-grid,
  .review-metadata{
    grid-template-columns:1fr;
  }
  .payment-review-row{
    flex-direction:column;
  }
}


.trial-access-box{
  min-height: calc(3.5rem + 2px);
  border:1px solid rgba(55,120,142,.16);
  border-radius:1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,248,247,.98));
  padding:1rem 1.05rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.summary-card .d-grid.gap-3 > label{
  width:100%;
}
@media (max-width: 1199.98px){
  .summary-card{
    height:auto !important;
  }
}


.hero-card h1,
.panel-card h1,
.panel-card h2,
.panel-card h3{
  text-wrap:balance;
}


.credential-box,
.credential-status-box{
  border:1px solid rgba(55,120,142,.14);
  border-radius:1rem;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,248,247,.98));
  padding:1rem 1.05rem;
}

.credential-status-box{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:100%;
}

.credential-status-label{
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--wpsc-muted);
  font-weight:700;
  margin-bottom:.55rem;
}

.credential-hint-list{
  display:grid;
  gap:.25rem;
}

@media (max-width: 767.98px){
  .credential-status-box{
    min-height:auto;
  }
}


.hero-benefits{
  display:grid;
  gap:.75rem;
}

.hero-benefit-item{
  display:flex;
  align-items:flex-start;
  gap:.7rem;
  color:rgba(255,255,255,.92);
  line-height:1.55;
}

.hero-benefit-item i{
  flex:0 0 auto;
  font-size:1.05rem;
  margin-top:.12rem;
}

@media (max-width: 575.98px){
  .hero-benefit-item{
    font-size:.96rem;
  }
}


.password-toggle-group{
  display:flex;
  align-items:stretch;
  gap:0;
}

.password-toggle-group .form-control{
  border-top-right-radius:0;
  border-bottom-right-radius:0;
}

.password-toggle-btn{
  flex:0 0 auto;
  border-top-left-radius:0;
  border-bottom-left-radius:0;
  min-width:48px;
}
