/* ==========================================================================
   SphinxSlots refresh — October 2026
   Everything is scoped to body.sx-refresh (added by inc/refresh.php), so the
   whole file switches off with the `sphinxslots_refresh` option.
   The page's inline <style> blocks print later than this file; the
   .sx-refresh prefix wins on specificity, not on order. The few !important
   rules answer existing !important rules or inline style="" attributes.
   ========================================================================== */

/* ---------- Tokens: gold leaf on lapis ---------- */
body.sx-refresh {
    --sx-night: #0b0e1f;        /* page */
    --sx-ink: #121735;          /* raised surfaces: rows, cards */
    --sx-ink-raised: #19204a;   /* featured surface, hover */
    --sx-line: rgba(212, 175, 55, 0.16);
    --sx-line-strong: rgba(212, 175, 55, 0.38);
    --sx-gold: #d4af37;
    --sx-gold-hi: #f0cf6e;
    --sx-papyrus: #f2e8ce;      /* headings */
    --sx-text: #d6cbae;         /* running text */
    --sx-muted: #a99a7c;        /* secondary text, >= 4.5:1 on --sx-ink */
    --sx-faience: #4cc3b1;      /* data highlights (RTP) */
    --sx-carnelian: #de7457;    /* 18+ and warnings */
    --sx-radius: 12px;
    --sx-ease-out: cubic-bezier(0.2, 0.75, 0.25, 1);
    --bg-body: var(--sx-night);
    --header-bg: #0a0d1d;
    --header-bg-scroll: rgba(11, 14, 31, 0.92);
    background-color: var(--sx-night);
}

/* Figures line up in every table, rating and payout (Raleway defaults to old-style). */
.sx-refresh .fp-featured-stat .val,
.sx-refresh .fp-data-item,
.sx-refresh .fp-casino-meta,
.sx-refresh .fp-casino-bonus-big,
.sx-refresh .fp-egypt-slot-stats,
.sx-refresh .fp-rank,
.sx-refresh .fp-art-meta,
.sx-refresh .sx-entry-content table,
.sx-refresh .sx-offer {
    font-variant-numeric: lining-nums tabular-nums;
}

.sx-refresh :focus-visible {
    outline: 2px solid var(--sx-gold-hi);
    outline-offset: 3px;
    border-radius: 4px;
}

/* ---------- Header and responsible-gambling bar ---------- */
.sx-refresh .top-bar {
    background: #070914;
    color: var(--sx-muted);
    font-size: 0.72rem;
    letter-spacing: 0.01em;
}
@media (max-width: 600px) {
    .sx-refresh .top-bar { padding: 5px 10px; line-height: 1.5; }
    .sx-refresh .top-bar span { margin: 0 0.25rem; }
}
/* The header CTA did not fit at phone width and ran off-screen. The same link
   is the hero's first button, so it steps aside below 480px. */
@media (max-width: 480px) {
    .sx-refresh .btn-cta-header { display: none; }
}

/* ---------- Home: hero ---------- */
.sx-refresh .fp-hero {
    background:
        radial-gradient(ellipse 70% 90% at 12% 85%, rgba(212, 175, 55, 0.11), transparent 60%),
        linear-gradient(165deg, #0b0e1f 0%, #151a3c 45%, #0f1330 75%, #0b0e1f 100%);
    padding: 4.5rem 0 4rem;
}
.sx-refresh .fp-hero::after { background: linear-gradient(to top, var(--sx-night), transparent); }
@media (min-width: 901px) {
    .sx-refresh .fp-hero-grid { grid-template-columns: 1.08fr 0.92fr; gap: 3.5rem; }
}
.sx-refresh .fp-hero h1 {
    font-size: clamp(2.3rem, 5vw, 3.5rem);
    line-height: 1.08;
    letter-spacing: 0.01em;
    color: var(--sx-papyrus);
    text-wrap: balance;
}
.sx-refresh .fp-hero-sub {
    color: var(--sx-text);
    font-size: 1.08rem;
    font-weight: 400;
    max-width: 34em;
    margin-bottom: 1.75rem;
}
.sx-refresh .fp-hero-ctas { margin-bottom: 1.75rem; }
.sx-refresh .fp-cta-primary,
.sx-refresh .fp-btn-primary,
.sx-refresh .btn-cta-footer {
    background: linear-gradient(180deg, #f0cf6e 0%, #d4af37 55%, #b8922a 100%);
    color: #14110a;
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    letter-spacing: 0.01em;
    border-radius: 10px;
    box-shadow: 0 1px 0 rgba(255, 244, 205, 0.55) inset, 0 6px 20px rgba(212, 175, 55, 0.22);
    transition: transform 0.12s var(--sx-ease-out), box-shadow 0.2s, filter 0.2s;
}
.sx-refresh .fp-cta-primary:hover,
.sx-refresh .fp-btn-primary:hover,
.sx-refresh .btn-cta-footer:hover {
    transform: none;
    filter: brightness(1.06);
    color: #14110a;
    box-shadow: 0 1px 0 rgba(255, 244, 205, 0.6) inset, 0 8px 26px rgba(212, 175, 55, 0.32);
}
.sx-refresh .fp-cta-primary:active,
.sx-refresh .fp-btn-primary:active,
.sx-refresh .btn-cta-footer:active,
.sx-refresh .sx-btn-offer:active { transform: translateY(1px) scale(0.99); }
.sx-refresh .fp-cta-secondary {
    border-color: var(--sx-line-strong);
    color: var(--sx-gold-hi);
    font-weight: 600;
    border-radius: 10px;
}
.sx-refresh .fp-search-wrap { margin-bottom: 1.25rem; }
.sx-refresh .fp-search-bar {
    background: rgba(8, 11, 28, 0.55);
    border-color: var(--sx-line);
    border-radius: 12px;
}
.sx-refresh .fp-search-input::placeholder { color: rgba(214, 203, 174, 0.55); }
.sx-refresh .fp-pill {
    color: var(--sx-text);
    background: transparent;
    border-color: var(--sx-line);
    font-weight: 500;
    font-size: 0.78rem;
}
.sx-refresh .fp-pill:hover { color: var(--sx-gold-hi); border-color: var(--sx-line-strong); background: rgba(212, 175, 55, 0.06); }
/* The three reassurance badges read as a quiet line, not as buttons. */
.sx-refresh .fp-hero-badges { gap: 1.1rem; margin: 0; }
.sx-refresh .fp-hero-badge {
    padding: 0;
    background: none;
    border: 0;
    backdrop-filter: none;
    color: var(--sx-muted);
    font-size: 0.82rem;
}
.sx-refresh .fp-hero-badge svg { color: var(--sx-faience); }
.sx-refresh .fp-search-dropdown { background: var(--sx-ink); border-color: var(--sx-line); }
.sx-refresh .fp-search-dropdown.active { animation: sx-drop 0.16s var(--sx-ease-out); }
@keyframes sx-drop { from { opacity: 0; transform: translateY(-4px); } }

@media (max-width: 900px) {
    .sx-refresh .fp-hero { padding: 3rem 0 2.75rem; }
    .sx-refresh .fp-hero-grid { grid-template-columns: minmax(0, 1fr); text-align: left; }
    .sx-refresh .fp-hero-ctas,
    .sx-refresh .fp-hero-badges { justify-content: flex-start; }
    .sx-refresh .fp-hero-sub { max-width: none; }
    .sx-refresh .fp-cta-primary,
    .sx-refresh .fp-cta-secondary { flex: 1 1 auto; justify-content: center; padding: 15px 20px; }
}

/* ---------- Home: hero reels (inline SVG from sphinxslots_hero_reels()) ---------- */
.sx-refresh .fp-hero-img {
    border-radius: 18px;
    box-shadow: 0 30px 80px rgba(3, 5, 16, 0.65), 0 0 0 1px rgba(212, 175, 55, 0.12);
}
.sx-reels { display: block; width: 100%; height: auto; }
.sx-reels .sxr-sym { fill: none; stroke: #e3c25a; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.sx-reels .sxr-dim { opacity: 0.42; }

@media (prefers-reduced-motion: no-preference) {
    /* One orchestrated moment: when the reels first come into view, refresh.js
       adds .is-playing; they spin once, stop left to right, and the payline
       draws. Without JS (crawlers, agents, screenshots) the static drawing shows. */
    .sx-refresh .sx-reels.is-playing .sxr-strip { animation: sxr-spin 1.2s cubic-bezier(0.18, 0.72, 0.22, 1.035) 0.1s both; }
    .sx-refresh .sx-reels.is-playing .sxr-strip--2 { animation-duration: 1.45s; }
    .sx-refresh .sx-reels.is-playing .sxr-strip--3 { animation-duration: 1.7s; }
    .sx-refresh .sx-reels.is-playing .sxr-payline { stroke-dasharray: 1; animation: sxr-draw 0.55s ease-out 1.8s both; }
    .sx-refresh .sx-reels.is-playing .sxr-glow { animation: sxr-glow 0.7s ease-out 1.9s both; }
}
@keyframes sxr-spin { from { transform: translateY(-480px); } }
@keyframes sxr-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes sxr-glow { from { opacity: 0; } }

/* ---------- Home: quick links (replaces the stats band) ---------- */
.sx-refresh .sx-quicklinks {
    background: #0d1128;
    border: 0;
    position: relative;
}
/* The one ornamental rule on the page: the striped band of a nemes headdress. */
.sx-refresh .sx-quicklinks::before {
    content: '';
    display: block;
    height: 5px;
    background: repeating-linear-gradient(90deg, var(--sx-gold) 0 18px, #1e2a6e 18px 36px);
    opacity: 0.85;
}
.sx-refresh .sx-quicklinks .fp-stat {
    display: block;
    text-align: left;
    padding: 1.35rem 1.5rem 1.4rem;
    border-right: 1px solid var(--sx-line);
    text-decoration: none;
    transition: background-color 0.2s;
}
.sx-refresh .sx-quicklinks .fp-stat:hover { background: rgba(212, 175, 55, 0.05); }
.sx-refresh .sx-quicklinks .fp-stat-num {
    display: block;
    font-family: 'Raleway', sans-serif;
    font-size: 1.02rem;
    font-weight: 700;
    color: var(--sx-papyrus);
    letter-spacing: 0;
    line-height: 1.3;
}
.sx-refresh .sx-quicklinks .fp-stat:hover .fp-stat-num { color: var(--sx-gold-hi); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.sx-refresh .sx-quicklinks .fp-stat-label {
    display: block;
    margin-top: 0.3rem;
    font-size: 0.84rem;
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.45;
}
@media (max-width: 700px) {
    .sx-refresh .sx-quicklinks .fp-stat { padding: 1rem 1rem 1.1rem; border-bottom: 1px solid var(--sx-line); }
    .sx-refresh .sx-quicklinks .fp-stat:nth-child(2n) { border-right: 0; }
}

/* ---------- Home: sections ---------- */
.sx-refresh .fp-section,
.sx-refresh .fp-section-alt { padding: 4.25rem 0; }
.sx-refresh .fp-section-alt { background: linear-gradient(180deg, #10143000 0%, #111634 18%, #111634 82%, #10143000 100%); }
.sx-refresh .fp-section-head { margin-bottom: 1.75rem; }
.sx-refresh .fp-section-head h2 {
    font-size: clamp(1.7rem, 3vw, 2.3rem);
    line-height: 1.15;
    color: var(--sx-papyrus);
    letter-spacing: 0.01em;
    margin-bottom: 0.55rem;
    text-wrap: balance;
}
.sx-refresh .fp-see-all {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    color: var(--sx-gold-hi);
    text-decoration: underline;
    text-decoration-color: var(--sx-line-strong);
    text-underline-offset: 5px;
    gap: 6px;
}
.sx-refresh .fp-see-all:hover { gap: 6px; text-decoration-color: currentColor; }

/* Answers the Code Snippet that already forces #9a8460 on these with !important. */
.sx-refresh .fp-section-head p,
.sx-refresh .fp-stat-label,
.sx-refresh .fp-featured-stat .lbl,
.sx-refresh .fp-casino-meta,
.sx-refresh .fp-casino-data .fp-data-item,
.sx-refresh .fp-egypt-slot-stats span,
.sx-refresh .fp-flow-step p,
.sx-refresh .fp-game p,
.sx-refresh .fp-tool-card p,
.sx-refresh .fp-trust-item p { color: var(--sx-muted) !important; }
.sx-refresh .fp-section-head p { font-size: 1rem; max-width: 38em; }

/* ---------- Home: top 10 ---------- */
.sx-refresh .fp-featured {
    background: linear-gradient(135deg, #1a2150 0%, #141a3d 60%, #121735 100%);
    border-color: var(--sx-line-strong);
    border-radius: 18px;
    grid-template-columns: 84px minmax(0, 1fr) auto;
    padding: 2.25rem 2.25rem 2rem;
    margin-bottom: 0.75rem;
}
.sx-refresh .fp-featured-badge {
    text-transform: none;
    font-family: 'Raleway', sans-serif;
    font-size: 0.74rem;
    letter-spacing: 0.01em;
    color: #14110a;
    background: var(--sx-gold-hi);
    top: 14px;
    right: 16px;
}
.sx-refresh .fp-featured-info h3 { color: var(--sx-papyrus); font-size: 1.65rem; }
.sx-refresh .fp-casino-bonus-big {
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    font-size: 1.02rem;
    letter-spacing: 0;
    line-height: 1.35;
    color: var(--sx-gold-hi);
}
.sx-refresh .fp-featured .fp-casino-bonus-big { font-size: 1.15rem; }
.sx-refresh .fp-featured-row { gap: 0; margin-top: 1rem; }
.sx-refresh .fp-featured-stat {
    text-align: left;
    padding: 0 1.4rem;
    border-left: 1px solid var(--sx-line);
}
.sx-refresh .fp-featured-stat:first-child { padding-left: 0; border-left: 0; }
.sx-refresh .fp-featured-stat .val {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 1.2rem;
    color: var(--sx-papyrus);
}
.sx-refresh .fp-featured-stat .lbl { text-transform: none; letter-spacing: 0; font-size: 0.78rem; margin-top: 4px; }
.sx-refresh .fp-featured-providers span { color: var(--sx-text); background: rgba(212, 175, 55, 0.07); }
.sx-refresh .fp-featured-actions { min-width: 210px; }

.sx-refresh .fp-casino-row {
    grid-template-columns: 52px minmax(0, 1.35fr) minmax(0, 1fr) auto;
    background: var(--sx-ink);
    border: 1px solid rgba(212, 175, 55, 0.07);
    border-radius: var(--sx-radius);
    margin-bottom: 6px;
    padding: 1.1rem 1.4rem 1.1rem 1rem;
    position: relative;
    transition: border-color 0.2s, background-color 0.2s;
}
/* Hovering or focusing a row draws a payline under it. */
.sx-refresh .fp-casino-row::after {
    content: '';
    position: absolute;
    left: 1rem; right: 1rem; bottom: -1px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--sx-gold), transparent);
    transform: scaleX(0);
    transition: transform 0.35s var(--sx-ease-out);
}
.sx-refresh .fp-casino-row:hover,
.sx-refresh .fp-casino-row:focus-within { background: var(--sx-ink-raised); border-color: var(--sx-line); }
.sx-refresh .fp-casino-row:hover::after,
.sx-refresh .fp-casino-row:focus-within::after { transform: scaleX(1); }
.sx-refresh .fp-rank {
    font-size: 1.55rem;
    color: rgba(212, 175, 55, 0.62);
    transition: color 0.2s;
}
.sx-refresh .fp-casino-row:hover .fp-rank { color: var(--sx-gold-hi); }
.sx-refresh .fp-casino-name { color: var(--sx-papyrus); font-size: 1.02rem; }
.sx-refresh .fp-casino-meta { font-size: 0.76rem; margin-top: 3px; }
.sx-refresh .fp-casino-data { gap: 0.4rem 1.2rem; align-items: baseline; }
.sx-refresh .fp-data-item { font-size: 0.82rem; }
.sx-refresh .fp-data-item strong { color: var(--sx-papyrus); font-weight: 700; font-size: 0.95rem; }
.sx-refresh .fp-casino-cta {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    color: var(--sx-gold-hi);
    background: transparent;
    border-color: var(--sx-line-strong);
    border-radius: 9px;
    padding: 10px 20px;
}
.sx-refresh .fp-casino-cta:hover { background: rgba(212, 175, 55, 0.1); color: var(--sx-gold-hi); }

@media (max-width: 800px) {
    .sx-refresh .fp-featured { grid-template-columns: minmax(0, 1fr); padding: 1.25rem 1.1rem 1.1rem; gap: 0.9rem; }
    .sx-refresh .fp-featured-logo { width: 52px; height: 52px; border-radius: 12px; font-size: 1rem; }
    .sx-refresh .fp-featured-info h3 { font-size: 1.35rem; }
    .sx-refresh .fp-featured-actions { min-width: 0; }
    .sx-refresh .fp-featured-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.8rem 1rem; }
    .sx-refresh .fp-featured-stat,
    .sx-refresh .fp-featured-stat:first-child { padding: 0 0 0 0.75rem; border-left: 1px solid var(--sx-line); }

    /* A row is two lines on a phone: who and what, then numbers and the button. */
    .sx-refresh .fp-casino-row {
        grid-template-columns: 30px minmax(0, 1fr) auto;
        grid-template-areas: "rank main main" "rank data cta";
        gap: 0.65rem 0.75rem;
        padding: 0.9rem 0.9rem 0.9rem 0.6rem;
    }
    .sx-refresh .fp-rank { grid-area: rank; font-size: 1.15rem; align-self: start; padding-top: 0.7rem; }
    .sx-refresh .fp-casino-main { grid-area: main; gap: 0.75rem; align-items: flex-start; }
    .sx-refresh .fp-logo { width: 40px; height: 40px; border-radius: 10px; font-size: 0.68rem; }
    .sx-refresh .fp-casino-data { grid-area: data; grid-column: auto; gap: 0.2rem 0.9rem; }
    .sx-refresh .fp-casino-data .fp-data-item:nth-child(2),
    .sx-refresh .fp-casino-data .fp-data-item:nth-child(4) { display: none; } /* repeated in the meta line / provider list */
    .sx-refresh .fp-casino-cta { grid-area: cta; grid-column: auto; padding: 9px 14px; font-size: 0.82rem; align-self: center; }
    .sx-refresh .fp-casino-bonus-big { font-size: 0.95rem; }
}

/* Visually hidden, still read by screen readers and agents. */
.sx-refresh .sx-vh {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}

/* ---------- Home: slots, steps, categories, tools, articles, trust ---------- */
.sx-refresh .fp-egypt-slot,
.sx-refresh .fp-game,
.sx-refresh .fp-tool-card,
.sx-refresh .fp-art {
    background: var(--sx-ink);
    border: 1px solid rgba(212, 175, 55, 0.08);
    border-radius: var(--sx-radius);
    transition: border-color 0.2s, background-color 0.2s;
}
/* Cards no longer jump on hover; the border answers the pointer instead. */
.sx-refresh .fp-egypt-slot:hover,
.sx-refresh .fp-game:hover,
.sx-refresh .fp-tool-card:hover,
.sx-refresh .fp-art:hover {
    transform: none;
    box-shadow: none;
    border-color: var(--sx-line-strong);
    background: var(--sx-ink-raised);
}
.sx-refresh .fp-art:hover .fp-art-img img { transform: none; }
.sx-refresh .fp-egypt-slot h4,
.sx-refresh .fp-game h3,
.sx-refresh .fp-tool-card h3,
.sx-refresh .fp-flow-step h3,
.sx-refresh .fp-trust-item h4 {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 1.02rem;
    letter-spacing: 0;
    color: var(--sx-papyrus);
}
.sx-refresh .fp-egypt-slot-provider { color: var(--sx-gold-hi); font-size: 0.8rem; }
.sx-refresh .fp-egypt-slot-stats { gap: 0.35rem 0.9rem; }
.sx-refresh .fp-egypt-slot-stats span { font-size: 0.8rem; }
.sx-refresh .fp-egypt-slot-stats strong { color: var(--sx-papyrus); }
.sx-refresh .fp-egypt-slot-stats span:first-child strong { color: var(--sx-faience); }

.sx-refresh .fp-flow-num { font-size: 2.4rem; background: none; -webkit-text-fill-color: rgba(212, 175, 55, 0.55); color: rgba(212, 175, 55, 0.55); }
.sx-refresh .fp-flow-icon { background: rgba(212, 175, 55, 0.07); border-color: var(--sx-line); }

.sx-refresh .fp-game p,
.sx-refresh .fp-tool-card p { font-size: 0.86rem; line-height: 1.55; }
.sx-refresh .fp-game .fp-game-titles { color: var(--sx-text); font-size: 0.8rem; }
.sx-refresh .fp-game .fp-game-count { color: var(--sx-gold-hi); }
.sx-refresh .fp-tool-card { text-align: left; align-items: flex-start; padding: 1.5rem 1.4rem; }
.sx-refresh .fp-tool-card .fp-arrow { color: var(--sx-gold-hi); }

.sx-refresh .fp-art-img { background: #0f1430; }
/* Posts without a featured image get a quiet lapis panel around the icon. */
.sx-refresh .fp-art-img:not(:has(img)) {
    background: radial-gradient(circle at 50% 50%, rgba(212, 175, 55, 0.13), transparent 55%), #10153a !important;
}
.sx-refresh .fp-art-cat {
    font-family: 'Raleway', sans-serif;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.78rem;
    color: var(--sx-gold-hi);
}
.sx-refresh .fp-art h3 { color: var(--sx-papyrus); font-size: 1.05rem; }
.sx-refresh .fp-art-meta { color: var(--sx-muted); font-size: 0.78rem; }

.sx-refresh .fp-trust-item { text-align: left; }
.sx-refresh .fp-trust-item svg { width: 26px; height: 26px; color: var(--sx-faience); }

/* ---------- Pre-footer and footer ---------- */
.sx-refresh .prefooter-cta { background: linear-gradient(180deg, var(--sx-night) 0%, #121738 55%, #080a17 100%); }
.sx-refresh .prefooter-sub { color: var(--sx-text); }
.sx-refresh .site-footer { background-color: #080a17; }

/* ==========================================================================
   Articles and affiliate pages (single.php)
   ========================================================================== */
.sx-refresh .sx-article-header { background: linear-gradient(180deg, var(--sx-night) 0%, #10153a 100%); border-bottom-color: var(--sx-line); }
.sx-refresh .sx-breadcrumbs,
.sx-refresh .sx-breadcrumbs a,
.sx-refresh .sx-meta-row,
.sx-refresh .sx-meta-updated { color: var(--sx-muted); }
.sx-refresh .sx-article-title { color: var(--sx-papyrus); text-wrap: balance; line-height: 1.15; }
.sx-refresh .sx-cat-badge {
    font-family: 'Raleway', sans-serif;
    text-transform: none;
    letter-spacing: 0;
    font-size: 0.8rem;
    font-weight: 700;
}

.sx-refresh .sx-entry-content {
    color: var(--sx-text);
    font-size: 1.0625rem;
    line-height: 1.75;
}
/* The generator wrapped its JSON-LD in <p> tags: collapse the empty lines, keep the scripts. */
.sx-refresh .sx-entry-content > p:has(> script[type="application/ld+json"]) { margin: 0; font-size: 0; line-height: 0; }
.sx-refresh .sx-entry-content > article > h2:first-child { margin-top: 0.5rem; }
.sx-refresh .sx-entry-content h2 {
    font-size: clamp(1.45rem, 2.6vw, 1.8rem);
    color: var(--sx-papyrus);
    margin: 2.75rem 0 1rem;
    border-bottom-color: var(--sx-line);
    text-wrap: balance;
}
.sx-refresh .sx-entry-content h3 {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 1.22rem;
    letter-spacing: 0;
    color: var(--sx-papyrus);
    margin: 2rem 0 0.6rem;
}
.sx-refresh .sx-entry-content h4 { font-family: 'Raleway', sans-serif; font-weight: 700; color: var(--sx-gold-hi); }
.sx-refresh .sx-entry-content strong,
.sx-refresh .sx-entry-content b { color: var(--sx-papyrus); }
.sx-refresh .sx-entry-content a { color: var(--sx-gold-hi); }

/* Tables scroll inside their own box (the wrapper comes from inc/refresh.php). */
.sx-refresh .sx-table-scroll {
    margin: 1.75rem 0;
    overflow-x: auto;
    border: 1px solid var(--sx-line);
    border-radius: var(--sx-radius);
    background:
        linear-gradient(90deg, var(--sx-ink) 30%, rgba(18, 23, 53, 0)) left / 40px 100% no-repeat local,
        linear-gradient(270deg, var(--sx-ink) 30%, rgba(18, 23, 53, 0)) right / 40px 100% no-repeat local,
        radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.55), transparent) left / 14px 100% no-repeat scroll,
        radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.55), transparent) right / 14px 100% no-repeat scroll,
        var(--sx-ink);
}
.sx-refresh .sx-table-scroll table {
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    min-width: 34rem;
}
.sx-refresh .sx-entry-content table thead th {
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 0.8rem;
    color: var(--sx-papyrus);
    background: rgba(212, 175, 55, 0.08);
    vertical-align: bottom;
}
.sx-refresh .sx-entry-content table tbody td { color: var(--sx-text); font-size: 0.92rem; vertical-align: top; }
.sx-refresh .sx-entry-content table tbody tr:nth-child(even) td { background: rgba(255, 255, 255, 0.015); }

/* Former "#affiliate-link" anchors: plain text until a real offer is attached. */
.sx-refresh .sx-offer-pending { color: inherit; }
.sx-refresh td .sx-offer-pending { color: var(--sx-muted); }

/* "Explore More" network box, once. */
.sx-refresh .related-sites {
    margin: 2.5rem 0 0;
    padding: 1.1rem 1.25rem;
    border: 1px solid var(--sx-line);
    border-radius: var(--sx-radius);
    background: transparent;
}
.sx-refresh .related-sites h3 { margin: 0 0 0.4rem; font-size: 0.95rem; color: var(--sx-muted); }
.sx-refresh .related-sites ul { margin: 0; }
.sx-refresh .related-sites li { font-size: 0.92rem; }

.sx-refresh .key-takeaways-box {
    border: 1px solid var(--sx-line);
    border-left: 3px solid var(--sx-gold);
    border-radius: var(--sx-radius);
    background: var(--sx-ink);
    padding: 1.25rem 1.5rem 0.5rem;
    margin: 2rem 0;
}
.sx-refresh .key-takeaways-box h2 { margin-top: 0; border: 0; font-size: 1.3rem; }

/* ---------- Offer card: [sx_offer], hand-made sponsored buttons, real .cta-box ---------- */
.sx-refresh .sx-btn-offer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 26px;
    border-radius: 10px;
    background: linear-gradient(180deg, #f0cf6e 0%, #d4af37 55%, #b8922a 100%);
    color: #14110a !important;
    font-family: 'Raleway', sans-serif;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none !important;
    box-shadow: 0 1px 0 rgba(255, 244, 205, 0.55) inset, 0 6px 20px rgba(212, 175, 55, 0.22);
    transition: transform 0.12s var(--sx-ease-out), filter 0.2s;
}
.sx-refresh .sx-btn-offer:hover { filter: brightness(1.06); }

.sx-refresh .sx-offer,
.sx-refresh .cta-box {
    position: relative;
    margin: 2rem 0 !important;
    padding: 1.35rem 1.5rem 1.1rem !important;
    border: 1px solid var(--sx-line-strong) !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #1a2150 0%, #131a3e 100%) !important;
    color: var(--sx-text) !important;
    text-align: left !important;
}
.sx-refresh .sx-offer__top { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.35rem 0.75rem; }
.sx-refresh .sx-offer__rank { font-family: 'Cinzel', serif; font-weight: 700; color: var(--sx-gold); font-size: 0.95rem; }
.sx-refresh .sx-offer__brand { font-family: 'Cinzel', serif; font-weight: 700; font-size: 1.35rem; color: var(--sx-papyrus); }
.sx-refresh .sx-offer__geo { font-size: 0.8rem; color: var(--sx-faience); }
.sx-refresh .sx-offer__headline,
.sx-refresh .sx-entry-content .sx-offer__headline {
    margin: 0.35rem 0 0.6rem;
    font-weight: 700;
    font-size: 1.18rem;
    line-height: 1.35;
    color: var(--sx-gold-hi);
}
.sx-refresh .sx-entry-content ul.sx-offer__terms { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0 0 1rem; }
.sx-refresh .sx-entry-content ul.sx-offer__terms li {
    margin: 0;
    padding: 0.2rem 0.6rem;
    font-size: 0.84rem;
    border: 1px solid var(--sx-line);
    border-radius: 999px;
    color: var(--sx-text);
}
.sx-refresh .sx-entry-content ul.sx-offer__terms li::before { display: none; }
.sx-refresh .sx-offer__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.25rem; }
.sx-refresh .sx-entry-content .sx-offer__review { color: var(--sx-gold-hi); font-weight: 600; font-size: 0.95rem; }
.sx-refresh .sx-entry-content .sx-offer__small { margin: 0.9rem 0 0; font-size: 0.76rem; color: var(--sx-muted); }
.sx-refresh .sx-entry-content .sx-offer__small a { color: var(--sx-muted); }
.sx-refresh .cta-box h3 { color: var(--sx-papyrus) !important; margin-top: 0 !important; }
.sx-refresh .cta-box .cta-button {
    background: linear-gradient(180deg, #f0cf6e 0%, #d4af37 55%, #b8922a 100%) !important;
    color: #14110a !important;
    border-radius: 10px !important;
}
@media (max-width: 600px) {
    .sx-refresh .sx-btn-offer { width: 100%; }
    .sx-refresh .sx-offer, .sx-refresh .cta-box { padding: 1.1rem 1rem 1rem !important; }
}

/* ---------- Motion that answers the reader ---------- */
.sx-refresh details > summary { cursor: pointer; }
@supports (interpolate-size: allow-keywords) {
    .sx-refresh details:not(.sx-country-picker) { interpolate-size: allow-keywords; }
    .sx-refresh details:not(.sx-country-picker)::details-content { height: 0; overflow: clip; transition: height 0.25s var(--sx-ease-out), content-visibility 0.25s allow-discrete; }
    .sx-refresh details:not(.sx-country-picker)[open]::details-content { height: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .sx-refresh *, .sx-refresh *::before, .sx-refresh *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}
