/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 18 2025 | 11:00:18 */
/* Container */
.wporg-plugin-widget {
  margin: 1.5rem 0;
}

.wporg-plugin-widget__inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.08);
  border: 1px solid rgba(148, 163, 184, 0.3);
}

/* Header layout */
.wporg-plugin-widget__header {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 1rem;
}

@media (max-width: 768px) {
  .wporg-plugin-widget__header {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    gap: 1rem;
  }

  .wporg-plugin-widget__actions {
    justify-content: flex-start;
  }
}

/* Icon */
.wporg-plugin-widget__icon-wrap {
  width: 64px;
  height: 64px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #ede9fe, #e0f2fe);
}

.wporg-plugin-widget__icon {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Title + meta */
.wporg-plugin-widget__title-block {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.wporg-plugin-widget__name {
  font-size: 1.3rem;
  font-weight: 700;
  color: #0f172a;
}

.wporg-plugin-widget__meta-line {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 0.8rem;
  font-size: 0.82rem;
  color: #64748b;
}

.wporg-plugin-widget__meta-item {
  padding: 0.1rem 0.5rem;
  border-radius: 999px;
  background: rgba(148, 163, 184, 0.15);
}

/* Actions: rating + buttons */
.wporg-plugin-widget__actions {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  align-items: flex-end;
}

.wporg-plugin-widget__buttons {
  display: flex;
  gap: 0.6rem;
}

/* Buttons */
.wporg-plugin-widget__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  padding: 0.45rem 1.1rem;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  border: 1px solid transparent;
  transition: transform 0.1s ease, box-shadow 0.1s ease, background 0.1s ease, color 0.1s ease;
}

.wporg-plugin-widget__button--primary {
  background: linear-gradient(135deg, #7c3aed, #4f46e5);
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(79, 70, 229, 0.35);
}

.wporg-plugin-widget__button--primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(79, 70, 229, 0.45);
}

.wporg-plugin-widget__button--ghost {
  background: transparent;
  color: #4f46e5;
  border-color: rgba(79, 70, 229, 0.35);
}

.wporg-plugin-widget__button--ghost:hover {
  background: rgba(79, 70, 229, 0.06);
}

/* Rating display */
.wporg-plugin-widget__rating-wrap {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.2rem;
  font-size: 0.8rem;
  color: #64748b;
}

.wporg-plugin-widget__rating-bar {
  position: relative;
  width: 88px;
  height: 18px;
  border-radius: 999px;
  background: repeating-linear-gradient(
    90deg,
    #e2e8f0,
    #e2e8f0 18px,
    #cbd5f5 18px,
    #cbd5f5 18px
  );
  overflow: hidden;
}

.wporg-plugin-widget__rating-bar-fill {
  position: absolute;
  inset: 0;
  width: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, #facc15, #f97316);
  transition: width 0.35s ease-out;
}

.wporg-plugin-widget__rating-count {
  font-size: 0.78rem;
}

/* Description */
.wporg-plugin-widget__description-block {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  font-size: 0.9rem;
  color: #1e293b;
}

.wporg-plugin-widget__description {
  position: relative;
  line-height: 1.5;
  max-height: 3.3em; /* about 2 lines */
  overflow: hidden;
  transition: max-height 0.25s ease;
}

.wporg-plugin-widget__description[data-collapsed="false"] {
  max-height: 100vh;
}

.wporg-plugin-widget__description-toggle {
  align-self: flex-start;
  border: none;
  background: transparent;
  font-size: 0.85rem;
  font-weight: 600;
  color: #4f46e5;
  cursor: pointer;
  padding: 0;
}

/* Features */
.wporg-plugin-widget__features {
  border-top: 1px dashed rgba(148, 163, 184, 0.5);
  padding-top: 0.75rem;
}

.wporg-plugin-widget__features-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 0.4rem 0.8rem;
}

.wporg-plugin-widget__feature-item {
  display: flex;
  align-items: flex-start;
  gap: 0.4rem;
  font-size: 0.9rem;
  color: #0f172a;
}

.wporg-plugin-widget__feature-check {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(135deg, #22c55e, #16a34a);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.wporg-plugin-widget__feature-check::before {
  content: "✓";
  font-size: 0.85rem;
  color: #ffffff;
}

/* Footer: author + homepage + contributors */
.wporg-plugin-widget__footer {
  border-top: 1px solid rgba(148, 163, 184, 0.35);
  padding-top: 0.75rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem 1.2rem;
  align-items: center;
  font-size: 0.82rem;
  color: #64748b;
}

.wporg-plugin-widget__author a,
.wporg-plugin-widget__homepage a {
  color: #4f46e5;
  text-decoration: none;
}

.wporg-plugin-widget__author a:hover,
.wporg-plugin-widget__homepage a:hover {
  text-decoration: underline;
}

.wporg-plugin-widget__contributors {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.wporg-plugin-widget__contributors-list {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.wporg-plugin-widget__contributor {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.wporg-plugin-widget__contributor-avatar {
  width: 20px;
  height: 20px;
  border-radius: 999px;
  object-fit: cover;
}

/* Error state */
.wporg-plugin-widget--error {
  padding: 1rem;
  border-radius: 8px;
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #7f1d1d;
  font-size: 0.9rem;
}

/* Expanded long description gets its own scroll area */
.wporg-plugin-widget__description[data-collapsed="false"] {
  max-height: 300px;           /* choose appropriate height */
  overflow-y: auto;            /* vertical scroll bar */
  padding-right: 6px;          /* add breathing room from scrollbar */
  scrollbar-width: thin;       /* Firefox */
}

/* Optional: prettier scrollbar for WebKit browsers */
.wporg-plugin-widget__description[data-collapsed="false"]::-webkit-scrollbar {
  width: 6px;
}

.wporg-plugin-widget__description[data-collapsed="false"]::-webkit-scrollbar-track {
  background: rgba(0,0,0,0.05);
  border-radius: 10px;
}

.wporg-plugin-widget__description[data-collapsed="false"]::-webkit-scrollbar-thumb {
  background: rgba(79,70,229,0.5); /* purple accent */
  border-radius: 10px;
}

