/* Conversion components for blog articles: app screenshots, inline download
   cards, comparison marks, the sidebar card and the mobile sticky bar. */

/* ---- App screenshots ---- */
.shots{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px;margin:2em 0;padding:0;list-style:none}
.shots.one{grid-template-columns:minmax(0,280px);justify-content:center}
.shots.two{grid-template-columns:repeat(2,minmax(0,240px));justify-content:center}
.shots figure{margin:0;text-align:center}
.prose .shots img{display:block;width:100%;height:auto;border-radius:26px;border:1px solid var(--line);box-shadow:0 18px 40px rgba(60,48,150,.16);background:var(--mist)}
.shots figcaption{margin-top:10px;font-size:14px;line-height:1.45;color:var(--muted)}
.shots-note{text-align:center;font-size:14px;margin-top:-1em}

/* ---- Inline download card ---- */
.dl-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:center;margin:2.2em 0;padding:22px 24px;border-radius:24px;background:linear-gradient(160deg,#14112B 0%,#221D4A 100%);color:var(--on-dark);border:1px solid rgba(169,162,246,.35)}
.dl-card img.dl-icon{width:64px;height:64px;border-radius:15px;border:0}
.dl-card p{margin:0;color:var(--on-dark-soft);font-size:16px;line-height:1.55}
.dl-card strong{display:block;color:var(--on-dark);font-family:var(--display);font-size:20px;line-height:1.25;margin-bottom:4px}
.dl-card .dl-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center}
.dl-card .badge-link img{width:150px;border:0;border-radius:0}
.dl-card .dl-fine{font-size:13.5px;color:var(--on-dark-mute)}

/* ---- Comparison table marks ---- */
.prose table.compare th:first-child,.prose table.compare td:first-child{text-align:left}
.prose table.compare td{text-align:center;vertical-align:middle}
.prose table.compare .us{background:var(--mist2);color:var(--text);font-weight:700}
.yes,.no,.part{display:inline-block;min-width:1.4em;font-weight:800}
.yes{color:#2E9C6A}.no{color:#B4485A}.part{color:#B07A12}
.prose table.compare caption{caption-side:bottom;text-align:left;font-size:13.5px;padding-top:10px;color:var(--muted)}

/* ---- "Who it fits" and verdict boxes ---- */
.fits{padding:18px 22px;border-radius:18px;background:#fff;border:1px solid var(--line);font-size:16.5px}
.fits p{margin:.3em 0}
.verdict{padding:22px 26px;border-radius:22px;background:var(--mist);border:1px solid #DDD8F8}
.verdict h4{margin:0 0 8px;font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--violet-d)}
.verdict p:last-child{margin-bottom:0}

/* ---- Sidebar card (desktop, under the table of contents) ---- */
.toc-cta{margin-top:26px;padding:20px 18px;border-radius:22px;background:linear-gradient(160deg,#14112B 0%,#221D4A 100%);color:var(--on-dark);text-align:center}
.toc-cta img.dl-icon{width:52px;height:52px;border-radius:12px;margin:0 auto 10px;display:block}
.toc-cta p{margin:0 0 14px;font-size:14px;line-height:1.5;color:var(--on-dark-soft)}
.toc-cta strong{display:block;color:var(--on-dark);font-family:var(--display);font-size:17px;margin-bottom:4px}
.toc-cta .badge-link img{width:140px}

/* ---- Mobile sticky bar ---- */
.sticky-cta{position:fixed;left:12px;right:12px;bottom:12px;z-index:900;display:none;align-items:center;gap:12px;padding:10px 10px 10px 12px;border-radius:20px;background:rgba(20,17,43,.96);color:var(--on-dark);border:1px solid rgba(169,162,246,.4);box-shadow:0 18px 40px rgba(0,0,0,.35);transform:translateY(140%);transition:transform .35s ease}
.sticky-cta.show{transform:none}
.sticky-cta img.dl-icon{width:42px;height:42px;border-radius:10px;flex:none}
.sticky-cta .sc-text{flex:1;min-width:0;font-size:14px;line-height:1.3}
.sticky-cta .sc-text strong{display:block;font-size:15px}
.sticky-cta .sc-text span{color:var(--on-dark-soft)}
.sticky-cta .sc-btn{flex:none;padding:11px 16px;border-radius:999px;background:#F9B942;color:#16122E;font-weight:800;font-size:14.5px;text-decoration:none}
.sticky-cta .sc-x{flex:none;width:30px;height:30px;border:0;background:transparent;color:var(--on-dark-mute);font-size:20px;line-height:1;cursor:pointer}

@media (max-width:1080px){
  .toc-cta{display:none}
  .sticky-cta{display:flex}
}
@media (max-width:640px){
  .dl-card{grid-template-columns:52px minmax(0,1fr);padding:18px}
  .dl-card img.dl-icon{width:52px;height:52px}
  .shots.two{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media print{.sticky-cta,.toc-cta,.dl-card{display:none!important}}
@media (prefers-reduced-motion:reduce){.sticky-cta{transition:none}}

/* Article photos are 16:9 files: keep them 16:9 on screen (the width/height
   attributes alone made the browser stretch them to 675 px tall). */
.prose figure img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.prose .shots img{aspect-ratio:600/1304;object-fit:contain}
.hero-art{aspect-ratio:16/9}
