/* Shared canvas and controls. Domain renderers own their internal geometry. */
body.eui-site.sp-vi {
  --sp-vi-font-copy: var(--eui-font);
  --sp-vi-font-display: var(--cq-skin-font-display);
  --sp-vi-radius: var(--cq-skin-radius);
  --sp-vi-control-height: 44px;
  --sp-vi-space: 24px;
  --sp-ds-page: var(--eui-background); --sp-ds-commercial: var(--cq-skin-surface);
  --sp-ds-frame: var(--cq-skin-bar); --sp-ds-raised: var(--cq-skin-raised);
  --sp-ds-support: var(--cq-skin-bar); --sp-ds-editorial: var(--cq-skin-bar);
  --sp-ds-line: var(--cq-skin-line); --sp-ds-line-soft: var(--cq-skin-line);
  --sp-ds-heading: var(--cq-skin-paper); --sp-ds-copy: var(--cq-skin-text); --sp-ds-muted: var(--cq-skin-muted);
  --sp-ds-action: var(--cq-skin-accent); --sp-ds-action-ink: var(--cq-skin-accent-ink);
  --sp-ds-control: var(--cq-skin-muted); --sp-ds-radius: var(--cq-skin-radius);
  --sp-ds-font-display: var(--cq-skin-font-display);
}
body.eui-site.sp-vi :is(.eui-entry, .entry-content.eui-prose) { width: 100%; min-width: 0; }
body.eui-site.sp-vi .eui-prose > :is(.sp-article, .sp-review, .sp-casino, .sp-bonus-finder, .sp-guide-hub-preview, #sp-review-hub-pilot) {
  width: 100%; max-width: none !important; margin-inline: 0 !important; padding-inline: 0 !important;
}
body.eui-site.sp-vi .eui-prose :is(.is-layout-constrained, .wp-block-group.is-layout-constrained) > :where(:not(.alignleft):not(.alignright):not(.alignfull)) { max-width: 100%; }
body.eui-site.sp-vi .eui-prose :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea) {
  max-width: 100%; min-height: var(--sp-vi-control-height); border-radius: var(--sp-vi-radius);
  font-family: var(--sp-vi-font-copy); color-scheme: dark;
}
body.eui-site.sp-vi .eui-prose :is(button, summary) { font-family: var(--sp-vi-font-display); }
body.eui-site.sp-vi .eui-prose :is(.ec-toc, .ec-author-box, .ec-contextual-links, .ec-related, .ec-breadcrumb) { min-width: 0; max-width: 100%; }
body.eui-site.sp-vi .eui-entry .entry-content.eui-prose h1 { max-width: none; width: 100%; }
/* The old pronostici retain their markup and bonus geometry, while their
   editorial surface now consumes the same identity as the v2 articles. */
body.eui-site.sp-vi .eui-prose .sp-article:not(.sp-pron-v2) {
  --sp-bg: var(--cq-skin-surface); --sp-surface: var(--cq-skin-bar); --sp-surface-2: var(--cq-skin-raised);
  --sp-text: var(--cq-skin-text); --sp-heading: var(--cq-skin-paper); --sp-muted: var(--cq-skin-muted);
  --sp-border: var(--cq-skin-line); --sp-border-strong: var(--cq-skin-line);
  --sp-accent: var(--cq-skin-accent); --sp-accent-green: var(--cq-skin-accent);
  font-family: var(--eui-font); color: var(--cq-skin-text);
}
body.eui-site.sp-vi.sp-vi-family--prediction-legacy .eui-prose .sp-article {
  background: transparent !important; border: 0; box-shadow: none;
}
body.eui-site.sp-vi.sp-vi-family--prediction-legacy .eui-prose :is(.sp-page-hero, .sp-hero) {
  padding: 0 0 24px; margin-bottom: 24px; border: 0; border-bottom: 1px solid var(--cq-skin-line);
  border-radius: 0; background: transparent; box-shadow: none;
}
body.eui-site.sp-vi .eui-prose :is(.sp-btn, .sp-btn-secondary, .sp-review-btn, .sp-ds-btn, .sp-gh-btn, .sp-cta-inline a) {
  min-height: 44px; border-radius: var(--cq-skin-radius) !important;
  font-family: var(--eui-font-display) !important; font-size: 18px; font-weight: 700; box-shadow: none;
}
body.eui-site.sp-vi .eui-prose :is(.sp-odds-table, .sp-compare-table, .sp-table) { max-width: 100%; }
body.eui-site.sp-vi .eui-prose :is(.ec-concept, .ec-note, .ec-warning, .ec-example, .ec-box) { border-radius: var(--cq-skin-radius); font-family: var(--eui-font); }
body.eui-site.sp-vi.sp-vi-family--bonus .eui-prose :is(.sp-hero, .sp-section, .sp-casino-section) {
  width: 100%; max-width: none; background: transparent !important; border: 0 !important;
  border-bottom: 1px solid var(--cq-skin-line) !important; border-radius: 0 !important; box-shadow: none !important;
}
body.eui-site.sp-vi.sp-vi-family--bonus .eui-prose :is(.sp-hero, .sp-section) { padding: 24px 0 !important; }
body.eui-site.sp-vi.sp-vi-family--bonus .eui-prose :is(.sp-hero h1, .sp-section h2) { max-width: none; color: var(--cq-skin-paper); }
body.eui-site.sp-vi .eui-prose :is(.sp-telegram-cta, .sp-cta-box) {
  border-radius: var(--cq-skin-radius) !important; box-shadow: none !important;
}
@media (max-width: 600px) { body.eui-site.sp-vi { --sp-vi-space: 16px; } }
/* Presentation variables are supplied by the site, component CSS by the plugin. */
body.eui-site.sp-vi .sp-aff-directory--editorial {
  --sp-aff-dir-bg: var(--cq-skin-surface); --sp-aff-dir-panel: var(--cq-skin-bar);
  --sp-aff-dir-border: var(--cq-skin-line); --sp-aff-dir-control: var(--cq-skin-muted);
  --sp-aff-dir-text: var(--cq-skin-paper); --sp-aff-dir-muted: var(--cq-skin-muted);
  --sp-aff-dir-action: var(--cq-skin-accent); --sp-aff-dir-action-text: var(--cq-skin-accent-ink);
  --sp-aff-dir-focus: var(--cq-skin-accent);
}
body.eui-site.sp-vi .sp-aff-finder--editorial {
  --sp-aff-finder-bg: var(--cq-skin-surface); --sp-aff-finder-card: var(--cq-skin-bar);
  --sp-aff-finder-line: var(--cq-skin-line); --sp-aff-finder-text: var(--cq-skin-paper);
  --sp-aff-finder-muted: var(--cq-skin-muted); --sp-aff-finder-action: var(--cq-skin-accent);
}
body.eui-site.sp-vi .sp-aff-operator {
  --sp-aff-op-heading-font: var(--eui-font-display); --sp-aff-op-cta-radius: var(--cq-skin-radius);
  --sp-aff-op-bg: var(--cq-skin-surface); --sp-aff-op-head-bg: var(--cq-skin-bar);
  --sp-aff-op-section-bg: var(--cq-skin-bar); --sp-aff-op-section-alt-bg: var(--cq-skin-raised);
  --sp-aff-op-shadow: none;
}
