@import url("/compare/assets/scout-support.css");
:root { --compare-bg:var(--bg); --compare-paper:var(--surface); --compare-ink:var(--text); --compare-muted:var(--text2); --compare-line:var(--border); --compare-accent:var(--text); }
* { box-sizing:border-box; }
a { color:inherit; text-underline-offset:3px; }
a:focus-visible { outline:3px solid #bd7b2f; outline-offset:3px; }
.comparison-page { max-width:1480px; margin:auto; padding:28px 24px 56px; }
.comparison-hero { max-width:760px; padding:4px 0 6px; }
.comparison-kicker { margin:0 0 8px; color:var(--compare-accent); font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
[data-comparison] h1 { font-family:Georgia,"Times New Roman",serif; font-weight:400; }
[data-comparison] h1 { max-width:680px; margin:6px 0 0; font-size:30px; line-height:1; letter-spacing:-.04em; }
.comparison-hero p { margin:0; max-width:720px; color:var(--compare-muted); }
.comparison-hero h1 + p { margin-top:12px; }
.comparison-sources { max-width:820px; margin-top:24px; padding-top:14px; border-top:1px solid var(--compare-line); color:var(--compare-muted); font:12px/1.5 var(--ui-font); }
.comparison-sources > summary { display:flex; align-items:center; gap:6px; min-height:var(--min-control-target); color:var(--text2); font:650 12px/1.3 var(--ui-font); cursor:pointer; list-style:none; }
.comparison-sources > summary::-webkit-details-marker { display:none; }
.comparison-sources > summary::before { content:"▸"; display:inline-block; font-size:10px; transition:transform 140ms ease; }
.comparison-sources[open] > summary::before { transform:rotate(90deg); }
.comparison-sources > summary:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.comparison-sources p { margin:8px 0 0; }
.comparison-sources ul { margin:8px 0 10px; padding-left:18px; }
.comparison-sources li + li { margin-top:5px; }

/* Shared pieces: letter badges in each rival's own brand colors stand in for logos; the Scout mascot marks Scout. */
.comparison-matrix { margin-top:18px; }
.compare-mono { display:inline-grid; place-items:center; flex:none; width:22px; height:22px; border-radius:50%; font:700 9px/1 var(--ui-font); letter-spacing:0; }
.compare-mono.is-autores { background:#df8516; color:#fff; }
.compare-mono.is-tableone { background:#000; color:#e9c08f; }
.compare-mono.is-tablepass { background:var(--text); color:var(--surface); }
.compare-mono.is-resx { background:#2b2521; color:#d19a6c; }
.compare-mono.is-appointmenttrader { background:#6e2439; color:#fff; }
.compare-mono.is-dorsia { background:#111; color:#fffdf9; }
.compare-scout-face { flex:none; width:28px; height:28px; border-radius:50%; border:2px solid var(--match); background:#fff; object-fit:cover; }
.compare-icon { flex:none; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }

/* /billing: verdict wall. Scout is green; every rival is the same red. */
.compare-wall { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:10px; }
.compare-sticker { position:relative; display:flex; flex-direction:column; justify-content:space-between; min-height:104px; padding:14px 16px; overflow:hidden; border-radius:12px; box-shadow:var(--shadow-surface); }
.compare-sticker p { margin:0; }
.compare-sticker-who { display:flex; align-items:center; gap:7px; font:700 11px/1 var(--ui-font); }
.compare-sticker-big { position:relative; margin-top:12px !important; font:400 21px/1.05 var(--card-title-font); letter-spacing:-.03em; }
.compare-sticker-art { position:absolute; right:-6px; bottom:-8px; width:64px; height:64px; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; opacity:.14; }
.compare-sticker.is-coral { background:#fbe3da; color:#7e2f1c; }
.compare-sticker.is-blue { background:#dde8f5; color:#23456f; }
.compare-sticker.is-sand { background:#f3e7cc; color:#6b4c12; }
.compare-sticker.is-rose { background:#f2dcdc; color:#7a2424; }
.compare-sticker.is-ink { background:#2b2825; color:#f6f2e9; }
.compare-sticker.is-scout { grid-row:span 2; justify-content:flex-start; background:linear-gradient(165deg,#2f6b50,#1e4a37); color:#fff; }
.compare-sticker.is-scout .compare-scout-face { width:44px; height:44px; border:0; border-radius:12px; }
.compare-sticker.is-scout .compare-sticker-big { font-size:27px; }
.compare-sticker.is-scout ul { display:grid; gap:8px; margin:12px 0 0; padding:0; list-style:none; }
.compare-sticker.is-scout li { display:flex; align-items:center; gap:8px; font:650 13px/1.2 var(--ui-font); }
.compare-sticker-price { min-width:0; }
.compare-successful { color:#ffb08f; font-weight:800; }
.compare-sticker.is-scout li .compare-icon { box-sizing:content-box; width:13px; height:13px; padding:4px; border-radius:50%; background:rgba(255,255,255,.16); }
.compare-sticker.is-wide { flex-direction:row; align-items:center; gap:10px; min-height:0; margin:10px 0; padding:12px 16px; }
.compare-sticker.is-wide .compare-mono { width:26px; height:26px; font-size:10px; }
.compare-sticker.is-ink .compare-mono.is-dorsia { background:#f6f2e9; color:#1f1f1f; }
.compare-sticker.is-wide .compare-sticker-big { flex:1; margin-top:0 !important; font-size:19px; }

/* /compare: scoreboard. The label and Scout columns stay put; rivals scroll beside them on a phone. */
.card.compare-scoreboard { padding:8px 4px; }
.compare-scoreboard-scroll { position:relative; overflow-x:auto; }
.compare-scoreboard table { width:100%; min-width:760px; border-collapse:separate; border-spacing:0; table-layout:fixed; }
.compare-scoreboard th, .compare-scoreboard td { padding:8px 4px; text-align:center; vertical-align:middle; border-bottom:1px solid rgba(37,34,31,.08); }
.compare-scoreboard thead th, .compare-scoreboard thead td { border-bottom-color:rgba(37,34,31,.12); }
.compare-scoreboard thead td, .compare-scoreboard tbody th { position:sticky; left:0; z-index:2; width:138px; background:#fffdf8; }
.compare-scoreboard .is-scout { position:sticky; left:138px; z-index:2; width:124px; background:#e4f1e9; }
.compare-scoreboard thead th { color:var(--text2); font:650 10px/1.15 var(--ui-font); }
.compare-scoreboard thead th > * { display:block; margin:0 auto; }
.compare-scoreboard thead th > span:last-child { margin-top:5px; }
.compare-scoreboard thead th .compare-mono { display:grid; width:26px; height:26px; font-size:10px; }
.compare-scoreboard thead th .compare-scout-face { width:30px; height:30px; }
.compare-scoreboard tbody th { padding-left:12px; text-align:left; color:var(--text); font:650 12px/1.2 var(--ui-font); }
.compare-scoreboard tbody th .compare-icon { margin-right:6px; vertical-align:-3px; color:var(--text2); }
.compare-scoreboard thead .is-scout { border-radius:8px 8px 0 0; color:var(--match); }
.compare-scoreboard tbody tr:last-child > * { border-bottom:0; }
.compare-scoreboard tbody tr:last-child .is-scout { border-radius:0 0 8px 8px; }
.compare-mark { display:inline-grid; place-items:center; width:22px; height:22px; border-radius:50%; font:800 11px/1 var(--ui-font); }
.compare-mark.is-yes { background:var(--match); color:#fff; } .compare-mark.is-no { background:#f8e3de; color:#8f2d1b; } .compare-mark.is-unknown { background:var(--surface2); color:var(--text2); }
.compare-price { display:block; color:var(--text); font:400 13px/1.1 var(--card-title-font); letter-spacing:-.02em; }
.compare-price small { display:block; margin-top:2px; color:var(--text2); font:600 9px/1.2 var(--ui-font); letter-spacing:0; }
.compare-price em { display:block; margin-top:3px; color:#9e3427; font:800 9px/1.15 var(--ui-font); font-style:normal; letter-spacing:0; }
.compare-scoreboard .is-scout .compare-price { color:var(--match); font-size:14px; }
.compare-scoreboard .is-scout .compare-price small { overflow-wrap:anywhere; }

/* /compare: head-to-head. Without the script every duel shows, stacked. */
.compare-pills { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.compare-pill { display:inline-flex; align-items:center; gap:7px; min-height:var(--min-control-target); margin:0; padding:4px 12px 4px 6px; border:1px solid rgba(37,34,31,.12); border-radius:999px; background:var(--surface); color:var(--text2); font:650 12px/1 var(--ui-font); cursor:pointer; }
.compare-pill:hover { color:var(--text); background:var(--surface2); }
.compare-pill[aria-selected="true"] { border-color:transparent; background:#f5ddd3; color:#8b3c27; box-shadow:inset 0 -2px 0 var(--accent); }
.compare-pill:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.compare-duel-panel + .compare-duel-panel { margin-top:18px; }
.compare-duel-title { margin:0 4px 8px; color:var(--text); font:650 13px/1.25 var(--ui-font); }
.compare-duels.is-tabbed .compare-duel-title { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.compare-duels.is-tabbed .compare-duel-panel + .compare-duel-panel { margin-top:0; }
.card.compare-duel { display:grid; grid-template-columns:1fr auto 1fr; margin:0; padding:0; overflow:hidden; }
.compare-side { display:flex; flex-direction:column; align-items:center; gap:7px; padding:18px 16px; text-align:center; background:var(--surface2); }
.compare-side p { margin:0; }
.compare-side.is-scout { background:linear-gradient(160deg,#eaf4ee,#d9ebe0); }
.compare-side-who { display:flex; align-items:center; gap:8px; color:var(--text); font:650 13px/1 var(--ui-font); }
.compare-side-who .compare-mono { width:26px; height:26px; font-size:10px; }
.compare-side-num { color:#8a8279; font:400 40px/1 var(--card-title-font); letter-spacing:-.045em; }
.compare-side.is-scout .compare-side-num { color:var(--match); }
.compare-side-unit { color:var(--text2); font:600 11px/1.2 var(--ui-font); }
.compare-chips { display:flex; flex-wrap:wrap; justify-content:center; gap:5px; }
.compare-chip { padding:4px 9px; border-radius:999px; font:700 10px/1.2 var(--ui-font); }
.compare-chip.is-yes { background:var(--match-soft); color:var(--match); } .compare-chip.is-no { background:#f8e3de; color:#8f2d1b; }
.compare-vs { display:grid; place-items:center; width:42px; background:var(--surface); color:var(--text2); font:800 11px/1 var(--meta-font); letter-spacing:.1em; }
.compare-verdict { display:flex; align-items:center; justify-content:center; gap:8px; margin:10px 0 0; padding:11px 14px; border-radius:10px; background:var(--match); color:#fff; font:400 18px/1.15 var(--card-title-font); letter-spacing:-.02em; text-align:center; }
.compare-verdict .compare-icon { width:17px; height:17px; }

@media (max-width:713px) {
  .compare-wall { grid-template-columns:1fr 1fr; }
  .compare-sticker.is-scout { grid-column:1 / -1; grid-row:auto; }
  .compare-sticker { min-height:92px; padding:12px; }
  .compare-sticker-big { font-size:17px; }
  .compare-sticker.is-scout .compare-sticker-big { font-size:23px; }
  .compare-sticker-art { width:48px; height:48px; }
  .compare-sticker.is-wide .compare-sticker-big { font-size:16px; }
  .compare-scoreboard thead td, .compare-scoreboard tbody th { width:92px; }
  .compare-scoreboard .is-scout { left:92px; width:120px; }
  .compare-scoreboard tbody th { padding-left:8px; font-size:11px; white-space:normal; }
  .compare-scoreboard tbody th .compare-icon { display:none; }
  .compare-scoreboard table { min-width:760px; }
  .compare-scoreboard thead th { font-size:9px; }
  .compare-sticker-who { gap:5px; font-size:10px; }
  .compare-sticker-who .compare-mono { width:20px; height:20px; font-size:8px; }
  .card.compare-duel { grid-template-columns:1fr; }
  .compare-vs { width:auto; padding:4px; }
  .compare-side-num { font-size:34px; }
  .compare-verdict { font-size:16px; }
}
a.comparison-more { display:inline-flex; align-items:center; min-height:var(--min-control-target); margin-left:2px; color:var(--text2); font:500 12px/1 var(--ui-font); letter-spacing:0; vertical-align:middle; }
a.comparison-more:hover { color:var(--text); }
[hidden] { display:none !important; }
@media (max-width:640px) { .comparison-page { padding:16px 16px 48px; } .comparison-hero { padding:4px 0 6px; } [data-comparison] h1 { font-size:26px; } }
