/*
 * com_fcpgame — structural layout only.
 * Colors, fonts, and form styling inherit from YooTheme/UIkit.
 * Customization hook: set --fcpg-accent in your theme's custom CSS:
 *   .fcpgame-wrap { --fcpg-accent: #your-color; }
 */

.fcpgame-wrap *, .fcpgame-wrap *::before, .fcpgame-wrap *::after { box-sizing: border-box; }

.fcpgame-wrap {
  --fcpg-accent: var(--uk-color-primary, #1e87f0);
  background: transparent;
  -webkit-font-smoothing: antialiased;
  font-size: 15px;
  line-height: 1.6;
}

.fcpgame-wrap .fcpg-wrap { max-width: 560px; margin: 0 auto; padding: 1.5rem 1.25rem 3rem; }

/* Spinner */
.fcpgame-wrap .fcpg-spinner {
  width: 36px; height: 36px;
  border: 3px solid rgba(0,0,0,.1);
  border-top-color: var(--fcpg-accent);
  border-radius: 50%;
  animation: fcpg-spin .8s linear infinite; margin: 0 auto;
}
@keyframes fcpg-spin { to { transform: rotate(360deg); } }

/* Progress bar */
.fcpgame-wrap .fcpg-prog-bar { height: 3px; border-radius: 2px; margin-bottom: 1.5rem; background: rgba(0,0,0,.08); }
.fcpgame-wrap .fcpg-prog-fill { height: 100%; border-radius: 2px; background: var(--fcpg-accent); transition: width .4s ease; }

/* Step dots */
.fcpgame-wrap .fcpg-step-row { display: flex; align-items: center; margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-step-dot { width: 7px; height: 7px; border-radius: 50%; background: rgba(0,0,0,.15); flex-shrink: 0; }
.fcpgame-wrap .fcpg-step-dot.done   { background: var(--fcpg-accent); }
.fcpgame-wrap .fcpg-step-dot.active { background: currentColor; }
.fcpgame-wrap .fcpg-step-line { flex: 1; height: 1px; background: rgba(0,0,0,.08); }

/* Typography — let UIkit handle colors, just set sizes */
.fcpgame-wrap .fcpg-q-label { font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; margin: 0 0 .5rem; }
.fcpgame-wrap .fcpg-q-text  { font-size: 20px; font-weight: 500; line-height: 1.35; margin: 0 0 .75rem; }
.fcpgame-wrap .fcpg-q-sub   { font-size: 14px; margin: -.25rem 0 1.25rem; line-height: 1.5; }
.fcpgame-wrap .fcpg-hero-title { font-size: 28px; font-weight: 500; line-height: 1.25; margin: 0 0 .85rem; }
.fcpgame-wrap .fcpg-hero-sub   { font-size: 15px; line-height: 1.65; margin: 0 0 1.5rem; }

/* Section heading */
.fcpgame-wrap .fcpg-section-head { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; margin: 2rem 0 .85rem; padding-bottom: .4rem; border-bottom: 1px solid rgba(0,0,0,.08); }

/* Buttons — structure only, UIkit handles color */
.fcpgame-wrap .fcpg-btn-primary  { display: block; width: 100%; text-align: center; line-height: 1.3; }
.fcpgame-wrap .fcpg-btn-secondary { display: block; width: 100%; text-align: center; margin-top: 8px; }
.fcpgame-wrap .fcpg-nav-row { display: flex; gap: 8px; margin-top: 1rem; }
.fcpgame-wrap .fcpg-nav-row .fcpg-btn-primary { flex: 2; }
.fcpgame-wrap .fcpg-btn-back { flex: 1; }

/* Option cards */
.fcpgame-wrap .fcpg-opt-grid { display: grid; gap: 8px; margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-cols2 { grid-template-columns: 1fr 1fr; }
.fcpgame-wrap .fcpg-opt {
  padding: .85rem 1rem; border-radius: 8px; cursor: pointer;
  border: 1px solid rgba(0,0,0,.12); transition: border-color .15s, box-shadow .15s;
}
.fcpgame-wrap .fcpg-opt:hover   { border-color: var(--fcpg-accent); }
.fcpgame-wrap .fcpg-opt.selected { border-color: var(--fcpg-accent); box-shadow: 0 0 0 2px var(--fcpg-accent); }
.fcpgame-wrap .fcpg-opt-title { font-size: 14px; font-weight: 500; margin-bottom: 3px; }
.fcpgame-wrap .fcpg-opt-sub   { font-size: 12px; opacity: .65; }

/* Option list (radio-style) */
.fcpgame-wrap .fcpg-opt-list { display: flex; flex-direction: column; gap: 6px; margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-opt-list-item {
  padding: .85rem 1rem; border-radius: 8px; cursor: pointer;
  border: 1px solid rgba(0,0,0,.12); transition: border-color .15s;
}
.fcpgame-wrap .fcpg-opt-list-item:hover   { border-color: var(--fcpg-accent); }
.fcpgame-wrap .fcpg-opt-list-item.selected { border-color: var(--fcpg-accent); box-shadow: 0 0 0 2px var(--fcpg-accent); }
.fcpgame-wrap .fcpg-opt-list-item .fcpg-opt-title { font-size: 15px; }
.fcpgame-wrap .fcpg-opt-list-item .fcpg-opt-sub   { font-size: 13px; opacity: .65; }

/* Input rows */
.fcpgame-wrap .fcpg-input-row { margin-bottom: .9rem; }
.fcpgame-wrap .fcpg-input-row label { display: block; font-size: 13px; font-weight: 500; margin-bottom: 4px; }

/* Tags (multi-select) */
.fcpgame-wrap .fcpg-tag-wrap { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-tag {
  font-size: 13px; padding: 6px 14px; border-radius: 20px; cursor: pointer;
  border: 1px solid rgba(0,0,0,.15); transition: all .15s;
}
.fcpgame-wrap .fcpg-tag:hover    { border-color: var(--fcpg-accent); }
.fcpgame-wrap .fcpg-tag.selected { border-color: var(--fcpg-accent); background: var(--fcpg-accent); color: #fff; }

/* Slider */
.fcpgame-wrap .fcpg-slider-block { margin-bottom: 1.5rem; }
.fcpgame-wrap .fcpg-slider-val   { font-size: 17px; font-weight: 500; text-align: center; margin: .75rem 0 .35rem; }
.fcpgame-wrap .fcpg-slider-ends  { display: flex; justify-content: space-between; font-size: 12px; opacity: .55; }
.fcpgame-wrap .fcpg-slider-block input[type=range] { width: 100%; cursor: pointer; }

/* Priority ranking */
.fcpgame-wrap .fcpg-rank-list { list-style: none; padding: 0; margin: 0 0 1.25rem; }
.fcpgame-wrap .fcpg-rank-item {
  display: flex; align-items: center; gap: 10px;
  padding: .7rem .9rem; border-radius: 8px; margin-bottom: 6px; cursor: grab;
  border: 1px solid rgba(0,0,0,.12);
}
.fcpgame-wrap .fcpg-rank-num  { font-size: 13px; font-weight: 600; width: 22px; text-align: center; opacity: .55; }
.fcpgame-wrap .fcpg-rank-label { font-size: 14px; }

/* Results — archetype header */
.fcpgame-wrap .fcpg-result-label { font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; margin-bottom: 1.25rem; opacity: .55; }
.fcpgame-wrap .fcpg-arch-header  { display: flex; align-items: center; gap: 14px; margin-bottom: .75rem; }
.fcpgame-wrap .fcpg-arch-icon-lg { font-size: 32px; width: 60px; height: 60px; border-radius: 14px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; border: 1px solid rgba(0,0,0,.08); }
.fcpgame-wrap .fcpg-arch-name    { font-size: 24px; font-weight: 600; }
.fcpgame-wrap .fcpg-arch-sub     { font-size: 13px; opacity: .6; }
.fcpgame-wrap .fcpg-arch-tagline { font-size: 15px; line-height: 1.6; margin: 0 0 1.5rem; padding: .85rem 1rem; border-radius: 10px; border: 1px solid rgba(0,0,0,.06); }

/* Radar */
.fcpgame-wrap .fcpg-radar-wrap   { margin-bottom: .5rem; }
.fcpgame-wrap .fcpg-radar-legend { display: flex; gap: 1.5rem; justify-content: center; margin: .25rem 0 1rem; }
.fcpgame-wrap .fcpg-legend-row   { display: flex; align-items: center; gap: 6px; font-size: 12px; }
.fcpgame-wrap .fcpg-legend-line  { display: inline-block; width: 24px; height: 2px; border-radius: 1px; }
.fcpgame-wrap .fcpg-legend-you    { background: currentColor; }
.fcpgame-wrap .fcpg-legend-sector { background: var(--fcpg-accent); }

/* Insight cards */
.fcpgame-wrap .fcpg-insights      { margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-insight-card  { border: 1px solid rgba(0,0,0,.08); border-radius: 10px; padding: .85rem 1rem; margin-bottom: 8px; }
.fcpgame-wrap .fcpg-insight-head  { display: flex; align-items: center; gap: 8px; margin-bottom: .5rem; }
.fcpgame-wrap .fcpg-insight-dot   { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
.fcpgame-wrap .fcpg-insight-dim   { font-size: 14px; font-weight: 500; flex: 1; }
.fcpgame-wrap .fcpg-insight-level { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.fcpgame-wrap .fcpg-insight-text  { font-size: 14px; line-height: 1.55; margin: 0; }

/* Peer distribution */
.fcpgame-wrap .fcpg-peer-block   { margin-bottom: .5rem; }
.fcpgame-wrap .fcpg-peer-row     { display: flex; align-items: center; gap: 8px; margin-bottom: 7px; opacity: .55; transition: opacity .2s; }
.fcpgame-wrap .fcpg-peer-row.fcpg-peer-you { opacity: 1; }
.fcpgame-wrap .fcpg-peer-dot     { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.fcpgame-wrap .fcpg-peer-name    { font-size: 13px; width: 160px; min-width: 160px; flex-shrink: 0; white-space: nowrap; overflow: visible; }
.fcpgame-wrap .fcpg-peer-bar-wrap{ flex: 1; height: 8px; border-radius: 4px; overflow: hidden; background: rgba(0,0,0,.06); }
.fcpgame-wrap .fcpg-peer-bar     { height: 100%; border-radius: 4px; transition: width .9s ease; }
.fcpgame-wrap .fcpg-peer-tag     { font-size: 11px; font-weight: 600; width: 38px; flex-shrink: 0; }
.fcpgame-wrap .fcpg-compare-note { font-size: 12px; opacity: .5; margin-bottom: 1rem; }

/* Cost card */
.fcpgame-wrap .fcpg-cost-card       { border: 1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 1.1rem; margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-cost-meta-row   { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; margin-bottom: 1rem; }
.fcpgame-wrap .fcpg-cost-meta       { padding: .65rem .75rem; border-radius: 8px; border: 1px solid rgba(0,0,0,.06); }
.fcpgame-wrap .fcpg-cost-meta-lbl   { font-size: 11px; opacity: .55; margin-bottom: 3px; }
.fcpgame-wrap .fcpg-cost-meta-val   { font-size: 16px; font-weight: 500; }
.fcpgame-wrap .fcpg-cost-display    { border-radius: 8px; padding: 1.25rem; text-align: center; margin: .75rem 0; background: rgba(0,0,0,.03); }
.fcpgame-wrap .fcpg-cost-num        { font-size: 36px; font-weight: 500; color: var(--fcpg-accent); }
.fcpgame-wrap .fcpg-cost-lbl        { font-size: 13px; opacity: .6; margin-top: 4px; }
.fcpgame-wrap .fcpg-cost-mini       { padding: .6rem .75rem; border-radius: 8px; border: 1px solid rgba(0,0,0,.06); }
.fcpgame-wrap .fcpg-cost-mini-lbl   { font-size: 11px; opacity: .55; }
.fcpgame-wrap .fcpg-cost-mini-val   { font-size: 15px; font-weight: 500; }
.fcpgame-wrap .fcpg-cost-note       { font-size: 12px; opacity: .5; margin-top: .75rem; line-height: 1.5; }

/* Certificate */
.fcpgame-wrap .fcpg-cert-frame    { border: 1px solid rgba(0,0,0,.1); border-radius: 14px; padding: 2rem 1.5rem; text-align: center; margin-bottom: 1rem; }
.fcpgame-wrap .fcpg-cert-headline { font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; opacity: .4; margin-bottom: 1rem; }
.fcpgame-wrap .fcpg-cert-icon     { font-size: 40px; margin-bottom: .75rem; }
.fcpgame-wrap .fcpg-cert-name     { font-size: 22px; font-weight: 600; margin-bottom: .25rem; }
.fcpgame-wrap .fcpg-cert-arch     { font-size: 15px; opacity: .7; margin-bottom: .5rem; }
.fcpgame-wrap .fcpg-cert-meta     { font-size: 12px; opacity: .45; }

/* Share row */
.fcpgame-wrap .fcpg-share-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: .5rem; }
.fcpgame-wrap .fcpg-share-btn { padding: .7rem 1rem; border-radius: 8px; border: 1px solid rgba(0,0,0,.12); font-size: 14px; font-weight: 500; cursor: pointer; text-align: center; }
.fcpgame-wrap .fcpg-li-btn    { background: #0077b5; color: #fff; border-color: #0077b5; }

/* CTA block */
.fcpgame-wrap .fcpg-cta-block { margin-top: 1rem; padding: 1.25rem 1rem; border-radius: 12px; text-align: center; border: 1px solid rgba(0,0,0,.06); }
.fcpgame-wrap .fcpg-cta-sub   { font-size: 13px; line-height: 1.55; margin: 0 0 .85rem; opacity: .7; }

/* Roadmap */
.fcpgame-wrap .fcpg-roadmap-block { margin-bottom: 1.25rem; }
.fcpgame-wrap .fcpg-road-card     { border: 1px solid rgba(0,0,0,.08); border-radius: 12px; padding: 1.1rem; margin-bottom: 10px; }
.fcpgame-wrap .fcpg-road-header   { display: flex; align-items: center; gap: 8px; margin-bottom: .65rem; }
.fcpgame-wrap .fcpg-road-step     { font-size: 10px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; padding: 3px 9px; border-radius: 20px; flex-shrink: 0; }
.fcpgame-wrap .fcpg-road-service  { font-size: 13px; font-weight: 600; letter-spacing: .04em; }
.fcpgame-wrap .fcpg-road-title    { font-size: 16px; font-weight: 500; line-height: 1.35; margin-bottom: .55rem; }
.fcpgame-wrap .fcpg-road-why      { font-size: 14px; line-height: 1.6; margin-bottom: .75rem; opacity: .7; }
.fcpgame-wrap .fcpg-road-outcome  { font-size: 13px; line-height: 1.5; border-radius: 7px; padding: .6rem .85rem; margin-bottom: .75rem; border: 1px solid rgba(0,0,0,.06); }
.fcpgame-wrap .fcpg-road-outcome-label { display: block; font-size: 10px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; opacity: .45; margin-bottom: 4px; }
.fcpgame-wrap .fcpg-road-link     { font-size: 12px; font-weight: 500; color: var(--fcpg-accent); text-decoration: none; display: inline-block; }

/* Returning user notice */
.fcpgame-wrap .fcpg-returning-notice { display: flex; align-items: flex-start; gap: 10px; border-radius: 10px; padding: .85rem 1rem; margin-bottom: 1.25rem; font-size: 13px; line-height: 1.5; border: 1px solid rgba(0,0,0,.08); }
.fcpgame-wrap .fcpg-returning-icon   { font-size: 16px; flex-shrink: 0; margin-top: 1px; }

/* Survey CTA */
.fcpgame-wrap .fcpg-survey-cta   { display: flex; align-items: center; gap: 14px; border: 1px solid rgba(0,0,0,.1); border-radius: 12px; padding: 1.1rem; margin: 0 0 1.5rem; }
.fcpgame-wrap .fcpg-survey-icon  { font-size: 28px; flex-shrink: 0; }
.fcpgame-wrap .fcpg-survey-body  { flex: 1; min-width: 0; }
.fcpgame-wrap .fcpg-survey-title { font-size: 14px; font-weight: 500; margin-bottom: 3px; }
.fcpgame-wrap .fcpg-survey-sub   { font-size: 12px; line-height: 1.4; opacity: .7; }
.fcpgame-wrap .fcpg-survey-btn   { flex-shrink: 0; border: none; border-radius: 8px; padding: 10px 16px; font-size: 13px; font-weight: 500; cursor: pointer; white-space: nowrap; background: var(--fcpg-accent); color: #fff; }


/* ── Print / Save PDF ────────────────────────────────────── */
/* ── Print / PDF header + footer elements ────────────────── */
/* Hidden on screen, revealed only in print */
.fcpg-print-header,
.fcpg-print-footer { display: none; }

@media print {
  /* ── Page setup ─────────────────────────────────────────── */
  @page {
    size: letter portrait;
    margin: 18mm 16mm 20mm 16mm;
  }
  @page :first { margin-top: 10mm; }

  /* -- Isolation: hide everything except the quiz root ------ */
  /* JS moves #fcpgame-root to a direct body child on beforeprint,  */
  /* so we can cleanly hide all other direct body children.         */
  body.fcpg-printing > *:not(#fcpgame-root) { display: none !important; }
  /* Fallback when JS hasn't moved the root (own-page context):     */
  /* visibility: hidden on everything, then reveal the quiz.        */
  body:not(.fcpg-printing) * { visibility: hidden !important; }
  body:not(.fcpg-printing) #fcpgame-root,
  body:not(.fcpg-printing) #fcpgame-root * { visibility: visible !important; }
  #fcpgame-root {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #fff !important;
    position: static !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }
  /* Reset modal ancestors if any */
  .uk-modal, .uk-modal-dialog, .uk-modal-body {
    position: static !important;
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* ── Full-width content ─────────────────────────────────── */
  body { font-size: 11pt !important; line-height: 1.55 !important; color: #1a1a2e !important; }
  .fcpgame-wrap, .fcpg-wrap { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }

  /* ── Colour fidelity ────────────────────────────────────── */
  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }

  /* ── Hide interactive elements ──────────────────────────── */
  .fcpg-share-row,
  .fcpg-returning-notice,
  .fcpg-prog-bar,
  .fcpg-step-row,
  #btn-survey,
  #btn-consult,
  #btn-retake,
  .fcpg-cost-card input[type=range],
  .fcpg-cert-section,
  .uk-card-secondary,
  .uk-card-default.uk-margin-top { display: none !important; }

  /* ── Letterhead header ──────────────────────────────────── */
  .fcpg-print-header {
    display: block !important;
    margin-bottom: 18pt;
  }
  .fcpg-print-header-inner {
    display: flex;
    align-items: center;
    gap: 18pt;
    padding-bottom: 10pt;
  }
  .fcpg-print-logo {
    height: 52pt;
    width: auto;
    display: block;
  }
  .fcpg-print-header-text {
    flex: 1;
    text-align: right;
  }
  .fcpg-print-doc-title {
    font-size: 15pt;
    font-weight: 700;
    color: #1E5078;
    letter-spacing: .02em;
  }
  .fcpg-print-doc-sub {
    font-size: 9pt;
    color: #4C75A0;
    margin-top: 2pt;
    letter-spacing: .04em;
    text-transform: uppercase;
  }
  .fcpg-print-header-rule {
    height: 3pt;
    background: linear-gradient(90deg, #1E5078 0%, #3C82B4 60%, #EBF5FF 100%);
    border-radius: 2pt;
  }

  /* ── Result label & archetype header ───────────────────── */
  .fcpg-result-label {
    display: none !important;  /* Replaced by print header */
  }
  .fcpg-arch-header {
    display: flex !important;
    align-items: center;
    gap: 12pt;
    margin-bottom: 14pt;
    padding-bottom: 10pt;
    border-bottom: 1pt solid #e0e8f0;
    break-after: avoid;
  }
  .fcpg-arch-icon-lg {
    font-size: 36pt !important;
    line-height: 1;
  }
  .fcpg-arch-name {
    font-size: 20pt !important;
    color: #1E5078 !important;
    font-weight: 700 !important;
  }
  .fcpg-arch-tagline {
    font-size: 10pt !important;
    color: #4C75A0 !important;
    margin-top: 2pt;
  }

  /* ── Score badge ────────────────────────────────────────── */
  .fcpg-score-badge {
    background: #1E5078 !important;
    color: #fff !important;
    border-radius: 8pt !important;
  }

  /* ── Section headings ───────────────────────────────────── */
  .fcpg-section-head {
    font-size: 10pt !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: #1E5078 !important;
    border-bottom: 1.5pt solid #EBF5FF !important;
    padding-bottom: 4pt !important;
    margin-top: 18pt !important;
    break-after: avoid !important;
  }

  /* ── Radar chart ────────────────────────────────────────── */
  .fcpg-radar-wrap {
    text-align: center;
    break-inside: avoid;
  }
  .fcpg-radar-wrap svg {
    width: 360pt !important;
    max-width: 100% !important;
  }

  /* ── Insight cards ──────────────────────────────────────── */
  .fcpg-insight-card {
    break-inside: avoid;
    border: 1pt solid #e0e8f0 !important;
    border-radius: 6pt !important;
    padding: 8pt 10pt !important;
    margin-bottom: 6pt !important;
  }
  .fcpg-insight-dim  { font-size: 9pt !important; color: #1E5078 !important; font-weight: 700 !important; }
  .fcpg-insight-text { font-size: 10pt !important; color: #333 !important; line-height: 1.5 !important; }

  /* ── Roadmap cards ──────────────────────────────────────── */
  .fcpg-road-card {
    break-inside: avoid !important;
    border: 1pt solid #e0e8f0 !important;
    border-radius: 6pt !important;
    padding: 10pt 12pt !important;
    margin-bottom: 8pt !important;
  }
  .fcpg-road-step   { font-size: 8pt !important; }
  .fcpg-road-title  { font-size: 12pt !important; font-weight: 700 !important; color: #1E5078 !important; }
  .fcpg-road-why    { font-size: 10pt !important; color: #444 !important; line-height: 1.55 !important; }
  .fcpg-road-outcome-box { background: #EBF5FF !important; border-radius: 4pt !important; padding: 6pt 8pt !important; }
  .fcpg-road-outcome { font-size: 9.5pt !important; }

  /* ── Peer distribution ──────────────────────────────────── */
  .fcpg-peer-row { break-inside: avoid; }

  /* ── Cost of inaction ───────────────────────────────────── */
  .fcpg-cost-card {
    break-inside: avoid;
    border: 1pt solid #e0e8f0 !important;
    padding: 10pt !important;
  }

  /* ── Letterhead footer ──────────────────────────────────── */
  .fcpg-print-footer {
    display: block !important;
    margin-top: 24pt;
    position: running(footer);
  }
  .fcpg-print-footer-rule {
    height: 2pt;
    background: linear-gradient(90deg, #1E5078 0%, #3C82B4 60%, #EBF5FF 100%);
    border-radius: 1pt;
    margin-bottom: 6pt;
  }
  .fcpg-print-footer-inner {
    display: flex;
    justify-content: space-between;
    font-size: 8pt;
    color: #4C75A0;
    letter-spacing: .02em;
  }
}

/* Share row extra buttons */
.fcpgame-wrap .fcpg-share-btn {
  flex: 1;
  padding: .65rem .5rem;
  border-radius: 8px;
  border: 1px solid rgba(0,0,0,.12);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  text-align: center;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.fcpgame-wrap .fcpg-share-btn:hover { background: #f6f5f0; }
.fcpgame-wrap .fcpg-li-btn { background: #0077b5; color: #fff; border-color: #0077b5; }
.fcpgame-wrap .fcpg-li-btn:hover { background: #005fa3; }
