/* ============================================================
   Casino Review template — append to assets/css/main.css
   Namespaced .ac-cr-*  ·  logical properties only (RTL + LTR)
   Uses existing theme tokens; adds no new colors.
   ============================================================ */

/* ---------- Hero ---------- */
.ac-cr-page .ac-cr-hero{padding:56px 0 48px}
.ac-cr-page .ac-cr-hero__grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:start}
.ac-cr-page .ac-cr-hero__id{display:flex;gap:24px;align-items:center;margin-bottom:24px}
.ac-cr-page .ac-cr-logo{width:96px;height:96px;border-radius:18px;flex-shrink:0;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--ac-primary),var(--ac-accent));color:var(--ac-primary-text);font-family:var(--ac-font-serif);font-size:52px;font-weight:800;line-height:1}
.ac-cr-page .ac-cr-logo img{width:100%;height:100%;object-fit:contain;padding:8px;box-sizing:border-box;background:var(--ac-surface);mix-blend-mode:multiply}
.ac-cr-page .ac-cr-hero__title{font-family:var(--ac-font-serif);font-size:48px;line-height:1.1;font-weight:700;letter-spacing:-.5px;color:var(--ac-text);margin:0;text-wrap:balance}
.ac-cr-page .ac-cr-hero__tagline{font-size:16px;font-weight:500;color:var(--ac-text-muted);margin-top:8px}

.ac-cr-page .ac-cr-score{display:flex;align-items:center;gap:18px;padding:20px 24px;background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:14px;margin-bottom:24px;max-width:540px}
.ac-cr-page .ac-cr-score__num{font-family:var(--ac-font-serif);font-size:56px;font-weight:800;color:var(--ac-accent);line-height:1}
.ac-cr-page .ac-cr-score__outof{font-size:11px;font-weight:700;color:var(--ac-text-muted);letter-spacing:1.4px;margin-top:4px}
.ac-cr-page .ac-cr-score__right{flex:1}
.ac-cr-page .ac-cr-stars{color:var(--ac-accent);letter-spacing:1.5px;font-size:16px;direction:ltr;display:inline-block}
.ac-cr-page .ac-cr-score__meta{font-size:13px;font-weight:500;color:var(--ac-text-muted);margin-top:6px}

.ac-cr-page .ac-cr-byline{display:flex;gap:18px;align-items:center;flex-wrap:wrap;row-gap:6px;font-size:13px;font-weight:500;color:var(--ac-text-muted)}
.ac-cr-page .ac-cr-byline strong{color:var(--ac-text);font-weight:700}
.ac-cr-page .ac-cr-byline__sep{opacity:.5}

/* Bonus card */
.ac-cr-page .ac-cr-bonus-card{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:16px;padding:28px;box-shadow:0 30px 80px -30px var(--ac-accent)}
.ac-cr-page .ac-cr-bonus-card__kicker{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--ac-accent);margin-bottom:12px}
.ac-cr-page .ac-cr-bonus-card__amount{font-family:var(--ac-font-serif);font-size:38px;font-weight:700;line-height:1.1;color:var(--ac-text);margin-bottom:8px}
.ac-cr-page .ac-cr-bonus-card__extra{font-size:18px;font-weight:700;color:var(--ac-accent);margin-bottom:18px}
.ac-cr-page .ac-cr-bonus-card__terms{font-size:14px;font-weight:500;color:var(--ac-text-muted);line-height:1.7;margin-bottom:22px}
.ac-cr-page .ac-cr-bonus-card__disclaimer{font-size:11px;font-weight:500;color:var(--ac-text-muted);text-align:center;line-height:1.6;margin-top:10px}
.ac-cr-page .ac-cr-btn{display:block;width:100%;box-sizing:border-box;background:var(--ac-primary);color:var(--ac-primary-text);border:none;padding:16px;border-radius:10px;font-weight:800;font-size:15px;font-family:inherit;text-align:center;text-decoration:none;cursor:pointer;transition:background .15s}
.ac-cr-page .ac-cr-btn:hover{background:var(--ac-accent);color:var(--ac-primary-text);text-decoration:none}

/* ---------- Quick facts strip ---------- */
.ac-cr-page .ac-cr-facts{padding:0 0 56px;margin-top:-8px}
.ac-cr-page .ac-cr-facts__grid{background:var(--ac-surface-alt);border:1px solid var(--ac-border);border-radius:14px;display:grid;grid-template-columns:repeat(var(--ac-cr-fact-cols,6),1fr);overflow:hidden}
.ac-cr-page .ac-cr-fact{padding:20px 18px;border-inline-end:1px solid var(--ac-border)}
.ac-cr-page .ac-cr-fact:last-child{border-inline-end:none}
.ac-cr-page .ac-cr-fact__k{font-size:11px;font-weight:700;color:var(--ac-text-muted);letter-spacing:1.2px;margin-bottom:6px}
.ac-cr-page .ac-cr-fact__v{font-size:15px;font-weight:700;color:var(--ac-text)}

/* ---------- Shared section furniture ---------- */
.ac-cr-page .ac-cr-section{padding:64px 0}
.ac-cr-page .ac-cr-section--band{background:var(--ac-surface-alt);border-top:1px solid var(--ac-border);border-bottom:1px solid var(--ac-border)}
.ac-cr-page .ac-cr-section--band-last{background:var(--ac-surface-alt);border-top:1px solid var(--ac-border)}
.ac-cr-page .ac-cr-head{margin-bottom:28px}
.ac-cr-page .ac-cr-kicker{font-size:12px;font-weight:800;letter-spacing:2px;color:var(--ac-accent);margin-bottom:10px}
.ac-cr-page .ac-cr-h2{font-family:var(--ac-font-serif);font-size:36px;font-weight:700;color:var(--ac-text);margin:0;letter-spacing:-.5px;text-wrap:balance}
.ac-cr-page .ac-cr-h2--sm{font-size:32px}
.ac-cr-page .ac-cr-card{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:14px;padding:24px}

/* ---------- Pros/cons + score breakdown row ---------- */
.ac-cr-page .ac-cr-analysis{padding:0 0 64px}
.ac-cr-page .ac-cr-analysis__grid{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:start}
.ac-cr-page .ac-cr-analysis__h2{font-family:var(--ac-font-serif);font-size:32px;font-weight:700;color:var(--ac-text);letter-spacing:-.5px;margin:0 0 24px}
/* the ac-pros-cons and ac-score-breakdown blocks live here — kill their own outer margin */
.ac-cr-page .ac-cr-analysis .ac-pros-cons,.ac-cr-page .ac-cr-analysis .ac-score-breakdown{margin:0}
.ac-cr-page .ac-cr-analysis .ac-score-breakdown__heading{display:none}

/* ---------- Bonus tiers ---------- */
.ac-cr-page .ac-cr-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}
.ac-cr-page .ac-cr-tier{position:relative;background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:16px;padding:36px 32px 32px}
.ac-cr-page .ac-cr-tier__badge{position:absolute;top:-18px;inset-inline-end:24px;min-width:56px;text-align:center;padding:8px 18px;border-radius:10px;font-family:var(--ac-font-serif);font-size:18px;font-weight:800;letter-spacing:.5px;background:var(--ac-surface);color:var(--ac-text);border:1px solid var(--ac-border);direction:ltr}
.ac-cr-page .ac-cr-tier--lead .ac-cr-tier__badge{background:var(--ac-primary);color:var(--ac-primary-text);border:none;box-shadow:0 12px 24px -8px var(--ac-accent)}
.ac-cr-page .ac-cr-tier__label{font-size:13px;font-weight:700;color:var(--ac-text-muted);letter-spacing:1.3px;margin-bottom:14px}
.ac-cr-page .ac-cr-tier__match{font-family:var(--ac-font-serif);font-size:44px;font-weight:800;color:var(--ac-accent);line-height:1.05}
.ac-cr-page .ac-cr-tier__upto{font-size:16px;font-weight:700;color:var(--ac-text);margin-top:8px}
.ac-cr-page .ac-cr-tier__spins{font-size:14px;font-weight:500;color:var(--ac-text-muted);margin-top:14px;line-height:1.6}
.ac-cr-page .ac-cr-terms{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:14px;padding:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.ac-cr-page .ac-cr-terms__k{font-size:11px;font-weight:700;color:var(--ac-text-muted);letter-spacing:1.2px;margin-bottom:4px}
.ac-cr-page .ac-cr-terms__v{font-size:16px;font-weight:700;color:var(--ac-text)}
.ac-cr-page .ac-cr-terms__v--code{font-family:ui-monospace,'SF Mono',Menlo,monospace;direction:ltr;display:inline-block}

/* ---------- Games ---------- */
.ac-cr-page .ac-cr-gamestats{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:32px}
.ac-cr-page .ac-cr-gamestat{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:12px;padding:20px 16px;text-align:center}
.ac-cr-page .ac-cr-gamestat__v{font-family:var(--ac-font-serif);font-size:24px;font-weight:800;color:var(--ac-accent);direction:ltr}
.ac-cr-page .ac-cr-gamestat__k{font-size:12px;font-weight:600;color:var(--ac-text-muted);margin-top:6px}
.ac-cr-page .ac-cr-sublabel{font-size:12px;font-weight:700;letter-spacing:1.5px;color:var(--ac-text-muted);margin-bottom:14px}
.ac-cr-page .ac-cr-chips{display:flex;flex-wrap:wrap;gap:10px}
.ac-cr-page .ac-cr-chip{padding:10px 18px;background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:8px;font-size:13px;font-weight:700;color:var(--ac-text);letter-spacing:.3px;direction:ltr}

/* ---------- Payments ---------- */
.ac-cr-page .ac-cr-pay{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ac-cr-page .ac-cr-pay__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.ac-cr-page .ac-cr-pay__title{font-size:16px;font-weight:700;color:var(--ac-text)}
.ac-cr-page .ac-cr-pay__time{padding:4px 10px;border-radius:99px;background:var(--ac-surface-alt);color:var(--ac-accent);font-size:11px;font-weight:700;letter-spacing:.5px}
.ac-cr-page .ac-cr-pay__list{display:flex;flex-wrap:wrap;gap:8px}
.ac-cr-page .ac-cr-paytile{min-width:84px;height:50px;padding:0 14px;box-sizing:border-box;border:1px solid var(--ac-border);border-radius:8px;background:var(--ac-surface-alt);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--ac-text);letter-spacing:.3px;direction:ltr}
.ac-cr-page .ac-cr-paytile img{max-width:100%;max-height:34px;object-fit:contain;mix-blend-mode:multiply}

/* ---------- Full review disclosure ---------- */
.ac-cr-page .ac-cr-full{padding:64px 0 0}
.ac-cr-page .ac-cr-full__box{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:16px;overflow:hidden}
.ac-cr-page .ac-cr-full__summary{list-style:none;cursor:pointer;padding:26px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.ac-cr-page .ac-cr-full__summary::-webkit-details-marker{display:none}
.ac-cr-page .ac-cr-full__kicker{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--ac-accent);margin-bottom:8px}
.ac-cr-page .ac-cr-full__title{font-family:var(--ac-font-serif);font-size:26px;font-weight:700;color:var(--ac-text)}
.ac-cr-page .ac-cr-full__meta{font-size:13px;font-weight:500;color:var(--ac-text-muted);margin-top:6px}
.ac-cr-page .ac-cr-full__toggle{width:48px;height:48px;border-radius:50%;flex-shrink:0;background:var(--ac-surface-alt);border:1px solid var(--ac-accent);color:var(--ac-accent);display:grid;place-items:center;font-size:24px;font-weight:300;transition:transform .25s ease}
.ac-cr-page .ac-cr-full__box[open] .ac-cr-full__toggle{transform:rotate(45deg)}
.ac-cr-page .ac-cr-full__body{border-top:1px solid var(--ac-border);padding:40px 32px;font-size:17px;line-height:1.85;color:var(--ac-text)}
.ac-cr-page .ac-cr-full__body>*:first-child{margin-top:0}
.ac-cr-page .ac-cr-full__body p{margin:0 0 22px}
.ac-cr-page .ac-cr-full__body h2,.ac-cr-page .ac-cr-full__body h3{font-family:var(--ac-font-serif);font-size:26px;font-weight:700;color:var(--ac-text);margin:32px 0 14px;letter-spacing:-.2px}
.ac-cr-page .ac-cr-full__body strong{color:var(--ac-accent)}

/* ---------- Verdict ---------- */
.ac-cr-page .ac-cr-verdict{padding:48px 0 64px}
.ac-cr-page .ac-cr-verdict__inner{max-width:760px}
.ac-cr-page .ac-cr-verdict__body{font-size:17px;line-height:1.85;color:var(--ac-text);margin:0 0 28px}
.ac-cr-page .ac-cr-verdict .ac-cr-h2{margin-bottom:22px}
.ac-cr-page .ac-cr-cta{padding:28px;border-radius:14px;background:var(--ac-primary);color:var(--ac-primary-text);display:flex;align-items:center;justify-content:space-between;gap:24px}
.ac-cr-page .ac-cr-cta__title{font-family:var(--ac-font-serif);font-size:22px;font-weight:700;margin-bottom:6px}
.ac-cr-page .ac-cr-cta__sub{font-size:14px;font-weight:500;color:var(--ac-primary-text)}
.ac-cr-page .ac-cr-cta__btn{background:var(--ac-primary-text);color:var(--ac-primary);border:none;padding:14px 24px;border-radius:10px;font-weight:800;font-size:15px;font-family:inherit;text-decoration:none;white-space:nowrap;flex-shrink:0;cursor:pointer}
.ac-cr-page .ac-cr-cta__btn:hover{background:var(--ac-primary-text);color:var(--ac-accent);text-decoration:none}

/* ---------- Screenshots ---------- */
.ac-cr-page .ac-cr-shots{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ac-cr-page .ac-cr-shot{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:12px;overflow:hidden}
.ac-cr-page .ac-cr-shot__frame{aspect-ratio:16/10;background:var(--ac-surface-alt);display:grid;place-items:center;position:relative;overflow:hidden}
.ac-cr-page .ac-cr-shot__frame img{width:100%;height:100%;object-fit:cover;display:block}
.ac-cr-page .ac-cr-shot__ph{position:relative;font-family:ui-monospace,Menlo,monospace;font-size:11px;color:var(--ac-text-muted)}
.ac-cr-page .ac-cr-shot__label{padding:12px 14px;font-size:12px;font-weight:600;color:var(--ac-text)}

/* ---------- FAQ ---------- */
.ac-cr-page .ac-cr-faq__grid{display:grid;grid-template-columns:1fr 2fr;gap:48px;align-items:start}
.ac-cr-page .ac-cr-faq__intro{font-size:15px;font-weight:500;color:var(--ac-text-muted);line-height:1.7;margin:14px 0 0}
.ac-cr-page .ac-cr-faq__body .ac-faq{margin:0}
.ac-cr-page .ac-cr-faq__body .ac-faq__heading{display:none}

/* ---------- Related ---------- */
.ac-cr-page .ac-cr-related{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ac-cr-page .ac-cr-rel{background:var(--ac-surface);border:1px solid var(--ac-border);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:16px}
.ac-cr-page .ac-cr-rel__top{display:flex;align-items:center;gap:12px}
.ac-cr-page .ac-cr-rel__mark{width:48px;height:48px;border-radius:10px;flex-shrink:0;overflow:hidden;background:linear-gradient(135deg,var(--ac-primary),var(--ac-accent));color:var(--ac-primary-text);display:grid;place-items:center;font-family:var(--ac-font-serif);font-size:22px;font-weight:700}
.ac-cr-page .ac-cr-rel__mark img{width:100%;height:100%;object-fit:contain;padding:5px;box-sizing:border-box;background:var(--ac-surface);mix-blend-mode:multiply}
.ac-cr-page .ac-cr-rel__name{font-size:16px;font-weight:700;color:var(--ac-text)}
.ac-cr-page .ac-cr-rel__score{font-size:12px;font-weight:600;color:var(--ac-text-muted);margin-top:2px}
.ac-cr-page .ac-cr-rel__score .ac-cr-stars{font-size:12px}
.ac-cr-page .ac-cr-rel__bonus{font-size:14px;font-weight:600;color:var(--ac-text)}
.ac-cr-page .ac-cr-rel__bonus span{color:var(--ac-accent)}
.ac-cr-page .ac-cr-rel__cta{margin-top:auto;background:transparent;color:var(--ac-text);border:1px solid var(--ac-border);padding:11px;border-radius:8px;font-weight:700;font-size:13px;font-family:inherit;text-align:center;text-decoration:none;cursor:pointer}
.ac-cr-page .ac-cr-rel__cta:hover{border-color:var(--ac-accent);color:var(--ac-accent);text-decoration:none}

/* ---------- Contents bar (planned over the whole body, printed once) ---------- */
.ac-cr-page .ac-cr-toc{padding:32px 0 0}
.ac-cr-page .ac-cr-toc .ac-toc{margin:0}

/* ---------- Author bio row ---------- */
.ac-cr-page .ac-cr-authorwrap{padding:48px 0 64px}
.ac-cr-page .ac-cr-authorwrap .ac-author{margin:0}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .ac-cr-page .ac-cr-gamestats{grid-template-columns:repeat(3,1fr)}
  .ac-cr-page .ac-cr-shots{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:980px){
  .ac-cr-page .ac-cr-hero{padding:40px 0 32px}
  .ac-cr-page .ac-cr-hero__grid,.ac-cr-page .ac-cr-analysis__grid,.ac-cr-page .ac-cr-faq__grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .ac-cr-page .ac-cr-hero__title{font-size:36px}
  .ac-cr-page .ac-cr-logo{width:72px;height:72px;font-size:38px}
  .ac-cr-page .ac-cr-facts__grid{grid-template-columns:repeat(3,1fr)}
  .ac-cr-page .ac-cr-fact:nth-child(3n){border-inline-end:none}
  .ac-cr-page .ac-cr-tiers,.ac-cr-page .ac-cr-related{grid-template-columns:minmax(0,1fr)}
  .ac-cr-page .ac-cr-terms{grid-template-columns:1fr 1fr}
  .ac-cr-page .ac-cr-pay{grid-template-columns:minmax(0,1fr)}
  .ac-cr-page .ac-cr-section,.ac-cr-page .ac-cr-full{padding-top:48px;padding-bottom:48px}
  .ac-cr-page .ac-cr-h2{font-size:30px}
  .ac-cr-page .ac-cr-cta{flex-direction:column;align-items:stretch;text-align:center}
  .ac-cr-page .ac-cr-cta__btn{display:block;width:100%}
}
@media (max-width:620px){
  .ac-cr-page .ac-cr-hero__id{gap:16px}
  .ac-cr-page .ac-cr-hero__title{font-size:28px}
  .ac-cr-page .ac-cr-score{flex-wrap:wrap;padding:18px}
  .ac-cr-page .ac-cr-score__num{font-size:44px}
  .ac-cr-page .ac-cr-facts__grid{grid-template-columns:1fr 1fr}
  .ac-cr-page .ac-cr-fact:nth-child(2n){border-inline-end:none}
  .ac-cr-page .ac-cr-gamestats,.ac-cr-page .ac-cr-shots{grid-template-columns:1fr 1fr}
  .ac-cr-page .ac-cr-terms{grid-template-columns:1fr}
  .ac-cr-page .ac-cr-h2,.ac-cr-page .ac-cr-analysis__h2{font-size:26px}
  .ac-cr-page .ac-cr-full__summary{padding:20px 22px;gap:14px}
  .ac-cr-page .ac-cr-full__title{font-size:21px}
  .ac-cr-page .ac-cr-full__body{padding:28px 22px}
}
