/* UI v2 sample (?ui=2) */
body.ui2{--lab-height:0px}
body.ui2 .v2-bar{display:none!important}
body.ui2 .topbar{height:58px!important;flex:0 0 58px!important;padding:0 10px!important;display:block}
.ui2-bar{height:100%;display:flex;align-items:center;gap:8px}
.ui2-me{display:flex;align-items:center;gap:8px;min-width:0;flex:1;padding:4px 10px 4px 4px;border:2px solid #fff;border-radius:99px;background:#fff8ec;box-shadow:0 3px #e2d3ec;font:inherit;color:#58416c;cursor:pointer;text-align:left}
.ui2-face{width:38px;height:38px;border-radius:50%;overflow:hidden;background:#dcf0e9;flex:none;display:grid;place-items:start center}
.ui2-face img{width:150%;margin-top:-2px;max-width:none}
.ui2-me b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ui2-coins{padding:8px 12px;border-radius:99px;background:#fff1c4;border:2px solid #fff;font-weight:900;color:#6b4a12;box-shadow:0 3px #e6c35d;white-space:nowrap}
.ui2-btn{position:relative;width:44px;height:44px;flex:none;border:2px solid #fff;border-radius:50%;background:#f4ecf8;box-shadow:0 3px #e2d3ec;font-size:20px;cursor:pointer;padding:0}
.ui2-btn.ready::after{content:"";position:absolute;top:0;right:0;width:11px;height:11px;border-radius:50%;background:#ff6fae;border:2px solid #fff}
/* the old stat row and heading move into the bar */
body.ui2 .hunter-progress,body.ui2 .town-heading .player-closeup,body.ui2 .town-heading h1,body.ui2 .new-day{display:none!important}
body.ui2 .town-heading{min-height:0;padding:0}
body.ui2 .town-heading p{margin:0;padding:6px 12px;border-radius:99px;background:#efe4f6;font-weight:800;font-size:13px;color:#6b4fa0;display:inline-block}
body.ui2[data-mode=hunt][data-place=town] #main{grid-template-rows:auto minmax(0,1fr) auto!important;gap:8px!important}
body.ui2[data-mode=hunt][data-place=shop] #main{grid-template-rows:auto minmax(0,1fr) auto!important;gap:8px!important}
/* slimmer bottom nav */
body.ui2 .bottom-nav{padding:3px!important}
body.ui2 .bottom-nav button{min-height:54px!important;padding:2px!important}
body.ui2 .bottom-nav img,body.ui2 .bottom-nav .expansion-art{width:34px!important;height:34px!important}
body.ui2 .topbar>:not(.ui2-bar){display:none!important}
body.ui2 .shop-header .wallet{display:none!important}
/* ---- every screen (UI v2 rollout) ---- */
.ui2-bar{max-width:1100px;margin:0 auto}
@media(min-width:761px){.ui2-me{flex:0 1 auto;margin-right:auto}}
/* Room: one-line heading, one row of tools, toys visible */
body.ui2[data-place=home] .page-heading{margin:0 0 6px!important;min-height:0!important}
body.ui2[data-place=home] .page-heading p,body.ui2[data-place=home] .page-heading small{display:none!important}
body.ui2[data-place=home] .page-heading h1{font-size:22px!important;margin:0!important}
body.ui2[data-place=home] .room-tools{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;gap:8px!important;padding-bottom:4px;scrollbar-width:none;margin:0 0 8px!important}
body.ui2[data-place=home] .room-tools::-webkit-scrollbar{display:none}
body.ui2[data-place=home] .room-tools .btn{flex:none;white-space:nowrap;min-height:40px!important;padding:6px 12px!important;font-size:13px!important}
body.ui2[data-place=home] .room-instruction{display:none}
/* Trade: smaller mat, bigger toy tray */
body.ui2 .hunter-trade{grid-template-rows:55px 20px minmax(0,1fr) 132px!important}
body.ui2 .trade-footer{display:none!important}
body.ui2 .trade-tray,body.ui2 .tray-grid{height:auto!important;min-height:0}
body.ui2 .tray-grid{display:flex!important;gap:10px!important;overflow-x:auto;padding:6px 2px}
body.ui2 .tray-toy{flex:none;width:112px!important;height:118px!important}
body.ui2 .tray-toy .toy{width:84px!important;height:84px!important}
/* Play: scroll the page, give the play table real room */
body.ui2[data-place=play] .play-tabs,body.ui2[data-place=play] .play-toolbar,body.ui2[data-place=play] .photo-tools{display:flex}
.box-odds-chips{display:flex;justify-content:center;gap:14px;margin:4px 0 14px}
.box-odds-chips span{display:grid;justify-items:center;gap:2px}
.box-odds-chips .toy{width:46px;height:46px}
.box-odds-chips b{font-size:13px;color:#6f597e}
/* ---- no vertical scrolling on Room and Play (phones) ---- */
body.ui2[data-place=home] .milestones{display:none!important}
@media(max-width:760px){
 body.ui2[data-place=play] #main{display:flex!important;flex-direction:column!important;overflow:hidden!important;gap:8px!important;padding-bottom:0!important}
 body.ui2[data-place=play] #main>*{margin:0!important;flex:none}
 body.ui2[data-place=play] .footer-note{display:none!important}
 body.ui2[data-place=play] .play-tabs .btn{min-height:38px!important}
 body.ui2[data-place=play] .play-toolbar{height:22px!important;min-height:0!important}
 body.ui2[data-place=play] .play-toolbar .text-button{min-height:22px!important;padding:0!important;font-size:12px!important}
 body.ui2[data-place=play] .play-board{flex:1 1 auto!important;height:auto!important;min-height:160px!important}
 body.ui2[data-place=play] .photo-tools .btn{min-height:34px!important;padding:4px 10px!important}
 body.ui2[data-place=play] .play-collection-heading{display:none!important}
 body.ui2[data-place=play] .play-collection{padding:6px!important}
 body.ui2[data-place=play] .play-toys{height:86px!important;min-height:0!important}
 body.ui2[data-place=play] .play-toys>*{height:80px!important;min-height:0!important}
 body.ui2[data-place=play] .play-toys .toy{width:52px!important;height:52px!important}
}
/* one swipeable strip of every game */
body.ui2 .play-games{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;align-items:flex-start!important;gap:12px!important;overflow-x:auto!important;padding:8px 12px!important;scrollbar-width:none;margin:0!important}
body.ui2 .play-games::-webkit-scrollbar{display:none}
body.ui2 .play-games h2{display:none}
body.ui2 .play-games .dumpling-games{display:contents!important}
body.ui2 .play-games .game-app-icon{width:62px!important;height:62px!important;margin:0!important;border-width:2px!important}
body.ui2 .play-games>*,body.ui2 .play-games .dumpling-games>*{flex:none}
body.ui2 .v2-challenge-launch{width:112px!important;min-height:62px!important;padding:6px!important;font-size:12px!important;align-self:flex-start}
body.ui2 .v2-challenge-launch small{display:none}
body.ui2 .v2-arcade-tile{gap:2px}
body.ui2 .v2-arcade-tile b{font-size:11px;max-width:70px;line-height:1.1;text-align:center}
body.ui2[data-place=home] .room-collection{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:10px!important;scrollbar-width:none}
body.ui2[data-place=home] .room-collection::-webkit-scrollbar{display:none}
body.ui2[data-place=home] .room-collection>*{flex:0 0 108px!important}
@media(min-width:761px){
 body.ui2[data-place=home] .bedroom-scene{width:min(100%,calc((100svh - 400px) * 1.12))!important;margin-inline:auto!important}
}
@media(max-width:760px){body.ui2[data-place=home] .bedroom-scene{width:min(100%,calc((100svh - 400px) * 1.12))!important;margin-inline:auto!important}}
@media(min-width:761px){body.ui2[data-place=play] .page-heading{visibility:hidden!important;height:0!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}body.ui2[data-place=play] #main{grid-template-rows:0 48px 28px minmax(0,1fr) 44px 72px!important;row-gap:8px!important;padding-bottom:16px!important;box-sizing:border-box!important}}
/* friendly wait card */
.v2-wait{text-align:center;padding:10px 4px}
.v2-wait>span{display:block;font-size:72px;line-height:1.1;margin:6px 0}
.v2-wait h3{font-size:22px;color:#58416c;margin:6px 0}
.v2-wait p{color:#7a6690;margin:0 0 14px}
.v2-wait>button{display:block;width:100%;margin-top:8px}
.v2-wait .v2-wait-skip{font-size:13px;min-height:36px!important;background:none!important;box-shadow:none!important;border:0!important;text-decoration:underline;color:#7a6690!important}
/* trade buttons say what they do */
.trade-actions .mat-symbol{display:flex!important;flex-direction:row!important;align-items:center;justify-content:center;gap:6px}
.trade-actions .mat-symbol svg{width:22px!important;height:22px!important;flex:none}
.trade-actions .mat-symbol small{font-size:14px;font-weight:900;line-height:1}
.trade-actions .mat-symbol.accept.suggested{animation:nudge 1.6s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.trade-actions .mat-symbol.accept.suggested{animation:none}}
