Odds CTA · Jira ART-378 · Foxbet design system. Rewritten 2026-08-02.
It no longer documents the whole family of 5 variants — it documents
only what the analysis page actually renders, flagged with where it runs. Every number is measured in the browser on 2026-08-02, on 1440px and
390px, at foxbet-responsive.html + foxbet-responsive-live.html
— it is not design intent.
Six placements, four control forms, of which two show no bookmaker at all.
Only the branded controls (V7, V6) load a logo, and always from logo-assets/plain-light/ — a transparent wordmark on the brand fill. The two no-bookmaker controls (V1, player card) and the pinned chip load no asset at all.
Not needed
Neither rectangle/, nor circle/, nor
plain-dark/: none of the variants shipped here use them. The plain-dark/ is added only if an operator with a light fill is introduced — see §07.
The map. The only thing that changes per breakpoint is size —
no placement is desktop-only or mobile-only. That is an audit finding, not an assumption: the V8 exists in the tip card's DOM but is display:none at both breakpoints, which is why it is not here.
| Placement | Form | Class | Desktop ≥1200 | Mobile ≤1199 | Bookmaker | Runs at |
|---|---|---|---|---|---|---|
| Hero — «Το προγνωστικό μας» | V7 pill + selection | .bodd.bodd--pill.bodd--sel | 225×48 | 113×44 |
Yes | Both |
| «Προοπτική αγώνα» ×2 | V7 pill + selection | .bodd.bodd--pill.bodd--sel | 225×48 | 113×44 |
Yes | Both |
| Tip card | V6 pill, bare | .bodd.bodd--pill | 197×48 | 197×48 |
Yes | Both same size |
| «Πιθανότητες αγώνα» ×7 | V1 neutral card | .modd | 69–98 × 41 | 67–178 × 41 |
None | Both |
| Player card (pitch → player) | Player CTA row | .plpop-bet | 230×36 | 306×52 |
None | Both |
| Pinned slim banner | Odd chip | .ps-od | 26 tall | 26 tall | Colour, not a logo | Both |
.modd + .modd-card + .od (V1) · the brand-fill shell
.bodd* with .bodd--pill / .bodd--sel and the
.bo-<operator> fills · .plpop-bet · .ps-od. The rules for V2 / V3 / V5 / V8 were removed from the stylesheet of this file too — do not bring them back «for completeness».Runs at 3 places: the hero CTA and the two in «Προοπτική αγώνα». The only desktop/mobile difference is width and 4px of height — same markup, same variant. The selection (.bodd-lbl) is the market, separated from the odd by
.bodd-sep.
One place: the tip card. 197×48 at both breakpoints — it is the only control that does not change at all. It has no selection label: the pick «1 & Over 2.5» is already the card's title to its left, so repeating it inside the pill would be duplication.
The control for «Πιθανότητες αγώνα» — 7 markets in a row. It names no bookmaker: a white card, 41px tall, and the width hugs its content (measured 69–98px desktop, 67–178px mobile — the wide one is a market with a long label). The odd is Roboto Bold 14 in #1A1A1A — not Mono, not orange: those were retired on 2026-07-30.
.modd-card, not the outer <a class="modd">. The anchor measures ~41.8px because the
.moddgrid is flex with align-items:stretch — do not chase it as a 1px bug. The card is exactly 41 (39 + 2×1 border).The CTA inside the player card (pitch → tap/hover a player).
It is not .modd nor .bodd — it is its own row (.plpop-bet) with three parts: the «Πρόταση» label (9/700, Primary 600), the market, and the odd in a dark chip (Roboto Mono, bg #1A1A1A, radius 6). It runs at both breakpoints, but with different chrome around it: desktop =
popover 232px, mobile = centred modal 320px (changed from a bottom sheet on 2026-08-01).
min-height:52px): it is the modal's primary action and the only tap target inside it. On desktop the same row is 36px, because the popover is a hover preview and the click happens once it has been «pinned».When the bar pins, the wide offer becomes one line: label, the .ps-od chip with pick + odd, and «ΠΑΙΞΕ ΝΟΜΙΜΑ*».
It carries no logo — the operator IS the colour of the bar itself
(the .bo-<operator> supplies the --bk), because a wordmark on the brand fill said the same thing twice.
line-height:16px. With two fonts the baselines fell 1px apart and the chip looked crooked; with
align-items:baseline the chip grew 26→29px and the bar 42→45px.
The chip must stay 26px.One sponsor per page, page-level config — never a user control. The operator is applied ONLY via the .bo-<operator> class, and the colour is never tinted in any state.
.bo-<operator> must match exactly the asset's filename (fonbet → plain-light/fonbet.svg). A mismatch = a visible seam..is-lt + the logo from plain-dark/.#1E87C9
fails AA with both white and ink.translateY(1px), not scale().Everything below is the real DOM from the page, as extracted on 2026-08-02 — not a rewritten example.
<!-- V7 — hero & «Προοπτική αγώνα». Ίδιο και στα δύο breakpoints. --> <a class="bodd bodd--pill bodd--sel bo-fonbet" href="…" target="_blank" rel="noopener" title="Ολλανδία — fonbet" aria-label="Ολλανδία — fonbet"> <span class="bodd-bk"><img src="logo-assets/plain-light/fonbet.svg" alt="fonbet"></span> <span class="bodd-in"> <span class="bodd-lbl">1</span> <span class="bodd-sep" aria-hidden="true"></span> <span class="bodd-od">2.00</span> </span> </a> <!-- V6 — κάρτα προγνωστικού. Χωρίς .bodd-lbl / .bodd-sep. --> <a class="bodd bodd--pill bo-fonbet" href="…" title="1 & Over 2.5 — fonbet"> <span class="bodd-bk"><img src="logo-assets/plain-light/fonbet.svg" alt="fonbet"></span> <span class="bodd-in"><span class="bodd-od">3.10</span></span> </a> <!-- V1 — «Πιθανότητες αγώνα». NO bookmaker, NO ΕΕΕΠ line. --> <a class="modd" href="…" title="Ακριβές σκορ 1 - 0" aria-label="Ακριβές σκορ 1 - 0"> <span class="modd-card"><span class="od">7.00</span></span> </a> <!-- Player card CTA — NO bookmaker. Τελευταία γραμμή του popover/modal. --> <a class="plpop-bet" href="…" target="_blank" rel="noopener"> <span class="plpop-bl">Πρόταση</span> <span class="plpop-bm">Clean sheet</span> <span class="plpop-bo">2.49</span> </a> <!-- Pinned slim banner chip. Ο operator είναι το χρώμα της μπάρας. --> <a class="promo-slim bo-fonbet" href="…"> <div class="ps-odds"> <span class="ps-tiplbl">Το Προγνωστικό μας</span> <span class="ps-od" data-tipstick><span>1 & Over 2.5</span>3.10</span> </div> <span class="ps-cta">ΠΑΙΞΕ ΝΟΜΙΜΑ*</span> </a>
title + aria-label on V6/V7: the control shows nothing but a number, so without them a screen reader hears «2.00» with no market and no operator. Format: <market> — <operator>..bodd-sep is aria-hidden — it is decorative.<a> with
target="_blank" rel="noopener".So nobody goes looking: these were in the previous handover and are not used on the analysis page. Their specs and CSS were removed.
| Variant | What it was | Why it is not here |
|---|---|---|
| V2 | Sponsored two-part card | Renders nowhere. |
| V3 | Best-odds two-part card | Was in the hero; replaced by V7. |
| V5 | Brand block 100×68 | Does not render; the pill took its place. |
| V8 | V1 + bookmaker mark | It IS in the DOM of the tip card, but display:none at both breakpoints. If you want it, that is a product decision — not a bug. |
foxbet-responsive.html and
foxbet-responsive-live.html — the CTA blocks are byte-identical..bo-<operator> matches the filename; logo from
plain-light/.title + aria-label on every control.