:root{
  --fun-red:#a51f23;
  --fun-gold:#b58a35;
  --fun-charcoal:#272623;
  --fun-ink:#22201e;
  --fun-muted:#69645f;
  --fun-line:#d8d4ce;
  --fun-soft:#f5f3ef;
  --fun-guess:#edf6e9;
  --fun-guess-line:#c4ddb9;
  --fun-retro:#fff3c9;
  --fun-retro-line:#e5ca77;
  --fun-serif:Georgia,"Times New Roman",serif;
  --fun-sans:Arial,Helvetica,sans-serif;
}
.srOnly{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.funPage{color:var(--fun-ink)}
body.page-just-for-fun,
body.page-just-for-fun .seflaInteriorPage{background:#f3f5f3!important}

.funIntroCompact{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;padding:2px 0 23px;border-bottom:4px solid var(--fun-charcoal)}
.funIntroCompact>span{color:var(--fun-red);font:900 10px/1 var(--fun-sans);letter-spacing:.13em}
.funIntroCompact h1{margin:0;font:600 clamp(29px,3.8vw,43px)/1 var(--fun-serif);letter-spacing:-.035em}
.funIntroCompact p{flex-basis:100%;max-width:850px;margin:3px 0 0;color:var(--fun-muted);font:400 15px/1.55 var(--fun-sans)}

.funSection{position:relative;margin-top:28px;padding:27px;border:1px solid;border-radius:20px;overflow:hidden}
.funSection::before,.funSection::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.funSection::before{width:120px;height:120px;right:-56px;top:-58px;opacity:.24}
.funSection::after{width:38px;height:38px;right:54px;top:25px;opacity:.22}
.guessSection{background:var(--fun-guess);border-color:var(--fun-guess-line)}
.guessSection::before,.guessSection::after{background:#88b477}
.retroSection{background:var(--fun-retro);border-color:var(--fun-retro-line)}
.retroSection::before,.retroSection::after{background:#e0b847}
.funGameHead{position:relative;z-index:1;display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:18px}
.funGameHead>div:first-child{max-width:760px}
.funSectionEyebrow{display:block;margin-bottom:6px;color:var(--fun-red);font:900 9px/1 var(--fun-sans);letter-spacing:.12em}
.guessSection .funSectionEyebrow{color:#557b4b}\n.retroSection .funSectionEyebrow{color:#8a6516}
.funGameHead h2{margin:0;font:600 clamp(29px,3.4vw,40px)/1 var(--fun-serif);letter-spacing:-.03em}
.funGameHead p{max-width:720px;margin:9px 0 0;color:#5f5953;font:400 15px/1.55 var(--fun-sans)}
.funCriteria{flex:none;color:#756b59;font:800 9px/1.35 var(--fun-sans);letter-spacing:.05em;text-transform:uppercase}

.guessGame,.retroBox{position:relative;z-index:1;border:1px solid rgba(59,53,47,.16);border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(53,45,35,.07)}
.gameContent,.retroContent{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(340px,.97fr);min-height:535px}
.gamePhotoWrap,.retroPhotoWrap{position:relative;overflow:hidden;min-height:535px;background:#e9e6e1}
.gamePhoto,.retroPhoto{width:100%;height:100%;min-height:535px;object-fit:cover}
.gamePhotoLabel,.retroStamp{position:absolute;left:14px;top:14px;z-index:2;padding:7px 9px;border-radius:4px;background:rgba(39,38,35,.92);color:#fff;font:900 8px/1 var(--fun-sans);letter-spacing:.09em}
.retroStamp{background:rgba(165,31,35,.94);transform:rotate(-2deg)}
.photoStatus{position:absolute;inset:auto 14px 14px 14px;color:#716b65;font:700 9px/1.3 var(--fun-sans)}
.gameInfo,.retroInfo{padding:26px 28px;display:flex;flex-direction:column;justify-content:center;background:rgba(255,255,255,.98)}
.retroInfo{background:#fffdf7}
.tinyStatus{min-height:13px;margin-bottom:5px;color:#9a938b;font:700 8px/1.3 var(--fun-sans);text-transform:uppercase;letter-spacing:.05em}
.gameLocation,.retroDate,.retroLocation{color:var(--fun-red);font:900 9px/1.25 var(--fun-sans);letter-spacing:.08em;text-transform:uppercase}
.retroLocation{margin-top:11px;color:#7a716a}
.gameAddress,.retroInfo h3{margin:6px 0 0;font:600 22px/1.12 var(--fun-serif)}

.gameFacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:14px}
.gameFacts span{min-width:0;padding:8px 9px;border:1px solid #e5e1db;border-radius:6px;background:var(--fun-soft)}
.gameFacts small{display:block;color:#8b837b;font:800 7px/1.15 var(--fun-sans);letter-spacing:.04em;text-transform:uppercase}
.gameFacts strong{display:block;margin-top:3px;color:#514c47;font:800 10px/1.25 var(--fun-sans);overflow-wrap:anywhere}
.gameRemarks{margin:13px 0 0;padding:11px 12px;border-left:3px solid var(--fun-gold);background:#faf8f3;color:#68615b;font:400 11px/1.5 var(--fun-sans)}
.retroRemarks{border-left-color:var(--fun-red);background:#fff5f3}

.gamePrompt{margin-top:18px;padding-top:15px;border-top:1px solid var(--fun-line)}
.gamePrompt span{display:block;color:#7b746d;font:900 8px/1.2 var(--fun-sans);letter-spacing:.08em}
.gamePrompt strong{display:block;margin-top:4px;font:600 23px/1.05 var(--fun-serif)}
.guessForm{display:flex;gap:8px;align-items:stretch;margin-top:13px}
.guessInputWrap{flex:1;min-width:0;display:flex;align-items:center;border:2px solid var(--fun-charcoal);border-radius:6px;background:#fff}
.guessInputWrap span{padding-left:11px;font:800 16px/1 var(--fun-sans)}
.guessInputWrap input{width:100%;min-width:0;border:0;outline:0;padding:11px 11px 11px 4px;background:transparent;font:800 16px/1 var(--fun-sans)}
.funButton{border:0;border-radius:7px;cursor:pointer;padding:12px 15px;background:var(--fun-red);color:#fff;font:900 8px/1 var(--fun-sans);letter-spacing:.07em;text-transform:uppercase}
.funButton:hover{background:#86191d}
.funButton:disabled{opacity:.55;cursor:wait}
.funButtonSecondary{align-self:flex-start;margin-top:12px;background:var(--fun-charcoal)}
.guessError{margin-top:10px;padding:9px 10px;border-left:3px solid var(--fun-red);background:#fff3f3;color:#7a2427;font:700 10px/1.4 var(--fun-sans)}
.guessResult{margin-top:14px;padding-top:14px;border-top:3px solid var(--fun-gold)}
.resultScore{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;border:1px solid var(--fun-line);background:var(--fun-line)}
.resultScore>div{padding:9px;background:#fff}
.resultScore .roundPoints{background:#f6f1e4}
.resultScore span{display:block;color:#817a72;font:800 7px/1.2 var(--fun-sans);text-transform:uppercase}
.resultScore strong{display:block;margin-top:4px;font:800 14px/1.05 var(--fun-sans)}
.resultScore .roundPoints strong{color:#8b681f}
.playerScoreboard{margin-top:13px;border:1px solid #d9d2c7;background:#f7f5f1}
.scoreboardTitle{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #ddd6cc;background:#292724;color:#fff}
.scoreboardTitle span{font:900 8px/1 var(--fun-sans);letter-spacing:.1em}
.scoreboardTitle strong{font:800 19px/1 var(--fun-sans);color:#e2bf69}
.scoreboardStats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.scoreboardStats>div{padding:9px 8px;border-right:1px solid #ddd6cc;text-align:center}
.scoreboardStats>div:last-child{border-right:0}
.scoreboardStats span{display:block;min-height:20px;color:#817a72;font:800 7px/1.25 var(--fun-sans);text-transform:uppercase}
.scoreboardStats strong{display:block;margin-top:3px;color:#393531;font:800 15px/1 var(--fun-sans)}
.resultReaction{margin-top:12px}.resultReaction h3{margin:0;font:600 25px/1 var(--fun-serif)}
.resultReaction p{margin:5px 0 0;color:var(--fun-muted);font:400 12px/1.45 var(--fun-sans)}
.listingAttribution{margin-top:9px;color:#847d76;font:400 8px/1.4 var(--fun-sans)}
.funCredit{position:relative;z-index:1;margin-top:12px;color:#7c756e;text-align:right;font:600 10px/1.4 var(--fun-sans)}

.retroPriceLabel{margin-top:15px;color:#7d766f;font:900 7px/1.2 var(--fun-sans);letter-spacing:.07em}
.retroPrice{margin-top:3px;font:900 clamp(33px,4.2vw,48px)/.94 var(--fun-sans);letter-spacing:-.05em}
.retroAside{margin:14px 0 0;color:var(--fun-gold);font:600 17px/1.1 var(--fun-serif);font-style:italic}
.retroInfo .funButton{align-self:flex-start;margin-top:15px}

.funWileySignoff{display:flex;align-items:center;gap:17px;max-width:520px;margin:29px 0 5px auto;padding:13px 16px;border-top:1px solid var(--fun-line);border-bottom:1px solid var(--fun-line)}
.funWileySignoff img{width:76px;height:76px;border-radius:50%;object-fit:cover;object-position:center 20%;border:3px solid #fff;box-shadow:0 0 0 1px #d5d0c8}
.funWileySignoff span{display:block;color:var(--fun-red);font:900 8px/1 var(--fun-sans);letter-spacing:.1em}
.funWileySignoff strong{display:block;margin-top:5px;font:600 18px/1.05 var(--fun-serif)}
.funWileySignoff p{margin:3px 0 0;color:var(--fun-muted);font:400 11px/1.35 var(--fun-sans)}


@media(min-width:981px){
  .guessGame .gameContent{height:535px;min-height:535px}
  .guessGame .gamePhotoWrap,.guessGame .gamePhoto{height:535px;min-height:0}
  .guessGame .gameInfo{height:535px;min-height:0;overflow-y:auto;overscroll-behavior:contain}
}
@media(max-width:980px){
  .gameContent,.retroContent{grid-template-columns:1fr;min-height:0}
  .gamePhotoWrap,.retroPhotoWrap,.gamePhoto,.retroPhoto{height:390px;min-height:390px}
  .gameInfo,.retroInfo{justify-content:flex-start}
}
@media(max-width:760px){
  .funIntroCompact h1{font-size:31px}
  .funIntroCompact p{font-size:14px}
  .funSection{padding:20px 15px;border-radius:16px}
  .funGameHead{display:block}
  .funCriteria{margin-top:10px}
  .gamePhotoWrap,.retroPhotoWrap,.gamePhoto,.retroPhoto{height:290px;min-height:290px}
  .guessForm{flex-direction:column}
  .resultScore{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scoreboardStats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .scoreboardStats>div{border-right:1px solid #ddd6cc;border-bottom:1px solid #ddd6cc}
  .scoreboardStats>div:nth-child(2n){border-right:0}
  .scoreboardStats>div:last-child{grid-column:1/-1;border-right:0;border-bottom:0}
  .gameInfo,.retroInfo{padding:20px 18px}
  .gameFacts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .funCredit{text-align:left}
  .funWileySignoff{margin-left:0}
}
@media(max-width:460px){
  .gameFacts{grid-template-columns:1fr 1fr}
  .funWileySignoff{align-items:flex-start}
  .funWileySignoff img{width:64px;height:64px}
}


/* ---------------------------------------------------------
   Scoreboard v2
   Permanent score below the game, plus compact point legend.
   --------------------------------------------------------- */

.gameWarning{
  position:relative;
  z-index:1;
  margin:0 0 8px;
  color:var(--fun-red);
  text-align:center;
  font:900 10px/1.25 var(--fun-sans);
  letter-spacing:.06em;
  text-transform:uppercase;
}

.playerScoreboardPersistent{
  position:relative;
  z-index:1;
  margin:14px 0 0;
  border-radius:9px;
  overflow:hidden;
  box-shadow:0 5px 14px rgba(53,45,35,.05);
}

.playerScoreboardPersistent .scoreboardTitle{
  padding:11px 13px;
}

.playerScoreboardPersistent .scoreboardTitle span{
  font-size:10px;
  letter-spacing:.04em;
  text-transform:none;
}

.pointsLegend{
  display:grid;
  grid-template-columns:auto repeat(5,minmax(0,1fr));
  align-items:stretch;
  border-top:1px solid #ddd6cc;
  background:#fff;
}

.pointsLegendLabel{
  display:flex;
  align-items:center;
  padding:8px 10px;
  background:#eee9e1;
  color:#746c64;
  font:900 7px/1 var(--fun-sans);
  letter-spacing:.09em;
}

.pointsLegend>div{
  padding:8px 7px;
  border-left:1px solid #e4ddd3;
  text-align:center;
}

.pointsLegend strong{
  display:block;
  color:#6d665f;
  font:800 7px/1.2 var(--fun-sans);
  text-transform:uppercase;
}

.pointsLegend div span{
  display:block;
  margin-top:3px;
  color:#8b681f;
  font:900 11px/1 var(--fun-sans);
}

@media(max-width:760px){
  .gameWarning{
    text-align:left;
    font-size:9px;
  }

  .pointsLegend{
    grid-template-columns:1fr 1fr;
  }

  .pointsLegendLabel{
    grid-column:1/-1;
    justify-content:center;
  }

  .pointsLegend>div{
    border-left:0;
    border-top:1px solid #e4ddd3;
  }

  .pointsLegend>div:nth-of-type(even){
    border-left:1px solid #e4ddd3;
  }

  .pointsLegend>div:last-child{
    grid-column:1/-1;
    border-left:0;
  }
}


/* =========================================================
   SAFE CLEANUP PASS
   Built on the exact known-good scorecard version.
   No IDX endpoint changes.
   ========================================================= */

/* Remove the redundant pre-guess prompt while keeping the form intact. */
.gamePrompt{
  display:none !important;
}

/* Keep only the main tongue-in-cheek result headline. */
.resultReaction p{
  display:none !important;
}

/* Give the working game enough room without an internal scroll frame. */
@media(min-width:901px){
  .guessGame{
    min-height:640px;
  }

  .guessGame .gameContent{
    height:640px;
    min-height:640px;
  }

  .guessGame .gamePhotoWrap,
  .guessGame .gamePhoto{
    height:640px;
    min-height:0;
  }

  .guessGame .gameInfo{
    height:640px;
    min-height:0;
    overflow:visible;
    overscroll-behavior:auto;
    padding:30px 32px;
    justify-content:center;
  }
}

/* Five result values: 3 across, then 2 across.
   Existing DOM order is:
   1 You guessed
   2 It sold for
   3 You were off by
   4 Percent off
   5 Round points
*/
.resultScore{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:1px;
}

.resultScore > div{
  min-width:0;
  padding:11px 10px;
  text-align:center;
}

.resultScore > div:nth-child(1){
  order:1;
  grid-column:span 2;
}

.resultScore > div:nth-child(2){
  order:2;
  grid-column:span 2;
}

.resultScore > div:nth-child(4){
  order:3;
  grid-column:span 2;
}

.resultScore > div:nth-child(3){
  order:4;
  grid-column:span 3;
}

.resultScore > div:nth-child(5){
  order:5;
  grid-column:span 3;
}

.resultScore span{
  font-size:8px;
  line-height:1.15;
}

.resultScore strong{
  margin-top:5px;
  font-size:15px;
  line-height:1.08;
  overflow-wrap:normal;
  word-break:normal;
}

.resultReaction{
  margin-top:13px;
}

.resultReaction h3{
  font-size:25px;
  line-height:1.04;
}

@media(max-width:760px){
  .resultScore{
    grid-template-columns:1fr 1fr;
  }

  .resultScore > div:nth-child(1),
  .resultScore > div:nth-child(2),
  .resultScore > div:nth-child(3),
  .resultScore > div:nth-child(4){
    grid-column:span 1;
  }

  .resultScore > div:nth-child(5){
    grid-column:1/-1;
  }
}


/* =========================================================
   10 GAME CHALLENGE
   ========================================================= */

.challengeBest{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:9px 12px;
  border-top:1px solid #ddd6cc;
  background:#fcfbf8;
}

.challengeBest span{
  color:#817a72;
  font:800 8px/1.2 var(--fun-sans);
  letter-spacing:.05em;
  text-transform:uppercase;
}

.challengeBest strong{
  color:#8b681f;
  font:900 14px/1 var(--fun-sans);
}

.challengeComplete{
  position:relative;
  z-index:1;
  margin-top:12px;
  padding:20px 18px;
  border:1px solid #d8d1c7;
  border-top:4px solid var(--fun-gold,#b58a35);
  background:#fff;
  text-align:center;
}

.challengeCompleteEyebrow{
  color:var(--fun-red,#a51f23);
  font:900 8px/1.2 var(--fun-sans);
  letter-spacing:.1em;
}

.challengeComplete h3{
  margin:7px 0 0;
  font:600 29px/1 var(--fun-serif);
  letter-spacing:-.025em;
}

.challengeFinalScore{
  margin-top:9px;
  color:#8b681f;
  font:900 24px/1 var(--fun-sans);
}

.challengeComplete p{
  margin:8px 0 0;
  color:var(--fun-muted,#69645f);
  font:400 12px/1.45 var(--fun-sans);
}

.challengeRestart{
  margin-top:13px;
  min-width:150px;
}

@media(max-width:760px){
  .challengeBest{
    align-items:flex-start;
    flex-direction:column;
    gap:4px;
  }
}


/* =========================================================
   COMPACT RATINGS LEGEND
   Lives inside the rounded scorecard.
   ========================================================= */

.ratingsLegend{
  display:grid;
  grid-template-columns:auto repeat(5,minmax(0,1fr));
  border-top:1px solid #ddd6cc;
  background:#faf8f4;
  border-radius:0 0 9px 9px;
  overflow:hidden;
}

.ratingsLegendLabel{
  display:flex;
  align-items:center;
  padding:7px 9px;
  background:#eee9e1;
  color:#746c64;
  font:900 7px/1 var(--fun-sans);
  letter-spacing:.09em;
}

.ratingsLegend>div{
  padding:7px 6px;
  border-left:1px solid #e4ddd3;
  text-align:center;
}

.ratingsLegend strong{
  display:block;
  color:#6d665f;
  font:800 7px/1.2 var(--fun-sans);
}

.ratingsLegend div span{
  display:block;
  margin-top:3px;
  color:#817a72;
  font:700 7px/1.25 var(--fun-sans);
}

@media(max-width:760px){
  .ratingsLegend{
    grid-template-columns:1fr 1fr;
  }

  .ratingsLegendLabel{
    grid-column:1/-1;
    justify-content:center;
  }

  .ratingsLegend>div{
    border-top:1px solid #e4ddd3;
  }

  .ratingsLegend>div:nth-of-type(even){
    border-left:1px solid #e4ddd3;
  }

  .ratingsLegend>div:last-child{
    grid-column:1/-1;
    border-left:0;
  }
}
