/* compare.css — design system for /compare (competitor) pages.
 * The theme serves the marketing app's purged Tailwind build as main.css and its .prose
 * typography is intentionally minimal, so these pages carry their own typography + components.
 * Enqueued only on competitor singles by mu-plugins/lrai-competitors.php.
 * Visual language matches assets/iq.css (blue accent, slate grays). */

:root{
  --c-blue:#2563eb; --c-blue-dark:#1d4ed8; --c-blue-50:#eff6ff; --c-blue-100:#dbeafe; --c-blue-200:#bfdbfe;
  --c-ink:#0f172a; --c-g800:#1e293b; --c-g700:#334155; --c-g500:#64748b; --c-g300:#cbd5e1;
  --c-g200:#e2e8f0; --c-g100:#f1f5f9; --c-g50:#f8fafc;
  --c-green:#16a34a; --c-green-bg:#f0fdf4; --c-red:#dc2626; --c-red-bg:#fef2f2; --c-amber:#f59e0b;
}

/* ---------- base typography (theme .prose is minimal) ---------- */
.prose{color:var(--c-g700);font-size:1.03rem;line-height:1.75}
.prose p{margin:0 0 1.15rem}
.prose strong{color:var(--c-ink);font-weight:700}
.prose a{color:var(--c-blue-dark);text-decoration:none;border-bottom:1px solid var(--c-blue-200);transition:color .15s,border-color .15s}
.prose a:hover{color:var(--c-blue);border-bottom-color:var(--c-blue)}
.prose h2{font-size:1.6rem;line-height:1.3;font-weight:800;color:var(--c-ink);margin:2.9rem 0 1.1rem;padding-bottom:.45rem;border-bottom:2px solid var(--c-g100);scroll-margin-top:90px}
.prose h2:first-child{margin-top:.5rem}
.prose h3{font-size:1.2rem;line-height:1.35;font-weight:700;color:var(--c-ink);margin:1.9rem 0 .6rem}
.prose ul{margin:0 0 1.2rem;padding-left:1.3rem}
.prose ul li{margin:.4rem 0;line-height:1.7}
.prose ul li::marker{color:var(--c-blue)}

/* ---------- verdict card ---------- */
.cmp-verdict{margin:.4rem 0 2.4rem;background:#fff;border:1px solid var(--c-g200);border-radius:1rem;box-shadow:0 12px 32px rgba(15,23,42,.07);overflow:hidden}
.cmp-verdict__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;background:linear-gradient(135deg,var(--c-blue-50),#fff 70%);border-bottom:1px solid var(--c-g100)}
.cmp-verdict__score{display:flex;align-items:center;gap:.75rem}
.cmp-verdict__stars{color:var(--c-amber);font-size:1.5rem;letter-spacing:.06em;line-height:1}
.cmp-verdict__num{font-size:1.5rem;font-weight:800;color:var(--c-ink);line-height:1}
.cmp-verdict__num span{font-size:1rem;font-weight:600;color:var(--c-g500)}
.cmp-verdict__tag{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800;color:var(--c-blue-dark);background:var(--c-blue-100);padding:.35rem .7rem;border-radius:999px;white-space:nowrap}
.cmp-verdict__grid{display:grid;grid-template-columns:1fr}
@media(min-width:680px){.cmp-verdict__grid{grid-template-columns:repeat(3,1fr)}}
.cmp-verdict__grid>div{padding:1.05rem 1.4rem;border-top:1px solid var(--c-g100)}
@media(min-width:680px){
  .cmp-verdict__grid>div{border-top:0;border-left:1px solid var(--c-g100)}
  .cmp-verdict__grid>div:first-child{border-left:0}
}
.cmp-verdict__label{display:block;font-size:.67rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:var(--c-g500);margin-bottom:.35rem}
.cmp-verdict__grid p{margin:0;color:var(--c-g700);font-size:.92rem;line-height:1.6}

/* ---------- pros / cons ---------- */
.cmp-list{list-style:none;margin:.4rem 0 1.5rem;padding:0}
.cmp-list li{position:relative;padding:.65rem 0 .65rem 2.1rem;line-height:1.65;border-bottom:1px solid var(--c-g100);color:var(--c-g700)}
.cmp-list li:last-child{border-bottom:0}
.cmp-list li::before{position:absolute;left:0;top:.7rem;width:1.4rem;height:1.4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:900;line-height:1}
.cmp-list--pros li::before{content:"\2713";background:var(--c-green-bg);color:var(--c-green)}
.cmp-list--cons li::before{content:"\2715";background:var(--c-red-bg);color:var(--c-red)}
.cmp-list li::marker{content:none}

/* ---------- comparison table ---------- */
.cmp-table-wrap{margin:1.5rem 0 2rem;overflow-x:auto;border:1px solid var(--c-g200);border-radius:.9rem;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.cmp-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:580px}
.cmp-table th,.cmp-table td{text-align:left;padding:.85rem 1.05rem;border-bottom:1px solid var(--c-g100);vertical-align:top}
.cmp-table thead th{background:var(--c-ink);color:#fff;font-weight:700;font-size:.82rem;border-bottom:0}
.cmp-table thead th:last-child{background:var(--c-blue)}
.cmp-table tbody tr:nth-child(even){background:var(--c-g50)}
.cmp-table tbody td:first-child{font-weight:600;color:var(--c-ink)}
.cmp-table td:last-child,.cmp-table th:last-child{position:relative}
.cmp-table tbody td:last-child{background:var(--c-blue-50);color:var(--c-g800);font-weight:500;box-shadow:inset 3px 0 0 var(--c-blue-200)}
.cmp-table tbody tr:last-child td{border-bottom:0}
.cmp-table a{color:var(--c-blue-dark);border-bottom:1px solid var(--c-blue-200)}

/* ---------- insight callout ---------- */
.cmp-callout{margin:1.7rem 0;background:var(--c-blue-50);border:1px solid var(--c-blue-100);border-left:4px solid var(--c-blue);border-radius:.7rem;padding:1.1rem 1.3rem}
.cmp-callout__title{font-weight:800;color:var(--c-blue-dark);margin:0 0 .35rem;font-size:.97rem}
.cmp-callout p:last-child{margin:0;color:var(--c-g700);font-size:.95rem;line-height:1.65}

/* ---------- FAQ accordion ---------- */
.cmp-faq{margin:1rem 0 1.5rem}
.cmp-faq details{border:1px solid var(--c-g200);border-radius:.7rem;background:#fff;margin:.6rem 0;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.cmp-faq details[open]{border-color:#c7d2fe;box-shadow:0 6px 20px rgba(37,99,235,.08)}
.cmp-faq summary{list-style:none;cursor:pointer;padding:1rem 1.2rem;font-weight:700;color:var(--c-ink);display:flex;align-items:center;justify-content:space-between;gap:1rem}
.cmp-faq summary::-webkit-details-marker{display:none}
.cmp-faq summary::after{content:"";width:.6rem;height:.6rem;border-right:2px solid var(--c-g500);border-bottom:2px solid var(--c-g500);transform:rotate(45deg);transition:transform .2s;flex-shrink:0}
.cmp-faq details[open] summary::after{transform:rotate(-135deg)}
.cmp-faq__a{padding:0 1.2rem 1.1rem;color:var(--c-g700);line-height:1.7}
.cmp-faq__a p{margin:0}

/* ---------- CTA ---------- */
.cmp-cta{margin:2.6rem 0 1rem;border-radius:1rem;background:linear-gradient(135deg,#1e3a8a 0%,#2563eb 55%,#4f46e5 100%);color:#fff;box-shadow:0 18px 42px rgba(37,99,235,.28);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.7rem 1.9rem}
.cmp-cta__kicker{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#bfdbfe;margin-bottom:.3rem}
.cmp-cta__title{font-size:1.4rem;font-weight:800;margin:0;line-height:1.25;color:#fff}
.cmp-cta__body{margin:.5rem 0 0;color:#dbeafe;font-size:.95rem;line-height:1.55;max-width:34rem}
.cmp-cta__btn{flex-shrink:0;background:#fff;color:var(--c-blue-dark);font-weight:800;padding:.85rem 1.6rem;border-radius:.6rem;text-decoration:none;white-space:nowrap;border:0;transition:transform .15s,box-shadow .15s}
.cmp-cta__btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.22)}
@media(max-width:560px){.cmp-cta{padding:1.4rem}.cmp-cta__btn{width:100%;text-align:center}}

/* margin utilities absent from the app's purged build (used by stray prose lists) */
.my-4{margin-top:1rem;margin-bottom:1rem}
.my-6{margin-top:1.5rem;margin-bottom:1.5rem}
.my-8{margin-top:2rem;margin-bottom:2rem}
.pl-5{padding-left:1.25rem}
