/* Scoped to the single comparison article. */
.adj-editorial .entry-title { font-size:clamp(1.8rem,4vw,2.5rem); line-height:1.15; letter-spacing:-.025em; }
/* Brand blue matches the existing navigation. Semantic feedback stays distinct. */
.cp-article {
 --cp-brand:#1e73be; --cp-primary:#1967ab; --cp-hover:#14548d;
 --cp-ink:#193650; --cp-muted:#4c6175; --cp-edge:#d2dfec;
 --cp-soft:#f3f7fc; --cp-common-bg:#e5f2fc; --cp-common-ink:#155b94;
 --cp-proper-bg:#eeedfc; --cp-proper-ink:#494a91;
 --snet-accent:var(--cp-primary); --snet-ink:var(--cp-ink); --snet-muted:var(--cp-muted); --snet-line:var(--cp-edge);
 color:var(--cp-ink);
}
.cp-article .cp-breadcrumb { font-size:.8em; color:var(--cp-muted); margin-bottom:1.6rem; }
.cp-article .cp-lead { font-size:1.1em; line-height:1.75; }
.cp-article .cp-intro-pair { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:1.5rem 0; }
.cp-article .cp-intro-pair>div { padding:1.1rem 1.4rem; background:var(--cp-common-bg); border:0; border-left:3px solid var(--cp-brand); border-radius:0; }
.cp-article .cp-intro-pair>div+div { background:var(--cp-proper-bg); border-left:3px double var(--cp-proper-ink); }
.cp-article .cp-intro-pair strong { display:block; font-size:1.8em; line-height:1.3; margin:.25rem 0; }
.cp-article .cp-intro-pair p { font-size:.9em; margin:0; }
.cp-article .cp-eyebrow { display:block; font-size:.78em; font-weight:700; letter-spacing:.035em; color:var(--cp-muted); }
.cp-article .cp-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin:1.5rem 0 2.8rem; padding:1rem 0; border-block:1px solid var(--cp-edge); }
.cp-article .cp-nav a { border:1px solid var(--cp-edge); border-radius:0; padding:.5rem .8rem; min-height:44px; background:#fff; font-size:.9em; }
.cp-article .cp-section { margin:0 0 3.5rem; }
.cp-article .cp-section h2 { color:var(--cp-ink); border-left:0; padding-left:0; margin-bottom:.9rem; font-size:1.55em; letter-spacing:-.02em; }
.cp-article .cp-section h3 { margin:1.5rem 0 .7rem; }
.cp-article button { min-height:44px; padding:.65rem 1rem; border:1px solid var(--cp-primary); border-radius:0; background:var(--cp-primary); color:white; font:inherit; font-size:.9em; line-height:1.4; cursor:pointer; max-width:100%; }
.cp-article button:hover { background:var(--cp-hover); }
.cp-article button.cp-secondary { background:white; color:var(--cp-primary); }
.cp-article button.cp-secondary:hover { background:var(--cp-soft); }
.cp-article button:disabled { opacity:.55; cursor:default; }
.cp-article :is(button,input,select,textarea,summary):focus-visible { outline:3px solid var(--cp-brand); outline-offset:3px; }
.cp-article .cp-tools { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; margin:1rem 0; }
.cp-article .cp-select-tools { display:flex; align-items:center; flex-wrap:wrap; gap:.7rem; padding:1rem; background:var(--cp-soft); border-radius:0; }
.cp-article .cp-select-tools p { flex-basis:100%; margin:0; font-weight:700; }
.cp-article .cp-select-tools label { font-size:.85em; }
.cp-article select { display:block; min-height:44px; max-width:100%; background:white; color:var(--cp-ink); border:1px solid #8098af; border-radius:0; padding:.5rem; font:inherit; }
.cp-article .cp-status { display:block; font-size:.85em; color:var(--cp-muted); margin:.6rem 0; }
.cp-article .cp-status:empty { display:none; }
.cp-article textarea { display:block; width:100%; padding:.8rem; background:white; color:var(--cp-ink); border:1px solid #8098af; font:inherit; resize:vertical; }
.cp-article .cp-copy-fallback { margin:1rem 0; }
.cp-article .cp-word-group { border-top:1px solid var(--cp-edge); padding:.2rem 0 1rem; }
.cp-article .cp-word-group h3 { font-size:.95em; margin:1rem 0 .7rem; color:var(--cp-muted); }
.cp-article .cp-word-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.15rem 1.5rem; margin:0; padding-left:2.2rem; }
.cp-article .cp-word-grid li { padding:.25rem 0; font-size:.95em; }
.cp-article .cp-word-grid li::marker { font-size:.75em; color:var(--cp-muted); }
.cp-article .cp-word-grid label { display:flex; align-items:center; gap:.45rem; }
.cp-article .is-selecting .cp-word-grid label { min-height:44px; cursor:pointer; }
.cp-article input[type=checkbox] { width:18px; height:18px; flex-shrink:0; accent-color:var(--cp-primary); }
.cp-article .cp-explorer { border:0; border-left:3px solid var(--cp-brand); padding:clamp(18px,3vw,28px); border-radius:0; background:var(--cp-soft); margin:1.6rem 0; box-shadow:none; }
.cp-article .cp-explorer>.cp-eyebrow { color:var(--cp-primary); margin:0 0 1.1rem; }
.cp-article .cp-explorer [data-pair-sentence] { font-size:1.2em; font-weight:650; line-height:1.65; margin:1.4rem 0 .65rem; }
.cp-article .cp-explorer [data-pair-explanation] { color:var(--cp-muted); line-height:1.75; margin:0 0 1.4rem; }
.cp-article .cp-explorer .cp-status { display:inline-block; margin:.7rem 0 .2rem .8rem; }
.cp-article .cp-explorer .cp-status:empty { display:none; }
.cp-article .cp-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; margin:1rem 0; }
.cp-article .cp-pair p { margin:0; padding:1.1rem 1.2rem; border:0; border-left:3px solid var(--cp-brand); border-radius:0; background:var(--cp-common-bg); color:var(--cp-common-ink); }
.cp-article .cp-pair p+p { background:var(--cp-proper-bg); border-left:3px double var(--cp-proper-ink); color:var(--cp-proper-ink); }
.cp-article .cp-pair span { display:block; font-size:.8em; font-weight:650; margin-bottom:.45rem; }
.cp-article .cp-pair strong { display:block; font-size:clamp(1.25rem,3vw,1.9rem); line-height:1.25; overflow-wrap:anywhere; }
.cp-article .cp-original { max-width:336px; margin:1.7rem auto; }
.cp-article .cp-original img { display:block; width:100%; height:auto; }
.cp-article .cp-original figcaption { font-size:.8em; color:var(--cp-muted); text-align:center; margin-top:.6rem; }
.cp-article .cp-common { background:var(--cp-common-bg); color:var(--cp-common-ink); text-decoration:underline; text-underline-offset:.2em; padding:.08em .18em; border-radius:0; }
.cp-article .cp-proper { background:var(--cp-proper-bg); color:var(--cp-proper-ink); text-decoration:underline double; text-underline-offset:.2em; padding:.08em .18em; border-radius:0; }
.cp-article .cp-legend { display:flex; flex-wrap:wrap; gap:.6rem; font-size:.8em; }
.cp-article .cp-sentence-card { padding:1.2rem 0; border-bottom:1px solid var(--cp-edge); }
.cp-article .cp-sentence { font-size:1.15em; line-height:1.9; }
.cp-article details { margin:.6rem 0; }
.cp-article summary { cursor:pointer; min-height:44px; padding:.5rem 0; color:var(--cp-primary); font-weight:600; }
.cp-article details p { padding:.4rem 0; }
.cp-article .cp-trainer { border:0; border-left:3px solid var(--cp-brand); border-radius:0; padding:clamp(16px,4vw,28px); background:var(--cp-soft); }
.cp-article .cp-trainer h3 { margin:.6rem 0; font-size:1.25em; }
.cp-article .cp-token-list { display:flex; flex-wrap:wrap; gap:.5rem; padding:1.2rem 0; }
.cp-article button.cp-token { background:white; border-color:#8c9cac; color:var(--cp-ink); font-size:1.15em; padding:.55rem .8rem; }
.cp-article .cp-token[aria-pressed=true] { background:#dbe7f9; border-color:var(--cp-primary); box-shadow:inset 0 0 0 1px var(--cp-primary); }
.cp-article .cp-token.cp-right { background:#dbeee1; border:2px solid #236745; opacity:1; }
.cp-article .cp-token.cp-wrong { background:#fff0e7; border:2px dashed #8b4322; }
.cp-article .cp-feedback:not(:empty) { padding:1rem; background:white; border-radius:0; border-left:2px solid var(--cp-brand); margin:1rem 0; }
.cp-article .cp-feedback p { margin:0 0 .6rem; }
.cp-article .cp-feedback p:last-child { margin:0; }
.cp-article .cp-success { color:#185538; font-weight:700; }
.cp-article .cp-follow { margin-top:1.5rem; }
.cp-article .cp-sources { border-top:1px solid var(--cp-edge); font-size:.85em; color:var(--cp-muted); }
.cp-article a.cp-readmore { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.45rem 1.1rem; padding:1.3rem 1.4rem; margin-top:1.6rem; border:0; border-left:2px solid var(--cp-brand); border-radius:0; background:var(--cp-soft); color:var(--cp-ink); text-decoration:none; }
.cp-article .cp-readmore>span:not(.cp-link-arrow),.cp-article .cp-readmore>strong { grid-column:1; }
.cp-article .cp-link-kicker { display:block; color:var(--cp-muted); font-size:.76em; font-weight:650; line-height:1.5; }
.cp-article .cp-link-title { display:block; color:var(--cp-primary); font-size:1.08em; line-height:1.4; }
.cp-article .cp-link-description { display:block; color:var(--cp-muted); font-size:.9em; line-height:1.65; }
.cp-article .cp-link-arrow { grid-column:2; grid-row:1 / 4; align-self:center; font-size:1.6em; color:var(--cp-primary); }
.cp-article a.cp-readmore--quiet { background:var(--cp-soft); border-color:var(--cp-edge); border-left-color:var(--cp-primary); }
.cp-article .cp-readmore--quiet :is(.cp-link-title,.cp-link-arrow) { color:var(--cp-primary); }
.cp-article a.cp-readmore:hover { border-color:var(--cp-primary); background:#e9f1fb; }
.cp-article a.cp-readmore:hover .cp-link-title,.cp-article a.cp-related-card:hover .cp-link-title { text-decoration:underline; text-underline-offset:.2em; }
.cp-article .cp-related { padding-top:2rem; border-top:1px solid var(--cp-edge); }
.cp-article .cp-related-grid { display:grid; grid-template-columns:1fr; gap:0; margin-top:1.25rem; }
.cp-article a.cp-related-card { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:.3rem 1.25rem; padding:1.15rem .4rem; border:0; border-bottom:1px solid var(--cp-edge); border-radius:0; background:#fff; color:var(--cp-ink); text-decoration:none; }
.cp-article .cp-related-card .cp-link-kicker { display:none; }
.cp-article .cp-related-card .cp-link-title { grid-column:1; grid-row:1; }
.cp-article .cp-related-card .cp-link-description { grid-column:1; grid-row:2; }
.cp-article .cp-related-card .cp-card-cta { grid-column:2; grid-row:1 / 3; margin:0; padding:0; font-size:0; }
.cp-article .cp-related-card .cp-card-cta span { font-size:1.4rem; }
.cp-article .cp-related-card .cp-link-title { font-size:1em; color:var(--cp-primary); }
.cp-article .cp-related-card .cp-link-description { font-size:.85em; }
.cp-article .cp-card-cta { display:flex; align-items:center; gap:.7rem; padding-top:.7rem; margin-top:auto; color:var(--cp-primary); font-size:.78em; font-weight:650; }
.cp-article .cp-card-cta span { font-size:1.4em; }
.cp-article a.cp-related-card:hover { background:var(--cp-soft); }
.cp-article :is(a.cp-readmore,a.cp-related-card):focus-visible { outline:3px solid var(--cp-primary); outline-offset:4px; }
/* Keep shared theme focus and heading accents in the same palette. */
.cp-article :is(a,button,summary,input,select,textarea):focus-visible { outline:3px solid var(--cp-brand); outline-offset:4px; }
.cp-article .cp-nav a { color:var(--cp-primary); text-decoration:none; }
.cp-article .cp-nav a:hover { background:var(--cp-soft); border-color:var(--cp-brand); text-decoration:underline; }
.cp-article .cp-intro-pair>div { color:var(--cp-common-ink); }
.cp-article .cp-intro-pair>div+div { color:var(--cp-proper-ink); }
.cp-article .cp-intro-pair .cp-eyebrow { color:inherit; }
@media(max-width:650px) {
 .cp-article .cp-pair p { padding:.9rem .75rem; }
 .cp-article .cp-pair { gap:.6rem; }
 .cp-article .cp-related-grid { grid-template-columns:1fr; }
 .cp-article a.cp-readmore { padding:1.05rem; gap:.4rem .7rem; }
 .cp-article .cp-word-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.1rem 1.4rem; }
 .cp-article .cp-intro-pair { gap:.5rem; }
 .cp-article .cp-intro-pair>div { padding:.85rem; }
 .cp-article .cp-intro-pair strong { font-size:1.4em; }
 .cp-article .cp-nav { gap:.4rem; }
 .cp-article .cp-section { margin-bottom:2.7rem; }
}
.cp-article .cp-quick { padding:1.2rem; margin:0 0 2rem; background:var(--cp-soft); border:0; border-left:2px solid var(--cp-brand); border-radius:0; }
.cp-article .cp-quick>p { margin:.5rem 0; }
.cp-article .cp-pair-controls { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; margin-top:1rem; }
.cp-article .cp-pair-controls .cp-status { margin:0; text-align:center; flex:1; min-width:90px; }
.cp-article .cp-review-topic { padding:1.1rem 0; border-top:1px solid var(--cp-edge); }
.cp-article .cp-review-topic h4 { font-size:1em; font-weight:700; color:var(--cp-ink); margin:0 0 .5rem; }
.cp-article .cp-review-topic p { margin:0 0 .65rem; }
.cp-article .cp-review-topic button { text-align:left; }
.cp-article .cp-reminder { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,280px); align-items:center; gap:1.5rem; padding:1.3rem; margin-top:2rem; border:0; border-left:2px solid var(--cp-brand); border-radius:0; }
.cp-article .cp-reminder h3 { margin-top:0; }
.cp-article .cp-reminder .cp-original { margin:0 auto; }
@media(max-width:650px) {
 .cp-article .cp-reminder { grid-template-columns:1fr; }
 .cp-article .cp-reminder .cp-original { max-width:280px; }
 .cp-article .cp-pair-controls { gap:.5rem; }
 .cp-article .cp-pair-controls .cp-status { flex-basis:100%; order:-1; text-align:left; }
 .cp-article .cp-pair-controls button { flex:1; }
}
@media print {
 .cp-article .cp-quick { display:none!important; }
 .cp-article .cp-tools,.cp-article .cp-select-tools,.cp-article button,.cp-article input,.cp-article .cp-nav,.cp-article .cp-copy-fallback { display:none!important; }
 .cp-article .cp-trainer { display:none!important; }
 .cp-article #cp-practice-readable[hidden] { display:block!important; }
}
