/* Opt-in research evidence box — prints nothing unless approved. */
.ax-review-evidence {
    margin-block: clamp(1.5rem, 4vw, 3rem);
    border-block: 2px solid var(--ax-ink);
    padding-block: clamp(1.25rem, 3vw, 2rem);
    min-width: 0;
}

.ax-review-evidence__kicker {
    font-family: var(--ax-mono);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ax-steel);
    margin: 0 0 0.8rem;
}

.ax-review-evidence h2 {
    font-size: clamp(1.5rem, 3vw, 2.3rem);
    margin: 0;
}

.ax-review-evidence h3 {
    font-size: 1.1rem;
    margin: 0 0 0.55rem;
}

.ax-review-evidence__status {
    color: var(--ax-ink-soft);
    font-size: 0.9rem;
    margin: 0.65rem 0 0;
}

.ax-review-evidence__verdict {
    font-family: var(--ax-serif);
    font-size: clamp(1.1rem, 1vw + 0.95rem, 1.3rem);
    line-height: 1.55;
    margin-block: 1rem 1.5rem;
    max-width: 60ch;
}

.ax-review-evidence__columns {
    display: grid;
    gap: 1.25rem clamp(1rem, 3vw, 2rem);
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ax-review-evidence__list {
    border-top: 1px solid var(--ax-rule);
    min-width: 0;
    padding-top: 0.85rem;
}

.ax-review-evidence__list ul,
.ax-review-evidence__sources ul {
    margin: 0;
    padding-left: 1.25rem;
}

.ax-review-evidence__list li,
.ax-review-evidence__sources li {
    line-height: 1.55;
    overflow-wrap: anywhere;
    margin-block: 0.4rem;
}

.ax-review-evidence__sources {
    border-top: 1px solid var(--ax-rule);
    padding-top: 1rem;
    margin-top: 1.5rem;
}

.ax-review-evidence__sources li span {
    display: block;
    color: var(--ax-steel);
    font-size: 0.85rem;
}

.ax-review-evidence__table-wrap {
    max-width: 100%;
    overflow-x: auto;
    margin-top: 1.5rem;
}

.ax-review-evidence__table-wrap table {
    border-collapse: collapse;
    min-width: min(100%, 28rem);
    width: 100%;
}

.ax-review-evidence__table-wrap :where(td, th) {
    border-bottom: 1px solid var(--ax-rule);
    padding: 0.8rem 0.65rem;
    text-align: left;
    vertical-align: top;
    font-size: 0.94rem;
}

.ax-review-evidence__table-wrap caption {
    color: var(--ax-ink-soft);
    text-align: left;
    padding-bottom: 0.65rem;
    font-weight: 700;
}

.ax-review-evidence__verification {
    border-top: 1px solid var(--ax-rule);
    color: var(--ax-ink-soft);
    font-size: 0.82rem;
    padding-top: 1rem;
    margin-block: 1.5rem 0;
}

.ax-review-evidence :where(a):focus-visible {
    outline: 3px solid var(--ax-focus);
    outline-offset: 3px;
}

@media (max-width: 47.99rem) {
    .ax-review-evidence__columns {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* Source-backed comparison: semantic table, keyboard-scrollable on mobile. */
.ax-review-compare,
.ax-review-buying {
    border-top: 1px solid var(--ax-rule);
    margin-top: clamp(1.25rem, 3vw, 2rem);
    padding-top: clamp(1rem, 2vw, 1.5rem);
    min-width: 0;
}

.ax-review-compare > p,
.ax-review-buying > p {
    color: var(--ax-ink-soft);
    max-width: 68ch;
    line-height: 1.55;
    margin-block: 0.5rem 0.85rem;
}

.ax-review-compare__note {
    font-size: 0.88rem;
}

.ax-review-compare__scroll {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding-bottom: 0.3rem;
}

.ax-review-compare table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    min-width: 38rem;
}

.ax-review-compare caption {
    text-align: left;
    font-weight: 700;
    padding-block: 0.5rem;
}

.ax-review-compare :where(th, td) {
    border-bottom: 1px solid var(--ax-rule);
    padding: 0.85rem clamp(0.65rem, 1.6vw, 1rem);
    vertical-align: top;
    text-align: left;
    font-size: 0.9rem;
    overflow-wrap: anywhere;
    min-width: 9rem;
}

.ax-review-compare thead th,
.ax-review-compare tbody th {
    font-weight: 700;
    background: var(--ax-surface);
}

.ax-review-compare td a {
    display: block;
    margin-top: 0.4rem;
    font-size: 0.82rem;
    text-underline-offset: 0.16em;
}

.ax-review-compare th small {
    color: var(--ax-ink-soft);
    display: block;
    font-size: 0.76rem;
    font-weight: 400;
    margin-top: 0.2rem;
}

.ax-review-compare__scroll:focus-visible {
    outline: 3px solid var(--ax-focus);
    outline-offset: 1px;
}

.ax-review-buying ul {
    display: grid;
    gap: 0.8rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
}

.ax-review-buying li {
    border: 1px solid var(--ax-rule);
    padding: 1rem;
    min-width: 0;
}

.ax-review-buying li > a {
    font-size: 1rem;
    font-weight: 700;
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    min-height: 2.75rem;
    align-items: center;
    overflow-wrap: anywhere;
}

.ax-review-buying li > span {
    display: block;
    color: var(--ax-ink-soft);
    font-size: 0.8rem;
    margin-top: 0.4rem;
}

.ax-review-buying__affiliate {
    border-top: 1px solid var(--ax-rule);
    color: var(--ax-ink-soft);
    font-size: 0.83rem;
    line-height: 1.5;
    margin: 0.8rem 0 0;
    padding-top: 0.75rem;
}
