/* The home page's "Custom conversions" section (#custom): the app's own screenshots in simple
   device frames, example chips and the feature list; plus the wide card at the end of the
   highlights grid. Colors follow style.css's tokens, so light and dark mode need nothing extra. */

.custom { --cs-accent: #7C5CFF; }
.cs-ex {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: -8px auto 44px; padding: 0; list-style: none; max-width: 860px;
}
.cs-ex li {
  padding: 8px 16px; border-radius: 999px; font-size: 15px; font-weight: 600; text-align: center;
  color: var(--ink);
  background: color-mix(in srgb, var(--cs-accent) 11%, var(--surface));
  border: 1px solid color-mix(in srgb, var(--cs-accent) 24%, transparent);
}

/* Screenshots */
.cs-shots { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 24px; align-items: start; }
.cs { margin: 0; display: flex; flex-direction: column; align-items: center; min-width: 0; }
.cs-frame {
  width: min(250px, 100%); padding: 7px; border-radius: 38px;
  background: linear-gradient(160deg, #3A3B42, #121317 40%, #0B0C0F);
  box-shadow: 0 30px 60px -26px rgba(20, 20, 30, .5), inset 0 0 0 1.2px rgba(255, 255, 255, .1), inset 0 0 0 4px #000;
}
.cs-frame img { width: 100%; height: auto; aspect-ratio: 600 / 1304; object-fit: cover; object-position: top; border-radius: 31px; background: #E9E6F4; }
.cs figcaption { margin-top: 16px; max-width: 250px; font-size: 14px; line-height: 1.55; color: var(--ink-2); text-align: left; }
.cs figcaption b { display: block; margin-bottom: 4px; font-size: 16px; line-height: 1.35; color: var(--ink); }

@media (max-width: 1099px) {
  .cs-shots { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 24px; }
}
/* Phones: one row to swipe through, so each screenshot stays big enough to read */
@media (max-width: 699px) {
  .cs-shots {
    display: flex; gap: 16px; margin: 0 -16px; padding: 4px 16px 18px; overflow-x: auto;
    scroll-snap-type: x mandatory; scroll-padding: 0 16px; -webkit-overflow-scrolling: touch;
  }
  .cs { flex: none; width: min(68vw, 250px); scroll-snap-align: start; align-items: stretch; }
  .cs-frame { width: 100%; }
  .cs figcaption { max-width: none; }
}

/* Feature list under the screenshots */
.cs-points { margin-top: 48px; grid-template-columns: 1fr; gap: 22px 40px; }
@media (min-width: 700px) { .cs-points { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .cs-points { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.cs-points li > div { min-width: 0; color: var(--ink-2); font-size: 15px; }
.cs-points b { margin-bottom: 2px; color: var(--ink); }
.custom .note { max-width: 40em; margin: 36px auto 0; }

/* The last card of the highlights grid spans the whole row */
.card-wide { grid-column: 1 / -1; display: flex; align-items: center; gap: 20px; }
.card-wide .ico { flex: none; }
.card-wide h3 { margin: 0 0 6px; }
.card-wide p { max-width: 52em; }
@media (max-width: 479px) { .card-wide { align-items: flex-start; } }
