/* Sportwetten silo — loaded only on /sportwetten/* (body.ao-betting).
   Broadsheet editorial ranking, NOT a rounded comparison-card grid. */

/* .ao-btn moved to main.css (used site-wide incl. article sidebars). */

/* ---------- Ranked operator listing (editorial rows, hairline-ruled) ---------- */
.ao-rank{border-top:2px solid var(--ao-ink);margin:26px 0}
.ao-rank-row{display:grid;grid-template-columns:44px 1.4fr 1.6fr auto;gap:20px;align-items:center;
  padding:18px 0;border-bottom:1px solid var(--ao-rule)}
.ao-rank-row.is-top{background:linear-gradient(90deg,rgba(92,26,46,.06),transparent 60%);
  border-bottom:1px solid var(--ao-claret)}
.ao-rank-pos{font-family:var(--ao-serif);font-weight:700;font-size:34px;line-height:1;color:var(--ao-claret);text-align:center}
.ao-rank-row.is-top .ao-rank-pos{color:var(--ao-claret)}
.ao-rank-brand{display:flex;flex-direction:column;gap:6px}
.ao-rank-logo{max-width:120px;height:auto;object-fit:contain;background:#fff;padding:4px 8px;
  border:1px solid var(--ao-rule-soft)}
.ao-rank-name{font-family:var(--ao-serif);font-weight:700;font-size:19px;line-height:1}
a.ao-rank-name{color:var(--ao-ink);text-decoration:none;
  background-image:linear-gradient(var(--ao-claret),var(--ao-claret));
  background-repeat:no-repeat;background-position:0 100%;background-size:0 2px;
  transition:background-size .18s linear,color .18s linear}
a.ao-rank-name:hover,a.ao-rank-name:focus-visible{background-size:100% 2px;color:var(--ao-claret)}
.ao-rank-review{font-family:var(--ao-sans);font-size:12px;font-weight:700;color:var(--ao-sky-ink);
  text-decoration:none;letter-spacing:.02em;white-space:nowrap}
.ao-rank-review:hover,.ao-rank-review:focus-visible{text-decoration:underline}
.ao-rank-rate{font-size:12px;color:var(--ao-muted);font-weight:700}
.ao-rank-rate .ao-stars{color:var(--ao-claret);letter-spacing:1px}
.ao-rank-offer{display:flex;flex-direction:column;gap:3px}
.ao-rank-offer-label{font-family:var(--ao-sans);font-weight:800;font-size:10px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ao-claret)}
.ao-rank-offer-val{font-weight:700;font-size:16px;line-height:1.2}
.ao-rank-terms{font-size:12px;color:var(--ao-muted)}
.ao-rank-cta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}
.ao-rank-rg{font-size:10px;color:var(--ao-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:700}

/* ---------- Responsible-gambling notice (genuine YMYL disclaimer, not a slop callout) ---------- */
.ao-rg-notice{border:1px solid var(--ao-claret);border-left-width:6px;padding:14px 18px;margin:28px 0;
  font-size:14px;line-height:1.5;color:#2a2a2a;background:#fff}
.ao-rg-notice strong{color:var(--ao-claret)}
.ao-rg-notice a{color:var(--ao-sky-ink);text-decoration:underline}

/* ---------- Review header (brand logo + rating + CTA) ---------- */
.ao-review-head{display:flex;align-items:center;gap:22px;flex-wrap:wrap;
  border-top:2px solid var(--ao-ink);border-bottom:1px solid var(--ao-rule);padding:18px 0;margin:0 0 26px}
.ao-review-logo{max-width:160px;height:auto;object-fit:contain;background:#fff;padding:6px 12px;border:1px solid var(--ao-rule-soft)}
.ao-review-head-meta{display:flex;flex-direction:column;gap:3px;margin-right:auto}
.ao-review-rate{font-size:15px;font-weight:700}
.ao-review-rate .ao-stars{color:var(--ao-claret);letter-spacing:1px}
.ao-review-lic{font-size:12px;color:var(--ao-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}
@media (max-width:560px){.ao-review-head{gap:14px}.ao-review-head-meta{margin-right:0;width:100%}}

/* ---------- Review at-a-glance table ---------- */
.ao-facts{width:100%;border-collapse:collapse;margin:20px 0;font-size:15px}
.ao-facts th{text-align:left;width:38%;font-family:var(--ao-sans);font-weight:800;font-size:12px;
  text-transform:uppercase;letter-spacing:.05em;color:var(--ao-muted);
  padding:10px 12px 10px 0;border-bottom:1px solid var(--ao-rule);vertical-align:top}
.ao-facts td{padding:10px 0;border-bottom:1px solid var(--ao-rule)}

/* Pros/cons */
.ao-proscons{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--ao-rule);margin:24px 0}
.ao-proscons>div{padding:16px 18px}
.ao-proscons .pro{border-right:1px solid var(--ao-rule)}
.ao-proscons h4{font-family:var(--ao-sans);font-weight:800;font-size:12px;letter-spacing:.1em;
  text-transform:uppercase;margin:0 0 10px}
.ao-proscons .pro h4{color:#2b7a3d}.ao-proscons .con h4{color:var(--ao-claret)}
.ao-proscons ul{margin:0;padding-left:1.1em;font-size:14px}
.ao-proscons li{margin-bottom:6px}

/* ---------- System-Bet Explorer reskin (claret/broadsheet — footprint-unique) ---------- */
sb-explorer{
  --sb-font:var(--ao-sans);
  --sb-ink:#1a1a1a; --sb-muted:#5b5b5b;
  --sb-bg:var(--ao-card); --sb-border:rgba(26,26,26,.18); --sb-radius:0; --sb-pad:18px;
  --sb-input-bg:#fff; --sb-input-border:rgba(26,26,26,.25); --sb-input-radius:0;
  --sb-num-bg:var(--ao-claret); --sb-num-ink:#f3ede2; --sb-num-radius:0;
  --sb-open-bg:#eceae4; --sb-win-bg:#2b7a3d; --sb-win-ink:#fff; --sb-lose-bg:var(--ao-claret); --sb-lose-ink:#fff;
  --sb-btn-bg:var(--ao-claret); --sb-btn-bg-hover:var(--ao-claret-ink); --sb-btn-border:var(--ao-claret);
  --sb-chip-bg:#efe9df; --sb-chip-bg-hover:#e5ddcf; --sb-chip-border:rgba(26,26,26,.2);
  --sb-tile-bg:#fbfaf7; --sb-tile-border:rgba(26,26,26,.14);
  --sb-combo-bg:#fbfaf7; --sb-combo-border:rgba(26,26,26,.14);
  --sb-dead-bg:#f0eee8; --sb-dead-opacity:.5;
  --sb-table-line:rgba(26,26,26,.18); --sb-table-line-light:rgba(26,26,26,.08);
  --sb-mixed-ink:var(--ao-sky-ink); --sb-accent:var(--ao-claret); --sb-focus:var(--ao-sky);
  display:block;margin:26px 0;
}

/* ---------- Age gate ---------- */
#ao-agegate{position:fixed;inset:0;z-index:9999;background:rgba(26,26,26,.86);
  display:flex;align-items:center;justify-content:center;padding:20px}
#ao-agegate[hidden]{display:none}   /* must beat the display:flex above so "Ja" actually closes it */
.ao-agegate-box{background:#fff;max-width:440px;padding:30px;border-top:6px solid var(--ao-claret);text-align:center}
.ao-agegate-box h2{font-size:24px;margin:0 0 12px}
.ao-agegate-box p{font-size:15px;color:#333;margin:0 0 16px}
.ao-agegate-actions{display:flex;gap:14px;justify-content:center;align-items:center;margin-bottom:12px}
.ao-ag-no{color:var(--ao-muted);font-weight:700;text-decoration:underline}
.ao-ag-fine{font-size:12px;color:var(--ao-muted);margin:0}

@media (max-width:720px){
  .ao-rank-row{grid-template-columns:34px 1fr;grid-template-areas:"pos brand" "offer offer" "cta cta";gap:12px 14px;row-gap:12px}
  .ao-rank-pos{grid-area:pos}.ao-rank-brand{grid-area:brand}.ao-rank-offer{grid-area:offer}
  .ao-rank-cta{grid-area:cta;align-items:stretch;text-align:left}
  .ao-rank-cta .ao-btn{text-align:center}
  .ao-proscons{grid-template-columns:1fr}
  .ao-proscons .pro{border-right:0;border-bottom:1px solid var(--ao-rule)}
}
