/* Mansion Millions estate board (2026-10-15): illustrated garden-estate art board with a glowing gold path,
   3D gold dice, camera follow, tile bursts and readable landmark cards. Presentation only. */
.mm .mm-boardwrap{overflow:hidden;padding:4px 10px 14px;border-radius:28px}
.mm .mm-board{background:#5b8f3a url(/jasons-place/play/mansion-millions/media/estate-board.webp) center/cover no-repeat!important;
  border:4px solid #ffe08a!important;box-shadow:0 0 0 3px #b8781a,0 10px 0 #8a5300,0 20px 40px rgba(10,40,20,.35)!important;
  transform-origin:50% 50%;transition:transform .55s cubic-bezier(.2,.8,.2,1),transform-origin .28s linear;will-change:transform;gap:4px!important}
.mm .mm-board.cam{transform:scale(1.45)}
.mm .mm-cell{background:linear-gradient(160deg,rgba(255,246,196,.93),rgba(255,207,72,.9) 55%,rgba(226,150,20,.92))!important;
  color:#3d2200!important;border-radius:10px!important;box-shadow:0 0 0 1.5px #fff6c8 inset,0 3px 0 rgba(140,80,0,.85),0 0 12px rgba(255,214,90,.75)!important;text-shadow:0 1px 0 rgba(255,255,255,.6)}
.mm .mm-cell .band{height:14%!important;opacity:.85}
.mm .mm-cell .nm{color:#3d2200!important}
.mm .mm-cell .val{color:#7a1f00!important}
.mm .mm-cell.corner .nm{color:#5a1800!important}
.mm .mm-cell.special{background:radial-gradient(circle at 50% 30%,#fffbe0,#ffd25a 55%,#e8a01e)!important}
.mm .mm-cell.step{animation:mmStep .5s ease-out}
@keyframes mmStep{0%{box-shadow:0 0 0 3px #fff inset,0 0 26px 8px #fff3a0}100%{}}
.mm .mm-cell.hit{animation:mmBurst 1.1s ease-out!important}
@keyframes mmBurst{0%{transform:scale(1);filter:brightness(1.6)}25%{transform:scale(1.18);box-shadow:0 0 0 3px #fff inset,0 0 40px 16px #ffe27a}100%{transform:scale(1)}}
.mm-ring{position:absolute;z-index:5;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;border:4px solid #fff3a0;box-shadow:0 0 18px #ffd34a;pointer-events:none;animation:mmRing .9s ease-out forwards}
@keyframes mmRing{to{transform:scale(7);opacity:0;border-width:1px}}
.mm-spark{position:absolute;z-index:6;width:8px;height:8px;margin:-4px;pointer-events:none;background:radial-gradient(circle,#fff 0 30%,#ffd34a 60%,transparent 70%);border-radius:50%;animation:mmSpark .9s ease-out forwards}
@keyframes mmSpark{to{transform:translate(var(--dx),var(--dy)) scale(.2);opacity:0}}
.mm .mm-center{background:transparent!important;box-shadow:none!important}
.mm .mm-center-art{opacity:0!important}
.mm .mm-center::after{background:radial-gradient(ellipse at 50% 85%,rgba(20,30,10,.45),transparent 60%)!important}
.mm .mm-next{background:rgba(255,250,230,.94)!important;color:#3d2200!important;border:2px solid #ffd34a;border-radius:999px;padding:4px 10px;font-weight:800}
.mm #mm-timer{color:#fff!important;text-shadow:0 1px 3px #000,0 0 8px #000}
.mm .mm-token{width:52px!important;height:52px!important;filter:drop-shadow(0 0 8px #ffe27a) drop-shadow(0 8px 6px rgba(0,0,0,.5))!important;transition:transform .26s cubic-bezier(.3,.7,.4,1)!important}
.mm .mm-token.hop{animation:mmHop2 .28s ease-out!important}
@keyframes mmHop2{0%{margin-top:0}45%{margin-top:-26px;scale:1.12}80%{margin-top:2px;scale:1.05 .92}100%{margin-top:0}}
.mm .mm-dice{perspective:420px}
.mm .mm-die{position:relative;background:radial-gradient(circle at 30% 22%,#fffbe0 0,#ffe27a 22%,#f2b52a 55%,#b8700c 100%)!important;
  border:2px solid #fff3b0;border-radius:16px!important;transform-style:preserve-3d;
  box-shadow:0 6px 0 #8a5300,0 10px 18px rgba(0,0,0,.35),inset 0 -4px 6px rgba(120,60,0,.45),inset 0 3px 3px rgba(255,255,255,.8)!important}
.mm .mm-die i{background:radial-gradient(circle at 35% 30%,#ff8fb2,#c0124a 55%,#5e0626)!important;box-shadow:0 0 4px rgba(255,60,120,.6),inset 0 1px 1px rgba(255,255,255,.6)}
.mm .mm-die.spin{animation:mmTumble 1.15s cubic-bezier(.2,.7,.3,1) both!important}
.mm #die-b.spin{animation-delay:.06s!important}
@keyframes mmTumble{
 0%{transform:translate3d(-60px,-90px,0) rotateX(0) rotateY(0) rotateZ(0) scale(.7);filter:blur(3px)}
 30%{transform:translate3d(-10px,0,0) rotateX(540deg) rotateY(300deg) rotateZ(90deg) scale(1.1);filter:blur(2px)}
 48%{transform:translate3d(6px,-38px,0) rotateX(760deg) rotateY(480deg) rotateZ(140deg);filter:blur(1px)}
 66%{transform:translate3d(10px,0,0) rotateX(900deg) rotateY(660deg) rotateZ(180deg) scale(1.04);filter:blur(0)}
 78%{transform:translate3d(8px,-12px,0) rotateX(1060deg) rotateY(710deg) rotateZ(180deg)}
 90%{transform:translate3d(4px,0,0) rotateX(1080deg) rotateY(720deg) rotateZ(180deg) scale(1.02,.96)}
 100%{transform:none;filter:none}}
.mm .mm-die.landed{animation:mmGlow 1s ease-out!important}
@keyframes mmGlow{0%{box-shadow:0 0 0 4px #fff,0 0 40px 18px #ffe27a}100%{}}
#mm-cine{position:fixed;inset:0;z-index:2147482500;background:#0b1a10;display:grid;place-items:center;overflow:hidden}
#mm-cine video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#mm-cine .sk{position:absolute;right:16px;top:max(18px,env(safe-area-inset-top));z-index:2;min-height:44px;padding:10px 18px;border-radius:999px;border:2px solid #ffe08a;background:rgba(40,24,0,.7);color:#fff;font:800 15px system-ui}
#mm-cine .res{position:relative;z-index:2;font:900 clamp(34px,11vw,72px)/1 system-ui;color:#fff7c8;text-shadow:0 0 24px #ffb800,0 4px 0 #8a5300;opacity:0;transform:scale(.5);transition:.35s cubic-bezier(.3,1.6,.5,1)}
#mm-cine.show .res{opacity:1;transform:none}
#mm-cine .hint{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:0;right:0;z-index:2;text-align:center;color:#fff;font:700 14px system-ui;text-shadow:0 1px 4px #000}
.mm .mm-lm{background:linear-gradient(160deg,#fffdf4,#fff1c9)!important;border:2px solid #ffd34a;box-shadow:0 5px 0 #e0a52a,0 10px 20px rgba(120,80,0,.15)!important}
.mm .mm-lm b{color:#2a1a00!important}
.mm .mm-lm small{color:#5a4320!important}
.mm .mm-lm .ok{color:#1f7a2e!important}
.mm .mm-lm .stg i{background:rgba(120,80,0,.18)!important}
.mm .mm-lm .stg i.on{background:linear-gradient(90deg,#ffd34a,#f08a00)!important}
.mm .mm-landed{color:#1b2a4a!important;background:rgba(255,255,255,.92);border-radius:999px;padding:6px 14px;width:fit-content;max-width:92%;margin:10px auto 0;font-weight:800;text-shadow:none!important}
@media (prefers-reduced-motion:reduce){.mm .mm-board{transition:none}.mm .mm-board.cam{transform:none}.mm .mm-die.spin,.mm .mm-die.landed,.mm .mm-cell.step,.mm .mm-cell.hit{animation:none!important}}
/* ===== Luxury night-estate restyle (2026-10-15, Jason approved): black lacquer, brushed gold, ivory type ===== */
body.jpx.mm{background:radial-gradient(120% 70% at 50% 0%,#2a2216 0%,#0d0b08 55%,#050404 100%) fixed!important;color:#efe6d2!important;font-family:"SF Pro Text",-apple-system,system-ui,sans-serif!important}
.mm .jpx-bar{background:rgba(10,8,6,.86)!important;backdrop-filter:blur(10px);border-bottom:1px solid rgba(212,175,95,.45)!important}
.mm .jpx-brand b{color:#e8cf8f!important;font-family:"Didot","Bodoni 72",Georgia,serif!important;letter-spacing:.04em}
.mm .jpx-brand small{color:#a89a7c!important}
.mm h1,.mm h2{font-family:"Didot","Bodoni 72","Playfair Display",Georgia,serif!important;font-weight:500!important;letter-spacing:.02em}
.mm h1{color:#f3e4bf!important;text-shadow:0 2px 18px rgba(212,175,95,.35)!important}
.mm .jpx-eyebrow{background:none!important;box-shadow:none!important;color:#c9a560!important;letter-spacing:.32em!important;font-size:11px!important;padding:0!important;border-bottom:1px solid rgba(201,165,96,.5);border-radius:0!important}
.mm .mm-chip{background:linear-gradient(180deg,#1d1810,#0f0c08)!important;color:#f3e4bf!important;border:1px solid #b8914a!important;box-shadow:inset 0 1px 0 rgba(255,230,170,.25),0 4px 14px rgba(0,0,0,.6)!important}
.mm .mm-lvl{background:linear-gradient(180deg,#1d1810,#0f0c08)!important;border:1px solid #b8914a!important;color:#f3e4bf!important}
.mm .mm-lvl *{color:#e8cf8f!important}
.mm .mm-board{border:2px solid #d4af5f!important;border-radius:20px!important;box-shadow:0 0 0 6px #1a140c,0 0 0 7px #8a6a2c,0 30px 80px rgba(0,0,0,.8),0 0 60px rgba(212,175,95,.18)!important}
.mm .mm-board::after{content:"";position:absolute;inset:0;border-radius:18px;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(0,0,0,.45));z-index:0}
.mm .mm-cell{z-index:1;background:linear-gradient(155deg,rgba(255,244,205,.95),rgba(226,186,98,.93) 45%,rgba(160,112,36,.95))!important;border-radius:6px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),inset 0 -2px 3px rgba(80,50,0,.45),0 2px 6px rgba(0,0,0,.45),0 0 10px rgba(255,210,120,.35)!important;color:#2a1b05!important}
.mm .mm-cell .band{opacity:.55!important;height:10%!important}
.mm .mm-cell .nm{font-family:Georgia,serif!important;font-weight:700!important;color:#2a1b05!important;letter-spacing:0}
.mm .mm-cell .val{color:#5a1a00!important;font-weight:900}
.mm .mm-cell.vault{background:linear-gradient(155deg,#2c2c2e,#0e0e10)!important;box-shadow:inset 0 0 0 1.5px #d4af5f,0 0 18px rgba(212,175,95,.7)!important}
.mm .mm-cell.vault .nm,.mm .mm-cell.vault .val{color:#f3d98f!important;text-shadow:none}
.mm .mm-cell.vault .ic{background:radial-gradient(circle at 50% 50%,#1a1a1a 0 28%,#d4af5f 30% 38%,#3a3a3c 40%)!important;box-shadow:0 0 10px #d4af5f}
.mm .mm-cell.dock{background:linear-gradient(155deg,#e9f4ff,#8fc3e6 50%,#3c78a8)!important}
.mm .mm-cell.dock .nm,.mm .mm-cell.dock .val{color:#08243d!important}
.mm .mm-cell.dock .ic{background:radial-gradient(circle at 50% 60%,#fff 0 12%,#5aa7d8 14%,#1d4f7a 70%)!important}
.mm .mm-next{background:rgba(10,8,6,.78)!important;color:#f3e4bf!important;border:1px solid #b8914a!important;font-family:Georgia,serif!important;font-weight:600!important;letter-spacing:.02em}
.mm .mm-roll{background:linear-gradient(180deg,#f7e3a8 0%,#d8b45c 38%,#a87a26 70%,#d8b45c 100%)!important;color:#1b1206!important;border:1px solid #fff2c4!important;
  box-shadow:0 0 0 3px #1a140c,0 0 0 4px #b8914a,0 12px 30px rgba(0,0,0,.6),0 0 30px rgba(230,190,100,.35)!important;font-family:"Didot",Georgia,serif!important;letter-spacing:.18em;animation:mmBreath 3s ease-in-out infinite!important}
@keyframes mmBreath{50%{box-shadow:0 0 0 3px #1a140c,0 0 0 4px #e8cf8f,0 12px 30px rgba(0,0,0,.6),0 0 46px rgba(240,200,110,.6)}}
.mm .mm-die{background:linear-gradient(145deg,#fff1c2 0%,#e2bd68 30%,#a77722 65%,#e9c97a 100%)!important;border:1px solid #fff4cc!important;border-radius:12px!important}
.mm .mm-die i{background:radial-gradient(circle at 35% 30%,#3c3c3c,#0a0a0a 70%)!important;box-shadow:inset 0 1px 1px rgba(255,255,255,.35),0 0 2px rgba(0,0,0,.6)!important}
.mm .mm-landed{background:rgba(10,8,6,.8)!important;color:#f3e4bf!important;border:1px solid rgba(184,145,74,.7);font-family:Georgia,serif}
.mm .mm-panel,.mm .mm-card,.mm .mm-sheet-in{background:linear-gradient(180deg,#17130d,#0d0b08)!important;color:#efe6d2!important;border:1px solid rgba(184,145,74,.55)!important;border-radius:16px!important;box-shadow:0 20px 50px rgba(0,0,0,.6)!important}
.mm .mm-panel p,.mm .mm-panel li,.mm .mm-card p,.mm .mm-sheet-in p{color:#cfc4ac!important}
.mm .mm-panel h2,.mm .mm-panel h3,.mm .mm-card b,.mm .mm-sheet-in h2{color:#f3e4bf!important}
.mm main section h2,.mm .mm-head h2,.mm .mm-head p{color:#f3e4bf!important}
.mm .mm-head p{color:#cfc4ac!important}
.mm .jpx-btn,.mm .jpx-btn.teal{background:linear-gradient(180deg,#e9cf8a,#b88b37)!important;color:#1b1206!important;border:1px solid #fff0c0!important;border-radius:10px!important;box-shadow:0 6px 16px rgba(0,0,0,.5)!important;letter-spacing:.04em}
.mm .jpx-btn.alt{background:transparent!important;color:#e8cf8f!important;border:1px solid #b8914a!important;box-shadow:none!important}
.mm .mm-lm{background:linear-gradient(180deg,#1b160e,#0f0c08)!important;border:1px solid rgba(184,145,74,.6)!important;box-shadow:0 14px 34px rgba(0,0,0,.55)!important}
.mm .mm-lm b{color:#f6ead0!important;font-family:Georgia,serif!important;font-weight:600!important}
.mm .mm-lm small{color:#bfb39a!important}
.mm .mm-lm .ok{color:#e8cf8f!important}
.mm .mm-lm .stg i{background:rgba(232,207,143,.18)!important}
.mm .mm-lm .stg i.on{background:linear-gradient(90deg,#f3d98f,#b88b37)!important}
.mm .mm-tk{background:linear-gradient(180deg,#1b160e,#0b0907)!important;border:1px solid rgba(184,145,74,.5)!important;color:#f3e4bf!important}
.mm .mm-tk span{color:#f3e4bf!important}.mm .mm-tk em{color:#d4af5f!important}
.mm .mm-streak li{background:#17130d!important;color:#efe6d2!important;border:1px solid rgba(184,145,74,.35)}
.mm .mm-streak li b{color:#f3d98f!important}
#mm-cine .cap{position:absolute;bottom:max(60px,env(safe-area-inset-bottom));left:0;right:0;z-index:2;text-align:center;font:500 28px/1.2 "Didot",Georgia,serif;color:#f3e4bf;text-shadow:0 2px 14px #000}
#mm-cine .sk{background:rgba(10,8,6,.7)!important;border:1px solid #b8914a!important;font-family:Georgia,serif!important}
#mm-cine .res{font-family:"Didot",Georgia,serif!important;font-weight:500!important;color:#f7e7bd!important;text-shadow:0 0 30px rgba(230,180,80,.9),0 2px 0 #3a2a0c!important}
/* win: hat burst + bank ring-up */
#mm-win{position:fixed;inset:0;z-index:2147482600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(80% 60% at 50% 40%,#2b2213,#060504 75%);color:#f3e4bf;text-align:center;overflow:hidden;animation:mmIn .3s ease-out}
#mm-win.out{opacity:0;transition:opacity .25s}
@keyframes mmIn{from{opacity:0}}
#mm-win video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
#mm-win .glow{position:absolute;left:50%;top:40%;width:520px;height:520px;margin:-260px;border-radius:50%;background:conic-gradient(from 0deg,transparent,rgba(240,200,110,.22),transparent 20%,rgba(240,200,110,.18),transparent 45%,rgba(240,200,110,.2),transparent 70%);animation:mmSpinG 9s linear infinite}
@keyframes mmSpinG{to{transform:rotate(360deg)}}
#mm-win .stage{position:relative;width:180px;height:160px}
#mm-win .hat{position:absolute;left:50%;bottom:0;width:150px;margin-left:-75px;filter:drop-shadow(0 0 24px rgba(240,200,110,.7)) drop-shadow(0 14px 18px #000);animation:mmHat .7s cubic-bezier(.3,1.6,.5,1)}
@keyframes mmHat{0%{transform:scale(.6) translateY(30px)}60%{transform:scale(1.08) rotate(-4deg)}100%{transform:none}}
#mm-win .burst{position:absolute;left:50%;top:40%;width:0;height:0;z-index:2}
#mm-win .burst i{position:absolute;opacity:0;animation:mmFly 1.6s cubic-bezier(.15,.7,.35,1) forwards}
#mm-win .coin{width:26px;height:26px;margin:-13px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff6cf,#f0c95a 40%,#a87a22 80%);box-shadow:inset 0 0 0 2px #8a6216,0 2px 6px rgba(0,0,0,.5)}
#mm-win .bill{width:44px;height:22px;margin:-11px -22px;border-radius:3px;background:linear-gradient(90deg,#5f8f5a,#9cc795 50%,#5f8f5a);box-shadow:inset 0 0 0 2px #2f5a2b,0 3px 6px rgba(0,0,0,.45)}
#mm-win .bill::after{content:"$";display:block;font:900 14px/22px Georgia,serif;color:#1d3d1a;text-align:center}
@keyframes mmFly{0%{opacity:1;transform:translate(0,0) rotate(0) scale(.4)}55%{opacity:1;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(1)}100%{opacity:0;transform:translate(calc(var(--x)*1.1),calc(var(--y) + 380px)) rotate(calc(var(--r)*2)) scale(.9)}}
#mm-win .k{position:relative;margin:6px 0 0;font:500 12px system-ui;letter-spacing:.34em;text-transform:uppercase;color:#c9a560}
#mm-win .amt{position:relative;margin:0;font:500 clamp(40px,12vw,76px)/1 "Didot","Bodoni 72",Georgia,serif;color:#f7e7bd;text-shadow:0 0 30px rgba(230,180,80,.7);font-variant-numeric:tabular-nums}
#mm-win .reg{position:relative;display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:12px 26px;border:1px solid #b8914a;border-radius:10px;background:linear-gradient(180deg,#14100a,#070605);box-shadow:inset 0 0 18px rgba(0,0,0,.8),0 0 20px rgba(212,175,95,.2)}
#mm-win .reg span{font:600 10px system-ui;letter-spacing:.3em;text-transform:uppercase;color:#a89a7c}
#mm-win .reg b{font:600 30px/1 ui-monospace,"SF Mono",Menlo,monospace;color:#9effa8;text-shadow:0 0 10px rgba(120,255,140,.6);font-variant-numeric:tabular-nums}
#mm-win.done .reg{animation:mmDing .5s}
@keyframes mmDing{40%{transform:scale(1.08);box-shadow:0 0 40px rgba(240,200,110,.7)}}
#mm-win .go{position:relative;margin-top:16px;min-height:46px;padding:12px 34px;border-radius:10px;border:1px solid #fff0c0;background:linear-gradient(180deg,#e9cf8a,#b88b37);color:#1b1206;font:600 15px Georgia,serif;letter-spacing:.08em}
