:root{--red:#a91834;--cream:#eee8dd;--fat:0}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 30%,#22060d,#050505 55%);color:var(--cream);font-family:Arial,Helvetica,sans-serif;min-height:100vh}header{padding:25px 35px;border-bottom:1px solid #4d0d1a;background:#070707}.logo{font-weight:900;font-size:clamp(32px,5vw,64px);letter-spacing:-3px}.logo span{color:var(--red)}.tag{margin-top:6px;color:#bbb}main{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(520px,1.5fr) minmax(240px,.8fr);gap:18px;padding:20px;max-width:1550px;margin:auto}.card,.scene{background:linear-gradient(145deg,#151515,#090909);border:1px solid #333;box-shadow:0 20px 50px #0008}.card{padding:25px}.card h2{text-align:center;color:#b72a43;font-size:16px;letter-spacing:2px}.stats #count{text-align:center;font-size:clamp(70px,8vw,120px);font-weight:900}.stats p{text-align:center;color:#bbb;min-height:42px}.bar{height:15px;border:1px solid #333;background:#030303;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#8e112b,#d92b4c);transition:.25s}.row{display:flex;justify-content:space-between;margin:12px 0}.stats ul{list-style:none;padding:0;margin:30px 0 0}.stats li{padding:11px 0;border-bottom:1px solid #222;color:#aaa}.scene{position:relative;min-height:620px;overflow:hidden}.poster{position:absolute;top:25px;width:115px;height:145px;border:5px solid #2a1b15;text-align:center;padding-top:35px;font-weight:900;z-index:1}.p1{left:35px;background:#352719;color:#c79655;transform:rotate(-2deg)}.p2{right:35px;background:#501317;color:#d27e72;transform:rotate(2deg)}.monitor{position:absolute;right:9%;top:145px;width:43%;height:240px;z-index:4}.screen{position:absolute;inset:0 0 30px;border:9px solid #151515;background:linear-gradient(#788b50 0 62%,#675740 62%);box-shadow:0 15px 35px #000;overflow:hidden}.minimap{position:absolute;right:8px;top:8px;width:67px;height:67px;border-radius:50%;border:5px solid #494438;background:conic-gradient(#71834a,#a38d61,#4f6c40,#8c7c50)}.player{position:absolute;left:45%;top:45%;width:12px;height:25px;background:#2f3132;box-shadow:0 -7px #c99d75}.chat{position:absolute;left:0;right:0;bottom:0;height:48px;background:#7a684fc9;color:#ead7ad;font:10px monospace;padding:6px}.stand{position:absolute;left:42%;bottom:0;width:18%;height:40px;background:#191919}.stand:after{content:"";position:absolute;left:-25%;bottom:0;width:150%;height:8px;background:#111}.desk{position:absolute;right:-3%;bottom:73px;width:66%;height:34px;background:#341e13;border-top:5px solid #50301f;z-index:6}.keyboard{position:absolute;right:15%;bottom:103px;width:29%;height:18px;background:repeating-linear-gradient(90deg,#121212 0 6px,#333 6px 7px);transform:skewX(-18deg);z-index:7}.chair{position:absolute;left:4%;bottom:32px;width:44%;height:470px;z-index:2}.back{position:absolute;left:5%;top:0;width:75%;height:355px;border-radius:70px 65px 48px 52px;background:linear-gradient(90deg,#111,#292929,#111);border:5px solid #070707;box-shadow:inset 0 0 0 3px #333;transform:rotate(-4deg)}.seat{position:absolute;left:25%;bottom:82px;width:68%;height:92px;border-radius:42% 45% 27% 30%;background:#181818;border:5px solid #090909}.base{position:absolute;left:51%;bottom:0;width:10px;height:92px;background:#171717}.base:after{content:"";position:absolute;left:-65px;bottom:0;width:140px;height:8px;background:#181818}.gamer{position:absolute;left:17%;bottom:87px;width:360px;height:390px;z-index:5;--fat:0}.head{position:absolute;left:160px;top:48px;width:92px;height:110px;background:#d3a17a;border-radius:45% 52% 48% 44%;transform:scaleX(calc(1 + var(--fat)*.13));transform-origin:left center;z-index:4}.ear{position:absolute;left:-11px;top:51px;width:22px;height:31px;background:#c58f69;border-radius:50%}.nose{position:absolute;right:-13px;top:59px;width:24px;height:18px;background:#d3a17a;border-radius:45% 60% 60% 45%}.hairback{position:absolute;left:124px;top:32px;width:116px;height:112px;background:#472414;border-radius:52% 48% 42% 45%;z-index:3}.curls{position:absolute;left:127px;top:20px;width:130px;height:70px;z-index:6}.curls i{position:absolute;width:40px;height:40px;border-radius:50%;background:#4a2817;box-shadow:inset -5px -5px #32190f}.curls i:nth-child(1){left:0;top:18px}.curls i:nth-child(2){left:23px;top:0}.curls i:nth-child(3){left:50px;top:7px}.curls i:nth-child(4){left:77px;top:0}.curls i:nth-child(5){left:95px;top:20px}.curls i:nth-child(6){left:46px;top:30px}.neck{position:absolute;left:172px;top:140px;width:57px;height:43px;background:#c9916b}.body{position:absolute;left:74px;top:157px;width:205px;height:167px;background:#17191c;border-radius:50% 42% 40% 30%;transform:scaleX(calc(1 + var(--fat)*.42));transform-origin:42% 55%;transition:.25s;z-index:3}.belly{position:absolute;left:118px;top:215px;width:172px;height:126px;background:#17191c;border-radius:45% 52% 48% 46%;transform:scale(calc(1 + var(--fat)*.85),calc(1 + var(--fat)*.42));transform-origin:35% 30%;transition:.25s;z-index:3}.arm{position:absolute;left:218px;top:205px;width:143px;height:45px;background:#d3a17a;border-radius:25px;transform:rotate(10deg) scaleX(calc(1 + var(--fat)*.14));transform-origin:left center;z-index:5}.hand{position:absolute;right:-7px;top:-1px;width:47px;height:43px;background:#d3a17a;border-radius:45%}.leg{position:absolute;top:305px;width:145px;height:74px;background:#1e4673;border-radius:38px;z-index:4}.one{left:113px;transform:rotate(4deg) scaleX(calc(1 + var(--fat)*.25))}.two{left:200px;top:325px;transform:rotate(-4deg) scaleX(calc(1 + var(--fat)*.15))}.level{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);color:#b32a42;font-weight:900;letter-spacing:2px;z-index:10;white-space:nowrap}.actions{display:flex;flex-direction:column;align-items:center}.can{position:relative;width:178px;height:310px;margin:20px 0;border:0;border-radius:46px 46px 34px 34px;cursor:pointer;color:white;background:linear-gradient(90deg,#5d0017,#bd1738 47%,#6b0019);box-shadow:0 0 48px #bf163944,inset 12px 0 22px #ffffff14,inset -13px 0 18px #0006,0 22px 28px #0008;transition:.12s}.can:hover{transform:translateY(-5px) rotate(-1deg);filter:brightness(1.08)}.can:active{transform:translateY(4px) scale(.97)}.can.pop{animation:pop .25s ease}@keyframes pop{50%{transform:scale(1.08) rotate(3deg)}}.top{position:absolute;left:7px;right:7px;top:1px;height:24px;border-radius:50%;background:linear-gradient(#e5e5e5,#777 48%,#d9d9d9 52%,#6d6d6d)}.shine{position:absolute;left:17px;top:30px;bottom:30px;width:12px;border-radius:99px;background:linear-gradient(transparent,#ffffff59,transparent)}.word{position:absolute;top:77px;left:0;right:0;font:italic 31px/.8 Georgia,serif;transform:rotate(-7deg);text-shadow:0 3px #430010}.word b{font-size:39px}.num{position:absolute;top:170px;left:50%;transform:translateX(-50%);width:57px;height:57px;border:3px solid #fffd;border-radius:50%;display:grid;place-items:center;font-weight:900}.can em{position:absolute;left:0;right:0;bottom:32px;font-style:normal;font-size:12px;font-weight:900;letter-spacing:1px}.actions>button:not(.can),dialog button{width:100%;padding:13px 14px;margin-top:10px;background:#111;border:1px solid #3f3f3f;color:#ddd;cursor:pointer;font-weight:900}.actions .danger,dialog .danger{border-color:#651326;color:#d1576d}.actions small{margin-top:18px;color:#777;text-align:center}footer{max-width:1510px;margin:0 auto 25px;padding:22px 30px;border:1px solid #4d111c;background:#0d0d0d;display:flex;gap:25px;color:#aaa}footer b{color:#b5263f;white-space:nowrap}dialog{background:#111;color:#fff;border:1px solid #4d111c;width:min(430px,calc(100% - 30px));padding:24px}dialog::backdrop{background:#000c}dialog form{display:flex;gap:10px}@media(max-width:1100px){main{grid-template-columns:1fr 1.4fr}.actions{grid-column:1/-1}}@media(max-width:760px){main{grid-template-columns:1fr;padding:12px}.scene{min-height:560px}.gamer{left:0;transform:scale(.84);transform-origin:left bottom}.monitor{right:3%;width:48%}footer{margin:0 12px 18px;flex-direction:column}header{padding:20px}.logo{font-size:36px}}

/* Lightweight character and skilling add-on */
header{display:flex;align-items:center;justify-content:space-between;gap:20px}.hidden{display:none!important}.character-box{min-width:190px;text-align:right}.character-button,.character-summary,.game-strip button,.game-dialog button{background:#111;border:1px solid #5b1725;color:#eee;padding:11px 15px;font-weight:900;cursor:pointer}.character-summary{display:inline-flex;flex-direction:column;gap:4px;text-align:left;min-width:180px}.character-summary b{color:#d52c4b;letter-spacing:1px}.character-summary span{font-size:12px;color:#aaa}.character-summary strong{color:#eee}.resource-layer{position:absolute;inset:0;z-index:15;pointer-events:none}.resource-node{position:absolute;width:96px;height:96px;padding:4px;background:#090909d9;border:1px solid #a88a51;border-radius:50%;cursor:pointer;pointer-events:auto;filter:drop-shadow(0 8px 12px #000);animation:resourceIn .45s ease,resourcePulse 1.6s ease-in-out infinite alternate}.resource-node img{width:78px;height:70px;object-fit:contain;display:block;margin:auto}.resource-node span{position:absolute;left:50%;bottom:-22px;transform:translateX(-50%);background:#080808e8;border:1px solid #4a3821;padding:4px 7px;color:#e8d7a9;font-size:10px;font-weight:900;white-space:nowrap}.resource-node:hover{filter:brightness(1.2) drop-shadow(0 8px 18px #cba35b66)}.resource-node.working img{animation:resourceShake .22s linear infinite}.resource-node.collected{animation:resourceCollect .35s forwards}.resource-node.expired{animation:resourceExpire .35s forwards}@keyframes resourceIn{from{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes resourcePulse{to{transform:scale(1.07)}}@keyframes resourceShake{50%{transform:rotate(5deg)}}@keyframes resourceCollect{to{opacity:0;transform:scale(1.45)}}@keyframes resourceExpire{to{opacity:0;transform:scale(.6)}}.game-strip{max-width:1510px;margin:0 auto 14px;padding:14px 20px;border:1px solid #4d111c;background:#0d0d0d;display:flex;align-items:center;gap:10px}.game-strip>div{display:flex;flex-direction:column;gap:4px;margin-right:auto}.game-strip b{color:#b5263f}.game-strip span{color:#888;font-size:13px}.game-strip button:disabled{opacity:.35;cursor:not-allowed}.toast{position:fixed;left:50%;bottom:25px;z-index:100;transform:translate(-50%,30px);opacity:0;background:#17120a;border:2px solid #9c783e;color:#f0d99b;padding:12px 20px;font-weight:900;box-shadow:0 8px 35px #000;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.game-dialog{position:relative;background:linear-gradient(#1b160d,#0e0c08);border:2px solid #73582d;color:#eee;width:min(440px,calc(100% - 24px));padding:25px;box-shadow:inset 0 0 0 2px #21180c}.game-dialog.wide{width:min(620px,calc(100% - 24px))}.game-dialog h3,.game-dialog h4{color:#d9bd75;letter-spacing:2px}.game-dialog p{color:#aaa}.game-dialog form{display:flex;flex-direction:column;gap:9px}.game-dialog input{background:#090909;border:1px solid #6b5531;color:#fff;padding:12px;font:inherit}.game-dialog form small{min-height:16px;color:#d65b70}.dialog-x{position:absolute;right:10px;top:8px!important;width:auto!important;margin:0!important;border:0!important;font-size:22px;padding:5px 10px!important}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.skill-card{display:flex;gap:8px;align-items:center;background:#0a0a08;border:1px solid #4c3b20;padding:10px}.skill-card img{width:55px;height:55px;object-fit:contain}.skill-card>div{min-width:0;flex:1;display:grid;grid-template-columns:1fr auto;gap:3px}.skill-card b{font-size:12px;color:#d9bd75}.skill-card strong{grid-row:1/3;grid-column:2;font-size:28px}.skill-card small{color:#888}.skill-card i{grid-column:1/-1;height:5px;background:#222}.skill-card i span{display:block;height:100%;background:#9f762c}.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.collectible{padding:10px;background:#080808;border:1px solid #292929;color:#666}.collectible span{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:8px;border:1px solid #333}.collectible.found{color:#e5cf92;border-color:#705725}.leaderboard>div{display:grid;grid-template-columns:35px 1fr 65px;padding:11px;border-bottom:1px solid #302618}.leaderboard>div b{color:#9e7936}.leaderboard>div strong{text-align:right;color:#d9bd75}.leaderboard>div span{overflow:hidden;text-overflow:ellipsis}@media(max-width:760px){header{align-items:flex-start}.character-box{min-width:0}.character-summary{min-width:145px}.game-strip{margin:0 12px 14px;flex-wrap:wrap}.game-strip>div{width:100%}.game-strip button{flex:1}.skills-grid{grid-template-columns:1fr}.resource-node{width:78px;height:78px}.resource-node img{width:64px;height:58px}}

.existing-character{display:flex;flex-direction:column;gap:12px;padding:14px;background:#090909;border:1px solid #5b4728}.existing-character b{font-size:22px;color:#d9bd75}.change-character{width:100%;margin-top:18px;border-color:#444!important;color:#aaa!important}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.auth-tabs button{margin:0!important;border-color:#3f3f3f!important;color:#888!important}.auth-tabs button.active{border-color:#9c783e!important;color:#f0d99b!important;background:#1b160d!important}.game-dialog label{font-size:13px;color:#d9bd75;font-weight:700}.change-character{width:100%;margin-top:18px;border-color:#651326!important;color:#d1576d!important}

/* Clicking Agility minigame */
.agility-dialog{width:min(700px,calc(100% - 24px))}.agility-stats{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0;color:#aaa;font-size:13px}.agility-stats b{color:#e5cf92}.agility-arena{position:relative;height:390px;overflow:hidden;border:2px solid #654f29;background:radial-gradient(circle at 50% 45%,#242014,#080806 70%);box-shadow:inset 0 0 35px #000}.agility-arena:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff06 1px,transparent 1px),linear-gradient(#ffffff06 1px,transparent 1px);background-size:32px 32px;pointer-events:none}.agility-arena #agilityStart{position:absolute;left:50%;top:50%;width:auto;transform:translate(-50%,-50%);margin:0;background:#1b160d;border-color:#9c783e;color:#f0d99b;padding:15px 24px;z-index:2}.agility-target{position:absolute;width:62px!important;height:62px;padding:0!important;margin:0!important;border-radius:50%;border:3px solid #e2c574!important;background:radial-gradient(circle,#fff3a6 0 12%,#d79b28 13% 38%,#6f4711 39% 60%,#1b1207 61%)!important;box-shadow:0 0 0 7px #e4bd4b33,0 0 28px #ffc84e;animation:agilityFlash .55s ease-in-out infinite alternate;transform:translate(-50%,-50%);z-index:4}.agility-target:after{content:"CLICK";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:9px;color:#241500;font-weight:900}.agility-target.hit{animation:agilityHit .16s forwards}.agility-message{display:block;min-height:22px;margin-top:10px;color:#d9bd75;text-align:center}.skill-card.agility img{filter:grayscale(1) sepia(.7)}@keyframes agilityFlash{to{filter:brightness(1.45);box-shadow:0 0 0 12px #e4bd4b18,0 0 42px #ffc84e;transform:translate(-50%,-50%) scale(1.08)}}@keyframes agilityHit{to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}@media(max-width:600px){.agility-arena{height:330px}.agility-target{width:54px!important;height:54px}.agility-stats{font-size:12px}}
.agility-skill-icon{width:55px;height:55px;display:grid;place-items:center;border:1px solid #705725;background:#17120a;color:#e5cf92;font-size:31px;font-weight:900;border-radius:50%}

/* Repo XP Rush */
.agility-open-button{display:inline-flex!important;align-items:center;justify-content:center;gap:9px}
.agility-open-button img{width:24px;height:24px;object-fit:contain}
.agility-skill-icon{width:55px!important;height:55px!important;object-fit:contain!important;border:1px solid #705725!important;background:#17120a!important;border-radius:50%!important;padding:5px!important;filter:none!important}
.agility-arena{background:radial-gradient(circle at 50% 42%,#342812,#0b0804 72%)}
.agility-arena:after{content:"DR PEPPER DASH";position:absolute;left:12px;bottom:8px;color:#e7ca7a22;font-size:26px;font-weight:900;letter-spacing:3px;pointer-events:none}
.agility-runner{position:absolute;left:50%;top:55%;width:360px;height:390px;z-index:3;transform:translate(-50%,-50%) scale(.28);transform-origin:center;transition:left .18s ease-out,top .18s ease-out;pointer-events:none;--fat:0}
.agility-runner.running{animation:runnerBob .2s ease-out}
.agility-runner .leg.one{animation:runnerLegOne .22s linear infinite alternate}
.agility-runner .leg.two{animation:runnerLegTwo .22s linear infinite alternate}
.agility-target{width:48px!important;height:78px!important;border:0!important;border-radius:13px 13px 10px 10px!important;background:linear-gradient(90deg,#5b0016,#c51b3d 48%,#690018)!important;box-shadow:0 0 0 6px #d9234733,0 0 25px #e52a4f!important;overflow:visible;animation:canFlash .48s ease-in-out infinite alternate!important}
.agility-target:after{content:""!important}
.agility-target .mini-can-top{position:absolute;left:3px;right:3px;top:0;height:8px;border-radius:50%;background:linear-gradient(#eee,#777 50%,#ddd 52%,#666)}
.agility-target .mini-can-shine{position:absolute;left:7px;top:10px;bottom:9px;width:4px;border-radius:99px;background:#ffffff3d}
.agility-target .mini-can-label{position:absolute;left:0;right:0;top:25px;color:#fff;font:italic 10px/.85 Georgia,serif;text-shadow:0 1px #39000d;transform:rotate(-5deg)}
.agility-target .mini-can-label b{font-size:12px}
.agility-target.hit{animation:canCaught .2s forwards!important}
@keyframes canFlash{to{filter:brightness(1.35);transform:translate(-50%,-50%) scale(1.1);box-shadow:0 0 0 11px #d923471a,0 0 38px #ee3659}}
@keyframes canCaught{to{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(18deg)}}
@keyframes runnerBob{50%{transform:translate(-50%,-53%) scale(.3) rotate(-2deg)}}
@keyframes runnerLegOne{to{transform:rotate(-14deg) scaleX(calc(1 + var(--fat)*.25))}}
@keyframes runnerLegTwo{to{transform:rotate(14deg) scaleX(calc(1 + var(--fat)*.15))}}
@media(max-width:600px){.agility-runner{transform:translate(-50%,-50%) scale(.23)}.agility-target{width:42px!important;height:68px!important}}

/* Hard limit for the Agility icon so its source dimensions can never stretch the strip. */
#openAgility {
  width: auto;
  min-width: 150px;
  flex: 0 0 auto;
}
#openAgility > img {
  display: block !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  object-fit: contain !important;
  flex: 0 0 24px !important;
}
@media (max-width:760px) {
  #openAgility { min-width: 0; }
}


/* Clickable profiles and Repo XP Rush records */
.leaderboard-help{margin-top:-6px!important;font-size:12px}
.leaderboard .player-link{min-width:0;width:auto!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#e6cf91!important;text-align:left;font:inherit;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.leaderboard .player-link:hover{text-decoration:underline;color:#fff0bd!important}
.leaderboard.compact{max-height:190px;overflow:auto;border:1px solid #302618;background:#090806}
.leaderboard.compact>div{padding:8px 10px;grid-template-columns:30px 1fr 80px}
.dash-leaderboard-section{margin-top:16px;border-top:1px solid #4c3b20;padding-top:10px}
.dash-leaderboard-section h4{margin:0 0 8px}
.public-profile-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.public-profile-summary>div{background:#090806;border:1px solid #4c3b20;padding:10px;display:flex;flex-direction:column;gap:4px}
.public-profile-summary span{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:1px}
.public-profile-summary strong{color:#e5cf92;font-size:18px}
.public-skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.public-skill{display:flex;align-items:center;gap:10px;background:#090806;border:1px solid #4c3b20;padding:9px}
.public-skill img{width:46px;height:46px;object-fit:contain}
.public-skill div{display:flex;flex-direction:column;min-width:0}
.public-skill b{color:#d9bd75}
.public-skill strong{font-size:13px}
.public-skill small{color:#888}
#playerStatsBody h4 small{color:#888;letter-spacing:0;font-weight:normal}
@media(max-width:600px){.public-profile-summary{grid-template-columns:1fr}.public-skills-grid{grid-template-columns:1fr}.leaderboard.compact{max-height:150px}}


/* Slayer / Jad simulator */
.slayer-open-button{display:inline-flex!important;align-items:center;justify-content:center;gap:9px}
.slayer-open-button img{width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;object-fit:contain;image-rendering:pixelated}
.slayer-skill-icon{width:55px!important;height:55px!important;object-fit:contain!important;image-rendering:pixelated;border:1px solid #705725;background:#17120a;padding:4px}
.slayer-dialog{width:min(720px,calc(100% - 24px))}
.jad-status-row{display:flex;justify-content:space-between;gap:12px;margin:12px 0 7px;color:#aaa;font-size:13px}.jad-status-row b{color:#e5cf92}
.jad-health{height:15px;border:2px solid #4f3b1e;background:#090806;margin-bottom:10px}.jad-health i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#6e0d16,#c52b34);transition:width .25s ease}
.jad-arena{position:relative;height:330px;overflow:hidden;border:2px solid #654f29;background:radial-gradient(circle at 50% 72%,#462c15,#140c06 58%,#050403);box-shadow:inset 0 0 45px #000}
.jad-arena:before{content:"";position:absolute;left:0;right:0;bottom:0;height:36%;background:repeating-linear-gradient(165deg,#2d1c0d 0 22px,#3a2410 23px 44px);clip-path:polygon(0 58%,8% 40%,17% 62%,27% 35%,39% 61%,50% 30%,61% 60%,73% 38%,84% 63%,93% 42%,100% 55%,100% 100%,0 100%)}
.jad-arena #jadStart{position:absolute;left:50%;top:74%;transform:translate(-50%,-50%);z-index:8;background:#1b160d;border-color:#9c783e;color:#f0d99b;padding:14px 24px}
.jad-cue{position:absolute;top:15px;left:50%;transform:translateX(-50%);z-index:7;background:#090806d9;border:1px solid #725a2d;padding:8px 13px;color:#e7ca7a;font-weight:900;letter-spacing:1px;white-space:nowrap}
.jad-boss{position:absolute;left:50%;top:53%;width:190px;height:190px;transform:translate(-50%,-50%);transition:transform .2s,filter .2s;z-index:4}
.jad-body{position:absolute;left:36px;top:65px;width:120px;height:90px;background:linear-gradient(135deg,#6b391d,#32190d);clip-path:polygon(15% 0,85% 0,100% 45%,80% 100%,18% 100%,0 45%);border-radius:35%}
.jad-head{position:absolute;left:57px;top:25px;width:77px;height:66px;background:#8a4c24;clip-path:polygon(18% 0,82% 0,100% 35%,82% 100%,18% 100%,0 35%);z-index:3}
.jad-eye{position:absolute;top:28px;width:9px;height:9px;background:#ffe95d;box-shadow:0 0 9px #ff7028}.jad-eye.one{left:19px}.jad-eye.two{right:19px}
.jad-horns i{position:absolute;top:10px;width:62px;height:31px;background:#c0b9a1;clip-path:polygon(0 65%,100% 0,70% 100%);z-index:2}.jad-horns i:first-child{left:10px;transform:rotate(-15deg)}.jad-horns i:last-child{right:10px;transform:scaleX(-1) rotate(-15deg)}
.jad-leg{position:absolute;top:137px;width:60px;height:43px;background:#42200e;clip-path:polygon(0 0,100% 15%,80% 100%,10% 85%)}.jad-leg.one{left:25px;transform:rotate(15deg)}.jad-leg.two{right:25px;transform:scaleX(-1) rotate(15deg)}
.jad-projectile{position:absolute;left:82px;top:70px;width:28px;height:28px;border-radius:50%;opacity:0;z-index:6}.jad-projectile.magic{opacity:1;background:#5da7ff;box-shadow:0 0 22px #5da7ff}.jad-projectile.ranged{opacity:1;background:#8ad14b;clip-path:polygon(50% 0,100% 100%,50% 72%,0 100%);border-radius:0;box-shadow:0 0 18px #8ad14b}.jad-projectile.land{animation:jadProjectile .45s forwards}
.jad-boss.attacking.magic{animation:jadRise .45s ease-in-out infinite alternate}.jad-boss.attacking.ranged{animation:jadStomp .28s ease-in-out infinite alternate}.jad-boss.blocked{filter:brightness(1.5)}.jad-boss.defeated{transform:translate(-50%,-36%) rotate(90deg);filter:grayscale(1)}.jad-boss.victorious{filter:drop-shadow(0 0 18px #d62b23)}
.prayer-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.prayer-button{display:grid!important;grid-template-columns:44px 1fr;grid-template-rows:auto auto;text-align:left!important;align-items:center;gap:2px 9px;border-color:#4c3b20!important}.prayer-button .prayer-symbol{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-size:24px;background:#222}.prayer-button b{font-size:12px;color:#e5cf92}.prayer-button small{color:#888}.prayer-button.active{border-color:#e3c36e!important;box-shadow:inset 0 0 0 2px #e3c36e55}.prayer-button.ranged.active .prayer-symbol{background:#245b1e;color:#b8ff8d}.prayer-button.magic.active .prayer-symbol{background:#183a67;color:#9bd1ff}
.jad-message{display:block;min-height:22px;margin-top:10px;color:#d9bd75;text-align:center}
@keyframes jadRise{to{transform:translate(-50%,-57%) scale(1.08)}}@keyframes jadStomp{to{transform:translate(-50%,-47%) rotate(2deg)}}@keyframes jadProjectile{to{transform:translate(0,170px) scale(1.7);opacity:0}}
@media(max-width:600px){.jad-arena{height:290px}.jad-boss{transform:translate(-50%,-50%) scale(.82)}.prayer-controls{grid-template-columns:1fr}.jad-cue{font-size:11px}}


/* Jad music finale effect */
.jad-arena.danger{animation:jadDangerPulse .8s ease-in-out infinite alternate;box-shadow:inset 0 0 45px #000,0 0 0 2px rgba(170,22,22,.35)}
.jad-arena.danger .jad-health{filter:saturate(1.25)}
@keyframes jadDangerPulse{from{border-color:#654f29}to{border-color:#a61c22;box-shadow:inset 0 0 55px #180000,0 0 16px rgba(170,22,22,.35)}}

/* One-minute Combat Survival */
.combat-open-button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px}.combat-open-button>span{font-size:23px;color:#e4c570}.combat-dialog{width:min(850px,calc(100% - 18px))}.combat-hud{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 7px}.combat-hud span{background:#090806;border:1px solid #4c3b20;padding:8px;text-align:center;color:#999;font-size:12px}.combat-hud b{display:block;color:#e8d79f;font-size:16px;margin-top:2px}.combat-xp-bar{height:8px;border:1px solid #4c3b20;background:#090806;margin-bottom:8px;overflow:hidden}.combat-xp-bar i{display:block;width:0;height:100%;background:#5aa7d8;transition:width .12s}.combat-arena{position:relative;overflow:hidden;border:2px solid #604a29;background:#152416}.combat-arena canvas{display:block;width:100%;height:auto;aspect-ratio:760/430;image-rendering:pixelated}.combat-overlay{position:absolute;inset:0;z-index:8;background:#050504c9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;padding:20px}.combat-overlay>b{color:#e7cb82;font-size:20px;letter-spacing:1px}.combat-overlay>span{color:#bbb;max-width:480px}.combat-overlay>#combatStart{width:auto;padding:13px 30px;border-color:#9a783e;color:#f0d99b}.combat-upgrades{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;width:min(650px,100%)}.combat-upgrades button{display:flex!important;flex-direction:column;align-items:center;gap:5px;min-height:82px;border-color:#7b6335!important}.combat-upgrades button b{color:#e9d28f}.combat-upgrades button small{color:#aaa}.combat-message{display:block;text-align:center;min-height:22px;margin-top:9px;color:#d9bd75}.combat-touch{display:none;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px}.combat-touch button{margin:0!important;padding:10px!important}.combat-skill-icon{width:55px!important;height:55px!important;object-fit:contain;image-rendering:pixelated;background:#17120a;border:1px solid #705725;padding:8px;box-sizing:border-box;flex:0 0 55px}.public-combat-icon{width:46px;height:46px;display:grid;place-items:center;background:#17120a;border:1px solid #705725;color:#e8cf85;font-size:23px;flex:0 0 46px}.public-skill img[src*="attack-icon"],.public-skill img[src*="strength-icon"],.public-skill img[src*="defence-icon"]{object-fit:contain!important;image-rendering:pixelated;padding:6px;box-sizing:border-box;background:#17120a}
@media(max-width:700px){.combat-hud{grid-template-columns:1fr 1fr}.combat-touch{display:grid}.combat-upgrades{grid-template-columns:1fr}.combat-overlay>b{font-size:17px}.combat-dialog{padding:14px}.combat-dialog>p{font-size:12px}}


/* Repo Company High Seas — rhythm sailing */
.sailing-open-button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px}.sailing-open-button img{width:24px;height:24px;object-fit:contain;image-rendering:pixelated}.sailing-dialog{width:min(850px,calc(100% - 18px))}.sailing-hud{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0 8px}.sailing-hud span{background:#071015;border:1px solid #31586b;padding:8px;text-align:center;color:#9fb5bf;font-size:12px}.sailing-hud b{display:block;color:#ccecff;font-size:16px;margin-top:2px}.sailing-arena{position:relative;overflow:hidden;border:2px solid #56839a;background:#07151d;box-shadow:inset 0 0 24px #000}.sailing-arena canvas{display:block;width:100%;height:auto;aspect-ratio:760/430;image-rendering:pixelated;cursor:pointer;touch-action:none}.sailing-overlay{position:absolute;inset:0;z-index:8;background:#02080de8;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:22px}.sailing-overlay>b{color:#d4f1ff;font-size:21px;letter-spacing:1px;text-shadow:0 2px #000}.sailing-overlay>span{color:#b7cad3;max-width:590px}.sailing-overlay button{width:auto;padding:13px 31px;border-color:#6ca5be!important;color:#d7f4ff!important}.sailing-touch{display:none;margin-top:8px}.sailing-touch button{width:100%;margin:0!important;padding:13px!important;font-size:16px!important;touch-action:none}.sailing-message{display:block;text-align:center;min-height:22px;margin-top:9px;color:#bfe9fb}.sailing-skill-icon{width:55px!important;height:55px!important;object-fit:contain;image-rendering:pixelated;background:#09161b;border:1px solid #47788e;padding:8px;box-sizing:border-box;flex:0 0 55px}.sailing-dialog.shake{animation:sailShake .3s linear}.sailing-dialog.danger .sailing-arena{animation:sailPulse .45s alternate infinite}@keyframes sailShake{20%{transform:translateX(-7px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}@keyframes sailPulse{to{border-color:#d84d56;box-shadow:inset 0 0 32px #711b28}}
@media(max-width:700px){.sailing-hud{grid-template-columns:1fr 1fr}.sailing-touch{display:block}.sailing-overlay>b{font-size:17px}.sailing-dialog>p{font-size:13px}}


/* Combat starting weapon selector */
.combat-weapon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:min(690px,100%);margin:4px 0 2px}
.combat-weapon-choice{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:78px;padding:10px!important;margin:0!important;border:1px solid #5d4a2b!important;background:#11100d!important;color:#d7c9a2!important}
.combat-weapon-choice strong{font-size:14px;color:#ead89f}.combat-weapon-choice small{font-size:11px;color:#aaa}
.combat-weapon-choice:hover,.combat-weapon-choice.selected{border-color:#d4ab51!important;background:#292113!important;box-shadow:inset 0 0 0 1px #8e6e30}
@media(max-width:700px){.combat-weapon-grid{grid-template-columns:1fr}.combat-weapon-choice{min-height:58px}}

/* Repo Company rebrand */
:root{--red:#63d39a;--cream:#e8f1ec;--repo:#63d39a;--repo-dark:#07130e}
body{background:radial-gradient(circle at 50% 25%,#123226,#050807 58%);color:var(--cream)}
header{border-bottom-color:#286248;background:#050807}.logo{letter-spacing:-2px}.logo span{color:var(--repo)}
.card,.scene{background:linear-gradient(145deg,#111a16,#070b09);border-color:#294538}.card h2,.level{color:var(--repo)}
.bar i{background:linear-gradient(90deg,#28734f,#72e0a7)}
.p1{background:#17241d;color:#9ad1b2;border-color:#24372d}.p2{background:#103323;color:#75e3aa;border-color:#1d4c36}
.scene{box-shadow:0 20px 50px #0009,inset 0 0 80px #1f6d4820}
/* Normal anonymous RuneScape player rather than Connor */
.gamer{--fat:0!important;filter:saturate(.85)}
.gamer .curls{display:none}.gamer .hairback{left:142px;top:34px;width:101px;height:74px;border-radius:48% 52% 30% 34%;background:#3a2b20}
.gamer .head{transform:none!important}.gamer .body{width:185px;transform:none!important;border-radius:35% 38% 30% 28%;background:#26382f}
.gamer .belly{left:128px;top:235px;width:135px;height:92px;transform:none!important;background:#26382f;border-radius:35%}
.gamer .arm{transform:rotate(10deg)}.gamer .leg{transform:none;background:#324e66}.gamer .one{transform:rotate(4deg)}.gamer .two{transform:rotate(-4deg)}
/* Replace the drink can with an XP-waste control */
.xp-waste-button{position:relative;width:220px;height:220px;margin:35px 0;border:2px solid #69dca2;border-radius:28px;cursor:pointer;color:#eafff3;background:linear-gradient(145deg,#163d2b,#08150f);box-shadow:0 0 0 8px #63d39a15,0 0 45px #54d39442,inset 0 0 38px #69dca218;transition:.12s;overflow:hidden}
.xp-waste-button:hover{transform:translateY(-5px) scale(1.02);filter:brightness(1.12)}.xp-waste-button:active{transform:translateY(3px) scale(.97)}.xp-waste-button.pop{animation:repoPop .25s ease}
.xp-waste-button .xp-runes{display:block;font:900 74px/1 Georgia,serif;color:#86efb9;text-shadow:0 4px #174b33,0 0 20px #64d79e;margin-top:22px}.xp-waste-button .xp-spark{position:absolute;right:22px;top:18px;font-size:30px;color:#d9ffe9;animation:repoSpark 1s alternate infinite}.xp-waste-button strong{display:block;font-size:24px;line-height:.95;letter-spacing:1px}.xp-waste-button em{position:absolute;left:12px;right:12px;bottom:15px;font-style:normal;font-size:10px;letter-spacing:1px;color:#a8c9b7}@keyframes repoPop{50%{transform:scale(1.08) rotate(2deg)}}@keyframes repoSpark{to{transform:rotate(30deg) scale(1.2);opacity:.65}}
/* Agility XP drops */
.agility-target{width:54px!important;height:54px!important;border:2px solid #8af0bb!important;border-radius:14px!important;background:radial-gradient(circle,#276c4a,#07160f 72%)!important;box-shadow:0 0 0 6px #63d39a24,0 0 28px #63d39a!important;animation:xpDropPulse .48s ease-in-out infinite alternate!important}
.agility-target .mini-can-top,.agility-target .mini-can-shine{display:none!important}.agility-target .xp-drop-star{position:absolute;inset:2px 0 auto;font-size:25px;color:#dffff0;text-shadow:0 0 10px #fff}.agility-target .mini-can-label{top:30px!important;color:#8df1bd!important;font:bold 12px/1 Arial,sans-serif!important;transform:none!important;text-shadow:0 1px #062014!important}.agility-target.hit{animation:xpDropCaught .2s forwards!important}@keyframes xpDropPulse{to{filter:brightness(1.35);transform:translate(-50%,-50%) scale(1.1)}}@keyframes xpDropCaught{to{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(30deg)}}
.game-strip,footer{border-color:#285c44!important;background:#07100c!important}.game-strip button,button{border-color:#376b51}.game-dialog{border-color:#35684f!important}.toast{border-color:#4a9c71!important}
.agility-arena:after{content:"REPO XP RUSH"!important;color:#71dfa62b!important}

.combat-option-title{display:block;margin-top:12px;color:#d7e7d8}.combat-difficulty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:7px 0 12px}.combat-difficulty-choice{background:#17241b;border:2px solid #4c654f;color:#eee;padding:10px 7px}.combat-difficulty-choice small{display:block;color:#aebbad;margin-top:4px}.combat-difficulty-choice.selected{border-color:#d5b65c;background:#293422;box-shadow:0 0 0 2px rgba(213,182,92,.18)}
.runecrafting-open-button{background:inherit}.runecrafting-dialog{width:min(920px,96vw)}.rc-lobby{padding:18px;background:#111a16;border:1px solid #405a49;border-radius:10px}.rc-lobby-actions{display:grid;grid-template-columns:1fr 2fr;gap:14px;align-items:end}.rc-lobby-actions>div{display:grid;grid-template-columns:1fr auto;gap:7px}.rc-lobby-actions label{grid-column:1/-1}.rc-lobby input{background:#0d1410;color:#fff;border:1px solid #617665;padding:11px;text-transform:uppercase;font-weight:bold;letter-spacing:3px}.rc-hud{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.rc-hud span{background:#14221a;border:1px solid #3d654d;padding:7px 10px;border-radius:7px}.runecrafting-dialog canvas{display:block;width:100%;height:auto;touch-action:none;border:4px solid #24170f;border-radius:8px;background:#176044}.rc-power{display:grid;grid-template-columns:auto 180px 1fr;align-items:center;gap:10px;margin:10px 0}.rc-power input{accent-color:var(--repo)}.rc-controls{display:flex;gap:8px}.rc-message{display:block;margin-top:9px;color:#cddbcf}.skill-card.runecrafting .rc-skill-icon,.rc-skill-icon{display:block;width:42px;height:42px;object-fit:contain;image-rendering:auto}.runecrafting-open-button img{width:24px;height:24px;object-fit:contain;display:block;flex:0 0 24px}@media(max-width:650px){.combat-difficulty-grid{grid-template-columns:1fr}.rc-lobby-actions{grid-template-columns:1fr}.rc-power{grid-template-columns:1fr}.rc-lobby-actions>div{grid-template-columns:1fr}.rc-lobby-actions label{grid-column:auto}}

.rc-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}.rc-legend span{display:flex;align-items:center;gap:6px;background:#14221a;border:1px solid #3d654d;padding:6px 9px;border-radius:7px}.rc-legend img{width:24px;height:24px;object-fit:contain;border-radius:50%}

/* Runecrafting Pool: match the Repo Company controls and show pocketed runes */
.runecrafting-open-button{background:transparent!important;color:inherit!important}
.runecrafting-open-button:hover:not(:disabled){background:#14221a!important;border-color:#63d39a!important}
.rc-potted{display:grid;grid-template-columns:1fr 1fr minmax(110px,.45fr);gap:10px;margin:10px 0}
.rc-potted>div{background:#0d1712;border:1px solid #355b46;border-radius:8px;padding:8px}
.rc-potted b{display:block;margin-bottom:6px;font-size:11px;letter-spacing:.5px;color:#b9d4c3}
.rc-potted-tray{display:flex;align-items:center;gap:4px;min-height:30px;flex-wrap:wrap}
.rc-potted-ball{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:50%;border:2px solid #151515;overflow:hidden;box-shadow:inset 0 0 5px #0008}
.rc-potted-ball.fire{background:#c92720}.rc-potted-ball.chaos{background:#f0ba00}.rc-potted-ball.wrath{background:#111;border-color:#d8d8d8}
.rc-potted-ball img{width:23px;height:23px;object-fit:cover;border-radius:50%}
.rc-potted-empty{font-size:12px;color:#71877a}
@media(max-width:650px){.rc-potted{grid-template-columns:1fr}}

/* Balanced game-strip sizing and new mode selectors */
.game-strip button{min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.15}
.runecrafting-open-button{width:auto!important;min-width:154px!important;max-width:154px!important;padding:11px 12px!important}
.runecrafting-open-button img{flex:0 0 24px!important}
.slayer-option-title{display:block;margin-top:8px;color:#d7e7d8}
.slayer-difficulty-grid,.combat-location-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:7px 0 12px}
.slayer-difficulty-choice,.combat-location-choice{background:#17241b!important;border:2px solid #4c654f!important;color:#eee!important;padding:9px 7px!important;margin:0!important}
.slayer-difficulty-choice small,.combat-location-choice small{display:block;color:#aebbad;margin-top:4px;font-weight:normal}
.slayer-difficulty-choice.selected,.combat-location-choice.selected{border-color:#d5b65c!important;background:#293422!important;box-shadow:0 0 0 2px rgba(213,182,92,.18)}
@media(max-width:650px){.slayer-difficulty-grid,.combat-location-grid{grid-template-columns:1fr}.runecrafting-open-button{min-width:0!important;max-width:none!important;width:auto!important}}
.runecrafting-open-button{font-size:12px!important;white-space:nowrap!important}
\n
/* Unlimited counter and compact navigation fixes */
.stats{min-width:0;overflow:hidden}
.stats #count{
  width:100%;
  min-width:0;
  font-size:clamp(42px,6.1vw,96px)!important;
  line-height:.95;
  letter-spacing:-.045em;
  white-space:normal;
  overflow:hidden;
  text-overflow:clip;
  font-variant-numeric:tabular-nums;
}
.stats .row{gap:12px;align-items:center}
.stats .row b{white-space:nowrap;color:var(--repo)}
.stats ul{margin-top:22px}
.stats li{font-size:clamp(12px,1vw,16px)}
.runecrafting-open-button{
  width:154px!important;
  min-width:154px!important;
  max-width:154px!important;
  padding:9px 8px!important;
  font-size:11px!important;
  line-height:1.05!important;
  white-space:normal!important;
  overflow:visible!important;
  text-align:center!important;
}
.runecrafting-open-button img{width:22px!important;height:22px!important;flex:0 0 22px!important}
@media(max-width:1100px){
  .stats #count{font-size:clamp(48px,10vw,92px)!important}
}
@media(max-width:760px){
  .stats #count{font-size:clamp(46px,17vw,88px)!important}
  .runecrafting-open-button{width:auto!important;min-width:145px!important;max-width:none!important;flex:1 1 145px!important}
}


/* Wise Old Man personal task system */
.wise-task-open-button{position:relative;min-width:132px;padding:8px 12px!important}
.wise-task-open-button img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated;flex:0 0 30px}
.wise-task-open-button span{color:#eee!important;font-size:12px!important;font-weight:900;line-height:1.15}
.wise-task-badge{position:absolute;right:4px;top:3px;display:grid!important;place-items:center;width:18px;height:18px;border-radius:50%;background:#e2bd35;color:#171005!important;font-size:12px!important;border:1px solid #fff3a6}
.wise-task-dialog{width:min(560px,calc(100% - 24px));background:linear-gradient(145deg,#192319,#090e0a)!important}
.wise-task-heading{display:flex;align-items:center;gap:15px;padding-right:28px}.wise-task-heading>img{width:76px;height:76px;object-fit:contain;image-rendering:pixelated}.wise-task-heading h3{margin:0 0 5px}.wise-task-heading p{margin:0}
.wise-wallet{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:10px;margin:16px 0;padding:10px 13px;background:#0b130d;border:1px solid #625622}.wise-wallet img{width:50px;height:42px;object-fit:contain}.wise-wallet span{color:#9eb4a5}.wise-wallet strong{font-size:20px;color:#f2cf42;text-shadow:0 1px #6d5600}
.wise-task-empty,.wise-active-task{padding:16px;background:#0d1710;border:1px solid #3d684c}.wise-task-empty p{margin-top:0}.wise-task-empty button,.wise-active-task button{width:100%;background:#253a29!important;border-color:#82aa60!important;color:#f1e9bf!important}
.wise-scroll-label{display:block;color:#d2b85a;font-size:11px;font-weight:900;letter-spacing:1.4px}.wise-active-task h4{margin:7px 0!important;color:#e7d58d!important}.wise-active-task p{margin:5px 0 12px}.wise-progress{height:14px;border:1px solid #4c604e;background:#050806;overflow:hidden}.wise-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#3b8d5e,#e1c341);transition:width .35s}.wise-task-numbers{display:flex;justify-content:space-between;margin:8px 0 12px;color:#c4d4c8}.wise-task-numbers strong{color:#f0ce3f}.wise-active-task small{display:block;margin-top:9px;color:#9eada1}.wise-active-task.complete{border-color:#d2b63f;box-shadow:inset 0 0 24px #d8b52b18}
.wise-task-actions{display:grid;grid-template-columns:1fr;gap:8px}.wise-task-actions button{margin:0}.wise-skip-task{background:#3b211d!important;border-color:#a86150!important;color:#ffd5c7!important}.wise-skip-task:hover:not(:disabled){background:#553027!important}.wise-skip-task:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.wise-task-open-button{min-width:0}.wise-task-heading>img{width:60px;height:60px}.wise-wallet{grid-template-columns:45px 1fr auto}.wise-wallet img{width:42px}}


/* Single-player Rune Pool and Inferno additions */
.rc-single-panel{border:1px solid #285e47;padding:12px;background:#07130e;margin-bottom:12px}.rc-single-panel>b{display:block;color:#65e5a8;letter-spacing:1px;margin-bottom:9px}.rc-ai-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.rc-ai-choice{min-height:66px}.rc-ai-choice strong,.rc-ai-choice small{display:block}.rc-ai-choice small{margin-top:4px;color:#8fa99c}.rc-ai-choice.selected{border-color:#70e2aa!important;box-shadow:inset 0 0 0 1px #70e2aa;background:#10241b}.rc-online-divider{display:flex;align-items:center;gap:10px;color:#668174;font-size:11px;letter-spacing:1px;margin:10px 0}.rc-online-divider:before,.rc-online-divider:after{content:"";height:1px;background:#214735;flex:1}.inferno-choice{border-color:#7a2e1b!important}.combat-arena:has(+*){} 
@media(max-width:620px){.rc-ai-grid{grid-template-columns:1fr}.combat-location-grid{grid-template-columns:1fr 1fr}}

/* Keep the larger combat setup usable with four locations. */
.combat-location-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#combatIntro{justify-content:flex-start;overflow-y:auto;padding-top:14px;padding-bottom:14px}
#combatIntro .combat-weapon-grid,#combatIntro .combat-location-grid,#combatIntro .combat-difficulty-grid{flex:0 0 auto;width:min(720px,100%)}
@media(max-width:760px){.combat-location-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:480px){.combat-location-grid{grid-template-columns:1fr!important}}


/* Personal bank */
.bank-open-button{min-width:96px;padding:8px 12px!important;gap:7px!important}
.bank-open-button img{width:30px;height:26px;object-fit:contain;flex:0 0 30px}
.bank-open-button span{font-weight:900;color:#eee}
.bank-dialog{width:min(720px,calc(100% - 24px));background:linear-gradient(145deg,#172219,#080d09)!important}
.bank-heading{display:flex;align-items:center;gap:15px;padding-right:28px}.bank-heading>img{width:78px;height:62px;object-fit:contain}.bank-heading h3{margin:0 0 5px}.bank-heading p{margin:0}
.bank-balance-panel{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:16px 0;padding:14px 16px;background:#0a120c;border:1px solid #76631d}.bank-balance-panel span{color:#b9c9bd;font-weight:900;letter-spacing:1px}.bank-balance-panel strong{color:#f2cf42;font-size:25px;text-shadow:0 1px #6d5600}
.bank-section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:15px 0 8px}.bank-section-title b{color:#73dfa8;letter-spacing:1px}.bank-section-title small{color:#8ea296;text-align:right}
.bank-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:10px;background:#07100b;border:1px solid #315640}
.bank-slot{position:relative;min-height:86px;padding:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#18231c,#0c120e);border:1px solid #3a5544;overflow:hidden}.bank-slot.empty{background:#0a0f0c;color:#405548}.bank-slot span{font-size:10px;letter-spacing:.5px}.bank-slot b{text-transform:capitalize;font-size:11px;color:#d9e7dc}.bank-slot strong{position:absolute;right:5px;bottom:3px;color:#f1d35b;font-size:11px}.bank-placeholder{display:grid;place-items:center;width:34px;height:34px;margin-bottom:5px;border-radius:5px;background:#23362a;color:#74dda8;font-weight:900}
.bank-message{display:block;margin-top:10px;color:#9aafa0}
@media(max-width:620px){.bank-grid{grid-template-columns:repeat(4,1fr)}.bank-heading>img{width:58px;height:48px}.bank-section-title{display:block}.bank-section-title small{display:block;text-align:left;margin-top:4px}}

/* Three-character animated desk rotation */
.gamer{transition:transform .25s ease,opacity .25s ease;will-change:transform,opacity;transform-origin:55% 90%}
.gamer .cape,.gamer .wizard-hat,.gamer .hood,.gamer .face-shadow,.gamer .robe-panel{display:none;position:absolute}
.gamer .arm-right{left:188px;top:220px;transform:rotate(17deg);z-index:4;filter:brightness(.94)}
.gamer .arm-left{z-index:6}
.gamer.typing .arm-left{animation:typeLeft .34s steps(2,end) infinite}
.gamer.typing .arm-right{animation:typeRight .34s steps(2,end) infinite reverse}
.gamer.typing .head{animation:deskHead 3.4s ease-in-out infinite}
.gamer.typing .body,.gamer.typing .belly{animation:deskBreathe 2.3s ease-in-out infinite}
.keyboard{overflow:hidden}
.keyboard:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 8%,#ffffff24 9% 11%,transparent 12% 46%,#ffffff1d 47% 50%,transparent 51%);opacity:0}
.scene:has(.gamer.typing) .keyboard:after{animation:keyFlash .34s steps(2,end) infinite}
@keyframes typeLeft{0%{transform:rotate(7deg) translateY(0)}50%{transform:rotate(12deg) translateY(7px)}}
@keyframes typeRight{0%{transform:rotate(17deg) translateY(0)}50%{transform:rotate(12deg) translateY(7px)}}
@keyframes deskHead{0%,92%,100%{transform:translateY(0)}95%{transform:translateY(3px)}}
@keyframes deskBreathe{50%{margin-top:2px}}
@keyframes keyFlash{50%{opacity:1}}

/* Character 1: brown jumper and messy brown hair */
.gamer.character-one .body,.gamer.character-one .belly{background:#76502f}
.gamer.character-one .hairback,.gamer.character-one .curls i{background:#704c2d}
.gamer.character-one .curls i{box-shadow:inset -5px -5px #54351f}
.gamer.character-one .leg{background:#202226}

/* Character 2: pale skin, white outfit and green cape; weapons intentionally omitted */
.gamer.character-two .cape{display:block;left:58px;top:130px;width:210px;height:230px;background:linear-gradient(100deg,#558c39,#83b852 48%,#426f31);clip-path:polygon(16% 0,83% 5%,100% 92%,56% 76%,10% 100%,0 18%);z-index:1;filter:drop-shadow(0 7px 4px #0008)}
.gamer.character-two .hood{display:block;left:135px;top:20px;width:125px;height:136px;background:#e5e0cc;clip-path:polygon(22% 0,78% 0,100% 34%,82% 100%,18% 100%,0 34%);z-index:7;filter:drop-shadow(0 4px 2px #0008)}
.gamer.character-two .head{background:#ead8c8;left:160px;top:54px;width:82px;height:92px;border-radius:38%}
.gamer.character-two .head:after{content:"";position:absolute;left:8px;right:7px;top:37px;height:27px;background:#5b554f;clip-path:polygon(0 20%,100% 0,88% 82%,12% 100%)}
.gamer.character-two .hairback,.gamer.character-two .curls{display:none}
.gamer.character-two .body,.gamer.character-two .belly{background:linear-gradient(90deg,#f2f0e8 0 24%,#d9d7cf 25% 70%,#f2f0e8 71%);border:3px solid #b9b7af}
.gamer.character-two .arm{background:#f2f0e8}
.gamer.character-two .hand{background:#ead8c8}
.gamer.character-two .leg{background:#f2f0e8;border-bottom:13px solid #b9b7af}

/* Character 3: pale-skinned purple wizard with blue hat; staff omitted */
.gamer.character-three .wizard-hat{display:block;left:112px;top:-45px;width:178px;height:126px;background:#3769af;clip-path:polygon(53% 0,74% 50%,100% 73%,68% 77%,57% 100%,41% 78%,5% 85%,28% 55%);z-index:8;filter:drop-shadow(0 6px 2px #0008)}
.gamer.character-three .wizard-hat i{position:absolute;left:46px;bottom:4px;width:105px;height:20px;background:#2d5895;border-radius:50%}
.gamer.character-three .head,.gamer.character-three .ear,.gamer.character-three .nose,.gamer.character-three .neck,.gamer.character-three .hand{background:#ead8c8}.gamer.character-three .arm{background:#7c2797}
.gamer.character-three .hairback,.gamer.character-three .curls{display:none}
.gamer.character-three .body,.gamer.character-three .belly{background:#7c2797;border:10px solid #5e1b79}
.gamer.character-three .body .robe-panel{display:block;left:57px;top:10px;width:72px;height:142px;background:#a84cc0;clip-path:polygon(0 0,100% 0,78% 100%,21% 100%)}
.gamer.character-three .leg{background:#7c2797;border-bottom:14px solid #5e1b79}



/* Character props: each one has a distinct animated item while on desk duty */
.character-prop{display:none;position:absolute;z-index:12;pointer-events:none}
.gamer.character-one .joint-prop{display:block;left:254px;top:226px;width:78px;height:95px;transform:rotate(-9deg)}
.joint-stick{position:absolute;left:7px;top:54px;width:57px;height:9px;border-radius:5px;background:linear-gradient(90deg,#ddd2ad 0 72%,#865a32 73% 88%,#ff6a2a 89% 100%);box-shadow:0 1px 2px #000}
.joint-stick:after{content:"";position:absolute;right:-3px;top:1px;width:7px;height:7px;border-radius:50%;background:#ffb04d;box-shadow:0 0 9px #ff6a2a}
.smoke{position:absolute;left:61px;top:44px;width:14px;height:30px;border:3px solid #ddd;border-color:#ddd transparent transparent #ddd;border-radius:50%;opacity:0;filter:blur(.4px)}
.smoke-one{animation:jointSmoke 2.8s ease-out infinite}.smoke-two{animation:jointSmoke 2.8s .9s ease-out infinite}.smoke-three{animation:jointSmoke 2.8s 1.8s ease-out infinite}
.gamer.character-one.typing .joint-prop{animation:jointHand 4.8s ease-in-out infinite}
@keyframes jointSmoke{0%{opacity:0;transform:translate(0,8px) scale(.55)}20%{opacity:.75}100%{opacity:0;transform:translate(16px,-45px) scale(1.55) rotate(24deg)}}
@keyframes jointHand{0%,68%,100%{transform:rotate(-9deg) translate(0,0)}76%,88%{transform:rotate(-20deg) translate(-26px,-40px)}}

.gamer.character-two .pepper-prop{display:block;left:252px;top:219px;width:40px;height:72px;border-radius:6px 6px 9px 9px;background:linear-gradient(90deg,#7d0712,#d3182a 48%,#720710);border:2px solid #e6b4b7;box-shadow:0 4px 4px #0009;transform:rotate(-8deg);text-align:center}
.pepper-prop .can-top{position:absolute;left:-2px;top:-5px;width:40px;height:9px;border-radius:50%;background:#c9c9c9;border:2px solid #6e6e6e}
.pepper-prop b{position:absolute;left:1px;right:1px;top:19px;color:#fff;font:900 9px/10px Arial,sans-serif;text-shadow:1px 1px #460007;transform:rotate(-4deg)}
.gamer.character-two.typing .pepper-prop{animation:pepperSip 5.2s ease-in-out infinite}
@keyframes pepperSip{0%,62%,100%{transform:rotate(-8deg) translate(0,0)}72%,86%{transform:rotate(-30deg) translate(-34px,-50px)}}

.gamer.character-three .quiche-prop{display:block;left:238px;top:216px;width:86px;height:68px;transform:rotate(-7deg);filter:drop-shadow(0 4px 3px #0009)}
.quiche-crust{position:absolute;left:5px;top:16px;width:75px;height:42px;background:#c98b3b;clip-path:polygon(0 7%,100% 50%,4% 100%);border-radius:8px}
.quiche-filling{position:absolute;left:10px;top:19px;width:62px;height:31px;background:#f0d56b;clip-path:polygon(0 0,100% 50%,0 100%);overflow:hidden}
.quiche-filling i{position:absolute;width:8px;height:8px;border-radius:50%;background:#5c943d}.quiche-filling i:nth-child(1){left:15px;top:5px}.quiche-filling i:nth-child(2){left:31px;top:15px;background:#c96b52}.quiche-filling i:nth-child(3){left:8px;top:20px;background:#8b5b36}
.quiche-prop b{position:absolute;left:5px;top:54px;padding:2px 5px;background:#fff2b8;border:1px solid #7e5e24;color:#3d2a0b;font:900 9px/1 Arial,sans-serif;letter-spacing:.5px;transform:rotate(5deg)}
.gamer.character-three.typing .quiche-prop{animation:quicheBite 4.6s ease-in-out infinite}
@keyframes quicheBite{0%,58%,100%{transform:rotate(-7deg) translate(0,0)}68%,82%{transform:rotate(-18deg) translate(-34px,-47px)}}

/* Stand, walk out, swap, walk in, and sit */
.gamer.leaving{animation:characterLeave 2.3s ease-in forwards}
.gamer.entering{animation:characterEnter 2.3s ease-out both}
.gamer.leaving .leg.one,.gamer.entering .leg.one{animation:walkLegA .34s ease-in-out infinite alternate}
.gamer.leaving .leg.two,.gamer.entering .leg.two{animation:walkLegB .34s ease-in-out infinite alternate}
.gamer.leaving .arm,.gamer.entering .arm{animation:walkArm .34s ease-in-out infinite alternate}
@keyframes characterLeave{0%{transform:translate(0,0) rotate(0);opacity:1}18%{transform:translate(-15px,-62px) rotate(-2deg)}100%{transform:translate(-620px,-62px) rotate(-2deg);opacity:0}}
@keyframes characterEnter{0%{transform:translate(620px,-62px) rotate(2deg);opacity:0}82%{transform:translate(15px,-62px) rotate(2deg);opacity:1}100%{transform:translate(0,0) rotate(0);opacity:1}}
@keyframes walkLegA{to{transform:rotate(17deg) translateY(-8px)}}
@keyframes walkLegB{to{transform:rotate(-17deg) translateY(8px)}}
@keyframes walkArm{to{transform:rotate(-12deg) translateY(-5px)}}
@media(max-width:760px){@keyframes characterLeave{0%{transform:scale(.84) translate(0,0)}18%{transform:scale(.84) translate(-15px,-62px)}100%{transform:scale(.84) translate(-620px,-62px);opacity:0}}@keyframes characterEnter{0%{transform:scale(.84) translate(620px,-62px);opacity:0}82%{transform:scale(.84) translate(15px,-62px);opacity:1}100%{transform:scale(.84) translate(0,0);opacity:1}}}

/* 2026-07 prop/arm correction: props are mounted inside the right hand so they follow the full arm. */
.gamer .arm-right{transform-origin:8px 50%!important}
.gamer .arm-right .hand{overflow:visible}
.gamer .arm-right .character-prop{left:auto;top:auto}

/* Character 1 closer to the supplied reference: pale face, thick messy curls and brown jumper. */
.gamer.character-one .head,.gamer.character-one .ear,.gamer.character-one .nose,.gamer.character-one .neck,.gamer.character-one .hand{background:#d8ad8d}
.gamer.character-one .hairback{display:block;left:132px;top:25px;width:124px;height:102px;background:#6a472d;border-radius:50% 48% 40% 38%;z-index:3}
.gamer.character-one .curls{display:block;left:124px;top:13px;width:145px;height:86px;z-index:7}
.gamer.character-one .curls i{display:block;width:43px;height:43px;background:#795337;box-shadow:inset -6px -6px #59391f,0 2px 2px #0006}
.gamer.character-one .curls i:nth-child(1){left:0;top:27px}.gamer.character-one .curls i:nth-child(2){left:22px;top:4px}.gamer.character-one .curls i:nth-child(3){left:51px;top:0}.gamer.character-one .curls i:nth-child(4){left:82px;top:5px}.gamer.character-one .curls i:nth-child(5){left:105px;top:28px}.gamer.character-one .curls i:nth-child(6){left:48px;top:32px}
.gamer.character-one .body,.gamer.character-one .belly{background:#725033;border:0}
.gamer.character-one .arm{background:#725033}
.gamer.character-one .arm .hand{background:#d8ad8d}

/* Local prop positions inside the right hand. */
.gamer.character-one .joint-prop{left:25px;top:3px;width:82px;height:72px;transform:rotate(-12deg)}
.gamer.character-one .joint-stick{left:0;top:24px}
.gamer.character-one .smoke{left:56px;top:12px}
.gamer.character-two .pepper-prop{left:17px;top:-16px;width:40px;height:72px;transform:rotate(-10deg)}
.gamer.character-three .quiche-prop{left:17px;top:-12px;width:86px;height:68px;transform:rotate(-8deg)}

/* The whole right arm now lifts to the mouth; the hand and item travel with it. */
.gamer.character-one.typing .arm-right{animation:jointArmLift 4.8s ease-in-out infinite!important}
.gamer.character-two.typing .arm-right{animation:pepperArmLift 5.2s ease-in-out infinite!important}
.gamer.character-three.typing .arm-right{animation:quicheArmLift 4.6s ease-in-out infinite!important}
.gamer.character-one.typing .joint-prop,.gamer.character-two.typing .pepper-prop,.gamer.character-three.typing .quiche-prop{animation:none!important}

@keyframes jointArmLift{
  0%,64%,100%{transform:rotate(17deg) translate(0,0)}
  72%{transform:rotate(-34deg) translate(-42px,-45px)}
  78%,87%{transform:rotate(-52deg) translate(-62px,-75px)}
  94%{transform:rotate(-8deg) translate(-20px,-24px)}
}
@keyframes pepperArmLift{
  0%,58%,100%{transform:rotate(17deg) translate(0,0)}
  67%{transform:rotate(-28deg) translate(-38px,-45px)}
  74%,86%{transform:rotate(-58deg) translate(-69px,-86px)}
  93%{transform:rotate(-4deg) translate(-20px,-28px)}
}
@keyframes quicheArmLift{
  0%,54%,100%{transform:rotate(17deg) translate(0,0)}
  64%{transform:rotate(-26deg) translate(-40px,-45px)}
  72%,84%{transform:rotate(-55deg) translate(-72px,-82px)}
  92%{transform:rotate(-5deg) translate(-20px,-26px)}
}


/* 2026-07-29 final movement correction */
/* Scruffy medium-length brown hair rather than round curls. */
.gamer.character-one .curls{display:none!important}
.gamer.character-one .hairback{
  display:block;left:128px;top:18px;width:139px;height:112px;
  background:#704b2e;
  border-radius:42% 50% 38% 45%;
  clip-path:polygon(4% 39%,13% 19%,25% 24%,32% 5%,43% 17%,55% 0,62% 18%,76% 8%,79% 25%,96% 21%,88% 43%,100% 54%,84% 61%,89% 81%,69% 75%,61% 100%,48% 79%,32% 94%,27% 72%,9% 78%,16% 57%,0 52%);
  box-shadow:inset -10px -8px #51321f;
  z-index:7;
}
.gamer.character-one .hairback:before,.gamer.character-one .hairback:after{
  content:"";position:absolute;background:#704b2e;filter:brightness(.92)
}
.gamer.character-one .hairback:before{left:18px;top:57px;width:34px;height:58px;transform:rotate(13deg);border-radius:40% 30% 55% 45%}
.gamer.character-one .hairback:after{right:13px;top:52px;width:31px;height:61px;transform:rotate(-10deg);border-radius:35% 45% 45% 55%}

/* Let keyframe transforms control the limbs. */
.gamer .arm,.gamer .leg{will-change:transform,left,top,width,height}
.gamer.typing .arm-right{transform-origin:8px 50%!important}

/* Hold each object inside the palm instead of beyond the fingertips. */
.gamer.character-one .joint-prop{left:18px;top:0;width:70px;height:58px}
.gamer.character-one .joint-stick{left:3px;top:21px;width:52px}
.gamer.character-one .smoke{left:52px;top:8px}
.gamer.character-two .pepper-prop{left:3px;top:-24px}
.gamer.character-three .quiche-prop{left:0;top:-19px}

/* Full upper-arm lift. The prop follows because it lives inside .hand. */
.gamer.character-one.typing .arm-right{animation:jointArmLiftFixed 4.8s ease-in-out infinite!important}
.gamer.character-two.typing .arm-right{animation:pepperArmLiftFixed 5.2s ease-in-out infinite!important}
.gamer.character-three.typing .arm-right{animation:quicheArmLiftFixed 4.6s ease-in-out infinite!important}
@keyframes jointArmLiftFixed{
  0%,62%,100%{transform:rotate(17deg) translate(0,0)}
  70%{transform:rotate(-18deg) translate(-20px,-28px)}
  77%,88%{transform:rotate(-47deg) translate(-55px,-76px)}
  94%{transform:rotate(-6deg) translate(-12px,-17px)}
}
@keyframes pepperArmLiftFixed{
  0%,57%,100%{transform:rotate(17deg) translate(0,0)}
  66%{transform:rotate(-18deg) translate(-22px,-30px)}
  74%,87%{transform:rotate(-54deg) translate(-62px,-88px)}
  94%{transform:rotate(-5deg) translate(-13px,-20px)}
}
@keyframes quicheArmLiftFixed{
  0%,53%,100%{transform:rotate(17deg) translate(0,0)}
  63%{transform:rotate(-17deg) translate(-23px,-31px)}
  72%,85%{transform:rotate(-52deg) translate(-64px,-84px)}
  93%{transform:rotate(-5deg) translate(-14px,-20px)}
}

/* A visible stand-up phase followed by alternating steps. */
.gamer.leaving{animation:characterStandAndLeave 3.2s linear forwards!important}
.gamer.entering{animation:characterWalkInAndSit 3.2s linear both!important}
.gamer.leaving .character-prop,.gamer.entering .character-prop{opacity:0}
.gamer.leaving .body,.gamer.leaving .belly,.gamer.entering .body,.gamer.entering .belly{animation:none!important}
.gamer.leaving .leg,.gamer.entering .leg{
  width:72px;height:125px;top:264px;border-radius:31px 31px 15px 15px;transform-origin:50% 8px;
}
.gamer.leaving .leg.one,.gamer.entering .leg.one{left:137px;animation:properWalkLegA .42s ease-in-out infinite alternate!important}
.gamer.leaving .leg.two,.gamer.entering .leg.two{left:202px;animation:properWalkLegB .42s ease-in-out infinite alternate!important}
.gamer.leaving .arm-left,.gamer.entering .arm-left{animation:properWalkArmA .42s ease-in-out infinite alternate!important}
.gamer.leaving .arm-right,.gamer.entering .arm-right{animation:properWalkArmB .42s ease-in-out infinite alternate!important}
@keyframes properWalkLegA{from{transform:rotate(17deg) translateY(-4px)}to{transform:rotate(-20deg) translateY(5px)}}
@keyframes properWalkLegB{from{transform:rotate(-20deg) translateY(5px)}to{transform:rotate(17deg) translateY(-4px)}}
@keyframes properWalkArmA{from{transform:rotate(22deg)}to{transform:rotate(-18deg)}}
@keyframes properWalkArmB{from{transform:rotate(-18deg)}to{transform:rotate(22deg)}}
@keyframes characterStandAndLeave{
  0%{transform:translate(0,0);opacity:1}
  16%{transform:translate(0,-72px);opacity:1}
  24%{transform:translate(-25px,-72px);opacity:1}
  92%{transform:translate(-570px,-72px);opacity:1}
  100%{transform:translate(-650px,-72px);opacity:0}
}
@keyframes characterWalkInAndSit{
  0%{transform:translate(650px,-72px);opacity:0}
  8%{transform:translate(570px,-72px);opacity:1}
  76%{transform:translate(25px,-72px);opacity:1}
  84%{transform:translate(0,-72px);opacity:1}
  100%{transform:translate(0,0);opacity:1}
}
@media(max-width:760px){
  @keyframes characterStandAndLeave{
    0%{transform:scale(.84) translate(0,0);opacity:1}
    16%{transform:scale(.84) translate(0,-72px);opacity:1}
    24%{transform:scale(.84) translate(-25px,-72px);opacity:1}
    92%{transform:scale(.84) translate(-570px,-72px);opacity:1}
    100%{transform:scale(.84) translate(-650px,-72px);opacity:0}
  }
  @keyframes characterWalkInAndSit{
    0%{transform:scale(.84) translate(650px,-72px);opacity:0}
    8%{transform:scale(.84) translate(570px,-72px);opacity:1}
    76%{transform:scale(.84) translate(25px,-72px);opacity:1}
    84%{transform:scale(.84) translate(0,-72px);opacity:1}
    100%{transform:scale(.84) translate(0,0);opacity:1}
  }
}

/* 2026-07-29: keep the spare keyboard arm still and stop the Dr Pepper can clipping through character 2's head. */
.gamer.typing .arm-left{
  animation:none!important;
  transform:rotate(10deg) scaleX(calc(1 + var(--fat)*.14))!important;
}

/* Keep the can seated in the palm with its rim facing the mouth. */
.gamer.character-two .pepper-prop{
  left:8px!important;
  top:-20px!important;
  transform:rotate(5deg)!important;
  transform-origin:50% 80%;
}

/* Raise the whole prop arm to the lips, but keep it in front of the face rather than passing through the head. */
.gamer.character-two.typing .arm-right{
  animation:pepperArmLiftNoClip 5.2s ease-in-out infinite!important;
}
@keyframes pepperArmLiftNoClip{
  0%,57%,100%{transform:rotate(17deg) translate(0,0)}
  66%{transform:rotate(-10deg) translate(-14px,-25px)}
  74%,87%{transform:rotate(-34deg) translate(-36px,-62px)}
  94%{transform:rotate(-2deg) translate(-9px,-16px)}
}

/* Character-specific games on the office monitor */
.game-screen{background:#111!important;color:#fff;font-family:Arial,sans-serif}
.monitor-game{position:absolute;inset:0;display:none;overflow:hidden}
.game-screen.monitor-toa .monitor-game-toa,.game-screen.monitor-stellaris .monitor-game-stellaris,.game-screen.monitor-isaac .monitor-game-isaac{display:block}

/* Character 1 — Old School RuneScape: Tombs of Amascut */
.monitor-game-toa{background:linear-gradient(#2a1913 0 13%,#81653f 13% 77%,#3d291d 77%);image-rendering:pixelated}
.game-title{height:25px;padding:5px 7px;background:#17110d;color:#f1cb6f;font:900 11px/15px monospace;letter-spacing:1px;border-bottom:2px solid #a77c39}
.toa-room{position:absolute;left:8px;right:72px;top:31px;bottom:30px;background:repeating-linear-gradient(45deg,#765d3c 0 12px,#6b5336 12px 24px);border:4px solid #b08a4b;box-shadow:inset 0 0 24px #180b08}
.toa-room:before{content:"";position:absolute;inset:17% 24%;border:5px solid #d5ad5a;transform:rotate(45deg);background:#5b3d2a}
.toa-pillar{position:absolute;width:18px;height:42px;background:linear-gradient(90deg,#4e3424,#c69b54,#503624);border:2px solid #2b1811}
.toa-pillar.p-a{left:12px;top:14px}.toa-pillar.p-b{right:12px;bottom:12px}
.toa-boss{position:absolute;left:54%;top:34%;width:38px;height:44px;background:#6b205f;clip-path:polygon(50% 0,70% 20%,100% 38%,80% 100%,20% 100%,0 38%,30% 20%);box-shadow:0 0 12px #d44aca}
.toa-player{position:absolute;left:31%;top:60%;width:12px;height:21px;background:#d9d9d9;box-shadow:0 -8px #4e9d69,0 0 0 2px #292020}
.toa-hit{position:absolute;left:57%;top:24%;font:900 12px monospace;color:#ff3a34;text-shadow:1px 1px #000;animation:toaHit 1.7s ease-out infinite}
.toa-inventory{position:absolute;right:5px;top:32px;width:61px;bottom:30px;background:#514332;border:3px solid #1d1813;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;padding:4px}
.toa-inventory i{background:radial-gradient(circle,#e75761 0 35%,#8c1721 38% 60%,#2c221b 63%);border:1px solid #82705d}
.toa-inventory i:nth-child(2n){background:radial-gradient(circle,#63b7e9 0 35%,#195c89 38% 60%,#2c221b 63%)}
.game-status{position:absolute;left:0;right:0;bottom:0;height:25px;padding:6px;background:#19120e;color:#f0d59d;font:900 9px monospace;letter-spacing:.5px}
@keyframes toaHit{0%{opacity:0;transform:translateY(8px)}25%{opacity:1}100%{opacity:0;transform:translateY(-18px)}}

/* Character 2 — Stellaris */
.monitor-game-stellaris{background:radial-gradient(circle at 57% 52%,#253767 0,#111a3e 25%,#020713 65%);color:#9fe6ff}
.monitor-game-stellaris:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#fff 0 1px,transparent 1.5px),radial-gradient(#72baff 0 1px,transparent 1.5px);background-size:27px 23px,41px 37px;background-position:2px 5px,18px 13px;opacity:.7}
.stellaris-top{position:absolute;z-index:3;left:0;right:0;top:0;height:27px;padding:5px 7px;background:#08101ddf;border-bottom:1px solid #2d6b85;font:9px monospace}.stellaris-top b{font-size:12px;color:#d6f5ff;letter-spacing:2px}.stellaris-top span{float:right;color:#f0d575}
.galaxy{position:absolute;left:4px;right:4px;top:28px;bottom:35px;overflow:hidden}
.orbit{position:absolute;border:1px solid #63a6d966;border-radius:50%;transform:rotate(-22deg)}.o1{width:170px;height:70px;left:28px;top:33px}.o2{width:120px;height:45px;left:54px;top:47px}.o3{width:210px;height:95px;left:7px;top:20px}
.star{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 13px 4px #78b9ff}.s1{left:48%;top:48%;width:8px;height:8px}.s2{left:20%;top:28%;width:4px;height:4px}.s3{right:16%;bottom:20%;width:5px;height:5px;background:#ffb95e;box-shadow:0 0 10px 3px #ff7836}
.fleet{position:absolute;color:#6affdc;font-style:normal;font:900 12px monospace;text-shadow:0 0 7px #21ffd3;animation:fleetMove 4s linear infinite}.f1{left:22px;top:55px}.f2{right:28px;top:89px;animation-delay:-2s}
.stellaris-panel{position:absolute;z-index:3;left:0;right:0;bottom:0;height:36px;padding:5px 8px;background:#08101dee;border-top:1px solid #387b9a;color:#b8e7f7;font:900 9px monospace}.stellaris-panel span{font-weight:400;color:#75b7cc}
@keyframes fleetMove{50%{transform:translate(28px,-10px) rotate(-8deg)}}

/* Character 3 — The Binding of Isaac */
.monitor-game-isaac{background:#241c1a;color:#dac5b3}
.isaac-title{height:25px;background:#17110f;padding:5px 7px;color:#d6b79f;font:900 10px/15px Georgia,serif;letter-spacing:1px;border-bottom:2px solid #594039}
.isaac-room{position:absolute;left:8px;right:8px;top:33px;bottom:29px;background:radial-gradient(ellipse at center,#71594c 0,#4d3a32 67%,#251a17 68%);border:5px solid #2b1d19;box-shadow:inset 0 0 24px #120b09}
.isaac-room:before,.isaac-room:after{content:"";position:absolute;background:#241815}.isaac-room:before{left:42%;top:-6px;width:16%;height:13px}.isaac-room:after{left:42%;bottom:-6px;width:16%;height:13px}
.isaac-heart{position:absolute;left:6px;top:5px;color:#e22d38;font:900 13px monospace;font-style:normal;text-shadow:1px 1px #000}
.isaac-boy{position:absolute;left:44%;top:48%;width:28px;height:31px;background:#e8c5ac;border-radius:48% 48% 42% 42%;box-shadow:0 10px 0 -5px #bd8c76}
.isaac-boy:before,.isaac-boy:after{content:"";position:absolute;top:10px;width:5px;height:8px;background:#15100f;border-radius:50%;box-shadow:0 7px 0 -1px #78c9ec}.isaac-boy:before{left:6px}.isaac-boy:after{right:6px}.isaac-boy b{position:absolute;left:10px;bottom:4px;width:8px;height:4px;border-bottom:2px solid #6f423b;border-radius:50%}
.isaac-tear{position:absolute;width:7px;height:7px;border-radius:50% 50% 55% 55%;background:#7fcdf2;box-shadow:0 0 4px #bdeaff;animation:tearFly 1.2s linear infinite}.t1{left:53%;top:53%}.t2{left:38%;top:55%;animation-delay:-.6s;transform:rotate(180deg)}
.isaac-enemy{position:absolute;width:22px;height:20px;background:#8f4540;border-radius:45%;box-shadow:inset 0 -5px #5f2523}.isaac-enemy:before,.isaac-enemy:after{content:"";position:absolute;top:6px;width:4px;height:4px;background:#111;border-radius:50%}.isaac-enemy:before{left:5px}.isaac-enemy:after{right:5px}.e1{left:17%;top:27%}.e2{right:16%;bottom:21%;transform:scale(.8)}
.isaac-floor{position:absolute;left:0;right:0;bottom:0;height:24px;padding:6px 8px;background:#17110f;color:#c6a98f;font:900 9px monospace}
@keyframes tearFly{to{transform:translateX(75px);opacity:.1}}

.combat-difficulty-choice.insane-choice{border-color:#9f2f45;background:#2a1118}.combat-difficulty-choice.insane-choice.selected{border-color:#ff496a;background:#46131f;box-shadow:0 0 18px rgba(255,73,106,.28)}
@media(max-width:850px){.combat-difficulty-grid{grid-template-columns:repeat(2,1fr)}}

/* Gnome Ball agility game */
.agility-game-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.agility-game-choice{margin:0!important;padding:12px!important;text-align:left;background:#11150f!important;border:1px solid #49533a!important;color:#b8c1ad!important}.agility-game-choice strong,.agility-game-choice small{display:block}.agility-game-choice small{margin-top:4px;color:#7f8c76;font-size:11px}.agility-game-choice.selected{border-color:#d1ae58!important;background:#201b0e!important;color:#f0d68d!important;box-shadow:inset 0 0 0 1px #6e5623}.agility-game-panel.hidden{display:none!important}.gnomeball-stats{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:12px 0;color:#aaa;font-size:13px}.gnomeball-stats b{color:#e5cf92}.gnomeball-wrap{position:relative;border:2px solid #654f29;background:#07130a;overflow:hidden}.gnomeball-wrap canvas{display:block;width:100%;height:auto;touch-action:none;cursor:grab}.gnomeball-wrap canvas.aiming{cursor:grabbing}.gnomeball-wrap #gnomeBallStart{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:auto;margin:0;padding:15px 24px;background:#1b160d;border-color:#9c783e;color:#f0d99b;z-index:3}.gnomeball-wrap #gnomeBallStart.hidden{display:none}.gnomeball-stats #gnomeBallLives{letter-spacing:3px;color:#e0a64d}@media(max-width:600px){.agility-game-picker{grid-template-columns:1fr}.gnomeball-stats{font-size:12px}}


/* Grand Exchange shop */
.ge-open-button{min-width:132px;padding:8px 11px!important;gap:7px!important}.ge-button-icon{display:grid;place-items:center;width:30px;height:30px;border:2px solid #b9974d;background:linear-gradient(#61502d,#211a0d);color:#f4d980;font-size:11px;font-weight:1000;border-radius:50%;flex:0 0 30px}.ge-open-button>span:last-child{font-weight:900;line-height:1.05}.ge-dialog{width:min(780px,calc(100% - 22px));background:linear-gradient(145deg,#29251b,#0d0c08)!important;border-color:#98783a!important}.ge-heading{display:flex;align-items:center;gap:14px;border-bottom:1px solid #725d31;padding:0 42px 13px 0}.ge-heading h3{margin:0;color:#e5c66f}.ge-heading p{margin:4px 0 0;color:#c8bea4}.ge-logo{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;border:4px double #c6a151;background:radial-gradient(circle,#705d32,#21190b 72%);color:#ffe49a;font-weight:1000;font-size:20px;flex:0 0 62px}.ge-wallet{display:flex;align-items:center;gap:9px;margin:13px 0;padding:9px 12px;background:#11150e;border:1px solid #6e603b}.ge-wallet img{width:38px;height:31px;object-fit:contain}.ge-wallet span{font-size:11px;letter-spacing:1px;color:#b9ad8e}.ge-wallet strong{margin-left:auto;color:#f3d36f;font-size:19px}.ge-search-label{display:block;color:#d9c27b;font-weight:900;font-size:11px;letter-spacing:1px;margin-bottom:5px}.ge-search-row{display:grid;grid-template-columns:1fr auto;gap:7px;margin-bottom:12px}.ge-search-row input{min-width:0;background:#090b08;border:1px solid #786538;color:#eee;padding:11px}.ge-search-row button{min-width:105px}.ge-market-frame{border:2px solid #7f6938;background:#080a07;padding:7px}.ge-column-head{display:grid;grid-template-columns:1fr 100px 74px;gap:8px;padding:6px 8px 8px 66px;color:#a99d7f;font-size:10px;letter-spacing:1px;border-bottom:1px solid #4c4228}.ge-results{min-height:230px;max-height:390px;overflow:auto}.ge-item-row{display:grid;grid-template-columns:50px minmax(0,1fr) 100px 74px;gap:8px;align-items:center;padding:9px 7px;border-bottom:1px solid #302b1e;background:linear-gradient(90deg,#14160f,#0c0d09)}.ge-item-row:hover{background:#191b12}.ge-item-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid #62532f;background:#080907;color:#cbb36f;font-weight:900}.ge-item-icon img{max-width:40px;max-height:40px;object-fit:contain}.ge-item-info{min-width:0}.ge-item-info b,.ge-item-info small{display:block}.ge-item-info b{color:#eee}.ge-item-info small{color:#9e9a8b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.ge-price{display:flex;align-items:center;justify-content:flex-end;gap:4px;color:#efd36f}.ge-price img{width:23px;height:19px;object-fit:contain}.ge-buy{padding:8px 7px!important;min-width:0!important}.ge-buy:disabled{opacity:.42}.ge-empty{min-height:225px;display:grid;place-content:center;text-align:center;gap:8px;color:#a9a28e;padding:22px}.ge-empty b{color:#d8c27f}.ge-message{display:block;color:#d8c27f;text-align:center;margin-top:9px}@media(max-width:640px){.ge-item-row{grid-template-columns:42px minmax(0,1fr) 70px}.ge-item-row .ge-buy{grid-column:2/4}.ge-column-head{display:none}.ge-heading p{display:none}.ge-open-button{min-width:105px}.ge-open-button>span:last-child{font-size:10px}}


/* Grand Exchange pets and public roaming followers */
.bank-pet-panel{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;border:1px solid #2c6249;background:#07140e;padding:10px 12px;margin:10px 0}.bank-pet-panel small{display:block;color:#91a99d;margin-top:3px}.bank-pet-panel strong{display:flex;align-items:center;gap:7px;color:#76e4ac}.bank-pet-panel strong img{width:38px;height:38px;object-fit:contain;image-rendering:pixelated}.bank-pet-panel button{padding:8px 10px}.pet-bank-slot{min-height:155px!important;position:relative}.pet-bank-slot>img{width:58px;height:58px;object-fit:contain;image-rendering:pixelated}.pet-bank-slot small{font-size:10px;color:#8fa99c;line-height:1.2}.pet-bank-slot button{font-size:10px;padding:5px 7px;margin-top:5px}.pet-bank-slot.active-pet{border-color:#70e2aa!important;box-shadow:inset 0 0 0 1px #70e2aa}.roaming-pets{position:fixed;inset:0;z-index:999;pointer-events:none;overflow:hidden}.roaming-pet{position:absolute;left:0;top:0;width:72px;height:86px;transition-property:transform;transition-timing-function:linear;will-change:transform}.roaming-pet img{width:64px;height:64px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 4px 3px rgba(0,0,0,.65));animation:petBob .72s ease-in-out infinite alternate}.roaming-pet span{display:block;white-space:nowrap;width:max-content;max-width:150px;overflow:hidden;text-overflow:ellipsis;background:rgba(2,12,8,.82);border:1px solid #286348;color:#dff9eb;font:700 9px/1.2 Arial,sans-serif;padding:3px 5px;transform:translateX(-25%)}@keyframes petBob{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-5px) rotate(2deg)}}
@media(max-width:650px){.bank-pet-panel{grid-template-columns:1fr}.roaming-pet{transform:scale(.8)}}


/* Pet naming and free starter cat */
.pet-name-row{display:grid;grid-template-columns:1fr auto;gap:4px;width:100%;margin-top:5px}.pet-name-input{min-width:0;width:100%;padding:5px 6px!important;font-size:10px!important;border:1px solid #315f49!important;background:#07110d!important;color:#e7fff2!important}.pet-name-save{padding:5px 7px!important;margin:0!important;font-size:9px!important}.roaming-pet{height:100px}.roaming-pet .pet-label{display:flex;flex-direction:column;align-items:center;width:max-content;max-width:160px;background:rgba(2,12,8,.88);border:1px solid #286348;padding:3px 6px;transform:translateX(-28%);margin-bottom:2px;color:#dff9eb;font-family:Arial,sans-serif;text-align:center}.roaming-pet .pet-label b{font-size:11px;line-height:1.1;color:#fff6a8}.roaming-pet .pet-label small{font-size:8px;line-height:1.1;color:#91cdae}.roaming-pet>span{display:none}


/* 2026-07-29 roaming pet movement fix */
/* The parent only translates. Labels never inherit the sprite's facing flip. */
.roaming-pet{
  width:78px;
  height:104px;
  transition-property:transform;
  transition-timing-function:linear;
  transform-origin:center bottom;
}
.roaming-pet .pet-label{
  position:relative;
  z-index:2;
  transform:translateX(-24%)!important;
  direction:ltr;
  unicode-bidi:plaintext;
}
.roaming-pet .pet-label b,
.roaming-pet .pet-label small{
  transform:none!important;
  direction:ltr;
  unicode-bidi:plaintext;
}
.roaming-pet .pet-sprite{
  --pet-facing:1;
  width:68px;
  height:68px;
  display:grid;
  place-items:end center;
  transform:scaleX(var(--pet-facing));
  transform-origin:center bottom;
  will-change:opacity, transform;
}
.roaming-pet .pet-sprite img{
  width:64px;
  height:64px;
  object-fit:contain;
  image-rendering:pixelated;
  filter:drop-shadow(0 4px 3px rgba(0,0,0,.65));
  animation:none!important;
  transform-origin:center bottom;
}
.roaming-pet.pet-is-walking .pet-sprite img{
  animation:petNaturalSteps .34s steps(2,end) infinite!important;
}
@keyframes petNaturalSteps{
  0%{transform:translateY(0) scaleY(1) scaleX(1)}
  50%{transform:translateY(-3px) scaleY(.96) scaleX(1.025)}
  100%{transform:translateY(0) scaleY(1) scaleX(1)}
}
/* Small ground shadow makes the pet look planted rather than hovering. */
.roaming-pet .pet-sprite:after{
  content:"";
  grid-area:1/1;
  align-self:end;
  width:42px;
  height:8px;
  border-radius:50%;
  background:rgba(0,0,0,.28);
  filter:blur(1px);
  transform:translateY(3px);
  z-index:-1;
}
@media(max-width:650px){
  .roaming-pet{width:66px;height:90px}
  .roaming-pet .pet-sprite{width:58px;height:58px}
  .roaming-pet .pet-sprite img{width:54px;height:54px}
}
/* 2026-07-29 navigation sizing and enabled-state fix */
.game-strip{
  width:min(1510px,calc(100% - 24px));
  max-width:none;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:minmax(190px,1.55fr) repeat(5,minmax(112px,1fr));
  align-items:stretch;
  gap:9px;
  padding:12px;
}
.game-strip>div{
  min-width:0;
  margin:0;
  justify-content:center;
  padding:0 8px;
}
.game-strip>div span{
  line-height:1.25;
  overflow-wrap:anywhere;
}
.game-strip button{
  width:100%;
  min-width:0!important;
  min-height:58px;
  padding:8px 9px!important;
  box-sizing:border-box;
  white-space:normal;
  overflow:hidden;
  text-align:center;
  font-size:13px;
}
.game-strip button img,
.game-strip button>span:first-child{
  flex:0 0 auto;
}
.game-strip .ge-open-button,
  opacity:1!important;
  filter:none!important;
  color:#eee!important;
  background:#111!important;
  border-color:#376b51!important;
  cursor:pointer!important;
}
.game-strip .ge-open-button>span:last-child,
  color:#eee!important;
  font-size:13px!important;
}
.game-strip .ge-open-button:hover,
  background:#14221a!important;
  border-color:#63d39a!important;
}
@media(max-width:1250px){
  .game-strip{grid-template-columns:minmax(190px,1.4fr) repeat(4,minmax(110px,1fr))}
}
@media(max-width:980px){
  .game-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .game-strip>div{grid-column:1/-1;padding:3px 4px 7px}
}
@media(max-width:620px){
  .game-strip{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto 14px}
  .game-strip button{font-size:12px;min-height:54px;padding:7px!important}
}
@media(max-width:390px){
  .game-strip{grid-template-columns:1fr}
}


/* =========================================================
   ADVENTURE MMORPG THEME — visual redesign only
   ========================================================= */
:root{
  --adv-ink:#2b1b0f;
  --adv-deep:#17100b;
  --adv-stone:#30271f;
  --adv-stone-2:#211a14;
  --adv-wood:#5a351d;
  --adv-wood-dark:#2d180d;
  --adv-gold:#d7ad55;
  --adv-gold-light:#f2d88a;
  --adv-parchment:#d8c7a0;
  --adv-parchment-light:#eee0ba;
  --adv-parchment-dark:#a98d5e;
  --adv-red:#8e3023;
  --adv-green:#526c3f;
  --adv-blue:#415d73;
}
*{box-sizing:border-box}
html{background:#16100b}
body{
  color:var(--adv-parchment-light)!important;
  background:
    radial-gradient(circle at 20% 0%,rgba(132,88,40,.18),transparent 38%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 48px),
    repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 2px,transparent 2px 34px),
    linear-gradient(#261c14,#15100c 55%,#21160f)!important;
  font-family:"Trebuchet MS",Georgia,serif!important;
  letter-spacing:.01em;
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:repeating-linear-gradient(135deg,rgba(255,255,255,.015) 0 2px,transparent 2px 8px);
  opacity:.35;
}
header{
  background:
    linear-gradient(rgba(30,14,6,.15),rgba(20,8,3,.5)),
    repeating-linear-gradient(90deg,#6a3f21 0 80px,#5b331b 80px 160px)!important;
  border-top:4px solid #9c6939!important;
  border-bottom:6px ridge #2b170c!important;
  box-shadow:0 7px 18px rgba(0,0,0,.55),inset 0 1px #c38b4c!important;
  padding:18px 26px!important;
}
.logo{
  color:#f4e4bd!important;
  font-family:Georgia,"Trebuchet MS",serif!important;
  font-weight:900!important;
  letter-spacing:3px!important;
  text-shadow:0 3px #291207,2px 0 #291207,-2px 0 #291207!important;
}
.logo span{color:var(--adv-gold-light)!important}
.tag{color:#dfc995!important;font-style:italic}
.character-button,.character-summary{
  border:3px ridge #c39a50!important;
  background:linear-gradient(#77502d,#422512)!important;
  color:#ffe9ad!important;
  box-shadow:inset 0 0 0 2px #2a160b,0 3px 0 #140a05!important;
}
main{gap:14px!important;max-width:1260px!important}
.card,.scene,footer,.game-strip{
  border:4px ridge #8e6b3c!important;
  box-shadow:inset 0 0 0 2px #2b1a0e,0 6px 15px rgba(0,0,0,.42)!important;
}
.card{
  color:var(--adv-ink)!important;
  background:
    linear-gradient(rgba(255,248,220,.11),rgba(93,59,26,.08)),
    repeating-linear-gradient(0deg,rgba(88,57,27,.035) 0 1px,transparent 1px 5px),
    var(--adv-parchment)!important;
}
.card h2{
  color:#6e2c1f!important;
  border-bottom:2px solid #a18455!important;
  text-shadow:0 1px #f7e7be!important;
}
.stats #count{color:#392518!important;text-shadow:1px 2px #f3dfad!important}
.stats p,.stats .row,.stats li,.actions small{color:#4a3422!important}
.stats .bar{background:#4a3425!important;border:2px inset #8b724c!important}
.stats .bar i{background:linear-gradient(90deg,#8c3d2d,#d39a3b,#6f873e)!important}
.stats ul li{border-color:#aa9165!important}
.scene{
  background:
    radial-gradient(circle at 72% 24%,rgba(235,194,99,.08),transparent 24%),
    linear-gradient(#26211b,#191713)!important;
  border-color:#72604b!important;
}
.poster{
  background:linear-gradient(#d8bd78,#9a7540)!important;
  color:#322011!important;
  border:3px ridge #6e4825!important;
  box-shadow:0 4px 0 #130c07!important;
  font-family:Georgia,serif!important;
}
.monitor{filter:sepia(.12) saturate(.9)}
.level{
  color:#f3d47e!important;
  background:rgba(38,23,12,.9)!important;
  border:2px ridge #a47a3d!important;
  padding:7px 13px!important;
  text-shadow:1px 2px #130b05!important;
}
.actions .xp-waste-button{
  background:
    radial-gradient(circle at 50% 30%,#caa75e,#6f4826 55%,#2a160b 78%)!important;
  border:5px ridge #d0ab59!important;
  box-shadow:inset 0 0 0 4px #392110,0 7px 0 #1a0c05!important;
}
.actions .xp-runes,.actions .xp-waste-button strong{color:#fff0b5!important;text-shadow:2px 3px #37180c!important}
button{
  font-family:"Trebuchet MS",Georgia,serif!important;
  font-weight:900!important;
  letter-spacing:.03em;
  color:#f7e5b1!important;
  background:linear-gradient(#74502e,#432612)!important;
  border:3px ridge #b58b48!important;
  box-shadow:inset 0 0 0 1px #2a170b,0 2px 0 #160b05!important;
  text-shadow:1px 2px #1c0d06!important;
}
button:hover:not(:disabled){
  background:linear-gradient(#956a39,#5b3418)!important;
  border-color:#e0bd6a!important;
  transform:translateY(-1px);
}
button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 0 0 1px #2a170b!important}
button:disabled{opacity:.46!important;filter:grayscale(.45)!important;cursor:not-allowed!important}
button.danger,.danger{background:linear-gradient(#87372b,#4b1c16)!important;border-color:#b66a4e!important}

/* Compact menu: buttons only, no descriptive block. */
.game-strip{
  width:min(1510px,calc(100% - 26px))!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:repeat(11,minmax(92px,1fr))!important;
  gap:7px!important;
  padding:10px!important;
  margin:14px auto!important;
  background:
    linear-gradient(rgba(255,255,255,.025),rgba(0,0,0,.18)),
    repeating-linear-gradient(90deg,#49301d 0 95px,#3e2818 95px 190px)!important;
  align-items:stretch!important;
}
.game-strip>div{display:none!important}
.game-strip button{
  width:100%!important;
  min-width:0!important;
  min-height:58px!important;
  padding:7px 6px!important;
  font-size:11px!important;
  line-height:1.05!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  overflow:hidden!important;
  white-space:normal!important;
  background:linear-gradient(#72502f,#3e2412)!important;
  border:3px ridge #b58b48!important;
}
.game-strip button img{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important;object-fit:contain!important;flex:0 0 22px!important}
.game-strip button>span{min-width:0}
  opacity:1!important;filter:none!important;color:#f7e5b1!important;
  background:linear-gradient(#72502f,#3e2412)!important;border-color:#b58b48!important;
}
.ge-button-icon{border-color:#d7ad55!important;background:radial-gradient(circle,#866c35,#3b2412)!important;color:#ffe39a!important}

footer{
  width:min(1510px,calc(100% - 26px))!important;
  background:linear-gradient(#5b3a21,#34200f)!important;
  color:#ead6a2!important;
  padding:13px 20px!important;
}
footer b{color:#f1c86b!important}

/* Dialogs and secondary interfaces become carved stone + parchment windows. */
dialog,.game-dialog{
  color:#ead9ae!important;
  background:
    linear-gradient(rgba(255,255,255,.025),rgba(0,0,0,.18)),
    #2a2119!important;
  border:5px ridge #a37b41!important;
  box-shadow:inset 0 0 0 3px #120c08,0 18px 60px rgba(0,0,0,.75)!important;
}
dialog h3,.game-dialog h3,dialog h4,.game-dialog h4{color:#f1ce78!important;font-family:Georgia,serif!important;text-shadow:1px 2px #160b05!important}
dialog p,dialog small,dialog label,.game-dialog p,.game-dialog small,.game-dialog label{color:#d8c69d!important}
input,select,textarea{
  color:#2d1d10!important;
  background:#dfcfa8!important;
  border:3px inset #8b7047!important;
  font-family:"Trebuchet MS",Georgia,serif!important;
}
.auth-tabs button.active,.selected,.active{border-color:#ecd17e!important}
  background:#17110c!important;border-color:#836439!important;color:#ecdcae!important;
}
.bank-grid,.ge-results{background:#17110c!important}
.bank-slot,.ge-item-row{background:linear-gradient(#3a2d20,#241b13)!important;border-color:#705534!important;color:#ead8aa!important}
.toast{background:#4b2d17!important;border:3px ridge #cfaa5b!important;color:#fff0b7!important}

/* Adventure scrollbar */
*{scrollbar-color:#9e7740 #25170d;scrollbar-width:thin}

@media(max-width:1300px){
  .game-strip{grid-template-columns:repeat(6,minmax(100px,1fr))!important}
}
@media(max-width:900px){
  header{padding:14px!important;gap:10px!important}
  .game-strip{grid-template-columns:repeat(4,minmax(100px,1fr))!important}
  main{padding:0 12px!important}
}
@media(max-width:620px){
  .game-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:8px!important}
  .game-strip button{font-size:11px!important;min-height:55px!important}
  footer{display:block!important;text-align:center!important}
  footer span{display:block;margin-top:5px}
}

/* Cook's Assistant mini quest */
.game-strip{grid-template-columns:repeat(12,minmax(88px,1fr))!important}
.quests-dialog{width:min(1080px,95vw);max-height:92vh}
.quest-shell{display:grid;grid-template-columns:235px 1fr;gap:14px;min-height:600px}
.quest-list-panel{background:#16100b;border:3px ridge #806036;padding:12px}
.quest-list-panel>b{display:block;color:#f0ce79;font-family:Georgia,serif;margin-bottom:10px;letter-spacing:.08em}
.quest-list-item{width:100%;display:grid!important;grid-template-columns:36px 1fr 20px;align-items:center;text-align:left;padding:10px!important;gap:8px}
.quest-list-item img{width:34px;height:34px}.quest-list-item span{display:block}.quest-list-item small{display:block;font-size:10px;margin-top:3px}.quest-list-item i{font-style:normal;color:#d9bd70}.quest-list-item i.complete{color:#70bd55}.quest-list-item i.active{color:#e8c34c}
.quest-coming-soon{margin-top:13px;padding:10px;border-top:1px solid #60482d;color:#a8956e;font-size:12px}
.quest-detail-panel{background:linear-gradient(rgba(255,255,255,.04),rgba(0,0,0,.08)),#d5c39c;color:#392819;border:4px ridge #98794a;padding:16px;min-width:0}
.quest-detail-panel p{color:#4d3824!important}.quest-heading{display:flex;gap:13px;align-items:center;border-bottom:2px solid #92764b;padding-bottom:10px}.quest-heading img{width:56px;height:56px}.quest-heading h4{margin:0;color:#6d2d1d!important}.quest-heading span{font-size:12px;color:#705b3e}
.quest-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:15px 0}.quest-info-grid>div{background:#c5b187;border:2px inset #9b8258;padding:9px}.quest-info-grid b,.quest-info-grid span{display:block}.quest-info-grid b{font-size:10px;color:#6e2d20}.quest-info-grid span{margin-top:4px;font-size:13px}.quest-primary{min-width:190px}
.quest-status-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#382414;color:#f2d88f;border:3px ridge #9f7c43;padding:9px 12px;margin-bottom:10px}.quest-status-bar b,.quest-status-bar span{display:block}.quest-status-bar>div:first-child span{font-size:12px;color:#ead8ac}.quest-rewards-mini{display:flex!important;align-items:center;gap:4px;font-size:11px}.quest-rewards-mini img{width:24px;height:24px}
.quest-world{position:relative;height:345px;overflow:hidden;border:4px ridge #84663d;background:radial-gradient(circle at 67% 28%,#9bb66a 0 8%,transparent 9%),linear-gradient(140deg,#6c9a57 0 47%,#72a9b4 48% 54%,#769c50 55% 100%);box-shadow:inset 0 0 35px rgba(34,49,21,.55)}
.quest-world:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(25deg,transparent 0 30px,rgba(45,64,28,.12) 31px 33px)}
.quest-map-title{position:absolute;left:12px;top:10px;color:#f7dfa1;background:#3b2919;border:2px ridge #a18149;padding:5px 9px;font-family:Georgia,serif;font-size:11px;z-index:2}
.quest-location{position:absolute!important;width:135px!important;min-height:64px!important;padding:5px!important;display:grid!important;grid-template-columns:28px 1fr!important;grid-template-rows:auto auto!important;text-align:left!important;font-size:10px!important;z-index:2}.quest-location>span{grid-row:1/3;font-size:22px;align-self:center}.quest-location b{font-size:10px}.quest-location small{font-size:8px!important;color:#ead9ac!important}.quest-location.current{outline:3px solid #ffe477;filter:brightness(1.15)}
.quest-location.castle{left:8%;top:26%}.quest-location.cellar{left:9%;top:57%}.quest-location.store{left:35%;top:16%}.quest-location.chicken{right:8%;top:12%}.quest-location.cows{right:8%;top:41%}.quest-location.wheat{right:29%;bottom:7%}.quest-location.mill{left:35%;bottom:7%}
.quest-travel-overlay{position:absolute;inset:0;background:rgba(25,16,8,.82);z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f5dc96}.quest-travel-overlay strong{font-size:17px}.quest-travel-overlay i{width:62%;height:14px;background:#2b1a0e;border:2px inset #947343;margin-top:12px}.quest-travel-overlay i span{display:block;height:100%;width:0;background:linear-gradient(90deg,#8b4e27,#e5bd59)}
.quest-bottom-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:10px;margin-top:10px}.quest-scene,.quest-inventory{background:#bda77d;border:3px ridge #8f734b;padding:10px}.quest-scene h5,.quest-inventory h5{margin:0 0 6px;color:#682b1e;font-family:Georgia,serif}.quest-scene p{margin:0 0 8px;font-size:12px!important}.quest-actions{display:flex;flex-wrap:wrap;gap:7px}.quest-actions button{font-size:11px!important;padding:7px 9px!important}.quest-item-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.quest-item{background:#6e5a3d;color:#d2c39e;border:2px inset #9b8258;padding:5px;text-align:center;opacity:.52}.quest-item.owned{background:#4d6333;color:#fff0bb;opacity:1}.quest-item span,.quest-item b,.quest-item small{display:block}.quest-item span{font-size:19px}.quest-item b{font-size:9px}.quest-item small{font-size:8px!important;color:inherit!important}
@media(max-width:1300px){.game-strip{grid-template-columns:repeat(6,minmax(100px,1fr))!important}}
@media(max-width:760px){.quest-shell{grid-template-columns:1fr}.quest-list-panel{min-height:0}.quest-world{height:540px}.quest-location{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:calc(50% - 10px)!important;display:inline-grid!important;margin:5px 3px!important}.quest-bottom-grid,.quest-info-grid{grid-template-columns:1fr}.quest-status-bar{display:block}.quest-rewards-mini{margin-top:7px}}

/* Playable WASD quest world */
.quest-play-wrap{border:4px ridge #9d7a43;background:#15120d;padding:8px}.quest-game-head{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#f1d38c;background:#2d2215;border:1px solid #80613a;padding:7px 10px;font-size:12px}.quest-game-head b{font-size:15px;letter-spacing:1px}.quest-game-head span{color:#d3c4a1}.quest-play-wrap canvas{display:block;width:100%;height:auto;max-height:58vh;background:#5e8c45;border:2px solid #382a18;image-rendering:pixelated}.quest-interact-prompt{min-height:31px;padding:7px 10px;background:#17130e;color:#ffe39a;border:1px solid #6b512d;text-align:center;font-weight:bold}.quests-dialog{max-width:1120px;width:min(96vw,1120px)}.quest-bottom-grid{grid-template-columns:minmax(270px,.75fr) minmax(360px,1.25fr)}.quest-item-grid{grid-template-columns:repeat(6,minmax(72px,1fr))}.quest-actions button{width:100%}@media(max-width:760px){.quest-bottom-grid{grid-template-columns:1fr}.quest-item-grid{grid-template-columns:repeat(3,1fr)}.quest-game-head{align-items:flex-start;flex-direction:column}}

.quest-reset{background:#5f2f24!important;border-color:#a86d4c!important;color:#ffe4bd!important}


/* Quest points, completion presentation and updated skill/navigation icons */
.quest-points-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 10px;padding:7px 11px;border:2px solid #8a6731;background:#2b1a0d;color:#f1d58a;letter-spacing:1px}.quest-points-bar img{width:27px;height:27px}.quest-points-bar strong{font-size:20px;color:#fff0a8}
.quest-list-item.quest-crossed span{text-decoration:line-through;text-decoration-thickness:2px;opacity:.78}.quest-list-item.quest-crossed{background:rgba(70,95,43,.22)!important}.quest-list-item.quest-crossed small{text-decoration:none;display:block}
.quest-complete-overlay{position:absolute;inset:0;z-index:30;display:flex;align-items:center;justify-content:center;background:rgba(13,7,2,.82);padding:20px}.quest-complete-card{width:min(570px,94%);text-align:center;border:5px ridge #d9b85f;background:linear-gradient(#ead9aa,#c7ad72);padding:24px;color:#3a220e;box-shadow:0 0 0 5px #4a2b12,0 12px 30px #000}.quest-complete-icon{width:86px;height:86px}.quest-complete-card h3{font-family:Georgia,serif;letter-spacing:2px;color:#7a2d16;font-size:28px;margin:8px 0}.quest-complete-card p{font-weight:bold}.quest-complete-rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.quest-complete-rewards div{border:2px solid #8d6a35;background:#f3e4b9;padding:12px 6px;display:grid;justify-items:center;gap:4px}.quest-complete-rewards img{width:42px;height:42px;object-fit:contain}.quest-complete-rewards strong{font-size:22px;color:#6a2f13}.quest-complete-rewards span{font-size:11px;font-weight:bold}.quest-complete-card button{padding:12px 20px;background:#62401d;color:#ffe9a5;border:3px outset #a87c3d;font-weight:bold}.quest-rewards-mini img{width:23px;height:23px;object-fit:contain;vertical-align:middle}
@media(max-width:600px){.quest-complete-rewards{grid-template-columns:1fr}.quest-complete-card{padding:14px}.quest-complete-card h3{font-size:21px}}


/* Quest dialogue must live inside the modal top-layer, never behind it. */
.quest-dialogue{position:absolute;left:50%;top:105px;z-index:80;transform:translateX(-50%);width:min(700px,calc(100% - 80px));display:grid;grid-template-columns:58px 1fr 34px;gap:12px;align-items:center;background:linear-gradient(#f1dfad,#ceb577);color:#35200d;border:5px ridge #a27a3b;padding:13px 15px;box-shadow:0 10px 28px #000a}
.quest-dialogue-face{width:52px;height:52px;display:grid;place-items:center;background:#6b4423;border:3px ridge #c29a56;font-size:30px}
.quest-dialogue b{font-family:Georgia,serif;color:#713315;letter-spacing:1px}.quest-dialogue p{margin:4px 0 0;color:#35200d;font-weight:bold}.quest-dialogue button{align-self:start;width:30px!important;height:30px;padding:0!important;margin:0!important;background:#69421f!important;color:#ffe5a1!important;border:2px outset #b58a4c!important}
@media(max-width:650px){.quest-dialogue{top:92px;width:calc(100% - 28px);grid-template-columns:42px 1fr 30px}.quest-dialogue-face{width:38px;height:38px;font-size:22px}}

.quest-dialogue{cursor:pointer;user-select:none}
.quest-dialogue-continue{display:block;margin-top:7px;color:#77501f;font-weight:bold;font-size:11px;letter-spacing:.3px}
.quest-dialogue:not(.hidden) .quest-dialogue-continue{animation:questContinuePulse 1.15s ease-in-out infinite}
@keyframes questContinuePulse{50%{opacity:.38}}

/* Shooting Star AFK Mining */
.mining-open-button img{image-rendering:pixelated;object-fit:contain}.mining-dialog{width:min(920px,95vw);background:#17110d;border-color:#bb7b2a}.mining-heading{display:flex;align-items:center;gap:14px;border-bottom:2px solid #7e4b20;padding:0 0 12px;margin-bottom:12px}.mining-heading img{width:42px;height:42px;image-rendering:pixelated}.mining-heading h3{margin:0;color:#f2c56f}.mining-heading p{margin:4px 0 0;color:#c6ad86}.mining-locked{text-align:center;padding:55px 20px;border:2px solid #6b4928;background:linear-gradient(#21170f,#120d09)}.mining-lock-icon{font-size:52px}.mining-locked h4{color:#e9be69;font-size:21px;margin:10px}.mining-locked button{max-width:260px}.mining-hud{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.mining-hud span{background:#24170e;border:1px solid #825526;padding:9px;text-align:center;color:#b99a70}.mining-hud b{display:block;color:#f6d078;margin-top:3px}.star-arena{height:470px;position:relative;overflow:hidden;border:3px solid #70431f;background:linear-gradient(#242124 0 35%,#322d2a 36% 100%);isolation:isolate}.volcano-sky{position:absolute;inset:0;background:radial-gradient(circle at 80% 8%,#cf6040 0 2%,transparent 16%),linear-gradient(#302b31,#4a302b 45%,#211c1b 46%)}.volcano-sky i{position:absolute;width:5px;height:5px;border-radius:50%;background:#d9864e;box-shadow:0 0 8px #ff7438;animation:emberFloat 5s linear infinite}.volcano-sky i:nth-child(1){left:18%;top:54%;animation-delay:-1s}.volcano-sky i:nth-child(2){left:73%;top:45%;animation-delay:-3s}.volcano-sky i:nth-child(3){left:88%;top:70%;animation-delay:-2s}@keyframes emberFloat{to{transform:translateY(-220px);opacity:0}}.mountain{position:absolute;bottom:0;background:#1c191a;clip-path:polygon(0 100%,10% 42%,25% 56%,38% 8%,55% 49%,70% 20%,100% 100%)}.ridge-a{left:-5%;width:62%;height:270px}.ridge-b{right:-5%;width:55%;height:310px;background:#252022;transform:scaleX(-1)}.lava-pool{position:absolute;background:#ff9b19;border:5px solid #4e2414;box-shadow:0 0 18px #e34217 inset,0 0 16px #f35d1a;z-index:2;animation:lavaPulse 2.2s ease-in-out infinite}.lava-a{width:160px;height:38px;right:35px;bottom:42px;border-radius:50%}.lava-b{width:100px;height:26px;left:35px;bottom:90px;border-radius:50%;animation-delay:-1s}@keyframes lavaPulse{50%{filter:brightness(1.3)}}.shooting-star{position:absolute;z-index:5;left:50%;top:54%;width:260px;height:225px;transform:translate(-50%,-50%);filter:drop-shadow(0 18px 10px #090707)}.shooting-star>i,.star-core{position:absolute;background:linear-gradient(135deg,#3c6e67,#163f3d);border:3px solid #102b2a;clip-path:polygon(50% 0,62% 30%,100% 24%,74% 52%,96% 82%,60% 70%,46% 100%,36% 68%,0 78%,25% 50%,4% 20%,39% 31%)}.shooting-star>i:nth-child(1){inset:15px}.shooting-star>i:nth-child(2){width:130px;height:130px;left:5px;top:48px;transform:rotate(-25deg)}.shooting-star>i:nth-child(3){width:120px;height:145px;right:3px;top:35px;transform:rotate(33deg)}.shooting-star>i:nth-child(4){width:105px;height:110px;left:80px;top:0;transform:rotate(13deg)}.shooting-star>i:nth-child(5){width:110px;height:100px;left:70px;bottom:0;transform:rotate(-12deg)}.star-core{width:112px;height:112px;left:75px;top:56px;background:#285653}.shooting-star.struck{animation:starStrike .45s ease}@keyframes starStrike{20%{transform:translate(-50%,-50%) scale(.96) rotate(-2deg);filter:brightness(1.8)}60%{transform:translate(-50%,-50%) scale(1.03) rotate(2deg)}}.mining-pet{position:absolute;z-index:9;left:25%;bottom:70px;width:92px;height:110px;animation:petMinePosition 6s ease-in-out infinite}.mining-pet img{width:62px;height:62px;object-fit:contain;image-rendering:pixelated;position:absolute;bottom:0;left:10px;filter:drop-shadow(0 5px 2px #0008)}.mining-pet-label{position:absolute;top:0;left:50%;transform:translateX(-50%);white-space:nowrap;background:#152112;border:1px solid #d8c167;color:#f3dc76;padding:2px 5px;font-size:11px}.pet-pickaxe{position:absolute;font-size:40px;right:-2px;bottom:35px;transform-origin:10% 90%;animation:petPick 1.25s ease-in-out infinite}@keyframes petPick{0%,100%{transform:rotate(-45deg)}55%{transform:rotate(30deg)}}@keyframes petMinePosition{0%,100%{left:23%}50%{left:29%}}.fake-miner{position:absolute;z-index:7;width:65px;height:75px}.fake-miner img{width:45px;height:45px;object-fit:contain;image-rendering:pixelated;position:absolute;bottom:0}.fake-miner>span{position:absolute;right:0;bottom:23px;font-size:25px;animation:petPick 1.7s ease-in-out infinite}.fake-one{left:8%;bottom:40px}.fake-two{right:9%;bottom:85px}.fake-three{right:21%;bottom:28px}.fake-bubble{position:absolute;bottom:62px;left:50%;transform:translateX(-50%);width:180px;background:#eee2c1;color:#2b1b0d;border:2px solid #523919;border-radius:5px;padding:6px;font:12px Georgia,serif;text-align:center;opacity:0}.fake-bubble:after{content:"";position:absolute;left:45%;bottom:-9px;border:5px solid transparent;border-top-color:#eee2c1}.fake-bubble.pop{animation:bubbleTalk 8s ease both}@keyframes bubbleTalk{0%,100%{opacity:0;transform:translate(-50%,8px)}8%,80%{opacity:1;transform:translate(-50%,0)}}.mining-controls{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin-top:10px}.mining-controls button{min-height:48px}.mining-game.is-active #mineStarButton:not(:disabled){animation:readyPulse 1.3s ease-in-out infinite}@keyframes readyPulse{50%{box-shadow:0 0 12px #e8b34c}}#miningMessage{text-align:center;color:#f1cf82;font-weight:bold}.mining-game>small{display:block;text-align:center;color:#a78d69}.star-dust i{position:absolute;z-index:6;width:7px;height:7px;background:#5f8f86;transform:rotate(45deg);animation:dustSpark 2s ease-out infinite}.star-dust i:nth-child(1){left:40%;top:50%}.star-dust i:nth-child(2){left:56%;top:44%;animation-delay:-.4s}.star-dust i:nth-child(3){left:49%;top:66%;animation-delay:-.8s}.star-dust i:nth-child(4){left:62%;top:58%;animation-delay:-1.2s}.star-dust i:nth-child(5){left:36%;top:61%;animation-delay:-1.6s}@keyframes dustSpark{to{transform:translate(25px,-35px) rotate(225deg);opacity:0}}
@media(max-width:650px){.mining-hud{grid-template-columns:1fr}.star-arena{height:390px}.shooting-star{transform:translate(-50%,-50%) scale(.75)}.fake-bubble{width:120px;font-size:10px}.mining-controls{grid-template-columns:1fr}}

/* Seven-minute Shooting Star cycle and live miners */
.mining-cycle-rewards{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:2px solid #7b4d24;background:#21160e;color:#e8c985;font-size:12px}.mining-cycle-track{height:13px;border:2px solid #4e3018;background:#080604;overflow:hidden}.mining-cycle-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#8fd5ff,#d9f3ff);transition:width .5s linear}.shooting-star.degraded{filter:grayscale(.7) brightness(.58);transform:scale(.94)}.shooting-star.degraded:after{content:'DEGRADED';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-8deg);padding:5px 9px;border:2px solid #3e281a;background:#110c08;color:#b59872;font-weight:900;letter-spacing:1px}.live-star-miners{position:absolute;inset:0;pointer-events:none;z-index:7}.live-star-miner{position:absolute;width:68px;height:70px;animation:liveMinerBob .85s steps(2) infinite}.live-star-miner img{position:absolute;width:34px;height:34px;object-fit:contain;image-rendering:pixelated;left:17px;top:25px}.live-star-miner>b{position:absolute;left:40px;top:22px;font-size:22px;transform-origin:20% 80%;animation:livePickaxe .8s ease-in-out infinite}.live-star-miner>span{position:absolute;left:50%;bottom:47px;transform:translateX(-50%);white-space:nowrap;padding:2px 4px;border:1px solid #93713b;background:rgba(10,7,4,.9);color:#ffe27a;font-size:9px;text-align:center}.live-star-miner small{display:block;color:#ddd;font-size:8px}.live-star-miner.miner-0{left:9%;top:51%}.live-star-miner.miner-1{left:22%;top:65%}.live-star-miner.miner-2{right:11%;top:52%}.live-star-miner.miner-3{right:25%;top:67%}.live-star-miner.miner-4{left:37%;top:74%}.live-star-miner.miner-5{right:38%;top:73%}@keyframes liveMinerBob{from{transform:translateY(0)}to{transform:translateY(3px)}}@keyframes livePickaxe{0%,100%{transform:rotate(-35deg)}50%{transform:rotate(28deg)}}
@media(max-width:700px){.mining-cycle-rewards{grid-template-columns:1fr}.live-star-miner:nth-child(n+5){display:none}}


/* Mining/Quest navigation buttons are always available; unauthenticated clicks open login. */
#openMining,#openQuests{opacity:1!important;filter:none!important;cursor:pointer!important;pointer-events:auto!important}
#openMining:disabled,#openQuests:disabled{opacity:1!important;filter:none!important;cursor:pointer!important;pointer-events:auto!important}


/* OSRS skill cap and always-active Mining / Quests menu buttons */
#openMining,#openQuests,
#openMining:disabled,#openQuests:disabled{
  opacity:1!important;
  filter:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  color:#fff3c4!important;
  background:linear-gradient(#765025,#42260f)!important;
  border-color:#d5a64b!important;
  box-shadow:inset 0 0 0 2px #2a170b,0 2px 0 #1b0e07!important;
}
#openMining span,#openQuests span{color:#fff3c4!important}
#openMining:hover,#openQuests:hover{background:linear-gradient(#8a612c,#543116)!important;filter:brightness(1.08)!important}

/* Unified authentic pet presentation system */
.pet-visual{--pet-scale:1;--pet-facing:1;position:relative;display:inline-flex;align-items:flex-end;justify-content:center;width:100%;height:100%;transform:scaleX(var(--pet-facing));transform-origin:50% 85%;isolation:isolate}
.pet-visual img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;transform:scale(var(--pet-scale));transform-origin:50% 88%;filter:drop-shadow(0 2px 1px rgba(0,0,0,.5))}
.pet-ground-shadow{position:absolute;z-index:1;left:17%;right:17%;bottom:4%;height:14%;border-radius:50%;background:rgba(0,0,0,.34);filter:blur(2px);transform:scaleX(calc(1 / var(--pet-facing)))}
.pet-visual[data-pet-ground="hover"] .pet-ground-shadow{opacity:.45;bottom:-7%;transform:scaleX(calc(1 / var(--pet-facing))) scale(.75)}
.pet-visual[data-pet-ground="hover"] img{animation:petAuthenticHover 2.1s ease-in-out infinite}
.pet-visual[data-pet-personality="tail"] img{animation:petAuthenticBreathe 1.8s ease-in-out infinite}
.pet-visual[data-pet-personality="heavy"] img{animation:petAuthenticHeavyIdle 2.4s steps(2,end) infinite}
.pet-visual[data-pet-personality="float"] img{animation:petAuthenticFloat 2.5s ease-in-out infinite}
.pet-visual[data-pet-personality="pulse"] img{animation:petAuthenticPulse 1.55s ease-in-out infinite}
.pet-visual[data-pet-personality="skitter"] img{animation:petAuthenticSkitterIdle .7s steps(2,end) infinite}
@keyframes petAuthenticBreathe{50%{transform:scale(calc(var(--pet-scale)*1.018)) translateY(-1px)}}
@keyframes petAuthenticHeavyIdle{50%{transform:scale(var(--pet-scale)) translateY(1px)}}
@keyframes petAuthenticHover{50%{transform:scale(var(--pet-scale)) translateY(-6px)}}
@keyframes petAuthenticFloat{50%{transform:scale(var(--pet-scale)) translateY(-4px) rotate(1deg)}}
@keyframes petAuthenticPulse{50%{transform:scale(calc(var(--pet-scale)*1.04));filter:brightness(1.12)}}
@keyframes petAuthenticSkitterIdle{50%{transform:scale(var(--pet-scale)) translateX(1px)}}

/* Natural roaming: sprite faces direction, name remains readable, feet move instead of spinning. */
.roaming-pet{position:fixed;left:0;top:0;z-index:45;width:88px;height:96px;pointer-events:none;transition-property:transform;transition-timing-function:linear;will-change:transform}
.roaming-pet .pet-sprite{position:absolute;left:12px;right:12px;bottom:0;height:66px}
.roaming-pet .pet-label{z-index:4;position:absolute;left:50%;bottom:72px;transform:translateX(-50%);min-width:max-content;white-space:nowrap;text-align:center;padding:2px 5px;background:rgba(16,11,6,.92);border:1px solid #9f793f;color:#ffe58c;font-size:10px;line-height:1.05}
.roaming-pet .pet-label small{display:block;color:#ddd;font-size:8px}
.roaming-pet.pet-is-walking .pet-visual[data-pet-ground="walk"] img{animation:petAuthenticWalk .34s steps(2,end) infinite}
.roaming-pet.pet-is-walking .pet-visual[data-pet-personality="heavy"] img{animation:petAuthenticHeavyWalk .48s steps(2,end) infinite}
.roaming-pet.pet-is-walking .pet-visual[data-pet-personality="skitter"] img{animation:petAuthenticSkitterWalk .18s steps(2,end) infinite}
.roaming-pet.pet-is-walking .pet-visual[data-pet-ground="hover"] img{animation:petAuthenticHoverMove .8s ease-in-out infinite}
.roaming-pet.pet-is-idle .pet-visual{animation:petLookAround 3.2s ease-in-out 1}
@keyframes petAuthenticWalk{0%{transform:scale(var(--pet-scale)) translateY(0) rotate(-1deg)}50%{transform:scale(var(--pet-scale)) translateY(-4px) rotate(1deg)}}
@keyframes petAuthenticHeavyWalk{0%{transform:scale(var(--pet-scale)) translateY(0)}50%{transform:scale(var(--pet-scale)) translateY(-3px)}}
@keyframes petAuthenticSkitterWalk{0%{transform:scale(var(--pet-scale)) translate(0,0)}50%{transform:scale(var(--pet-scale)) translate(2px,-2px)}}
@keyframes petAuthenticHoverMove{50%{transform:scale(var(--pet-scale)) translateY(-7px) rotate(2deg)}}
@keyframes petLookAround{35%{transform:scaleX(var(--pet-facing)) rotate(-2deg)}70%{transform:scaleX(calc(var(--pet-facing)*-1)) rotate(2deg)}100%{transform:scaleX(var(--pet-facing))}}

/* Bank and market use the same pet registry and proportions. */
.pet-bank-art{width:82px;height:72px;margin:0 auto 4px}
.pet-bank-mini{width:36px;height:32px;vertical-align:middle;margin-right:5px}
.pet-bank-slot>img{display:none!important}
.pet-bank-slot .pet-ground-shadow{bottom:1%}
.ge-item-icon .pet-visual{width:48px;height:48px}


/* Shooting Star pets share the same true-to-sprite scaling and have varied mining rhythm. */
.mining-pet-visual{position:absolute;bottom:0;left:8px;width:68px;height:66px}
.mining-pet .star-pet-art,.live-star-miner .star-pet-art{width:100%;height:100%}
.mining-pet .star-pet-art img{animation:petMiningBody 1.25s ease-in-out infinite}
.live-star-miner .pet-visual{position:absolute;left:12px;top:22px;width:42px;height:42px}
.live-star-miner:nth-child(2n) .pet-visual img{animation-delay:-.35s}
.live-star-miner:nth-child(3n) .pet-visual img{animation-delay:-.7s}
@keyframes petMiningBody{0%,100%{transform:scale(var(--pet-scale)) rotate(-1deg)}55%{transform:scale(var(--pet-scale)) translateY(2px) rotate(2deg)}}


/* Remove accidental square panels around roaming pet sprites. */
.roaming-pet,
.roaming-pet .pet-sprite,
.roaming-pet .pet-visual,
.roaming-pet .pet-visual img{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.roaming-pet .pet-sprite{
  overflow:visible!important;
}
.roaming-pet .pet-visual{
  overflow:visible!important;
}
/* Keep only the intended soft floor shadow. */
.roaming-pet .pet-ground-shadow{
  display:block!important;
}

/* 2026-07-29: remove all pet shadows/dots; high-detail sprites already include their natural silhouette. */
.pet-ground-shadow,
.roaming-pet .pet-ground-shadow,
.pet-bank-slot .pet-ground-shadow,
.star-pet-art .pet-ground-shadow,
.live-star-miner .pet-ground-shadow{
  display:none!important;
  opacity:0!important;
  background:none!important;
  box-shadow:none!important;
  filter:none!important;
}
.pet-visual img,
.roaming-pet .pet-visual img,
.pet-bank-art img,
.pet-bank-mini img,
.star-pet-art img{
  filter:none!important;
  box-shadow:none!important;
}


/* 2026-07-29 final visual polish: no pet shadows, stable XP targets, better mining grip, cozy tavern office. */
.pet-ground-shadow,
.roaming-pet .pet-sprite::after,
.roaming-pet .pet-sprite:after,
.pet-visual::before,.pet-visual::after,
.pet-sprite::before,.pet-sprite::after{
  display:none!important;content:none!important;opacity:0!important;background:none!important;
  box-shadow:none!important;filter:none!important;
}
.roaming-pet,.roaming-pet *{text-shadow:none}
.roaming-pet .pet-visual img,.pet-visual img{filter:none!important;box-shadow:none!important}

/* Repo XP Rush targets stay perfectly still under the pointer. */
.agility-target,
.agility-target:hover,
.agility-target:focus,
.agility-target:focus-visible{
  translate:none!important;
  transition:none!important;
  transform:translate(calc(-50% + 2px),calc(-50% + 2px))!important;
}
.agility-target{animation:xpDropGlowStable .48s ease-in-out infinite alternate!important}
@keyframes xpDropGlowStable{
  from{filter:brightness(1);box-shadow:0 0 0 6px #63d39a24,0 0 23px #63d39a}
  to{filter:brightness(1.32);box-shadow:0 0 0 10px #63d39a18,0 0 34px #63d39a}
}
.agility-target.hit{animation:xpDropCaught .2s forwards!important}

/* Pickaxes sit beside the pet like a held tool, with the handle crossing the front paw/body. */
.pet-pickaxe{right:5px!important;bottom:20px!important;width:48px;height:48px;font-size:0!important;transform-origin:22% 78%!important;z-index:5}
.pet-pickaxe img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;transform:rotate(-8deg)}
.mining-pet .pet-pickaxe{animation:heldPetPick 1.25s ease-in-out infinite!important}
.live-star-miner>b.live-pickaxe{position:absolute;left:34px!important;top:28px!important;width:29px;height:29px;font-size:0!important;transform-origin:22% 78%!important;z-index:6;animation:heldLivePick .82s ease-in-out infinite!important}
.live-star-miner>b.live-pickaxe img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
@keyframes heldPetPick{0%,100%{transform:rotate(-41deg) translate(-1px,0)}52%{transform:rotate(27deg) translate(3px,4px)}}
@keyframes heldLivePick{0%,100%{transform:rotate(-38deg) translate(0,0)}52%{transform:rotate(29deg) translate(2px,3px)}}
.mining-pet-visual{z-index:4}

/* Cozy pixel-adventure tavern behind the existing computer, chair and characters. */
.scene.tavern-scene{
  background:
    linear-gradient(to bottom,rgba(18,9,5,.12) 0 70%,rgba(25,12,6,.52) 70% 100%),
    repeating-linear-gradient(90deg,#4a2918 0 5px,#5a3520 5px 82px,#3a2115 82px 87px),
    #3d2418!important;
  border-color:#9a632f!important;
  box-shadow:inset 0 0 70px #160b06,0 20px 50px #0008!important;
}
.tavern-room{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.tavern-room:before{content:"";position:absolute;left:0;right:0;bottom:0;height:32%;background:repeating-linear-gradient(90deg,#2b180e 0 80px,#1b100a 80px 85px),linear-gradient(#3a2113,#25140c);border-top:8px solid #17100b;box-shadow:inset 0 15px 30px #0007}
.tavern-beam{position:absolute;background:linear-gradient(90deg,#21120b,#59331d,#21120b);box-shadow:0 4px 8px #0008}
.tavern-beam.beam-one{left:0;right:0;top:102px;height:20px}
.tavern-beam.beam-two{left:48%;top:0;bottom:0;width:18px}
.tavern-window{position:absolute;left:25px;top:148px;width:145px;height:145px;border:13px solid #2b170e;background:radial-gradient(circle at 55% 35%,#e7c77a,#6a7891 38%,#27374b 72%);box-shadow:inset 0 0 28px #14202e,0 8px 18px #0008;border-radius:5px}
.tavern-window:before,.tavern-window:after{content:"";position:absolute;background:#2a180f}
.tavern-window:before{left:50%;top:0;bottom:0;width:7px;transform:translateX(-50%)}
.tavern-window:after{left:0;right:0;top:50%;height:7px;transform:translateY(-50%)}
.tavern-window i{position:absolute;left:14px;right:14px;bottom:10px;height:25px;background:linear-gradient(135deg,#203321,#41602a);clip-path:polygon(0 100%,18% 32%,35% 70%,51% 10%,68% 67%,82% 36%,100% 100%)}
.tavern-fireplace{position:absolute;right:25px;bottom:33px;width:165px;height:205px;background:repeating-linear-gradient(0deg,#5c3c2b 0 19px,#3c281f 19px 23px);border:12px solid #26150e;box-shadow:0 0 22px #0009}
.tavern-fireplace:before{content:"";position:absolute;left:24px;right:24px;bottom:16px;height:94px;background:#100a08;border-radius:55px 55px 8px 8px;box-shadow:inset 0 0 15px #000}
.tavern-fireplace i{position:absolute;z-index:2;left:50%;bottom:25px;width:54px;height:75px;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 80%,#fff19d 0 12%,#ffae2b 13% 42%,#d44316 43% 68%,transparent 69%);clip-path:polygon(50% 0,69% 31%,87% 19%,79% 58%,100% 68%,65% 100%,28% 94%,0 64%,22% 46%,18% 19%,40% 34%);animation:tavernFlame .75s ease-in-out infinite alternate}
.tavern-fireplace b{position:absolute;left:-17px;right:-17px;top:-26px;height:30px;background:#6d4429;border:6px solid #2b170e}
@keyframes tavernFlame{to{transform:translateX(-50%) scale(.92,1.08);filter:brightness(1.18)}}
.tavern-shelf{position:absolute;right:205px;top:38px;width:198px;height:20px;background:#6b4126;border:5px solid #29170e;box-shadow:0 7px 11px #0007}
.tavern-shelf i{position:absolute;bottom:14px;width:28px;height:42px;background:linear-gradient(90deg,#584427,#b89451,#584427);border:3px solid #261a10;border-radius:8px 8px 4px 4px}
.tavern-shelf i:nth-child(1){left:18px}.tavern-shelf i:nth-child(2){left:76px;height:53px;background:linear-gradient(90deg,#3b4e31,#73945c,#3b4e31)}.tavern-shelf i:nth-child(3){right:17px;height:36px;background:linear-gradient(90deg,#63332c,#a8644f,#63332c)}
.tavern-rug{position:absolute;left:34%;right:18%;bottom:25px;height:92px;background:repeating-linear-gradient(90deg,#6c241c 0 24px,#bd8a36 24px 31px,#3f1d25 31px 58px);clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%);opacity:.86}
.scene.tavern-scene>.poster,.scene.tavern-scene>.monitor,.scene.tavern-scene>.desk,.scene.tavern-scene>.keyboard,.scene.tavern-scene>.chair,.scene.tavern-scene>.gamer,.scene.tavern-scene>.level,.scene.tavern-scene>.resource-layer{position:absolute}
@media(max-width:760px){.tavern-window{left:8px;top:135px;width:110px;height:110px}.tavern-fireplace{right:5px;width:125px;height:175px}.tavern-shelf{display:none}}

/* Shooting Star multiplayer pet cleanup: remove inherited pet-card squares entirely. */
.live-star-miners,
.live-star-miner,
.live-star-miner .pet-visual,
.live-star-miner .pet-sprite,
.live-star-miner .star-pet-art,
.live-star-miner .star-pet-art img,
.mining-pet,
.mining-pet .mining-pet-visual,
.mining-pet .pet-visual,
.mining-pet .pet-sprite,
.mining-pet .star-pet-art,
.mining-pet .star-pet-art img{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
}
.live-star-miner .pet-visual::before,
.live-star-miner .pet-visual::after,
.live-star-miner .pet-sprite::before,
.live-star-miner .pet-sprite::after,
.live-star-miner .star-pet-art::before,
.live-star-miner .star-pet-art::after,
.mining-pet .pet-visual::before,
.mining-pet .pet-visual::after,
.mining-pet .pet-sprite::before,
.mining-pet .pet-sprite::after{
  content:none!important;
  display:none!important;
}
.live-star-miner .star-pet-art,
.mining-pet .star-pet-art{overflow:visible!important}

/* Dedicated Lumbridge Pet Room — active pets stay inside this scene. */
.pet-room{max-width:1500px;margin:14px auto 28px;border:4px ridge #9b6a2d;background:#24150c;box-shadow:0 0 0 2px #2b190b,inset 0 0 0 1px #d8ad62;overflow:hidden}
.pet-room-heading{display:flex;align-items:center;gap:22px;padding:10px 16px;background:linear-gradient(#6b3f20,#3d2414);border-bottom:3px ridge #a87838;color:#f6d88b;font-family:Georgia,serif}
.pet-room-heading b{font-size:15px;letter-spacing:1px;white-space:nowrap}.pet-room-heading span{font-size:13px;color:#e7c998}
.pet-room-scene{position:relative;width:100%;aspect-ratio:2048/473;min-height:250px;max-height:420px;background-image:url('assets/pet-room.png');background-size:100% 100%;background-position:center;background-repeat:no-repeat;overflow:hidden;isolation:isolate}
.roaming-pets{position:absolute!important;inset:0!important;z-index:6!important;pointer-events:none;overflow:hidden!important}
.roaming-pet{position:absolute!important;left:0!important;top:0!important;z-index:7!important}
.roaming-pet .pet-label{background:rgba(30,18,8,.90)!important;border-color:#d0a34d!important;color:#fff0a6!important;box-shadow:none!important}
.roaming-pet .pet-label small{color:#efe0bf!important}
.roaming-pet .pet-sprite,.roaming-pet .pet-visual,.roaming-pet .pet-visual img{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;filter:none!important}
@media(max-width:850px){.pet-room{margin:10px 6px 20px}.pet-room-heading{gap:8px;align-items:flex-start;flex-direction:column}.pet-room-scene{min-height:220px;background-size:cover;background-position:center}.roaming-pet{transform-origin:center bottom}}


/* Pet room interaction polish: image-only frame, no white edge, no idle spinning. */
.pet-room{
  max-width:1500px;
  margin:14px auto 28px;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden;
}
.pet-room-heading{display:none!important}
.pet-room-scene{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background-color:transparent!important;
  background-size:100% 100%!important;
}
.roaming-pet.pet-is-idle .pet-visual{animation:none!important}
@keyframes petLookAround{from{transform:none}to{transform:none}}
.roaming-pet .pet-visual{transition:transform .18s linear}

/* Contextual pet-room actions. */
.roaming-pet .pet-room-effect{
  position:absolute;left:50%;bottom:8px;transform:translateX(-50%);
  pointer-events:none;z-index:10;font-size:20px;line-height:1;
  animation:petRoomEffectPop 1.5s ease-out forwards;
}
@keyframes petRoomEffectPop{
  0%{opacity:0;transform:translate(-50%,5px) scale(.65)}
  18%{opacity:1;transform:translate(-50%,-2px) scale(1)}
  75%{opacity:1;transform:translate(-50%,-15px) scale(1)}
  100%{opacity:0;transform:translate(-50%,-24px) scale(.9)}
}
.roaming-pet.pet-room-splash .pet-sprite::before,
.roaming-pet.pet-room-splash .pet-sprite::after{
  content:""!important;display:block!important;position:absolute!important;
  left:50%;bottom:2px;width:42px;height:12px;border:3px solid rgba(155,224,255,.9)!important;
  border-radius:50%!important;background:transparent!important;box-shadow:none!important;
  transform:translateX(-50%) scale(.4);animation:petSplashRing 1.05s ease-out forwards;
}
.roaming-pet.pet-room-splash .pet-sprite::after{animation-delay:.18s}
@keyframes petSplashRing{0%{opacity:0;transform:translateX(-50%) scale(.35)}20%{opacity:1}100%{opacity:0;transform:translateX(-50%) scale(1.45)}}
.roaming-pet.pet-room-sitting .pet-sprite{transform:translateY(7px)!important}
.roaming-pet.pet-room-sitting .pet-visual img{animation:none!important;transform:scale(var(--pet-scale)) translateY(5px) scaleY(.9)!important}
.roaming-pet.pet-room-towel .pet-sprite::before{
  content:""!important;display:block!important;position:absolute!important;z-index:5;
  left:50%;bottom:5px;width:46px;height:15px;transform:translateX(-50%);
  background:repeating-linear-gradient(90deg,#e8f4ff 0 7px,#8fc8ef 7px 14px)!important;
  border:1px solid #d9f3ff!important;border-radius:3px!important;box-shadow:none!important;
}
.roaming-pet.pet-room-treat .pet-visual img{animation:petTreatBounce .38s ease-in-out 3!important}
@keyframes petTreatBounce{50%{transform:scale(var(--pet-scale)) translateY(-7px)}}
@media(max-width:850px){.pet-room{margin:10px 6px 20px}.pet-room-scene{min-height:220px}}

/* Two-room pet rotation and Squid Games obstacle animation. */
.pet-room-scene{background-image:none!important}
.pet-room-bg{position:absolute;inset:0;z-index:0;background-size:100% 100%;background-position:center;background-repeat:no-repeat;opacity:0;transform:scale(1.008);transition:opacity 1.45s ease,transform 1.45s ease;pointer-events:none}
.pet-room-bg.is-visible{opacity:1;transform:scale(1)}
.roaming-pets{z-index:6!important}
.roaming-pet{transition-property:transform,opacity!important;transition-timing-function:linear,ease!important;opacity:1;will-change:transform,opacity}
.roaming-pet.pet-room-running .pet-visual img{animation-duration:.28s!important}
.roaming-pet.pet-room-hopping .pet-sprite{animation:petObstacleHop .48s cubic-bezier(.25,.75,.35,1) infinite alternate!important}
@keyframes petObstacleHop{from{transform:translateY(0) scaleY(1)}to{transform:translateY(-18px) scaleY(.96)}}
.roaming-pet.pet-room-falling{z-index:2!important;transition:opacity .7s ease!important;animation:petCourseFall .78s cubic-bezier(.5,0,1,.5) forwards!important}
.roaming-pet.pet-room-falling .pet-label{opacity:0;transition:opacity .18s ease}
@keyframes petCourseFall{0%{filter:none;opacity:1}55%{filter:brightness(.7);opacity:.85}100%{filter:brightness(.2);opacity:0;transform:translate3d(var(--fall-x,0),70px,0) scale(.45)}}
.pet-room-scene[data-room="squid"] .roaming-pet .pet-label{background:rgba(13,31,31,.92)!important;border-color:#d45d88!important;color:#ffb4cc!important}
@media(max-width:850px){.pet-room-bg{background-size:cover}}


/* Mario Kart pet-room race — rune karts */
.pet-room-scene[data-room="mario"] .roaming-pet .pet-label{background:rgba(34,22,10,.94)!important;border-color:#e2b94f!important;color:#fff3a2!important}
.pet-kart{display:none;position:absolute;left:4px;bottom:-2px;width:80px;height:40px;z-index:1;transform-origin:center bottom;filter:drop-shadow(0 3px 1px rgba(0,0,0,.45))}
.pet-in-kart .pet-kart{display:block}
.pet-in-kart .pet-sprite{z-index:2;bottom:15px!important;transform:scale(.76);transform-origin:center bottom}
.pet-in-kart .pet-label{bottom:81px!important}
.pet-kart:before{content:"";position:absolute;left:7px;top:10px;width:66px;height:22px;border:3px solid #21170d;border-radius:45% 48% 34% 34%;background:var(--kart-body,#58758b);box-shadow:inset 0 -6px rgba(0,0,0,.22),inset 0 4px rgba(255,255,255,.18)}
.pet-kart:after{content:"";position:absolute;left:19px;top:3px;width:39px;height:18px;border:3px solid #21170d;border-bottom:0;border-radius:50% 50% 0 0;background:var(--kart-trim,#b9c9d3)}
.pet-kart i:before,.pet-kart i:after{content:"";position:absolute;top:26px;width:17px;height:15px;background:#241d18;border:3px solid #090806;border-radius:50%;box-sizing:border-box}
.pet-kart i:before{left:8px}.pet-kart i:after{right:8px}
.pet-kart b:before{content:"";position:absolute;z-index:3;left:31px;top:10px;width:19px;height:19px;border-radius:50%;background-image:var(--kart-rune);background-size:cover;background-position:center;filter:drop-shadow(0 1px 1px #21170d)}
.roaming-pet[data-kart-theme="air"]{--kart-body:#d7d7d7;--kart-trim:#f2f2f2;--kart-rune:url('assets/kart-runes/air.png')}
.roaming-pet[data-kart-theme="water"]{--kart-body:#2459c7;--kart-trim:#7da8ff;--kart-rune:url('assets/kart-runes/water.png')}
.roaming-pet[data-kart-theme="earth"]{--kart-body:#795019;--kart-trim:#c9984d;--kart-rune:url('assets/kart-runes/earth.png')}
.roaming-pet[data-kart-theme="fire"]{--kart-body:#b51f18;--kart-trim:#f07136;--kart-rune:url('assets/kart-runes/fire.png')}
.roaming-pet[data-kart-theme="mind"]{--kart-body:#c39318;--kart-trim:#f1d36e;--kart-rune:url('assets/kart-runes/mind.png')}
.roaming-pet[data-kart-theme="body"]{--kart-body:#273b86;--kart-trim:#84a0ff;--kart-rune:url('assets/kart-runes/body.png')}
.roaming-pet[data-kart-theme="cosmic"]{--kart-body:#d2a400;--kart-trim:#fff06a;--kart-rune:url('assets/kart-runes/cosmic.png')}
.roaming-pet[data-kart-theme="chaos"]{--kart-body:#e0ce00;--kart-trim:#fff56b;--kart-rune:url('assets/kart-runes/chaos.png')}
.roaming-pet[data-kart-theme="nature"]{--kart-body:#6b466d;--kart-trim:#bc8dbf;--kart-rune:url('assets/kart-runes/nature.png')}
.roaming-pet[data-kart-theme="law"]{--kart-body:#138b35;--kart-trim:#78d68a;--kart-rune:url('assets/kart-runes/law.png')}
.roaming-pet[data-kart-theme="death"]{--kart-body:#293e96;--kart-trim:#7899ff;--kart-rune:url('assets/kart-runes/death.png')}
.roaming-pet[data-kart-theme="astral"]{--kart-body:#dedede;--kart-trim:#ffffff;--kart-rune:url('assets/kart-runes/astral.png')}
.roaming-pet[data-kart-theme="blood"]{--kart-body:#435d9b;--kart-trim:#8ca4dd;--kart-rune:url('assets/kart-runes/blood.png')}
.roaming-pet[data-kart-theme="soul"]{--kart-body:#2a202d;--kart-trim:#a02c79;--kart-rune:url('assets/kart-runes/soul.png')}
.roaming-pet[data-kart-theme="wrath"]{--kart-body:#d5d5d5;--kart-trim:#f5f5f5;--kart-rune:url('assets/kart-runes/wrath.png')}
.roaming-pet[data-kart-theme="dust"]{--kart-body:#806229;--kart-trim:#c7a45c;--kart-rune:url('assets/kart-runes/dust.png')}
.roaming-pet[data-kart-theme="mud"]{--kart-body:#8c5612;--kart-trim:#d89a39;--kart-rune:url('assets/kart-runes/mud.png')}
.roaming-pet[data-kart-theme="smoke"]{--kart-body:#4f5054;--kart-trim:#8e9198;--kart-rune:url('assets/kart-runes/smoke.png')}
.roaming-pet[data-kart-theme="steam"]{--kart-body:#c6c6c6;--kart-trim:#f5f5f5;--kart-rune:url('assets/kart-runes/steam.png')}
.roaming-pet[data-kart-theme="lava"]{--kart-body:#b92d12;--kart-trim:#f07924;--kart-rune:url('assets/kart-runes/lava.png')}
.pet-in-kart.pet-room-running .pet-kart{animation:kartRumble .16s steps(2,end) infinite}
@keyframes kartRumble{0%{transform:translateY(0) rotate(-.5deg)}100%{transform:translateY(-1px) rotate(.5deg)}}
@media(max-width:850px){.pet-kart{transform:scale(.82);left:-3px}.pet-in-kart .pet-sprite{transform:scale(.68)}.pet-in-kart .pet-label{bottom:68px!important}}
.pet-in-kart .pet-sprite{transform:scale(.68)}.pet-in-kart .pet-label{bottom:68px!important}}

/* Hunger Games pet room */
.pet-room-scene[data-room="hunger"] .roaming-pet .pet-label{background:rgba(35,24,10,.94)!important;border-color:#b98b42!important;color:#ffe5a0!important}
.pet-weapon{display:none;position:absolute;left:42px;bottom:8px;width:34px;height:62px;z-index:5;background-image:var(--pet-weapon);background-size:contain;background-repeat:no-repeat;background-position:center bottom;transform-origin:50% 88%;filter:drop-shadow(1px 2px 1px rgba(0,0,0,.75));pointer-events:none}
.pet-armed .pet-weapon{display:block}
.pet-attacking .pet-weapon{animation:hungerWeaponSwing .5s cubic-bezier(.2,.8,.35,1)}
.pet-attacking .pet-sprite{animation:hungerPetLunge .5s ease-out}
@keyframes hungerWeaponSwing{0%{transform:rotate(-28deg) translateY(4px)}45%{transform:rotate(64deg) translate(5px,-5px)}100%{transform:rotate(-8deg)}}
@keyframes hungerPetLunge{0%,100%{transform:translateX(0)}45%{transform:translateX(7px) scale(1.04)}}
@media(max-width:850px){.pet-weapon{left:34px;bottom:5px;width:28px;height:50px}}

/* Hunger Games: supplied OSRS weapons and slapstick arena actions */
.pet-weapon{left:38px!important;bottom:0!important;width:44px!important;height:72px!important;background-position:center center!important;transform-origin:48% 84%!important}
.pet-armed .pet-weapon{display:block}
.flung-hunger-weapon{position:absolute;z-index:80;width:46px;height:76px;background-size:contain;background-repeat:no-repeat;background-position:center;pointer-events:none;filter:drop-shadow(2px 3px 1px rgba(0,0,0,.72));animation:hungerWeaponFling 1.2s cubic-bezier(.18,.7,.35,1) forwards}
@keyframes hungerWeaponFling{0%{opacity:1;transform:translate(0,0) rotate(0) scale(.9)}45%{opacity:1;transform:translate(calc(var(--fling-x)*.52),var(--fling-y)) rotate(calc(var(--fling-r)*.55)) scale(1.08)}100%{opacity:0;transform:translate(var(--fling-x),calc(var(--fling-y) + 190px)) rotate(var(--fling-r)) scale(.72)}}
.pet-platform-rise .pet-sprite{animation:hungerPlatformRise .88s cubic-bezier(.15,.78,.25,1) both!important}
.pet-platform-rise .pet-label{animation:hungerLabelRise .88s ease-out both}
@keyframes hungerPlatformRise{0%{opacity:0;transform:translateY(58px) scale(.55)}65%{opacity:1;transform:translateY(-7px) scale(1.04)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes hungerLabelRise{0%,28%{opacity:0;transform:translate(-50%,35px)}100%{opacity:1;transform:translate(-50%,0)}}
.pet-backflip .pet-sprite{animation:hungerBackflip .64s cubic-bezier(.3,.65,.25,1)!important}
.pet-kungfu-flip .pet-sprite{animation:hungerKungFuFlip .64s cubic-bezier(.3,.65,.25,1)!important}
@keyframes hungerBackflip{0%{transform:translateY(0) rotate(0)}45%{transform:translateY(-35px) rotate(-190deg) scale(1.08)}100%{transform:translateY(0) rotate(-360deg)}}
@keyframes hungerKungFuFlip{0%{transform:translate(0,0) rotate(0)}42%{transform:translate(18px,-28px) rotate(175deg) scaleX(.8)}100%{transform:translate(0,0) rotate(360deg)}}
.pet-arena-launched .pet-sprite{animation:hungerArenaLaunch .48s linear infinite!important}
.pet-arena-launched .pet-label{opacity:0}
@keyframes hungerArenaLaunch{to{transform:rotate(360deg) scale(.78)}}
@media(max-width:850px){.pet-weapon{left:31px!important;width:36px!important;height:58px!important}.flung-hunger-weapon{width:38px;height:62px}}

/* Hunger Games pet health and guaranteed healing */
.pet-healthbar{display:none;position:absolute;left:50%;top:-16px;transform:translateX(-50%);width:48px;height:7px;padding:1px;border:1px solid #17110a;border-radius:2px;background:#2a1713;z-index:15;box-shadow:0 1px 2px rgba(0,0,0,.8);pointer-events:none}
.pet-room-scene[data-room="hunger"] .roaming-pet .pet-healthbar{display:block}
.pet-healthbar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#42b94e,#9ee85c);transition:width .2s ease;border-radius:1px}
.pet-health-low .pet-healthbar{animation:hungerLowHpPulse .55s ease-in-out infinite alternate}
.pet-health-low .pet-healthbar i{background:linear-gradient(90deg,#b9202e,#f15a42)}
@keyframes hungerLowHpPulse{to{transform:translateX(-50%) scale(1.08);filter:brightness(1.35)}}
.pet-heal-item{display:none;position:absolute;left:36px;bottom:2px;width:42px;height:52px;z-index:8;background-size:contain;background-repeat:no-repeat;background-position:center;filter:drop-shadow(2px 3px 1px rgba(0,0,0,.7));pointer-events:none}
.pet-heal-item.is-visible{display:block;animation:hungerHealItem .72s ease-out both}
@keyframes hungerHealItem{0%{opacity:0;transform:translateY(16px) rotate(-18deg) scale(.4)}45%{opacity:1;transform:translateY(-8px) rotate(8deg) scale(1.08)}100%{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@media(max-width:850px){.pet-healthbar{top:-13px;width:40px;height:6px}.pet-heal-item{left:29px;width:34px;height:43px}}

/* Runecrafting pool aiming and match result polish */
.rc-table-wrap{position:relative}.rc-result-screen{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:10px;background:rgba(3,8,6,.78);backdrop-filter:blur(2px);z-index:8;border-radius:8px;animation:rcResultIn .32s ease-out}.rc-result-screen.hidden{display:none}.rc-result-screen strong{font-size:clamp(38px,8vw,82px);letter-spacing:5px;text-shadow:0 4px 0 #000,0 0 22px currentColor}.rc-result-screen span{max-width:520px;padding:0 20px;font-size:16px;color:#f2f5ef}.rc-result-screen b{display:inline-block;justify-self:center;margin-top:6px;padding:9px 15px;border:1px solid currentColor;background:#09120d;font-size:17px;letter-spacing:1px}.rc-result-screen.victory{color:#74ee9f}.rc-result-screen.defeat{color:#ff6c62}@keyframes rcResultIn{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}

/* Insane Jad mode */
.slayer-difficulty-grid{grid-template-columns:repeat(4,1fr)}
.slayer-difficulty-choice.insane{border-color:#8f2525!important;background:#351313!important}
.jad-healer{position:absolute;width:46px;height:46px;transform:translate(-50%,-50%);z-index:9;border:2px solid #c9d9a0!important;border-radius:50%!important;background:#3f6332!important;color:#fff!important;padding:0!important;cursor:crosshair;box-shadow:0 0 12px #7fd45c;animation:jadHealerBob .55s ease-in-out infinite alternate}
.jad-healer i{display:block;width:20px;height:25px;margin:4px auto 0;background:#7cb95d;clip-path:polygon(50% 0,100% 30%,82% 100%,18% 100%,0 30%)}
.jad-healer b{position:absolute;left:50%;top:43px;transform:translateX(-50%);font-size:8px;color:#eaffcf;text-shadow:1px 1px #000;white-space:nowrap}
.jad-healer.killed{animation:none;transform:translate(-50%,-50%) rotate(110deg) scale(.2);opacity:0;transition:.18s}
@keyframes jadHealerBob{to{transform:translate(-50%,-57%) scale(1.08)}}
@media(max-width:650px){.slayer-difficulty-grid{grid-template-columns:repeat(2,1fr)}}

/* RuneScape cooking minigame */
/* Cooking readability and kitchen immersion */
.cook-order{min-width:205px;padding:8px 10px;text-align:left;border-radius:3px;background:linear-gradient(#3c2b16,#271b0f);box-shadow:0 3px 7px #0008}
.cook-order header{display:flex;justify-content:space-between;gap:8px;align-items:center;border-bottom:1px solid #72552b;padding-bottom:4px}.cook-order header b{font-size:13px}.cook-order header em{font-style:normal;font-weight:900;color:#fff0b0}
.cook-order-recipe{display:flex;align-items:center;justify-content:center;gap:6px;margin:6px 0}.cook-order-item{display:flex;flex-direction:column;align-items:center;min-width:58px}.cook-order-item img{width:32px;height:32px;object-fit:contain;image-rendering:auto}.cook-order-item i{font-size:9px;font-style:normal;color:#f5deb0;text-transform:uppercase}.cook-order-recipe strong{color:#ffd36a;font-size:18px}
.cook-order>small{display:block;text-align:center;color:#bfa875;font-size:9px}.cook-order-time{height:5px;background:#130c07;margin-top:6px;border:1px solid #6b4b26}.cook-order-time span{display:block;height:100%;background:#5bc66a;transition:width .2s}.cook-order.urgent .cook-order-time span{background:#e34d3f}


/* Achievement log */
.achievements-open-button{opacity:1!important;filter:none!important;color:#eee!important;background:#111!important;border-color:#376b51!important;cursor:pointer!important;padding-left:6px!important;padding-right:6px!important}
.achievements-open-button>span{color:#eee!important;font-size:12px!important;line-height:1.05!important;letter-spacing:0!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}
.achievements-open-button:hover{background:#14221a!important;border-color:#63d39a!important}
.achievements-dialog{width:min(760px,94vw);background:#30251b;color:#f4dfad;border:4px ridge #bd8a45;padding:18px}
.achievement-heading{display:flex;align-items:center;gap:14px;border-bottom:2px solid #856136;padding:0 36px 12px 0;margin-bottom:14px}
.achievement-heading>img{width:70px;height:70px;object-fit:contain;background:#18120d;border:2px solid #b88849;padding:5px}
.achievement-heading h3{margin:0 0 4px;color:#f2cf7c;font-family:Georgia,serif}
.achievement-heading p{margin:0;color:#cdb98e;font-size:13px}
.achievement-login{padding:12px;border:2px solid #a76f31;background:#4c3420;margin-bottom:12px;text-align:center}
.achievement-groups{display:grid;gap:14px}
.achievement-group{border:3px ridge #8c673c;background:#493723;padding:12px}
.achievement-group h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:#f2cf7c;font-family:Georgia,serif}
.achievement-group h4 img{width:28px;height:28px;object-fit:contain}
.achievement-entry{display:grid;grid-template-columns:40px 62px 1fr auto;align-items:center;gap:12px;background:#241b14;border:2px solid #755735;padding:10px;opacity:.78}
.achievement-entry.completed{border-color:#d4aa53;background:#364129;opacity:1}
.achievement-check{font-size:30px;text-align:center;color:#d3b77a}
.achievement-entry.completed .achievement-check{color:#b9e478}
.achievement-reward-img{width:58px;height:58px;object-fit:contain;background:#0d0b09;border:1px solid #8f7047}
.achievement-copy strong,.achievement-copy span,.achievement-copy small{display:block}
.achievement-copy strong{color:#fff0bb;margin-bottom:3px}
.achievement-copy span{font-size:13px}.achievement-copy small{color:#c5ad7b;margin-top:4px}
.achievement-status{font-size:10px;color:#d0b27b;border:1px solid #85663d;padding:6px;white-space:nowrap}
.achievement-entry.completed .achievement-status{color:#dff5b2;border-color:#91aa5a}
.achievement-coming{opacity:.65}.achievement-coming p{margin:0;color:#c5ad7b}
.achievement-message{margin:12px 0 0;text-align:center;color:#e6c982}
.bank-item-art{width:72px;height:72px;object-fit:contain;display:block;margin:0 auto 4px}.achievement-bank-slot{background:#4b3e28!important;border-color:#c79b4b!important}
@media(max-width:600px){.achievement-entry{grid-template-columns:34px 52px 1fr}.achievement-status{grid-column:2/4;justify-self:start}.achievement-reward-img{width:48px;height:48px}}

/* Equippable Chef's hat pet cosmetic */
.pet-visual{position:relative;display:inline-block}
.pet-visual>.pet-body{display:block;width:100%;height:100%;object-fit:contain;position:relative;z-index:1}
.pet-cosmetic{position:absolute;pointer-events:none;user-select:none;z-index:12;object-fit:contain}
.pet-chefs-hat{left:var(--hat-x,50%);top:var(--hat-y,6%);width:var(--hat-w,52%);height:auto;transform:translate(-50%,-60%) rotate(var(--hat-r,0deg));transform-origin:50% 85%;filter:drop-shadow(0 2px 1px rgba(0,0,0,.55))}
.achievement-bank-slot.equipped-cosmetic{outline:3px solid #d7b05a;box-shadow:inset 0 0 15px rgba(255,216,115,.2)}
.bank-cosmetic-toggle{display:block;width:100%;margin-top:7px;padding:7px 8px;border:2px solid #a97a35;background:#342414;color:#ffe6a5;font-weight:900;cursor:pointer}
.bank-cosmetic-toggle:hover{background:#5a3c1d}
.achievement-bank-slot.equipped-cosmetic .bank-cosmetic-toggle{background:#6b2c20;border-color:#d78d62}

/* Stable cosmetic layering and precise pet hat placement */
.pet-visual>.pet-chefs-hat{
  position:absolute!important;
  left:var(--hat-x,50%)!important;
  top:var(--hat-y,20%)!important;
  width:var(--hat-w,38%)!important;
  height:auto!important;
  z-index:5!important;
  pointer-events:none!important;
  animation:none!important;
  transform:translate(-50%,-82%) rotate(var(--hat-r,0deg))!important;
  transform-origin:50% 88%!important;
  object-fit:contain!important;
}

/* Insane Jad healers remain visually steady instead of vibrating */
.jad-healer{animation:none!important;will-change:auto;backface-visibility:hidden}
@keyframes jadHealerBob{from,to{transform:translate(-50%,-50%)}}

/* Keep Insane Jad healer hitboxes fixed under mouse and touch interaction. */
.jad-healer,
.jad-healer:hover:not(:disabled),
.jad-healer:focus-visible,
.jad-healer:active:not(:disabled){
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  outline-offset:2px;
  touch-action:manipulation;
}
.jad-healer:hover:not(:disabled){
  background:#4d773d!important;
  border-color:#efffcf!important;
  filter:brightness(1.08);
}
.jad-healer:active:not(:disabled){
  box-shadow:0 0 16px #a7f27f!important;
}
.jad-healer.killed,
.jad-healer.killed:hover,
.jad-healer.killed:active{
  transform:translate(-50%,-50%) rotate(110deg) scale(.2)!important;
}

/* Raids homepage button and coming-soon preview. */
.raids-open-button{display:inline-flex!important;align-items:center;justify-content:center;gap:9px}
.raids-open-button img{width:26px!important;height:26px!important;object-fit:contain;image-rendering:pixelated}
.raids-dialog{width:min(940px,calc(100% - 18px))!important;background:linear-gradient(145deg,#17120c,#090704)!important;border-color:#9f7137!important}
.raids-heading{display:flex;align-items:center;gap:14px;border-bottom:2px solid #5e4325;padding:0 42px 13px 0}
.raids-heading img{width:54px;height:54px;object-fit:contain;image-rendering:pixelated}
.raids-heading h3{margin:0;color:#f3d18a;font-size:25px;letter-spacing:2px}
.raids-heading p{margin:5px 0 0;color:#bda77c}
.raids-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.raid-preview-card{position:relative;min-height:270px;padding:22px 18px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border:2px solid #70502c;background:#17110b;box-shadow:inset 0 0 35px #000b,0 10px 22px #0007;cursor:not-allowed;isolation:isolate}
.raid-preview-card:before{content:"";position:absolute;inset:0;z-index:-2;opacity:.72}
.raid-preview-card:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 5%,rgba(5,3,2,.35) 44%,#090604 79%)}
.raid-toa:before{background:radial-gradient(circle at 50% 22%,#d8b15b 0 4%,transparent 5%),linear-gradient(145deg,#7f5f2a,#2a1b0c 55%,#10100c)}
.raid-cox:before{background:radial-gradient(circle at 58% 23%,#86bfc4 0 4%,transparent 5%),linear-gradient(145deg,#354f42,#172920 55%,#090d0b)}
.raid-tob:before{background:radial-gradient(circle at 48% 20%,#d76565 0 4%,transparent 5%),linear-gradient(145deg,#65252d,#281016 58%,#0e0608)}
.raid-number{align-self:flex-start;margin-bottom:auto;padding:4px 7px;border:1px solid #b58b48;background:#090604c9;color:#e5ca8a;font-size:10px;letter-spacing:1px}
.raid-preview-card h4{margin:0 0 8px;color:#f4d89a;font-size:20px;line-height:1.05;text-shadow:2px 2px #000}
.raid-preview-card p{margin:0 0 15px;color:#d2c5a8;line-height:1.4}
.raid-preview-card b{align-self:flex-start;padding:7px 10px;border:1px solid #8f6d38;background:#130d07;color:#f1cb76;font-size:11px;letter-spacing:1.4px}
.raids-footnote{display:block;text-align:center;color:#927d5d;margin-top:15px}
@media(max-width:760px){.raids-preview{grid-template-columns:1fr}.raid-preview-card{min-height:190px}.raids-heading{align-items:flex-start}}

/* Magic and Ranged combat skill additions */
.combat-weapon-choice strong img{width:30px;height:30px;object-fit:contain;image-rendering:pixelated;vertical-align:middle;margin-right:5px}


/* Raids is a live preview button, not a disabled placeholder. */
#openRaids.raids-open-button{opacity:1!important;filter:none!important;cursor:pointer!important;pointer-events:auto!important;color:#f0dfbd!important;background:linear-gradient(#36291d,#21170f)!important;border-color:#8b6337!important}
#openRaids.raids-open-button:hover{background:linear-gradient(#493723,#2b1e13)!important;border-color:#d1a35d!important}

/* Mining chatter is deliberately occasional and only one pet speaks at once. */
.fake-bubble.pop{animation:bubbleTalk 6s ease both}
@keyframes bubbleTalk{0%,100%{opacity:0;transform:translate(-50%,8px)}12%,72%{opacity:1;transform:translate(-50%,0)}}

/* Fire cape sits behind the pet body and scales with every pet presentation. */
.pet-visual .pet-fire-cape{position:absolute!important;z-index:0!important;left:50%!important;top:42%!important;width:64%!important;height:78%!important;transform:translate(-50%,-18%) rotate(0deg)!important;transform-origin:50% 8%!important;object-fit:fill!important;image-rendering:auto!important;pointer-events:none!important;filter:drop-shadow(0 3px 2px #0008)!important;animation:none!important}
.pet-visual .pet-body{position:relative;z-index:2}
.pet-visual[data-pet-ground="hover"] .pet-fire-cape{top:45%;width:58%;height:72%}
.pet-visual[data-pet-personality="heavy"] .pet-fire-cape{width:70%;height:82%;top:40%}
.pet-visual[data-pet-personality="skitter"] .pet-fire-cape{width:54%;height:62%;top:48%}
.fire-cape-bank-art{object-fit:contain!important;background:#080604;padding:3px}.fire-cape-achievement-art{object-fit:contain!important;background:#080604!important}

/* Final homepage menu colour correction: active carved-wood buttons with OSRS gold labels. */
#openRaids,
#openWiseTask,
#openGrandExchange,
#openAchievements {
  opacity:1!important;
  filter:none!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  color:#f7e5b1!important;
  background:linear-gradient(#72502f,#3e2412)!important;
  border:3px ridge #b58b48!important;
  box-shadow:inset 0 0 0 1px #2a180c!important;
}
#openRaids:hover,
#openWiseTask:hover,
#openGrandExchange:hover,
#openAchievements:hover {
  color:#fff0bf!important;
  background:linear-gradient(#89623a,#4d2d16)!important;
  border-color:#d0a35b!important;
  filter:brightness(1.06)!important;
}
#openRaids > span,
#openWiseTask > span,
#openGrandExchange > span:last-child,
#openAchievements > span {
  color:#f7e5b1!important;
  text-shadow:1px 1px 0 #251409!important;
}
#openRaids:disabled,
#openRaids[aria-disabled="true"] {
  opacity:1!important;
  filter:none!important;
  cursor:pointer!important;
}


/* Raids must inherit the exact homepage button surface, with no special shade. */
.game-strip #openRaids.raids-open-button{
  opacity:1!important;filter:none!important;cursor:pointer!important;pointer-events:auto!important;
  color:#f7e5b1!important;background:linear-gradient(#72502f,#3e2412)!important;
  border:3px ridge #b58b48!important;box-shadow:inset 0 0 0 1px #2a170b,0 2px 0 #160b05!important;
}
.game-strip #openRaids.raids-open-button:hover{background:linear-gradient(#956a39,#5b3418)!important;border-color:#e0bd6a!important;filter:none!important}

.runedle-open-button .runedle-menu-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border:2px solid #d1a44d;border-radius:4px;background:#2f5f2a;color:#ffe69b;font:900 17px Georgia,serif;text-shadow:1px 1px #10230e}
.runedle-dialog{width:min(760px,calc(100% - 18px))!important;background:linear-gradient(145deg,#21180f,#0c0906)!important}
.runedle-heading{display:flex;align-items:center;gap:13px;border-bottom:2px solid #674821;padding:0 42px 12px 0}
.runedle-heading h3{margin:0;color:#f3d18a;letter-spacing:2px}.runedle-heading p{margin:4px 0 0;color:#bfa87c}
.runedle-logo{display:grid;place-items:center;width:54px;height:54px;border:4px ridge #c49a4d;background:linear-gradient(#497b39,#23491f);color:#ffe8a0;font:900 34px Georgia,serif;text-shadow:2px 2px #142b12}
.runedle-game{display:flex;flex-direction:column;align-items:center;padding:16px 0 9px}
.runedle-notice{padding:12px;margin:14px 0 0;border:2px solid #8b6635;background:#3a2718;color:#f2d28e;text-align:center}
.runedle-board{display:grid;grid-template-rows:repeat(5,56px);gap:6px}
.runedle-row{display:grid;grid-template-columns:repeat(5,56px);gap:6px}
.runedle-tile{display:grid;place-items:center;border:3px ridge #80623c;background:#1d1813;color:#f5e7c1;font:900 28px/1 Georgia,serif;text-transform:uppercase;transition:transform .22s ease,background .22s ease}
.runedle-tile.filled{border-color:#ad8951}.runedle-tile.correct{background:#3b6f36;border-color:#78a866}.runedle-tile.present{background:#a47a27;border-color:#d2ad50}.runedle-tile.absent{background:#47423b;border-color:#6c665d;color:#c9c2b5}.runedle-tile.reveal{animation:runedleFlip .42s ease both}
@keyframes runedleFlip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}100%{transform:rotateX(0)}}
.runedle-entry{width:min(390px,100%);margin-top:13px}.runedle-entry label{display:block;color:#d8bd7a;font-size:11px;font-weight:900;margin-bottom:4px}.runedle-entry>div{display:grid;grid-template-columns:1fr 96px;gap:7px}.runedle-entry input{min-width:0;padding:10px;text-align:center;text-transform:uppercase;letter-spacing:8px;font:900 20px Georgia,serif;background:#110e0a;color:#fff0be;border:3px ridge #9d7944}.runedle-entry small{display:block;min-height:17px;text-align:center;margin-top:6px;color:#bba77f}.runedle-entry small.error{color:#f08e72}.runedle-keyboard{display:flex;flex-direction:column;gap:5px;align-items:center;margin-top:10px;width:100%}.runedle-key-row{display:flex;gap:4px;justify-content:center}.runedle-keyboard button{width:32px;min-height:38px!important;padding:3px!important;font-size:12px!important}.runedle-keyboard button.correct{background:#3b6f36!important}.runedle-keyboard button.present{background:#a47a27!important}.runedle-keyboard button.absent{background:#47423b!important;color:#aaa!important}.runedle-finish{margin-top:12px;padding:10px 14px;border:2px solid #9f793f;background:#2c2014;text-align:center}.runedle-finish strong,.runedle-finish span{display:block}.runedle-finish strong{color:#f4d27f;font-size:18px}.runedle-finish span{color:#d4c39d;margin-top:4px}.runedle-results{border-top:2px solid #5c4223;margin-top:10px;padding-top:13px}.runedle-results-head{display:flex;justify-content:space-between;align-items:center}.runedle-results h4{margin:0;color:#e6c475}.runedle-results-head button{min-height:34px!important;padding:5px 9px!important}.runedle-leaderboard{display:grid;gap:5px;margin-top:9px;max-height:235px;overflow:auto}.runedle-result-row{display:grid;grid-template-columns:minmax(100px,1fr) 100px 85px;gap:8px;align-items:center;padding:8px 9px;background:#211a13;border:1px solid #594322}.runedle-result-row b{color:#f1ddb0}.runedle-result-row span{text-align:center;color:#c9b78f}.runedle-result-row strong{text-align:right}.runedle-result-row.solved strong{color:#8fc67e}.runedle-result-row.failed strong{color:#e1846f}.runedle-result-row.playing strong{color:#daba69}.runedle-legend{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-top:12px;color:#bca77e;font-size:11px}.runedle-legend span{display:flex;align-items:center;gap:5px}.runedle-legend i{width:14px;height:14px;border:1px solid #8c744d}.runedle-legend i.correct{background:#3b6f36}.runedle-legend i.present{background:#a47a27}.runedle-legend i.absent{background:#47423b}
@media(max-width:600px){.runedle-board{grid-template-rows:repeat(5,48px)}.runedle-row{grid-template-columns:repeat(5,48px)}.runedle-tile{font-size:24px}.runedle-result-row{grid-template-columns:minmax(90px,1fr) 80px 70px}.runedle-keyboard button{width:27px!important;font-size:10px!important}}

/* Daily Farm Run visual rework */
.farm-run-open-button{background:linear-gradient(#66451f,#3c260f)!important}
.farm-run-open-button .runedle-menu-icon{border:0;background:transparent!important;font-size:22px;text-shadow:none}
.farm-run-dialog{width:min(1180px,calc(100% - 18px))!important;max-height:94vh;background:radial-gradient(circle at 50% 25%,#1d2415 0,#10140d 42%,#090b08 100%)!important;border:8px ridge #4c4b38!important;color:#e6dfc8;overflow:auto}
.farm-run-header{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;gap:12px;border-bottom:5px solid #44361e;padding:8px 42px 15px 18px;background:linear-gradient(#11160f,#0b0e0a)}
.farm-run-title{text-align:center}.farm-run-title h3{margin:0;color:#70b63d;font:900 clamp(36px,6vw,68px)/.9 Georgia,serif;letter-spacing:8px;text-shadow:0 3px #17320c,3px 0 #17320c}.farm-run-title b{display:inline-block;margin-top:12px;padding:7px 45px;background:#634618;border:4px ridge #8d6a2e;color:#ffd86a;letter-spacing:5px;font-size:17px}.farm-title-sprout{position:absolute;transform:translate(-40px,5px);font-size:28px}
.farm-side-copy{display:flex;align-items:center;gap:10px;color:#82c54a;font-size:16px;line-height:1.45}.farm-side-copy.right{justify-content:flex-end}
.farm-run-layout{display:grid;grid-template-columns:220px minmax(330px,1fr) 250px;gap:22px;padding:20px}
.farm-run-sidebar{display:grid;align-content:start;gap:15px}.farm-run-sidebar section{padding:14px;border:5px ridge #4a4b3c;background:linear-gradient(145deg,rgba(20,25,17,.96),rgba(8,11,7,.96));box-shadow:inset 0 0 18px #000}.farm-run-sidebar h4{margin:0 0 10px;color:#ffd65d;letter-spacing:1px}.farm-run-sidebar p{color:#d9d3bf;line-height:1.5}.farm-run-sidebar p strong,.farm-run-sidebar section>span{display:block;color:#7bc34a;text-align:center}.farm-stat{display:block;text-align:center;font-size:42px;color:#f1ead8}.farm-how .runedle-legend{display:grid;justify-content:start;margin-top:14px}.farm-rewards>div{display:flex;align-items:center;justify-content:space-around;text-align:center;gap:7px}.farm-rewards>div span{display:grid;justify-items:center;color:#82c84e}.farm-rewards img{width:48px;height:48px;object-fit:contain}.farm-rewards b{font-size:24px}.farm-rewards small{display:block;margin-top:12px;color:#d3b65e;text-align:center;line-height:1.4}.farm-xp-icon{font-size:38px}.farm-run-dialog .runedle-game{padding:0}.farm-run-dialog .runedle-board{grid-template-rows:repeat(5,64px);gap:7px}.farm-run-dialog .runedle-row{grid-template-columns:repeat(5,64px);gap:7px}.farm-run-dialog .runedle-tile{background:linear-gradient(145deg,#171a14,#080a07);border:4px ridge #4d5043}.farm-run-dialog .runedle-entry{width:min(420px,100%)}.farm-run-dialog .runedle-keyboard button{background:linear-gradient(#45453c,#27271f)!important;border-color:#676759!important}.farm-run-dialog .runedle-results{margin:0 20px;padding:15px 0 5px}.farm-run-footer{text-align:center;color:#dfbd4e;padding:9px;letter-spacing:1px}.farm-skill-glyph{display:grid;place-items:center;width:46px;font-size:30px}
@media(max-width:900px){.farm-run-header{grid-template-columns:1fr}.farm-side-copy{display:none}.farm-run-layout{grid-template-columns:1fr}.farm-run-sidebar.left,.farm-run-sidebar.right{grid-template-columns:repeat(2,1fr)}.farm-run-sidebar.left section:first-child,.farm-how{grid-column:1/-1}}
@media(max-width:520px){.farm-run-sidebar.left,.farm-run-sidebar.right{grid-template-columns:1fr}.farm-run-dialog .runedle-board{grid-template-rows:repeat(5,48px)}.farm-run-dialog .runedle-row{grid-template-columns:repeat(5,48px)}.farm-run-title b{padding:7px 12px}.farm-run-title h3{letter-spacing:3px}}


/* Farm Run/menu and skill icon corrections */
.game-strip #openRuneDle.farm-run-open-button {
  color:#f7e5b1!important;
  background:linear-gradient(#72502f,#3e2412)!important;
  border:3px ridge #b58b48!important;
  box-shadow:inset 0 0 0 1px #2a170b,0 2px 0 #160b05!important;
  filter:none!important;
  opacity:1!important;
}
.game-strip #openRuneDle.farm-run-open-button > span {
  color:#f7e5b1!important;
  text-shadow:1px 1px 0 #251409!important;
}
.game-strip #openRuneDle.farm-run-open-button:hover {
  background:linear-gradient(#956a39,#5b3418)!important;
  border-color:#e0bd6a!important;
}
.farm-run-open-button .runedle-menu-icon {
  width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;
  object-fit:contain!important;display:block!important;flex:0 0 24px!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
.farm-xp-icon {width:48px!important;height:48px!important;object-fit:contain!important;display:block!important;}


/* Daily Farm Run guess feedback — keep state colours above the themed base rules */
.farm-run-dialog .runedle-tile.correct {
  background:linear-gradient(145deg,#5fae43,#2f7028)!important;
  border-color:#9fe27e!important;
  color:#fff8d9!important;
  box-shadow:inset 0 0 0 2px #285b22,0 0 12px rgba(112,210,75,.55)!important;
}
.farm-run-dialog .runedle-tile.present {
  background:linear-gradient(145deg,#d8a51e,#8c650d)!important;
  border-color:#ffe06a!important;
  color:#fff8d9!important;
  box-shadow:inset 0 0 0 2px #705007,0 0 12px rgba(237,188,42,.5)!important;
}
.farm-run-dialog .runedle-tile.absent {
  background:linear-gradient(145deg,#55554f,#292a27)!important;
  border-color:#7f8179!important;
  color:#b9b9b0!important;
  opacity:.68;
}
.farm-run-dialog .runedle-keyboard button.correct {
  background:linear-gradient(#62ad45,#326f2a)!important;
  border-color:#9fe27e!important;
  color:#fff8d9!important;
  box-shadow:0 0 8px rgba(112,210,75,.45)!important;
}
.farm-run-dialog .runedle-keyboard button.present {
  background:linear-gradient(#d3a122,#8c650d)!important;
  border-color:#ffe06a!important;
  color:#fff8d9!important;
  box-shadow:0 0 8px rgba(237,188,42,.4)!important;
}
.farm-run-dialog .runedle-keyboard button.absent,
.farm-run-dialog .runedle-keyboard button.absent:disabled {
  background:#151714!important;
  border-color:#30332d!important;
  color:#555950!important;
  opacity:.28!important;
  filter:grayscale(1)!important;
  pointer-events:none!important;
  box-shadow:none!important;
  text-decoration:line-through;
}
.farm-run-dialog .runedle-legend i.correct{background:#4d9c38!important;border-color:#9fe27e!important}
.farm-run-dialog .runedle-legend i.present{background:#c79518!important;border-color:#ffe06a!important}
.farm-run-dialog .runedle-legend i.absent{background:#3b3c38!important;border-color:#777a72!important}

/* Daily Farm Run keyboard certainty states */
.farm-run-dialog .runedle-keyboard button.absent,
.farm-run-dialog .runedle-keyboard button.absent:disabled {
  position:relative!important;
  opacity:.22!important;
  text-decoration:line-through!important;
  cursor:not-allowed!important;
}
.farm-run-dialog .runedle-keyboard button.absent::after {
  content:'×';
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  font-size:27px;
  line-height:1;
  color:#8d9187;
  opacity:.8;
  pointer-events:none;
}

/* Odd Spectacles pet reward */
.pet-visual .pet-odd-spectacles{position:absolute!important;z-index:20!important;left:50%!important;top:32%!important;width:72%!important;height:42%!important;transform:translate(-50%,-50%)!important;object-fit:contain!important;pointer-events:none!important;filter:drop-shadow(0 2px 1px #000a)!important;animation:none!important}
.pet-visual[data-pet-ground="hover"] .pet-odd-spectacles{top:36%!important;width:64%!important}
.pet-visual[data-pet-personality="heavy"] .pet-odd-spectacles{top:30%!important;width:66%!important}
.pet-visual[data-pet-personality="skitter"] .pet-odd-spectacles{top:38%!important;width:58%!important}
.odd-spectacles-bank-art,.odd-spectacles-achievement-art{object-fit:contain;background:transparent}

/* Pet facing direction and starter-cat cosmetic alignment */
/* OSRS pet artwork is supplied facing left. Mirror the complete pet/cosmetic
   stack by default so static pets face right and moving pets face forwards. */
.pet-visual{--pet-facing:-1}
.pet-visual[data-pet-id="pet_free_cat"] .pet-odd-spectacles{
  left:50%!important;
  top:45%!important;
  width:48%!important;
  height:31%!important;
  transform:translate(-50%,-50%)!important;
}


/* 2026-07-30 definitive pet-facing and cosmetic isolation fix.
   Only the pet artwork is mirrored. Cosmetics keep their original artwork
   orientation, labels remain readable, and every context uses the same markup. */
.pet-visual{
  --pet-facing:1!important;
  transform:none!important;
}
.pet-body-facing{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:100%;
  transform:scaleX(-1)!important;
  transform-origin:50% 85%;
}
.pet-body-facing>.pet-body{
  display:block;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  position:relative!important;
  z-index:2!important;
}
/* Never let idle or movement logic flip the complete pet/cosmetic stack. */
.roaming-pet.pet-is-idle .pet-visual{animation:none!important}
.roaming-pet .pet-visual{transform:none!important}
.roaming-pet .pet-body-facing{transform:scaleX(-1)!important}
/* Cosmetics are independent of the mirrored body. */
.pet-visual>.pet-cosmetic{transform-origin:50% 50%!important}
.pet-visual>.pet-odd-spectacles{
  left:var(--spec-x,50%)!important;
  top:var(--spec-y,36%)!important;
  width:var(--spec-w,52%)!important;
  height:auto!important;
  transform:translate(-50%,-50%) rotate(var(--spec-r,0deg))!important;
}
.pet-visual[data-pet-id="pet_free_cat"]>.pet-odd-spectacles{
  left:var(--spec-x,50%)!important;
  top:var(--spec-y,43%)!important;
  width:var(--spec-w,45%)!important;
}
/* Old direct-child rules expected the body image without its facing wrapper. */
.pet-visual>.pet-body{display:none!important}
.pet-ground-shadow{transform:none!important}
.pet-visual[data-pet-ground="hover"] .pet-ground-shadow{transform:scale(.75)!important}

/* 2026-07-30 pet wrapper reset.
   The legacy `.roaming-pet span` label rule was also styling the newer
   pet-sprite/body wrapper spans, creating green square panels and changing
   their intrinsic size. Restrict label chrome to .pet-label and fully reset
   every visual wrapper. */
.roaming-pet .pet-sprite,
.roaming-pet .pet-visual,
.roaming-pet .pet-body-facing {
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  padding:0!important;
  margin:0!important;
  white-space:normal!important;
  width:100%!important;
  max-width:none!important;
  text-overflow:clip!important;
  overflow:visible!important;
}
.roaming-pet .pet-sprite {
  display:block!important;
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:0!important;
  width:auto!important;
  height:66px!important;
  transform:none!important;
}
.roaming-pet .pet-visual {
  display:inline-flex!important;
  position:relative!important;
  align-items:flex-end!important;
  justify-content:center!important;
  height:100%!important;
  transform:none!important;
}
.roaming-pet .pet-body-facing {
  display:block!important;
  position:relative!important;
  height:100%!important;
  transform:scaleX(-1)!important;
  transform-origin:50% 85%!important;
}
.roaming-pet .pet-body-facing>.pet-body {
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
/* Keep the original balanced room footprint on narrow layouts too. */
@media(max-width:700px){
  .roaming-pet .pet-sprite{left:9px!important;right:9px!important;height:54px!important}
}

/* 2026-07-30 cosmetic sizing and Shooting Star alignment correction. */
/* Fire cape: retain the current fit, but make it a tiny bit less dominant. */
.pet-visual>.pet-fire-cape{
  width:60%!important;
  height:74%!important;
  top:42%!important;
}
.pet-visual[data-pet-ground="hover"]>.pet-fire-cape{width:55%!important;height:68%!important;top:45%!important}
.pet-visual[data-pet-personality="heavy"]>.pet-fire-cape{width:66%!important;height:78%!important;top:41%!important}
.pet-visual[data-pet-personality="skitter"]>.pet-fire-cape{width:51%!important;height:59%!important;top:48%!important}

/* Spectacles are driven by per-pet CSS variables from petMarkup. */
.pet-visual>.pet-odd-spectacles{
  left:var(--spec-x,50%)!important;
  top:var(--spec-y,36%)!important;
  width:var(--spec-w,56%)!important;
  height:auto!important;
}

/* The old Shooting Star rule targeted every image, including cosmetics.
   Keep movement on the pet body only and preserve cosmetic anchor transforms. */
.mining-pet .star-pet-art img.pet-cosmetic,
.live-star-miner .star-pet-art img.pet-cosmetic{
  animation:none!important;
  animation-delay:0s!important;
}
.mining-pet .star-pet-art .pet-body,
.live-star-miner .star-pet-art .pet-body{
  position:relative!important;
  left:auto!important;
  top:auto!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.live-star-miner .star-pet-art>.pet-fire-cape,
.mining-pet .star-pet-art>.pet-fire-cape{
  left:50%!important;
  top:42%!important;
}
.live-star-miner .star-pet-art>.pet-odd-spectacles,
.mining-pet .star-pet-art>.pet-odd-spectacles{
  left:var(--spec-x,50%)!important;
  top:var(--spec-y,36%)!important;
  width:var(--spec-w,56%)!important;
  height:auto!important;
  transform:translate(-50%,-50%) rotate(var(--spec-r,0deg))!important;
}
.live-star-miner .star-pet-art>.pet-chefs-hat,
.mining-pet .star-pet-art>.pet-chefs-hat{
  left:var(--hat-x,50%)!important;
  top:var(--hat-y,20%)!important;
  width:var(--hat-w,38%)!important;
  height:auto!important;
  transform:translate(-50%,-50%) rotate(var(--hat-r,0deg))!important;
}

/* 2026-07-30 Mario kart seating/layering correction.
   The roaming-pet wrapper reset must not cancel the kart-specific scale.
   Keep the driver low and behind the kart body so pets and cosmetics sit
   inside the cockpit rather than being drawn on top of the vehicle. */
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-kart{
  z-index:3!important;
}
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-sprite{
  z-index:2!important;
  bottom:-5px!important;
  transform:scale(.62)!important;
  transform-origin:center bottom!important;
}
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label{
  z-index:5!important;
  bottom:68px!important;
}
@media(max-width:850px){
  .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-sprite{
    bottom:-4px!important;
    transform:scale(.58)!important;
  }
  .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label{
    bottom:61px!important;
  }
}

/* 2026-07-30 kart driver visibility correction.
   Keep the kart behind the pet artwork; lowering/scaling the driver creates
   the seated look without the opaque kart body hiding the entire pet. */
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-kart{
  z-index:1!important;
}
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-sprite{
  z-index:2!important;
  bottom:3px!important;
  transform:scale(.60)!important;
  transform-origin:center bottom!important;
}
.pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label{
  z-index:5!important;
  bottom:66px!important;
}
@media(max-width:850px){
  .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-sprite{
    bottom:2px!important;
    transform:scale(.56)!important;
  }
  .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label{
    bottom:59px!important;
  }
}

/* 2026-07-30 Shooting Star cosmetic fix.
   Mining movement must animate the pet body only. The old broad `img` rules
   also animated equipped hats, capes and spectacles, replacing their anchor
   transforms and throwing them away from the pet. */
.mining-pet .star-pet-art img,
.live-star-miner .star-pet-art img{
  animation:none!important;
}
.mining-pet .star-pet-art .pet-body-facing{
  animation:petMiningBodyFacing 1.25s ease-in-out infinite!important;
}
.live-star-miner .star-pet-art .pet-body-facing{
  animation:petMiningBodyFacing .92s ease-in-out infinite!important;
}
.live-star-miner:nth-child(2n) .star-pet-art .pet-body-facing{animation-delay:-.35s!important}
.live-star-miner:nth-child(3n) .star-pet-art .pet-body-facing{animation-delay:-.7s!important}
@keyframes petMiningBodyFacing{
  0%,100%{transform:scaleX(-1) scale(var(--pet-scale)) rotate(-1deg)}
  55%{transform:scaleX(-1) scale(var(--pet-scale)) translateY(2px) rotate(2deg)}
}
/* Keep every equipped cosmetic visible and anchored above the animated body. */
.mining-pet .star-pet-art>.pet-cosmetic,
.live-star-miner .star-pet-art>.pet-cosmetic{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:20!important;
  animation:none!important;
}
.mining-pet .star-pet-art>.pet-fire-cape,
.live-star-miner .star-pet-art>.pet-fire-cape{
  z-index:1!important;
}
.mining-pet .star-pet-art>.pet-chefs-hat,
.mining-pet .star-pet-art>.pet-odd-spectacles,
.live-star-miner .star-pet-art>.pet-chefs-hat,
.live-star-miner .star-pet-art>.pet-odd-spectacles{
  z-index:21!important;
}

/* 2026-07-30 final Shooting Star cosmetic visibility safeguard. */
.mining-pet-visual .star-pet-art,
.live-star-miner .star-pet-art{position:relative!important;display:block!important;overflow:visible!important}
.mining-pet-visual .star-pet-art>.pet-cosmetic,
.live-star-miner .star-pet-art>.pet-cosmetic{display:block!important;visibility:visible!important;opacity:1!important}


/* Tombs of Amascut — Room 1 lobby */
.raid-preview-card.raid-live{font:inherit;text-align:left;color:inherit;cursor:pointer!important}
.raid-preview-card.raid-live:hover{transform:translateY(-2px);border-color:#d8ae5b;filter:brightness(1.12)}
.toa-dialog{width:min(1320px,calc(100% - 16px))!important;max-height:96vh;padding:12px!important;background:#090b10!important;border:3px solid #72552e!important;box-shadow:0 0 0 3px #1a1208,0 20px 70px #000!important;overflow:auto}
.toa-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 44px 12px 12px;border-bottom:2px solid #75522a;background:linear-gradient(90deg,#171a22,#0b0d12)}
.toa-header span{color:#c4a264;font-size:11px;letter-spacing:2px}.toa-header h3{margin:2px 0;color:#ead6a1;font-size:25px;letter-spacing:2px}.toa-header p{margin:0;color:#8e9aae;font-size:11px;letter-spacing:1.5px}
.toa-party-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.toa-party-bar button{padding:9px 12px;border:1px solid #97713c;background:linear-gradient(#4b3821,#24190e);color:#f0d79a;font-weight:800;cursor:pointer}.toa-party-bar button:hover{filter:brightness(1.2)}.toa-party-bar label{display:flex}.toa-party-bar input{width:82px;padding:8px;background:#07090d;border:1px solid #665237;color:#fff;text-transform:uppercase;letter-spacing:2px;text-align:center}
.toa-game-shell{padding:10px;background:#05070b}.toa-lobby{position:relative;width:100%;aspect-ratio:1.5/1;max-height:76vh;overflow:hidden;outline:none;background:#111 url('assets/toa-lobby-room.png') center/100% 100% no-repeat;image-rendering:auto;box-shadow:inset 0 0 45px #000}
.toa-shade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 55%,transparent 30%,rgba(0,0,0,.22) 76%,rgba(0,0,0,.5));z-index:1}
.toa-player-sprite{position:absolute;left:50%;top:79%;width:34px;height:49px;z-index:8;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 2px #000b);transition:filter .15s}.toa-player-sprite.walking{animation:toaBob .22s steps(2) infinite}.toa-player-sprite.facing-left{transform:translate(-50%,-50%) scaleX(-1)}
.toa-shadow{position:absolute;left:3px;bottom:0;width:29px;height:8px;border-radius:50%;background:#0008}.toa-body{position:absolute;left:8px;top:19px;width:20px;height:25px;border-radius:4px 4px 7px 7px;background:linear-gradient(90deg,#57361f 0 25%,#8e6236 26% 72%,#4b2d1a 73%);border:2px solid #17100b}.toa-head{position:absolute;left:10px;top:4px;width:17px;height:17px;border-radius:46%;background:#c88d5d;border:2px solid #24140c;box-shadow:inset 0 5px #3d2418}.toa-cape{position:absolute;left:5px;top:20px;width:9px;height:25px;background:#6d321e;border:2px solid #20110d;transform:skewY(8deg)}
@keyframes toaBob{50%{margin-top:-2px}}
.toa-path-label{position:absolute;z-index:6;padding:5px 8px;background:#08090dd9;border:1px solid #b7904b;color:#f0d997;font-size:11px;font-weight:900;letter-spacing:.7px;text-align:center;pointer-events:none;text-shadow:1px 1px #000}.toa-path-label span{display:block;margin-top:2px;color:#b67e65;font-size:8px}.toa-het{left:4%;top:52%}.toa-crondis{left:18%;top:8%}.toa-scarabas{right:18%;top:8%}.toa-wardens{left:50%;top:2.5%;transform:translateX(-50%);white-space:nowrap;border-color:#d7bc72;color:#fff0b5}.toa-apmeken{right:4%;top:52%}
.toa-notice{position:absolute;left:50%;bottom:3%;z-index:12;transform:translateX(-50%);max-width:78%;padding:8px 14px;border:1px solid #a98445;background:#08090de8;color:#ead9ae;font-weight:700;text-align:center;opacity:1;transition:opacity .35s}.toa-notice.hidden{opacity:0;pointer-events:none}
.toa-footer{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:9px 11px;background:#11141b;border-top:1px solid #634a2a;color:#9da8b9;font-size:10px;letter-spacing:.5px}.toa-footer b{color:#d5b774;margin-right:5px}
@media(max-width:800px){.toa-header{align-items:flex-start;flex-direction:column}.toa-party-bar{justify-content:flex-start}.toa-path-label{font-size:8px}.toa-path-label span{display:none}.toa-player-sprite{transform:translate(-50%,-50%) scale(.75)}.toa-player-sprite.facing-left{transform:translate(-50%,-50%) scaleX(-1) scale(.75)}}

/* Tombs of Amascut — Path of Crondis staging room */
.toa-context-action{position:absolute;left:50%;bottom:4.5%;z-index:20;transform:translateX(-50%);display:flex;align-items:center;gap:9px;padding:7px 12px;border:1px solid #b78b46;background:linear-gradient(180deg,rgba(37,27,17,.96),rgba(12,10,8,.96));color:#ead6a1;font-size:11px;font-weight:900;letter-spacing:.7px;box-shadow:0 3px 12px #000,inset 0 0 0 1px #2d2115;pointer-events:none;white-space:nowrap}.toa-context-action kbd{display:inline-grid;place-items:center;min-width:25px;height:23px;padding:0 4px;border:1px solid #d1ad63;border-bottom-width:3px;border-radius:3px;background:#4c351d;color:#fff0bd;font:900 12px Georgia,serif;text-shadow:1px 1px #000}.toa-context-action span{padding-top:1px}.toa-context-action.hidden{display:none}.toa-path-label.unlocked{border-color:#70c979;color:#d9ffd8;box-shadow:0 0 12px #55b35c88}.toa-path-label.unlocked span{color:#83dc87}
.toa-crondis-room{position:absolute;inset:0;z-index:30;background:#111 url('assets/toa-crondis-room.png') center/100% 100% no-repeat;overflow:hidden}.toa-crondis-room.hidden{display:none}.toa-crondis-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 55%,transparent 42%,rgba(0,0,0,.32));z-index:1}.toa-crondis-player{left:47%;top:91%;z-index:8}.toa-crondis-teammate{left:53%;top:91%;z-index:8;filter:hue-rotate(90deg) drop-shadow(0 3px 2px #000b)}
.toa-ready-panel{position:absolute;left:50%;bottom:2.5%;z-index:14;transform:translateX(-50%);width:min(580px,88%);padding:10px 14px;background:#080a0ee8;border:2px solid #a17d3f;box-shadow:0 5px 25px #000;color:#d6c596;text-align:center}.toa-ready-panel span{font-size:9px;letter-spacing:2px;color:#a98c58}.toa-ready-panel h4{margin:2px 0 4px;color:#f5dfaa;font-size:18px;letter-spacing:2px}.toa-ready-panel p{margin:0 0 8px;font-size:10px;color:#abb5b4}.toa-ready-members{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:6px}.toa-ready-members b{padding:5px 8px;border:1px solid #6f5730;background:#21170d;color:#d6b77a;font-size:9px}.toa-ready-members b.ready{border-color:#4d9a55;color:#c8ffc9;background:#102414}.toa-ready-panel button{margin:4px;padding:8px 13px;border:1px solid #b28b48;background:linear-gradient(#52391e,#21140b);color:#f4d79b;font-weight:900;cursor:pointer}.toa-ready-panel button:hover{filter:brightness(1.18)}
.toa-arena-banner{position:absolute;left:50%;top:8%;z-index:15;transform:translateX(-50%);padding:9px 18px;background:#08090ddb;border:1px solid #d5ad5d;color:#f4dca3;text-align:center;animation:toaArenaIn .5s ease}.toa-arena-banner.hidden{display:none}.toa-arena-banner b,.toa-arena-banner span{display:block}.toa-arena-banner b{font-size:15px;letter-spacing:2px}.toa-arena-banner span{font-size:8px;color:#c4a875;letter-spacing:1.5px}@keyframes toaArenaIn{from{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%,0)}}

/* TOA prayer book */
.toa-prayer-book{position:absolute;right:1.5%;bottom:8%;z-index:18;display:flex;gap:7px;padding:8px 7px;background:linear-gradient(180deg,#504738f2,#28241cf2);border:2px solid #716652;box-shadow:0 0 0 2px #1a1712,0 5px 18px #0009;image-rendering:pixelated}
.toa-prayer-book button{width:55px;height:55px;padding:0;border:0;background:transparent;cursor:pointer;filter:grayscale(.25) brightness(.82);transition:filter .12s,transform .12s}
.toa-prayer-book button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.toa-prayer-book button.active{filter:brightness(1.3) drop-shadow(0 0 7px #fff48a);transform:translateY(-2px)}
.toa-prayer-book img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.toa-prayer-overhead{position:absolute;left:50%;top:-31px;width:29px;height:29px;transform:translateX(-50%);z-index:20;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 2px #000)}
.toa-prayer-overhead.hidden{display:none}
@media(max-width:800px){.toa-prayer-book{right:1%;bottom:6%;padding:5px;gap:4px}.toa-prayer-book button{width:42px;height:42px}.toa-prayer-overhead{top:-25px;width:23px;height:23px}}

/* TOA Crondis weapon — fitted to the character's hands after readying */
.toa-weapon-bow{display:none;position:absolute;left:9px;top:7px;width:43px;height:49px;object-fit:contain;transform:rotate(12deg) scaleX(-1);transform-origin:44% 55%;z-index:13;pointer-events:none;filter:drop-shadow(0 2px 1px #000c)}
.toa-player-sprite.toa-armed .toa-weapon-bow{display:block}
.toa-player-sprite.facing-left .toa-weapon-bow{transform:rotate(12deg) scaleX(-1)}
.toa-player-sprite.toa-armed .toa-body,.toa-player-sprite.toa-armed .toa-head{z-index:11}
.toa-player-sprite.toa-armed .toa-cape{z-index:9}
.toa-player-sprite.toa-armed .toa-shadow{z-index:1}
@media(max-width:800px){.toa-weapon-bow{left:8px;top:8px;width:40px;height:45px}}


/* TOA food inventory */
.toa-food-inventory{position:absolute;right:1.5%;bottom:21%;z-index:18;width:193px;padding:7px;background:linear-gradient(180deg,#504738f2,#28241cf2);border:2px solid #716652;box-shadow:0 0 0 2px #1a1712,0 5px 18px #0009;image-rendering:pixelated}
.toa-inventory-title{display:block;margin:0 0 5px;color:#d8c38d;font-size:8px;font-weight:900;letter-spacing:1.5px;text-align:center;text-shadow:1px 1px #000}
.toa-shark-slots{display:grid;grid-template-columns:repeat(3,55px);gap:7px}
.toa-food-slot{position:relative;width:55px;height:55px;padding:0;border:1px solid #6d624f;background:radial-gradient(circle,#6b604d 0 56%,#3d372b 57%);cursor:pointer;box-shadow:inset 0 0 8px #0008;overflow:hidden}
.toa-food-slot:hover{filter:brightness(1.15);transform:translateY(-1px)}
.toa-food-slot img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #000b)}
.toa-food-slot.eaten{pointer-events:none;animation:toaFoodVanish .24s ease forwards}
@keyframes toaFoodVanish{to{opacity:0;transform:scale(.45)}}
.toa-player-sprite.toa-eating .toa-head{animation:toaEatHead .36s steps(2)}
.toa-player-sprite.toa-eating .toa-body{animation:toaEatBody .36s steps(2)}
@keyframes toaEatHead{50%{transform:translateY(3px) rotate(-8deg)}}
@keyframes toaEatBody{50%{transform:scaleY(.94)}}
@media(max-width:800px){.toa-food-inventory{right:1%;bottom:19%;width:145px;padding:5px}.toa-shark-slots{grid-template-columns:repeat(3,42px);gap:4px}.toa-food-slot{width:42px;height:42px}.toa-inventory-title{font-size:7px}}

/* Zebak encounter — automatic ranged combat and prayer-reactive normal attacks */
.toa-zebak-hud{position:absolute;left:50%;top:2.2%;z-index:22;transform:translateX(-50%);width:min(520px,64%);padding:7px 10px;background:#090b0ee8;border:2px solid #8c6635;box-shadow:0 4px 18px #000b;text-align:center}.toa-zebak-hud.hidden,.toa-player-hud.hidden,.toa-attack-warning.hidden{display:none}.toa-zebak-name{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;color:#e9ce8c;letter-spacing:1.5px;font-size:10px}.toa-zebak-name b{font-size:15px;color:#f1dda6}.toa-zebak-name span{color:#c8a365;font-size:8px}.toa-zebak-hp-track,.toa-player-hud div{position:relative;height:17px;background:#260c0c;border:1px solid #cfb071;box-shadow:inset 0 0 6px #000}.toa-zebak-hp-track i,.toa-player-hud i{position:absolute;inset:0 auto 0 0;width:100%;background:linear-gradient(#58bc4c,#256c27);transition:width .24s}.toa-zebak-hp-track strong,.toa-player-hud strong{position:relative;z-index:2;color:#fff;font-size:10px;line-height:17px;text-shadow:1px 1px 2px #000}
.toa-player-hud{position:absolute;left:1.5%;bottom:8%;z-index:21;width:150px;padding:7px;background:#15120ee8;border:2px solid #776044;box-shadow:0 4px 14px #000b}.toa-player-hud>span{display:block;margin-bottom:4px;color:#d9c395;font-size:8px;font-weight:900;letter-spacing:1.5px}.toa-player-hud div{height:15px}.toa-player-hud strong{display:block;text-align:center;line-height:15px}.toa-player-hud i{background:linear-gradient(#d84a3e,#8c1717)}
.toa-attack-warning{position:absolute;left:50%;top:15%;z-index:25;transform:translateX(-50%);min-width:250px;padding:10px 20px;background:#08090df2;border:3px solid #fff;text-align:center;box-shadow:0 0 24px currentColor,0 5px 20px #000}.toa-attack-warning b,.toa-attack-warning span{display:block}.toa-attack-warning b{font-size:23px;letter-spacing:4px}.toa-attack-warning span{margin:2px 0 7px;font-size:10px;font-weight:900;letter-spacing:1.5px}.toa-attack-warning i{display:block;height:5px;background:currentColor;transform-origin:left;animation:toaTelegraphDrain 1.65s linear forwards}.toa-attack-warning.magic{color:#72d6ff;border-color:#45aadd}.toa-attack-warning.ranged{color:#b8ef62;border-color:#75ad2e}.toa-attack-warning.melee{color:#ff7c66;border-color:#d23c2b}@keyframes toaTelegraphDrain{to{transform:scaleX(0)}}
.toa-combat-effects{position:absolute;inset:0;z-index:17;pointer-events:none;overflow:hidden}.toa-projectile{position:absolute;left:0;top:0;width:18px;height:18px;transform:translate(-50%,-50%);will-change:transform,left,top}.toa-projectile.magic{border-radius:50%;background:radial-gradient(circle,#fff 0 16%,#65d6ff 30%,#275ccb 58%,transparent 70%);box-shadow:0 0 12px #52caff}.toa-projectile.ranged{width:31px;height:7px;background:linear-gradient(90deg,#7c5529 0 72%,#d7d1bd 73%);clip-path:polygon(0 35%,75% 35%,75% 0,100% 50%,75% 100%,75% 65%,0 65%);filter:drop-shadow(0 0 3px #c4ec65)}.toa-projectile.player-arrow{width:30px;height:6px;background:linear-gradient(90deg,#755027 0 72%,#e6d894 73%);clip-path:polygon(0 35%,75% 35%,75% 0,100% 50%,75% 100%,75% 65%,0 65%);filter:drop-shadow(0 0 3px #fff1a1)}.toa-melee-swipe{position:absolute;width:78px;height:78px;border:9px solid transparent;border-top-color:#ff6350;border-right-color:#ff6350;border-radius:50%;transform:translate(-50%,-50%) rotate(-35deg);animation:toaSwipe .42s ease-out forwards;filter:drop-shadow(0 0 7px #ff4d38)}@keyframes toaSwipe{from{opacity:1;transform:translate(-50%,-50%) rotate(-70deg) scale(.45)}to{opacity:0;transform:translate(-50%,-50%) rotate(25deg) scale(1.25)}}
.toa-damage-splat{position:absolute;z-index:30;transform:translate(-50%,-50%);min-width:27px;height:27px;padding:0 4px;border-radius:50%;display:grid;place-items:center;background:#791616;border:2px solid #f1b0a5;color:#fff;font:900 12px Georgia,serif;text-shadow:1px 1px #000;animation:toaSplat .75s ease-out forwards}.toa-damage-splat.blocked{background:#1b1d22;border-color:#b5bec9;color:#e9eef5}.toa-damage-splat.heal{background:#185f24;border-color:#8be29b}@keyframes toaSplat{to{opacity:0;transform:translate(-50%,-95%) scale(.85)}}.toa-player-sprite.toa-firing .toa-weapon-bow{animation:toaBowFire .28s ease}@keyframes toaBowFire{50%{transform:rotate(-2deg) scaleX(-1) scale(.9)}}.toa-player-sprite.toa-hit{animation:toaHitShake .25s linear}@keyframes toaHitShake{25%{margin-left:-5px}75%{margin-left:5px}}.toa-crondis-room.toa-magic-cue{box-shadow:inset 0 0 70px #2874d477}.toa-crondis-room.toa-ranged-cue{box-shadow:inset 0 0 70px #82b72e66}.toa-crondis-room.toa-melee-cue{box-shadow:inset 0 0 70px #d6423266}
@media(max-width:800px){.toa-zebak-hud{width:58%;top:1%;padding:5px}.toa-attack-warning{top:12%;min-width:190px;padding:7px 11px}.toa-attack-warning b{font-size:17px}.toa-player-hud{width:115px;bottom:5%}}

/* Zebak attack tells: physical projectiles instead of instruction text */
.toa-attack-warning{display:none!important}
.toa-zebak-visual{position:absolute;left:50%;top:15.5%;z-index:16;width:25%;height:19%;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;opacity:0;mix-blend-mode:screen}
.toa-zebak-visual.melee-charge{opacity:1;background:radial-gradient(ellipse,#ff3a2c88 0 35%,#d10b0080 48%,transparent 72%);filter:drop-shadow(0 0 22px #ff2718);animation:toaMeleeCharge .24s steps(2) infinite}
.toa-zebak-visual.stomping{opacity:1;background:radial-gradient(ellipse,#ff1d0dcc 0 38%,#a9000090 52%,transparent 72%);animation:toaZebakStomp .52s ease-out}
.toa-boss-charge{position:absolute;z-index:28;transform:translate(-50%,-50%);will-change:transform,filter;animation:toaBossCharge 1.8s ease-in forwards}
.toa-boss-charge.magic{width:64px;height:64px;border-radius:50%;background:radial-gradient(circle,#fff 0 10%,#8cecff 22%,#2387ed 48%,#092c8e 65%,transparent 72%);box-shadow:0 0 18px #66dcff,0 0 38px #1977ff}
.toa-boss-charge.ranged{width:92px;height:24px;background:linear-gradient(90deg,#63ff64 0 12%,#196d24 13% 69%,#caff78 70%);clip-path:polygon(0 35%,72% 35%,72% 0,100% 50%,72% 100%,72% 65%,0 65%);filter:drop-shadow(0 0 9px #70ff55) drop-shadow(0 0 18px #37c947)}
.toa-projectile.magic{width:46px;height:46px;box-shadow:0 0 18px #52caff,0 0 34px #2275ff}
.toa-projectile.ranged{width:72px;height:18px;background:linear-gradient(90deg,#46d94e 0 70%,#d4ff8c 71%);filter:drop-shadow(0 0 8px #5dff55)}
.toa-stomp-impact{position:absolute;z-index:27;width:34px;height:18px;border:6px solid #ff4c39;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 20px #ff2817;animation:toaStompImpact .6s ease-out forwards}
@keyframes toaBossCharge{0%{transform:translate(-50%,-50%) scale(.28);opacity:.35}65%{transform:translate(-50%,-50%) scale(.85);opacity:1}100%{transform:translate(-50%,-50%) scale(1.22);opacity:1}}
@keyframes toaMeleeCharge{50%{filter:drop-shadow(0 0 35px #ff1a0a);transform:translate(-50%,-50%) scale(1.05)}}
@keyframes toaZebakStomp{0%{transform:translate(-50%,-50%) scale(1)}35%{transform:translate(-50%,-43%) scale(1.12)}55%{transform:translate(-50%,-50%) scale(1.18)}100%{transform:translate(-50%,-50%) scale(1);opacity:0}}
@keyframes toaStompImpact{from{opacity:1;transform:translate(-50%,-50%) scale(.35)}to{opacity:0;transform:translate(-50%,-50%) scale(3.4)}}

/* Nexus overhead chat */
.toa-chat-prompt{position:absolute;left:50%;bottom:2.4%;z-index:24;transform:translateX(-50%);display:flex;align-items:center;gap:7px;padding:5px 9px;background:#100d08d9;border:1px solid #8d744b;color:#e7d19b;font:700 9px Arial,sans-serif;letter-spacing:.4px;box-shadow:0 3px 10px #0009}.toa-chat-prompt.hidden{display:none}.toa-chat-prompt kbd{min-width:19px;padding:2px 5px;border:1px solid #c9aa6b;background:#2b2418;color:#fff;text-align:center;font:900 10px Arial,sans-serif}
.toa-chat-form{position:absolute;left:50%;bottom:2.1%;z-index:40;transform:translateX(-50%);display:flex;width:min(420px,76%);padding:5px;background:#17130de8;border:2px solid #9b7e4c;box-shadow:0 5px 18px #000c}.toa-chat-form.hidden{display:none}.toa-chat-form input{flex:1;min-width:0;padding:8px 10px;background:#080704;border:1px solid #5d4e34;color:#fff6d4;font:700 12px Arial,sans-serif;outline:none}.toa-chat-form input:focus{border-color:#d4b66e}.toa-chat-form button{width:auto!important;margin:0 0 0 5px!important;padding:7px 12px!important;background:#4b3c22!important;border:1px solid #bc9854!important;color:#fff0bf!important;font-size:9px!important}
.toa-chat-bubble{position:absolute;left:50%;bottom:82%;z-index:35;transform:translateX(-50%);max-width:190px;padding:2px 4px;color:#fff100;text-align:center;white-space:normal;font:700 11px Arial,sans-serif;line-height:1.15;text-shadow:1px 1px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000;pointer-events:none}.toa-chat-bubble.hidden{display:none}.toa-remote-chat{left:58%;top:57%;bottom:auto;position:absolute}

/* Zebak 70% acid and 60%-40% tidal-wave mechanics */
.toa-crondis-room.toa-scream-cue{animation:toaArenaRumble .12s linear 10;box-shadow:inset 0 0 80px #d8f1ff66}
.toa-zebak-visual.screaming{opacity:1;background:radial-gradient(ellipse,#dff8ffbb 0 22%,#4aa0c777 42%,transparent 72%);animation:toaZebakScream 1.5s ease}
.toa-acid-shot{position:absolute;z-index:25;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle,#eaff75 0 18%,#75c91d 43%,#253f08 70%);box-shadow:0 0 12px #9dff30;transform:translate(-50%,-50%);animation:toaAcidSpit .85s ease-in forwards}
.toa-acid-pool{position:absolute;z-index:11;border-radius:46% 54% 42% 58%/58% 38% 62% 42%;background:radial-gradient(ellipse,#b9f248cc 0 16%,#5d9a20dd 45%,#243b10e8 76%);border:2px solid #a7dd43;box-shadow:inset 0 0 14px #dfff6d99,0 0 10px #75b82d99;transform:scale(0);animation:toaAcidLand .55s var(--acid-delay) ease-out forwards,toaAcidBubble 1.1s calc(var(--acid-delay) + .55s) ease-in-out infinite alternate}
.toa-tidal-wave{position:absolute;top:0;left:-10%;z-index:24;width:16%;height:100%;pointer-events:none;filter:drop-shadow(5px 0 8px #052f4dcc) drop-shadow(0 0 9px #68cbe1aa)}
.toa-tidal-wave::before{content:"";position:absolute;z-index:4;top:0;right:-18%;width:42%;height:100%;background:linear-gradient(90deg,#d8fbffb8,transparent);filter:blur(5px);opacity:.72;animation:toaWaveMist .28s ease-in-out infinite alternate}
.toa-wave-water{position:absolute;left:0;width:100%;display:block;overflow:hidden;background:linear-gradient(90deg,#082d47f2 0%,#0c5078f2 28%,#168bb1ec 61%,#70d4e4dc 86%,#d9fbfff2 100%);border-right:3px solid #ecffff;box-shadow:inset -13px 0 12px #9feef188,inset 6px 0 10px #041c2eaa;clip-path:polygon(0 0,82% 0,100% 3%,86% 7%,100% 11%,84% 16%,100% 21%,87% 27%,100% 32%,85% 38%,100% 44%,86% 50%,100% 56%,84% 62%,100% 68%,86% 74%,100% 80%,84% 86%,100% 92%,86% 96%,100% 100%,0 100%)}
.toa-wave-water::before{content:"";position:absolute;z-index:2;top:0;right:0;width:34%;height:100%;background:radial-gradient(ellipse at right,#fff 0 8%,#c8f8ffcc 10% 22%,transparent 25%) 0 0/100% 29px repeat-y;animation:toaWaveFoam .22s linear infinite}
.toa-wave-water::after{content:"";position:absolute;inset:-18px -10px;background:repeating-linear-gradient(165deg,transparent 0 11px,#b9f5ff25 12px 15px,transparent 16px 25px),radial-gradient(ellipse at 65% 50%,#d5fbff42 0 8%,transparent 10%);background-size:auto,80px 42px;animation:toaWaterFlow .3s linear infinite}
.toa-wave-water.top{top:0;border-bottom:2px solid #8dd7df}.toa-wave-water.bottom{bottom:0;border-top:2px solid #8dd7df}
@keyframes toaZebakScream{0%{transform:translate(-50%,-50%) scale(1)}20%{transform:translate(-50%,-54%) scale(1.18)}35%,55%,75%{filter:drop-shadow(0 0 32px #bff3ff);transform:translate(-52%,-54%) scale(1.22)}45%,65%,85%{transform:translate(-48%,-54%) scale(1.22)}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@keyframes toaArenaRumble{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}
@keyframes toaAcidSpit{0%{left:50%;top:17%;transform:translate(-50%,-50%) scale(.4)}100%{left:50%;top:62%;transform:translate(-50%,-50%) scale(1.45);opacity:0}}
@keyframes toaAcidLand{to{transform:scale(1)}}
@keyframes toaAcidBubble{to{filter:brightness(1.22);transform:scale(1.025)}}
@keyframes toaWaterFlow{to{transform:translate(13px,17px)}}
@keyframes toaWaveFoam{to{background-position:0 29px}}
@keyframes toaWaveMist{to{opacity:.42;transform:scaleX(1.18)}}

/* Zebak 40%-0% blood-orb enrage and completion spirit */
.toa-blood-orb{position:absolute;z-index:23;width:30px;height:30px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 36% 32%,#fff 0 5%,#ff9aa5 8%,#d1192f 34%,#650413 68%,#210006 100%);border:2px solid #ff6475;box-shadow:0 0 10px #ff3048,0 0 22px #a5001c,inset 0 0 8px #ffb2bb;animation:toaBloodPulse .68s ease-in-out infinite alternate;pointer-events:none}
.toa-blood-orb::after{content:"";position:absolute;inset:-7px;border:2px solid #ff3b5088;border-radius:50%;animation:toaBloodRing 1s ease-out infinite}
@keyframes toaBloodPulse{to{transform:translate(-50%,-50%) scale(1.14);filter:brightness(1.22)}}
@keyframes toaBloodRing{to{transform:scale(1.35);opacity:0}}
.toa-helpful-spirit{position:absolute;z-index:32;width:78px;height:88px;transform:translate(-50%,-50%);border:0!important;background:transparent!important;padding:0!important;margin:0!important;cursor:pointer;filter:drop-shadow(0 0 10px #bff6ff)}
.toa-helpful-spirit i{position:absolute;left:50%;top:38%;width:34px;height:48px;transform:translate(-50%,-50%);border-radius:48% 48% 42% 42%;background:radial-gradient(circle at 50% 25%,#fff 0 12%,#b7f4ff 17% 34%,#65c9dfaa 53%,transparent 72%);box-shadow:0 0 18px #b8f7ff;animation:toaSpiritFloat 1.3s ease-in-out infinite alternate}
.toa-helpful-spirit i::after{content:"";position:absolute;left:50%;bottom:-14px;width:42px;height:24px;transform:translateX(-50%);background:linear-gradient(135deg,transparent 20%,#7fd7e6aa 22% 45%,transparent 47%),linear-gradient(45deg,transparent 20%,#7fd7e6aa 22% 45%,transparent 47%);filter:blur(1px)}
.toa-helpful-spirit b{position:absolute;left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;color:#fff38a;font:800 10px Arial,sans-serif;text-shadow:1px 1px #000,-1px -1px #000,0 0 5px #000}
@keyframes toaSpiritFloat{to{transform:translate(-50%,-58%);filter:brightness(1.18)}}
.toa-zebak-hud.toa-defeated .toa-zebak-hp-track{filter:grayscale(1);opacity:.72}

/* Zebak final 10% rage */
.toa-helpful-spirit{-webkit-appearance:none;appearance:none;outline:none!important;box-shadow:none!important;overflow:visible;border-radius:0!important}
.toa-helpful-spirit:focus,.toa-helpful-spirit:focus-visible,.toa-helpful-spirit:hover{outline:none!important;box-shadow:none!important;background:transparent!important}
.toa-final-shake{animation:toaFinalArenaShake .18s linear infinite}
@keyframes toaFinalArenaShake{0%,100%{transform:translate(0,0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,0)}75%{transform:translate(0,-1px)}}
.toa-boulder-warning{position:absolute;z-index:27;width:58px;height:30px;transform:translate(-50%,-50%);border-radius:50%;border:3px solid #ff5a35;background:radial-gradient(ellipse,#ffb13b55 0 38%,#e42d1966 42% 56%,transparent 61%);box-shadow:0 0 12px #ff3b22,inset 0 0 9px #ffb33b;animation:toaBoulderWarn .38s ease-in-out infinite alternate;pointer-events:none}
@keyframes toaBoulderWarn{from{scale:.88;opacity:.68}to{scale:1.08;opacity:1}}
.toa-falling-boulder{position:absolute;z-index:29;width:48px;height:48px;transform:translate(-50%,-170%) scale(1.25) rotate(-20deg);border-radius:46% 54% 43% 57%;background:radial-gradient(circle at 32% 27%,#9b8d75 0 10%,#675b49 28%,#332b22 67%,#17120e 100%);box-shadow:inset -5px -7px 7px #120d09,0 16px 8px #0008;animation:toaBoulderFall .52s cubic-bezier(.45,.02,.8,.48) forwards;pointer-events:none}
.toa-falling-boulder::before,.toa-falling-boulder::after{content:"";position:absolute;background:#211a14;border-radius:50%;opacity:.7}.toa-falling-boulder::before{width:13px;height:8px;left:8px;top:13px;rotate:-25deg}.toa-falling-boulder::after{width:10px;height:13px;right:8px;bottom:9px;rotate:35deg}
@keyframes toaBoulderFall{to{transform:translate(-50%,-50%) scale(1) rotate(16deg)}}
.toa-falling-boulder.landed{animation:toaBoulderLand .5s ease-out forwards}
@keyframes toaBoulderLand{0%{filter:brightness(1.7);scale:1.12}100%{filter:brightness(.7);scale:.82;opacity:0}}

/* ToA defeat / co-op spectator panel */
.toa-defeated-panel{position:absolute;left:50%;top:52%;z-index:80;width:min(440px,86%);transform:translate(-50%,-50%);padding:22px 20px;text-align:center;background:linear-gradient(#17130feF,#090806f5);border:3px solid #8d6a39;box-shadow:0 0 0 3px #241507,0 18px 60px #000;color:#ead9ad}
.toa-defeated-panel.hidden{display:none}.toa-defeated-panel>span{font:900 10px Arial,sans-serif;letter-spacing:2px;color:#bd9759}.toa-defeated-panel h4{margin:8px 0;color:#d64c3d;font:900 24px Georgia,serif;text-shadow:2px 2px #000}.toa-defeated-panel p{margin:0 0 16px;color:#ddd0ad;font:700 12px Arial,sans-serif}.toa-defeated-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.toa-defeated-actions button{width:auto!important;margin:0!important;padding:9px 13px!important}.toa-defeated-actions button:last-child{background:#5b201c!important;border-color:#bb5a4b!important}.toa-player-sprite.toa-dead{display:none!important}

.toa-party-bar.raid-started{display:none!important}
.toa-path-label.complete{border-color:#4fdb62;color:#dfffe3;background:#07150bdc;box-shadow:0 0 16px #35cf5577,inset 0 0 10px #1d7d3344}
.toa-path-label.complete span{color:#68ed78}
/* Keep overhead chat readable when the character sprite faces left. */
.toa-player-sprite.facing-left > .toa-chat-bubble{transform:translateX(-50%) scaleX(-1)}
/* Network teammate positions are interpolated in JS; avoid visual snapping. */
.toa-crondis-teammate{will-change:left,top;transition:left .06s linear,top .06s linear,filter .15s}

/* Path of Scarabas */
.toa-context-scarabas{left:auto;right:18%;}
.toa-scarabas-room{position:absolute;inset:0;z-index:31;background:#17120c url('assets/toa-scarabas-room.png') center/100% 100% no-repeat;overflow:hidden}
.toa-scarabas-room.hidden{display:none}
.toa-scarabas-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 55%,transparent 40%,rgba(0,0,0,.42));z-index:1}
.toa-scarabas-player{left:47%;top:88%;z-index:8}
.toa-scarabas-teammate{left:53%;top:88%;z-index:8;filter:hue-rotate(90deg) drop-shadow(0 3px 2px #000b)}
.toa-arena-banner{position:absolute;z-index:20;left:50%;top:8%;transform:translateX(-50%);padding:9px 18px;background:#090807df;border:2px solid #c8a65f;box-shadow:0 0 18px #000;color:#ead59a;text-align:center;letter-spacing:1px;pointer-events:none}
.toa-arena-banner span{display:block;font-size:9px}.toa-arena-banner b{font-size:17px;color:#fff1bd}
.toa-path-label.toa-scarabas.unlocked{border-color:#8ec66f;color:#d9ffc5;box-shadow:0 0 13px #69a34d99}.toa-path-label.toa-scarabas.unlocked span{color:#9ee684}

/* CatAsthma TOA testing controls */
.signed-in-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.admin-button{align-self:stretch;padding:9px 12px;border:1px solid #c89432;background:linear-gradient(#3a2a0d,#171006);color:#ffd66c;font-weight:900;letter-spacing:1px;cursor:pointer;box-shadow:inset 0 0 0 1px #6f501b}
.admin-button:hover{filter:brightness(1.18)}
.admin-button.active{border-color:#ff6868;background:linear-gradient(#681414,#240606);color:#fff0f0;box-shadow:0 0 7px #ff2222,0 0 18px #ff1717cc,0 0 32px #ff000066,inset 0 0 0 1px #a83838;animation:adminRedPulse 1.15s ease-in-out infinite}
@keyframes adminRedPulse{0%,100%{filter:brightness(1);box-shadow:0 0 7px #ff2222,0 0 18px #ff1717cc,0 0 32px #ff000066,inset 0 0 0 1px #a83838}50%{filter:brightness(1.24);box-shadow:0 0 10px #ff5555,0 0 25px #ff2020,0 0 42px #ff000099,inset 0 0 0 1px #e45d5d}}
@media(max-width:760px){.signed-in-controls{align-items:stretch}.admin-button{padding:8px}}

/* Kephri phase 1 */
.toa-kephri-hud{position:absolute;z-index:18;left:50%;top:2.2%;transform:translateX(-50%);width:min(430px,52%);pointer-events:none;text-align:center;font-family:Georgia,serif;text-shadow:2px 2px #000}
.toa-kephri-hud.hidden{display:none}.toa-kephri-name{display:flex;justify-content:space-between;color:#f4d888;font-size:13px;font-weight:900;letter-spacing:1.5px}.toa-kephri-name b{color:#fff3c4}.toa-kephri-hp{height:12px;margin-top:4px;background:#160b08;border:2px solid #bc8a34;box-shadow:0 0 0 2px #000,0 0 12px #d36b1b88;overflow:hidden}.toa-kephri-hp i{display:block;width:100%;height:100%;background:linear-gradient(#e7432f,#971913);transition:width .15s linear}.toa-kephri-phase{margin-top:5px;color:#e8c995;font-size:9px;letter-spacing:1px}
.toa-scarabas-effects{position:absolute;inset:0;z-index:7;pointer-events:none;overflow:hidden}
.toa-scarabas-player.toa-keris-armed::after,.toa-scarabas-teammate.toa-keris-armed::after{content:"";position:absolute;width:34px;height:34px;left:5px;top:-16px;background:url('assets/keris-partisan.png') center/contain no-repeat;transform:scaleX(-1) rotate(40deg);transform-origin:20% 80%;filter:drop-shadow(1px 2px 1px #000);z-index:-1}
.toa-player-sprite.facing-left.toa-keris-armed::after{transform:rotate(40deg)}
.toa-scarabas-player.toa-keris-strike::after,.toa-scarabas-teammate.toa-keris-strike::after{animation:toaKerisStrike .32s ease-out}@keyframes toaKerisStrike{0%{rotate:0deg}45%{rotate:-55deg}100%{rotate:0deg}}
.toa-kephri-hit{position:absolute;width:7px;height:7px;border-radius:50%;background:#ffe275;box-shadow:0 0 7px 3px #ff6d00;transform:translate(-50%,-50%);animation:toaKephriHit .45s ease-out forwards}@keyframes toaKephriHit{to{transform:translate(-50%,-50%) scale(3);opacity:0}}
.toa-fireball-shadow{position:absolute;width:7.5%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#160000aa 0 38%,#5b130bbb 43%,#ff5a2233 62%,transparent 70%);box-shadow:0 0 14px #e43b1d88;animation:toaShadowPulse .45s infinite alternate;z-index:2}@keyframes toaShadowPulse{to{scale:1.18;filter:brightness(1.35)}}
.toa-kephri-fireball{position:absolute;width:5.4%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 35% 30%,#fff7b3 0 12%,#ff9b26 28%,#da2e13 58%,#530900 75%,transparent 77%);box-shadow:0 0 16px 6px #ff4d16;z-index:4}
.toa-fireball-impact{position:absolute;width:11%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,#fff3a8,#ff781f 28%,#c91f0e 49%,transparent 70%);animation:toaFireImpact .55s ease-out forwards;z-index:5}@keyframes toaFireImpact{to{scale:2.1;opacity:0}}
.toa-kephri-damage{position:absolute;transform:translate(-50%,-50%);color:white;background:#b0201b;border:2px solid #fff;border-radius:50%;min-width:22px;height:22px;display:grid;place-items:center;font:900 12px Arial;box-shadow:0 2px 3px #000;animation:toaKDamage .9s ease-out forwards;z-index:9}@keyframes toaKDamage{to{translate:0 -28px;opacity:0}}
.toa-scarabas-room.kephri-active .toa-scarabas-vignette{background:radial-gradient(ellipse at 50% 55%,transparent 52%,rgba(0,0,0,.34))}

.toa-scarabas-room .toa-player-hud{left:1.5%;top:9%;bottom:auto;}
.toa-scarabas-room.kephri-shake{animation:toaKephriShake .09s linear 10}@keyframes toaKephriShake{25%{translate:-5px 2px}50%{translate:4px -3px}75%{translate:-2px -2px}}
.toa-dung-ball{position:absolute;width:4.3%;aspect-ratio:1;border-radius:48% 52% 45% 55%;transform:translate(-50%,-50%);z-index:5;background:radial-gradient(circle at 34% 28%,#a8783e 0 12%,#68431f 38%,#35200f 72%);box-shadow:0 3px 4px #000b,0 0 0 2px #211307}.toa-dung-ball:not(.flying){animation:toaDungPulse .75s infinite alternate}@keyframes toaDungPulse{to{filter:brightness(1.25);scale:1.06}}
.toa-dung-explosion{position:absolute;width:11%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);z-index:7;background:radial-gradient(circle,#d7b35b 0 8%,#75441e 28%,#3b2613 50%,transparent 71%);animation:toaDungBurst .65s ease-out forwards}@keyframes toaDungBurst{to{scale:2.2;opacity:0}}
.toa-kephri-flea{position:absolute;width:.9%;aspect-ratio:1;border-radius:55% 45% 55% 45%;transform:translate(-50%,-50%) rotate(35deg);z-index:5;background:#5a2417;box-shadow:-3px 0 0 -1px #26100b,3px 0 0 -1px #26100b,0 0 4px #ff8b3c;animation:toaFleaScuttle .18s steps(2) infinite}@keyframes toaFleaScuttle{to{rotate:55deg;scale:1.12}}
.toa-flea-shot{position:absolute;width:1.1%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);z-index:8;background:#87d13e;box-shadow:0 0 5px 2px #b8ff61}
.toa-kephri-damage.blocked{background:#294b22;color:#fff}

/* Kephri flea refinement: tiny airborne swarm with subtle fluttering. */
.toa-kephri-flea{min-width:5px;max-width:9px;filter:drop-shadow(0 1px 1px #000);animation:toaFleaScuttle .14s steps(2) infinite,toaFleaHover .7s ease-in-out infinite alternate}
@keyframes toaFleaHover{to{margin-top:-3px;filter:brightness(1.18) drop-shadow(0 3px 2px #0008)}}

/* Kephri Dung Strike */
.toa-dung-strike-flies{position:absolute;width:7%;aspect-ratio:1;transform:translate(-50%,-55%);z-index:12;pointer-events:none;animation:toaDungSwarmPulse .35s ease-in-out infinite alternate}
.toa-dung-strike-flies b{position:absolute;left:50%;top:50%;width:4px;height:3px;border-radius:50%;background:#25140b;box-shadow:0 0 3px #d19a45;animation:toaDungFly 1s linear infinite;animation-delay:calc(var(--fly-i)*-.11s)}
@keyframes toaDungFly{0%{transform:rotate(calc(var(--fly-i)*40deg)) translateX(8px) rotate(0)}50%{transform:rotate(calc(var(--fly-i)*40deg + 150deg)) translateX(18px) rotate(-150deg)}100%{transform:rotate(calc(var(--fly-i)*40deg + 360deg)) translateX(8px) rotate(-360deg)}}
@keyframes toaDungSwarmPulse{to{scale:1.15;filter:brightness(1.3)}}
.toa-dung-wall-ball{position:absolute;width:4.2%;aspect-ratio:1;border-radius:48% 52% 45% 55%;transform:translate(-50%,-50%) scale(0);z-index:7;background:radial-gradient(circle at 32% 25%,#b17a38 0 10%,#70451f 35%,#38200e 72%);box-shadow:0 3px 5px #000c,0 0 0 2px #241408;animation:toaDungWallLand .32s cubic-bezier(.2,1.5,.5,1) forwards,toaDungWallBuzz 1.2s .35s infinite alternate;animation-delay:calc(var(--dung-i)*.045s)}
@keyframes toaDungWallLand{to{transform:translate(-50%,-50%) scale(1)}}
@keyframes toaDungWallBuzz{to{filter:brightness(1.16);rotate:5deg}}
.toa-dung-knock{transition:left .38s cubic-bezier(.15,.75,.25,1),top .38s cubic-bezier(.15,.75,.25,1)!important;filter:drop-shadow(0 0 5px #8d5b26)}

/* Kephri 50% scarab reinforcement phase */
.toa-kephri-add{position:absolute;width:8.5%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:8;background:url('assets/kephri-scarab.png') center/contain no-repeat;filter:drop-shadow(0 4px 3px #000b);transition:left .08s linear,top .08s linear;pointer-events:none}
.toa-kephri-add.blue{filter:hue-rotate(155deg) saturate(1.6) brightness(1.15) drop-shadow(0 0 8px #42cfff)}
.toa-kephri-add.hit{animation:toaAddHit .18s linear}.toa-kephri-add.attack{animation:toaAddAttack .32s ease-out}.toa-kephri-add.burst{animation:toaAddBurst .4s ease-out forwards}
@keyframes toaAddHit{50%{filter:brightness(2) drop-shadow(0 0 9px #fff)}}
@keyframes toaAddAttack{50%{scale:1.18;rotate:-8deg}}
@keyframes toaAddBurst{to{scale:1.8;opacity:0;filter:brightness(2)}}
.toa-kephri-add-hp{position:absolute;left:12%;right:12%;top:-9px;height:5px;border:1px solid #f2d087;background:#160b08;box-shadow:0 0 0 1px #000}.toa-kephri-add-hp span{display:block;width:100%;height:100%;background:#c83225;transition:width .12s linear}
.toa-blue-charge{position:absolute;left:-4%;right:-4%;bottom:-10px;height:6px;border:1px solid #8de8ff;background:#061824;box-shadow:0 0 7px #2fcfff}.toa-blue-charge span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#164a7c,#71e8ff);transition:width .08s linear}
.toa-kephri-add.blue::after{content:"";position:absolute;inset:-18%;border-radius:50%;border:2px solid #5be4ff;box-shadow:0 0 18px #25cfff,inset 0 0 12px #25cfff;animation:toaBluePulse .7s infinite alternate}@keyframes toaBluePulse{to{scale:1.18;opacity:.45}}
.toa-blue-scarab-blast{position:absolute;width:10%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);z-index:14;background:radial-gradient(circle,#fff 0 8%,#75eaff 25%,#1877d4 48%,transparent 70%);box-shadow:0 0 30px 14px #2acfff;animation:toaBlueBlast .85s ease-out forwards}@keyframes toaBlueBlast{to{scale:8;opacity:0}}
/* Kephri 30% diving scarabs and victory */
.toa-dive-scarab-mark{position:absolute;width:7%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;z-index:5;background:radial-gradient(circle,rgba(75,20,8,.7) 0 28%,rgba(20,5,2,.78) 31% 49%,transparent 53%);box-shadow:0 0 0 2px #8b2c17aa;animation:toaDiveMark .35s infinite alternate}@keyframes toaDiveMark{to{scale:1.16;opacity:.62}}
.toa-dive-scarab{position:absolute;width:4.5%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:10;background:url('assets/kephri-scarab.png') center/contain no-repeat;filter:drop-shadow(0 3px 2px #000);rotate:155deg}
.toa-dive-scarab-explosion{position:absolute;width:8%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);z-index:12;background:radial-gradient(circle,#fff3a4 0 8%,#e16922 20%,#8e2616 44%,transparent 68%);box-shadow:0 0 20px 8px #c6411e;animation:toaDiveBoom .62s ease-out forwards}@keyframes toaDiveBoom{to{scale:2.4;opacity:0}}
.toa-scarabas-room.kephri-final-rush{animation:toaKephriFinalPulse .45s infinite alternate}@keyframes toaKephriFinalPulse{to{filter:brightness(1.06) saturate(1.08)}}
.toa-kephri-helper{z-index:30}
.toa-kephri-hud.toa-defeated .toa-kephri-hp i{width:0!important}


/* 2026-07-31: counter width, fourth adventurer, Budweiser and RDR2 monitor */
.stats{min-width:0;overflow:hidden}
.stats #count{
  width:100%;min-width:0;max-width:100%;
  font-size:clamp(44px,6.2vw,96px)!important;
  line-height:1.02;
  letter-spacing:-.055em;
  white-space:nowrap;
  overflow:visible;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
@media(min-width:1250px){.stats #count{font-size:clamp(52px,5.7vw,90px)!important}}
@media(max-width:1050px){.stats #count{font-size:clamp(42px,10vw,76px)!important;letter-spacing:-.065em}}

.game-screen.monitor-rdr2 .monitor-game-rdr2{display:block}
.monitor-game-rdr2{background:linear-gradient(#d96836 0 45%,#9f2f20 46% 61%,#261512 62%);color:#f7ddad}
.rdr2-title{position:absolute;z-index:5;left:0;right:0;top:0;height:29px;padding:5px 8px;background:#160d0bdc;border-bottom:2px solid #a63a25;color:#f2d3a0;font:900 11px/17px Georgia,serif;letter-spacing:1.5px;text-shadow:2px 2px #4a120d}
.rdr2-landscape{position:absolute;inset:29px 0 25px;overflow:hidden;background:linear-gradient(#df7d47 0 48%,#9d4a2f 49% 65%,#38201a 66%)}
.rdr2-landscape:after{content:"";position:absolute;left:-5%;right:-5%;bottom:-12px;height:55px;background:#17100e;clip-path:polygon(0 62%,12% 44%,21% 59%,32% 31%,42% 57%,53% 38%,65% 56%,76% 28%,88% 50%,100% 37%,100% 100%,0 100%)}
.rdr2-sun{position:absolute;right:18%;top:16%;width:48px;height:48px;border-radius:50%;background:#ffd28a;box-shadow:0 0 22px #ffb36e}
.rdr2-mountain{position:absolute;bottom:35px;background:#633126;clip-path:polygon(50% 0,100% 100%,0 100%)}.rdr2-mountain.m1{left:-8px;width:150px;height:82px}.rdr2-mountain.m2{right:-18px;width:180px;height:105px;background:#4a2721}
.rdr2-rider{position:absolute;left:46%;bottom:31px;width:34px;height:24px;background:#15100f;border-radius:48% 50% 40% 42%;z-index:4}.rdr2-rider:before{content:"";position:absolute;left:10px;top:-25px;width:11px;height:28px;background:#17110f;border-radius:45%}.rdr2-rider:after{content:"";position:absolute;left:-7px;top:15px;width:50px;height:5px;background:#17110f;transform:rotate(-4deg);box-shadow:3px 12px 0 -1px #17110f}.rdr2-rider b{position:absolute;left:7px;top:-30px;width:18px;height:5px;background:#17110f;border-radius:50%}
.rdr2-cactus{position:absolute;bottom:28px;width:7px;height:34px;background:#261713;z-index:3}.rdr2-cactus:before,.rdr2-cactus:after{content:"";position:absolute;width:10px;height:5px;background:#261713;top:13px}.rdr2-cactus:before{left:-8px;transform:rotate(35deg)}.rdr2-cactus:after{right:-8px;transform:rotate(-35deg)}.rdr2-cactus.c1{left:16%}.rdr2-cactus.c2{right:11%;transform:scale(.7)}
.rdr2-status{position:absolute;left:0;right:0;bottom:0;height:25px;padding:6px 8px;background:#170e0c;color:#e8c08d;font:900 9px monospace;letter-spacing:.4px}

/* Female adventurer inspired by the supplied OSRS reference. */
.gamer.character-four .curls{display:none!important}
.gamer.character-four .hairback{display:block;left:139px;top:42px;width:108px;height:105px;background:#d8c4a9;border-radius:46% 46% 35% 35%;z-index:3;clip-path:polygon(13% 12%,87% 12%,100% 52%,82% 100%,64% 69%,50% 100%,34% 70%,17% 100%,0 52%)}
.gamer.character-four .hood{display:block;left:130px;top:4px;width:137px;height:104px;background:linear-gradient(90deg,#b9b9b4,#ece9dd 50%,#9d9d99);clip-path:polygon(18% 8%,82% 8%,94% 32%,88% 77%,67% 65%,58% 100%,48% 68%,28% 66%,8% 79%,3% 31%);z-index:8;filter:drop-shadow(0 4px 2px #0008)}
.gamer.character-four .hood:before,.gamer.character-four .hood:after{content:"";position:absolute;top:3px;width:4px;height:73px;background:#d2af45;box-shadow:0 0 0 1px #6f5720}.gamer.character-four .hood:before{left:18px;transform:rotate(-4deg)}.gamer.character-four .hood:after{right:18px;transform:rotate(4deg)}
.gamer.character-four .head{left:158px;top:57px;width:84px;height:91px;background:#e2b28e;border-radius:40% 40% 46% 46%}
.gamer.character-four .head:before{content:"";position:absolute;left:15px;right:15px;top:39px;height:8px;background:linear-gradient(90deg,#181411 0 21%,transparent 22% 65%,#181411 66%);clip-path:polygon(0 0,100% 0,88% 100%,10% 100%)}
.gamer.character-four .head:after{content:"";position:absolute;left:36px;top:54px;width:13px;height:4px;border-bottom:2px solid #865641;border-radius:50%}
.gamer.character-four .ear,.gamer.character-four .nose,.gamer.character-four .neck,.gamer.character-four .hand{background:#e2b28e}
.gamer.character-four .cape{display:block;left:62px;top:137px;width:218px;height:225px;background:linear-gradient(90deg,#8b0e10,#cf2023 48%,#73080a);clip-path:polygon(15% 0,83% 4%,100% 94%,59% 78%,10% 100%,0 18%);z-index:1;filter:drop-shadow(0 7px 4px #0008)}
.gamer.character-four .body,.gamer.character-four .belly{background:linear-gradient(90deg,#777d78,#b9bdb8 48%,#656b67);border:4px solid #565b58}
.gamer.character-four .body:after{content:"";position:absolute;left:69px;top:17px;width:66px;height:67px;background:linear-gradient(135deg,#f0f0ea,#969b97);clip-path:polygon(50% 0,100% 35%,82% 100%,18% 100%,0 35%);opacity:.8}
.gamer.character-four .body .robe-panel{display:block;left:78px;top:-2px;width:48px;height:54px;border:8px solid #f2eee2;border-top:0;transform:rotate(0);z-index:5}
.gamer.character-four .body .robe-panel:after{content:"";position:absolute;left:9px;top:27px;width:22px;height:22px;border-radius:50%;background:#5d0ac5;border:7px solid #d6bb13;box-shadow:0 2px 2px #0007}
.gamer.character-four .arm{background:linear-gradient(#8d918c,#666b67)}
.gamer.character-four .leg{background:#a41012;border-bottom:14px solid #7c0809}
.gamer.character-four .leg:after{content:"";position:absolute;left:23px;bottom:-13px;width:20px;height:12px;background:#fff;clip-path:polygon(50% 0,100% 100%,0 100%)}

.gamer.character-four .budweiser-prop{display:block;left:5px;top:-26px;width:30px;height:76px;transform:rotate(-8deg);filter:drop-shadow(0 4px 3px #0009)}
.budweiser-prop{background:linear-gradient(90deg,#5c250d,#b55d20 42%,#6f2c0d);border:2px solid #3e1908;border-radius:5px 5px 8px 8px}
.budweiser-prop .beer-neck{position:absolute;left:7px;top:-20px;width:13px;height:24px;background:linear-gradient(90deg,#5b240c,#ad571e,#59220b);border:2px solid #3e1908;border-bottom:0;border-radius:4px 4px 0 0}
.budweiser-prop .beer-cap{position:absolute;left:5px;top:-24px;width:17px;height:6px;background:#d6c9a3;border:1px solid #5f5034;border-radius:50%}
.budweiser-prop .beer-label{position:absolute;left:2px;right:2px;top:20px;height:29px;background:#f4eee1;border:1px solid #b4976d;color:#a31016;text-align:center;transform:rotate(-3deg);padding-top:3px}
.budweiser-prop .beer-label b{display:block;font:900 9px/9px Georgia,serif}.budweiser-prop .beer-label small{display:block;font:900 6px/7px Arial,sans-serif;letter-spacing:.5px}
.gamer.character-four.typing .arm-right{animation:budweiserArmLift 5.4s ease-in-out infinite!important}
.gamer.character-four.typing .budweiser-prop{animation:none!important}
@keyframes budweiserArmLift{0%,59%,100%{transform:rotate(17deg) translate(0,0)}68%{transform:rotate(-18deg) translate(-21px,-29px)}76%,88%{transform:rotate(-49deg) translate(-57px,-78px)}95%{transform:rotate(-5deg) translate(-12px,-18px)}}


/* 2026-07-31: refined fourth adventurer, accurate bottle sip and tavern skip control */
.gamer.character-four .hairback{
  left:145px;top:40px;width:94px;height:145px;
  background:linear-gradient(90deg,#c7ad8e,#ead8ba 48%,#aa8e71);
  clip-path:polygon(18% 4%,82% 4%,96% 33%,84% 67%,72% 100%,55% 78%,44% 100%,27% 79%,12% 100%,2% 35%);
}
.gamer.character-four .head{left:163px;top:58px;width:75px;height:88px;border-radius:44% 44% 49% 49%}
.gamer.character-four .head:before{left:14px;right:14px;top:38px;height:7px}
.gamer.character-four .head:after{left:31px;top:54px;width:13px;height:5px;border-bottom:2px solid #85513f}
.gamer.character-four .body{
  left:91px;top:158px;width:178px;height:160px;
  border-radius:45% 45% 31% 31%;
  clip-path:polygon(8% 0,92% 0,84% 45%,72% 100%,28% 100%,16% 45%);
}
.gamer.character-four .belly{
  left:127px;top:224px;width:145px;height:113px;
  border-radius:38% 44% 52% 48%;
  clip-path:polygon(17% 0,83% 0,100% 100%,0 100%);
}
.gamer.character-four .cape{left:68px;width:205px}
.gamer.character-four .arm{width:130px;height:40px;border-radius:22px}
.gamer.character-four .arm-left{left:205px;top:207px}
.gamer.character-four .arm-right{left:188px;top:220px}
.gamer.character-four .leg.one{left:119px;width:132px;transform:rotate(4deg)}
.gamer.character-four .leg.two{left:194px;width:132px;transform:rotate(-4deg)}
.gamer.character-four .hood{left:137px;width:126px}

/* The bottle is anchored inside the hand. Its cap now stops at the mouth instead of crossing the face. */
.gamer.character-four .budweiser-prop{
  left:10px;top:-13px;width:27px;height:68px;
  transform:rotate(-5deg);
  transform-origin:50% 92%;
}
.gamer.character-four .budweiser-prop .beer-neck{left:6px;top:-18px;width:12px;height:21px}
.gamer.character-four .budweiser-prop .beer-cap{left:4px;top:-22px;width:16px;height:6px}
.gamer.character-four .budweiser-prop .beer-label{top:18px;height:27px}
.gamer.character-four.typing .arm-right{animation:budweiserArmLiftFixed 5.6s ease-in-out infinite!important;transform-origin:8px 50%}
.gamer.character-four.typing .budweiser-prop{animation:budweiserBottleTip 5.6s ease-in-out infinite!important}
@keyframes budweiserArmLiftFixed{
  0%,58%,100%{transform:rotate(17deg) translate(0,0)}
  66%{transform:rotate(-7deg) translate(-13px,-18px)}
  74%{transform:rotate(-29deg) translate(-29px,-42px)}
  79%,88%{transform:rotate(-36deg) translate(-37px,-51px)}
  94%{transform:rotate(-4deg) translate(-12px,-17px)}
}
@keyframes budweiserBottleTip{
  0%,70%,96%,100%{transform:rotate(-5deg)}
  78%,88%{transform:rotate(18deg)}
}

.next-desk-character{
  position:absolute;right:18px;bottom:15px;z-index:15;
  display:flex;align-items:center;gap:7px;
  min-width:0;padding:6px 10px 6px 8px;
  color:#d8bc7b;background:linear-gradient(#4e2d16,#2d180c);
  border:2px ridge #9b6b33;border-radius:3px;
  box-shadow:0 3px 8px #0009,inset 0 0 0 1px #1b0d06;
  font:900 9px/1 Arial,sans-serif;letter-spacing:.8px;
  opacity:.72;cursor:pointer;transition:opacity .18s,transform .18s,filter .18s;
}
.next-desk-character span{font:900 24px/.65 Georgia,serif;color:#f1d28a;text-shadow:1px 1px #341708}
.next-desk-character small{font:900 8px/1 Arial,sans-serif;letter-spacing:.7px;white-space:nowrap}
.next-desk-character:hover,.next-desk-character:focus-visible{opacity:1;filter:brightness(1.12);transform:translateY(-1px);outline:none}
.next-desk-character:active{transform:translateY(1px)}
.next-desk-character[disabled]{opacity:.32;cursor:wait;transform:none}
@media(max-width:760px){.next-desk-character{right:10px;bottom:12px}.next-desk-character small{display:none}}

/* 2026-07-31: Character four leg and boot proportion correction.
   Keep her finished upper-body design, while matching the seated proportions
   used by the other desk adventurers. */
.gamer.character-four .leg{
  width:104px;
  height:60px;
  border-radius:30px;
  border-bottom-width:11px;
}
.gamer.character-four .leg.one{
  left:132px;
  top:309px;
  width:104px;
  transform:rotate(4deg);
}
.gamer.character-four .leg.two{
  left:202px;
  top:324px;
  width:104px;
  transform:rotate(-4deg);
}
.gamer.character-four .leg:after{
  left:17px;
  bottom:-10px;
  width:15px;
  height:9px;
}


/* 2026-07-31: Fifth female adventurer, The Last of Us monitor and vape prop. */
.game-screen.monitor-tlou .monitor-game-tlou{display:block}
.monitor-game-tlou{background:#17211c;color:#d7d2bd;overflow:hidden}
.tlou-title{position:absolute;z-index:6;left:0;right:0;top:0;height:29px;padding:5px 8px;background:#0b0d0cde;border-bottom:2px solid #696451;color:#e8e1c8;font:900 12px/17px Georgia,serif;letter-spacing:2px;text-shadow:2px 2px #000}
.tlou-world{position:absolute;inset:29px 0 25px;overflow:hidden;background:linear-gradient(#7a897d 0 42%,#3d4d43 43% 64%,#1d2822 65%)}
.tlou-world:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 0 35%,#d6c69238 36% 42%,transparent 43%),radial-gradient(circle at 68% 20%,#e4dba477,transparent 35%);opacity:.8}
.tlou-world:after{content:"";position:absolute;left:-10px;right:-10px;bottom:-8px;height:43px;background:#101713;clip-path:polygon(0 62%,10% 48%,22% 64%,34% 35%,48% 59%,61% 40%,76% 66%,88% 38%,100% 55%,100% 100%,0 100%)}
.tlou-building{position:absolute;bottom:28px;background:#303a35;border-top:5px solid #232b27;box-shadow:inset 0 0 0 2px #202722;clip-path:polygon(4% 7%,100% 0,94% 100%,0 100%)}
.tlou-building:after{content:"";position:absolute;inset:16px 9px;background:repeating-linear-gradient(90deg,#111814 0 8px,transparent 8px 18px),repeating-linear-gradient(#111814 0 7px,transparent 7px 17px);opacity:.8}
.tlou-building.b1{left:-10px;width:105px;height:108px}.tlou-building.b2{right:-13px;width:118px;height:88px;transform:scaleX(-1)}
.tlou-vine{position:absolute;z-index:3;width:8px;background:#526b42;border-radius:50%;box-shadow:8px 5px 0 -2px #678451,-7px 14px 0 -2px #5d774a}.tlou-vine.v1{left:22%;top:17px;height:95px;transform:rotate(15deg)}.tlou-vine.v2{right:18%;top:9px;height:83px;transform:rotate(-19deg)}
.tlou-joel,.tlou-ellie{position:absolute;z-index:5;bottom:24px;background:#111613;border-radius:45% 45% 25% 25%}.tlou-joel{left:47%;width:22px;height:62px}.tlou-ellie{left:58%;width:17px;height:48px}
.tlou-joel:before,.tlou-ellie:before{content:"";position:absolute;left:20%;top:-14px;width:60%;height:17px;border-radius:50%;background:#171b18}.tlou-joel:after{content:"";position:absolute;right:-21px;top:22px;width:34px;height:4px;background:#111613;transform:rotate(-26deg);transform-origin:left}
.tlou-spore{position:absolute;width:3px;height:3px;border-radius:50%;background:#d9c88c;box-shadow:12px 9px #d9c88c99,-8px 18px #d9c88c88,20px 30px #d9c88c77}.tlou-spore.s1{left:37%;top:35%}.tlou-spore.s2{right:22%;top:22%;transform:scale(.7)}
.tlou-status{position:absolute;left:0;right:0;bottom:0;height:25px;padding:6px 8px;background:#0b0e0c;color:#c6bea4;font:900 9px monospace;letter-spacing:.4px}

/* Hooded female outfit based on the supplied RuneScape reference. */
.gamer.character-five .curls,.gamer.character-five .wizard-hat{display:none!important}
.gamer.character-five .hairback{display:block;left:146px;top:37px;width:98px;height:139px;background:linear-gradient(90deg,#b4a77a,#d9cb95 48%,#91875f);clip-path:polygon(15% 5%,85% 5%,98% 29%,88% 70%,75% 100%,59% 79%,46% 100%,29% 81%,12% 100%,2% 31%);z-index:3}
.gamer.character-five .hood{display:block;left:138px;top:8px;width:118px;height:126px;background:linear-gradient(90deg,#a89e74,#e1d59e 48%,#968b65);clip-path:polygon(50% 0,84% 10%,100% 38%,88% 78%,69% 67%,60% 100%,47% 75%,31% 69%,9% 82%,0 37%,19% 9%);z-index:8;filter:drop-shadow(0 5px 3px #0009)}
.gamer.character-five .hood:after{content:"";position:absolute;left:37px;top:26px;width:44px;height:22px;background:#bfa98f;opacity:.25;clip-path:polygon(18% 0,82% 0,100% 100%,0 100%)}
.gamer.character-five .head{left:162px;top:60px;width:74px;height:88px;background:#d6a27e;border-radius:43% 43% 49% 49%}
.gamer.character-five .head:before{content:"";position:absolute;left:14px;right:14px;top:38px;height:7px;background:linear-gradient(90deg,#171311 0 22%,transparent 23% 65%,#171311 66%);clip-path:polygon(0 0,100% 0,87% 100%,10% 100%)}
.gamer.character-five .head:after{content:"";position:absolute;left:31px;top:54px;width:12px;height:5px;border-bottom:2px solid #7f4d3b;border-radius:50%}
.gamer.character-five .ear,.gamer.character-five .nose,.gamer.character-five .neck,.gamer.character-five .hand{background:#d6a27e}
.gamer.character-five .cape{display:block;left:69px;top:134px;width:204px;height:231px;background:linear-gradient(90deg,#262522,#3c3a33 48%,#191917);clip-path:polygon(16% 0,84% 5%,100% 93%,61% 79%,11% 100%,0 18%);z-index:1;filter:drop-shadow(0 7px 4px #0008)}
.gamer.character-five .body{left:87px;top:153px;width:184px;height:167px;background:linear-gradient(90deg,#c5bd8e,#ebe0ab 46%,#aaa273);border:4px solid #81795a;border-radius:43% 43% 29% 29%;clip-path:polygon(7% 0,93% 0,87% 42%,75% 100%,25% 100%,13% 42%)}
.gamer.character-five .body:before{content:"";position:absolute;left:42px;right:42px;top:25px;height:90px;background:linear-gradient(#33352f,#d4c995 45%,#213b35 46% 69%,#171b18 70%);clip-path:polygon(50% 0,100% 28%,82% 63%,100% 100%,0 100%,18% 63%,0 28%);z-index:2}
.gamer.character-five .body:after{content:"";position:absolute;left:73px;top:17px;width:38px;height:72px;background:linear-gradient(#e54531 0 40%,#087b73 41% 100%);clip-path:polygon(50% 0,100% 53%,72% 100%,28% 100%,0 53%);z-index:3;filter:drop-shadow(0 2px 1px #0008)}
.gamer.character-five .body .robe-panel{display:block;left:58px;top:35px;width:68px;height:53px;border:8px solid #171918;border-radius:50%;z-index:4;clip-path:polygon(0 0,100% 0,92% 100%,8% 100%)}
.gamer.character-five .belly{left:126px;top:225px;width:145px;height:112px;background:linear-gradient(90deg,#c1b889,#e4d9a2 48%,#a69e70);border:4px solid #81795a;border-radius:39% 43% 51% 47%;clip-path:polygon(16% 0,84% 0,100% 100%,0 100%)}
.gamer.character-five .arm{width:126px;height:38px;background:linear-gradient(#c9c092,#a79f76);border-radius:21px;border-bottom:9px solid #22201d}
.gamer.character-five .arm-left{left:205px;top:207px}.gamer.character-five .arm-right{left:188px;top:220px}
.gamer.character-five .leg{width:103px;height:61px;background:#1c1d1d;border-bottom:11px solid #9e956e;border-radius:29px}
.gamer.character-five .leg.one{left:131px;top:309px;transform:rotate(4deg)}.gamer.character-five .leg.two{left:201px;top:324px;transform:rotate(-4deg)}
.gamer.character-five .leg:after{content:"";position:absolute;left:17px;bottom:-10px;width:27px;height:11px;background:#d8ce98;clip-path:polygon(0 0,100% 32%,83% 100%,14% 100%)}

/* Vape is anchored to the right hand and lifts to the mouth without crossing the face. */
.vape-prop{width:27px;height:70px;background:linear-gradient(90deg,#17191b,#42464a 45%,#0b0c0e);border:2px solid #08090a;border-radius:3px;box-shadow:inset 0 0 0 2px #292d31,0 4px 4px #0009;transform-origin:50% 91%}
.gamer.character-five .vape-prop{display:block;left:10px;top:-13px;transform:rotate(-4deg)}
.vape-tank{position:absolute;left:3px;top:-39px;width:21px;height:42px;background:linear-gradient(90deg,#111,#45484b 45%,#0b0c0d);border:2px solid #090a0b;border-radius:4px 4px 8px 8px;box-shadow:inset 0 9px 0 #17191b,inset 0 -8px 0 #151719}
.vape-tank:before,.vape-tank:after{content:"";position:absolute;left:-3px;right:-3px;height:4px;background:#0d0e0f;border-radius:2px;box-shadow:0 1px #555}.vape-tank:before{top:8px}.vape-tank:after{bottom:7px}
.vape-tank i{position:absolute;left:5px;right:5px;top:16px;height:12px;background:#777c7f66;border:1px solid #9da1a366}
.vape-mouthpiece{position:absolute;left:8px;top:-55px;width:11px;height:18px;background:#0b0c0d;border:2px solid #050506;border-radius:2px 2px 0 0}
.vape-button{position:absolute;right:-2px;top:23px;width:5px;height:11px;background:#a9322a;border:1px solid #44100d;border-radius:2px}
.vape-glow{position:absolute;right:2px;bottom:9px;width:4px;height:4px;border-radius:50%;background:#d52820;box-shadow:0 0 5px #ff4a40}
.vape-smoke{position:absolute;display:block;opacity:0;border:3px solid #d9e1df;border-bottom:0;border-left-color:transparent;border-radius:50%;filter:blur(.3px)}
.vape-smoke.smoke-a{left:8px;top:-73px;width:20px;height:25px}.vape-smoke.smoke-b{left:21px;top:-88px;width:28px;height:34px}
.gamer.character-five.typing .arm-right{animation:vapeArmLift 5.8s ease-in-out infinite!important;transform-origin:8px 50%}
.gamer.character-five.typing .vape-prop{animation:vapeTip 5.8s ease-in-out infinite!important}
.gamer.character-five.typing .vape-smoke.smoke-a{animation:vapeSmokeA 5.8s ease-out infinite}.gamer.character-five.typing .vape-smoke.smoke-b{animation:vapeSmokeB 5.8s ease-out infinite}
@keyframes vapeArmLift{0%,56%,100%{transform:rotate(17deg) translate(0,0)}65%{transform:rotate(-5deg) translate(-13px,-20px)}73%,84%{transform:rotate(-31deg) translate(-32px,-46px)}91%{transform:rotate(-3deg) translate(-10px,-15px)}}
@keyframes vapeTip{0%,67%,91%,100%{transform:rotate(-4deg)}74%,84%{transform:rotate(10deg)}}
@keyframes vapeSmokeA{0%,81%{opacity:0;transform:translate(0,0) scale(.6)}84%{opacity:.55}94%{opacity:0;transform:translate(8px,-23px) scale(1.25)}100%{opacity:0}}
@keyframes vapeSmokeB{0%,84%{opacity:0;transform:translate(0,0) scale(.5)}88%{opacity:.38}98%{opacity:0;transform:translate(13px,-26px) scale(1.3)}100%{opacity:0}}
.sailing-course-picker{display:grid;grid-template-columns:auto minmax(180px,260px) 1fr;gap:8px;align-items:center;background:#071015;border:1px solid #31586b;padding:9px 11px;margin:9px 0;color:#bfe9fb}.sailing-course-picker label{font-weight:800;letter-spacing:.7px;color:#d4f1ff}.sailing-course-picker select{background:#102936;color:#d7f4ff;border:1px solid #56839a;padding:7px 9px;font:inherit}.sailing-course-picker small{color:#9fb5bf}.sailing-overlay.hidden{display:none!important}@media(max-width:700px){.sailing-course-picker{grid-template-columns:1fr}.sailing-course-picker select{width:100%}}

/* Path of Het */
.toa-context-het{left:4%;top:52%}
.toa-het-room{position:absolute;inset:0;overflow:hidden;background:#111 url("assets/toa-het-room.png") center/cover no-repeat;z-index:18}
.toa-het-room.hidden{display:none}
.toa-het-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 52%,transparent 48%,rgba(0,0,0,.28) 100%)}
.toa-het-player,.toa-het-teammate{position:absolute;z-index:8;left:50%;top:76%}
.toa-het-teammate{left:53%}
.toa-het-room .toa-ready-panel{z-index:30}
.toa-het-room .toa-arena-banner{z-index:28}


/* TOA mode gate and Path of Het entry fixes */
.toa-game-shell{position:relative}
.toa-game-shell.mode-pending .toa-lobby{visibility:hidden;pointer-events:none}
.toa-mode-gate{position:absolute;inset:10px;z-index:80;display:grid;place-items:center;min-height:420px;background:radial-gradient(circle at 50% 42%,#252018 0,#111015 46%,#05070b 100%);border:1px solid #795b30;box-shadow:inset 0 0 80px #000;color:#d9c18c;text-align:center}
.toa-mode-gate>div{width:min(560px,82%);padding:28px 24px;border:2px solid #9a7138;background:linear-gradient(180deg,rgba(45,31,17,.96),rgba(12,10,9,.97));box-shadow:0 12px 45px #000}
.toa-mode-gate span{font-size:10px;letter-spacing:3px;color:#b79050}.toa-mode-gate h4{margin:7px 0 10px;font-size:25px;letter-spacing:2px;color:#f1d797}.toa-mode-gate p{margin:0;line-height:1.6;color:#c2b391}.toa-mode-gate.hidden{display:none}
.toa-context-action.toa-context-het{left:3.5%;top:58%;bottom:auto;transform:none;width:auto;height:auto;max-width:190px;padding:6px 9px;font-size:10px;gap:6px}
.toa-context-action.toa-context-het kbd{min-width:21px;height:20px;font-size:10px}
@media(max-width:800px){.toa-mode-gate{min-height:300px}.toa-mode-gate h4{font-size:19px}.toa-context-action.toa-context-het{left:2%;top:57%;max-width:150px;font-size:8px}}

/* Path of Het combat inventories and weapon switching */
.toa-weapon-inventory{position:absolute;z-index:35;right:18px;bottom:190px;width:178px;padding:8px;background:linear-gradient(#332414ee,#17100bee);border:2px solid #9b7138;box-shadow:0 0 0 2px #1b1008,0 6px 18px #000b;color:#f4d98d;text-align:center}
.toa-weapon-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:5px}.toa-weapon-slots button{position:relative;height:62px;padding:3px;background:#24180f;border:1px solid #6f532d;cursor:pointer}.toa-weapon-slots button:hover,.toa-weapon-slots button.active{background:#4b3318;border-color:#f0c85d;box-shadow:inset 0 0 9px #e6ab304d}.toa-weapon-slots img{width:100%;height:42px;object-fit:contain}.toa-weapon-slots small{position:absolute;left:1px;right:1px;bottom:1px;color:#d9c18b;font-size:7px;font-weight:900;text-shadow:1px 1px #000}.toa-weapon-inventory>b{display:block;margin-top:6px;color:#8cff9a;font-size:9px;letter-spacing:.8px}
.toa-het-food{right:18px;bottom:91px}.toa-het-prayers{right:18px;bottom:18px}.toa-het-held-weapon{position:absolute;z-index:7;width:42px;height:54px;object-fit:contain;left:20px;top:23px;transform:rotate(-23deg);transform-origin:50% 80%;filter:drop-shadow(1px 2px 1px #000b);pointer-events:none}.toa-het-player.facing-left .toa-het-held-weapon,.toa-het-teammate.facing-left .toa-het-held-weapon{left:-29px;transform:scaleX(-1) rotate(-23deg)}
.toa-het-player[data-weapon="ranged"] .toa-het-held-weapon,.toa-het-teammate[data-weapon="ranged"] .toa-het-held-weapon{width:52px;height:56px}.toa-het-player[data-weapon="magic"] .toa-het-held-weapon,.toa-het-teammate[data-weapon="magic"] .toa-het-held-weapon{width:49px;height:58px}
@media(max-width:800px){.toa-weapon-inventory{right:8px;bottom:154px;width:145px}.toa-weapon-slots button{height:50px}.toa-weapon-slots img{height:33px}.toa-het-food{right:8px;bottom:78px}.toa-het-prayers{right:8px;bottom:12px}}

/* Path of Het held weapons: compact, hand-anchored OSRS proportions. */
.toa-het-held-weapon{
  z-index:12;
  width:27px;
  height:31px;
  left:21px;
  top:17px;
  object-fit:contain;
  transform:none;
  transform-origin:50% 55%;
}
/* The whole player sprite already mirrors when facing left, so do not flip the weapon twice. */
.toa-het-player.facing-left .toa-het-held-weapon,
.toa-het-teammate.facing-left .toa-het-held-weapon{
  left:21px;
  transform:none;
}
.toa-het-player[data-weapon="melee"] .toa-het-held-weapon,
.toa-het-teammate[data-weapon="melee"] .toa-het-held-weapon{
  width:25px;
  height:30px;
  left:21px;
  top:17px;
  transform:rotate(-4deg);
}
.toa-het-player[data-weapon="ranged"] .toa-het-held-weapon,
.toa-het-teammate[data-weapon="ranged"] .toa-het-held-weapon{
  width:29px;
  height:29px;
  left:20px;
  top:20px;
  transform:rotate(-8deg);
}
.toa-het-player[data-weapon="magic"] .toa-het-held-weapon,
.toa-het-teammate[data-weapon="magic"] .toa-het-held-weapon{
  width:28px;
  height:28px;
  left:20px;
  top:18px;
  transform:rotate(-9deg);
}
.toa-het-player.toa-weapon-swap .toa-het-held-weapon,
.toa-het-teammate.toa-weapon-swap .toa-het-held-weapon{
  animation:toaHetWeaponEquip .24s ease-out;
}
@keyframes toaHetWeaponEquip{
  0%{opacity:.15;scale:.65}
  70%{scale:1.12}
  100%{opacity:1;scale:1}
}


/* Path of Het guardian and health HUD */
.toa-het-boss{position:absolute;z-index:7;width:154px;height:188px;transform:translate(-50%,-78%);pointer-events:none;filter:drop-shadow(0 4px 3px #000b)}
.toa-het-boss img{width:100%;height:100%;object-fit:contain;image-rendering:auto;transform-origin:center bottom}
.toa-het-boss.facing-left img{transform:scaleX(-1)}
.toa-het-boss-hud{position:absolute;z-index:24;left:50%;top:15px;transform:translateX(-50%);width:min(420px,48%);padding:7px 10px;background:#120d08e8;border:2px solid #8f6631;box-shadow:0 0 0 2px #23170d,0 4px 12px #0009;color:#f4d78c}
.toa-het-boss-hud .toa-boss-name{display:flex;justify-content:space-between;font-size:12px;font-weight:900;letter-spacing:1px;margin-bottom:5px}
.toa-het-boss-hud .toa-boss-hp{height:13px;background:#2a120e;border:1px solid #0b0805;box-shadow:inset 0 0 0 1px #5b3721}
.toa-het-boss-hud .toa-boss-hp i{display:block;width:100%;height:100%;background:linear-gradient(#c74638,#851d1d);transition:width .2s}
.toa-het-player-hud{display:block;left:16px;top:16px;bottom:auto;z-index:24}
.toa-het-player-hud.hidden,.toa-het-boss-hud.hidden{display:none}
@media(max-width:800px){.toa-het-boss{width:112px;height:138px}.toa-het-boss-hud{width:46%;top:8px}.toa-het-player-hud{left:8px;top:8px}}


.toa-het-boss .toa-prayer-overhead{top:-18px;width:34px;height:34px;z-index:30}
.toa-het-boss[data-style=melee]{filter:drop-shadow(0 5px 4px #000b) drop-shadow(0 0 5px #d84b36aa)}
.toa-het-boss[data-style=ranged]{filter:drop-shadow(0 5px 4px #000b) drop-shadow(0 0 5px #4bbf63aa)}
.toa-het-boss[data-style=magic]{filter:drop-shadow(0 5px 4px #000b) drop-shadow(0 0 5px #5a79dbaa)}

/* Akkha attack projectiles */
.toa-akkha-projectile{position:absolute;z-index:35;left:0;top:0;pointer-events:none;display:block;will-change:transform,opacity;animation:toaAkkhaProjectileFlight .68s cubic-bezier(.18,.66,.24,1) forwards}
.toa-akkha-projectile.magic{width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:radial-gradient(circle at 38% 34%,#fff 0 8%,#ffb1a8 12%,#f33 36%,#9c0712 67%,#350006 100%);box-shadow:0 0 7px 3px #ff3b35,0 0 18px 7px #c5001d99}
.toa-akkha-projectile.magic::before,.toa-akkha-projectile.magic::after{content:"";position:absolute;inset:4px -13px;border-radius:50%;border-top:2px solid #ffb0a8aa;transform:rotate(28deg)}
.toa-akkha-projectile.magic::after{transform:rotate(-28deg);border-color:#ff4b5daa}
.toa-akkha-projectile.ranged{width:32px;height:4px;margin:-2px 0 0 -5px;background:linear-gradient(90deg,#fff,#e9edf2 70%,#9ba4ad);border-radius:4px;box-shadow:0 0 4px #fff;transform-origin:5px 50%}
.toa-akkha-projectile.ranged::before{content:"";position:absolute;right:-7px;top:-4px;border-left:9px solid #f5f7fa;border-top:6px solid transparent;border-bottom:6px solid transparent}
.toa-akkha-projectile.ranged::after{content:"";position:absolute;left:-5px;top:-5px;width:9px;height:14px;background:linear-gradient(45deg,transparent 45%,#fff 46% 56%,transparent 57%),linear-gradient(-45deg,transparent 45%,#fff 46% 56%,transparent 57%)}
@keyframes toaAkkhaProjectileFlight{0%{transform:translate(0,0) rotate(var(--angle));opacity:0}8%{opacity:1}82%{opacity:1}100%{transform:translate(var(--dx),var(--dy)) rotate(var(--angle));opacity:0}}


/* Akkha combat-style switch warning */
.toa-het-boss.toa-style-switch{animation:toaAkkhaSpearStomp .85s cubic-bezier(.2,.8,.25,1);z-index:38}
.toa-het-boss.toa-style-switch img{animation:toaAkkhaStompSprite .85s ease-in-out}
@keyframes toaAkkhaSpearStomp{0%{transform:translate(-50%,-78%)}28%{transform:translate(-50%,-84%) scale(1.035)}48%{transform:translate(-50%,-72%) scale(.99)}62%{transform:translate(-50%,-78%)}100%{transform:translate(-50%,-78%)}}
@keyframes toaAkkhaStompSprite{0%,20%{filter:brightness(1)}42%{filter:brightness(1.45) saturate(1.25)}70%,100%{filter:brightness(1)}}
.toa-akkha-style-pulse{position:absolute;z-index:30;width:34px;height:18px;transform:translate(-50%,-50%);border:3px solid #fff;border-radius:50%;pointer-events:none;box-shadow:0 0 12px currentColor,inset 0 0 9px currentColor;animation:toaAkkhaStylePulse .9s ease-out forwards}
.toa-akkha-style-pulse.melee{color:#ef5544;border-color:#ff978a}.toa-akkha-style-pulse.ranged{color:#60d779;border-color:#b0ffc0}.toa-akkha-style-pulse.magic{color:#7594ff;border-color:#c2ceff}
@keyframes toaAkkhaStylePulse{0%{width:30px;height:14px;opacity:.95}100%{width:190px;height:86px;opacity:0}}
.toa-akkha-style-label{position:absolute;z-index:40;transform:translate(-50%,-50%);padding:3px 8px;background:#110d09e8;border:1px solid currentColor;border-radius:3px;font-size:11px;letter-spacing:1.5px;text-shadow:0 2px 2px #000;pointer-events:none;animation:toaAkkhaStyleLabel 1s ease-out forwards}
.toa-akkha-style-label.melee{color:#ff8d7e}.toa-akkha-style-label.ranged{color:#8df0a1}.toa-akkha-style-label.magic{color:#9fb3ff}
@keyframes toaAkkhaStyleLabel{0%{opacity:0;transform:translate(-50%,-20%) scale(.8)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}75%{opacity:1}100%{opacity:0;transform:translate(-50%,-90%) scale(1)}}


/* Akkha room weapon orientation and player auto-attack feedback */
.toa-het-player[data-weapon="ranged"] .toa-het-held-weapon,
.toa-het-teammate[data-weapon="ranged"] .toa-het-held-weapon{
  transform:rotate(172deg);
}
.toa-het-player.toa-het-player-attacking .toa-het-held-weapon,
.toa-het-teammate.toa-het-player-attacking .toa-het-held-weapon{
  animation:toaHetWeaponStrike .5s cubic-bezier(.22,.75,.25,1);
}
.toa-het-player.toa-het-player-attacking,
.toa-het-teammate.toa-het-player-attacking{
  animation:toaHetPlayerLunge .5s ease-out;
}
@keyframes toaHetWeaponStrike{
  0%{filter:drop-shadow(1px 2px 1px #000b);}
  35%{transform:translate(7px,-5px) rotate(28deg);filter:drop-shadow(0 0 5px #fff8);}
  100%{filter:drop-shadow(1px 2px 1px #000b);}
}
@keyframes toaHetPlayerLunge{0%,100%{margin-top:0}45%{margin-top:-3px}}
/* Player-fired Akkha projectiles */
.toa-het-player-projectile{position:absolute;z-index:57;pointer-events:none;transform-origin:center;animation:toaHetPlayerShot .58s cubic-bezier(.2,.72,.25,1) forwards}
.toa-het-player-projectile.ranged{width:24px;height:4px;border-radius:4px;background:linear-gradient(90deg,#fff7c4,#f3d763 55%,#fff);box-shadow:0 0 5px #fff7b3,0 0 10px rgba(255,226,104,.7);transform:translate(-50%,-50%) rotate(var(--angle))}
.toa-het-player-projectile.ranged:after{content:"";position:absolute;right:-4px;top:-3px;border-left:7px solid #fff1a5;border-top:5px solid transparent;border-bottom:5px solid transparent}
.toa-het-player-projectile.magic{width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff7c5 0 15%,#ffb338 35%,#ef5b17 68%,transparent 72%);box-shadow:0 0 8px #ff9d22,0 0 17px rgba(255,89,16,.85)}
.toa-het-player-projectile.magic:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,177,57,.5);animation:toaMagicPulse .25s linear infinite}
@keyframes toaHetPlayerShot{0%{opacity:0;translate:0 0;scale:.65}12%{opacity:1}88%{opacity:1}100%{opacity:0;translate:var(--dx) var(--dy);scale:1}}
@keyframes toaMagicPulse{50%{transform:scale(1.35);opacity:.3}}

/* Akkha visibility reset and illustrated raid-mode gate */
.toa-het-room:not(.hidden) .toa-het-player:not(.toa-dead){display:block!important;visibility:visible!important;opacity:1!important}
.toa-mode-gate{
  inset:0;
  min-height:0;
  background:#120d07 url("assets/toa-raid-mode-mural.png") center/cover no-repeat;
  border:0;
  box-shadow:inset 0 0 70px rgba(0,0,0,.48);
}
.toa-mode-gate:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,3,1,.08),rgba(5,3,1,.16));pointer-events:none}
.toa-mode-gate>div{position:relative;z-index:1;width:min(560px,72%);padding:26px 30px;border:2px solid #a87b3d;background:rgba(23,14,8,.94);box-shadow:0 12px 40px #000, inset 0 0 0 2px rgba(246,204,111,.12)}
.toa-mode-gate span{color:#bd9658}.toa-mode-gate h4{color:#ffdc83;text-shadow:2px 2px #291608}.toa-mode-gate p{color:#f2d99c}
@media(max-width:800px){.toa-mode-gate{background-position:center}.toa-mode-gate>div{width:82%;padding:20px 16px}}


/* Akkha shadow / quadrant phases */
.toa-het-shadows{position:absolute;inset:0;z-index:9;pointer-events:none}
.toa-het-shadows.hidden{display:none}
.toa-akkha-shadow{position:absolute;width:104px;height:132px;transform:translate(-50%,-70%);pointer-events:auto;cursor:pointer;filter:grayscale(.15) brightness(.66) sepia(.25) hue-rotate(175deg) saturate(1.7) drop-shadow(0 0 8px #6b74ffcc);opacity:.88;transition:filter .16s,opacity .16s;outline:0!important;box-shadow:none!important;border:0!important;background:transparent!important}
.toa-akkha-shadow:hover,.toa-akkha-shadow.selected{filter:grayscale(.05) brightness(.9) sepia(.15) hue-rotate(175deg) saturate(2) drop-shadow(0 0 13px #aab2ff);transform:translate(-50%,-70%);outline:0!important;box-shadow:none!important}
.toa-akkha-shadow img{width:100%;height:100%;object-fit:contain;pointer-events:none}
.toa-akkha-shadow.dead{display:none!important}
.toa-akkha-shadow .shadow-hp{position:absolute;left:10%;right:10%;bottom:0;height:7px;background:#260d12;border:1px solid #090608;box-shadow:0 0 0 1px #67474e}
.toa-akkha-shadow .shadow-hp i{display:block;height:100%;background:linear-gradient(#8b8fff,#4249ad);width:100%;transition:width .15s}
.toa-akkha-shadow .shadow-label{position:absolute;left:50%;top:-5px;transform:translate(-50%,-100%);white-space:nowrap;padding:2px 5px;background:#090712d9;border:1px solid #777ee0;color:#d9dcff;font-size:9px;letter-spacing:1px;text-shadow:0 1px 2px #000}
.toa-akkha-shadow-hit{animation:toaShadowHit .25s ease-out}
@keyframes toaShadowHit{0%{filter:brightness(2.4) drop-shadow(0 0 15px #fff)}100%{}}
.toa-het-quadrant-glow{position:absolute;z-index:3;pointer-events:none;border:0;overflow:hidden;opacity:.82;mix-blend-mode:screen;background:radial-gradient(ellipse at 54% 52%,rgba(255,225,139,.31) 0%,rgba(235,186,82,.20) 36%,rgba(197,132,38,.10) 59%,rgba(163,97,20,0) 79%);box-shadow:inset 0 0 28px rgba(255,225,145,.10),0 0 18px rgba(229,169,70,.10);filter:blur(.35px);animation:toaQuadrantPulse 2.2s ease-in-out infinite alternate,toaQuadrantArrive .38s ease-out both}
.toa-het-quadrant-glow:before{content:"";position:absolute;inset:8%;border-radius:inherit;background:radial-gradient(ellipse at center,rgba(255,238,183,.15),rgba(224,173,71,.05) 52%,transparent 76%);filter:blur(5px)}
.toa-het-quadrant-glow b{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe8a4;box-shadow:0 0 5px #e9b85b;opacity:0;animation:toaQuadrantDust 2.8s linear infinite}
.toa-het-quadrant-glow b:nth-child(1){left:18%;top:76%;animation-delay:-.2s}.toa-het-quadrant-glow b:nth-child(2){left:36%;top:64%;animation-delay:-1.1s}.toa-het-quadrant-glow b:nth-child(3){left:57%;top:82%;animation-delay:-1.8s}.toa-het-quadrant-glow b:nth-child(4){left:72%;top:60%;animation-delay:-.7s}.toa-het-quadrant-glow b:nth-child(5){left:45%;top:44%;animation-delay:-2.3s}.toa-het-quadrant-glow b:nth-child(6){left:80%;top:78%;animation-delay:-1.5s}
.toa-het-quadrant-glow.nw{left:20%;top:20%;width:29%;height:29%;border-radius:70% 18% 18% 18%}
.toa-het-quadrant-glow.ne{left:51%;top:20%;width:29%;height:29%;border-radius:18% 70% 18% 18%}
.toa-het-quadrant-glow.sw{left:20%;top:51%;width:29%;height:29%;border-radius:18% 18% 18% 70%}
.toa-het-quadrant-glow.se{left:51%;top:51%;width:29%;height:29%;border-radius:18% 18% 70% 18%}
@keyframes toaQuadrantPulse{from{opacity:.66;filter:brightness(.94) blur(.35px)}to{opacity:.92;filter:brightness(1.12) blur(.35px)}}
@keyframes toaQuadrantArrive{from{opacity:0;transform:scale(.94)}to{transform:scale(1)}}
@keyframes toaQuadrantDust{0%{opacity:0;transform:translateY(8px) scale(.7)}22%{opacity:.72}72%{opacity:.35}100%{opacity:0;transform:translateY(-24px) translateX(5px) scale(1.15)}}
.toa-shadow-phase-notice{position:absolute;z-index:45;left:50%;top:22%;transform:translate(-50%,-50%);padding:7px 13px;background:#100b18eb;border:2px solid #8d91ef;color:#ececff;font-weight:900;letter-spacing:1px;text-align:center;text-shadow:0 2px 2px #000;box-shadow:0 0 18px #676fff88;animation:toaShadowNotice 2.4s ease-out forwards;pointer-events:none}
@keyframes toaShadowNotice{0%{opacity:0;transform:translate(-50%,-60%) scale(.9)}15%,75%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-40%) scale(1.02)}}
@media(max-width:800px){.toa-akkha-shadow{width:74px;height:94px}}
.toa-akkha-shadow{appearance:none;border:0;background:transparent;padding:0;font:inherit}

/* Akkha shadow interaction stability and charged quadrant attacks */
.toa-akkha-shadow,
.toa-akkha-shadow:hover,
.toa-akkha-shadow:focus,
.toa-akkha-shadow:focus-visible,
.toa-akkha-shadow:active,
.toa-akkha-shadow.selected,
.toa-akkha-shadow.charging{
  appearance:none!important;
  -webkit-appearance:none!important;
  transform:translate(-50%,-70%)!important;
  width:104px!important;height:132px!important;
  margin:0!important;padding:0!important;
  border:0!important;outline:0!important;outline-offset:0!important;
  border-radius:0!important;background:transparent!important;
  box-shadow:none!important;
  animation:none;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
.toa-akkha-shadow:hover,.toa-akkha-shadow:focus,.toa-akkha-shadow:active{filter:grayscale(.15) brightness(.66) sepia(.25) hue-rotate(175deg) saturate(1.7) drop-shadow(0 0 8px #6b74ffcc)!important}
.toa-akkha-shadow.selected{filter:grayscale(.08) brightness(.78) sepia(.2) hue-rotate(175deg) saturate(1.85) drop-shadow(0 0 10px #8f98ffcc)!important}
.toa-akkha-shadow img{display:block!important;border:0!important;outline:0!important;transform:none!important;pointer-events:none!important;user-select:none!important;-webkit-user-drag:none!important}
.toa-akkha-shadow .shadow-charge{position:absolute;left:7%;right:7%;top:-17px;height:8px;background:#170b08;border:1px solid #d59d42;box-shadow:0 0 0 1px #241207,0 0 7px #e06f25aa;pointer-events:none;overflow:hidden}
.toa-akkha-shadow .shadow-charge i{display:block;height:100%;background:linear-gradient(90deg,#b52418,#ff8f24,#ffe470);transition:width .09s linear;box-shadow:0 0 7px #ff8d25}
.toa-akkha-shadow.slamming img{animation:toaShadowSpearSlam .62s cubic-bezier(.2,.8,.2,1)!important;transform-origin:50% 88%!important}
@keyframes toaShadowSpearSlam{0%,100%{transform:translateY(0)}38%{transform:translateY(-7px) rotate(-3deg)}58%{transform:translateY(7px) rotate(2deg)}75%{transform:translateY(0)}}
.toa-shadow-fire-wave{position:absolute;z-index:16;pointer-events:none;width:30%;height:30%;background:radial-gradient(ellipse at center,rgba(255,245,140,.9) 0 7%,rgba(255,136,28,.82) 18%,rgba(220,45,12,.58) 43%,rgba(120,15,5,.16) 66%,transparent 74%);filter:drop-shadow(0 0 12px #ff6a16);mix-blend-mode:screen;animation:toaShadowFireWave 1.02s ease-out both}
.toa-shadow-fire-wave.nw{left:20%;top:20%;border-radius:70% 8% 8% 8%;transform-origin:100% 100%}
.toa-shadow-fire-wave.ne{left:50%;top:20%;border-radius:8% 70% 8% 8%;transform-origin:0 100%}
.toa-shadow-fire-wave.sw{left:20%;top:50%;border-radius:8% 8% 8% 70%;transform-origin:100% 0}
.toa-shadow-fire-wave.se{left:50%;top:50%;border-radius:8% 8% 70% 8%;transform-origin:0 0}
@keyframes toaShadowFireWave{0%{opacity:0;transform:scale(.08)}18%{opacity:1}75%{opacity:.92;transform:scale(1.05)}100%{opacity:0;transform:scale(1.16)}}
@media(max-width:800px){.toa-akkha-shadow,.toa-akkha-shadow:hover,.toa-akkha-shadow:focus,.toa-akkha-shadow:active,.toa-akkha-shadow.selected{width:74px!important;height:94px!important}}

/* Definitive Akkha shadow target reset: non-native hit areas cannot acquire browser hover/focus frames. */
.toa-akkha-shadow, .toa-akkha-shadow *,
.toa-akkha-shadow:hover, .toa-akkha-shadow:active, .toa-akkha-shadow:focus, .toa-akkha-shadow:focus-visible {
  box-sizing:border-box!important; border:0!important; outline:0!important; box-shadow:none!important;
  background-color:transparent!important; border-radius:0!important; margin:0!important; padding:0!important;
  transform:translate(-50%,-70%)!important; -webkit-tap-highlight-color:transparent!important;
}
.toa-akkha-shadow{display:block!important;overflow:visible!important;user-select:none!important;-webkit-user-select:none!important}
.toa-akkha-shadow img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important}
.toa-akkha-shadow .shadow-label,.toa-akkha-shadow .shadow-charge,.toa-akkha-shadow .shadow-hp{background-color:initial!important}

/* Akkha memory special: floor-symbol cues and quadrant blasts */
.toa-akkha-symbol-cue{position:absolute;z-index:18;width:66px;height:66px;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;background:radial-gradient(circle,rgba(255,244,174,.72) 0 13%,rgba(255,177,45,.42) 28%,rgba(245,104,18,.17) 51%,transparent 72%);box-shadow:0 0 12px rgba(255,218,102,.95),0 0 28px rgba(255,139,31,.65),inset 0 0 13px rgba(255,250,206,.85);animation:toaAkkhaSymbolCue .72s ease-in-out infinite alternate;mix-blend-mode:screen}
.toa-akkha-symbol-cue:before,.toa-akkha-symbol-cue:after{content:"";position:absolute;inset:10px;border:2px solid rgba(255,226,131,.8);border-radius:50%;animation:toaAkkhaSymbolRing 1.1s ease-out infinite}.toa-akkha-symbol-cue:after{animation-delay:.42s}
.toa-akkha-symbol-cue b{position:absolute;left:50%;top:-21px;transform:translateX(-50%);padding:3px 7px;background:rgba(24,13,5,.88);border:1px solid #b97823;color:#ffe5a1;font:800 9px Georgia,serif;letter-spacing:1px;white-space:nowrap;text-shadow:1px 1px #000}.toa-akkha-symbol-cue span{position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);color:#fff0bd;font:800 9px Georgia,serif;text-shadow:1px 1px 2px #000;white-space:nowrap}
.toa-akkha-symbol-blast{position:absolute;z-index:15;pointer-events:none;width:30%;height:30%;background:radial-gradient(ellipse at center,rgba(255,250,206,.98) 0 6%,rgba(255,194,58,.9) 17%,rgba(255,86,28,.72) 39%,rgba(163,27,16,.34) 61%,transparent 76%);filter:drop-shadow(0 0 15px #ff9a2a);mix-blend-mode:screen;animation:toaAkkhaSymbolBlast .88s cubic-bezier(.12,.62,.24,1) both}
.toa-akkha-symbol-blast.nw{left:20%;top:20%;border-radius:72% 8% 8% 8%;transform-origin:100% 100%}.toa-akkha-symbol-blast.ne{left:50%;top:20%;border-radius:8% 72% 8% 8%;transform-origin:0 100%}.toa-akkha-symbol-blast.sw{left:20%;top:50%;border-radius:8% 8% 8% 72%;transform-origin:100% 0}.toa-akkha-symbol-blast.se{left:50%;top:50%;border-radius:8% 8% 72% 8%;transform-origin:0 0}
@keyframes toaAkkhaSymbolCue{from{opacity:.72;transform:translate(-50%,-50%) scale(.88)}to{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes toaAkkhaSymbolRing{0%{opacity:.9;transform:scale(.45)}100%{opacity:0;transform:scale(1.7)}}
@keyframes toaAkkhaSymbolBlast{0%{opacity:0;transform:scale(.18)}18%{opacity:1}62%{opacity:.95;transform:scale(1.12)}100%{opacity:0;transform:scale(1.35);filter:blur(3px) drop-shadow(0 0 22px #ff6322)}}

/* Akkha final stand */
#toaHetBoss.toa-final-stand{filter:drop-shadow(0 0 10px rgba(255,235,170,.8));}
#toaHetBoss.toa-final-stand #toaHetBossPrayer{filter:drop-shadow(0 0 5px #fff);}
#toaHetBoss.toa-final-stand::after{content:"";position:absolute;left:58%;top:-13%;width:26px;height:26px;background:url('assets/toa-pray-ranged.png') center/contain no-repeat;filter:drop-shadow(0 0 5px #fff);z-index:8;}
.toa-unstable-orb{position:absolute;width:22px;height:22px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:16;background:radial-gradient(circle at 35% 30%,#fff 0 22%,#eaf6ff 23% 48%,#b7d6ec 49% 70%,rgba(160,205,235,.15) 71%);box-shadow:0 0 7px 3px rgba(235,250,255,.95),0 0 17px 7px rgba(135,205,255,.45);}
.toa-unstable-orb::after{content:"➤";position:absolute;left:50%;top:25px;transform:translateX(-50%) rotate(var(--orb-angle));font-size:14px;line-height:1;color:#f4fbff;text-shadow:0 1px 2px #102334,0 0 5px #fff;}
.toa-final-stand-flash{position:absolute;inset:0;pointer-events:none;z-index:13;background:radial-gradient(circle at var(--fx-x) var(--fx-y),rgba(255,248,210,.62),rgba(255,248,210,0) 13%);animation:toaFinalFlash .65s ease-out forwards;}
@keyframes toaFinalFlash{from{opacity:1;transform:scale(.65)}to{opacity:0;transform:scale(1.25)}}

/* Repo Combat Survival achievement rewards */
.combat-cape-achievement-art{padding:3px;object-fit:contain}.bucket-achievement-art{padding:2px;object-fit:contain}.bucket-bank-art{object-fit:contain!important;padding:2px}.pet-visual>.pet-bucket-helm{position:absolute!important;z-index:5!important;left:var(--hat-x,50%)!important;top:var(--hat-y,20%)!important;width:var(--hat-w,42%)!important;height:auto!important;transform:translate(-50%,-58%) rotate(var(--hat-r,0deg))!important;transform-origin:50% 80%!important;object-fit:contain!important;pointer-events:none!important;filter:drop-shadow(0 2px 2px #0009)!important}.pet-visual>.pet-infernal-cape{object-fit:contain!important}

/* Path of Apmeken room */
.toa-apmeken-room{position:absolute;inset:0;overflow:hidden;background:#111 url("assets/toa-apmeken-room.png") center/cover no-repeat;z-index:18}
.toa-apmeken-room.hidden{display:none}
.toa-apmeken-room .toa-ready-panel{z-index:30}
.toa-apmeken-room .toa-arena-banner{z-index:28}
.toa-apmeken-vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 65px #000a;z-index:2}
.toa-apmeken-player,.toa-apmeken-teammate{position:absolute;left:48%;top:73%;z-index:16}
.toa-apmeken-teammate{left:52%}
.toa-apmeken-room:not(.hidden) .toa-apmeken-player{display:block!important;visibility:visible!important;opacity:1!important}
.toa-context-action.toa-context-apmeken{right:4%;left:auto;top:59%;bottom:auto;transform:none;width:auto;height:auto;max-width:210px;padding:6px 9px;font-size:10px;gap:6px}
.toa-context-action.toa-context-apmeken kbd{min-width:21px;height:20px;font-size:10px}
@media(max-width:800px){.toa-context-action.toa-context-apmeken{right:2%;top:58%;max-width:170px;font-size:8px;padding:5px 7px}}


/* Illustrated Repo Company header crest */
.repo-logo-wrap{display:flex;align-items:center;line-height:0;min-width:0}
.repo-header-logo{display:block;width:clamp(210px,23vw,330px);height:auto;max-height:142px;object-fit:contain;object-position:left center;filter:drop-shadow(0 5px 7px rgba(0,0,0,.72));image-rendering:auto}
header>div:first-child{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
header .tag{margin-top:2px;padding-left:8px;text-shadow:0 2px 2px rgba(0,0,0,.8)}
@media(max-width:760px){.repo-header-logo{width:clamp(170px,48vw,245px);max-height:110px}header .tag{font-size:11px;max-width:230px;padding-left:3px}.character-box{padding-top:8px}}
@media(max-width:500px){header{gap:8px!important;padding:12px!important}.repo-header-logo{width:160px}.character-button{padding:9px 8px!important;font-size:10px}.character-summary{min-width:125px!important;padding:8px!important}}


/* Centred illustrated Repo Company masthead and themed account controls */
.repo-main-header{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:100%;
  padding:12px 20px 18px!important;
  background:
    linear-gradient(rgba(8,10,9,.92),rgba(5,7,6,.96)),
    repeating-linear-gradient(90deg,transparent 0 78px,rgba(207,157,62,.04) 79px 80px)!important;
  border-bottom:4px ridge #6f562d!important;
  box-shadow:inset 0 -12px 28px rgba(0,0,0,.45),0 5px 16px rgba(0,0,0,.45);
}
.repo-header-centre{
  width:min(720px,100%);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  text-align:center;
}
.repo-main-header .repo-logo-wrap{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  line-height:0;
}
.repo-main-header .repo-header-logo{
  width:clamp(293px,36vw,488px)!important;
  max-width:96vw;
  max-height:none!important;
  height:auto;
  object-position:center!important;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.82));
}
.repo-main-header .tag{display:none!important}
.repo-main-header .character-box{
  min-width:0!important;
  width:auto;
  padding:0!important;
  margin-top:-5px;
  text-align:center!important;
  position:relative;
  z-index:2;
}
.repo-main-header .character-button{
  width:auto!important;
  min-width:275px;
  margin:0!important;
  padding:11px 30px!important;
  border:4px ridge #b58b3d!important;
  border-radius:3px!important;
  background:
    linear-gradient(180deg,#4b1820 0%,#2a0e13 48%,#16090b 100%)!important;
  color:#f4cf72!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:1.3px!important;
  text-shadow:0 2px 0 #000,0 0 5px rgba(244,207,114,.25)!important;
  box-shadow:inset 0 0 0 2px #171717,0 5px 0 #080808,0 8px 14px rgba(0,0,0,.6)!important;
}
.repo-main-header .character-button:hover{
  transform:translateY(-1px);
  background:linear-gradient(180deg,#68242e 0%,#371219 48%,#1b0a0d 100%)!important;
  color:#ffe5a1!important;
  border-color:#d0a94f!important;
}
.repo-main-header .character-button:active{transform:translateY(3px);box-shadow:inset 0 0 0 2px #171717,0 2px 0 #080808!important}
.repo-main-header .signed-in-controls{
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
}
.repo-main-header .character-summary,.repo-main-header .admin-button{
  border:3px ridge #9e7937!important;
  background:linear-gradient(#302619,#15110c)!important;
  color:#eed48c!important;
  box-shadow:0 4px 0 #080706,0 6px 12px rgba(0,0,0,.45)!important;
}
@media(max-width:700px){
  .repo-main-header{padding:8px 8px 14px!important}
  .repo-main-header .repo-header-logo{width:clamp(300px,92vw,470px)!important}
  .repo-main-header .character-button{min-width:min(275px,88vw);padding:10px 16px!important;font-size:12px!important}
}

/* Header alignment refinement */
.repo-main-header .repo-header-logo{
  width:clamp(360px,44vw,590px)!important;
}
.repo-main-header .character-box{
  width:100%!important;
  display:flex;
  justify-content:center;
  align-items:center;
}
.repo-main-header .signed-in-controls{
  width:100%!important;
  margin-inline:auto!important;
  justify-content:center!important;
}
@media(max-width:700px){
  .repo-main-header .repo-header-logo{width:clamp(285px,86vw,430px)!important}
}

/* Animated landscape masthead backdrop */
.repo-main-header{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background-image:
    linear-gradient(180deg,rgba(5,7,8,.16) 0%,rgba(5,7,8,.25) 48%,rgba(5,7,8,.54) 100%),
    url("assets/repo-header-landscape.gif")!important;
  background-repeat:no-repeat,no-repeat!important;
  background-position:center center,center 54%!important;
  background-size:cover,cover!important;
}
.repo-main-header::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  box-shadow:inset 0 0 42px rgba(0,0,0,.34),inset 0 -28px 42px rgba(0,0,0,.42);
}
.repo-main-header .repo-header-centre{
  position:relative;
  z-index:1;
}

/* Compact masthead: 20% smaller than the animated-header version */
.repo-main-header{
  padding:7px 16px 10px!important;
  border-bottom-width:3px!important;
}
.repo-main-header .repo-header-centre{
  width:min(620px,100%);
  gap:0;
}
.repo-main-header .repo-header-logo{
  width:clamp(288px,35.2vw,472px)!important;
}
.repo-main-header .character-box{
  margin-top:-11px;
  transform:scale(.92);
  transform-origin:top center;
  margin-bottom:-3px;
}
@media(max-width:700px){
  .repo-main-header{padding:6px 7px 9px!important}
  .repo-main-header .repo-header-logo{width:clamp(228px,69vw,344px)!important}
  .repo-main-header .character-box{margin-top:-8px;transform:scale(.9);margin-bottom:-4px}
}


/* Full-screen signed-out landing screen */
body.repo-logged-out{
  overflow:hidden!important;
  min-height:100dvh;
  background:#111!important;
}
body.repo-logged-out > :not(.repo-main-header):not(#characterDialog):not(#toast){
  display:none!important;
}
body.repo-logged-out .repo-main-header{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  padding:clamp(18px,4vh,50px) 20px!important;
  margin:0!important;
  border:0!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background-image:
    linear-gradient(180deg,rgba(5,7,8,.08) 0%,rgba(5,7,8,.12) 48%,rgba(5,7,8,.32) 100%),
    url("assets/repo-header-landscape.gif")!important;
  background-position:center center,center center!important;
  background-repeat:no-repeat,no-repeat!important;
  background-size:cover,cover!important;
}
body.repo-logged-out .repo-main-header::before{
  box-shadow:inset 0 0 70px rgba(0,0,0,.2),inset 0 -45px 80px rgba(0,0,0,.26)!important;
}
body.repo-logged-out .repo-header-centre{
  width:min(900px,96vw)!important;
  min-height:0!important;
  gap:clamp(4px,1vh,12px)!important;
  justify-content:center!important;
  transform:translateY(-1vh);
}
body.repo-logged-out .repo-main-header .repo-header-logo{
  width:clamp(300px,45vw,570px)!important;
  max-width:92vw!important;
  max-height:54vh!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.78))!important;
}
body.repo-logged-out .repo-main-header .character-box{
  width:auto!important;
  margin:clamp(8px,1.5vh,18px) 0 0!important;
  padding:0!important;
  transform:none!important;
}
body.repo-logged-out .repo-main-header .character-button{
  min-width:min(330px,88vw)!important;
  padding:13px 30px!important;
  font-size:clamp(12px,1.15vw,16px)!important;
}
@media(max-width:700px){
  body.repo-logged-out .repo-main-header{padding:18px 10px!important}
  body.repo-logged-out .repo-main-header .repo-header-logo{width:clamp(250px,76vw,440px)!important;max-height:50vh!important}
  body.repo-logged-out .repo-main-header .character-box{margin-top:10px!important}
}

/* Signed-out landing: centred controls over the icy animated background */
body.repo-logged-out .repo-main-header{
  background-image:
    linear-gradient(180deg,rgba(5,7,8,.04) 0%,rgba(5,7,8,.08) 52%,rgba(5,7,8,.24) 100%),
    url("assets/repo-signed-out-background.gif")!important;
  background-position:center center,center center!important;
  background-size:cover,cover!important;
}
body.repo-logged-out .repo-header-centre{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  margin:0 auto!important;
}
body.repo-logged-out .repo-main-header .repo-logo-wrap{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}
body.repo-logged-out .repo-main-header .character-box{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  margin:clamp(8px,1.5vh,18px) auto 0!important;
}
body.repo-logged-out .repo-main-header .character-button{
  display:block!important;
  margin:0 auto!important;
  flex:none!important;
}
@media(max-width:700px){
  body.repo-logged-out .repo-main-header .character-box{
    margin:10px auto 0!important;
  }
}

/* Signed-in masthead spacing: keep account controls clear of the logo */
body:not(.repo-logged-out) .repo-main-header .character-box{
  margin-top:8px!important;
  margin-bottom:0!important;
}
\n\n

/* Homepage daily XP leaderboard — parchment scroll */
.daily-xp-board{
  position:relative;
  width:calc(100% - 18px);
  margin:30px auto 22px;
  padding:22px 15px 18px;
  border:0;
  background:
    radial-gradient(circle at 18% 24%,rgba(117,74,30,.10),transparent 28%),
    radial-gradient(circle at 78% 74%,rgba(117,74,30,.09),transparent 30%),
    repeating-linear-gradient(0deg,rgba(91,58,24,.025) 0 1px,transparent 1px 4px),
    linear-gradient(90deg,#c7a96d 0,#ead8a2 7%,#f0dfae 50%,#e4cd93 93%,#b99559 100%);
  color:#392412;
  box-shadow:0 8px 12px #0007,inset 0 0 18px rgba(91,54,18,.25);
  isolation:isolate;
}
.daily-xp-board:before,.daily-xp-board:after{
  content:"";
  position:absolute;
  left:-8px;
  right:-8px;
  height:20px;
  z-index:-1;
  border:1px solid #8b672f;
  background:linear-gradient(#d9bd7d,#f1dda7 42%,#b68d4d 46%,#d6b977 72%,#8c642f);
  box-shadow:0 3px 5px #0006,inset 0 1px 1px #fff4c2;
}
.daily-xp-board:before{top:-13px;border-radius:48% 52% 34% 38%/75% 75% 35% 35%;transform:rotate(-.7deg)}
.daily-xp-board:after{bottom:-13px;border-radius:34% 38% 48% 52%/35% 35% 75% 75%;transform:rotate(.6deg)}
.daily-xp-heading{
  padding:2px 5px 10px;
  text-align:center;
  border-bottom:1px solid rgba(91,55,24,.28);
  background:none;
}
.daily-xp-heading span{
  display:block;
  color:#67291e;
  font:900 15px/1.15 Georgia,serif;
  letter-spacing:2px;
  text-shadow:0 1px #fff1c2;
}
.daily-xp-list{padding:7px 1px 1px}
.daily-xp-entry{
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  min-height:32px;
  padding:5px 4px;
  border-bottom:1px solid rgba(109,74,34,.18);
  background:transparent;
}
.daily-xp-entry:last-child{border-bottom:0}
.daily-xp-entry.first{background:linear-gradient(90deg,rgba(157,116,46,.14),transparent)}
.daily-xp-rank{
  display:block;
  width:auto;height:auto;
  border:0;background:none;
  color:#4a2d16;
  font:700 12px/1 Georgia,serif;
  text-align:center;
  text-shadow:none;
}
.daily-xp-name{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#3c2513;
  font:700 12px/1.2 Georgia,serif;
}
.daily-xp-total{
  white-space:nowrap;
  color:#4f2f17;
  font:700 12px/1.2 Georgia,serif;
}
.daily-xp-empty{padding:18px 8px;text-align:center;color:#684a2a;font-size:11px;line-height:1.45}
@media(max-width:1100px){.daily-xp-board{max-width:520px}}

/* Shared Harmony skill */
.harmony-card #count{color:#5a2c13;text-shadow:0 2px 0 #f8e5a5,0 4px 0 #8a5a25;font-family:Georgia,serif}
.harmony-card .harmony-details li{display:flex;justify-content:space-between;gap:12px;align-items:center}
.harmony-card .harmony-details li span{color:#5b4028}
.harmony-card .harmony-details li b{text-align:right;color:#6b2b18;font-size:12px}
.harmony-card .bar i{background:linear-gradient(90deg,#8f5b22,#e6bd55,#fff0a0)}
.harmony-card .row b{color:#6b2b18}
.harmony-skill-icon{display:grid;place-items:center;width:55px;height:55px;flex:0 0 55px;border:2px solid #c99a3e;border-radius:50%;background:radial-gradient(circle,#fff4b1,#9d6825 70%,#3a210d);color:#fff7bd;font-size:30px;text-shadow:0 2px 2px #000}
.public-skill .public-combat-icon{display:grid;place-items:center}


/* Harmony skill unlock rewards */
.harmony-unlocks{margin-top:14px;border-top:1px solid #9a7747;padding-top:10px}
.harmony-unlocks-title{margin-bottom:7px;color:#6b2b18;font:700 12px/1.2 Georgia,serif;letter-spacing:1.5px;text-align:left}
.harmony-unlock{display:grid;grid-template-columns:27px 42px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:58px;padding:7px 6px;border-top:1px solid #b79a69;border-bottom:1px solid #b79a69;background:linear-gradient(90deg,#6f4b2114,#fff4c735,#6f4b2114)}
.harmony-unlock-level{display:grid;place-items:center;width:26px;height:26px;border:1px solid #70401f;border-radius:50%;background:#4d2615;color:#f5dda0;font:700 13px Georgia,serif;box-shadow:inset 0 0 0 2px #c49445}
.harmony-unlock img{width:38px;height:48px;object-fit:contain;filter:drop-shadow(0 2px 1px #3d220a88)}
.harmony-unlock-copy{min-width:0;display:flex;flex-direction:column;text-align:left}
.harmony-unlock-copy b{color:#4f2715;font:700 11px/1.2 Georgia,serif}
.harmony-unlock-copy small{margin-top:2px;color:#755738;font:10px/1.25 Georgia,serif}
.harmony-unlock>strong{color:#8a2f21;font:700 9px Georgia,serif;letter-spacing:.6px}
.harmony-unlock.locked img{filter:grayscale(1) sepia(.2) opacity(.55) drop-shadow(0 2px 1px #3d220a66)}
.harmony-unlock.locked .harmony-unlock-copy{opacity:.72}
.harmony-unlock.unlocked{background:linear-gradient(90deg,#6c9e4520,#fff4c74d,#6c9e4520)}
.harmony-unlock.unlocked>strong{color:#35621f}
.pet-visual>.pet-harmony-cape{width:72%!important;height:88%!important;top:38%!important;object-fit:fill!important}
.pet-visual[data-pet-ground="hover"]>.pet-harmony-cape{width:64%!important;height:79%!important;top:42%!important}
.pet-visual[data-pet-personality="heavy"]>.pet-harmony-cape{width:76%!important;height:91%!important;top:37%!important}
.pet-visual[data-pet-personality="skitter"]>.pet-harmony-cape{width:59%!important;height:70%!important;top:45%!important}
.harmony-cape-bank-art{object-fit:contain!important}


/* Harmony branding and restrained harmonize feedback */
.harmony-heading{display:flex;align-items:center;justify-content:center;gap:9px}
.harmony-heading img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 2px 1px #4b220a88)}
.harmony-skill-logo{width:55px!important;height:55px!important;object-fit:contain!important;flex:0 0 55px;filter:drop-shadow(0 2px 2px #2a1308aa)}
.harmony-button{isolation:isolate;display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:16px!important}
.harmony-button-logo{position:relative;z-index:2;display:grid;place-items:center;width:104px;height:104px;margin:-4px auto 7px}
.harmony-button-logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 4px #2b1209aa);transition:transform .18s ease,filter .18s ease}
.harmony-button strong{position:relative;z-index:2;font:900 22px/1 Georgia,serif!important;letter-spacing:2px!important;color:#fff0b5!important;text-shadow:2px 3px #37180c!important}
.harmony-button em{z-index:2;bottom:13px!important;color:#f3d78f!important}
.harmony-button .harmony-wave{position:absolute;z-index:1;left:50%;top:48%;width:96px;height:96px;border:2px solid #ffe7a666;border-radius:50%;opacity:0;transform:translate(-50%,-50%) scale(.7);pointer-events:none}
.harmony-button.harmonizing .harmony-button-logo img{animation:harmonyLogoPulse .48s ease-out}
.harmony-button.harmonizing .harmony-wave{animation:harmonyWave .5s ease-out}
.harmony-button.harmonizing:after{content:'✦';position:absolute;z-index:3;right:31px;top:31px;color:#fff6c8;font-size:24px;text-shadow:0 0 9px #fff0a0;animation:harmonyTwinkle .5s ease-out;pointer-events:none}
@keyframes harmonyLogoPulse{0%{transform:scale(.96)}42%{transform:scale(1.07);filter:drop-shadow(0 5px 4px #2b1209aa) drop-shadow(0 0 13px #ffe48e)}100%{transform:scale(1)}}
@keyframes harmonyWave{0%{opacity:.65;transform:translate(-50%,-50%) scale(.72)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.55)}}
@keyframes harmonyTwinkle{0%{opacity:0;transform:scale(.4) rotate(0)}35%{opacity:1;transform:scale(1.08) rotate(20deg)}100%{opacity:0;transform:scale(.7) rotate(45deg)}}
@media (prefers-reduced-motion:reduce){.harmony-button.harmonizing .harmony-button-logo img,.harmony-button.harmonizing .harmony-wave,.harmony-button.harmonizing:after{animation:none}}


/* Harmony sound control and Fredo unlock */
.harmony-sound-toggle{display:inline-flex;align-items:center;justify-content:center;gap:5px;margin:7px auto 1px;padding:3px 8px;border:1px solid #76502b55;border-radius:10px;color:#76502b;font:700 8px/1 Georgia,serif;letter-spacing:.7px;cursor:pointer;opacity:.72;transition:opacity .15s ease,background .15s ease}
.harmony-sound-toggle:hover{opacity:1;background:#fff2bd24}
.harmony-sound-toggle input{position:absolute;opacity:0;pointer-events:none}
.harmony-sound-toggle span{font-size:11px}
.harmony-sound-toggle input:not(:checked)~span,.harmony-sound-toggle input:not(:checked)~b{opacity:.38;text-decoration:line-through}
.harmony-unlocks .harmony-unlock+.harmony-unlock{margin-top:6px}
.harmony-unlock img[alt="Fredo the Friendly Otter"]{width:43px;height:43px}
.pet-visual[data-pet-id="pet_fredo"]{--pet-scale:1.02}
.pet-visual[data-pet-id="pet_fredo"] .fredo-body{position:relative;display:block;width:100%;height:100%}
.pet-visual[data-pet-id="pet_fredo"] .fredo-frame{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain;opacity:0}
.pet-visual[data-pet-id="pet_fredo"] .fredo-idle{opacity:1}
.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-idle{animation:fredoIdleFrames 3.6s steps(1,end) infinite}
.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-walk-one{animation:fredoWalkOne 3.6s steps(1,end) infinite}
.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-walk-two{animation:fredoWalkTwo 3.6s steps(1,end) infinite}
.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-stand{animation:fredoStandFrame 3.6s steps(1,end) infinite}
@keyframes fredoIdleFrames{0%,22%,68%,100%{opacity:1}23%,67%{opacity:0}}
@keyframes fredoWalkOne{0%,22%,35%,48%,61%,100%{opacity:0}23%,34%,49%,60%{opacity:1}}
@keyframes fredoWalkTwo{0%,34%,47%,60%,67%,100%{opacity:0}35%,46%,61%,66%{opacity:1}}
@keyframes fredoStandFrame{0%,67%,88%,100%{opacity:0}68%,87%{opacity:1}}
@media (prefers-reduced-motion:reduce){.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-frame{animation:none!important}.roaming-pet .pet-visual[data-pet-id="pet_fredo"] .fredo-idle{opacity:1}}

/* Clean split navigation and account quick actions */
.repo-header-centre{display:flex;flex-direction:column;align-items:center}
.signed-in-controls{display:flex!important;align-items:stretch;justify-content:center;gap:8px;flex-wrap:wrap}
.signed-in-controls.hidden{display:none!important}
.header-quick-button{min-width:105px;padding:8px 13px!important;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:linear-gradient(#654321,#351f10)!important;border:3px ridge #bd8d45!important;color:#f6dda0!important;font-family:Georgia,serif!important;font-size:12px!important;letter-spacing:.06em;box-shadow:0 3px 0 #100905}
.header-quick-button img{width:25px!important;height:25px!important;object-fit:contain;image-rendering:pixelated}
.header-quick-button:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px)}
.header-quick-button:disabled{opacity:.42}

.game-strip.adventure-nav{width:min(1510px,calc(100% - 26px))!important;max-width:none!important;display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:13px!important;padding:11px!important;background:#1d1109!important;border:3px ridge #a87838!important;align-items:stretch!important}
.game-strip.adventure-nav .nav-section{display:block!important;margin:0!important;padding:10px!important;border:2px solid #6f4d25;background:linear-gradient(180deg,rgba(111,70,32,.35),rgba(24,14,8,.7));box-shadow:inset 0 0 0 1px rgba(240,195,104,.15)}
.game-strip.adventure-nav .training-nav{border-color:#93642d}
.game-strip.adventure-nav .activities-nav{border-color:#735536}
.nav-section-heading{display:flex!important;flex-direction:row!important;align-items:baseline!important;justify-content:space-between!important;gap:10px!important;margin:0 2px 9px!important;padding:0 2px 7px!important;border-bottom:1px solid #7d592c}
.nav-section-heading span{color:#f0cb72!important;font-family:Georgia,serif;font-weight:900;letter-spacing:.14em;font-size:13px!important}
.nav-section-heading small{color:#bda77a;font-size:10px;letter-spacing:.04em}
.nav-button-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px!important}
.training-nav .nav-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.activities-nav .nav-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.game-strip.adventure-nav button{width:100%;min-width:0;min-height:56px!important;padding:7px 8px!important;font-size:10px!important}
.game-strip.adventure-nav button img{width:23px!important;height:23px!important;max-width:23px!important;max-height:23px!important}
@media(max-width:1050px){.game-strip.adventure-nav{grid-template-columns:1fr!important}.nav-button-grid,.training-nav .nav-button-grid,.activities-nav .nav-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.nav-button-grid,.training-nav .nav-button-grid,.activities-nav .nav-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-section-heading{align-items:flex-start!important;flex-direction:column!important;gap:2px!important}.signed-in-controls{gap:5px}.header-quick-button{min-width:88px;font-size:10px!important;padding:7px!important}}

/* Training navigation label and icon consistency */
.training-nav .nav-button-grid button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-family:inherit;
  font-size:12px;
  font-weight:700;
  line-height:1;
}
.training-nav .nav-button-grid button>img,
.training-nav .nav-button-grid button>.training-skill-icon{
  width:24px!important;
  height:24px!important;
  flex:0 0 24px;
  object-fit:contain;
}
.training-nav .nav-button-grid button>span:not(.training-skill-icon){
  font:inherit;
  line-height:1;
}
.public-skill.harmony-public-skill img{
  image-rendering:pixelated;
  object-fit:contain;
  padding:3px;
  box-sizing:border-box;
}


/* Combat training button matches every other skill button. */
.training-nav .combat-open-button{color:#f6dda0!important;font:inherit!important;}
.training-nav .combat-open-button>span{color:inherit!important;font:inherit!important;line-height:1!important;}
.training-nav .combat-open-button>img{width:24px!important;height:24px!important;object-fit:contain!important;image-rendering:pixelated;}

/* Separate Pets collection and expanded reward bank */
.pets-open-button img{filter:drop-shadow(0 1px 1px #000)}
.bank-dialog{width:min(930px,calc(100% - 24px))!important}
.bank-dialog .bank-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-height:520px;overflow:auto}
.pets-dialog{width:min(900px,calc(100% - 24px));background:linear-gradient(145deg,#2b2116,#100c08)!important}
.pets-heading>img{image-rendering:pixelated}
.pets-grid{grid-template-columns:repeat(4,minmax(145px,1fr));max-height:560px;overflow:auto;background:#17110c!important}
.lamp-bank-art{width:66px!important;height:55px!important;object-fit:contain;image-rendering:pixelated}
.lamp-bank-slot small{min-height:25px}
.lamp-dialog{width:min(470px,calc(100% - 24px))}
.lamp-dialog select{width:100%;margin:10px 0 15px;padding:12px;background:#ead8a8;border:2px solid #a66d29;color:#392313;font:700 14px Georgia,serif}
.lamp-dialog #confirmLampUse{width:100%}
.harmony-unlocks{max-height:360px;overflow-y:auto;padding-right:3px;scrollbar-width:thin}
.harmony-unlock img[alt*="XP lamp"]{width:45px;height:42px;image-rendering:pixelated}
@media(max-width:760px){.bank-dialog .bank-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pets-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}}

/* Compact grouped Harmony lamp unlocks */
.harmony-lamp-group{margin-top:2px;padding:7px 7px 8px;border-top:1px solid #b79a69;border-bottom:1px solid #b79a69;background:linear-gradient(90deg,#6f4b2114,#fff4c735,#6f4b2114)}
.harmony-lamp-group-heading{display:flex;align-items:center;gap:8px;margin-bottom:7px;text-align:left}
.harmony-lamp-group-heading img{width:35px;height:29px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 1px #3d220a66)}
.harmony-lamp-group-heading span{display:flex;flex-direction:column;min-width:0}
.harmony-lamp-group-heading b{color:#4f2715;font:700 11px/1.15 Georgia,serif;letter-spacing:.5px}
.harmony-lamp-group-heading small{color:#755738;font:9px/1.2 Georgia,serif;margin-top:1px}
.harmony-lamp-levels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
.harmony-lamp-tier{display:grid;grid-template-columns:25px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:6px;min-height:39px;padding:4px 5px;border:1px solid #b79a69;background:#ead7aa66}
.harmony-lamp-tier .harmony-unlock-level{grid-row:1/3;width:23px;height:23px;font-size:11px}
.harmony-lamp-tier>b{color:#4f2715;font:700 10px/1.1 Georgia,serif;text-align:left}
.harmony-lamp-tier>strong{color:#8a2f21;font:700 8px/1 Georgia,serif;letter-spacing:.4px;text-align:left}
.harmony-lamp-tier.unlocked{background:#dce7bd66;border-color:#8b9d59}
.harmony-lamp-tier.unlocked>strong{color:#35621f}
.harmony-lamp-tier.locked{opacity:.78}
.harmony-unlocks{max-height:none;overflow:visible;padding-right:0}
.harmony-unlocks .harmony-lamp-group+.harmony-unlock{margin-top:6px}


/* Other navigation consistency */
.activities-nav .nav-button-grid button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:58px!important;
  padding:8px 9px!important;
  font-family:Georgia,serif!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  color:#f6dda0!important;
}
.activities-nav .nav-button-grid button>span:not(.ge-button-icon):not(.wise-task-badge){
  display:block;
  font:inherit!important;
  color:inherit!important;
  line-height:inherit!important;
}
.activities-nav .nav-button-grid button>img{
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  object-fit:contain!important;
  image-rendering:pixelated;
}
.activities-nav .wise-task-open-button img{width:24px!important;height:24px!important}
.activities-nav .ge-button-icon{flex:0 0 24px;width:24px;height:24px;margin:0!important;font-size:10px!important}
.activities-nav .achievements-open-button span{white-space:normal}

/* Unified Training and Other navigation sizing */
.game-strip.adventure-nav{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.game-strip.adventure-nav .training-nav,
.game-strip.adventure-nav .activities-nav{
  min-width:0!important;
}
.training-nav .nav-button-grid,
.activities-nav .nav-button-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.training-nav .nav-button-grid button,
.activities-nav .nav-button-grid button{
  width:100%!important;
  min-width:0!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  box-sizing:border-box!important;
  padding:8px 9px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-family:Georgia,serif!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  color:#f6dda0!important;
}
.training-nav .nav-button-grid button>img,
.activities-nav .nav-button-grid button>img,
.training-nav .nav-button-grid button>.training-skill-icon,
.activities-nav .nav-button-grid button>.ge-button-icon{
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  max-width:24px!important;
  max-height:24px!important;
  object-fit:contain!important;
}
.training-nav .nav-button-grid button>span:not(.training-skill-icon),
.activities-nav .nav-button-grid button>span:not(.ge-button-icon):not(.wise-task-badge){
  font:inherit!important;
  color:inherit!important;
  line-height:inherit!important;
}
@media(max-width:1050px){
  .game-strip.adventure-nav{grid-template-columns:1fr!important}
}


/* Skills presentation refresh and final training-button normalization */
.training-nav .nav-button-grid .runecrafting-open-button{
  width:100%!important;min-width:0!important;max-width:none!important;
  height:58px!important;min-height:58px!important;max-height:58px!important;
  padding:8px 9px!important;box-sizing:border-box!important;
  font-family:Georgia,serif!important;font-size:11px!important;font-weight:900!important;
  line-height:1.08!important;letter-spacing:.025em!important;color:#f6dda0!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  white-space:normal!important;flex:initial!important;
}
.training-nav .nav-button-grid .runecrafting-open-button img{
  width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important;flex:0 0 24px!important;
}
#skillsDialog.game-dialog.wide,#playerStatsDialog.game-dialog.wide{width:min(1040px,calc(100% - 28px));padding:26px;background:linear-gradient(145deg,#181611,#090908);border-color:#806331;box-shadow:inset 0 0 0 3px #292116,0 18px 70px #000}
#skillsDialog h3,#playerStatsDialog h3{text-align:center;font-size:25px;margin:0 45px 20px;color:#e1bd65;text-shadow:2px 2px #3b250d}
#skillsDialog .skills-grid,.public-skills-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#skillsDialog .skill-card,.public-skill{position:relative;min-height:108px;padding:13px 14px;display:grid;grid-template-columns:82px minmax(0,1fr) 48px;align-items:center;gap:12px;background:linear-gradient(145deg,#22211d,#11110f);border:2px solid #4d473b;box-shadow:inset 0 0 0 2px #171612,0 4px 0 #070706;color:#dbc078}
#skillsDialog .skill-card>img,.public-skill>img{width:74px;height:74px;object-fit:contain;filter:drop-shadow(2px 3px 1px #000);image-rendering:auto}
#skillsDialog .skill-card>div{display:grid!important;grid-template-columns:1fr auto!important;grid-template-rows:auto auto auto!important;gap:3px 8px!important;min-width:0}
#skillsDialog .skill-card b,.public-skill b{font:700 18px/1.1 Georgia,serif;color:#d8b65f;text-shadow:1px 2px #24170b}
#skillsDialog .skill-card strong{grid-column:2!important;grid-row:1/3!important;align-self:center;font:700 38px/1 Georgia,serif;color:#e0bd68;text-shadow:2px 3px #211408}
#skillsDialog .skill-card small,.public-skill small{font:700 13px/1.2 Georgia,serif;color:#d9c9a2}
#skillsDialog .skill-card i,.public-skill i{grid-column:1/-1!important;height:8px!important;margin-top:5px;background:#080807;border:1px solid #3b352a;box-shadow:inset 0 1px 2px #000}
#skillsDialog .skill-card i span,.public-skill i span{display:block;height:100%;background:linear-gradient(90deg,#8b5411,#d5a631);box-shadow:inset 0 1px #f0c85b}
.public-skill-copy{min-width:0;display:flex;flex-direction:column;gap:5px}
.public-skill>strong{font:700 38px/1 Georgia,serif;color:#e0bd68;text-shadow:2px 3px #211408;text-align:right}
.public-profile-summary{margin-bottom:15px;background:#12110e;border:2px solid #4d473b;padding:10px;gap:10px}
.public-profile-summary>div{background:#201d17;border:1px solid #494235;padding:10px;text-align:center}
.public-profile-summary span{display:block;color:#9f8c63;font:700 10px Georgia,serif;text-transform:uppercase;letter-spacing:1px}.public-profile-summary strong{color:#e0bd68;font:700 22px Georgia,serif}
#collectionGrid{display:none!important}
@media(max-width:850px){#skillsDialog .skills-grid,.public-skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#skillsDialog .skills-grid,.public-skills-grid{grid-template-columns:1fr}#skillsDialog .skill-card,.public-skill{grid-template-columns:64px minmax(0,1fr) 42px;min-height:90px}#skillsDialog .skill-card>img,.public-skill>img{width:58px;height:58px}}

/* Character six: dusty-pink blouse, pale green flares, pink energy drink. */
.game-screen.monitor-dti .monitor-game-dti{display:block}
.monitor-game-dti{background:linear-gradient(#f2bad8 0 14%,#bc83c8 14% 72%,#6e427d 72%);color:#fff7d4;image-rendering:pixelated}
.dti-top{height:14%;display:flex;align-items:center;justify-content:space-between;padding:0 7px;background:linear-gradient(90deg,#8e2f77,#e65fa0);font-size:7px;letter-spacing:.6px;text-shadow:1px 1px #4a163d}.dti-top span{font-size:6px;background:#fff;color:#d3458e;padding:1px 3px;border-radius:2px;text-shadow:none}
.dti-stage{position:absolute;left:0;right:0;top:14%;bottom:15%;overflow:hidden;background:linear-gradient(145deg,#e7c8ef 0 30%,#8a5aa1 31% 36%,#d9b7e4 37% 62%,#70467e 63%)}
.dti-runway{position:absolute;left:30%;right:30%;top:0;bottom:0;background:linear-gradient(90deg,#9a648f,#f6d0eb 45% 55%,#9a648f);clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);box-shadow:0 0 10px #fff8}
.dti-avatar{position:absolute;left:47%;top:18%;width:18px;height:37px;background:#f1c1a4;border-radius:45% 45% 20% 20%;box-shadow:0 0 0 2px #713a67}.dti-avatar:before{content:"";position:absolute;left:-5px;top:12px;width:28px;height:18px;background:#f397c9;clip-path:polygon(18% 0,82% 0,100% 100%,0 100%)}.dti-avatar:after{content:"";position:absolute;left:1px;top:28px;width:16px;height:18px;background:#f7f1e9;clip-path:polygon(18% 0,82% 0,100% 100%,0 100%)}.dti-avatar b{position:absolute;left:3px;top:-7px;width:12px;height:9px;background:#d77942;border-radius:50% 50% 25% 25%}
.dti-judge{position:absolute;bottom:6px;width:14px;height:18px;background:#251a31;border-radius:50% 50% 10% 10%}.dti-judge.j1{left:12%}.dti-judge.j2{right:12%}.dti-star{position:absolute;color:#ffe25c;font-style:normal;font-size:11px;text-shadow:0 0 4px #fff}.dti-star.s1{left:16%;top:15%}.dti-star.s2{right:15%;top:28%}
.dti-status{position:absolute;left:0;right:0;bottom:0;height:15%;display:grid;place-items:center;background:#351d43;color:#ffe9ac;font-size:6px;letter-spacing:.4px}

.gamer.character-six .curls,.gamer.character-six .wizard-hat,.gamer.character-six .hood{display:none!important}
.gamer.character-six .hairback{display:block;left:139px;top:24px;width:116px;height:143px;background:linear-gradient(90deg,#b75e27,#e28a45 48%,#8f431e);clip-path:polygon(18% 4%,82% 4%,98% 26%,91% 76%,77% 100%,64% 72%,50% 100%,36% 73%,22% 100%,7% 76%,2% 25%);z-index:3;filter:drop-shadow(0 3px 2px #0007)}
.gamer.character-six .hairback:after{content:"";position:absolute;left:38px;top:0;width:40px;height:34px;background:#eb9950;clip-path:polygon(50% 0,100% 46%,71% 100%,50% 70%,29% 100%,0 46%)}
.gamer.character-six .head{left:160px;top:57px;width:77px;height:91px;background:#d4a17e;border-radius:43% 43% 49% 49%}
.gamer.character-six .head:before{content:"";position:absolute;left:14px;right:14px;top:39px;height:7px;background:linear-gradient(90deg,#2a211d 0 22%,transparent 23% 65%,#2a211d 66%);clip-path:polygon(0 0,100% 0,87% 100%,10% 100%)}
.gamer.character-six .head:after{content:"";position:absolute;left:31px;top:55px;width:13px;height:5px;border-bottom:2px solid #865641;border-radius:50%}
.gamer.character-six .ear,.gamer.character-six .nose,.gamer.character-six .neck,.gamer.character-six .hand{background:#d4a17e}
.gamer.character-six .cape{display:none!important}
.gamer.character-six .body{left:92px;top:151px;width:177px;height:165px;background:linear-gradient(90deg,#a8757c,#c8949a 48%,#93646c);border:4px solid #765059;border-radius:38% 38% 19% 19%;clip-path:polygon(8% 0,92% 0,86% 57%,68% 100%,50% 83%,32% 100%,14% 57%)}
.gamer.character-six .body:before{content:"";position:absolute;left:77px;top:0;width:5px;height:111px;background:#d5a4a7;opacity:.55}
.gamer.character-six .body:after{content:"";position:absolute;left:3px;right:3px;bottom:0;height:17px;background:#202416;clip-path:polygon(0 70%,100% 70%,95% 100%,5% 100%)}
.gamer.character-six .body .robe-panel{display:none}
.gamer.character-six .belly{display:none}
.gamer.character-six .arm{width:128px;height:38px;background:linear-gradient(#b78389,#96656d);border-radius:21px;border-bottom:9px solid #6f4b52}
.gamer.character-six .arm-left{left:205px;top:207px}.gamer.character-six .arm-right{left:188px;top:220px}
.gamer.character-six .leg{width:96px;height:78px;background:linear-gradient(90deg,#aab08c,#c3c8a6 48%,#929979);border-bottom:15px solid #42501f;border-radius:24px 24px 7px 7px;clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)}
.gamer.character-six .leg.one{left:126px;top:304px;transform:rotate(4deg)}.gamer.character-six .leg.two{left:198px;top:309px;transform:rotate(-3deg)}
.gamer.character-six .leg:after{content:"";position:absolute;left:9px;bottom:-11px;width:46px;height:15px;background:#3d4b1e;clip-path:polygon(0 0,100% 20%,84% 100%,6% 100%)}
.energy-prop{display:none;position:absolute;width:62px;height:138px;transform-origin:50% 90%;filter:drop-shadow(0 4px 3px #0009)}
.energy-prop img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.gamer.character-six .energy-prop{display:block;left:-7px;top:-64px;transform:rotate(-7deg)}
.gamer.character-six.typing .arm-right{animation:energyCanArm 5.6s ease-in-out infinite!important;transform-origin:8px 50%}
.gamer.character-six.typing .energy-prop{animation:energyCanTip 5.6s ease-in-out infinite!important}
@keyframes energyCanArm{0%,58%,100%{transform:rotate(17deg) translate(0,0)}68%{transform:rotate(2deg) translate(-10px,-18px)}76%,86%{transform:rotate(-23deg) translate(-28px,-42px)}94%{transform:rotate(4deg) translate(-8px,-12px)}}
@keyframes energyCanTip{0%,68%,93%,100%{transform:rotate(-7deg)}77%,86%{transform:rotate(12deg)}}

/* Pet-room chat: deliberately compact so it blends into the room frame. */
.pet-room-skip{position:absolute;right:55px;top:8px;z-index:30;width:auto!important;min-width:0!important;height:22px!important;margin:0!important;padding:2px 7px!important;border:1px solid rgba(232,198,119,.42)!important;border-radius:2px;background:rgba(32,20,10,.68)!important;color:rgba(231,202,136,.82)!important;font:700 8px/1 Georgia,serif!important;letter-spacing:.7px;opacity:.58;box-shadow:inset 0 0 0 1px rgba(0,0,0,.45);transition:opacity .15s ease,background .15s ease,color .15s ease}
.pet-room-skip:hover{opacity:1;background:rgba(67,40,19,.94)!important;color:#f1d694!important}
.pet-room-skip:disabled{opacity:.25!important;cursor:default!important;filter:grayscale(.35)}


/* Recent pet-room chat history: intentionally faint until hovered. */
.global-xp-board{margin-top:20px}

/* Compact dual homepage leaderboards — preserve the original Harmony column height */
.harmony-actions{
  align-self:stretch;
  padding:18px 16px!important;
  overflow:hidden;
}
.harmony-actions>h2{
  margin:0 0 10px!important;
}
.harmony-actions .harmony-button{
  margin:8px 0 4px!important;
}
.harmony-actions .harmony-sound-toggle{
  margin:3px 0 6px!important;
}
.harmony-actions .daily-xp-board{
  width:calc(100% - 10px);
  margin:12px auto 8px!important;
  padding:10px 10px 8px!important;
  min-height:0;
  box-shadow:0 5px 8px #0006,inset 0 0 12px rgba(91,54,18,.2);
}
.harmony-actions .daily-xp-board:before,
.harmony-actions .daily-xp-board:after{
  left:-5px;
  right:-5px;
  height:12px;
}
.harmony-actions .daily-xp-board:before{top:-8px}
.harmony-actions .daily-xp-board:after{bottom:-8px}
.harmony-actions .daily-xp-heading{
  padding:0 3px 5px!important;
}
.harmony-actions .daily-xp-heading span{
  font-size:11px!important;
  line-height:1.05!important;
  letter-spacing:1.3px!important;
}
.harmony-actions .daily-xp-list{
  padding:3px 0 0!important;
}
.harmony-actions .daily-xp-entry{
  grid-template-columns:18px minmax(0,1fr) auto!important;
  gap:4px!important;
  min-height:20px!important;
  padding:2px 2px!important;
}
.harmony-actions .daily-xp-rank,
.harmony-actions .daily-xp-name,
.harmony-actions .daily-xp-total{
  font-size:9px!important;
  line-height:1.1!important;
}
.harmony-actions .daily-xp-empty{
  padding:8px 4px!important;
  font-size:9px!important;
}
.harmony-actions .global-xp-board{
  margin-top:12px!important;
  margin-bottom:2px!important;
}
@media(max-width:1100px){
  .harmony-actions{overflow:visible}
  .harmony-actions .daily-xp-board{max-width:520px}
}

/* Fourth pet room: pets queue down the pier and become trapped in the whirlpool. */
.pet-room-scene[data-room="whirlpool"]{
  /* Match the exact wide dimensions used by every other pet room. */
  aspect-ratio:2048/473;
  min-height:250px;
  max-height:420px;
}
.pet-room-scene[data-room="whirlpool"] .pet-room-bg{
  background-size:100% 100%!important;
  background-position:center!important;
}
.pet-room-scene[data-room="whirlpool"] .roaming-pet .pet-label{
  background:rgba(18,35,41,.78)!important;
  border-color:rgba(155,224,255,.78)!important;
  color:#e9fbff!important;
}
.roaming-pet.pet-whirlpool-jumping .pet-sprite{
  animation:whirlpoolPetJump .42s cubic-bezier(.22,.8,.35,1) infinite alternate!important;
}
@keyframes whirlpoolPetJump{
  from{transform:translateY(0) scale(1)}
  to{transform:translateY(-22px) scale(.96)}
}
.roaming-pet.pet-whirlpool-splash .pet-sprite::before,
.roaming-pet.pet-whirlpool-splash .pet-sprite::after{
  content:""!important;position:absolute!important;display:block!important;left:50%;bottom:0;
  width:48px;height:15px;border:3px solid rgba(186,237,255,.92)!important;border-radius:50%!important;
  transform:translateX(-50%) scale(.3);animation:whirlpoolSplash 1s ease-out forwards;pointer-events:none;
}
.roaming-pet.pet-whirlpool-splash .pet-sprite::after{animation-delay:.16s}
@keyframes whirlpoolSplash{0%{opacity:0;transform:translateX(-50%) scale(.25)}20%{opacity:1}100%{opacity:0;transform:translateX(-50%) scale(1.65)}}
.roaming-pet.pet-whirlpool-spinning .pet-sprite{
  transform:rotate(var(--whirlpool-tilt,0deg)) scale(var(--whirlpool-scale,1));
  transform-origin:center 75%;
  transition:transform .18s linear,opacity .18s linear;
}
.roaming-pet.pet-whirlpool-spinning .pet-visual img{
  animation-duration:.34s!important;
}
.roaming-pet.pet-whirlpool-spinning .pet-label{opacity:.72;transform:scale(.9);transform-origin:center bottom}
.roaming-pet.pet-whirlpool-sucked .pet-label{opacity:0!important}
.roaming-pet.pet-whirlpool-sucked .pet-sprite{filter:brightness(.82) saturate(.85)}
@media(max-width:850px){
  .pet-room-scene[data-room="whirlpool"]{min-height:220px;max-height:420px}
}


/* Whirlpool room: pets occasionally lose held weapons and food while spinning. */
.whirlpool-lost-item{
  position:absolute;z-index:76;width:34px;height:42px;margin:-17px 0 0 -17px;
  background-repeat:no-repeat;background-position:center;background-size:contain;
  pointer-events:none;filter:drop-shadow(2px 3px 1px rgba(0,0,0,.72));
  transform-origin:center;animation:whirlpoolLostItem 1.55s cubic-bezier(.16,.72,.28,1) forwards;
}
@keyframes whirlpoolLostItem{
  0%{opacity:0;transform:translate(0,0) rotate(0) scale(calc(var(--lost-size)*.6))}
  9%{opacity:1}
  52%{opacity:1;transform:translate(calc(var(--lost-x)*.62),var(--lost-y)) rotate(calc(var(--lost-r)*.55)) scale(var(--lost-size))}
  100%{opacity:0;transform:translate(var(--lost-x),calc(var(--lost-y) + 118px)) rotate(var(--lost-r)) scale(calc(var(--lost-size)*.68))}
}
@media(max-width:850px){.whirlpool-lost-item{width:27px;height:34px;margin:-13px 0 0 -13px}}

/* Fifth pet room: broom-flight quaffle match. */
.pet-room-scene[data-room="quidditch"] .pet-room-bg{background-size:100% 100%;background-position:center}
.pet-room-scene[data-room="quidditch"] .roaming-pet{z-index:12}
.pet-room-scene[data-room="quidditch"] .roaming-pet .pet-label{background:rgba(25,17,8,.88)!important;border-color:#d7ad4f!important;color:#fff0a8!important}
.pet-broom{display:none;position:absolute;left:-20px;bottom:11px;width:116px;height:42px;background-size:contain;background-repeat:no-repeat;background-position:center;image-rendering:pixelated;filter:drop-shadow(0 4px 3px rgba(0,0,0,.6));transform-origin:54% 50%;z-index:1}
.roaming-pet.pet-on-broom .pet-broom{display:block;transform:scaleX(var(--broom-facing,1)) rotate(calc(var(--quidditch-bank,0deg) * var(--broom-facing,1)))}
.roaming-pet.pet-on-broom .pet-sprite{z-index:3;bottom:15px!important;transform:translateY(-4px) scale(.82)}
.roaming-pet.pet-on-broom .pet-label{bottom:76px!important}
.roaming-pet.pet-on-broom .pet-visual img{animation:quidditchPetBob .65s ease-in-out infinite alternate!important}
.pet-quaffle,.quidditch-quaffle{position:absolute;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle at 32% 30%,#dc7e51 0 16%,#8a351f 18% 56%,#45170f 58% 100%);border:2px solid #2b0d08;box-shadow:0 2px 3px #0008;z-index:18;pointer-events:none}
.pet-quaffle{right:2px;bottom:33px}
.quidditch-quaffle{transition:left .62s cubic-bezier(.2,.7,.25,1),top .62s cubic-bezier(.2,.7,.25,1),transform .62s ease}
.quidditch-quaffle.is-dropping{left:50%;transform:translate(-50%,0)}
.quidditch-quaffle.is-shot{transform:translate(-50%,-50%) rotate(0deg)}
.quidditch-quaffle.is-missed{animation:quaffleBounce .62s ease-out forwards}
.quidditch-scoreboard{display:none;position:absolute;left:50%;top:8px;transform:translateX(-50%);z-index:24;align-items:flex-start;gap:8px;padding:5px 9px;background:linear-gradient(#3c2a14,#1c130a);border:2px ridge #c79a42;box-shadow:0 3px 0 #0008,inset 0 0 0 1px #6f4b1f;color:#f4d889;font:700 9px/1 Georgia,serif;letter-spacing:.5px;pointer-events:none;min-width:255px}
.pet-room-scene[data-room="quidditch"] .quidditch-scoreboard{display:flex}
.quidditch-scoreboard>strong{align-self:center;font-size:9px;color:#b9914e;padding-top:12px}
.quidditch-team{width:108px;text-align:center;display:grid;grid-template-columns:1fr auto;column-gap:5px;align-items:center}
.quidditch-team b{font-size:8px;white-space:nowrap}.quidditch-team.gryffindor b{color:#e34b3f;text-shadow:0 1px 0 #4a0b08,0 0 4px #a91e17}.quidditch-team.slytherin b{color:#7ecb75}
.quidditch-team>span{font-size:18px;color:#fff4bd;grid-row:1/3;grid-column:2}
.quidditch-team small{grid-column:1/-1;display:flex;flex-direction:column;gap:1px;margin-top:3px;padding-top:3px;border-top:1px solid #8b632d66;font:600 7px/1.15 Georgia,serif;letter-spacing:0;color:#d8c79e;max-height:34px;overflow:hidden}
.quidditch-team small i{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quidditch-goal-flash{position:absolute;width:36px;height:36px;border-radius:50%;z-index:16;transform:translate(-50%,-50%);border:3px solid #ffe887;box-shadow:0 0 20px #ffd646;animation:goalFlash .85s ease-out forwards;pointer-events:none}
.roaming-pet.pet-quidditch-celebrate{animation:quidditchCelebrate .82s ease-in-out}
@keyframes quidditchPetBob{from{transform:translateY(1px) rotate(-2deg)}to{transform:translateY(-5px) rotate(2deg)}}
@keyframes quidditchCelebrate{0%,100%{filter:none}25%{filter:brightness(1.5);margin-top:-8px}50%{transform:rotate(12deg)}75%{transform:rotate(-12deg)}}
@keyframes goalFlash{0%{opacity:1;transform:translate(-50%,-50%) scale(.35)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.5)}}
@keyframes quaffleBounce{0%{margin-top:0}45%{margin-top:-24px}100%{margin-top:25px;opacity:0}}
.quidditch-firework{position:absolute;width:1px;height:1px;z-index:28;pointer-events:none}.quidditch-firework i{position:absolute;left:0;top:0;width:4px;height:4px;border-radius:50%;background:#ffd966;box-shadow:0 0 6px currentColor;animation:quidditchSpark var(--fd,.65s) ease-out forwards}.quidditch-firework.is-gryffindor i:nth-child(3n){background:#d74232}.quidditch-firework.is-gryffindor i:nth-child(3n+1){background:#ffd65a}.quidditch-firework.is-slytherin i:nth-child(3n){background:#52bf72}.quidditch-firework.is-slytherin i:nth-child(3n+1){background:#d8f2d6}@keyframes quidditchSpark{0%{transform:translate(0,0) scale(1);opacity:1}100%{transform:translate(var(--fx),var(--fy)) scale(.15);opacity:0}}
@media(max-width:850px){.quidditch-scoreboard{top:5px;gap:4px;padding:4px 6px;min-width:205px}.quidditch-team{width:84px}.quidditch-team b{font-size:6px}.quidditch-team>span{font-size:14px}.quidditch-team small{font-size:6px;max-height:25px}.quidditch-scoreboard>strong{font-size:7px}.pet-broom{width:88px;height:34px;left:-10px}}

/* Fullscreen Quidditch mode */
.quidditch-mode-button{display:none;position:absolute;right:92px;top:8px;z-index:34;width:auto!important;min-height:22px!important;padding:4px 8px!important;margin:0!important;border:1px solid #8e672c!important;background:linear-gradient(#4b3218,#211407)!important;color:#e7c878!important;font:700 8px/1 Georgia,serif!important;letter-spacing:.5px;box-shadow:0 2px 0 #0009,inset 0 0 0 1px #c69b4a55;opacity:.82}
.pet-room-scene[data-room="quidditch"] .quidditch-mode-button{display:block}
.quidditch-mode-button:hover{opacity:1}.quidditch-mode-button:active{transform:translateY(1px)}
.quidditch-mode-overlay{position:fixed;inset:0;z-index:10000;background:#050403f2;display:none;place-items:center;padding:1.5vh 1.5vw}
.quidditch-mode-overlay.is-open{display:grid}
.quidditch-mode-tv{position:relative;width:min(97vw,1500px);aspect-ratio:1.503/1;background:url('assets/quidditch-mode-tv.png') center/contain no-repeat;filter:drop-shadow(0 18px 35px #000);overflow:hidden}
.quidditch-mode-close{position:absolute;right:4.1%;top:4.3%;z-index:20;width:36px!important;height:36px!important;padding:0!important;margin:0!important;border:2px ridge #c79a42!important;background:#38220f!important;color:#f4d889!important;font:900 26px/30px Georgia,serif!important}
.quidditch-mode-pitch{position:absolute;left:6.55%;right:6.6%;top:9.55%;bottom:12.9%;overflow:hidden;border-radius:1%;pointer-events:none}
.quidditch-mode-hud{position:absolute;left:50%;top:6.3%;transform:translateX(-50%);z-index:18;display:grid;grid-template-columns:210px 72px 210px;gap:7px;align-items:start;padding:6px 10px;background:linear-gradient(#362414ed,#140d07ed);border:2px ridge #c39743;box-shadow:0 3px 10px #000b;color:#f2d583;font-family:Georgia,serif;text-align:center;min-height:57px}
.quidditch-mode-team{display:grid;grid-template-columns:1fr 38px;gap:2px 6px}.quidditch-mode-team b{font-size:11px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quidditch-mode-team strong{grid-row:1/3;grid-column:2;font-size:27px;line-height:32px;color:#fff1ba}.quidditch-mode-team small{font-size:8px;line-height:10px;display:block;max-height:30px;overflow:hidden;color:#dcc890}.quidditch-mode-team.is-left b{color:#e34b3f}.quidditch-mode-team.is-right b{color:#79c681}.quidditch-mode-centre{display:grid;gap:2px}.quidditch-mode-centre span{font-size:19px;color:#fff0a8}.quidditch-mode-centre em{font-size:8px;color:#f2d583;font-style:normal;letter-spacing:1px}
.qm-pet{position:absolute;width:64px;height:58px;z-index:6;transition:left 1.35s cubic-bezier(.3,.1,.35,1),top 1.35s cubic-bezier(.3,.1,.35,1),transform .35s ease;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 2px #0009)}
.qm-pet.is-leftward{transform:translate(-50%,-50%) scaleX(-1)}.qm-pet.is-celebrating{animation:qmCelebrate .75s ease-in-out 2}.qm-pet .pet-label{position:absolute;left:50%;top:-16px;transform:translateX(-50%);font:700 8px/1 Georgia,serif;color:#fff0ae;background:#221506df;border:1px solid #b88a37;padding:2px 4px;white-space:nowrap}.qm-pet .pet-sprite{position:absolute;left:16px;top:0;width:38px;height:38px}.qm-pet .pet-sprite img{max-width:38px;max-height:38px}.qm-pet .qm-broom{position:absolute;left:1px;top:28px;width:60px;height:20px;object-fit:contain;z-index:-1}.qm-pet.team-left .pet-label{border-color:#b83b33}.qm-pet.team-right .pet-label{border-color:#488b45}.qm-pet.has-ball:after{content:"";position:absolute;right:3px;top:18px;width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#dd8458,#7b2818 55%,#310c08);border:1px solid #210805;box-shadow:0 1px 2px #000}
.qm-quaffle{position:absolute;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#dd8458,#7b2818 55%,#310c08);border:2px solid #210805;z-index:12;transition:left .55s ease,top .55s ease,transform .55s ease;transform:translate(-50%,-50%)}
.qm-firework{position:absolute;width:4px;height:4px;z-index:16}.qm-firework i{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffd85a;animation:qmSpark .8s ease-out forwards}.qm-goal-text{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);z-index:17;color:#fff3a8;font:900 34px/1 Georgia,serif;text-shadow:0 3px 0 #5a1b0f,0 0 12px #ffb52e;animation:qmGoal 1.2s ease-out forwards}
@keyframes qmCelebrate{50%{transform:translate(-50%,-60%) rotate(18deg) scale(1.15)}}@keyframes qmSpark{to{transform:translate(var(--x),var(--y)) scale(.2);opacity:0}}@keyframes qmGoal{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-65%) scale(1)}}
@media(max-width:800px){.quidditch-mode-hud{grid-template-columns:125px 55px 125px;top:5.8%;transform:translateX(-50%) scale(.82)}.quidditch-mode-button{right:80px;font-size:7px!important;padding:4px 5px!important}}

/* Quidditch pre-match team presentation */
.qm-lineup{position:absolute;left:6.55%;right:6.6%;top:9.55%;bottom:12.9%;z-index:30;display:none;place-items:center;background:linear-gradient(90deg,#07160ddb,#080707e8 45%,#080707e8 55%,#081323db);backdrop-filter:blur(2px);pointer-events:none}
.qm-lineup.is-visible{display:grid}
.qm-lineup-card{width:min(92%,980px);display:grid;grid-template-columns:1fr 118px 1fr;gap:16px;align-items:stretch;color:#f2d99a;font-family:Georgia,serif;text-shadow:0 2px 2px #000}
.qm-lineup-team{border:2px ridge #9f7939;background:#100d09e8;box-shadow:0 6px 18px #000b,inset 0 0 28px #0008;padding:12px 14px;min-height:190px}
.qm-lineup-left{border-color:#9a3e32;background:linear-gradient(90deg,#33100fe8,#100d09e8)}
.qm-lineup-right{border-color:#36598d;background:linear-gradient(270deg,#0b1e3ae8,#100d09e8)}
.qm-lineup-team h3{margin:0 0 9px;padding-bottom:7px;border-bottom:1px solid #c9a45c66;font-size:17px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qm-lineup-left h3{color:#ef6255}.qm-lineup-right h3{color:#6f9fff}
.qm-lineup-team div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px}
.qm-lineup-team span{display:block;padding:5px 7px;background:#0005;border:1px solid #b8924e33;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qm-lineup-centre{display:grid;place-content:center;text-align:center;gap:5px}.qm-lineup-centre b{font-size:29px;color:#d8b25e}.qm-lineup-centre span{font-size:52px;line-height:1;color:#fff1b4}.qm-lineup-centre small{font-size:8px;letter-spacing:1px;color:#bda777}
.qm-pet{will-change:left,top,transform;transition-timing-function:linear!important}
.qm-quaffle{will-change:left,top,transform;transition-timing-function:linear!important}
@media(max-width:760px){.qm-lineup-card{grid-template-columns:1fr 70px 1fr;gap:6px}.qm-lineup-team{padding:7px;min-height:145px}.qm-lineup-team h3{font-size:10px}.qm-lineup-team div{grid-template-columns:1fr}.qm-lineup-team span{font-size:8px;padding:3px}.qm-lineup-centre span{font-size:34px}}

/* Broadcast-quality teletext lineup. Flight positioning is controlled by the shared pet-room transition system below. */
.qm-pet{will-change:left,top,transform;contain:layout style paint;backface-visibility:hidden;transform-origin:center center}
.qm-lineup{background:radial-gradient(circle at 50% 45%,#152031f2,#05070bf8 68%);backdrop-filter:blur(4px) saturate(.8)}
.qm-lineup:before{content:"REPO SPORTS • LIVE TEAM SHEET";position:absolute;left:50%;top:7%;transform:translateX(-50%);color:#f5e8aa;font:900 13px/1 monospace;letter-spacing:3px;text-shadow:0 2px #000;padding:7px 18px;border-top:2px solid #ddba57;border-bottom:2px solid #ddba57;background:#05070bdd}
.qm-lineup-card{width:min(94%,1100px);grid-template-columns:minmax(0,1fr) 138px minmax(0,1fr);gap:18px;align-items:stretch;font-family:"Courier New",monospace;text-shadow:0 2px 0 #000}
.qm-lineup-team{padding:0;min-height:250px;border:3px solid;background:#05090eea;box-shadow:0 0 0 3px #050505,0 12px 28px #000d;overflow:hidden}
.qm-lineup-left{border-color:#5aaa43}.qm-lineup-right{border-color:#477ed0}
.qm-lineup-team h3{margin:0;padding:12px 14px;border:0;font:900 22px/1 monospace;letter-spacing:1px;text-align:center;color:#fff!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qm-lineup-left h3{background:linear-gradient(90deg,#244f1f,#142d12)}.qm-lineup-right h3{background:linear-gradient(90deg,#18335d,#244e8d)}
.qm-lineup-team div{display:grid;grid-template-columns:1fr;gap:0;padding:5px 10px 10px}
.qm-lineup-team span{display:grid;grid-template-columns:36px 34px 1fr;align-items:center;min-height:39px;padding:3px 5px;background:transparent;border:0;border-bottom:1px solid #45607866;color:#f0f0e8;font:700 15px/1 monospace}
.qm-lineup-team span i{color:#ffd45b;font-style:normal;text-align:center}.qm-lineup-team span img{width:29px;height:29px;object-fit:contain;image-rendering:auto}.qm-lineup-team span b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qm-lineup-team .qm-lineup-empty{grid-template-columns:1fr;place-items:center;color:#8290a0}
.qm-lineup-centre{align-self:center;display:grid;place-items:center;gap:8px;padding:18px 8px;border-top:2px solid #d7af4e;border-bottom:2px solid #d7af4e;background:#05070ddd}
.qm-lineup-centre b{font:900 34px/1 monospace;color:#e7c253}.qm-lineup-centre span{display:grid;place-items:center;width:74px;height:74px;border:3px solid #e3c568;border-radius:50%;font:900 48px/1 monospace;color:#fff4be;background:#15110a;box-shadow:0 0 24px #e0bd4a44}.qm-lineup-centre small{font:800 9px/1.4 monospace;color:#ddcf9d;letter-spacing:1px;text-align:center}

/* Harmony level-up celebration */
.harmony-level-firework{position:fixed;z-index:15000;width:1px;height:1px;pointer-events:none}
.harmony-level-firework i{position:absolute;left:0;top:0;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle,#fff7bd 0 22%,#f6c941 24% 58%,#b5217d 60%);box-shadow:0 0 8px #ffe66d;animation:harmonyFirework 1.15s cubic-bezier(.15,.7,.2,1) var(--hd,0s) forwards}
@keyframes harmonyFirework{0%{transform:translate(0,0) scale(.25);opacity:0}12%{opacity:1}78%{transform:translate(var(--hx),var(--hy)) scale(1)}100%{transform:translate(calc(var(--hx)*1.08),calc(var(--hy)*1.08 + 18px)) scale(.15);opacity:0}}
.harmony-level-up-flash{animation:harmonyPanelFlash 1.2s ease-out}
@keyframes harmonyPanelFlash{0%,100%{filter:none}18%{filter:brightness(1.35) drop-shadow(0 0 18px #efc94c)}45%{filter:brightness(1.08) drop-shadow(0 0 7px #b62d83)}}
.harmony-level-toast{position:fixed;left:50%;top:19%;z-index:15001;transform:translate(-50%,-50%);padding:10px 20px;border:3px ridge #f2ce68;background:linear-gradient(#522043,#1f0e1b);color:#fff1a8;font:900 19px/1 Georgia,serif;letter-spacing:2px;text-shadow:0 2px #000;box-shadow:0 8px 28px #000c,0 0 24px #f2c94c88;pointer-events:none;animation:harmonyToast 1.9s ease forwards}
@keyframes harmonyToast{0%{opacity:0;transform:translate(-50%,-35%) scale(.7)}14%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-75%) scale(.92)}}
@media(max-width:760px){.qm-lineup:before{font-size:8px;letter-spacing:1px}.qm-lineup-card{grid-template-columns:1fr 65px 1fr;gap:5px}.qm-lineup-team{min-height:170px}.qm-lineup-team h3{font-size:10px;padding:7px 4px}.qm-lineup-team div{padding:3px}.qm-lineup-team span{grid-template-columns:23px 22px 1fr;min-height:26px;font-size:8px;padding:2px}.qm-lineup-team span img{width:20px;height:20px}.qm-lineup-centre span{width:42px;height:42px;font-size:25px}.qm-lineup-centre b{font-size:20px}.qm-lineup-centre small{font-size:6px}}


/* Quidditch TV now uses the same long, smooth flight transitions as the pet-room match. */
.qm-pet{
  left:50%;top:50%;
  transition:left 2.35s linear,top 2.35s linear,transform .28s ease!important;
  will-change:left,top,transform;
  contain:layout style paint;
  backface-visibility:hidden;
  transform:translate(-50%,-50%);
}
.qm-pet.is-leftward{transform:translate(-50%,-50%) scaleX(-1)}
.qm-quaffle{transition:left .58s cubic-bezier(.2,.7,.25,1),top .58s cubic-bezier(.2,.7,.25,1),transform .58s ease!important}
.other-quidditch-open-button img{object-fit:contain;filter:drop-shadow(0 1px 1px #000)}
/* Live Quidditch broadcast additions */
.quidditch-mode-centre small{font:700 7px/1.1 monospace;color:#8fd6a3;letter-spacing:.6px;white-space:nowrap}
.qm-prediction{display:grid;gap:5px;margin-top:6px;width:132px}.qm-prediction>em{font:800 7px/1.2 monospace;color:#f2d87c;font-style:normal}.qm-prediction>div{display:grid;grid-template-columns:1fr .65fr 1fr;gap:4px}.qm-prediction button{min-height:25px!important;padding:4px!important;margin:0!important;border:1px solid #9c7a3d!important;background:#17120a!important;color:#f4dda0!important;font:800 7px/1 monospace!important}.qm-prediction button:first-child{border-color:#4d9c58!important}.qm-prediction button:last-child{border-color:#507fc2!important}.qm-prediction button:disabled{opacity:.38;cursor:not-allowed}.qm-prediction small{font:700 6px/1.2 monospace;color:#bdb69d;min-height:14px}.qm-prediction.is-locked button{opacity:.35;pointer-events:none}
.qm-pet{transition:left 2.8s linear,top 2.8s linear,transform .32s ease!important}
.qm-pet .qm-broom{transition:transform .25s ease}
@media(max-width:760px){.qm-prediction{width:72px}.qm-prediction>em{font-size:5px}.qm-prediction button{font-size:5px!important;min-height:19px!important}.quidditch-mode-centre small{font-size:5px}}

/* Live broadcast labels and full-time card */
.qm-pet>.pet-label{position:absolute;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);min-width:96px;max-width:150px;padding:4px 7px;background:rgba(8,7,5,.78);border:1px solid rgba(225,190,102,.55);box-shadow:0 2px 5px #0009;color:#fff2b6;text-align:center;pointer-events:none;white-space:nowrap;z-index:20}
.qm-pet>.pet-label b{display:block;overflow:hidden;text-overflow:ellipsis;font:900 10px/1.1 Georgia,serif}
.qm-pet>.pet-label small{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;font:700 7px/1 monospace;color:#d8c58c;letter-spacing:.25px}
.qm-pet.team-left>.pet-label{border-color:#68b875}.qm-pet.team-right>.pet-label{border-color:#6895d4}
.qm-goal-text.qm-full-time{top:50%;max-width:80%;text-align:center;font-size:25px;animation:none;opacity:1;background:#090805df;border:3px ridge #d2aa51;padding:18px 28px}


/* Locked live predictions and broadcast statistics */
.qm-prediction button.is-selected{opacity:1!important;border-color:#ffe382!important;background:linear-gradient(#5d4617,#211704)!important;color:#fff5bd!important;box-shadow:0 0 0 1px #211704,0 0 12px #f0c84b88!important;transform:translateY(-1px)}
.qm-prediction.is-locked button:not(.is-selected){opacity:.28!important}
.qm-prediction-split{display:grid;gap:2px;margin-top:3px;padding-top:4px;border-top:1px solid #7c684744;color:#d8cda8;font:700 6px/1.25 monospace;text-align:left}
.qm-prediction-split span{display:grid;grid-template-columns:1fr auto;gap:5px}.qm-prediction-split b{color:#fff0a8}.qm-prediction-split em{font-style:normal;color:#9fbee8}
.qm-full-time-stats{position:absolute;inset:4% 5%;z-index:80;display:grid;grid-template-rows:auto 1fr auto;gap:10px;padding:15px 18px;border:3px ridge #d2aa51;background:linear-gradient(180deg,#0d121beF,#050609f5);box-shadow:0 15px 45px #000e;color:#f5edcf;font-family:"Courier New",monospace;overflow:auto}
.qm-full-time-stats>header{text-align:center;border-bottom:2px solid #b39147;padding-bottom:8px}.qm-full-time-stats>header b{display:block;color:#f0cb68;font:900 13px/1 monospace;letter-spacing:2px}.qm-full-time-stats>header strong{display:block;margin-top:6px;color:#fff4c0;font:900 24px/1.1 Georgia,serif}.qm-full-time-stats>header small{display:block;margin-top:5px;color:#9fb0c0;font:700 8px/1 monospace;letter-spacing:1px}
.qm-ft-teams{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-height:0}.qm-ft-team{border:2px solid #506070;background:#05080dbb;overflow:hidden}.qm-ft-team.is-left{border-color:#66a96f}.qm-ft-team.is-right{border-color:#638ac4}.qm-ft-team h3{margin:0;padding:8px 10px;background:#18222d;color:#fff2b6;font:900 14px/1 monospace;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.qm-ft-team.is-left h3{background:#18351d}.qm-ft-team.is-right h3{background:#172c4b}
.qm-ft-head,.qm-ft-row{display:grid;grid-template-columns:minmax(95px,1fr) 48px 62px 72px;align-items:center;gap:5px;padding:6px 8px;border-bottom:1px solid #43505c55}.qm-ft-head{color:#d1ad58;font:800 7px/1 monospace;background:#0a0d11}.qm-ft-row{color:#e8e4d2;font:700 9px/1.1 monospace}.qm-ft-row:last-child{border-bottom:0}.qm-ft-row b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff0ad}.qm-ft-row span{text-align:center}.qm-ft-row .qm-possession{text-align:right}
.qm-mvp{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 12px;border:2px solid #d8b557;background:linear-gradient(90deg,#34250c,#171005,#34250c);box-shadow:0 0 18px #d8b55733}.qm-mvp>span{font:900 10px/1 monospace;color:#f1cb63;letter-spacing:2px}.qm-mvp>b{color:#fff1b4;font:900 15px/1 Georgia,serif}.qm-mvp>small{color:#d6c78e;font:700 8px/1.25 monospace;text-align:right}
@media(max-width:760px){.qm-prediction-split{font-size:4px}.qm-full-time-stats{inset:3%;padding:8px;gap:6px}.qm-ft-teams{gap:5px}.qm-ft-team h3{font-size:8px;padding:5px}.qm-ft-head,.qm-ft-row{grid-template-columns:minmax(52px,1fr) 24px 31px 38px;gap:2px;padding:4px 3px;font-size:5px}.qm-full-time-stats>header strong{font-size:13px}.qm-mvp{grid-template-columns:1fr;padding:5px;gap:3px;text-align:center}.qm-mvp>small{text-align:center;font-size:5px}.qm-mvp>b{font-size:9px}}


/* Live Quidditch fixes: clickable predictions, compact split, Sky Sports full-time card */
.qm-lineup{pointer-events:auto!important}
.qm-lineup-card{pointer-events:auto!important}
.qm-lineup-team{pointer-events:none}
.qm-lineup-centre,.qm-prediction,.qm-prediction>div,.qm-prediction button{pointer-events:auto!important;position:relative;z-index:110}
.qm-prediction{width:210px!important;gap:7px!important;margin-top:8px!important;padding:8px!important;border:1px solid #826c3f66;background:#04070bd9}
.qm-prediction>em{font-size:9px!important;text-align:center}
.qm-prediction>div{grid-template-columns:1fr .7fr 1fr!important;gap:6px!important}
.qm-prediction button{min-height:34px!important;font-size:9px!important;cursor:pointer!important}
.qm-prediction button:not(:disabled):hover{filter:brightness(1.35);transform:translateY(-1px)}
.qm-prediction small{font-size:8px!important;min-height:12px!important;text-align:center}
.qm-prediction-split{font-size:7px!important;line-height:1.15!important;min-height:0!important;margin-top:4px!important;padding-top:4px!important}
.qm-prediction-split>span:only-child{display:block!important;text-align:center!important;font-size:7px!important;color:#8e9aaa!important;padding:2px!important}
.qm-sky-full-time{inset:2.5% 3.5%!important;padding:20px 24px!important;gap:13px!important;border:0!important;border-top:7px solid #e2b324!important;background:linear-gradient(150deg,#06172a 0%,#07111d 50%,#03101c 100%)!important;box-shadow:0 20px 70px #000f!important}
.qm-sky-full-time>header{border-bottom:1px solid #53708a!important;padding-bottom:12px!important}
.qm-sky-full-time>header b{font-size:15px!important;color:#f4cb32!important}
.qm-sky-full-time>header strong{font:900 31px/1.1 Arial,sans-serif!important;color:#fff!important}
.qm-sky-full-time>header strong i{display:inline-grid;place-items:center;min-width:46px;height:42px;margin:0 7px;background:#f2c426;color:#07121f;font-style:normal;border-radius:3px}
.qm-sky-full-time>header strong em{font-style:normal;color:#8fa0ae}
.qm-sky-full-time>header small{font-size:10px!important}
.qm-team-possession{display:grid;grid-template-columns:minmax(140px,1fr) 2fr minmax(140px,1fr);align-items:center;gap:14px;padding:10px 14px;background:#081d31;border:1px solid #25455e}
.qm-team-possession article{display:flex;align-items:center;justify-content:space-between;gap:10px;font:800 12px/1 Arial,sans-serif;color:#eaf3fa}.qm-team-possession article:last-child{text-align:right}.qm-team-possession strong{font-size:24px;color:#f4cc32}.qm-team-possession>div{height:13px;background:#24445f;border-radius:20px;overflow:hidden;position:relative}.qm-team-possession>div:after{content:"";position:absolute;right:0;top:0;bottom:0;width:100%;background:#284f84;z-index:0}.qm-team-possession>div i{display:block;position:relative;z-index:1;height:100%;background:#b61e35;border-right:3px solid #fff;box-sizing:border-box}
.qm-sky-full-time .qm-ft-teams{gap:18px!important}.qm-sky-full-time .qm-ft-team{border:1px solid #36546d!important;background:#071625!important}.qm-sky-full-time .qm-ft-team h3{padding:12px!important;font:900 16px/1 Arial,sans-serif!important;background:#102a42!important}.qm-sky-full-time .qm-ft-head,.qm-sky-full-time .qm-ft-row{grid-template-columns:minmax(120px,1fr) 70px 85px 90px!important;padding:9px 12px!important;font-family:Arial,sans-serif!important}.qm-sky-full-time .qm-ft-head{font-size:9px!important;background:#05101b!important}.qm-sky-full-time .qm-ft-row{font-size:12px!important}.qm-sky-full-time .qm-ft-row b{color:#fff!important}.qm-sky-full-time .qm-possession{text-align:center!important;color:#f4cc32;font-weight:900}
.qm-sky-full-time .qm-mvp{padding:13px 17px!important;border:0!important;border-left:7px solid #f2c426!important;background:#10283d!important}.qm-sky-full-time .qm-mvp>span{font-size:12px!important}.qm-sky-full-time .qm-mvp>b{font:900 20px/1 Arial,sans-serif!important}.qm-sky-full-time .qm-mvp>small{font-size:10px!important}
@media(max-width:760px){.qm-prediction{width:120px!important;padding:4px!important}.qm-prediction button{font-size:5px!important;min-height:24px!important}.qm-sky-full-time{inset:1.5%!important;padding:8px!important}.qm-team-possession{grid-template-columns:1fr;gap:5px}.qm-team-possession article{font-size:8px}.qm-team-possession strong{font-size:15px}.qm-sky-full-time .qm-ft-head,.qm-sky-full-time .qm-ft-row{grid-template-columns:minmax(60px,1fr) 30px 38px 42px!important;padding:5px 3px!important;font-size:6px!important}}

/* Professional live Quidditch player identifiers. Pet name above a side-coloured team badge. */
.qm-pet>.pet-label{
  bottom:calc(100% + 10px)!important;
  min-width:112px!important;
  max-width:180px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.9));
}
.qm-pet>.pet-label b{
  display:block!important;
  padding:2px 8px 3px!important;
  color:#fff7d6!important;
  font:900 11px/1.05 Georgia,serif!important;
  letter-spacing:.25px!important;
  text-shadow:0 2px 0 #000,1px 0 0 #000,-1px 0 0 #000!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.qm-pet>.pet-label small{
  display:block!important;
  width:max-content!important;
  max-width:170px!important;
  margin:1px auto 0!important;
  padding:3px 8px 3px!important;
  border:1px solid rgba(255,255,255,.35)!important;
  border-radius:2px!important;
  color:#fff!important;
  font:900 7px/1.05 Arial,sans-serif!important;
  letter-spacing:.65px!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 1px #000!important;
  box-shadow:0 2px 5px rgba(0,0,0,.75),inset 0 1px rgba(255,255,255,.18)!important;
  overflow:hidden!important;
  text-overflow:clip!important;
}
.qm-pet.team-left>.pet-label small{
  background:linear-gradient(#b73535,#681717)!important;
  border-color:#ef7b72!important;
}
.qm-pet.team-right>.pet-label small{
  background:linear-gradient(#316eb8,#173d73)!important;
  border-color:#79b4f2!important;
}
/* Keep identifiers readable when the broom/pet turns left. */
.qm-pet.is-leftward>.pet-label{transform:translateX(-50%) scaleX(-1)!important;}


/* ============================================================
   Quidditch broadcast polish: full labels and professional lineup
   ============================================================ */
.qm-pet>.pet-label{
  min-width:0!important;
  width:max-content!important;
  max-width:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
  z-index:60!important;
}
.qm-pet>.pet-label b{
  width:max-content!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  font:900 10px/1.05 Arial,sans-serif!important;
  background:rgba(4,7,10,.82)!important;
  border-radius:2px!important;
  border:1px solid rgba(255,255,255,.22)!important;
}
.qm-pet>.pet-label small{
  width:max-content!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  font:900 6.5px/1 Arial,sans-serif!important;
  letter-spacing:.45px!important;
}
.qm-pet.team-left>.pet-label small{color:#ff8c8c!important;background:rgba(75,7,13,.94)!important;border-color:#d83a47!important;}
.qm-pet.team-right>.pet-label small{color:#91c5ff!important;background:rgba(5,31,70,.94)!important;border-color:#3985d7!important;}
/* The whole flyer flips; flip the text layer back without clipping it. */
.qm-pet.is-leftward>.pet-label{transform:translateX(-50%) scaleX(-1)!important;}

/* Pre-game presentation styled like a professional broadcast team sheet. */
.qm-lineup{background:linear-gradient(145deg,rgba(4,18,32,.98),rgba(2,8,15,.99))!important;}
.qm-lineup:before{content:"REPO SPORTS • MATCH CENTRE"!important;top:3.5%!important;color:#f3cc36!important;border-color:#f3cc36!important;background:#071522!important;}
.qm-lineup-card{
  width:min(96%,1160px)!important;
  grid-template-columns:minmax(0,1fr) 300px minmax(0,1fr)!important;
  gap:16px!important;
  align-items:center!important;
}
.qm-lineup-team{min-height:310px!important;border:1px solid #39556d!important;background:#071625!important;box-shadow:0 15px 45px #000c!important;}
.qm-lineup-left{border-top:7px solid #b9293f!important;}
.qm-lineup-right{border-top:7px solid #3278c8!important;}
.qm-lineup-team h3{font:900 18px/1 Arial,sans-serif!important;padding:15px 12px!important;background:#10283d!important;color:#fff!important;}
.qm-lineup-left h3{color:#ff9ba8!important;}.qm-lineup-right h3{color:#9bcaff!important;}
.qm-lineup-team span{font:800 12px/1 Arial,sans-serif!important;min-height:44px!important;background:#08111c!important;border-bottom:1px solid #294157!important;}
.qm-lineup-centre{padding:18px 12px!important;border:1px solid #36516a!important;border-top:7px solid #f3cc36!important;background:#071522!important;box-shadow:0 15px 45px #000c!important;}
.qm-lineup-centre>b{font:900 31px/1 Arial,sans-serif!important;}
.qm-lineup-centre>span{width:68px!important;height:68px!important;font:900 40px/1 Arial,sans-serif!important;}
.qm-lineup-centre>small{font:800 9px/1.3 Arial,sans-serif!important;}
.qm-prediction{width:270px!important;box-sizing:border-box!important;margin:10px auto 0!important;padding:10px!important;background:#04101bd9!important;border:1px solid #34516b!important;}
.qm-prediction>em{font:900 9px/1.2 Arial,sans-serif!important;color:#f3cc36!important;}
.qm-prediction button{font:900 8px/1 Arial,sans-serif!important;min-width:0!important;overflow:hidden!important;text-overflow:clip!important;white-space:nowrap!important;}
.qm-prediction small{font:700 8px/1.2 Arial,sans-serif!important;color:#c5d2dc!important;}
/* Undo broad .qm-lineup-centre span rules that caused enormous prediction text. */
.qm-lineup-centre .qm-prediction-split,
.qm-lineup-centre .qm-prediction-split span,
.qm-lineup-centre .qm-prediction-split b,
.qm-lineup-centre .qm-prediction-split em{
  width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  transform:none!important;font-size:8px!important;line-height:1.2!important;
}
.qm-prediction-split{display:grid!important;gap:4px!important;padding:7px 0 0!important;margin-top:5px!important;border-top:1px solid #37536a!important;text-align:left!important;}
.qm-prediction-split span{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:2px 0!important;color:#dbe7ef!important;}
.qm-prediction-split span:only-child{display:block!important;text-align:center!important;color:#8194a3!important;font-size:8px!important;padding:3px 0!important;}
.qm-prediction-split b{overflow:hidden!important;text-overflow:clip!important;white-space:nowrap!important;color:#e9f0f5!important;}
.qm-prediction-split em{font-style:normal!important;color:#f3cc36!important;white-space:nowrap!important;}

@media(max-width:900px){
  .qm-lineup-card{grid-template-columns:minmax(0,1fr) 190px minmax(0,1fr)!important;gap:7px!important;}
  .qm-prediction{width:180px!important;padding:6px!important;}
  .qm-lineup-team h3{font-size:11px!important;}
  .qm-lineup-team span{font-size:8px!important;}
}

/* Quidditch live labels — full pet name above a complete team-colour banner. */
.qm-pet{
  contain:layout style!important;
  overflow:visible!important;
}
.qm-pet>.pet-label{
  top:auto!important;
  bottom:calc(100% + 9px)!important;
  left:50%!important;
  width:max-content!important;
  min-width:0!important;
  max-width:none!important;
  padding:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  z-index:100!important;
}
.qm-pet>.pet-label b{
  display:table!important;
  width:auto!important;
  max-width:none!important;
  margin:0 auto 2px!important;
  padding:3px 8px!important;
  overflow:visible!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
  color:#fff7d6!important;
  background:rgba(5,7,9,.9)!important;
  border:1px solid rgba(255,255,255,.4)!important;
  border-radius:3px!important;
  font:900 10px/1 Arial,sans-serif!important;
  letter-spacing:.25px!important;
  text-shadow:0 1px 2px #000!important;
  box-shadow:0 2px 5px #000b!important;
}
.qm-pet>.pet-label small{
  display:table!important;
  width:auto!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:3px 9px!important;
  overflow:visible!important;
  white-space:nowrap!important;
  text-overflow:clip!important;
  border-radius:3px!important;
  font:900 7px/1 Arial,sans-serif!important;
  letter-spacing:.35px!important;
  text-transform:uppercase!important;
  color:#fff!important;
  text-shadow:0 1px 2px #000!important;
  box-shadow:0 2px 6px #000c,inset 0 1px rgba(255,255,255,.2)!important;
}
.qm-pet.team-left>.pet-label small{
  color:#ffd9dc!important;
  background:linear-gradient(#c32e43,#751423)!important;
  border:1px solid #ff7886!important;
}
.qm-pet.team-right>.pet-label small{
  color:#dfffe5!important;
  background:linear-gradient(#248342,#0f4d27)!important;
  border:1px solid #65d985!important;
}
.qm-pet.is-leftward>.pet-label{
  transform:translateX(-50%) scaleX(-1)!important;
}

/* Live event-driven Quidditch commentary */
.qm-commentary{
  position:absolute;left:2.2%;bottom:3%;z-index:72;width:min(470px,44vw);max-height:150px;
  padding:9px 11px 10px;border-left:4px solid #e0b72f;border-top:1px solid #51627288;
  background:linear-gradient(90deg,rgba(3,12,20,.90),rgba(3,12,20,.68));
  box-shadow:0 8px 26px #000a;color:#eaf1f5;font-family:Arial,sans-serif;pointer-events:none;
  backdrop-filter:blur(2px)
}
.qm-commentary header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;color:#f0c93d;font:900 10px/1 Arial,sans-serif;letter-spacing:1.8px;text-transform:uppercase}
.qm-commentary header span:last-child{color:#9eafba;font-size:8px;letter-spacing:1px}
.qm-commentary-log{display:flex;flex-direction:column;gap:4px;overflow:hidden}
.qm-commentary-line{display:grid;grid-template-columns:42px 1fr;gap:8px;align-items:start;font:700 11px/1.25 Arial,sans-serif;text-shadow:0 1px 2px #000}
.qm-commentary-line time{color:#f0c93d;font:900 9px/1.35 monospace}
.qm-commentary-line.is-goal b{color:#ffd74f}.qm-commentary-line.is-shot b{color:#fff}.qm-commentary-line.is-steal b{color:#8ed3ff}.qm-commentary-line.is-rebound b{color:#ffbd83}
.qm-commentary-line:first-child{opacity:1}.qm-commentary-line:nth-child(2){opacity:.86}.qm-commentary-line:nth-child(3){opacity:.70}.qm-commentary-line:nth-child(4){opacity:.54}
.qm-commentary-pop{animation:qmCommentaryPop .28s ease-out}
@keyframes qmCommentaryPop{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(max-width:760px){.qm-commentary{left:1.5%;bottom:2%;width:62vw;max-height:92px;padding:5px 7px}.qm-commentary header{font-size:6px;margin-bottom:3px}.qm-commentary-line{grid-template-columns:28px 1fr;gap:4px;font-size:6px}.qm-commentary-line time{font-size:5px}}

/* Shared Quidditch broadcast commentary frame */
.qm-commentary{
  left:2.1%!important;bottom:2.1%!important;width:min(470px,46vw)!important;height:176px!important;
  padding:38px 46px 34px!important;background:url('assets/commentary-frame.png') center/100% 100% no-repeat!important;
  border:0!important;box-shadow:none!important;backdrop-filter:none!important;overflow:hidden!important;
}
.qm-commentary-log{height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:5px;overflow:hidden}
.qm-commentary-line{grid-template-columns:40px 1fr!important;gap:8px!important;font:700 11px/1.25 Georgia,serif!important;color:#f7e7bd;text-shadow:0 1px 2px #000}
.qm-commentary-line time{color:#e4b54d!important;font:900 9px/1.35 monospace!important}
@media(max-width:760px){.qm-commentary{width:61vw!important;height:112px!important;padding:24px 29px 21px!important}.qm-commentary-line{font-size:7px!important;grid-template-columns:25px 1fr!important}.qm-commentary-line time{font-size:6px!important}}

/* Commentary frame visibility fix: newest line stays fully visible at the top. */
.qm-commentary{
  padding:34px 43px 29px!important;
}
.qm-commentary-log{
  justify-content:flex-start!important;
  align-content:flex-start!important;
  overflow:hidden!important;
  padding-top:1px!important;
}
.qm-commentary-line{
  flex:0 0 auto!important;
  min-height:0!important;
  line-height:1.22!important;
}
@media(max-width:760px){
  .qm-commentary{padding:22px 27px 18px!important}
  .qm-commentary-log{padding-top:0!important}
}

/* Smooth fullscreen Quidditch rendering: JS owns the 60fps interpolation. */
#quidditchModePitch .qm-pet{
  transition:none!important;
  will-change:left,top,transform;
  backface-visibility:hidden;
  -webkit-font-smoothing:antialiased;
}

/* Quidditch Mode all-time broadcast leaderboards */
.quidditch-mode-layout{display:flex;align-items:center;justify-content:center;gap:14px;width:min(99vw,1780px);max-height:98vh}
.quidditch-mode-layout .quidditch-mode-tv{width:min(78vw,1390px);flex:0 1 auto}
.qm-career-panel{width:min(19vw,310px);height:min(88vh,760px);flex:0 0 auto;display:grid;grid-template-rows:auto repeat(3,minmax(0,1fr)) auto;gap:8px;padding:12px 11px;background:linear-gradient(180deg,#15110d 0%,#090806 100%);border:3px ridge #8e6c37;box-shadow:0 16px 34px #000c,inset 0 0 0 2px #2b2115;color:#ead39a;font-family:Georgia,serif;overflow:hidden}
.qm-career-panel header{text-align:center;border-bottom:1px solid #755728;padding-bottom:8px}.qm-career-panel header span{display:block;font:700 8px/1.1 monospace;letter-spacing:2px;color:#d9ae52}.qm-career-panel header b{display:block;margin-top:3px;font-size:17px;letter-spacing:1px;color:#fff0bc}.qm-career-panel header small{display:block;margin-top:2px;font-size:8px;color:#9d8a66}
.qm-career-panel section{min-height:0;padding:7px 7px 5px;background:linear-gradient(180deg,#231a11cc,#100d09e6);border:1px solid #5e4526;box-shadow:inset 0 0 12px #0008;overflow:hidden}.qm-career-panel h3{margin:0 0 5px;padding-bottom:4px;border-bottom:1px solid #644b29;color:#e5bd60;font:700 10px/1.1 Georgia,serif;letter-spacing:1px;text-align:center}
.qm-career-list{display:grid;gap:2px}.qm-career-list p{margin:12px 0;color:#786d5b;font-size:9px;text-align:center}.qm-career-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:5px;min-height:25px;padding:3px 4px;border-bottom:1px solid #3d3122;color:#e7d4aa}.qm-career-row:last-child{border-bottom:0}.qm-career-rank{color:#d7a93e;font:700 10px/1 monospace;text-align:center}.qm-career-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700}.qm-career-name small{display:block;overflow:hidden;text-overflow:ellipsis;color:#8f8067;font:7px/1.1 sans-serif}.qm-career-value{text-align:right;color:#fff1b4;font:700 11px/1 Georgia,serif}.qm-career-value small{display:block;color:#9c8b6c;font:7px/1.1 sans-serif;font-weight:400}
.qm-career-panel footer{text-align:center;color:#786b55;font:7px/1.2 sans-serif;letter-spacing:.3px}
@media(max-width:1150px){.quidditch-mode-layout{gap:7px}.quidditch-mode-layout .quidditch-mode-tv{width:76vw}.qm-career-panel{width:21vw;padding:8px 6px}.qm-career-panel header b{font-size:13px}.qm-career-name{font-size:8px}.qm-career-value{font-size:9px}}
@media(max-width:820px){.quidditch-mode-layout{display:block;width:98vw;overflow:auto;max-height:98vh}.quidditch-mode-layout .quidditch-mode-tv{width:98vw}.qm-career-panel{width:98vw;height:auto;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto auto;margin-top:8px}.qm-career-panel header,.qm-career-panel footer{grid-column:1/-1}.qm-career-panel section{min-height:150px}}

/* Broadcast sidebar refinement: records and commentary sit beside, never over, the TV. */
.quidditch-mode-layout{
  align-items:center!important;
  gap:8px!important;
  width:min(99vw,1760px)!important;
  padding:0!important;
}
.quidditch-mode-layout .quidditch-mode-tv{
  width:min(80vw,1400px)!important;
  flex:1 1 auto!important;
}
.qm-broadcast-sidebar{
  width:min(18.5vw,300px);
  max-height:94vh;
  flex:0 0 auto;
  display:grid;
  grid-template-rows:minmax(0,1fr) 190px;
  gap:8px;
  align-self:center;
}
.qm-broadcast-sidebar .qm-career-panel{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  box-sizing:border-box;
  padding:10px 9px!important;
  gap:6px!important;
  border:2px solid #9b7536!important;
  outline:1px solid #281b0d;
  background:
    linear-gradient(180deg,rgba(46,31,17,.98),rgba(10,8,6,.99)),
    repeating-linear-gradient(90deg,transparent 0 31px,rgba(255,255,255,.018) 32px)!important;
  box-shadow:0 12px 30px #000c,inset 0 0 0 2px #4a351c,inset 0 0 22px #000a!important;
}
.qm-broadcast-sidebar .qm-career-panel header{
  padding:3px 4px 8px!important;
  border-bottom:2px solid #715125!important;
}
.qm-broadcast-sidebar .qm-career-panel header b{font-size:15px!important}
.qm-broadcast-sidebar .qm-career-panel section{
  padding:6px!important;
  border:1px solid #634922!important;
  background:linear-gradient(180deg,#251a10f2,#100c08f7)!important;
}
.qm-broadcast-sidebar .qm-career-panel h3{font-size:9px!important;margin-bottom:4px!important}
.qm-broadcast-sidebar .qm-career-row{min-height:22px!important;padding:2px 3px!important}
.qm-broadcast-sidebar .qm-career-name{font-size:9px!important}
.qm-broadcast-sidebar .qm-career-value{font-size:10px!important}

.qm-broadcast-sidebar .qm-commentary{
  position:relative!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  width:100%!important;height:190px!important;max-height:none!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:38px 34px 27px!important;
  z-index:1!important;
  pointer-events:none!important;
  filter:drop-shadow(0 10px 20px #000b);
}
.qm-commentary-title{
  position:absolute;left:34px;right:34px;top:24px;
  display:flex;align-items:center;justify-content:space-between;
  padding-bottom:4px;border-bottom:1px solid #74532a;
  color:#d8aa4f;font:700 7px/1 monospace;letter-spacing:1.4px;
}
.qm-commentary-title b{color:#f8e0a3;font-size:8px;letter-spacing:1px}
.qm-broadcast-sidebar .qm-commentary-log{
  height:100%!important;
  padding-top:4px!important;
  gap:4px!important;
  justify-content:flex-start!important;
}
.qm-broadcast-sidebar .qm-commentary-line{
  grid-template-columns:31px minmax(0,1fr)!important;
  gap:6px!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.qm-broadcast-sidebar .qm-commentary-line time{font-size:7px!important}

/* Pregame and full-time presentations remain clipped to the TV pitch only. */
.quidditch-mode-tv .qm-lineup,
.quidditch-mode-tv .qm-full-time-stats,
.quidditch-mode-tv .qm-goal-text.qm-full-time{
  max-width:none!important;
}

@media(max-width:1150px){
  .quidditch-mode-layout .quidditch-mode-tv{width:77vw!important}
  .qm-broadcast-sidebar{width:21vw;grid-template-rows:minmax(0,1fr) 158px;gap:5px}
  .qm-broadcast-sidebar .qm-commentary{height:158px!important;padding:31px 25px 22px!important}
  .qm-commentary-title{left:25px;right:25px;top:19px}
  .qm-broadcast-sidebar .qm-commentary-line{font-size:7px!important;grid-template-columns:25px minmax(0,1fr)!important}
}
@media(max-width:820px){
  .quidditch-mode-layout{display:block!important;width:98vw!important;max-height:98vh!important;overflow:auto!important}
  .quidditch-mode-layout .quidditch-mode-tv{width:98vw!important}
  .qm-broadcast-sidebar{width:98vw;max-height:none;grid-template-rows:auto 155px;gap:6px;margin-top:6px}
  .qm-broadcast-sidebar .qm-career-panel{grid-template-columns:repeat(3,1fr)!important;grid-template-rows:auto auto auto!important}
  .qm-broadcast-sidebar .qm-career-panel header,.qm-broadcast-sidebar .qm-career-panel footer{grid-column:1/-1}
  .qm-broadcast-sidebar .qm-career-panel section{min-height:135px!important}
  .qm-broadcast-sidebar .qm-commentary{height:155px!important;width:100%!important}
}

/* Repo Sports commentator studio — left of TV */
.quidditch-mode-layout{display:grid!important;grid-template-columns:minmax(240px,18vw) minmax(0,1fr) minmax(240px,18vw)!important;align-items:center!important;gap:8px!important;width:min(99vw,1900px)!important}
.quidditch-mode-layout .quidditch-mode-tv{width:100%!important;min-width:0!important}
.qm-commentator-sidebar{width:100%;max-height:94vh;display:grid;grid-template-rows:minmax(240px,38vh) 190px;gap:8px;align-self:center}
.qm-commentator-studio{position:relative;overflow:hidden;border:3px solid #9b7536;outline:1px solid #281b0d;background:#111 url('assets/quidditch-commentator-backdrop.png') center/cover no-repeat;box-shadow:0 12px 30px #000c,inset 0 0 0 2px #4a351c;min-height:0}
.qm-commentator-studio:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,3,2,.25) 70%,rgba(4,3,2,.72));pointer-events:none}
.qm-commentator-studio img{position:absolute;z-index:2;left:50%;bottom:44px;width:min(94%,360px);max-height:88%;object-fit:contain;object-position:center bottom;transform:translateX(-50%);image-rendering:pixelated;filter:drop-shadow(0 6px 4px #0009)}
.qm-commentator-live{position:absolute;z-index:4;left:10px;top:9px;padding:4px 7px;background:#8f1212;border:2px solid #e8c777;color:#fff;font:900 9px/1 monospace;letter-spacing:1px;box-shadow:0 2px 6px #000b}.qm-commentator-live i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff3c32;margin-right:5px;box-shadow:0 0 7px #f33}
.qm-commentator-desk{position:absolute;z-index:3;left:0;right:0;bottom:0;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#4b2d18,#25160c);border-top:3px ridge #a77d3f;box-shadow:0 -6px 14px #0008;color:#eac878;text-shadow:0 2px 2px #000}.qm-commentator-desk span{font:900 12px/1 Georgia,serif;letter-spacing:2px}.qm-commentator-desk b{margin-top:4px;font:700 7px/1 monospace;letter-spacing:1.3px;color:#fff0bd}
.qm-commentator-sidebar .qm-commentary{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;height:190px!important;box-sizing:border-box!important;margin:0!important;padding:38px 34px 27px!important;filter:drop-shadow(0 10px 20px #000b)}
.qm-commentator-sidebar .qm-commentary-log{height:100%!important;padding-top:4px!important;gap:4px!important;justify-content:flex-start!important}.qm-commentator-sidebar .qm-commentary-line{grid-template-columns:31px minmax(0,1fr)!important;gap:6px!important;font-size:9px!important;line-height:1.2!important}.qm-commentator-sidebar .qm-commentary-line time{font-size:7px!important}
.qm-commentator-studio.is-speaking img{animation:qmCommentatorTalk .18s steps(1,end) infinite}.qm-commentator-studio.is-goal img{animation:qmCommentatorGoal .35s ease-in-out infinite alternate}
@keyframes qmCommentatorTalk{0%,49%{transform:translateX(-50%) translateY(0)}50%,100%{transform:translateX(-50%) translateY(-1px)}}
@keyframes qmCommentatorGoal{from{transform:translateX(-50%) translateY(0) rotate(-1deg)}to{transform:translateX(-50%) translateY(-8px) rotate(1deg)}}
@media(max-width:1150px){.quidditch-mode-layout{grid-template-columns:20vw minmax(0,1fr) 20vw!important}.qm-commentator-sidebar{grid-template-rows:minmax(210px,34vh) 158px}.qm-commentator-sidebar .qm-commentary{height:158px!important;padding:31px 25px 22px!important}}
@media(max-width:820px){.quidditch-mode-layout{display:block!important;overflow:auto!important}.qm-commentator-sidebar,.qm-broadcast-sidebar{width:98vw!important;margin:6px auto!important}.qm-commentator-sidebar{grid-template-columns:1fr;grid-template-rows:280px 155px}.qm-commentator-sidebar .qm-commentary{height:155px!important}.qm-commentator-studio img{width:min(78%,330px)}}

/* 2026-08-01: Correct Quidditch broadcast composition.
   Left: compact commentator + commentary. Centre: main television. Right: records. */
.quidditch-mode-layout{
  display:grid!important;
  grid-template-areas:"commentator television records"!important;
  grid-template-columns:minmax(210px,15vw) minmax(680px,1fr) minmax(210px,15vw)!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  width:min(99vw,1920px)!important;
  max-width:1920px!important;
  margin:0 auto!important;
}
.quidditch-mode-layout > .quidditch-mode-tv{
  grid-area:television!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  z-index:2!important;
}
.quidditch-mode-layout > .qm-commentator-sidebar{
  grid-area:commentator!important;
  width:100%!important;
  min-width:0!important;
  max-height:92vh!important;
  display:grid!important;
  grid-template-rows:minmax(180px,28vh) 170px!important;
  gap:7px!important;
  align-self:center!important;
  z-index:1!important;
}
.quidditch-mode-layout > .qm-broadcast-sidebar{
  grid-area:records!important;
  width:100%!important;
  min-width:0!important;
  max-height:92vh!important;
  align-self:center!important;
  z-index:1!important;
}
.qm-commentator-studio{
  min-height:180px!important;
  aspect-ratio:1/1!important;
  max-height:330px!important;
}
.qm-commentator-studio img{
  width:min(92%,255px)!important;
  max-height:86%!important;
  bottom:40px!important;
}
.qm-commentator-desk{height:48px!important}
.qm-commentator-desk span{font-size:10px!important}
.qm-commentator-desk b{font-size:6px!important}

/* Keep commentary entirely inside the supplied frame. */
.qm-commentator-sidebar .qm-commentary{
  width:100%!important;
  height:170px!important;
  min-width:0!important;
  overflow:hidden!important;
  padding:34px 28px 23px!important;
  box-sizing:border-box!important;
}
.qm-commentator-sidebar .qm-commentary-title{
  left:28px!important;
  right:28px!important;
  top:20px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
}
.qm-commentator-sidebar .qm-commentary-log{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  gap:3px!important;
  padding:0!important;
}
.qm-commentator-sidebar .qm-commentary-line{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  gap:5px!important;
  font-size:8px!important;
  line-height:1.18!important;
  overflow:hidden!important;
}
.qm-commentator-sidebar .qm-commentary-line time{
  font-size:6px!important;
  white-space:nowrap!important;
}
.qm-commentator-sidebar .qm-commentary-line b{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow-wrap:anywhere!important;
}

/* Lineup and result overlays remain bounded by the central television. */
.quidditch-mode-tv{position:relative!important;overflow:hidden!important}
.quidditch-mode-tv .qm-lineup,
.quidditch-mode-tv .qm-full-time-stats,
.quidditch-mode-tv .qm-goal-text.qm-full-time{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

@media(max-width:1400px){
  .quidditch-mode-layout{
    grid-template-columns:minmax(185px,16vw) minmax(600px,1fr) minmax(185px,16vw)!important;
    gap:7px!important;
  }
  .quidditch-mode-layout > .qm-commentator-sidebar{grid-template-rows:minmax(165px,25vh) 150px!important}
  .qm-commentator-sidebar .qm-commentary{height:150px!important;padding:30px 23px 19px!important}
  .qm-commentator-sidebar .qm-commentary-title{left:23px!important;right:23px!important;top:17px!important}
  .qm-commentator-sidebar .qm-commentary-line{font-size:7px!important;grid-template-columns:24px minmax(0,1fr)!important}
}
@media(max-width:980px){
  .quidditch-mode-layout{
    display:grid!important;
    grid-template-areas:"television" "commentator" "records"!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:98vw!important;
    max-height:98vh!important;
    overflow:auto!important;
  }
  .quidditch-mode-layout > .quidditch-mode-tv,
  .quidditch-mode-layout > .qm-commentator-sidebar,
  .quidditch-mode-layout > .qm-broadcast-sidebar{width:100%!important}
  .quidditch-mode-layout > .qm-commentator-sidebar{
    grid-template-columns:minmax(220px,34%) minmax(0,1fr)!important;
    grid-template-rows:220px!important;
  }
  .qm-commentator-sidebar .qm-commentary{height:220px!important}
}

/* 2026-08-01: Final broadcast layout polish */
.quidditch-mode-layout{
  grid-template-columns:minmax(230px,16.5vw) minmax(700px,1fr) minmax(230px,16.5vw)!important;
  gap:14px!important;
  padding:12px!important;
  box-sizing:border-box!important;
}
.quidditch-mode-layout > .quidditch-mode-tv{
  align-self:center!important;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.58))!important;
}
.quidditch-mode-layout > .qm-commentator-sidebar,
.quidditch-mode-layout > .qm-broadcast-sidebar{
  align-self:center!important;
  min-height:0!important;
}
.quidditch-mode-layout > .qm-commentator-sidebar{
  grid-template-rows:minmax(220px,30vh) 205px!important;
  gap:10px!important;
}
.qm-commentator-studio,
.qm-broadcast-sidebar .qm-career-panel{
  border-radius:3px!important;
  box-shadow:0 12px 26px rgba(0,0,0,.62),inset 0 0 0 2px rgba(61,43,24,.9)!important;
}
.qm-commentator-studio{
  min-height:220px!important;
  max-height:360px!important;
}
.qm-commentator-studio img{
  width:min(92%,285px)!important;
  bottom:44px!important;
}
.qm-commentator-sidebar .qm-commentary{
  height:205px!important;
  padding:39px 30px 25px!important;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.6))!important;
}
.qm-commentator-sidebar .qm-commentary-title{
  left:30px!important;
  right:30px!important;
  top:21px!important;
}
.qm-commentator-sidebar .qm-commentary-log{
  gap:5px!important;
}
.qm-commentator-sidebar .qm-commentary-line{
  grid-template-columns:31px minmax(0,1fr)!important;
  gap:7px!important;
  font-size:9px!important;
  line-height:1.25!important;
}
.qm-commentator-sidebar .qm-commentary-line time{
  font-size:7px!important;
}
.qm-broadcast-sidebar{
  padding:0!important;
}
.qm-broadcast-sidebar .qm-career-panel{
  width:100%!important;
  height:min(82vh,720px)!important;
  padding:14px 12px!important;
  gap:10px!important;
  background:linear-gradient(180deg,#1b1510 0%,#0a0806 100%)!important;
}
.qm-broadcast-sidebar .qm-career-panel header{
  padding:2px 2px 10px!important;
}
.qm-broadcast-sidebar .qm-career-panel header b{
  font-size:16px!important;
  letter-spacing:1.4px!important;
}
.qm-broadcast-sidebar .qm-career-panel section{
  padding:9px 8px 7px!important;
  border-color:#6f522d!important;
  background:linear-gradient(180deg,rgba(44,31,19,.96),rgba(16,12,8,.96))!important;
}
.qm-broadcast-sidebar .qm-career-panel h3{
  font-size:10px!important;
  padding-bottom:6px!important;
}
.qm-broadcast-sidebar .qm-career-row{
  min-height:26px!important;
  padding:4px 4px!important;
}
.qm-broadcast-sidebar .qm-career-name{font-size:10px!important}
.qm-broadcast-sidebar .qm-career-value{font-size:11px!important}

@media(max-width:1400px){
  .quidditch-mode-layout{
    grid-template-columns:minmax(205px,17vw) minmax(610px,1fr) minmax(205px,17vw)!important;
    gap:10px!important;
    padding:8px!important;
  }
  .quidditch-mode-layout > .qm-commentator-sidebar{grid-template-rows:minmax(185px,27vh) 180px!important}
  .qm-commentator-sidebar .qm-commentary{height:180px!important;padding:35px 25px 22px!important}
  .qm-commentator-sidebar .qm-commentary-title{left:25px!important;right:25px!important;top:19px!important}
  .qm-commentator-sidebar .qm-commentary-line{font-size:8px!important;grid-template-columns:27px minmax(0,1fr)!important}
  .qm-broadcast-sidebar .qm-career-panel{height:min(80vh,650px)!important;padding:10px 8px!important;gap:7px!important}
}


/* 2026-08-01: final Quidditch broadcast arrangement and MMORPG records board. */
.quidditch-mode-layout{
  grid-template-areas:"records television commentator"!important;
  grid-template-columns:minmax(218px,15.5vw) minmax(680px,1fr) minmax(245px,17.5vw)!important;
  gap:7px!important;
  align-items:start!important;
}
.quidditch-mode-layout>.qm-broadcast-sidebar{grid-area:records!important;align-self:start!important;margin-top:0!important}
.quidditch-mode-layout>.quidditch-mode-tv{grid-area:television!important;align-self:start!important}
.quidditch-mode-layout>.qm-commentator-sidebar{grid-area:commentator!important;align-self:start!important;grid-template-rows:minmax(255px,38vh) 220px!important;gap:6px!important;margin-top:0!important}
.qm-commentator-sidebar .qm-commentary{height:220px!important;padding:39px 29px 27px!important}
.qm-commentator-sidebar .qm-commentary-line{font-size:9px!important;line-height:1.22!important;grid-template-columns:28px minmax(0,1fr)!important}
.qm-commentator-sidebar .qm-commentary-log{gap:5px!important}

/* MMORPG Quidditch records tome */
.qm-broadcast-sidebar .qm-career-panel{
  position:relative!important;border:3px ridge #ad833f!important;outline:2px solid #1a1007!important;border-radius:4px!important;
  background:linear-gradient(180deg,#302313 0%,#151008 44%,#090705 100%)!important;
  box-shadow:0 14px 34px #000d,inset 0 0 0 2px #5f4422,inset 0 0 32px #000c!important;
  padding:11px 9px 9px!important;gap:7px!important;
}
.qm-broadcast-sidebar .qm-career-panel:before{content:"⚜";display:grid;place-items:center;width:34px;height:34px;margin:-2px auto 5px;border-radius:50%;border:2px solid #d0a04a;background:#241609;color:#f0c96d;font-size:18px;box-shadow:0 3px 0 #000,inset 0 0 10px #0008}
.qm-broadcast-sidebar .qm-career-panel header{padding:0 4px 9px!important;border-bottom:2px solid #9b7132!important}
.qm-broadcast-sidebar .qm-career-panel header span{color:#c7933f!important;letter-spacing:2.5px!important}
.qm-broadcast-sidebar .qm-career-panel header b{font-size:16px!important;color:#ffe18f!important;text-shadow:0 2px #000!important}
.qm-broadcast-sidebar .qm-career-panel section{position:relative!important;padding:7px 6px!important;border:2px ridge #6f5128!important;background:linear-gradient(180deg,#2a1d10,#100b07)!important;box-shadow:inset 0 0 14px #000a!important}
.qm-broadcast-sidebar .qm-career-panel h3{margin:-1px -1px 6px!important;padding:5px!important;background:#161009!important;border-bottom:1px solid #8a632d!important;color:#f2cb70!important;font-size:9px!important;letter-spacing:1.2px!important}
.qm-career-row{grid-template-columns:22px minmax(0,1fr) auto!important;min-height:25px!important;border-bottom:1px dotted #644923!important}
.qm-career-rank{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#2e1d0c;border:1px solid #ba8736;color:#ffd777!important}
.qm-career-name{color:#f3dfaf!important}.qm-career-name small{color:#a38c68!important}.qm-career-value{color:#ffd36d!important}
.qm-career-panel footer{padding-top:2px!important;color:#8c7755!important}

.qm-prediction>div{grid-template-columns:1fr 1fr!important}
.qm-prediction-split span[data-prediction="draw"],.qm-prediction-split .is-draw{display:none!important}
@media(max-width:1150px){.quidditch-mode-layout{grid-template-columns:20vw minmax(0,1fr) 21vw!important}.quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:minmax(220px,34vh) 180px!important}.qm-commentator-sidebar .qm-commentary{height:180px!important}}
@media(max-width:820px){.quidditch-mode-layout{display:block!important}.qm-broadcast-sidebar,.qm-commentator-sidebar{width:98vw!important;margin:6px auto!important}.qm-commentator-sidebar{grid-template-rows:280px 190px!important}.qm-commentator-sidebar .qm-commentary{height:190px!important}}

/* Commentator tips and larger live commentary panel */
.quidditch-mode-layout>.qm-commentator-sidebar{
  grid-template-rows:minmax(255px,36vh) 38px 258px!important;
  gap:7px!important;
}
.qm-commentator-sidebar .qm-commentary{
  height:258px!important;
  min-height:258px!important;
  padding:41px 31px 29px!important;
}
.qm-commentator-sidebar .qm-commentary-title{left:31px!important;right:31px!important;top:21px!important}
.qm-commentator-sidebar .qm-commentary-log{gap:6px!important}
.qm-commentator-sidebar .qm-commentary-line{font-size:9px!important;line-height:1.28!important;grid-template-columns:29px minmax(0,1fr)!important}
.qm-throw-coin{
  width:100%!important;height:38px!important;min-height:38px!important;margin:0!important;padding:3px 12px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  border:2px ridge #ad833f!important;outline:1px solid #1b1007!important;border-radius:2px!important;
  background:linear-gradient(180deg,#563719 0%,#2b190c 52%,#171006 100%)!important;
  color:#ffe49b!important;box-shadow:0 5px 10px #0009,inset 0 0 0 1px #765027!important;
  cursor:pointer!important;transition:filter .12s ease,transform .12s ease!important;
}
.qm-throw-coin:hover:not(:disabled){filter:brightness(1.18)!important;transform:translateY(-1px)!important}
.qm-throw-coin:active:not(:disabled){transform:translateY(1px)!important}
.qm-throw-coin:disabled{opacity:.48!important;cursor:not-allowed!important;filter:grayscale(.4)!important}
.qm-throw-coin img{width:18px!important;height:14px!important;object-fit:contain!important;image-rendering:pixelated!important;filter:drop-shadow(1px 2px 0 #000)!important}
.qm-throw-coin span{display:flex;align-items:center}.qm-throw-coin b{font:900 10px/1 Georgia,serif;letter-spacing:1.5px}.qm-throw-coin.is-used{opacity:.55!important;filter:grayscale(.45)!important}.qm-throw-coin.is-used b{letter-spacing:.8px;font-size:8px}
.qm-commentator-studio.is-tipped{animation:qmTipStudioGlow .45s ease-in-out 3 alternate}
.qm-commentator-studio.is-tipped:before{content:"+200 GP";position:absolute;z-index:8;left:50%;top:17%;transform:translateX(-50%);padding:5px 9px;border:2px ridge #e4bd57;background:#211406;color:#ffe99a;font:900 11px/1 monospace;letter-spacing:1px;animation:qmTipFloat 2.1s ease-out forwards;white-space:nowrap;box-shadow:0 4px 10px #000b}
@keyframes qmTipStudioGlow{from{box-shadow:0 12px 26px #0009,inset 0 0 0 2px #3d2b18}to{box-shadow:0 12px 28px #0009,0 0 18px #ffd45d88,inset 0 0 18px #ffc94a55}}
@keyframes qmTipFloat{0%{opacity:0;transform:translate(-50%,12px)}15%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-25px)}}
@media(max-width:1400px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:minmax(220px,32vh) 36px 220px!important}
  .qm-commentator-sidebar .qm-commentary{height:220px!important;min-height:220px!important;padding:37px 27px 24px!important}
}
@media(max-width:820px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:280px 38px 230px!important}
  .qm-commentator-sidebar .qm-commentary{height:230px!important;min-height:230px!important}
}

/* 2026-08-01: larger centre television with proportionate side panels. */
.quidditch-mode-layout{
  width:min(99.5vw,2040px)!important;
  grid-template-columns:minmax(210px,14.5vw) minmax(900px,1fr) minmax(245px,17vw)!important;
  gap:9px!important;
  padding:7px!important;
}
.quidditch-mode-layout>.quidditch-mode-tv{
  width:100%!important;
  max-width:none!important;
  align-self:start!important;
}
.quidditch-mode-layout>.qm-broadcast-sidebar,
.quidditch-mode-layout>.qm-commentator-sidebar{
  align-self:start!important;
  margin-top:0!important;
}
.qm-broadcast-sidebar .qm-career-panel{height:min(84vh,735px)!important}
.quidditch-mode-layout>.qm-commentator-sidebar{
  grid-template-rows:minmax(250px,35vh) 38px 252px!important;
}
.qm-commentator-sidebar .qm-commentary{height:252px!important;min-height:252px!important}
@media(max-width:1500px){
  .quidditch-mode-layout{grid-template-columns:minmax(190px,14vw) minmax(720px,1fr) minmax(220px,17vw)!important;gap:7px!important}
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:minmax(220px,32vh) 36px 220px!important}
  .qm-commentator-sidebar .qm-commentary{height:220px!important;min-height:220px!important}
}
@media(max-width:1100px){
  .quidditch-mode-layout{grid-template-columns:19vw minmax(620px,1fr) 20vw!important}
}


/* Barry Bramble lifetime tip counter */
.quidditch-mode-layout>.qm-commentator-sidebar{
  grid-template-rows:minmax(245px,36vh) 40px 72px 252px!important;
  gap:8px!important;
}
.qm-total-tips{
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;
  min-height:64px;padding:9px 13px;box-sizing:border-box;
  background:linear-gradient(180deg,#2a1b0f,#120c08);
  border:2px ridge #a77836;box-shadow:inset 0 0 0 1px #3b2917,0 6px 14px #0008;
  color:#e7c878;text-shadow:0 2px 2px #000;font-family:Georgia,serif;
}
.qm-total-tips>span{font:900 10px/1 Georgia,serif;letter-spacing:1.6px;color:#f3d68f}
.qm-total-tips>strong{grid-row:1/3;grid-column:2;display:flex;align-items:center;gap:6px;color:#fff1b9;font:900 18px/1 Georgia,serif;white-space:nowrap}
.qm-total-tips>strong img{width:22px;height:17px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(1px 2px 0 #000)}
.qm-total-tips>small{font:700 7px/1.2 monospace;color:#9f8b65;letter-spacing:.5px}
.qm-commentator-desk span{font-size:9px!important;letter-spacing:1.1px!important;text-align:center!important}
.qm-commentary-title span{max-width:72%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1150px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:minmax(215px,32vh) 38px 62px 220px!important}
  .qm-total-tips{min-height:58px;padding:7px 10px}.qm-total-tips>strong{font-size:15px}
}
@media(max-width:820px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:280px 38px 66px 230px!important}
}

/* Final Barry Bramble sidebar spacing fix */
.quidditch-mode-layout>.qm-commentator-sidebar{
  grid-template-rows:auto 40px 64px 278px!important;
  align-content:start!important;
  gap:7px!important;
}
.qm-commentator-sidebar .qm-commentator-studio{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:1/1!important;
}
.qm-commentator-sidebar .qm-throw-coin{margin:0!important;min-height:40px!important}
.qm-commentator-sidebar .qm-total-tips{margin:0!important;min-height:64px!important}
.qm-commentator-sidebar .qm-commentary{
  margin:0!important;
  height:278px!important;
  min-height:278px!important;
}
@media(max-width:1500px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:auto 38px 58px 242px!important}
  .qm-commentator-sidebar .qm-commentary{height:242px!important;min-height:242px!important}
}
@media(max-width:820px){
  .quidditch-mode-layout>.qm-commentator-sidebar{grid-template-rows:auto 40px 64px 240px!important}
  .qm-commentator-sidebar .qm-commentary{height:240px!important;min-height:240px!important}
}

/* Barry Bramble community tip milestone */
.qm-commentator-toprow{
  display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:6px;align-items:stretch;min-width:0;
}
.qm-commentator-toprow .qm-commentator-studio{width:100%;height:auto!important;aspect-ratio:1/1;min-width:0}
.qm-tip-goal{
  position:relative;display:grid;grid-template-rows:auto minmax(110px,1fr) auto auto;gap:5px;
  min-width:0;padding:7px 5px 6px;box-sizing:border-box;overflow:hidden;
  background:linear-gradient(180deg,#21160d,#0d0906);border:2px ridge #a77337;
  box-shadow:inset 0 0 0 1px #4f3419,0 6px 15px #0009;color:#efd17f;text-align:center;font-family:Georgia,serif;
}
.qm-tip-goal header{display:grid;gap:2px;padding-bottom:5px;border-bottom:1px solid #6f4c24}
.qm-tip-goal header b{font:900 7px/1 Georgia,serif;letter-spacing:.8px;color:#f3d68f}
.qm-tip-goal header span{font:900 14px/1 Georgia,serif;color:#ffd75e;text-shadow:0 2px #000}
.qm-tip-goal-track{
  position:relative;align-self:stretch;min-height:120px;overflow:hidden;border:2px inset #765427;
  background:linear-gradient(90deg,#080603,#1a1007 50%,#080603);box-shadow:inset 0 0 14px #000;
}
.qm-tip-goal-fill{
  position:absolute;left:0;right:0;bottom:0;height:0%;transition:height 1.4s cubic-bezier(.22,.8,.24,1);
  background:linear-gradient(180deg,#f7d75b,#b87812 45%,#754407);opacity:.3;
  box-shadow:0 -4px 12px #f6cb4d66;
}
.qm-tip-goal-coins{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.qm-tip-goal-coins i{
  position:absolute;width:18px;height:13px;background:url('assets/commentator-coin.png') center/contain no-repeat;
  transform:rotate(var(--coin-r,0deg));filter:drop-shadow(1px 2px 0 #000);animation:qmTipCoinShimmer 2.8s ease-in-out infinite alternate;
}
@keyframes qmTipCoinShimmer{from{filter:drop-shadow(1px 2px 0 #000) brightness(.9)}to{filter:drop-shadow(1px 2px 0 #000) brightness(1.3)}}
.qm-tip-goal-track strong{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;padding:4px 3px;
  background:#100b07d9;border:1px solid #7d5929;color:#fff0a9;font:900 10px/1 Georgia,serif;text-shadow:0 1px #000;
}
.qm-tip-goal>img{width:54px;max-width:100%;height:35px;object-fit:contain;margin:auto;image-rendering:pixelated;filter:drop-shadow(1px 2px 0 #000)}
.qm-tip-goal>small{display:block;min-height:20px;color:#bca474;font:700 6px/1.15 monospace;overflow-wrap:anywhere}
.qm-tip-goal.is-unlocked{border-color:#e8c557;box-shadow:0 0 18px #e8c55766,inset 0 0 0 1px #76551f}
.qm-tip-goal.is-unlocked .qm-tip-goal-track strong{color:#fff7b4;border-color:#dfbd4f}
.qm-tip-goal.is-unlocked>img{animation:qmBoaterUnlocked 1.4s ease-in-out infinite alternate}
@keyframes qmBoaterUnlocked{from{transform:translateY(0) rotate(-1deg)}to{transform:translateY(-3px) rotate(1deg)}}
.pet-barrys-boater{z-index:8!important;filter:drop-shadow(1px 2px 1px #0009)}
@media(max-width:1500px){.qm-commentator-toprow{grid-template-columns:minmax(0,1fr) 62px}.qm-tip-goal{padding:5px 3px}.qm-tip-goal>img{width:46px}.qm-tip-goal header span{font-size:12px}}
@media(max-width:820px){.qm-commentator-toprow{grid-template-columns:minmax(0,1fr) 76px}.qm-tip-goal-track{min-height:150px}}

/* Barry Bramble 250K goal panel: centred, readable and reward-forward */
.qm-commentator-toprow{
  grid-template-columns:minmax(0,1fr) 112px!important;
  gap:8px!important;
  align-items:stretch!important;
}
.qm-tip-goal{
  width:112px!important;
  min-width:112px!important;
  padding:9px 8px 8px!important;
  grid-template-rows:auto minmax(155px,1fr) 78px auto!important;
  gap:7px!important;
  justify-items:center!important;
  text-align:center!important;
  overflow:visible!important;
}
.qm-tip-goal header{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  padding:0 0 7px!important;
}
.qm-tip-goal header b{font-size:7px!important;line-height:1.15!important;letter-spacing:.7px!important;text-align:center!important;white-space:normal!important}
.qm-tip-goal header span{font-size:19px!important;line-height:1!important;text-align:center!important}
.qm-tip-goal-track{
  width:64px!important;
  min-height:155px!important;
  margin:0 auto!important;
  justify-self:center!important;
}
.qm-tip-goal-track strong{
  min-width:42px!important;
  padding:5px 4px!important;
  font-size:11px!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.qm-tip-goal>img{
  width:94px!important;
  height:72px!important;
  max-width:none!important;
  margin:0 auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 0 8px #e2b54666) drop-shadow(2px 3px 0 #000)!important;
  transform:scale(1.05)!important;
}
.qm-tip-goal>small{
  width:100%!important;
  min-height:46px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  padding:6px 4px!important;
  box-sizing:border-box!important;
  border:1px solid #7c5728!important;
  background:#120c07d9!important;
  color:#d9bd77!important;
  font:700 6px/1.2 monospace!important;
  text-align:center!important;
  overflow:visible!important;
}
.qm-tip-goal>small b{color:#ffd75e!important;font-size:7px!important;letter-spacing:.8px!important}
.qm-tip-goal>small span{color:#fff0b2!important;font:900 8px/1.15 Georgia,serif!important}
.qm-tip-goal>small em{font-style:normal!important;color:#a99163!important;font-size:5px!important}
.qm-tip-goal.is-unlocked>img{filter:drop-shadow(0 0 13px #ffd85caa) drop-shadow(2px 3px 0 #000)!important}
.qm-commentator-studio.is-tipped #qmCommentatorSprite{animation:none!important}
@media(max-width:1500px){
  .qm-commentator-toprow{grid-template-columns:minmax(0,1fr) 98px!important}
  .qm-tip-goal{width:98px!important;min-width:98px!important;padding:7px 5px!important;grid-template-rows:auto minmax(140px,1fr) 66px auto!important}
  .qm-tip-goal-track{width:58px!important;min-height:140px!important}
  .qm-tip-goal>img{width:82px!important;height:62px!important}
}
@media(max-width:820px){
  .qm-commentator-toprow{grid-template-columns:minmax(0,1fr) 104px!important}
  .qm-tip-goal{width:104px!important;min-width:104px!important}
}


/* Custom All-Time Records header artwork */
.qm-broadcast-sidebar .qm-career-panel .qm-career-art-header{
  width:100%!important;min-height:0!important;margin:0!important;padding:2px 0 8px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  border:0!important;border-bottom:2px solid #9b7132!important;background:transparent!important;
  overflow:visible!important;box-sizing:border-box!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-career-art-header img{
  display:block;width:100%!important;max-width:300px!important;height:auto!important;
  object-fit:contain!important;image-rendering:auto!important;filter:drop-shadow(0 4px 4px #000b)!important;
}
@media(max-width:1500px){.qm-broadcast-sidebar .qm-career-panel .qm-career-art-header img{max-width:245px!important}}
@media(max-width:820px){.qm-broadcast-sidebar .qm-career-panel .qm-career-art-header img{max-width:320px!important}}

/* Sudden-death winning goal pause before the full-time presentation. */
.qm-goal-text.qm-sudden-death-winner{top:43%;max-width:78%;padding:14px 24px;background:linear-gradient(180deg,#3d2108e8,#160b03f2);border:3px ridge #f0c85a;color:#fff2a6;text-align:center;font-size:22px;letter-spacing:1px;animation:qmSuddenWinner 4s ease both;z-index:90}
@keyframes qmSuddenWinner{0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}12%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-54%) scale(1.06)}}


/* Quidditch spectator Agility reward */
.qm-agility-watch{position:absolute;right:18px;bottom:18px;z-index:42;display:flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid rgba(225,185,91,.72);background:linear-gradient(180deg,rgba(31,22,12,.90),rgba(10,8,5,.92));box-shadow:0 3px 10px #000b,inset 0 0 0 1px rgba(255,223,145,.08);color:#f2d987;pointer-events:none;opacity:.82;transition:transform .2s ease,filter .2s ease,opacity .2s ease}
.qm-agility-watch img{width:25px;height:25px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 2px #000)}
.qm-agility-watch span{display:grid;line-height:1.05}.qm-agility-watch b{font:800 8px/1 monospace;letter-spacing:1px;color:#ffe8a1}.qm-agility-watch small{margin-top:2px;font:700 7px/1 monospace;color:#bfa96f;white-space:nowrap}
.qm-agility-watch.is-earned{opacity:1;transform:scale(1.08);filter:brightness(1.45);box-shadow:0 0 18px #efd45d99,inset 0 0 0 1px #ffe6a2}
.qm-agility-xp-drop{position:absolute;right:26px;top:92px;z-index:75;display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #d9b14d;background:rgba(16,12,6,.93);box-shadow:0 5px 16px #000c;color:#fff0a7;opacity:0;transform:translateY(8px) scale(.92);pointer-events:none}
.qm-agility-xp-drop img{width:28px;height:28px;image-rendering:pixelated}.qm-agility-xp-drop b{font:900 18px/1 Georgia,serif;color:#fff2a3;text-shadow:0 2px #000}.qm-agility-xp-drop span{font:800 7px/1 monospace;letter-spacing:1px;color:#cfb76f}
.qm-agility-xp-drop.is-visible{animation:qmAgilityXpFloat 2.8s ease-out forwards}
@keyframes qmAgilityXpFloat{0%{opacity:0;transform:translateY(12px) scale(.9)}12%{opacity:1;transform:translateY(0) scale(1)}72%{opacity:1;transform:translateY(-18px) scale(1)}100%{opacity:0;transform:translateY(-34px) scale(.95)}}
@media(max-width:850px){.qm-agility-watch{right:8px;bottom:8px;padding:4px 6px}.qm-agility-watch img{width:18px;height:18px}.qm-agility-watch small{font-size:5px}.qm-agility-xp-drop{right:8px;top:70px}}

/* Repo Sports logo on team sheet and full-time broadcast */
.qm-lineup:after{content:"";position:absolute;top:1.2%;left:50%;transform:translateX(-50%);width:190px;height:88px;background:url('assets/repo-sports-logo.png') center/contain no-repeat;z-index:4;pointer-events:none;filter:drop-shadow(0 5px 8px #000a)}
.qm-lineup:before{top:13.5%!important;}
.qm-lineup-card{margin-top:70px!important;}
.qm-full-time-logo{display:block;width:150px;max-height:72px;object-fit:contain;margin:0 auto 5px;filter:drop-shadow(0 4px 5px #0009)}
.qm-sky-full-time>header b{display:block!important;margin-top:2px!important}
.qm-match-scorers{display:grid;grid-template-columns:1fr 1fr;gap:18px}.qm-match-scorers article{padding:9px 12px;background:#071625;border:1px solid #36546d}.qm-match-scorers article.is-left{border-left:5px solid #b61e35}.qm-match-scorers article.is-right{border-right:5px solid #2f7bba}.qm-match-scorers h4{margin:0 0 6px;color:#f3cc36;font:900 10px/1 Arial,sans-serif;letter-spacing:.8px}.qm-match-scorers p{display:flex;justify-content:space-between;gap:8px;margin:3px 0;color:#eef5fb;font:800 10px/1.2 Arial,sans-serif}.qm-match-scorers p span{color:#9ec1dc;font-weight:700}
.qm-sky-full-time .qm-ft-head,.qm-sky-full-time .qm-ft-row{grid-template-columns:minmax(110px,1fr) 54px 68px 74px 78px!important}.qm-sky-full-time .qm-ft-head span,.qm-sky-full-time .qm-ft-row span{text-align:center!important}
@media(max-width:760px){.qm-lineup:after{width:110px;height:50px}.qm-lineup:before{top:10%!important}.qm-lineup-card{margin-top:42px!important}.qm-full-time-logo{width:90px;max-height:44px}.qm-match-scorers{gap:5px}.qm-match-scorers article{padding:5px}.qm-match-scorers h4{font-size:6px}.qm-match-scorers p{font-size:6px}.qm-sky-full-time .qm-ft-head,.qm-sky-full-time .qm-ft-row{grid-template-columns:minmax(52px,1fr) 25px 31px 34px 38px!important}}

/* Final-score alignment and larger match-centre branding */
.qm-lineup:after{width:270px!important;height:126px!important;top:.6%!important}
.qm-lineup:before{top:16.5%!important}
.qm-lineup-card{margin-top:96px!important}

.qm-sky-full-time>header{display:grid!important;grid-template-columns:118px minmax(0,1fr)!important;align-items:center!important;gap:18px!important;text-align:left!important;padding:10px 18px 14px!important}
.qm-sky-full-time .qm-full-time-logo{width:112px!important;max-height:82px!important;margin:0!important}
.qm-final-scoreline{min-width:0;display:grid;grid-template-columns:62px minmax(0,1fr) 48px 18px 48px minmax(0,1fr) 124px;align-items:center;gap:8px;width:100%}
.qm-final-scoreline>b{font:900 12px/1.05 Arial,sans-serif!important;letter-spacing:1px!important;color:#f3cc36!important;text-align:center!important}
.qm-final-team{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:900 clamp(18px,2.1vw,30px)/1 Arial,sans-serif;color:#fff;text-align:center}
.qm-final-scoreline>i{display:grid;place-items:center;width:48px;height:42px;background:#f2c426;color:#07121f;font:900 25px/1 Arial,sans-serif;font-style:normal;border-radius:3px}
.qm-final-scoreline>em{font:900 25px/1 Arial,sans-serif;font-style:normal;color:#8fa0ae;text-align:center}
.qm-final-scoreline>small{font:800 8px/1.25 monospace!important;letter-spacing:1px!important;color:#9fb0c0!important;text-align:center!important}

@media(max-width:1100px){
  .qm-lineup:after{width:225px!important;height:104px!important}.qm-lineup:before{top:15%!important}.qm-lineup-card{margin-top:78px!important}
  .qm-sky-full-time>header{grid-template-columns:90px minmax(0,1fr)!important;gap:10px!important;padding:8px 10px!important}
  .qm-sky-full-time .qm-full-time-logo{width:86px!important}
  .qm-final-scoreline{grid-template-columns:44px minmax(0,1fr) 34px 12px 34px minmax(0,1fr) 82px;gap:4px}
  .qm-final-scoreline>b{font-size:8px!important}.qm-final-team{font-size:clamp(11px,1.7vw,18px)}
  .qm-final-scoreline>i{width:34px;height:31px;font-size:18px}.qm-final-scoreline>em{font-size:17px}.qm-final-scoreline>small{font-size:5px!important}
}
@media(max-width:760px){
  .qm-lineup:after{width:145px!important;height:68px!important}.qm-lineup:before{top:12.5%!important}.qm-lineup-card{margin-top:52px!important}
  .qm-sky-full-time>header{grid-template-columns:58px minmax(0,1fr)!important;gap:5px!important;padding:5px!important}
  .qm-sky-full-time .qm-full-time-logo{width:55px!important}
  .qm-final-scoreline{grid-template-columns:28px minmax(0,1fr) 24px 7px 24px minmax(0,1fr);gap:2px}
  .qm-final-scoreline>b{font-size:5px!important}.qm-final-team{font-size:8px}.qm-final-scoreline>i{width:24px;height:22px;font-size:12px}.qm-final-scoreline>em{font-size:10px}.qm-final-scoreline>small{display:none!important}
}


/* Final Match Centre and Barry Bramble branding refinements */
.qm-lineup:before{top:18.2%!important;}
.qm-lineup-card{margin-top:108px!important;}
.qm-commentator-live{overflow:visible!important;}
.qm-commentator-live:after{
  content:"";position:absolute;left:50%;top:calc(100% + 5px);transform:translateX(-50%);
  width:62px;height:34px;background:url('assets/repo-sports-logo.png') center/contain no-repeat;
  filter:drop-shadow(0 2px 2px #000b);pointer-events:none;
}
.qm-prediction button.is-selected{opacity:1!important;filter:brightness(1.18)!important;box-shadow:0 0 0 1px #f4d770,0 0 12px #f4cc3988!important;}
.qm-prediction.is-locked button{pointer-events:none!important;}
.qm-prediction:not(.is-locked) button{pointer-events:auto!important;cursor:pointer!important;}
@media(max-width:1100px){.qm-lineup:before{top:17.2%!important}.qm-lineup-card{margin-top:91px!important}.qm-commentator-live:after{width:49px;height:27px}}
@media(max-width:760px){.qm-lineup:before{top:14.4%!important}.qm-lineup-card{margin-top:60px!important}.qm-commentator-live:after{width:38px;height:21px;top:calc(100% + 2px)}}
/* Restored permanent Quidditch spectator XP indicator */
.quidditch-mode-overlay:not(.is-open) .qm-agility-watch,.quidditch-mode-overlay:not(.is-open) .qm-agility-xp-drop{display:none}
.quidditch-mode-tv>.qm-agility-watch{display:flex!important}

/* Quidditch broadcast advertisements */
.qm-tv-ad{position:absolute;z-index:30;left:21%;right:21%;bottom:14.1%;height:auto;padding:0!important;margin:0!important;border:0!important;outline:0!important;background:transparent!important;box-shadow:0 4px 11px #000b!important;cursor:pointer;overflow:hidden;animation:qmAdSlideUp .45s steps(6,end) both}
.qm-tv-ad[hidden]{display:none!important}.qm-tv-ad img{display:block;width:100%;height:auto;image-rendering:pixelated;pointer-events:none}.qm-tv-ad:hover{filter:brightness(1.08);background:transparent!important;outline:0!important;box-shadow:0 4px 11px #000b!important}.qm-tv-ad:focus,.qm-tv-ad:focus-visible{outline:0!important;background:transparent!important}.qm-tv-ad:active{transform:translateY(1px)}
@keyframes qmAdSlideUp{from{opacity:0;transform:translateY(115%)}to{opacity:1;transform:translateY(0)}}
.qm-ad-confirm{position:absolute;z-index:45;left:21%;right:21%;bottom:14.1%;display:block;background:transparent;pointer-events:none}
.qm-ad-confirm[hidden]{display:none!important}.qm-ad-confirm-card{position:relative;width:100%;filter:drop-shadow(0 5px 12px #000);animation:qmConfirmIn .18s steps(3,end) both;pointer-events:auto}.qm-ad-confirm-card>img{display:block;width:100%;height:auto;image-rendering:pixelated}
.qm-ad-confirm-hotspot{position:absolute!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer}
.qm-ad-confirm-hotspot.is-yes{left:23.6%;top:64%;width:35.6%;height:25%}.qm-ad-confirm-hotspot.is-no{left:61.1%;top:64%;width:27.7%;height:25%}.qm-ad-confirm-hotspot.is-close{right:1.1%;top:13.5%;width:4.4%;height:24%}
.qm-ad-confirm-hotspot:hover,.qm-ad-confirm-hotspot:focus,.qm-ad-confirm-hotspot:focus-visible{background:transparent!important;outline:0!important;box-shadow:none!important;filter:none!important}
@keyframes qmConfirmIn{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@media(max-width:760px){.qm-tv-ad,.qm-ad-confirm{left:14%;right:14%;bottom:14%}.qm-ad-confirm-card{width:100%}}

/* 2026-08-01: Fishing advert interaction cleanup.
   Keep browser/global button hover styles from painting a brown rectangle over the art. */
#qmFishingAd,
#qmFishingAd:hover,
#qmFishingAd:focus,
#qmFishingAd:focus-visible,
#qmFishingAd:active,
#qmFishingAdYes,
#qmFishingAdYes:hover,
#qmFishingAdYes:focus,
#qmFishingAdYes:focus-visible,
#qmFishingAdYes:active,
#qmFishingAdNo,
#qmFishingAdNo:hover,
#qmFishingAdNo:focus,
#qmFishingAdNo:focus-visible,
#qmFishingAdNo:active,
#qmFishingAdClose,
#qmFishingAdClose:hover,
#qmFishingAdClose:focus,
#qmFishingAdClose:focus-visible,
#qmFishingAdClose:active {
  -webkit-appearance:none!important;
  appearance:none!important;
  border:0!important;
  outline:0!important;
  background:none!important;
  background-color:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  -webkit-tap-highlight-color:transparent!important;
}
#qmFishingAd::before,#qmFishingAd::after,
#qmFishingAdYes::before,#qmFishingAdYes::after,
#qmFishingAdNo::before,#qmFishingAdNo::after,
#qmFishingAdClose::before,#qmFishingAdClose::after{content:none!important;display:none!important}
#qmFishingAd:hover{filter:brightness(1.05)!important;box-shadow:0 4px 11px #000b!important}
#qmFishingAd:active{transform:translateY(1px)!important}
#qmFishingAd img,
.qm-ad-confirm-card>img{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important}

/* Keep the complete purchase artwork visible, including its right-hand edge and close button. */
.qm-ad-confirm{overflow:visible!important;padding:0 7px!important}
.qm-ad-confirm-card{width:100%!important;max-width:100%!important;margin:0 auto!important;overflow:visible!important;box-sizing:border-box!important}
.qm-ad-confirm-card>img{width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important}


/* Fishing advert purchase-complete feedback */
.qm-ad-success{position:absolute;z-index:46;left:21%;right:21%;bottom:14.1%;pointer-events:none;animation:qmPurchaseSuccessIn .28s steps(4,end) both}
.qm-ad-success[hidden]{display:none!important}
.qm-ad-success-card{box-sizing:border-box;width:100%;padding:8px 15px 9px;border:4px solid #17120c;outline:2px solid #806033;background:linear-gradient(#17354a,#0c2639);box-shadow:0 5px 14px #000;color:#f5ecd2;font-family:monospace;text-shadow:2px 2px #000;image-rendering:pixelated}
.qm-ad-success-title{text-align:center;color:#ffdc62;font-weight:900;font-size:clamp(12px,1.45vw,22px);letter-spacing:1.5px;margin-bottom:6px}
.qm-ad-success-row{display:grid;grid-template-columns:27px auto 1fr;align-items:center;gap:7px;margin:4px 0;padding:5px 9px;border:1px solid #85692c;background:#071522cc}
.qm-ad-success-row.is-gp b{color:#ffd447}.qm-ad-success-row.is-xp b{color:#8ee36e}
.qm-ad-success-row b{font-size:clamp(10px,1.15vw,17px);white-space:nowrap}.qm-ad-success-row small{text-align:right;color:#f0e7ce;font-weight:900;font-size:clamp(7px,.72vw,11px);letter-spacing:.5px}
.qm-ad-success-icon{display:grid;place-items:center;font-size:17px;color:#ffcf35;text-shadow:1px 1px #000}
.qm-ad-success-balances{display:flex;justify-content:space-between;gap:14px;margin-top:6px;padding:0 8px;color:#c9bfa8;font-size:clamp(7px,.72vw,11px);font-weight:900}.qm-ad-success-balances b{color:#fff}
@keyframes qmPurchaseSuccessIn{0%{opacity:0;transform:translateY(35%) scale(.94)}70%{opacity:1;transform:translateY(-3%) scale(1.02)}100%{opacity:1;transform:none}}
@media(max-width:760px){.qm-ad-success{left:14%;right:14%;bottom:14%}.qm-ad-success-card{padding:5px 8px}.qm-ad-success-row{grid-template-columns:20px auto 1fr;padding:3px 5px;gap:4px}.qm-ad-success-icon{font-size:12px}}

/* Repo Sports watch-party block beneath the all-time records. */
.qm-career-panel .qm-watch-party{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:0;
  padding:8px 8px 7px;
  border:1px solid #634922;
  background:linear-gradient(180deg,#17110bf2,#0b0907fa);
  box-shadow:inset 0 0 12px #0009;
  overflow:hidden;
}
.qm-career-panel .qm-watch-party>img{
  display:block;
  width:min(100%,250px);
  height:auto;
  object-fit:contain;
  object-position:left top;
  margin:0 0 7px 0;
  image-rendering:pixelated;
}
.qm-watcher-accounts i{display:block;width:6px;height:6px;border-radius:50%;background:#43d36c;box-shadow:0 0 6px #43d36c;flex:0 0 auto}
.qm-watcher-accounts{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:5px;width:100%;padding:0;max-height:42px;overflow:auto;scrollbar-width:thin}
.qm-watcher-accounts>span{display:flex;align-items:center;gap:4px;max-width:100%;padding:4px 6px;border:1px solid #4e3920;background:#21180f;color:#f3dfab;font:700 7px/1 monospace;box-shadow:inset 0 0 5px #0008}
.qm-watcher-accounts b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qm-watcher-accounts i{width:4px;height:4px}
@media(max-width:820px){.qm-career-panel .qm-watch-party{grid-column:1/-1}.qm-career-panel .qm-watch-party>img{width:min(100%,280px)}.qm-watcher-accounts{max-height:52px}}

/* 2026-08-01: keep all three Quidditch leaderboards compact enough to show a full Top 5. */
.qm-broadcast-sidebar .qm-career-panel{
  grid-template-rows:auto repeat(3,minmax(118px,1fr)) auto!important;
  gap:5px!important;
  padding:8px 7px 7px!important;
}
.qm-broadcast-sidebar .qm-career-panel:before{
  width:26px!important;
  height:26px!important;
  margin:-1px auto 2px!important;
  font-size:14px!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-career-art-header{
  padding:0 2px 5px!important;
}
.qm-broadcast-sidebar .qm-career-panel section{
  min-height:0!important;
  padding:4px 4px 3px!important;
  overflow:hidden!important;
}
.qm-broadcast-sidebar .qm-career-panel h3{
  margin:-1px -1px 3px!important;
  padding:3px 4px!important;
  font-size:8px!important;
  line-height:1!important;
  letter-spacing:.8px!important;
}
.qm-broadcast-sidebar .qm-career-list{
  gap:0!important;
}
.qm-broadcast-sidebar .qm-career-row{
  grid-template-columns:18px minmax(0,1fr) auto!important;
  gap:3px!important;
  min-height:18px!important;
  padding:1px 2px!important;
  line-height:1!important;
}
.qm-broadcast-sidebar .qm-career-rank{
  width:15px!important;
  height:15px!important;
  font-size:8px!important;
}
.qm-broadcast-sidebar .qm-career-name{
  font-size:8px!important;
  line-height:1!important;
}
.qm-broadcast-sidebar .qm-career-name small{
  font-size:6px!important;
  line-height:1!important;
}
.qm-broadcast-sidebar .qm-career-value{
  font-size:9px!important;
  line-height:1!important;
}
.qm-broadcast-sidebar .qm-career-value small{
  font-size:6px!important;
  line-height:1!important;
}
.qm-career-panel .qm-watch-party{
  padding:6px!important;
}

/* 2026-08-01: tighter watch-party spacing and character-backed viewer cards. */
.qm-career-panel .qm-watch-party>img{
  margin-bottom:1px!important;
}
.qm-watcher-accounts{
  align-items:flex-end!important;
  gap:5px!important;
  margin-top:0!important;
  max-height:72px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.qm-watcher-card{
  position:relative;
  display:flex;
  align-items:flex-end;
  flex:0 0 auto;
  min-width:max-content;
}
.qm-watcher-card.has-portrait{
  height:62px;
  padding-top:0;
}
.qm-watcher-portrait{
  position:absolute;
  z-index:0;
  left:50%;
  bottom:13px;
  width:56px;
  height:52px;
  object-fit:contain;
  object-position:center bottom;
  transform:translateX(-50%);
  image-rendering:pixelated;
  pointer-events:none;
}
.qm-watcher-name{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:4px;
  max-width:100%;
  padding:4px 6px;
  border:1px solid #4e3920;
  background:#21180ff2;
  color:#f3dfab;
  font:700 7px/1 monospace;
  box-shadow:inset 0 0 5px #0008,0 1px 2px #000;
}
.qm-watcher-name i{
  display:block;
  width:4px;
  height:4px;
  border-radius:50%;
  background:#43d36c;
  box-shadow:0 0 6px #43d36c;
  flex:0 0 auto;
}
.qm-watcher-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Neutralise the old direct-child viewer-chip rule now that each chip is wrapped. */
.qm-watcher-accounts>.qm-watcher-card{padding-left:0;padding-right:0;border:0;background:transparent;box-shadow:none}

/* 2026-08-01: updated fishing purchase artwork and lower viewer nameplates. */
.qm-watcher-card.has-portrait{
  height:76px!important;
}
.qm-watcher-portrait{
  width:66px!important;
  height:66px!important;
  bottom:12px!important;
  object-position:center bottom!important;
}
.qm-watcher-name{
  align-self:flex-end!important;
  transform:translateY(0)!important;
}

/* 2026-08-01: pull Quidditch viewer portraits and nameplates up beneath the sponsor graphic. */
.qm-career-panel .qm-watch-party{
  justify-content:flex-start!important;
  overflow:hidden!important;
}
.qm-career-panel .qm-watch-party>img{
  flex:0 0 auto!important;
  margin:0 0 0 0!important;
}
.qm-watcher-accounts{
  flex:0 0 auto!important;
  align-items:flex-start!important;
  margin-top:-3px!important;
  max-height:54px!important;
  min-height:54px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.qm-watcher-card{
  align-items:flex-end!important;
}
.qm-watcher-card.has-portrait{
  height:52px!important;
  padding-top:0!important;
}
.qm-watcher-portrait{
  width:45px!important;
  height:45px!important;
  bottom:9px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
.qm-watcher-name{
  position:absolute!important;
  left:50%!important;
  bottom:0!important;
  transform:translateX(-50%)!important;
  white-space:nowrap!important;
}
.qm-watcher-card:not(.has-portrait) .qm-watcher-name{
  position:relative!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  margin-top:31px!important;
}

/* 2026-08-01 final watch-party placement fix: keep viewers directly below sponsor art. */
.qm-career-panel .qm-watch-party{
  position:relative!important;
  display:block!important;
  padding:6px!important;
  overflow:hidden!important;
}
.qm-career-panel .qm-watch-party>img{
  display:block!important;
  width:min(100%,265px)!important;
  height:auto!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:left top!important;
}
.qm-career-panel .qm-watcher-accounts{
  position:absolute!important;
  left:6px!important;
  right:6px!important;
  top:68px!important;
  width:auto!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:flex-start!important;
  align-content:flex-start!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.qm-career-panel .qm-watcher-card{
  position:relative!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:52px!important;
  height:56px!important;
  padding:0!important;
  overflow:visible!important;
}
.qm-career-panel .qm-watcher-card.has-portrait{
  width:52px!important;
  min-width:52px!important;
  height:56px!important;
}
.qm-career-panel .qm-watcher-portrait{
  position:absolute!important;
  z-index:0!important;
  left:50%!important;
  top:0!important;
  bottom:auto!important;
  width:38px!important;
  height:42px!important;
  transform:translateX(-50%)!important;
  object-fit:contain!important;
  object-position:center bottom!important;
}
.qm-career-panel .qm-watcher-name{
  position:absolute!important;
  z-index:2!important;
  left:50%!important;
  bottom:0!important;
  transform:translateX(-50%)!important;
  width:max-content!important;
  max-width:72px!important;
  padding:3px 5px!important;
  font-size:7px!important;
  line-height:1!important;
}
.qm-career-panel .qm-watcher-card:not(.has-portrait) .qm-watcher-name{
  bottom:2px!important;
}

/* 2026-08-01: use complete account name-card artwork for online Quidditch viewers. */
.qm-career-panel .qm-watch-party{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  padding:5px 6px 6px!important;
  overflow:visible!important;
}
.qm-career-panel .qm-watch-party>img{
  width:min(100%,250px)!important;
  height:auto!important;
  flex:0 0 auto!important;
  margin:0 0 2px 0!important;
}
.qm-watcher-accounts{
  position:static!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  align-content:flex-start!important;
  justify-content:flex-start!important;
  gap:3px 4px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
.qm-watcher-namecard{
  display:block!important;
  flex:0 0 auto!important;
  width:96px!important;
  height:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  line-height:0!important;
}
.qm-watcher-namecard img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  image-rendering:pixelated!important;
  border:0!important;
  background:transparent!important;
}
.qm-no-known-watchers{
  padding:3px 5px!important;
  color:#bca779!important;
  font:700 7px/1 monospace!important;
  border:0!important;
  background:transparent!important;
}
@media(max-width:820px){.qm-watcher-namecard{width:88px!important}}

/* 2026-08-01 polished Repo Sports viewer roster. Keep all online name cards
   inside the sponsor panel with consistent sizing and spacing. */
.qm-career-panel .qm-watch-party{
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  min-height:0!important;
  padding:7px 8px 8px!important;
  border:2px solid #755326!important;
  background:linear-gradient(180deg,#2b1b10 0%,#160f0a 100%)!important;
  box-shadow:inset 0 0 0 1px #1a1008,inset 0 0 14px #0009!important;
  overflow:hidden!important;
}
.qm-career-panel .qm-watch-party>img{
  display:block!important;
  width:min(100%,272px)!important;
  height:auto!important;
  margin:0 auto 6px!important;
  object-fit:contain!important;
  object-position:center!important;
  image-rendering:pixelated!important;
  flex:0 0 auto!important;
}
.qm-career-panel .qm-watcher-accounts{
  position:static!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:5px!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:6px 0 0!important;
  border-top:1px solid #684923!important;
  overflow:hidden!important;
}
.qm-career-panel .qm-watcher-namecard{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:0 2px 4px #0008!important;
  line-height:0!important;
  overflow:hidden!important;
  transition:transform .12s ease,filter .12s ease!important;
}
.qm-career-panel .qm-watcher-namecard img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:1.93/1!important;
  object-fit:contain!important;
  object-position:center!important;
  image-rendering:pixelated!important;
}
.qm-career-panel .qm-watcher-namecard:hover{
  transform:translateY(-1px)!important;
  filter:brightness(1.08)!important;
}
.qm-career-panel .qm-no-known-watchers{
  grid-column:1/-1!important;
  text-align:center!important;
  padding:5px!important;
}
@media(max-width:1150px) and (min-width:821px){
  .qm-career-panel .qm-watch-party{padding:6px!important}
  .qm-career-panel .qm-watch-party>img{width:min(100%,245px)!important;margin-bottom:5px!important}
  .qm-career-panel .qm-watcher-accounts{gap:4px!important;padding-top:5px!important}
}
@media(max-width:820px){
  .qm-career-panel .qm-watch-party>img{width:min(100%,320px)!important}
  .qm-career-panel .qm-watcher-accounts{grid-template-columns:repeat(3,minmax(90px,1fr))!important;overflow-x:auto!important}
}

/* 2026-08-01 final Repo Sports panel balance tweaks. */
.qm-career-panel .qm-watch-party>img{
  transform:translateY(20px)!important;
  margin-bottom:6px!important;
}
.qm-career-panel .qm-watcher-accounts{
  gap:3px!important;
  padding-left:0!important;
  padding-right:0!important;
}
.qm-career-panel .qm-watcher-namecard{
  width:calc(100% + 4px)!important;
  margin-left:-2px!important;
  margin-right:-2px!important;
}
.qm-career-panel .qm-watcher-namecard:hover{
  transform:translateY(-1px) scale(1.01)!important;
}

/* 2026-08-01 watcher roster visibility fix.
   Keep every supported online account card on a single row so additional
   viewers cannot be clipped by the fixed-height records sidebar. */
.qm-career-panel .qm-watcher-accounts{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:4px!important;
  overflow:visible!important;
}
.qm-career-panel .qm-watcher-namecard{
  width:100%!important;
  margin:0!important;
  min-width:0!important;
}
.qm-career-panel .qm-watcher-namecard img{
  width:100%!important;
  max-width:none!important;
}
@media(max-width:1150px) and (min-width:821px){
  .qm-career-panel .qm-watcher-accounts{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:3px!important;
  }
}
@media(max-width:820px){
  .qm-career-panel .qm-watcher-accounts{
    grid-template-columns:repeat(5,minmax(70px,1fr))!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
}
.qm-career-panel .qm-watcher-namecard-fallback{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  aspect-ratio:1.93/1!important;
  border:1px solid #75603a!important;
  background:linear-gradient(#332d20,#17130d)!important;
  color:#d7ad4b!important;
  font:700 clamp(6px,.58vw,9px)/1.1 monospace!important;
  text-align:center!important;
  text-shadow:1px 1px #000!important;
}

/* 2026-08-01: readable two-row watch-party roster.
   Restore the original three-card sizing, allow a second row for viewers 4–5,
   and pull the sponsor artwork upward to use the panel space better. */
.qm-career-panel .qm-watch-party>img{
  transform:translateY(5px)!important;
  margin-top:-4px!important;
  margin-bottom:10px!important;
}
.qm-career-panel .qm-watcher-accounts{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  align-content:start!important;
  gap:7px 8px!important;
  padding:8px 8px 4px!important;
  overflow:visible!important;
}
.qm-career-panel .qm-watcher-namecard{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.qm-career-panel .qm-watcher-namecard img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
}
@media(max-width:1150px) and (min-width:821px){
  .qm-career-panel .qm-watcher-accounts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    padding:7px 5px 3px!important;
  }
}

/* 2026-08-01 actual watch-party roster spacing/hover fix.
   Keep the divider directly beneath the sponsor graphic and reserve two
   readable rows for up to five active viewer cards. */
.qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
  justify-content:flex-start!important;
  padding:6px 8px 8px!important;
  overflow:visible!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watch-party>img{
  width:min(100%,272px)!important;
  transform:none!important;
  margin:-2px auto 2px!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  align-content:start!important;
  align-items:start!important;
  gap:7px 8px!important;
  width:100%!important;
  min-height:70px!important;
  max-height:none!important;
  margin:0!important;
  padding:5px 6px 0!important;
  border-top:1px solid #684923!important;
  overflow:visible!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-namecard{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  overflow:visible!important;
  transform-origin:center!important;
  transition:transform .14s ease,filter .14s ease!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-namecard img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  image-rendering:pixelated!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-namecard:hover{
  z-index:20!important;
  transform:translateY(-2px) scale(1.055)!important;
  filter:brightness(1.08)!important;
}
@media(max-width:1150px) and (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
    gap:6px!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }
}

/* 2026-08-01: give the two-row watch-party roster its own visible space. */
@media (min-width:821px){
  .quidditch-mode-layout > .qm-broadcast-sidebar{
    overflow:visible!important;
  }
  .qm-broadcast-sidebar .qm-career-panel{
    height:min(92vh,790px)!important;
    grid-template-rows:auto repeat(3,minmax(0,1fr)) minmax(150px,auto)!important;
    overflow:hidden!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    min-height:150px!important;
    padding:5px 8px 8px!important;
    box-sizing:border-box!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party>img{
    margin:-2px auto 1px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:min-content!important;
    min-height:78px!important;
    gap:6px 8px!important;
    padding:5px 6px 2px!important;
    align-content:start!important;
  }
}

/* 2026-08-01 final annotated layout correction.
   Keep every Top 5 visible and tightly pack the two-row watch-party roster. */
@media (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel{
    height:min(94vh,780px)!important;
    grid-template-rows:auto 116px 116px 116px 184px!important;
    gap:5px!important;
    padding:7px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-career-art-header{
    padding:0 2px 3px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-career-art-header img{
    max-width:258px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel>section{
    height:116px!important;
    min-height:116px!important;
    padding:3px 4px 2px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  .qm-broadcast-sidebar .qm-career-panel h3{
    margin:-1px -1px 2px!important;
    padding:2px 4px!important;
  }
  .qm-broadcast-sidebar .qm-career-row{
    min-height:17px!important;
    padding:0 2px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    min-height:184px!important;
    height:184px!important;
    padding:4px 7px 6px!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party>img{
    width:min(100%,272px)!important;
    margin:0 auto 0!important;
    transform:none!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:min-content!important;
    width:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:-1px 0 0!important;
    padding:5px 5px 0!important;
    gap:6px 8px!important;
    align-content:start!important;
    border-top:1px solid #684923!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-namecard{
    width:100%!important;
    min-width:0!important;
  }
}

/* 2026-08-01 annotated gap correction: remove unused grid stretch between
   the final leaderboard and Watch Party, while preserving two readable card rows. */
@media (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel{
    height:auto!important;
    min-height:0!important;
    max-height:94vh!important;
    grid-template-rows:auto 116px 116px 116px 202px!important;
    align-content:start!important;
    gap:5px!important;
    padding:7px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    height:202px!important;
    min-height:202px!important;
    margin:0!important;
    padding:3px 7px 5px!important;
    justify-content:flex-start!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party>img{
    margin:-2px auto 0!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
    margin:0!important;
    padding:4px 5px 0!important;
    gap:5px 8px!important;
    align-content:start!important;
  }
}

/* 2026-08-01 final records-panel structure fix.
   Remove the obsolete crest grid item, place every section explicitly, and
   eliminate the accidental empty grid row above the Watch Party block. */
@media (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel::before{
    content:none!important;
    display:none!important;
  }
  .qm-broadcast-sidebar .qm-career-panel{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto 116px 116px 116px 202px!important;
    gap:5px!important;
    align-content:start!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:7px!important;
    overflow:hidden!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-career-art-header{
    grid-column:1!important;
    grid-row:1!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    min-height:0!important;
    align-self:start!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-career-art-header img{
    display:block!important;
    width:min(100%,258px)!important;
    max-width:258px!important;
    margin:0 auto!important;
    transform:none!important;
  }
  .qm-broadcast-sidebar .qm-career-panel>section:nth-of-type(1){grid-row:2!important}
  .qm-broadcast-sidebar .qm-career-panel>section:nth-of-type(2){grid-row:3!important}
  .qm-broadcast-sidebar .qm-career-panel>section:nth-of-type(3){grid-row:4!important}
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    grid-column:1!important;
    grid-row:5!important;
    align-self:start!important;
    height:202px!important;
    min-height:202px!important;
    margin:0!important;
    padding:3px 7px 5px!important;
  }
}

/* 2026-08-01 FINAL: pull the viewer divider directly beneath the sponsor art. */
@media (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    height:190px!important;
    min-height:190px!important;
    padding:2px 7px 4px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party>img{
    display:block!important;
    width:min(100%,272px)!important;
    margin:-2px auto -15px!important;
    flex:0 0 auto!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts{
    margin:0!important;
    padding:4px 5px 0!important;
    border-top:1px solid #684923!important;
    gap:5px 8px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel{
    grid-template-rows:auto 116px 116px 116px 190px!important;
  }
}


/* Rooftop Rumble — Skipper achievement and animated pet */
.achievement-group h4 .achievement-game-skill{margin-left:auto;font:800 9px/1 monospace;letter-spacing:1px;color:#9bd5ad;border:1px solid #55785d;padding:4px 6px;background:#172019}
.achievement-locked-future{opacity:.92;border-color:#8f7544;background:linear-gradient(90deg,#241b14,#2d281b)}
.achievement-locked-future .achievement-status{color:#e4c778;border-color:#9d7b3d;background:#19130d}
.skipper-achievement-preview{position:relative;display:block;overflow:hidden;padding:0!important;background:#0d0b09!important}
.skipper-achievement-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%;image-rendering:auto}
.pet-visual[data-pet-id="pet_skipper"]{--pet-scale:.94}
.pet-visual[data-pet-id="pet_skipper"] .skipper-body{position:relative;display:block;width:100%;height:100%}
.pet-visual[data-pet-id="pet_skipper"] .skipper-frame{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:contain;opacity:0}
.pet-visual[data-pet-id="pet_skipper"] .skipper-idle{opacity:1}
.roaming-pet .pet-visual[data-pet-id="pet_skipper"] .skipper-idle{animation:skipperIdleFrames 1.05s steps(1,end) infinite}
.roaming-pet .pet-visual[data-pet-id="pet_skipper"] .skipper-walk-one{animation:skipperWalkOne 1.05s steps(1,end) infinite}
.roaming-pet .pet-visual[data-pet-id="pet_skipper"] .skipper-walk-two{animation:skipperWalkTwo 1.05s steps(1,end) infinite}
@keyframes skipperIdleFrames{0%,15%,100%{opacity:1}16%,84%{opacity:0}}
@keyframes skipperWalkOne{0%,15%,49%,85%,100%{opacity:0}16%,48%{opacity:1}}
@keyframes skipperWalkTwo{0%,48%,84%,100%{opacity:0}49%,83%{opacity:1}}
@media (prefers-reduced-motion:reduce){.roaming-pet .pet-visual[data-pet-id="pet_skipper"] .skipper-frame{animation:none!important}.roaming-pet .pet-visual[data-pet-id="pet_skipper"] .skipper-idle{opacity:1}}


/* Homepage Achievement Log shortcut and OSRS-style NPC Contact */
.header-achievements-button{min-width:94px!important}
.header-achievements-button span{font-size:9px!important;letter-spacing:.2px!important}
.npc-contact-open-button{position:relative;overflow:hidden}
.npc-contact-open-button img{object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 1px 1px #000)}
.npc-contact-open-button span{color:#f7e5b1;text-shadow:1px 1px 0 #251409}

.npc-contact-dialog{width:min(530px,94vw);min-height:330px;padding:8px!important;background:#3e372d!important;border:5px ridge #777064!important;color:#ff9b25!important;box-shadow:0 0 0 3px #171511,0 14px 38px #000c!important;image-rendering:pixelated}
.npc-contact-dialog::backdrop{background:#000b}
.npc-contact-dialog .dialog-x{top:5px;right:6px;width:25px;height:25px;padding:0;background:#39362d!important;border:3px ridge #777064!important;color:#c9a76d!important;font:900 19px/18px Georgia,serif!important}
.npc-contact-title{height:26px;display:flex;align-items:center;justify-content:center;margin:-2px -2px 5px;border-bottom:2px solid #181611;color:#ff9b25;font:900 13px/1 Georgia,serif;letter-spacing:.4px;text-shadow:2px 2px #1a1007}
.npc-contact-roster{min-height:252px;display:grid;grid-template-columns:repeat(5,82px);align-content:start;justify-content:start;gap:16px 12px;padding:12px 14px;background:linear-gradient(#40382e,#342d25);border:3px inset #25221d;overflow:auto}
.npc-contact-card{width:82px;height:116px;padding:4px 2px 2px;border:0!important;background:transparent!important;box-shadow:none!important;color:#ff9b25!important;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;cursor:pointer}
.npc-contact-card:hover,.npc-contact-card:focus-visible{filter:brightness(1.22);transform:translateY(-2px);outline:1px dotted #e4bd68}
.npc-contact-portrait{width:76px;height:86px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.npc-contact-portrait img{width:72px;height:82px;object-fit:contain;object-position:center bottom;image-rendering:pixelated;filter:drop-shadow(2px 2px 0 #17130f)}
.npc-contact-card strong{font:500 13px/1.05 Georgia,serif;color:#ff9b25;text-shadow:1px 1px #160d06}
.npc-contact-dialogue{min-height:250px;padding:20px;background:linear-gradient(#40382e,#342d25);border:3px inset #25221d;color:#ead7b0}
.npc-dialogue-speaker{display:flex;align-items:flex-end;gap:15px;padding-bottom:12px;border-bottom:1px solid #70604b}
.npc-dialogue-speaker img{width:74px;height:108px;object-fit:contain;object-position:bottom;image-rendering:pixelated}
.npc-dialogue-speaker strong{font:900 22px Georgia,serif;color:#ff9b25;text-shadow:2px 2px #180e07}
.npc-contact-dialogue p{margin:20px 8px;font:700 17px/1.55 Georgia,serif;color:#fff0c6;text-shadow:1px 1px #17100a}
.npc-contact-dialogue button{display:block;margin:15px auto 0;padding:8px 16px;background:linear-gradient(#6d5638,#3b2c1d)!important;border:3px ridge #a3865a!important;color:#ffd28a!important;font:800 11px Georgia,serif}
.npc-contact-footer{padding:7px 5px 1px;text-align:center;color:#9f927d;font:11px Georgia,serif}
@media(max-width:560px){.npc-contact-roster{grid-template-columns:repeat(3,82px)}.header-achievements-button{min-width:78px!important}.header-achievements-button span{font-size:8px!important}}

/* Leaderboard now lives at the bottom of the Skills menu. */
.skills-leaderboard-button {
  width: min(100%, 360px);
  min-height: 48px;
  margin: 16px auto 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.skills-leaderboard-button img {
  width: 26px;
  height: 26px;
  object-fit: contain;
  image-rendering: pixelated;
}

/* Grace NPC dialogue tree */
.npc-contact-dialog .dialog-x{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;text-indent:0!important;box-sizing:border-box!important;padding:0 0 2px!important}
.npc-contact-roster{min-height:300px}
.npc-contact-dialogue{min-height:300px;display:flex;flex-direction:column}
.npc-dialogue-speaker.player-speaking img{width:112px;height:74px;object-fit:cover;object-position:left center;border:1px solid #8d7654;background:#211b15}
.npc-dialogue-speaker.player-speaking strong{color:#fff0c6}
.npc-dialogue-prompt{margin:6px 8px 2px;color:#d9c59d;font:700 13px Georgia,serif;text-align:center}
.npc-dialogue-options{display:flex;flex-direction:column;gap:6px;margin:4px 8px 8px}
.npc-dialogue-options button{width:100%;margin:0!important;padding:7px 10px!important;text-align:left;background:linear-gradient(#57452f,#30251a)!important;color:#fff0c6!important}
.npc-dialogue-options button:hover{filter:brightness(1.18);transform:translateX(2px)}
.npc-dialogue-controls{margin-top:auto;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}
.npc-dialogue-controls button{margin:8px 0 0!important}
.npc-contact-dialogue.interface-open .npc-dialogue-speaker{display:none}
.npc-contact-dialogue.interface-open #npcDialogueText{margin:8px}
.npc-grace-interface{border:2px inset #211d18;background:#2d271f;padding:14px;color:#ead7b0;text-align:center}
.npc-grace-interface h4{margin:0 0 10px;color:#ff9b25;font:900 17px Georgia,serif}
.npc-grace-interface p{margin:8px!important;font-size:14px!important}

/* OSRS parchment conversation box */
.npc-contact-dialogue{
  min-height:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
}
.npc-contact-dialogue:not(.interface-open){
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr);
  grid-template-rows:auto auto auto;
  align-items:stretch;
  width:min(720px,calc(100vw - 54px));
  margin:18px auto 0;
  padding:10px 14px 8px!important;
  box-sizing:border-box;
  border:3px solid #201d18!important;
  outline:2px solid #847c69;
  background:
    linear-gradient(rgba(255,255,255,.16),rgba(113,91,55,.05)),
    repeating-linear-gradient(0deg,#ddd2b4 0,#ddd2b4 2px,#d8ccac 2px,#d8ccac 4px)!important;
  box-shadow:inset 0 0 0 2px #afa486,inset 0 0 18px rgba(77,57,29,.22),0 5px 15px #0009;
  color:#2f2118!important;
  font-family:Georgia,'Times New Roman',serif!important;
}
.npc-contact-dialogue:not(.interface-open)::before,
.npc-contact-dialogue:not(.interface-open)::after{
  content:'';position:absolute;left:8px;right:8px;height:1px;background:#8c8064;opacity:.6
}
.npc-contact-dialogue:not(.interface-open)::before{top:7px}.npc-contact-dialogue:not(.interface-open)::after{bottom:7px}
.npc-dialogue-speaker{
  grid-column:1;grid-row:1 / span 3;
  min-height:122px!important;
  display:flex!important;align-items:flex-end!important;justify-content:center!important;
  padding:0!important;margin:0 8px 0 0!important;border:0!important;background:transparent!important;
  position:relative;overflow:hidden;
}
.npc-dialogue-speaker img,
.npc-dialogue-speaker.player-speaking img{
  width:126px!important;height:126px!important;max-width:none!important;
  object-fit:contain!important;object-position:center bottom!important;
  border:0!important;background:transparent!important;image-rendering:auto!important;
  filter:drop-shadow(1px 2px 0 rgba(50,35,20,.25));
}
.npc-dialogue-speaker:not(.player-speaking) img{
  width:92px!important;height:112px!important;object-fit:cover!important;object-position:center 8%!important;
  clip-path:inset(0 0 31% 0);
  transform:translateY(18px) scale(1.18);
}
.npc-dialogue-speaker strong{display:none!important}
#npcDialogueText{
  grid-column:2;grid-row:1;margin:13px 8px 4px!important;min-height:44px;
  color:#302117!important;text-align:center;font-size:16px!important;line-height:1.35!important;
}
#npcDialogueText::before{content:attr(data-speaker);display:block;color:#8f2c22;font-size:15px;margin-bottom:8px}
.npc-dialogue-prompt{grid-column:2;grid-row:1;margin:8px 8px 4px!important;color:#3d2b20!important;font-size:15px!important}
.npc-dialogue-options{grid-column:2;grid-row:2;gap:2px!important;margin:2px 10px 5px!important;align-self:start}
.npc-dialogue-options button{
  border:0!important;background:transparent!important;box-shadow:none!important;
  color:#163db4!important;text-align:center!important;padding:3px 7px!important;
  font:15px Georgia,'Times New Roman',serif!important;text-shadow:none!important
}
.npc-dialogue-options button:hover{color:#9a1717!important;filter:none!important;transform:none!important;text-decoration:underline}
.npc-dialogue-controls{grid-column:2;grid-row:3;margin:0!important;min-height:25px;align-items:center}
#npcDialogueContinue{
  border:0!important;background:transparent!important;box-shadow:none!important;color:#253fc0!important;
  font:15px Georgia,'Times New Roman',serif!important;padding:3px 8px!important;margin:0!important;text-transform:none!important
}
#npcDialogueContinue:hover{color:#a41e1e!important;filter:none!important}
#npcDialogueContinue::first-letter{text-transform:uppercase}
#npcContactBack{position:absolute;right:7px;bottom:-34px;font-size:10px!important;padding:3px 7px!important;opacity:.75}
.npc-contact-dialogue.interface-open{width:100%;margin:0;padding:10px!important;background:#2d271f!important;border:2px inset #211d18!important}
@media(max-width:620px){
 .npc-contact-dialogue:not(.interface-open){grid-template-columns:95px 1fr;padding-left:8px!important}
 .npc-dialogue-speaker img,.npc-dialogue-speaker.player-speaking img{width:94px!important;height:112px!important}
 #npcDialogueText{font-size:14px!important}.npc-dialogue-options button{font-size:13px!important}
}

/* NPC Contact layout corrections */
.npc-contact-dialogue.hidden{display:none!important}
.npc-contact-dialog.dialogue-mode{
  width:min(820px,94vw)!important;
  min-height:0!important;
  max-height:90vh;
  overflow:visible;
}
.npc-contact-dialog.dialogue-mode .npc-contact-roster{display:none!important}
.npc-contact-dialog.dialogue-mode .npc-contact-dialogue:not(.hidden):not(.interface-open){
  width:100%!important;
  min-height:230px!important;
  margin:10px 0 4px!important;
  grid-template-columns:175px minmax(0,1fr)!important;
  padding:14px 22px 12px!important;
}
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker{
  min-height:190px!important;
}
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker img,
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker.player-speaking img{
  width:168px!important;
  height:188px!important;
}
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker:not(.player-speaking) img{
  width:145px!important;
  height:180px!important;
  object-position:center 5%!important;
  clip-path:inset(0 0 32% 0);
  transform:translateY(27px) scale(1.2);
}
.npc-contact-dialog.dialogue-mode #npcDialogueText{
  margin:24px 14px 8px!important;
  min-height:64px;
  font-size:19px!important;
  line-height:1.45!important;
}
.npc-contact-dialog.dialogue-mode #npcDialogueText::before{font-size:17px;margin-bottom:11px}
.npc-contact-dialog.dialogue-mode .npc-dialogue-prompt{font-size:18px!important;margin:17px 10px 8px!important}
.npc-contact-dialog.dialogue-mode .npc-dialogue-options{gap:5px!important;margin:5px 18px 10px!important}
.npc-contact-dialog.dialogue-mode .npc-dialogue-options button{font-size:17px!important;padding:5px 8px!important}
.npc-contact-dialog.dialogue-mode #npcDialogueContinue{font-size:17px!important;padding:6px 10px!important}
.npc-contact-dialog.dialogue-mode #npcContactBack{bottom:-39px}

/* Shop/counter interfaces contain only their interface content. */
.npc-contact-dialog.dialogue-mode .npc-contact-dialogue.interface-open{
  display:block!important;
  width:100%!important;
  min-height:250px!important;
  margin:10px 0 4px!important;
  box-sizing:border-box;
  padding:24px!important;
}
.npc-contact-dialogue.interface-open .npc-dialogue-speaker,
.npc-contact-dialogue.interface-open #npcDialoguePrompt,
.npc-contact-dialogue.interface-open #npcDialogueOptions,
.npc-contact-dialogue.interface-open .npc-dialogue-controls{display:none!important}
.npc-contact-dialogue.interface-open #npcDialogueText{display:block!important;margin:0!important;min-height:0!important}
.npc-contact-dialogue.interface-open #npcDialogueText::before{content:none!important}
.npc-contact-dialogue.interface-open .npc-grace-interface{min-height:175px;display:grid;place-content:center}

@media(max-width:700px){
 .npc-contact-dialog.dialogue-mode{width:96vw!important}
 .npc-contact-dialog.dialogue-mode .npc-contact-dialogue:not(.hidden):not(.interface-open){grid-template-columns:115px 1fr!important;padding:10px!important}
 .npc-contact-dialog.dialogue-mode .npc-dialogue-speaker img,.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker.player-speaking img{width:110px!important;height:145px!important}
 .npc-contact-dialog.dialogue-mode #npcDialogueText{font-size:15px!important;margin-top:16px!important}
 .npc-contact-dialog.dialogue-mode .npc-dialogue-options button{font-size:14px!important}
}

/* NPC dialogue portrait corrections */
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker:not(.player-speaking) img{
  width:145px!important;
  height:185px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  clip-path:none!important;
  transform:none!important;
}
.npc-contact-dialog.dialogue-mode .npc-dialogue-options:not(:empty) ~ *{}


/* NPC Contact sizing and navigation refinements */
.npc-contact-dialog:not(.dialogue-mode){
  width:min(680px,94vw)!important;
  min-height:470px!important;
}
.npc-contact-dialog:not(.dialogue-mode) .npc-contact-roster{
  min-height:380px!important;
  padding:18px 20px!important;
}
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker.player-speaking img{
  width:184px!important;
  height:205px!important;
}
.npc-contact-dialogue.interface-open .npc-grace-interface{
  gap:12px;
  text-align:center;
}
.npc-contact-dialogue.interface-open .npc-interface-back{
  display:block!important;
  margin:18px auto 0!important;
  padding:8px 18px!important;
  background:linear-gradient(#6d5638,#3b2c1d)!important;
  border:3px ridge #a3865a!important;
  color:#ffd28a!important;
  font:800 12px Georgia,serif!important;
  cursor:pointer;
}
.npc-contact-dialogue.interface-open .npc-interface-back:hover{filter:brightness(1.15)}
@media(max-width:700px){
  .npc-contact-dialog:not(.dialogue-mode){width:96vw!important;min-height:420px!important}
  .npc-contact-dialog.dialogue-mode .npc-dialogue-speaker.player-speaking img{width:122px!important;height:158px!important}
}

/* Grace's Graceful Clothing shop */
.graceful-shop-interface{width:min(920px,calc(100vw - 110px));margin:0 auto;text-align:left}
.graceful-shop-title{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:2px solid #8b6a35;padding:4px 4px 12px;margin-bottom:12px}
.graceful-shop-title h4{margin:0 0 4px;color:#7a260f;text-align:left;letter-spacing:1px}
.graceful-shop-title p{margin:0;color:#4b3926}
.graceful-mark-balance{display:grid;grid-template-columns:42px auto;grid-template-rows:auto auto;align-items:center;column-gap:7px;min-width:150px;padding:6px 10px;background:#d2bd8d;border:2px ridge #6b5531;box-shadow:inset 0 0 0 1px #eadcb9}
.graceful-mark-balance img{grid-row:1/3;width:40px;height:40px;object-fit:contain;image-rendering:auto}
.graceful-mark-balance span{font-size:22px;font-weight:800;color:#301f0d;line-height:1}
.graceful-mark-balance small{color:#5b4324;font-weight:700}
.graceful-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.graceful-shop-item{min-height:105px;display:grid;grid-template-columns:76px 1fr;grid-template-rows:1fr auto;gap:3px 8px;align-items:center;text-align:left;padding:7px;background:linear-gradient(#5a4734,#3a2d22);border:2px outset #9a7a48;color:#f5e7bf;cursor:pointer;box-shadow:inset 0 0 0 1px #241b14}
.graceful-shop-item:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.12)}
.graceful-shop-item:disabled{cursor:default;opacity:.78}
.graceful-shop-item.owned{background:linear-gradient(#3c5037,#293825);border-color:#7d986e}
.graceful-item-art{grid-row:1/3;display:flex;align-items:center;justify-content:center;height:88px;background:#28231d;border:1px solid #76613d}
.graceful-item-art img{max-width:69px;max-height:82px;object-fit:contain}
.graceful-item-copy{align-self:end;display:flex;flex-direction:column;min-width:0}
.graceful-item-copy b{font-size:16px;color:#fff0b8}
.graceful-item-copy small{color:#cbb88a}
.graceful-item-cost{align-self:start;display:flex;align-items:center;gap:5px;font-weight:900;color:#ffe98c;font-size:16px}
.graceful-item-cost img{width:24px;height:24px;object-fit:contain}
.graceful-item-cost.not-enough{color:#e79282}
.graceful-shop-message{min-height:22px;text-align:center!important;margin:10px 0 7px!important;color:#5b351d!important;font-weight:700}
.graceful-bank-slot .bank-item-art{object-fit:contain}
@media(max-width:760px){.graceful-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.graceful-shop-interface{width:calc(100vw - 50px)}.graceful-shop-title{align-items:flex-start}.graceful-mark-balance{min-width:125px}}

/* Keep Grace's shop fully contained inside the NPC Contact window */
.npc-contact-dialog.dialogue-mode:has(.npc-contact-dialogue.interface-open){
  width:min(1040px,96vw)!important;
  max-width:1040px!important;
}
.npc-contact-dialog.dialogue-mode .npc-contact-dialogue.interface-open{
  width:100%!important;
  max-width:100%!important;
  padding:18px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.npc-contact-dialogue.interface-open #npcDialogueText,
.npc-contact-dialogue.interface-open .npc-grace-interface,
.npc-contact-dialogue.interface-open .graceful-shop-interface{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
.graceful-shop-interface{margin:0!important;padding:0!important}
.graceful-shop-grid{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));box-sizing:border-box}
.graceful-shop-item{min-width:0;width:100%;box-sizing:border-box}
@media(max-width:900px){
  .npc-contact-dialog.dialogue-mode:has(.npc-contact-dialogue.interface-open){width:96vw!important}
  .graceful-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:570px){
  .graceful-shop-title{flex-direction:column}
  .graceful-shop-grid{grid-template-columns:1fr}
}

/* Shared per-match arena broadcast */
.qm-lineup-arena{display:block!important;margin-top:2px;color:#f3cc36!important;font-size:8px!important;letter-spacing:.7px!important;max-width:132px;line-height:1.25!important;}
.qm-commentator-desk #qmArenaBroadcast{white-space:normal;line-height:1.12;text-align:center;font-size:clamp(7px,.62vw,10px);}
.quidditch-mode-tv{background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;}

/* Gertrude's Pet Emporium and name-tag shop */
.npc-contact-card img[src*="npc-gertrude"]{transform:scale(1.35);transform-origin:center bottom}
.npc-gertrude-interface{width:100%;min-height:330px;display:flex;flex-direction:column;gap:10px;color:#ead7b0}
.gertrude-shop-header{display:flex;align-items:center;gap:12px;padding:8px 12px;background:linear-gradient(#58472f,#30261c);border:3px ridge #8d744c;box-shadow:inset 0 0 0 1px #20170f}
.gertrude-shop-header>img{width:58px;height:58px;object-fit:contain;image-rendering:pixelated;transform:scale(1.25)}
.gertrude-shop-header h4{margin:0;color:#ffd27f;font:900 17px Georgia,serif;text-shadow:2px 2px #1b1008}
.gertrude-shop-header p{margin:4px 0 0!important;color:#d9c7a4!important;font:12px/1.3 Georgia,serif!important;text-shadow:1px 1px #17100a!important}
.gertrude-shop-tabs{display:flex;border-bottom:3px ridge #816a49}
.gertrude-shop-tabs button{margin:0!important;padding:7px 18px!important;background:linear-gradient(#765431,#3e2c1c)!important;border:3px ridge #9b7950!important;border-bottom:0!important;color:#ffe1a4!important;font:900 12px Georgia,serif!important}
.nametag-shop-section{padding:10px;background:#25211b;border:3px inset #1a1713}
.nametag-shop-section h5{margin:0 0 9px;color:#ff9b25;font:900 13px Georgia,serif;letter-spacing:.6px;text-shadow:1px 1px #160d06}
.nametag-empty-state{min-height:135px;display:grid;place-items:center;align-content:center;gap:7px;text-align:center;padding:14px;background:repeating-linear-gradient(135deg,#342d24 0 8px,#302920 8px 16px);border:2px dashed #6f604b;color:#d8c6a3}
.nametag-empty-state strong{color:#ffe0a2;font:900 14px Georgia,serif}
.nametag-empty-state p{margin:0!important;max-width:390px;color:#b9a98e!important;font:12px/1.4 Georgia,serif!important;text-shadow:none!important}
.nametag-preview-placeholder{display:grid;place-items:center;min-width:130px;height:30px;padding:0 18px;background:linear-gradient(#77592f,#3d2c1b);border:3px ridge #a68a5e;border-radius:4px;color:#fff0b7;font:900 11px Arial,sans-serif;text-shadow:1px 1px #1c1007;box-shadow:0 3px 0 #17110b}
.gertrude-shop-message{margin:0!important;text-align:center;color:#b9aa91!important;font:11px Georgia,serif!important;text-shadow:none!important}
.npc-contact-dialogue.interface-open .npc-gertrude-interface{min-height:360px}
@media(max-width:560px){.gertrude-shop-header h4{font-size:14px}.gertrude-shop-header>img{width:46px;height:46px}.nametag-empty-state{min-height:155px}}

/* Party Pete account watchcard shop */
.party-pete-shop{display:flex;flex-direction:column;gap:10px;color:#ead7b0}.party-pete-shop>header{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:12px;padding:9px 13px;border:3px ridge #99713d;background:linear-gradient(#5b3b68,#2b203b)}.party-pete-shop>header img{width:58px;height:64px;object-fit:contain;image-rendering:pixelated}.party-pete-shop h4,.party-pete-confirm h4{margin:0;color:#ffd66f;font:900 18px Georgia,serif}.party-pete-shop header p{margin:3px 0 0!important;color:#ddcbea!important;font:12px Georgia,serif!important;text-shadow:none!important}.party-pete-shop header strong{padding:7px 10px;border:2px ridge #b68c42;background:#21170d;color:#ffd361;white-space:nowrap}.party-pete-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:480px;overflow:auto;padding:5px;background:#17131d;border:3px inset #21182b}.party-pete-item{min-width:0;margin:0!important;padding:5px!important;border:2px outset #74567f!important;background:linear-gradient(#42304b,#251b2b)!important;text-align:left!important;cursor:pointer}.party-pete-item:hover{filter:brightness(1.18);transform:translateY(-2px)}.party-pete-item.owned{border-color:#6e9d5f!important}.party-pete-item.equipped{outline:2px solid #ffd260;box-shadow:0 0 12px #ffd04c88}.party-pete-item>img{display:block;width:100%;aspect-ratio:1.42;object-fit:cover;object-position:center 42%;image-rendering:auto;border:1px solid #171017}.party-pete-item span{display:flex;min-height:42px;flex-direction:column;padding:5px 3px 1px}.party-pete-item b{color:#ffe4a4;font-size:12px}.party-pete-item small{color:#cbb5d4;font-size:9px;margin-top:3px}.party-pete-message{min-height:18px;margin:0!important;text-align:center;color:#d8c29c!important;font:12px Georgia,serif!important;text-shadow:none!important}.party-pete-confirm{text-align:center;color:#ead7b0}.party-pete-confirm h4{margin:2px 0 10px}.party-pete-card-preview{position:relative;width:min(360px,90%);aspect-ratio:1.12;margin:0 auto 12px;overflow:hidden;border:5px ridge #b78d4e;background-image:linear-gradient(0deg,rgba(8,6,9,.1),rgba(8,6,9,.05)),var(--watchcard-bg);background-size:cover;background-position:center 42%;box-shadow:0 8px 22px #000a}.party-pete-card-preview>img{position:absolute;z-index:1;left:50%;bottom:-9%;width:73%;height:90%;transform:translateX(-50%);object-fit:contain;object-position:center bottom;filter:drop-shadow(0 4px 2px #0008)}.party-pete-card-preview>span{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:18px 8px 8px;background:linear-gradient(transparent,#09070be8);display:flex;flex-direction:column}.party-pete-card-preview small{color:#ffd463;font-size:9px}.party-pete-card-preview b{color:white;font-size:17px}.party-pete-confirm>p{margin:9px!important;font-size:15px!important;text-shadow:none!important}.party-pete-confirm>div:last-child{display:flex;justify-content:center;gap:9px}.party-pete-confirm button{margin:0!important}.party-pete-confirm button:disabled{opacity:.55;cursor:not-allowed}
.watchcard-bank-slot .bank-item-art{width:100%;height:64px;object-fit:cover;object-position:center 42%;image-rendering:auto;border:1px solid #79572d}.watchcard-bank-slot .bank-watchcard-equip{display:block;width:100%;margin-top:7px;padding:7px 8px;border:2px solid #a97a35;background:#342414;color:#ffe6a5;font-weight:900;cursor:pointer}.watchcard-bank-slot .bank-watchcard-equip:hover{background:#5a3c1d}
@media(max-width:850px){.party-pete-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:590px){.party-pete-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-pete-shop>header{grid-template-columns:48px 1fr}.party-pete-shop>header img{width:44px}.party-pete-shop>header strong{grid-column:1/-1;text-align:center}}

/* Purchased backdrop occupies the portrait panel behind the animated avatar. */
.qm-watcher-profile-card.has-watchcard-background .qm-watcher-profile-top{position:relative;min-height:178px;align-items:flex-end;overflow:hidden;background-image:linear-gradient(0deg,#070a11e8 0,#070a1120 58%),var(--watchcard-profile-bg);background-size:cover;background-position:center 42%;border-bottom:2px solid #d2a846;padding:9px}.qm-watcher-profile-card.has-watchcard-background .qm-watcher-avatar{align-self:stretch;width:132px;height:166px;background:transparent!important;overflow:hidden}.qm-watcher-profile-card.has-watchcard-background .qm-watcher-avatar img{width:100%;height:100%;max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 4px 2px #000b)}.qm-watcher-profile-card.has-watchcard-background .qm-watcher-profile-top>div:last-child{position:relative;z-index:2;padding:8px;background:#080b12bf;border-left:2px solid #d0a343}.qm-watcher-profile-details{display:contents}

/* Gertrude uses a square, tightly cropped portrait, so keep her head at the same visual scale as Grace. */
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker:not(.player-speaking) img[src*="npc-gertrude"]{
  width:118px!important;
  height:158px!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
}
@media(max-width:700px){
  .npc-contact-dialog.dialogue-mode .npc-dialogue-speaker:not(.player-speaking) img[src*="npc-gertrude"]{
    width:92px!important;
    height:126px!important;
  }
}

/* Gertrude name-tag stock */
.npc-contact-card img[src*="npc-gertrude"]{transform:none!important;transform-origin:center bottom!important}
.npc-contact-dialog.dialogue-mode .npc-dialogue-speaker:not(.player-speaking) img[src*="npc-gertrude"]{
  width:110px!important;height:145px!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important;
}
.gertrude-shop-header>img{width:58px!important;height:72px!important;object-fit:contain!important;object-position:center bottom!important;transform:none!important}
.gertrude-gp-balance{margin-left:auto;min-width:92px;padding:6px 10px;text-align:center;background:#1c1712;border:2px inset #6e593e;box-sizing:border-box}
.gertrude-gp-balance strong{display:block;color:#ffe17d;font:900 15px Georgia,serif;text-shadow:1px 1px #140d07}
.gertrude-gp-balance small{display:block;color:#c8b692;font:900 9px Georgia,serif;letter-spacing:1px}
.nametag-shop-section{min-height:0;overflow:hidden}
.nametag-shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:360px;overflow-y:auto;padding-right:4px}
.nametag-shop-item{display:flex;flex-direction:column;align-items:stretch;gap:5px;min-width:0;padding:7px;background:linear-gradient(#443a2f,#27211b);border:3px ridge #79664c;color:#ead7b0;cursor:pointer;box-sizing:border-box}
.nametag-shop-item:hover:not(:disabled){filter:brightness(1.18)}
.nametag-shop-item.owned{background:linear-gradient(#32432d,#1f2c1c);border-color:#70865c;cursor:default}
.nametag-shop-art{display:grid;place-items:center;height:54px;padding:2px;background:#121212;border:1px solid #665742;overflow:hidden}
.nametag-shop-art img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.nametag-shop-copy{display:flex;justify-content:space-between;gap:5px;align-items:baseline;min-width:0}
.nametag-shop-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffe1a4;font:900 11px Georgia,serif}
.nametag-shop-copy small{flex:none;color:#b9a98e;font:8px Georgia,serif}
.nametag-shop-cost{display:block;padding:4px;text-align:center;background:#23190f;border:1px solid #82683e;color:#ffd35a;font:900 10px Georgia,serif}
.nametag-shop-cost.not-enough{color:#d96d62}
@media(max-width:760px){.nametag-shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gertrude-gp-balance{min-width:74px}}
@media(max-width:500px){.nametag-shop-grid{grid-template-columns:1fr}.gertrude-shop-header{align-items:flex-start;flex-wrap:wrap}.gertrude-gp-balance{margin-left:0}}


/* Improved Gertrude name-tag gallery and purchase confirmation */
.nametag-shop-grid{grid-template-columns:repeat(3,minmax(245px,1fr));gap:14px;padding:8px 8px 12px;align-items:stretch}
.nametag-shop-item{position:relative;min-height:126px;padding:9px 10px 8px;background:linear-gradient(180deg,#42382d,#211c17);border:2px solid #a27e45;box-shadow:inset 0 0 0 2px #17130f,0 2px 5px #0008;transition:filter .15s ease,transform .15s ease,box-shadow .15s ease}
.nametag-shop-item:hover{filter:brightness(1.12);transform:translateY(-2px);box-shadow:inset 0 0 0 2px #17130f,0 0 12px #f5a623aa,0 5px 8px #000b}
.nametag-shop-item.owned{cursor:pointer}
.nametag-shop-art{height:72px;padding:0;background:transparent;border:0;overflow:visible}
.nametag-shop-art img{width:100%;height:72px;object-fit:fill;filter:drop-shadow(0 2px 2px #000b)}
.nametag-shop-copy{margin-top:2px;padding:0 2px}
.nametag-shop-copy b{font-size:11px}
.nametag-shop-cost{margin-top:auto}
.nametag-confirm-screen{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:360px}
.nametag-confirm-preview{display:grid;place-items:center;min-height:145px;padding:20px;background:radial-gradient(ellipse at center,#5a4933 0,#2b241d 52%,#17130f 100%);border:3px ridge #a27e45;box-shadow:inset 0 0 20px #000b,0 0 14px #f4a32355}
.nametag-confirm-preview img{display:block;width:min(620px,95%);max-height:125px;object-fit:contain;filter:drop-shadow(0 5px 5px #000c);image-rendering:pixelated}
.nametag-confirm-screen>h5{margin:0;text-align:center;color:#ffe0a2;font:900 18px Georgia,serif;text-shadow:1px 2px #000}
.nametag-confirm-price{margin:0!important;text-align:center;color:#ffd35a!important;font:900 15px Georgia,serif!important;text-shadow:1px 1px #000!important}
.nametag-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}
.nametag-confirm-actions button{min-height:42px;border:3px ridge #a27e45;background:linear-gradient(#68451f,#38220f);color:#ffe3a7;font:900 12px Georgia,serif;cursor:pointer;text-shadow:1px 1px #000}
.nametag-confirm-actions button:hover:not(:disabled){filter:brightness(1.25);box-shadow:0 0 10px #f5a62388}
.nametag-confirm-actions button:disabled{filter:grayscale(.7);opacity:.65;cursor:not-allowed}
.nametag-confirm-no{background:linear-gradient(#4b443c,#29241f)!important}
@media(max-width:900px){.nametag-shop-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}
@media(max-width:560px){.nametag-shop-grid{grid-template-columns:1fr}.nametag-confirm-actions{grid-template-columns:1fr}}

/* Gertrude shop: compact OSRS-style confirmation controls */
.nametag-confirm-actions{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:8px}
.nametag-confirm-actions button{min-width:92px;min-height:42px;padding:7px 13px;border:3px ridge #776d5c;background:linear-gradient(#2d2b27,#12110f);font:700 13px "Trebuchet MS",Arial,sans-serif;letter-spacing:.2px;cursor:pointer;box-shadow:inset 0 0 0 2px #080807,0 3px 0 #090806;text-shadow:1px 1px 0 #000}
.nametag-confirm-actions button:hover:not(:disabled){filter:brightness(1.25);transform:translateY(-1px)}
.nametag-confirm-yes{color:#58ff43!important}
.nametag-confirm-no{color:#ff3b31!important;background:linear-gradient(#2d2b27,#12110f)!important}
.nametag-confirm-actions button:disabled{color:#a29b8e!important;opacity:.7;filter:grayscale(.65);cursor:not-allowed}
@media(max-width:560px){.nametag-confirm-actions{flex-direction:row}.nametag-confirm-actions button{min-width:88px}}

/* Pet cosmetics menu */
.pet-cosmetics-open{display:flex;align-items:center;gap:12px;width:100%;margin:0 0 12px;padding:10px 14px;border:2px solid #c5944d;box-shadow:inset 0 0 0 2px #4c3218,0 2px 0 #090604;background:linear-gradient(#5a3b20,#2d1d11);color:#ffd889;text-align:left;cursor:pointer}
.pet-cosmetics-open:hover{filter:brightness(1.18);box-shadow:inset 0 0 0 2px #765129,0 0 10px rgba(255,181,71,.35)}
.pet-cosmetics-open img{width:42px;height:32px;object-fit:contain;image-rendering:pixelated}
.pet-cosmetics-open span{display:flex;flex-direction:column}.pet-cosmetics-open b{font-size:15px}.pet-cosmetics-open small{color:#d2c09b;margin-top:2px}
.pet-cosmetics-dialog{width:min(1020px,calc(100% - 24px));max-height:90vh;overflow:auto;background:linear-gradient(145deg,#2b2116,#100c08)!important}
.cosmetics-heading>img{width:58px;height:42px;object-fit:contain;image-rendering:pixelated}
.cosmetics-active-pet{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 16px;padding:10px 14px;border:2px solid #75552e;background:#1b140d;color:#ead7ae}
.cosmetics-active-pet div{display:flex;flex-direction:column}.cosmetics-active-pet small{color:#aa9877}.cosmetics-active-pet strong{display:flex;align-items:center;gap:9px;color:#ffd26d}
.cosmetics-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:14px 0 7px;padding:7px 10px;border-top:2px solid #9d6f37;border-bottom:1px solid #5a4125;background:#251b11;color:#ffca66}
.cosmetics-section-title small{color:#bba989}
.cosmetics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.cosmetic-nametag-card,.cosmetic-equipment-card{position:relative;min-width:0;border:2px solid #8c6638;background:linear-gradient(#352719,#1a130d);color:#ecd6a9;padding:9px;cursor:pointer;box-shadow:inset 0 0 0 1px #1b1209;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}
.cosmetic-nametag-card:hover,.cosmetic-equipment-card:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:inset 0 0 0 1px #7d562d,0 0 10px rgba(255,179,66,.3)}
.cosmetic-nametag-card.equipped,.cosmetic-equipment-card.equipped{border-color:#e8bd62;box-shadow:inset 0 0 0 2px #765019,0 0 12px rgba(255,191,73,.42)}
.cosmetic-nametag-card{display:grid;grid-template-columns:1fr auto;grid-template-areas:'art art' 'name action' 'desc action';text-align:left;align-items:center}
.cosmetic-nametag-art{grid-area:art;height:72px;display:flex;align-items:center;justify-content:center;margin-bottom:5px;background:radial-gradient(ellipse at center,rgba(112,83,47,.35),transparent 68%);overflow:visible}
.cosmetic-nametag-art img{display:block;max-width:100%;max-height:68px;object-fit:contain;image-rendering:pixelated}
.cosmetic-nametag-card b{grid-area:name;color:#ffe0a2}.cosmetic-nametag-card small{grid-area:desc;color:#b9a483}.cosmetic-nametag-card>span:last-child{grid-area:action;margin-left:8px;padding:6px 8px;border:1px solid #b88a45;background:#4a3219;color:#ffd781;font-weight:900;font-size:11px}
.cosmetic-equipment-card{display:grid;grid-template-columns:64px 1fr auto;grid-template-rows:auto auto;column-gap:10px;text-align:left;align-items:center}
.cosmetic-equipment-card img{grid-row:1/3;width:58px;height:58px;object-fit:contain;image-rendering:pixelated}.cosmetic-equipment-card b{color:#ffe0a2}.cosmetic-equipment-card small{color:#b9a483}.cosmetic-equipment-card span{grid-column:3;grid-row:1/3;padding:6px 8px;border:1px solid #b88a45;background:#4a3219;color:#ffd781;font-weight:900;font-size:11px}
.cosmetics-empty{grid-column:1/-1;padding:24px;border:1px dashed #735630;background:#17110c;color:#b8a587;text-align:center}
@media(max-width:760px){.cosmetics-grid{grid-template-columns:1fr}.cosmetics-section-title{align-items:flex-start;flex-direction:column}.cosmetics-active-pet{align-items:flex-start;flex-direction:column}}

/* Equipped pet name tags inside fullscreen Quidditch Mode. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag{
  bottom:calc(100% + 6px)!important;
  filter:drop-shadow(0 2px 2px #000d)!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>.qm-custom-nametag{
  position:relative!important;
  display:block!important;
  width:150px!important;
  height:42px!important;
  margin:0 auto -5px!important;
  z-index:1!important;
  overflow:visible!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>.qm-custom-nametag>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>.qm-custom-nametag>b{
  position:absolute!important;
  left:var(--qm-tag-left,14%)!important;
  right:var(--qm-tag-right,10%)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:block!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  text-align:center!important;
  color:var(--qm-tag-text,#fff)!important;
  font-family:var(--qm-tag-font,Georgia,serif)!important;
  font-size:var(--qm-tag-size,8px)!important;
  font-weight:var(--qm-tag-weight,900)!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-shadow:
    -1px -1px 0 var(--qm-tag-outline,#000),1px -1px 0 var(--qm-tag-outline,#000),
    -1px 1px 0 var(--qm-tag-outline,#000),1px 1px 0 var(--qm-tag-outline,#000),
    0 1px 2px #000!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>small{
  position:relative!important;
  z-index:2!important;
  margin-top:0!important;
}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>.qm-custom-nametag{width:122px!important;height:35px!important}
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag>.qm-custom-nametag>b{font-size:calc(var(--qm-tag-size,8px) * .82)!important}
}

/* Slightly reduce the two naturally oversized Quidditch frames. Text sizing stays unchanged. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_venomcore"]>.qm-custom-nametag,
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_combat"]>.qm-custom-nametag{
  width:143px!important;
  height:40px!important;
}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_venomcore"]>.qm-custom-nametag,
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_combat"]>.qm-custom-nametag{
    width:116px!important;
    height:33px!important;
  }
}


/* Dreamies uses a playful sweeping script treatment inspired by the treat branding. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_dreamies"]>.qm-custom-nametag{
  width:143px!important;
  height:40px!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_dreamies"]>.qm-custom-nametag>b{
  font-style:italic!important;
  font-stretch:condensed!important;
  letter-spacing:-.35px!important;
  transform:translateY(-52%) skewX(-7deg)!important;
  text-shadow:
    -1px -1px 0 var(--qm-tag-outline,#fff),1px -1px 0 var(--qm-tag-outline,#fff),
    -1px 1px 0 var(--qm-tag-outline,#fff),1px 1px 0 var(--qm-tag-outline,#fff),
    -2px 0 0 var(--qm-tag-outline,#fff),2px 0 0 var(--qm-tag-outline,#fff),
    0 1px 1px #0005!important;
}

/* Venomcore is intentionally another 5% smaller than the previous adjustment. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_venomcore"]>.qm-custom-nametag{
  width:136px!important;
  height:38px!important;
}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_dreamies"]>.qm-custom-nametag{
    width:116px!important;
    height:33px!important;
  }
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_venomcore"]>.qm-custom-nametag{
    width:110px!important;
    height:31px!important;
  }
}

/* Final Quidditch name-tag alignment refinements. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_dreamies"]>.qm-custom-nametag>b{
  font-size:calc(var(--qm-tag-size,8px) * 1.06)!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_ancient_parchment"]>.qm-custom-nametag>b{
  font-size:calc(var(--qm-tag-size,8px) * 1.10)!important;
  transform:translateY(-42%)!important;
}


/* Druid's Embrace: keep the pet name centred in the open vine panel. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_druids_embrace"]>.qm-custom-nametag>b{
  left:18%!important;
  right:18%!important;
  transform:translateY(-49%)!important;
}

/* Dreamies scoring special: a tiny tag shimmer and short treat burst. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_dreamies"].dreamies-score-pop>.qm-custom-nametag{
  animation:qmDreamiesTagPop .48s ease-out both;
}
@keyframes qmDreamiesTagPop{
  0%,100%{filter:none;transform:scale(1)}
  28%{filter:brightness(1.18) drop-shadow(0 0 3px #ffe578);transform:scale(1.025)}
  60%{filter:brightness(1.06);transform:scale(.995)}
}
#quidditchModePitch .qm-dreamies-treat{
  position:absolute;
  z-index:95;
  width:10px;
  height:10px;
  object-fit:contain;
  image-rendering:pixelated;
  pointer-events:none;
  transform:translate(-50%,-50%) scale(.45) rotate(0deg);
  animation:qmDreamiesTreatBurst .72s cubic-bezier(.12,.72,.28,1) forwards;
  filter:drop-shadow(0 1px 1px #000b);
}
@keyframes qmDreamiesTreatBurst{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(0deg)}
  15%{opacity:1}
  72%{opacity:1;transform:translate(calc(-50% + var(--dreamies-x)),calc(-50% + var(--dreamies-y))) scale(.72) rotate(var(--dreamies-r))}
  100%{opacity:0;transform:translate(calc(-50% + var(--dreamies-x)),calc(-50% + var(--dreamies-y) + 8px)) scale(.45) rotate(var(--dreamies-r))}
}

/* CatAsthma-only Quidditch name-tag special tester */
.qm-admin-special-tester{margin-top:7px;border:2px solid #bd3434;background:linear-gradient(180deg,#321010,#170707);box-shadow:0 0 0 2px #080303,0 0 15px #e21d1d66,inset 0 0 14px #000;color:#f5d7b0;padding:6px}
.qm-admin-special-tester.hidden{display:none!important}
.qm-admin-special-tester header{display:flex;justify-content:space-between;align-items:center;padding:3px 5px 6px;font-size:8px;letter-spacing:.7px;color:#ff8383;text-shadow:1px 1px #000}
.qm-admin-special-tester header b{color:#ffd9a0}
.qm-admin-special-tester button{width:100%;display:flex;flex-direction:column;align-items:center;gap:2px;border:1px solid #e25445;background:linear-gradient(#6b211b,#2a0907);box-shadow:inset 0 0 0 1px #a64a35,0 2px 0 #090000;color:#fff0ca;padding:7px 8px;cursor:pointer;font-family:Georgia,serif;font-weight:900;text-shadow:1px 1px #000}
.qm-admin-special-tester button:hover{filter:brightness(1.22);box-shadow:inset 0 0 0 1px #ef7967,0 0 10px #ff3f2f88,0 2px 0 #090000}
.qm-admin-special-tester button:active{transform:translateY(1px)}
.qm-admin-special-tester button small{font-size:8px;color:#eabf9f;font-weight:700}
.qm-admin-special-tester button+button{margin-top:4px}

/* Compact CatAsthma admin special tester beneath commentary */
.qm-commentator-sidebar{
  grid-template-rows:minmax(240px,38vh) auto 190px auto!important;
}
.qm-admin-special-tester{
  margin-top:0!important;
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
  border:1px solid #8c6a2d!important;
  background:linear-gradient(180deg,#211b12,#120f0a)!important;
  box-shadow:0 0 0 1px #050403,inset 0 0 8px #000!important;
  color:#ead6a7!important;
  padding:5px!important;
}
.qm-admin-special-tester header{
  padding:1px 3px 4px!important;
  font-size:7px!important;
  color:#d7b45c!important;
}
.qm-admin-special-tester header b{color:#f0d892!important}
.qm-admin-special-tester button{
  min-height:30px!important;
  padding:5px 7px!important;
  border:1px solid #a67c2e!important;
  background:linear-gradient(#4b3a1d,#241b0d)!important;
  box-shadow:inset 0 0 0 1px #6f5526,0 2px 0 #050403!important;
  color:#fff0bd!important;
}
.qm-admin-special-tester button:hover{
  filter:brightness(1.18)!important;
  box-shadow:inset 0 0 0 1px #d0a84c,0 0 8px #d39a3455,0 2px 0 #050403!important;
}
@media(max-width:1150px){.qm-commentator-sidebar{grid-template-rows:minmax(210px,34vh) auto 158px auto!important}}
@media(max-width:820px){.qm-commentator-sidebar{grid-template-rows:280px auto 155px auto!important}}


/* Dreamies premium scoring effect: larger treats, star glints and a warm burst ring. */
#quidditchModePitch .qm-dreamies-treat{
  width:23px!important;
  height:23px!important;
  z-index:110!important;
  transform:translate(-50%,-50%) scale(.5) rotate(0deg)!important;
  animation:qmDreamiesTreatBurstDeluxe var(--dreamies-duration,1050ms) cubic-bezier(.18,.68,.28,1) forwards!important;
  animation-delay:var(--dreamies-delay,0ms)!important;
  filter:drop-shadow(0 2px 2px #0009)!important;
  transform-origin:50% 50%;
}
@keyframes qmDreamiesTreatBurstDeluxe{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.42) rotate(0deg);filter:brightness(1.18) drop-shadow(0 1px 1px #0008)}
  9%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(35deg)}
  58%{opacity:1;transform:translate(calc(-50% + var(--dreamies-x-mid)),calc(-50% + var(--dreamies-y-mid))) scale(1) rotate(var(--dreamies-spin-mid));filter:brightness(1.05) drop-shadow(0 2px 2px #0009)}
  82%{opacity:1}
  100%{opacity:0;transform:translate(calc(-50% + var(--dreamies-x)),calc(-50% + var(--dreamies-y))) scale(.76) rotate(var(--dreamies-spin));filter:brightness(.95) drop-shadow(0 2px 2px #0008)}
}
#quidditchModePitch .qm-dreamies-flash{
  position:absolute;z-index:108;width:12px;height:12px;pointer-events:none;
  transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,#fff 0 8%,#fff6a8 9% 24%,#ffba35aa 25% 44%,transparent 45%);
  box-shadow:0 0 8px #fff5a7,0 0 18px #ffb11f;
  animation:qmDreamiesFlash .82s ease-out forwards;
}
#quidditchModePitch .qm-dreamies-flash:before,
#quidditchModePitch .qm-dreamies-flash:after{
  content:"";position:absolute;left:50%;top:50%;background:#fff9c8;transform:translate(-50%,-50%);box-shadow:0 0 5px #ffd54c;
}
#quidditchModePitch .qm-dreamies-flash:before{width:58px;height:2px}
#quidditchModePitch .qm-dreamies-flash:after{width:2px;height:58px}
@keyframes qmDreamiesFlash{
  0%{opacity:0;transform:translate(-50%,-50%) scale(.15) rotate(0)}
  18%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(12deg)}
  55%{opacity:.8;transform:translate(-50%,-50%) scale(1.55) rotate(34deg)}
  100%{opacity:0;transform:translate(-50%,-50%) scale(2.15) rotate(58deg)}
}
#quidditchModePitch .pet-label[data-nametag="nametag_dreamies"].dreamies-score-pop>.qm-custom-nametag{
  animation:qmDreamiesTagPopDeluxe .72s ease-out both!important;
}
@keyframes qmDreamiesTagPopDeluxe{
  0%,100%{filter:none;transform:scale(1)}
  20%{filter:brightness(1.32) saturate(1.18) drop-shadow(0 0 7px #fff4a0);transform:scale(1.055) rotate(-1deg)}
  44%{filter:brightness(1.14) drop-shadow(0 0 4px #ffc83e);transform:scale(.985) rotate(1deg)}
  68%{filter:brightness(1.08);transform:scale(1.015)}
}

/* Admin special tester now lives below the All-Time Records panel. */
.qm-broadcast-sidebar .qm-admin-special-tester{
  margin-top:10px!important;
  width:100%!important;
  box-sizing:border-box!important;
  position:relative!important;
  z-index:4!important;
}
.qm-commentator-sidebar{grid-template-rows:minmax(240px,38vh) auto 190px!important}
@media(max-width:1150px){.qm-commentator-sidebar{grid-template-rows:minmax(210px,34vh) auto 158px!important}}
@media(max-width:820px){.qm-commentator-sidebar{grid-template-rows:280px auto 155px!important}}

/* Dreamies scoring effect cleanup: no giant glimmer, just 4–5 clear flying treats. */
#quidditchModePitch .qm-dreamies-flash{display:none!important}
#quidditchModePitch .qm-dreamies-treat.qm-dreamies-treat-clean{
  position:absolute!important;
  z-index:120!important;
  width:25px!important;
  height:25px!important;
  object-fit:fill!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))!important;
  animation:none!important;
  will-change:transform,opacity;
  transform-origin:50% 50%;
}
#quidditchModePitch .pet-label[data-nametag="nametag_dreamies"].dreamies-score-pop>.qm-custom-nametag{
  animation:qmDreamiesTagNudge .34s ease-out both!important;
}
@keyframes qmDreamiesTagNudge{
  0%,100%{filter:none;transform:scale(1)}
  42%{filter:brightness(1.05);transform:scale(1.018)}
}

/* Active Watch Party cards open player summaries on hover. */
#qmWatcherAccounts .qm-watcher-namecard[data-viewer-name]{cursor:help}

/* Rich hover profile for active Quidditch Watch Party viewers. */
.qm-watcher-profile-card{
  position:fixed;
  z-index:100000;
  width:286px;
  padding:10px;
  border:3px solid #8b692e;
  border-radius:8px;
  background:linear-gradient(145deg,#2b2418 0%,#15120d 58%,#0d0b08 100%);
  box-shadow:0 10px 28px rgba(0,0,0,.62),inset 0 0 0 1px rgba(255,222,141,.18);
  color:#f4dfaa;
  font-family:Georgia,'Times New Roman',serif;
  pointer-events:none;
  opacity:0;
  transform:translateY(5px) scale(.97);
  transition:opacity .14s ease,transform .14s ease;
}
.qm-watcher-profile-card.is-visible{opacity:1;transform:translateY(0) scale(1)}
.qm-watcher-profile-top{display:grid;grid-template-columns:86px 1fr;gap:10px;align-items:center;padding-bottom:9px;border-bottom:1px solid rgba(208,167,75,.45)}
.qm-watcher-avatar{width:86px;height:86px;overflow:hidden;border:0;background:transparent;box-shadow:none}
.qm-watcher-avatar img{width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:none;image-rendering:pixelated}
.qm-watcher-profile-top small,.qm-watcher-profile-stat small,.qm-watcher-profile-pet small{display:block;color:#b89b62;font-size:9px;letter-spacing:.9px;font-weight:700}
.qm-watcher-profile-top strong{display:block;color:#ffd56b;font-size:19px;line-height:1.08;text-shadow:1px 1px #000}
.qm-watcher-profile-top span{display:block;margin-top:4px;color:#ded0aa;font-size:12px}
/* Never crop long account names in the Watch Party hover profile. */
.qm-watcher-profile-top>div:last-child{min-width:0}
.qm-watcher-profile-top strong{max-width:100%;overflow-wrap:anywhere;word-break:break-word;font-size:clamp(13px,1.45vw,19px)}

/* These 15 new frames have slightly different source proportions. Stretching
   only their transparent artwork to the standard tag box keeps text aligned
   with its intended inset in both Quidditch Mode and the pet rooms. */
#quidditchModePitch .pet-label:is([data-nametag="nametag_gilded_scroll"],[data-nametag="nametag_iron_prospect"],[data-nametag="nametag_lilac_unicorn"],[data-nametag="nametag_verdant_grove"],[data-nametag="nametag_midnight_familiar"],[data-nametag="nametag_glacial_sigil"],[data-nametag="nametag_crimson_decree"],[data-nametag="nametag_coastal_catch"],[data-nametag="nametag_imperial_onyx"],[data-nametag="nametag_runed_steel"],[data-nametag="nametag_prism_ward"],[data-nametag="nametag_nimbus_broom"],[data-nametag="nametag_garden_window"],[data-nametag="nametag_bakery_window"],[data-nametag="nametag_tea_biscuits"]) .qm-custom-nametag>img,
.pet-room .roaming-pet .pet-label:is([data-nametag="nametag_gilded_scroll"],[data-nametag="nametag_iron_prospect"],[data-nametag="nametag_lilac_unicorn"],[data-nametag="nametag_verdant_grove"],[data-nametag="nametag_midnight_familiar"],[data-nametag="nametag_glacial_sigil"],[data-nametag="nametag_crimson_decree"],[data-nametag="nametag_coastal_catch"],[data-nametag="nametag_imperial_onyx"],[data-nametag="nametag_runed_steel"],[data-nametag="nametag_prism_ward"],[data-nametag="nametag_nimbus_broom"],[data-nametag="nametag_garden_window"],[data-nametag="nametag_bakery_window"],[data-nametag="nametag_tea_biscuits"]) .qm-custom-nametag>img{object-fit:fill!important}
.qm-watcher-profile-stat{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;margin-top:9px;padding:7px 8px;border:1px solid rgba(174,132,57,.48);border-radius:5px;background:rgba(255,229,158,.045)}
.qm-watcher-profile-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#17120b;font-size:17px}
.qm-watcher-profile-skill-icon{width:30px;height:30px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 1px rgba(0,0,0,.65))}
.qm-watcher-profile-stat b{display:block;color:#fff0bd;font-size:15px}
.qm-watcher-profile-pet{display:grid;grid-template-columns:62px 1fr;gap:9px;align-items:center;margin-top:8px;padding:8px;border:1px solid rgba(174,132,57,.48);border-radius:5px;background:linear-gradient(90deg,rgba(78,108,63,.16),rgba(255,255,255,.025))}
.qm-watcher-profile-pet>img{width:58px;height:58px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 2px rgba(0,0,0,.7))}
.qm-watcher-profile-pet b{display:block;color:#e9f4cb;font-size:15px;line-height:1.1}
.qm-watcher-profile-pet span{display:block;margin-top:3px;color:#d4bd7f;font-size:12px}
#qmWatcherAccounts .qm-watcher-namecard[data-viewer-name]{outline:none}
#qmWatcherAccounts .qm-watcher-namecard[data-viewer-name]:hover{filter:brightness(1.13) drop-shadow(0 0 5px rgba(255,211,103,.42));transform:translateY(-1px)}

/* The actual Watch Party viewer tiles: purchased room art sits directly behind
   the shoulder-up talking avatar, with the nameplate and live dot over it. */
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts .qm-watcher-watchcard{
  position:relative!important;
  display:block!important;
  width:100%!important;
  aspect-ratio:1/1!important;
  min-height:0!important;
  overflow:hidden!important;
  border:2px solid #8a6931!important;
  border-radius:4px!important;
  background-image:linear-gradient(0deg,rgba(7,10,15,.98) 0%,rgba(7,10,15,.5) 28%,rgba(7,10,15,.05) 64%),var(--watchcard-bg)!important;
  background-size:cover!important;
  background-position:center 42%!important;
  box-shadow:inset 0 0 0 1px #25180c,0 2px 5px #000b!important;
  line-height:normal!important;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts .qm-watcher-watchcard .qm-watcher-card-avatar{
  position:absolute!important;
  display:block!important;
  z-index:1!important;
  left:50%!important;
  bottom:8%!important;
  width:108%!important;
  height:94%!important;
  max-width:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:translateX(-50%)!important;
  image-rendering:pixelated!important;
  filter:drop-shadow(0 3px 2px #000c)!important;
}
.qm-watcher-watchcard b{
  position:absolute;z-index:3;left:0;right:0;bottom:0;
  display:block;overflow:hidden;padding:10px 3px 3px;
  background:linear-gradient(transparent,rgba(5,7,10,.96) 48%);
  color:#fff0bd;text-align:center;text-overflow:ellipsis;white-space:nowrap;
  font:800 clamp(7px,.63vw,10px)/1.1 Georgia,serif;text-shadow:1px 1px 1px #000;
}
.qm-watcher-watchcard .qm-watcher-online{
  position:absolute;z-index:4;right:4px;top:4px;width:7px;height:7px;border-radius:50%;
  border:1px solid #e4ffd4;background:#51e878;box-shadow:0 0 5px #42e86d;
}
.qm-broadcast-sidebar .qm-career-panel .qm-watcher-accounts .qm-watcher-watchcard:hover{filter:brightness(1.04)!important;transform:none!important}

/* Give the Watch Party footer a full second row: three more avatar cards fit
   inside the All-Time Records panel instead of being clipped at its bottom. */
@media (min-width:821px){
  .qm-broadcast-sidebar .qm-career-panel{
    grid-template-rows:auto 116px 116px 116px 280px!important;
  }
  .qm-broadcast-sidebar .qm-career-panel .qm-watch-party{
    height:280px!important;
    min-height:280px!important;
  }
}


/* Consistent NPC Contact portraits and shared equipped name tags in homepage pet rooms. */
.npc-contact-card .npc-contact-portrait{width:76px;height:86px;align-items:flex-end;justify-content:center}
.npc-contact-card .npc-contact-portrait img{display:block;width:72px!important;height:82px!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center bottom!important}

/* Only cosmetic-equipped pets use the artwork-only label. Default pets retain the original pet/owner box. */
.pet-room .roaming-pet .pet-label.has-custom-nametag{
  bottom:70px!important;
  min-width:0!important;
  width:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 2px 2px #000d)!important;
  overflow:visible!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag{
  position:relative!important;
  display:block!important;
  width:150px!important;
  height:42px!important;
  margin:0!important;
  overflow:visible!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
  filter:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>b{
  position:absolute!important;
  left:var(--qm-tag-left,14%)!important;
  right:var(--qm-tag-right,10%)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  display:block!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  text-align:center!important;
  color:var(--qm-tag-text,#fff)!important;
  font-family:var(--qm-tag-font,Georgia,serif)!important;
  font-size:var(--qm-tag-size,8px)!important;
  font-weight:var(--qm-tag-weight,900)!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-shadow:-1px -1px 0 var(--qm-tag-outline,#000),1px -1px 0 var(--qm-tag-outline,#000),-1px 1px 0 var(--qm-tag-outline,#000),1px 1px 0 var(--qm-tag-outline,#000),0 1px 2px #000!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>small{display:none!important}
@media(max-width:700px){
  .pet-room .roaming-pet .pet-label.has-custom-nametag{bottom:57px!important;transform:translateX(-50%) scale(.82)!important}
}

/* Pet-room custom nametag polish: artwork only, locked text, closer to pet. */
.pet-room .pet-room-scene .roaming-pet .pet-label.has-custom-nametag,
.pet-room .pet-room-scene[data-room] .roaming-pet .pet-label.has-custom-nametag,
.pet-room .roaming-pet.pet-in-kart .pet-label.has-custom-nametag{
  bottom:62px!important;
  min-width:0!important;
  max-width:none!important;
  width:150px!important;
  height:42px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
  animation:none!important;
  transition:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag::before,
.pet-room .roaming-pet .pet-label.has-custom-nametag::after,
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag::before,
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag::after{
  content:none!important;
  display:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag{
  position:absolute!important;
  inset:0!important;
  width:150px!important;
  height:42px!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  animation:none!important;
  transition:none!important;
  transform:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>b{
  top:21px!important;
  transform:translateY(-50%)!important;
  animation:none!important;
  transition:none!important;
  will-change:auto!important;
}
@media(max-width:700px){
  .pet-room .pet-room-scene .roaming-pet .pet-label.has-custom-nametag,
  .pet-room .pet-room-scene[data-room] .roaming-pet .pet-label.has-custom-nametag,
  .pet-room .roaming-pet.pet-in-kart .pet-label.has-custom-nametag{
    bottom:52px!important;
    transform:translateX(-50%) scale(.82)!important;
  }
}

/* Final pet-room nametag alignment: centred above the pet and kept as one static unit. */
.pet-room .pet-room-scene .roaming-pet .pet-label.has-custom-nametag,
.pet-room .pet-room-scene[data-room] .roaming-pet .pet-label.has-custom-nametag,
.pet-room .roaming-pet.pet-in-kart .pet-label.has-custom-nametag{
  left:50%!important;
  right:auto!important;
  bottom:45px!important;
  transform:translateX(-50%)!important;
  transform-origin:center center!important;
  animation:none!important;
  transition:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag,
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>img,
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>b{
  animation:none!important;
  transition:none!important;
}
.pet-room .roaming-pet .pet-label.has-custom-nametag>.qm-custom-nametag>img{
  transform:none!important;
}
@media(max-width:700px){
  .pet-room .pet-room-scene .roaming-pet .pet-label.has-custom-nametag,
  .pet-room .pet-room-scene[data-room] .roaming-pet .pet-label.has-custom-nametag,
  .pet-room .roaming-pet.pet-in-kart .pet-label.has-custom-nametag{
    left:50%!important;
    bottom:39px!important;
    transform:translateX(-50%) scale(.82)!important;
  }
}

/* 2026-08-02 default pet-room label alignment.
   Custom cosmetic nametags are already centred; only move the original
   two-line pet/owner labels slightly left and closer to the pet. */
.pet-room .pet-room-scene .roaming-pet .pet-label:not(.has-custom-nametag),
.pet-room .pet-room-scene[data-room] .roaming-pet .pet-label:not(.has-custom-nametag){
  left:calc(50% - 7px)!important;
  bottom:65px!important;
  transform:translateX(-50%)!important;
}
.pet-room .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label:not(.has-custom-nametag){
  left:calc(50% - 7px)!important;
  bottom:57px!important;
  transform:translateX(-50%)!important;
}
@media(max-width:700px){
  .pet-room .pet-room-scene .roaming-pet .pet-label:not(.has-custom-nametag),
  .pet-room .pet-room-scene[data-room] .roaming-pet .pet-label:not(.has-custom-nametag){
    left:calc(50% - 5px)!important;
    bottom:54px!important;
  }
.pet-room .pet-room-scene[data-room="mario"] .roaming-pet.pet-in-kart .pet-label:not(.has-custom-nametag){
    left:calc(50% - 5px)!important;
    bottom:51px!important;
  }
}

/* Fyrmfire Royal score effect: an anchored 8-frame fire loop behind the tag. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_wyrmfire_royal"]>.qm-custom-nametag>.qm-wyrmfire-score-fire{
  position:absolute!important;
  z-index:0!important;
  inset:auto!important;
  left:50%!important;
  bottom:18px!important;
  width:72px!important;
  height:98px!important;
  max-width:none!important;
  max-height:none!important;
  transform:translateX(-50%)!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
  filter:drop-shadow(0 2px 3px #3a0800aa)!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_wyrmfire_royal"]>.qm-custom-nametag>img:not(.qm-wyrmfire-score-fire){z-index:1!important}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_wyrmfire_royal"]>.qm-custom-nametag>b{z-index:2!important}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_wyrmfire_royal"]>.qm-custom-nametag>.qm-wyrmfire-score-fire{bottom:15px!important;width:58px!important;height:78px!important}
}

/* Tea & Biscuits score effect: the frame is deliberately behind the plate, so
   the plate becomes the tea mug rim while the biscuit drops into it. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_tea_biscuits"]>.qm-custom-nametag>.qm-tea-biscuits-score-dunk{
  position:absolute!important;
  z-index:0!important;
  inset:auto!important;
  left:50%!important;
  bottom:-15px!important;
  width:66px!important;
  height:173px!important;
  max-width:none!important;
  max-height:none!important;
  transform:translateX(-50%)!important;
  object-fit:fill!important;
  object-position:center bottom!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
  filter:drop-shadow(0 2px 2px rgba(54,20,4,.48))!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_tea_biscuits"]>.qm-custom-nametag>img:not(.qm-tea-biscuits-score-dunk){z-index:1!important}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_tea_biscuits"]>.qm-custom-nametag>b{z-index:2!important}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_tea_biscuits"]>.qm-custom-nametag>.qm-tea-biscuits-score-dunk{bottom:-12px!important;width:54px!important;height:141px!important}
}

/* Verdant Grove score effect: the tree grows from behind the tag, with the
   grass line resting at the top of the plaque instead of covering its text. */
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_verdant_grove"]>.qm-custom-nametag>.qm-verdant-grove-score-growth{
  position:absolute!important;
  z-index:0!important;
  inset:auto!important;
  left:50%!important;
  /* Keep the grass line in exactly the same place while reducing the tree. */
  bottom:16px!important;
  width:82px!important;
  height:82px!important;
  max-width:none!important;
  max-height:none!important;
  transform:translateX(-50%)!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  image-rendering:pixelated!important;
  pointer-events:none!important;
  filter:drop-shadow(0 2px 2px rgba(13,53,15,.42))!important;
}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_verdant_grove"]>.qm-custom-nametag>img:not(.qm-verdant-grove-score-growth){z-index:1!important}
#quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_verdant_grove"]>.qm-custom-nametag>b{z-index:2!important}
@media(max-width:850px){
  #quidditchModePitch .qm-pet>.pet-label.has-custom-nametag[data-nametag="nametag_verdant_grove"]>.qm-custom-nametag>.qm-verdant-grove-score-growth{bottom:12px!important;width:65px!important;height:65px!important}
}

/* Homepage tavern lobby: replaces the old desk-character carousel. */
.scene.tavern-scene{min-height:0!important;height:auto!important;width:100%;align-self:start;aspect-ratio:1086 / 1290;background:#0c1121!important;box-shadow:inset 0 0 0 2px #202942,0 8px 18px rgba(0,0,0,.45)!important}
.scene.tavern-scene>.tavern-room,.scene.tavern-scene>.poster,.scene.tavern-scene>.monitor,.scene.tavern-scene>.desk,.scene.tavern-scene>.keyboard,.scene.tavern-scene>.chair,.scene.tavern-scene>.gamer,.scene.tavern-scene>.next-desk-character,.scene.tavern-scene>.level,.scene.tavern-scene>.resource-layer{display:none!important}
.tavern-lobby{position:absolute;inset:0;z-index:2;overflow:hidden;background:#120b07}.tavern-lobby>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;image-rendering:auto;pointer-events:none}.tavern-lobby-base{z-index:0;opacity:1}.tavern-lobby-frame{z-index:1;opacity:0;transition:opacity 760ms cubic-bezier(.33,0,.2,1);will-change:opacity}.tavern-lobby-frame.is-visible{opacity:1}.tavern-lobby-vignette{position:absolute;inset:0;z-index:3;pointer-events:none;box-shadow:inset 0 0 26px rgba(18,8,3,.42)}
@media(max-width:760px){.scene.tavern-scene{min-height:0!important;aspect-ratio:1086 / 1290}}

/* Live tavern guests.  Their transparent sprites sit above the room artwork
   but below the vignette, so they read as part of the same warm scene. */
.tavern-guest-layer{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.tavern-sound-toggle{position:absolute;z-index:5;top:8px;right:8px;width:24px;height:24px;display:grid;place-items:center;padding:0;border:1px solid rgba(255,221,155,.38);border-radius:4px;background:rgba(27,13,7,.48);box-shadow:0 1px 3px rgba(0,0,0,.38);color:#ffe4ae;font:13px/1 sans-serif;opacity:.66;cursor:pointer;transition:opacity .18s ease,background .18s ease,border-color .18s ease}
.tavern-sound-toggle:hover,.tavern-sound-toggle:focus-visible{opacity:1;background:rgba(65,32,14,.74);border-color:rgba(255,225,160,.82);outline:none}
.tavern-sound-toggle[aria-pressed="true"]{opacity:.9;border-color:rgba(255,199,91,.76);background:rgba(75,39,15,.7)}
@media(max-width:760px){.tavern-sound-toggle{top:6px;right:6px;width:22px;height:22px;font-size:12px}}
.tavern-seat-tester{position:absolute;z-index:4;right:7px;bottom:7px;max-width:210px;border:1px solid #d6a440;background:#231408e8;box-shadow:0 0 0 1px #4a2b10,inset 0 0 10px #000;color:#ffdeb0;padding:4px;font:700 7px Georgia,serif;text-align:center;pointer-events:auto}
.tavern-seat-tester.hidden{display:none}
.tavern-seat-tester b{display:block;margin-bottom:3px;color:#ffe196;letter-spacing:.45px}
.tavern-seat-tester div{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.tavern-seat-tester button{border:1px solid #947032;background:#503616;color:#fff0bd;padding:3px 2px;font:700 6px Georgia,serif;cursor:pointer}
.tavern-seat-tester button:hover{background:#8a6027;color:#fff7d4}
.tavern-guest{position:absolute;z-index:1;width:34%;left:var(--guest-x,-20%);top:var(--guest-y,63%);opacity:0;transform:translate(-50%,-50%);transition:left 3200ms linear,top 3200ms linear,opacity 180ms ease;will-change:left,top,opacity}
.tavern-guest.is-present{opacity:1}
.tavern-guest.is-idle{animation:tavern-guest-breathe 2800ms ease-in-out infinite}
.tavern-guest img{display:block;width:100%;height:auto;image-rendering:auto;transform:translate(var(--frame-x,0%),var(--frame-y,0%)) scaleX(var(--guest-facing,1)) scale(var(--frame-scale,1));transform-origin:50% 100%;filter:drop-shadow(0 2px 1px rgba(25,10,3,.35))}
@keyframes tavern-guest-breathe{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 1.5px))}}
@media(max-width:760px){.tavern-guest{width:38%}}


/* Account rename administration */
.admin-account-dialog{width:min(520px,calc(100vw - 28px));border:2px solid #c89432;background:linear-gradient(#21170b,#0e0904);color:#f3dfb1;box-shadow:0 0 0 3px #080500,0 18px 70px #000;padding:22px}
.admin-account-dialog h3{margin:0 38px 8px 0;color:#ffd66c;letter-spacing:1px}
.admin-account-help{font-size:13px;line-height:1.45;color:#d7c59e}
.admin-account-field{display:grid;gap:6px;margin:14px 0;font-weight:900;font-size:12px;letter-spacing:.8px;color:#f0cf7b}
.admin-account-field select,.admin-account-field input{width:100%;box-sizing:border-box;border:1px solid #8d6724;background:#120c05;color:#fff1c5;padding:11px;font:700 15px Georgia,serif}
.admin-account-refresh,.admin-rename-submit{border:1px solid #c89432;background:linear-gradient(#4a3512,#211607);color:#ffe099;font-weight:900;letter-spacing:.8px;padding:10px 13px;cursor:pointer}
.admin-rename-submit{width:100%;margin-top:4px;background:linear-gradient(#6a201b,#2c0907);border-color:#e05b4d;color:#fff1cf}
.admin-account-refresh:hover,.admin-rename-submit:hover{filter:brightness(1.18)}
.admin-rename-preview{border:1px solid #5f4820;background:#090603;padding:12px;margin:12px 0;color:#d8c39a;min-height:20px}
.admin-rename-preview strong{color:#fff0af}.admin-rename-preview b{color:#ff9b8e}
.admin-rename-status{min-height:20px;margin:10px 0 0;font-weight:700;color:#f0cf7b}.admin-rename-status.is-error{color:#ff8d82}.admin-rename-status.is-success{color:#a9ef9b}


/* Stable admin dropdown: does not wrap or interfere with existing admin visibility logic. */
.signed-in-controls{position:relative}
.admin-dropdown{position:absolute;top:calc(100% + 7px);left:0;z-index:10020;min-width:220px;padding:7px;background:#20150d;border:2px solid #9d7135;box-shadow:0 8px 20px #0009}
.admin-dropdown.hidden{display:none!important}
.admin-dropdown button{display:block;width:100%;padding:9px 11px;border:1px solid #694821;background:#3a2414;color:#f1d59a;text-align:left;font:inherit;cursor:pointer}
.admin-dropdown button+button{margin-top:5px}
.admin-dropdown button:hover{background:#57351b}


/* Admin menu + signed-in header layout correction */
@media (min-width:761px){
  .repo-main-header .signed-in-controls{
    flex-wrap:nowrap!important;
    width:auto!important;
    max-width:none!important;
    white-space:nowrap;
  }
  .repo-main-header .header-quick-button,
  .repo-main-header .character-summary,
  .repo-main-header .admin-button{
    flex:0 0 auto!important;
  }
}

/* Fixed admin pop-up: remains above the tavern/header clipping context. */
.admin-dropdown{
  position:fixed!important;
  top:50%!important;
  left:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  z-index:2147483000!important;
  width:min(330px,calc(100vw - 28px))!important;
  min-width:0!important;
  box-sizing:border-box;
  padding:12px!important;
  border:3px ridge #b78a3d!important;
  background:linear-gradient(180deg,#2c1d10,#100a05)!important;
  box-shadow:0 0 0 2px #090500,0 20px 70px rgba(0,0,0,.88)!important;
}
.admin-dropdown::before{
  content:'ADMIN MENU';
  display:block;
  margin:0 0 10px;
  padding:0 2px 8px;
  border-bottom:1px solid #705020;
  color:#ffd879;
  font:900 14px Georgia,'Times New Roman',serif;
  letter-spacing:1.3px;
  text-align:center;
}
.admin-dropdown button{
  padding:12px 14px!important;
  text-align:center!important;
  font-weight:900!important;
  letter-spacing:.7px!important;
}
.admin-dropdown button+button{margin-top:8px!important}


/* Comical command-prompt admin console, mounted directly under <body> so no header/tavern overflow can clip it. */
.admin-dropdown{
  position:fixed!important;
  inset:50% auto auto 50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:2147483647!important;
  width:min(440px,calc(100vw - 24px))!important;
  min-width:0!important;
  padding:0!important;
  overflow:visible!important;
  border:2px solid #bdbdbd!important;
  border-radius:0!important;
  background:#050705!important;
  box-shadow:0 0 0 9999px rgba(0,0,0,.58),0 0 0 3px #111,0 24px 90px #000!important;
  font-family:"Courier New",Consolas,monospace!important;
  color:#39ff6a!important;
  isolation:isolate;
}
.admin-dropdown::before{content:none!important;display:none!important}
.admin-terminal-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:7px 9px;
  background:linear-gradient(90deg,#050b54,#1449a6);
  color:#fff;
  font:700 13px Arial,sans-serif;
  letter-spacing:.2px;
  text-shadow:none;
  user-select:none;
}
.admin-terminal-title i{font-style:normal;letter-spacing:8px;opacity:.95}
.admin-terminal-body{padding:15px 15px 13px;background:repeating-linear-gradient(0deg,rgba(57,255,106,.025) 0,rgba(57,255,106,.025) 1px,transparent 1px,transparent 4px)}
.admin-terminal-line{margin:0 0 8px;font-size:13px;line-height:1.35;color:#39ff6a;text-shadow:0 0 5px rgba(57,255,106,.6)}
.admin-terminal-status{color:#d7ff42;margin-bottom:11px}
.admin-dropdown button{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:10px 9px!important;
  border:1px solid #1f7d38!important;
  border-radius:0!important;
  background:#071309!important;
  color:#65ff84!important;
  text-align:left!important;
  font:700 13px/1.25 "Courier New",Consolas,monospace!important;
  letter-spacing:0!important;
  text-shadow:0 0 5px rgba(57,255,106,.55)!important;
  box-shadow:inset 0 0 0 1px #020!important;
  cursor:pointer;
}
.admin-dropdown button span{display:inline-block;width:18px;color:#fff600}
.admin-dropdown button+button{margin-top:7px!important}
.admin-dropdown button:hover,.admin-dropdown button:focus-visible{
  background:#123819!important;
  color:#fff!important;
  border-color:#62ff7f!important;
  outline:none!important;
  box-shadow:inset 0 0 12px rgba(57,255,106,.22),0 0 10px rgba(57,255,106,.25)!important;
}
.admin-terminal-cursor{margin-top:12px;font-size:13px;color:#39ff6a;text-shadow:0 0 5px rgba(57,255,106,.65)}
.admin-terminal-cursor b{animation:adminTerminalBlink .85s steps(1,end) infinite}
@keyframes adminTerminalBlink{0%,48%{opacity:1}49%,100%{opacity:0}}
@media (max-width:520px){.admin-dropdown{width:calc(100vw - 16px)!important}.admin-terminal-body{padding:12px}.admin-dropdown button{font-size:12px!important}}

/* CMD theme for the account rename window. Kept in the browser top layer via <dialog>. */
#adminAccountDialog.admin-account-dialog{
  position:fixed!important;
  inset:50% auto auto 50%!important;
  transform:translate(-50%,-50%)!important;
  z-index:2147483647!important;
  width:min(600px,calc(100vw - 24px))!important;
  max-height:calc(100vh - 24px)!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  padding:44px 18px 18px!important;
  border:2px solid #bdbdbd!important;
  border-radius:0!important;
  background:repeating-linear-gradient(0deg,rgba(57,255,106,.025) 0,rgba(57,255,106,.025) 1px,#050705 1px,#050705 4px)!important;
  color:#39ff6a!important;
  box-shadow:0 0 0 3px #111,0 24px 90px #000!important;
  font-family:"Courier New",Consolas,monospace!important;
  text-shadow:0 0 5px rgba(57,255,106,.35);
}
#adminAccountDialog.admin-account-dialog::backdrop{background:rgba(0,0,0,.72)!important}
#adminAccountDialog.admin-account-dialog::before{
  content:'REPO_ACCOUNT_ADMIN.EXE';
  position:absolute;
  top:0;left:0;right:0;
  height:31px;
  display:flex;
  align-items:center;
  padding:0 10px;
  box-sizing:border-box;
  background:linear-gradient(90deg,#050b54,#1449a6);
  color:#fff;
  font:700 13px Arial,sans-serif;
  letter-spacing:.2px;
  text-shadow:none;
}
#adminAccountDialog .dialog-x{
  position:absolute!important;
  z-index:2!important;
  top:3px!important;
  right:5px!important;
  width:26px!important;
  height:24px!important;
  padding:0!important;
  border:1px solid #fff!important;
  border-radius:0!important;
  background:#c8c8c8!important;
  color:#050505!important;
  font:900 17px/20px Arial,sans-serif!important;
  box-shadow:inset -1px -1px #555,inset 1px 1px #fff!important;
  text-shadow:none!important;
}
#adminAccountDialog h3{
  margin:3px 34px 10px 0!important;
  color:#d7ff42!important;
  font:700 17px/1.2 "Courier New",Consolas,monospace!important;
  letter-spacing:0!important;
  text-shadow:0 0 6px rgba(215,255,66,.55)!important;
}
#adminAccountDialog h3::before{content:'C:\\REPO\\ADMIN> ';color:#39ff6a}
#adminAccountDialog .admin-account-help{
  margin:0 0 14px!important;
  padding:9px 10px!important;
  border-left:3px solid #1f7d38!important;
  background:#071309!important;
  color:#65ff84!important;
  font:700 12px/1.45 "Courier New",Consolas,monospace!important;
  text-shadow:0 0 5px rgba(57,255,106,.45)!important;
}
#adminAccountDialog .admin-account-help::before{content:'SYSTEM: ';color:#fff600}
#adminAccountDialog .admin-account-field{
  display:grid!important;
  gap:6px!important;
  margin:13px 0!important;
  color:#d7ff42!important;
  font:700 12px/1.2 "Courier New",Consolas,monospace!important;
  letter-spacing:0!important;
}
#adminAccountDialog .admin-account-field::before{content:'> ';color:#fff600}
#adminAccountDialog .admin-account-field select,
#adminAccountDialog .admin-account-field input{
  width:100%!important;
  box-sizing:border-box!important;
  padding:10px!important;
  border:1px solid #1f7d38!important;
  border-radius:0!important;
  background:#020703!important;
  color:#65ff84!important;
  font:700 14px "Courier New",Consolas,monospace!important;
  outline:none!important;
  box-shadow:inset 0 0 0 1px #020!important;
  text-shadow:0 0 4px rgba(57,255,106,.45)!important;
}
#adminAccountDialog .admin-account-field select:focus,
#adminAccountDialog .admin-account-field input:focus{border-color:#fff600!important;box-shadow:0 0 8px rgba(255,246,0,.35),inset 0 0 0 1px #423f00!important}
#adminAccountDialog .admin-account-field input::placeholder{color:#267d39!important;opacity:1}
#adminAccountDialog .admin-account-refresh,
#adminAccountDialog .admin-rename-submit{
  display:block!important;
  width:100%!important;
  margin:8px 0 0!important;
  padding:11px 10px!important;
  border:1px solid #1f7d38!important;
  border-radius:0!important;
  background:#071309!important;
  color:#65ff84!important;
  font:700 13px/1.2 "Courier New",Consolas,monospace!important;
  letter-spacing:0!important;
  text-align:left!important;
  text-shadow:0 0 5px rgba(57,255,106,.55)!important;
  box-shadow:inset 0 0 0 1px #020!important;
}
#adminAccountDialog .admin-account-refresh::before{content:'> RUN '}
#adminAccountDialog .admin-rename-submit::before{content:'> EXECUTE '}
#adminAccountDialog .admin-account-refresh:hover,
#adminAccountDialog .admin-rename-submit:hover{background:#0d2912!important;color:#fff600!important;filter:none!important;border-color:#39ff6a!important}
#adminAccountDialog .admin-rename-preview{
  min-height:20px!important;
  margin:13px 0!important;
  padding:11px!important;
  border:1px dashed #1f7d38!important;
  background:#020703!important;
  color:#65ff84!important;
  font:700 12px/1.45 "Courier New",Consolas,monospace!important;
  text-shadow:0 0 5px rgba(57,255,106,.4)!important;
}
#adminAccountDialog .admin-rename-preview::before{content:'PREVIEW_OUTPUT: ';color:#fff600}
#adminAccountDialog .admin-rename-preview strong{color:#fff!important}
#adminAccountDialog .admin-rename-preview b{color:#ff6b6b!important}
#adminAccountDialog .admin-rename-status{
  min-height:18px!important;
  margin:10px 0 0!important;
  color:#d7ff42!important;
  font:700 12px/1.4 "Courier New",Consolas,monospace!important;
  text-shadow:0 0 5px rgba(57,255,106,.45)!important;
}
#adminAccountDialog .admin-rename-status::before{content:'C:\\REPO\\ADMIN> ';color:#39ff6a}
#adminAccountDialog .admin-rename-status.is-error{color:#ff6b6b!important}
#adminAccountDialog .admin-rename-status.is-success{color:#65ff84!important}
@media(max-width:600px){
  #adminAccountDialog.admin-account-dialog{padding:42px 12px 14px!important}
  #adminAccountDialog h3{font-size:14px!important}
}

/* CovidPanda birthday genie lamp */
.birthday-genie-lamp-slot{font:inherit;color:inherit;width:100%;cursor:pointer;border:2px solid #b88a2f!important;background:radial-gradient(circle at 50% 35%,#473316,#21170c 72%)!important;box-shadow:inset 0 0 18px rgba(255,202,77,.18),0 0 10px rgba(110,69,255,.2);animation:birthdayLampSlotGlow 1.15s ease-in-out infinite alternate}
.birthday-genie-lamp-slot:hover{border-color:#f2cd65!important;filter:brightness(1.12)}
.birthday-genie-lamp-art{width:78px!important;height:68px!important;object-fit:contain!important;image-rendering:pixelated;filter:drop-shadow(0 3px 2px rgba(0,0,0,.75)) drop-shadow(0 0 5px rgba(100,74,255,.55))}
.birthday-genie-lamp-slot small{color:#ffe6a4!important;font-weight:800;line-height:1.15}.birthday-genie-lamp-hint{position:absolute;right:5px;bottom:3px;color:#a996ff!important;font-size:8px!important;font-weight:900}
@keyframes birthdayLampSlotGlow{from{box-shadow:inset 0 0 12px rgba(255,202,77,.12),0 0 5px rgba(110,69,255,.15)}to{box-shadow:inset 0 0 22px rgba(255,202,77,.25),0 0 14px rgba(110,69,255,.38)}}
.birthday-genie-lamp-dialog{border:2px solid #d4a94d;border-radius:8px;padding:0;background:#171006;color:#f8e4ad;box-shadow:0 18px 70px #000,0 0 30px rgba(102,70,255,.35);max-width:min(92vw,430px)}.birthday-genie-lamp-dialog::backdrop{background:rgba(0,0,0,.78)}
.birthday-genie-lamp-modal{position:relative;padding:22px 28px 26px;text-align:center;background:radial-gradient(circle at 50% 25%,#493516 0,#21160a 55%,#100b06 100%)}.birthday-genie-lamp-modal img{width:210px;height:160px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 6px 4px #000) drop-shadow(0 0 12px rgba(105,75,255,.65));animation:birthdayModalLampShake .7s steps(2,end) infinite}.birthday-genie-lamp-modal h2{margin:3px 0 8px;color:#ffd86f;font-size:22px}.birthday-genie-lamp-modal p{margin:0 0 13px;color:#ead9ad}.birthday-genie-lamp-modal strong{display:block;font:900 34px/1.1 monospace;letter-spacing:2px;color:#b9a7ff;text-shadow:0 0 10px rgba(105,75,255,.8)}.birthday-genie-lamp-modal strong.ready{color:#ffe071;text-shadow:0 0 14px rgba(255,205,72,.9)}.birthday-genie-lamp-modal small{display:block;margin-top:9px;color:#bcaa80}.birthday-genie-close{position:absolute;right:9px;top:7px;border:0;background:transparent;color:#d9bf7b;font-size:27px;line-height:1;cursor:pointer;z-index:2}@keyframes birthdayModalLampShake{0%{transform:rotate(-2deg) translateX(-2px)}50%{transform:rotate(2deg) translateX(2px)}100%{transform:rotate(-2deg) translateX(-2px)}}
.birthday-open-lamp,.birthday-claim-button{border:2px solid #f2ce62;background:linear-gradient(#7b4d11,#3d2308);color:#fff2ad;padding:12px 22px;font-weight:900;cursor:pointer;box-shadow:0 0 18px rgba(255,205,72,.45)}
.birthday-reward-stage{position:relative;width:min(94vw,900px);min-height:520px;display:grid;place-items:center;padding:20px;background:#030303;overflow:hidden}.birthday-reward-stage>img{max-width:100%;max-height:72vh;object-fit:contain;image-rendering:pixelated}.birthday-flash{position:absolute;inset:0;background:#fff;z-index:2;pointer-events:none;animation:birthdayMassiveFlash 1.15s ease-out forwards}@keyframes birthdayMassiveFlash{0%{opacity:0}12%{opacity:1}35%{opacity:.95}100%{opacity:0}}
.birthday-claim-stage{grid-template-rows:1fr auto}.birthday-claim-button{margin:8px 0 20px;font-size:18px}.birthday-reward-confirm{position:relative;width:min(92vw,720px);padding:28px;text-align:center;background:radial-gradient(circle at top,#493516,#160d05 65%);color:#f5dfac}.birthday-reward-confirm h2{color:#ffe177;font-size:30px}.birthday-reward-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:16px}.birthday-reward-grid>div,.birthday-osrs-code{border:1px solid #a8792c;background:rgba(0,0,0,.35);padding:16px;display:grid;gap:7px;place-items:center}.birthday-reward-grid img{max-width:100%;height:150px;object-fit:contain;image-rendering:pixelated}.birthday-reward-grid strong{color:#fff0a7}.birthday-reward-grid small{color:#d5c08e}.birthday-osrs-code{margin-top:16px}.birthday-osrs-code code{display:block;padding:12px;background:#080808;color:#9ef59e;font-size:17px;letter-spacing:1px;user-select:all}.birthday-test-note{display:block;margin-top:13px;color:#d8b56b}@media(max-width:640px){.birthday-reward-grid{grid-template-columns:1fr}.birthday-reward-stage{min-height:420px}.birthday-osrs-code code{font-size:12px}}


/* Birthday reveal presentation — free-floating scroll, no enclosing box */
.birthday-genie-lamp-dialog.birthday-reward-dialog{
  width:100vw!important;
  max-width:none!important;
  height:100vh!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.birthday-genie-lamp-dialog.birthday-reward-dialog::backdrop{background:rgba(0,0,0,.88)!important}
.birthday-reward-stage{
  width:100vw!important;
  height:100vh!important;
  min-height:0!important;
  padding:3vh 3vw 2.5vh!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:10px!important;
  background:transparent!important;
  overflow:visible!important;
}
.birthday-reward-stage>img{
  display:block!important;
  width:min(92vw,1150px)!important;
  height:auto!important;
  max-width:92vw!important;
  max-height:82vh!important;
  object-fit:contain!important;
  flex:0 1 auto!important;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.9));
}
.birthday-claim-stage{grid-template-rows:none!important}
.birthday-claim-stage>img{max-height:76vh!important}
.birthday-claim-button{
  position:relative!important;
  left:auto!important;
  bottom:auto!important;
  margin:0 auto!important;
  flex:0 0 auto!important;
  min-width:220px!important;
  text-align:center!important;
  font-size:18px!important;
  z-index:4!important;
}
.birthday-reward-dialog .birthday-genie-close{
  position:fixed!important;
  top:18px!important;
  right:24px!important;
  color:#ffe6a4!important;
  text-shadow:0 2px 4px #000!important;
}
.birthday-reward-dialog .birthday-reward-confirm{
  margin:auto!important;
  max-height:90vh!important;
  overflow:auto!important;
  border:2px solid #d4a94d!important;
  box-shadow:0 18px 70px #000,0 0 30px rgba(102,70,255,.35)!important;
}
@media(max-width:640px){
  .birthday-reward-stage>img{width:96vw!important;max-width:96vw!important;max-height:76vh!important}
  .birthday-claim-stage>img{max-height:70vh!important}
}

/* Birthday scroll transparency and exact frame anchoring */
.birthday-reward-stage,
.birthday-reward-stage::before,
.birthday-reward-stage::after{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
.birthday-reward-stage>img{
  position:relative!important;
  inset:auto!important;
  margin:0 auto!important;
  object-position:50% 50%!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.birthday-reward-dialog .birthday-genie-close{
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
  font-size:28px!important;
  line-height:1!important;
}
\n\n/* Birthday lamp close control + fireworks */\n.birthday-genie-close{\n  width:22px!important;min-width:22px!important;height:22px!important;\n  padding:0!important;margin:0!important;font-size:16px!important;line-height:1!important;\n  display:grid!important;place-items:center!important;\n}\n.birthday-ready-modal .birthday-genie-close{right:7px!important;top:6px!important;font-size:15px!important}\n.birthday-reward-dialog .birthday-genie-close{\n  width:24px!important;min-width:24px!important;height:24px!important;\n  top:10px!important;right:12px!important;font-size:17px!important;\n}\n.birthday-claim-stage{isolation:isolate}\n.birthday-claim-stage>img,.birthday-claim-stage>.birthday-claim-button,.birthday-claim-stage>.birthday-genie-close{position:relative;z-index:3}\n.birthday-firework-burst{\n  position:absolute;z-index:1;width:8px;height:8px;pointer-events:none;\n  transform:translate(-50%,-50%);filter:drop-shadow(0 0 6px hsl(var(--firework-hue) 100% 65%));\n}\n.birthday-firework-burst::before{\n  content:'';position:absolute;inset:-5px;border-radius:50%;background:#fff;\n  box-shadow:0 0 12px 5px hsl(var(--firework-hue) 100% 60%);animation:birthdayFireworkCore .42s ease-out forwards;\n}\n.birthday-firework-burst i{\n  position:absolute;left:50%;top:50%;width:5px;height:5px;border-radius:1px;\n  background:hsl(var(--firework-hue) 100% 65%);box-shadow:0 0 7px 2px hsl(var(--firework-hue) 100% 60%);\n  transform:translate(-50%,-50%) rotate(var(--angle)) translateX(0);\n  animation:birthdayFireworkSpark 1.1s cubic-bezier(.15,.6,.2,1) var(--delay) forwards;\n}\n@keyframes birthdayFireworkCore{0%{transform:scale(.2);opacity:0}20%{transform:scale(1);opacity:1}100%{transform:scale(.1);opacity:0}}\n@keyframes birthdayFireworkSpark{\n  0%{transform:translate(-50%,-50%) rotate(var(--angle)) translateX(0) scale(1.2);opacity:0}\n  12%{opacity:1}\n  75%{opacity:1}\n  100%{transform:translate(-50%,-50%) rotate(var(--angle)) translateX(var(--distance)) scale(.25);opacity:0}\n}\n.birthday-copy-code{display:block;margin:12px auto 0;padding:8px 18px;border:1px solid #e6b64e;background:linear-gradient(#70451f,#43260f);color:#ffe7a5;font:700 13px Georgia,serif;cursor:pointer}.birthday-copy-code:hover{filter:brightness(1.12)}


/* 2026-08-06: Scalable homepage training navigation.
   Six compact skill tiles fit per desktop row, leaving room for future skills. */
.game-strip.adventure-nav{
  grid-template-columns:minmax(0,1.32fr) minmax(0,1fr)!important;
}
.training-nav .training-skill-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
}
.training-nav .training-skill-grid button,
.training-nav .training-skill-grid .runecrafting-open-button{
  position:relative;
  height:68px!important;
  min-height:68px!important;
  max-height:68px!important;
  padding:6px 5px!important;
  flex-direction:column!important;
  gap:3px!important;
  overflow:hidden;
  white-space:normal!important;
  background:linear-gradient(180deg,#704822 0%,#4a2d17 56%,#351f11 100%)!important;
  border:2px solid #e0a447!important;
  box-shadow:inset 0 0 0 1px #4d2b13,0 2px 0 #140b06!important;
}
.training-nav .training-skill-grid button::after{
  content:'';
  position:absolute;
  inset:2px;
  pointer-events:none;
  border:1px solid rgba(255,220,145,.16);
}
.training-nav .training-skill-grid button:hover:not(:disabled){
  transform:translateY(-1px);
  filter:brightness(1.12);
  box-shadow:inset 0 0 0 1px #6c401d,0 4px 0 #140b06!important;
}
.training-nav .training-skill-grid button:active:not(:disabled){
  transform:translateY(1px);
  box-shadow:inset 0 0 0 1px #4d2b13,0 1px 0 #140b06!important;
}
.training-nav .training-skill-grid button>img,
.training-nav .training-skill-grid .runecrafting-open-button>img,
.training-nav .training-skill-grid button>.training-skill-icon{
  width:28px!important;
  height:28px!important;
  max-width:28px!important;
  max-height:28px!important;
  flex:0 0 28px!important;
  object-fit:contain!important;
  image-rendering:pixelated;
  filter:drop-shadow(0 2px 1px #140b06);
}
.training-nav .training-button-copy{
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:1px;
  min-width:0;
  max-width:100%;
  color:#f8dfa0!important;
  font-family:Georgia,serif!important;
  line-height:1!important;
  text-align:center;
}
.training-nav .training-button-copy>small{
  display:block;
  color:#cda963;
  font:700 7px/1 Georgia,serif;
  letter-spacing:.16em;
}
.training-nav .training-button-copy>span{
  display:block;
  max-width:100%;
  color:inherit!important;
  font:900 10px/1.05 Georgia,serif!important;
  letter-spacing:.025em;
  overflow-wrap:anywhere;
}
.training-nav .fishing-open-button img{
  transform:scale(1.08);
}
  transform:scale(.92);
}
@media(max-width:1180px) and (min-width:1051px){
  .game-strip.adventure-nav{grid-template-columns:minmax(0,1.42fr) minmax(0,1fr)!important}
  .training-nav .training-skill-grid{gap:6px!important}
  .training-nav .training-button-copy>span{font-size:9px!important}
}
@media(max-width:1050px){
  .game-strip.adventure-nav{grid-template-columns:1fr!important}
  .training-nav .training-skill-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .training-nav .training-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .activities-nav .nav-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){
  .training-nav .training-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* 2026-08-06: Expandable Training + Other homepage navigation.
   Both sections now use compact, consistent tiles with room for future entries. */
.game-strip.adventure-nav{
  grid-template-columns:minmax(0,1.38fr) minmax(0,1fr)!important;
}
.training-nav .training-skill-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
}
.activities-nav .activity-button-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
}
.training-nav .training-skill-grid button,
.activities-nav .activity-button-grid button{
  --nav-icon-scale:1;
  --nav-icon-hover-scale:1.07;
  position:relative!important;
  isolation:isolate;
  width:100%!important;
  min-width:0!important;
  height:70px!important;
  min-height:70px!important;
  max-height:70px!important;
  box-sizing:border-box!important;
  padding:6px 5px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  overflow:hidden!important;
  white-space:normal!important;
  background:linear-gradient(180deg,#704822 0%,#4a2d17 56%,#351f11 100%)!important;
  border:2px solid #e0a447!important;
  color:#f8dfa0!important;
  box-shadow:inset 0 0 0 1px #4d2b13,0 2px 0 #140b06!important;
  transform:translateY(0);
  transition:transform .16s ease,filter .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.training-nav .training-skill-grid button::after,
.activities-nav .activity-button-grid button::after{
  content:'';
  position:absolute;
  inset:2px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(255,220,145,.16);
}
.training-nav .training-skill-grid button::before,
.activities-nav .activity-button-grid button::before{
  content:'';
  position:absolute;
  z-index:0;
  top:-38%;
  left:-62%;
  width:34%;
  height:176%;
  pointer-events:none;
  opacity:0;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,232,168,.24),transparent);
  transition:left .38s ease,opacity .18s ease;
}
.training-nav .training-skill-grid button:hover:not(:disabled),
.activities-nav .activity-button-grid button:hover:not(:disabled){
  transform:translateY(-2px);
  filter:brightness(1.12) saturate(1.04);
  border-color:#f3bd60!important;
  box-shadow:inset 0 0 0 1px #765027,0 5px 0 #140b06,0 7px 15px rgba(0,0,0,.3)!important;
}
.training-nav .training-skill-grid button:hover:not(:disabled)::before,
.activities-nav .activity-button-grid button:hover:not(:disabled)::before{
  left:128%;
  opacity:1;
}
.training-nav .training-skill-grid button:active:not(:disabled),
.activities-nav .activity-button-grid button:active:not(:disabled){
  transform:translateY(1px);
  filter:brightness(1.04);
  box-shadow:inset 0 0 0 1px #4d2b13,0 1px 0 #140b06!important;
  transition-duration:.06s!important;
}
.training-nav .training-skill-grid button>img,
.training-nav .training-skill-grid button>.training-skill-icon,
.activities-nav .activity-button-grid button>img,
.activities-nav .activity-button-grid button>.activity-icon{
  position:relative;
  z-index:1;
  flex:0 0 28px!important;
  width:28px!important;
  height:28px!important;
  max-width:28px!important;
  max-height:28px!important;
  object-fit:contain!important;
  image-rendering:pixelated;
  filter:drop-shadow(0 2px 1px #140b06);
  transform:translateY(0) scale(var(--nav-icon-scale));
  transition:transform .18s ease,filter .18s ease!important;
}
.training-nav .training-skill-grid button:hover:not(:disabled)>img,
.training-nav .training-skill-grid button:hover:not(:disabled)>.training-skill-icon,
.activities-nav .activity-button-grid button:hover:not(:disabled)>img,
.activities-nav .activity-button-grid button:hover:not(:disabled)>.activity-icon{
  transform:translateY(-1px) scale(var(--nav-icon-hover-scale));
  filter:drop-shadow(0 3px 2px #140b06) brightness(1.08);
}
.training-nav .fishing-open-button{--nav-icon-scale:1.08;--nav-icon-hover-scale:1.15}
.training-nav .herblore-open-button{--nav-icon-scale:1.05;--nav-icon-hover-scale:1.12}
.training-nav .construction-open-button{--nav-icon-scale:.94;--nav-icon-hover-scale:1.01}
.training-nav .hunter-open-button{--nav-icon-scale:.92;--nav-icon-hover-scale:.99}
.training-nav .training-button-copy,
.activities-nav .activity-button-grid button>.activity-button-copy{
  position:relative;
  z-index:1;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  min-width:0!important;
  max-width:100%!important;
  color:#f8dfa0!important;
  font-family:Georgia,serif!important;
  line-height:1!important;
  text-align:center!important;
}
.training-nav .training-button-copy>small,
.activities-nav .activity-button-grid button>.activity-button-copy>small{
  display:block!important;
  color:#cda963!important;
  font:700 7px/1 Georgia,serif!important;
  letter-spacing:.16em!important;
}
.training-nav .training-button-copy>span,
.activities-nav .activity-button-grid button>.activity-button-copy>span{
  display:block!important;
  max-width:100%!important;
  color:inherit!important;
  font:900 10px/1.05 Georgia,serif!important;
  letter-spacing:.025em!important;
  overflow-wrap:anywhere;
}
.activities-nav .ge-button-icon.activity-icon{
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  border-radius:50%;
  font-size:9px!important;
  line-height:1!important;
}
.activities-nav .wise-task-badge{
  z-index:3!important;
}
@media(max-width:1180px) and (min-width:1051px){
  .game-strip.adventure-nav{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)!important}
  .training-nav .training-skill-grid,
  .activities-nav .activity-button-grid{gap:6px!important}
  .training-nav .training-button-copy>span,
  .activities-nav .activity-button-grid button>.activity-button-copy>span{font-size:9px!important}
}
@media(max-width:1050px){
  .game-strip.adventure-nav{grid-template-columns:1fr!important}
  .training-nav .training-skill-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  .activities-nav .activity-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .training-nav .training-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .activities-nav .activity-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){
  .training-nav .training-skill-grid,
  .activities-nav .activity-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(prefers-reduced-motion:reduce){
  .training-nav .training-skill-grid button,
  .activities-nav .activity-button-grid button,
  .training-nav .training-skill-grid button>img,
  .activities-nav .activity-button-grid button>img,
  .activities-nav .activity-button-grid button>.activity-icon{
    transition:none!important;
  }
  .training-nav .training-skill-grid button::before,
  .activities-nav .activity-button-grid button::before{display:none!important}
}

/* One-time Cloudflare launch tester reward */
.tester-reward-hello{position:fixed;z-index:1200;top:78px;left:14px;width:92px;height:102px;border:0;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 5px 7px #000a);animation:testerHelloShake 2.8s ease-in-out infinite;transform-origin:50% 85%}
.tester-reward-hello img{display:block;width:100%;height:100%;object-fit:contain;transition:filter .2s ease,transform .2s ease}
.tester-reward-hello span{position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);padding:2px 7px;border:1px solid #e7b754;background:#201306;color:#ffe9a4;font:900 10px Georgia,serif;letter-spacing:.08em;box-shadow:0 2px 5px #000b;white-space:nowrap}
.tester-reward-hello:hover img,.tester-reward-hello:focus-visible img{filter:brightness(1.28) drop-shadow(0 0 6px #fff4b8) drop-shadow(0 0 13px #ffc64d);transform:scale(1.06)}
.tester-reward-hello:hover{animation-duration:.55s}
@keyframes testerHelloShake{0%,72%,100%{transform:rotate(0deg)}76%{transform:rotate(-4deg)}80%{transform:rotate(4deg)}84%{transform:rotate(-3deg)}88%{transform:rotate(3deg)}92%{transform:rotate(0deg)}}
.tester-reward-dialog{border:0;background:transparent;padding:18px;max-width:min(960px,96vw);width:100%;overflow:visible}
.tester-reward-dialog::backdrop{background:rgba(5,3,1,.82);backdrop-filter:blur(3px)}
.tester-reward-panel{position:relative;border:2px solid #d89b27;background:linear-gradient(#251404,#100905);box-shadow:0 0 0 3px #4b2a0d,0 18px 60px #000;color:#ffe8a1;padding:26px;text-align:center;font-family:Georgia,serif}
.tester-reward-close{position:absolute;z-index:3;right:10px;top:8px;width:35px;height:35px;border:1px solid #d9a447;background:#241206;color:#ffeab0;font-size:25px;cursor:pointer}
.tester-reward-message-art{display:block;width:100%;height:auto;max-height:350px;object-fit:contain;margin:0 auto 18px}
.tester-reward-claim,.tester-reward-done{border:2px solid #f3c75f;background:linear-gradient(#8f531f,#4e270e);color:#fff1bd;padding:13px 30px;font:900 15px Georgia,serif;letter-spacing:.06em;cursor:pointer;box-shadow:inset 0 0 0 2px #291306,0 4px 10px #0009}
.tester-reward-claim:hover,.tester-reward-done:hover{filter:brightness(1.18);box-shadow:inset 0 0 0 2px #291306,0 0 18px #e6a63e88}
.tester-reward-claim:disabled{opacity:.55;cursor:wait}
.tester-reward-status{min-height:1.2em;margin:12px 0 0;color:#ffd786;font:700 13px Arial,sans-serif}
.tester-reward-success h2{margin:6px 0 8px;color:#fff0b2;text-shadow:0 2px 0 #5b2504;font-size:clamp(22px,4vw,38px)}
.tester-reward-success>p{font-size:18px;margin:8px 0 20px}
.tester-reward-prizes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}
.tester-reward-prizes>div{display:flex;min-height:120px;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid #9b6826;background:#0d0906;padding:14px;box-shadow:inset 0 0 24px #71400d33}
.tester-reward-prizes strong{font-size:17px;color:#ffdc75}
.tester-reward-prizes small{font:12px Arial,sans-serif;color:#dbc99c}
.tester-reward-tag img{width:min(100%,260px);height:50px;object-fit:contain;margin-bottom:4px}
@media(max-width:700px){.tester-reward-hello{top:64px;left:5px;width:70px;height:82px}.tester-reward-panel{padding:18px 10px}.tester-reward-prizes{grid-template-columns:1fr}.tester-reward-message-art{margin-top:16px}}

/* ========================================================================== 
   PROFESSIONAL SKILL TREE — 2026-08-06
   A clearer progression hierarchy with a shared Harmony root and four branches.
   ========================================================================== */
#skillsDialog.game-dialog.wide {
  width: min(1180px, calc(100% - 28px));
  max-height: min(92vh, 980px);
  padding: 22px 24px 24px;
  overflow-x: hidden;
  overflow-y: auto;
  background:
    radial-gradient(circle at 50% -15%, rgba(191, 143, 48, .18), transparent 34%),
    linear-gradient(145deg, #17150f 0%, #0b0b09 48%, #080807 100%);
  border: 1px solid #a17731;
  box-shadow:
    inset 0 0 0 2px #241d11,
    inset 0 0 55px rgba(0,0,0,.72),
    0 24px 85px rgba(0,0,0,.82);
}

#skillsDialog::backdrop {
  background: rgba(2, 2, 2, .82);
  backdrop-filter: blur(4px);
}

#skillsDialog #skillsTitle {
  margin: 0 54px 18px;
  color: #f0cf7c;
  font: 800 25px/1.1 Georgia, serif;
  letter-spacing: 3px;
  text-align: center;
  text-shadow: 0 2px 0 #25170a, 0 0 20px rgba(217, 169, 66, .18);
}

#skillsDialog .dialog-x {
  top: 12px !important;
  right: 14px;
  width: 38px !important;
  height: 38px;
  display: grid;
  place-items: center;
  padding: 0 !important;
  border: 1px solid #5a4524 !important;
  border-radius: 6px;
  background: linear-gradient(#221c12, #100e0a) !important;
  color: #d8b867;
  transition: transform .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease;
}

#skillsDialog .dialog-x:hover {
  color: #fff0b6;
  border-color: #b88b39 !important;
  box-shadow: 0 0 18px rgba(217, 168, 67, .24);
  transform: translateY(-1px);
}

#skillsDialog .skills-grid {
  display: block;
  width: 100%;
}

.skills-overview {
  display: grid;
  grid-template-columns: minmax(230px, 1.55fr) repeat(4, minmax(120px, .75fr));
  gap: 10px;
  padding: 12px;
  border: 1px solid #403522;
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(42, 36, 24, .84), rgba(15, 14, 11, .94));
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 8px 28px rgba(0,0,0,.24);
}

.skills-overview-intro,
.skills-overview-stat {
  min-height: 82px;
  border: 1px solid rgba(115, 91, 48, .35);
  border-radius: 6px;
  background: linear-gradient(145deg, rgba(27, 25, 19, .95), rgba(11, 11, 9, .96));
}

.skills-overview-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 13px 16px;
}

.skills-overview-intro > span {
  color: #8d7a53;
  font: 800 9px/1.1 system-ui, sans-serif;
  letter-spacing: 2.2px;
}

.skills-overview-intro > strong {
  margin-top: 4px;
  overflow: hidden;
  color: #eed38c;
  font: 800 22px/1.1 Georgia, serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skills-overview-intro > small {
  margin-top: 5px;
  color: #928a78;
  font: 600 11px/1.25 system-ui, sans-serif;
}

.skills-overview-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px;
  text-align: center;
}

.skills-overview-stat small {
  color: #81755e;
  font: 800 9px/1 system-ui, sans-serif;
  letter-spacing: 1.35px;
}

.skills-overview-stat b {
  max-width: 100%;
  margin-top: 7px;
  overflow: hidden;
  color: #f0cd73;
  font: 800 21px/1 Georgia, serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skills-overview-stat span {
  margin-top: 4px;
  color: #aaa18d;
  font: 700 10px/1 system-ui, sans-serif;
}

.skills-tree-root {
  position: relative;
  width: min(500px, 92%);
  margin: 25px auto 0;
  padding-top: 15px;
}

.skills-root-crown {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  padding: 5px 13px;
  border: 1px solid #967032;
  border-radius: 999px;
  background: #13110c;
  color: #cda957;
  font: 800 9px/1 system-ui, sans-serif;
  letter-spacing: 1.8px;
  white-space: nowrap;
  box-shadow: 0 0 0 4px #0d0d0a;
}

.skills-root-node {
  position: relative;
  display: grid;
  grid-template-columns: 98px minmax(0, 1fr);
  align-items: center;
  gap: 15px;
  min-height: 126px;
  padding: 20px 22px 17px;
  overflow: hidden;
  border: 1px solid #a17731;
  border-radius: 11px;
  background:
    radial-gradient(circle at 18% 50%, rgba(238, 190, 73, .19), transparent 29%),
    linear-gradient(135deg, #292315, #12110d 64%, #0a0a08);
  box-shadow:
    inset 0 0 0 2px rgba(59, 45, 23, .8),
    0 10px 35px rgba(0,0,0,.45),
    0 0 28px rgba(181, 133, 43, .12);
}

.skills-root-node::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 32%, rgba(255,255,255,.045) 48%, transparent 64%);
  transform: translateX(-100%);
  animation: skillRootSheen 5.8s ease-in-out infinite;
}

@keyframes skillRootSheen {
  0%, 64% { transform: translateX(-100%); }
  84%, 100% { transform: translateX(100%); }
}

.skills-root-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 86px;
  height: 86px;
  border: 1px solid #a67c35;
  border-radius: 50%;
  background: radial-gradient(circle, #342b17, #12100b 68%);
  box-shadow: inset 0 0 16px rgba(221, 174, 64, .18), 0 0 20px rgba(205, 157, 55, .12);
}

.skills-root-icon img {
  width: 64px;
  height: 64px;
  object-fit: contain;
  filter: drop-shadow(0 4px 4px #000);
}

.skills-root-icon span {
  position: absolute;
  right: -6px;
  bottom: -4px;
  display: grid;
  place-items: center;
  min-width: 31px;
  height: 31px;
  padding: 0 4px;
  border: 2px solid #c4933f;
  border-radius: 50%;
  background: #0d0c09;
  color: #f3d278;
  font: 900 14px/1 Georgia, serif;
  box-shadow: 0 3px 10px #000;
}

.skills-root-copy > div:first-child {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.skills-root-copy b {
  color: #f2d17a;
  font: 800 25px/1 Georgia, serif;
}

.skills-root-copy em {
  color: #aa8e50;
  font: 800 9px/1 system-ui, sans-serif;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.skills-root-copy > strong {
  display: block;
  margin-top: 7px;
  color: #bcb39f;
  font: 700 12px/1 system-ui, sans-serif;
}

.skills-root-progress,
.skill-node-progress {
  overflow: hidden;
  border: 1px solid rgba(92, 75, 43, .68);
  background: #050505;
  box-shadow: inset 0 1px 3px #000;
}

.skills-root-progress {
  height: 9px;
  margin-top: 9px;
  border-radius: 999px;
}

.skills-root-progress i,
.skill-node-progress i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #7b4b12, #d8a537 72%, #f3d27b);
  box-shadow: inset 0 1px rgba(255,255,255,.25), 0 0 12px rgba(217, 166, 56, .24);
}

.skills-root-copy > small {
  display: block;
  margin-top: 7px;
  color: #8f8878;
  font: 700 10px/1.2 system-ui, sans-serif;
}

.skills-tree-connector {
  position: relative;
  width: 74%;
  height: 32px;
  margin: 0 auto;
  border-bottom: 1px solid rgba(132, 101, 45, .65);
}

.skills-tree-connector::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: 100%;
  background: linear-gradient(#a87c31, #6f552b);
}

.skills-tree-branches {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.skill-branch {
  --branch-rgb: 176, 143, 72;
  --branch-bright: #c9aa61;
  position: relative;
  padding: 12px;
  border: 1px solid rgba(var(--branch-rgb), .38);
  border-radius: 9px;
  background:
    linear-gradient(180deg, rgba(var(--branch-rgb), .07), transparent 42%),
    linear-gradient(145deg, rgba(24, 23, 19, .97), rgba(10, 10, 8, .98));
  box-shadow: inset 0 1px rgba(255,255,255,.025), 0 7px 24px rgba(0,0,0,.24);
}

.skill-branch::before {
  content: "";
  position: absolute;
  top: -15px;
  left: 50%;
  width: 1px;
  height: 15px;
  background: rgba(var(--branch-rgb), .55);
}

.skill-branch-gathering { --branch-rgb: 87, 142, 76; --branch-bright: #8fc278; }
.skill-branch-combat { --branch-rgb: 165, 72, 69; --branch-bright: #d4837e; }
.skill-branch-artisan { --branch-rgb: 101, 119, 172; --branch-bright: #91a3df; }
.skill-branch-adventure { --branch-rgb: 153, 105, 170; --branch-bright: #c291d4; }

.skill-branch-header {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  padding: 2px 3px 10px;
  border-bottom: 1px solid rgba(var(--branch-rgb), .28);
}

.skill-branch-symbol {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border: 1px solid rgba(var(--branch-rgb), .55);
  border-radius: 6px;
  background: rgba(var(--branch-rgb), .09);
  color: var(--branch-bright);
  font: 800 16px/1 Georgia, serif;
}

.skill-branch-header > div {
  min-width: 0;
}

.skill-branch-header b {
  display: block;
  color: var(--branch-bright);
  font: 800 16px/1.1 Georgia, serif;
  letter-spacing: .5px;
}

.skill-branch-header small {
  display: block;
  margin-top: 3px;
  overflow: hidden;
  color: #817d72;
  font: 650 10px/1.1 system-ui, sans-serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-branch-header > strong {
  min-width: 42px;
  color: rgba(var(--branch-rgb), .95);
  font: 800 20px/1 Georgia, serif;
  text-align: right;
}

.skill-branch-nodes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.skill-tree-node {
  display: grid;
  grid-template-columns: 61px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 88px;
  padding: 9px 10px;
  border: 1px solid rgba(var(--branch-rgb), .25);
  border-radius: 7px;
  background: linear-gradient(145deg, rgba(31, 30, 25, .95), rgba(12, 12, 10, .98));
  box-shadow: inset 0 1px rgba(255,255,255,.025), 0 3px 8px rgba(0,0,0,.2);
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.skill-tree-node:hover {
  z-index: 2;
  transform: translateY(-2px);
  border-color: rgba(var(--branch-rgb), .68);
  background: linear-gradient(145deg, rgba(var(--branch-rgb), .11), rgba(15, 15, 12, .98));
  box-shadow: 0 8px 22px rgba(0,0,0,.32), 0 0 18px rgba(var(--branch-rgb), .08);
}

.skill-node-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(var(--branch-rgb), .45);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--branch-rgb), .12), #0b0b09 72%);
}

.skill-node-icon img {
  width: 43px;
  height: 43px;
  object-fit: contain;
  filter: drop-shadow(0 3px 3px #000);
}

.skill-node-icon span {
  position: absolute;
  right: -4px;
  bottom: -4px;
  display: grid;
  place-items: center;
  min-width: 25px;
  height: 25px;
  padding: 0 3px;
  border: 1px solid rgba(var(--branch-rgb), .75);
  border-radius: 50%;
  background: #0b0b09;
  color: var(--branch-bright);
  font: 900 11px/1 Georgia, serif;
  box-shadow: 0 2px 8px #000;
}

.skill-node-details {
  min-width: 0;
}

.skill-node-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 7px;
}

.skill-node-title b {
  overflow: hidden;
  color: #d9cfb7;
  font: 800 13px/1.1 Georgia, serif;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-node-title em {
  flex: 0 0 auto;
  color: rgba(var(--branch-rgb), .8);
  font: 800 9px/1 system-ui, sans-serif;
}

.skill-node-details > small {
  display: block;
  margin-top: 4px;
  color: #8c8679;
  font: 700 9px/1 system-ui, sans-serif;
}

.skill-node-progress {
  height: 6px;
  margin-top: 7px;
  border-radius: 999px;
}

.skill-node-progress i {
  background: linear-gradient(90deg, rgba(var(--branch-rgb), .65), var(--branch-bright));
  box-shadow: inset 0 1px rgba(255,255,255,.18), 0 0 8px rgba(var(--branch-rgb), .16);
}

.skill-node-next {
  display: block;
  margin-top: 5px;
  overflow: hidden;
  color: #777267;
  font: 650 8px/1 system-ui, sans-serif;
  letter-spacing: .1px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.skill-tree-node.is-maxed,
.skills-root-node.is-maxed {
  border-color: #d6aa49;
  box-shadow: inset 0 0 18px rgba(220, 174, 69, .07), 0 0 18px rgba(220, 174, 69, .08);
}

.skill-tree-node.is-maxed .skill-node-icon {
  box-shadow: inset 0 0 12px rgba(235, 190, 82, .14), 0 0 12px rgba(224, 177, 69, .11);
}

#skillsDialog .skills-leaderboard-button,
#skillsDialog .change-character {
  min-width: 190px;
  min-height: 45px;
  margin-top: 18px;
  border: 1px solid #72572c;
  border-radius: 6px;
  background: linear-gradient(#2d2517, #15120d);
  color: #d8bc74;
  font: 900 11px/1 system-ui, sans-serif;
  letter-spacing: 1px;
  box-shadow: inset 0 1px rgba(255,255,255,.04), 0 4px 12px rgba(0,0,0,.24);
  transition: transform .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
}

#skillsDialog .skills-leaderboard-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

#skillsDialog .change-character {
  float: right;
  color: #b99a67;
}

#skillsDialog .skills-leaderboard-button:hover,
#skillsDialog .change-character:hover {
  transform: translateY(-1px);
  border-color: #b78a3c;
  color: #ffe7a4;
  box-shadow: 0 7px 18px rgba(0,0,0,.34), 0 0 16px rgba(202, 152, 55, .1);
}

#skillsDialog::-webkit-scrollbar { width: 10px; }
#skillsDialog::-webkit-scrollbar-track { background: #080807; }
#skillsDialog::-webkit-scrollbar-thumb { border: 2px solid #080807; border-radius: 999px; background: #584423; }
#skillsDialog::-webkit-scrollbar-thumb:hover { background: #80612f; }

@media (max-width: 980px) {
  .skills-overview {
    grid-template-columns: repeat(4, 1fr);
  }
  .skills-overview-intro {
    grid-column: 1 / -1;
    min-height: 66px;
  }
  .skill-branch-nodes {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  #skillsDialog.game-dialog.wide {
    width: calc(100% - 14px);
    max-height: 95vh;
    padding: 18px 12px 20px;
  }
  #skillsDialog #skillsTitle {
    margin-bottom: 14px;
    font-size: 19px;
    letter-spacing: 1.5px;
  }
  .skills-overview {
    grid-template-columns: repeat(2, 1fr);
  }
  .skills-overview-intro {
    grid-column: 1 / -1;
  }
  .skills-tree-root {
    width: 100%;
  }
  .skills-root-node {
    grid-template-columns: 75px minmax(0, 1fr);
    gap: 11px;
    min-height: 108px;
    padding: 18px 14px 14px;
  }
  .skills-root-icon {
    width: 68px;
    height: 68px;
  }
  .skills-root-icon img {
    width: 51px;
    height: 51px;
  }
  .skills-root-copy b {
    font-size: 21px;
  }
  .skills-tree-connector {
    display: none;
  }
  .skills-tree-branches {
    grid-template-columns: 1fr;
    margin-top: 14px;
  }
  .skill-branch::before {
    display: none;
  }
  #skillsDialog .skills-leaderboard-button,
  #skillsDialog .change-character {
    width: 100%;
    float: none;
    margin-top: 10px;
  }
}

@media (max-width: 430px) {
  .skills-overview-stat {
    min-height: 70px;
  }
  .skills-overview-stat b {
    font-size: 18px;
  }
  .skills-root-copy > div:first-child {
    display: block;
  }
  .skills-root-copy em {
    display: block;
    margin-top: 4px;
  }
  .skill-tree-node {
    grid-template-columns: 54px minmax(0, 1fr);
    min-height: 82px;
    padding: 8px;
  }
  .skill-node-icon {
    width: 49px;
    height: 49px;
  }
  .skill-node-icon img {
    width: 37px;
    height: 37px;
  }
}

/* =========================================================
   PROFESSIONAL RUNECRAFTING MODE CARDS + SHOOTING STAR 2.0
   ========================================================= */

/* Keep both Runecrafting activity buttons perfectly matched. */
.runecrafting-dialog #rcModeHub.rc-mode-hub{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-auto-rows:138px!important;
  gap:12px!important;
  margin-top:16px!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card{
  position:relative!important;
  width:100%!important;
  height:138px!important;
  min-height:138px!important;
  max-height:138px!important;
  margin:0!important;
  padding:18px 28px!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:105px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  align-content:center!important;
  align-items:center!important;
  column-gap:20px!important;
  row-gap:4px!important;
  overflow:hidden!important;
  text-align:left!important;
  border:2px solid #bb7a2c!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.035),transparent 42%),
    linear-gradient(135deg,#673416,#351b0d 62%,#1b0f08)!important;
  box-shadow:inset 0 0 0 2px #1b0d05,0 5px 14px rgba(0,0,0,.36)!important;
  transition:transform .16s ease,filter .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card:hover{
  transform:translateY(-2px)!important;
  filter:brightness(1.08)!important;
  border-color:#f0c461!important;
  box-shadow:inset 0 0 0 2px #1b0d05,0 8px 18px rgba(0,0,0,.45),0 0 18px rgba(231,165,65,.18)!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card>img,
.runecrafting-dialog #rcModeHub .rc-mode-card>.rc-mode-rune{
  grid-column:1!important;
  grid-row:1 / 4!important;
  justify-self:center!important;
  align-self:center!important;
  width:78px!important;
  height:78px!important;
  max-width:78px!important;
  max-height:78px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.55))!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card>strong{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
  color:#ffe09a!important;
  font:900 16px/1.1 Georgia,serif!important;
  letter-spacing:.055em!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card>span:not(.rc-mode-label):not(.rc-mode-rune){
  grid-column:2!important;
  grid-row:2!important;
  color:#ecd8b0!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card>small{
  grid-column:2!important;
  grid-row:3!important;
  align-self:start!important;
  color:#c6a777!important;
  font-size:9px!important;
  line-height:1.25!important;
  letter-spacing:.07em!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-card.repoggle>.rc-mode-rune{
  width:78px!important;
  height:78px!important;
}
.runecrafting-dialog #rcModeHub .rc-mode-label{z-index:5!important}

/* Premium modal shell. */
.mining-dialog{
  width:min(1060px,96vw)!important;
  max-width:1060px!important;
  padding:20px!important;
  overflow:hidden!important;
  color:#efe6d5!important;
  border:2px solid #b77a38!important;
  outline:1px solid rgba(255,220,148,.32)!important;
  outline-offset:-7px!important;
  background:
    radial-gradient(circle at 78% 0,rgba(57,105,151,.20),transparent 34%),
    linear-gradient(180deg,#191b26 0,#100d13 35%,#090708 100%)!important;
  box-shadow:0 28px 90px rgba(0,0,0,.88),inset 0 0 60px rgba(0,0,0,.54)!important;
}
.mining-dialog::backdrop{background:rgba(2,3,8,.86);backdrop-filter:blur(5px)}
.mining-dialog .dialog-x{
  z-index:40!important;
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid #b27b3c!important;
  background:linear-gradient(#39231a,#1b100d)!important;
  color:#ffe6ad!important;
  box-shadow:0 3px 10px #0008!important;
}
.mining-heading{
  position:relative!important;
  z-index:2!important;
  margin:-2px 44px 14px 0!important;
  padding:4px 0 15px!important;
  border-bottom:1px solid rgba(214,169,95,.45)!important;
}
.mining-heading img{
  width:52px!important;
  height:52px!important;
  padding:8px!important;
  box-sizing:border-box!important;
  border:1px solid #9a6a33!important;
  background:radial-gradient(circle,#314258,#141621 68%)!important;
  box-shadow:0 0 18px rgba(105,184,255,.18),inset 0 0 0 2px #0a0a0f!important;
}
.mining-heading h3{
  margin:0!important;
  color:#ffe0a0!important;
  font:900 23px/1 Georgia,serif!important;
  letter-spacing:.11em!important;
  text-shadow:0 2px #000,0 0 16px rgba(255,184,78,.22)!important;
}
.mining-heading p{margin:7px 0 0!important;color:#bcb6b5!important;font-size:12px!important}
.mining-hud{
  position:relative!important;
  z-index:3!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  margin-bottom:10px!important;
}
.mining-hud span{
  position:relative!important;
  overflow:hidden!important;
  min-height:58px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:9px 13px!important;
  border:1px solid #594838!important;
  background:linear-gradient(180deg,rgba(29,36,51,.94),rgba(13,13,20,.96))!important;
  color:#aaa6a4!important;
  font:800 9px/1.1 Arial,sans-serif!important;
  letter-spacing:.11em!important;
  box-shadow:inset 0 0 18px rgba(0,0,0,.48),0 3px 8px rgba(0,0,0,.3)!important;
}
.mining-hud span::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:linear-gradient(#9fd9ff,#d89b4d);
  box-shadow:0 0 10px #79c7ff;
}
.mining-hud b{margin-top:7px!important;color:#ffe2a1!important;font:900 17px/1 Georgia,serif!important;letter-spacing:.02em!important}

/* Cinematic volcanic night scene. */
.star-arena{
  position:relative!important;
  height:520px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  border:2px solid #88603a!important;
  border-radius:8px!important;
  background:
    radial-gradient(ellipse at 52% 44%,rgba(55,115,142,.25),transparent 24%),
    linear-gradient(180deg,#090f20 0,#151426 46%,#2b1716 70%,#100907 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(255,212,133,.16),inset 0 -85px 100px #000b,0 12px 34px #0008!important;
}
.star-arena::before{
  content:"";
  position:absolute;
  z-index:1;
  inset:0;
  pointer-events:none;
  opacity:.8;
  background-image:
    radial-gradient(circle at 6% 11%,#fff 0 1px,transparent 1.8px),
    radial-gradient(circle at 18% 24%,#91d5ff 0 1px,transparent 2px),
    radial-gradient(circle at 29% 7%,#fff5cc 0 1.2px,transparent 2px),
    radial-gradient(circle at 41% 19%,#fff 0 .8px,transparent 1.7px),
    radial-gradient(circle at 58% 9%,#9cdfff 0 1px,transparent 2px),
    radial-gradient(circle at 69% 26%,#fff 0 1px,transparent 1.8px),
    radial-gradient(circle at 82% 13%,#ffe3aa 0 1.2px,transparent 2px),
    radial-gradient(circle at 94% 31%,#fff 0 .8px,transparent 1.7px);
  animation:repoStarfieldDrift 18s linear infinite alternate;
}
.star-arena::after{
  content:"";
  position:absolute;
  z-index:25;
  inset:0;
  pointer-events:none;
  border-radius:6px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),transparent 28%,transparent 72%,rgba(0,0,0,.42)),
    radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.45) 100%);
  box-shadow:inset 0 0 55px #0008;
}
.volcano-sky{
  z-index:0!important;
  background:
    radial-gradient(ellipse at 78% 18%,rgba(97,68,160,.30),transparent 24%),
    radial-gradient(ellipse at 38% 16%,rgba(34,105,146,.28),transparent 27%),
    linear-gradient(180deg,#070d1d 0,#17162a 52%,#41201d 100%)!important;
}
.volcano-sky::before{
  content:"";
  position:absolute;
  left:-12%;right:-12%;top:31%;height:135px;
  background:linear-gradient(100deg,transparent,rgba(80,125,170,.10),rgba(176,91,160,.12),transparent);
  filter:blur(24px);
  transform:rotate(-4deg);
  animation:repoNebulaMove 11s ease-in-out infinite alternate;
}
.volcano-sky::after{
  content:"";
  position:absolute;
  right:10%;top:9%;width:70px;height:70px;border-radius:50%;
  background:radial-gradient(circle at 38% 34%,#fff8d9 0 7%,#d9e7f1 8% 42%,#8197b8 66%,transparent 68%);
  box-shadow:0 0 25px rgba(200,226,255,.34),0 0 70px rgba(115,155,218,.20);
  opacity:.78;
}
.volcano-sky>i{
  width:3px!important;height:3px!important;
  background:#ffb55c!important;
  box-shadow:0 0 8px #ff6b2b!important;
  animation:repoEmberRise 4.8s linear infinite!important;
}
.starfield{position:absolute;z-index:2;inset:0;pointer-events:none}
.starfield i{
  position:absolute;width:3px;height:3px;border-radius:50%;
  background:#eaf7ff;box-shadow:0 0 8px #9ad9ff;
  animation:repoTwinkle 2.2s ease-in-out infinite alternate;
}
.starfield i:nth-child(1){left:9%;top:13%;animation-delay:-.2s}.starfield i:nth-child(2){left:17%;top:31%;animation-delay:-1.3s}.starfield i:nth-child(3){left:27%;top:18%;animation-delay:-.7s}.starfield i:nth-child(4){left:36%;top:8%;animation-delay:-1.8s}.starfield i:nth-child(5){left:46%;top:28%;animation-delay:-.4s}.starfield i:nth-child(6){left:57%;top:12%;animation-delay:-1.1s}.starfield i:nth-child(7){left:64%;top:34%;animation-delay:-.9s}.starfield i:nth-child(8){left:73%;top:8%;animation-delay:-1.6s}.starfield i:nth-child(9){left:83%;top:25%;animation-delay:-.1s}.starfield i:nth-child(10){left:91%;top:15%;animation-delay:-1.4s}.starfield i:nth-child(11){left:52%;top:39%;animation-delay:-.6s}.starfield i:nth-child(12){left:22%;top:41%;animation-delay:-2s}
.meteor-trails{position:absolute;z-index:3;inset:0;pointer-events:none;overflow:hidden}
.meteor-trails i{
  position:absolute;width:135px;height:2px;
  background:linear-gradient(90deg,transparent,#bfe9ff 70%,#fff);
  box-shadow:0 0 10px #73caff;
  transform:rotate(-27deg);
  opacity:0;
  animation:repoMeteorPass 7.5s linear infinite;
}
.meteor-trails i:nth-child(1){left:7%;top:12%;animation-delay:-1s}.meteor-trails i:nth-child(2){left:58%;top:29%;animation-delay:-4.6s;animation-duration:10s}.meteor-trails i:nth-child(3){left:28%;top:36%;animation-delay:-7.2s;animation-duration:12s}
.crater-haze{
  position:absolute;z-index:3;left:-10%;right:-10%;bottom:0;height:42%;
  background:radial-gradient(ellipse at 50% 100%,rgba(255,80,29,.18),transparent 58%);
  filter:blur(8px);pointer-events:none;
  animation:repoCraterBreath 4.5s ease-in-out infinite alternate;
}
.mountain{
  z-index:4!important;
  filter:drop-shadow(0 -4px 8px rgba(0,0,0,.5));
  background:linear-gradient(145deg,#302731 0,#15131a 55%,#0b090d 100%)!important;
  clip-path:polygon(0 100%,0 62%,11% 46%,20% 55%,34% 13%,45% 49%,56% 29%,72% 60%,84% 39%,100% 72%,100% 100%)!important;
}
.ridge-a{left:-8%!important;width:73%!important;height:285px!important;opacity:.88}
.ridge-b{right:-9%!important;width:71%!important;height:325px!important;background:linear-gradient(145deg,#3a2a31,#18131a 58%,#09070a)!important;opacity:.96}
.lava-pool{
  z-index:6!important;
  background:radial-gradient(ellipse,#fff4a2 0 8%,#ffb31e 28%,#e54818 60%,#5f170f 100%)!important;
  border:3px solid #4c1d12!important;
  box-shadow:0 0 20px #ff6d25,inset 0 0 12px #fff0a0!important;
  filter:saturate(1.25);
}
.lava-a{width:185px!important;height:42px!important;right:28px!important;bottom:36px!important}
.lava-b{width:116px!important;height:30px!important;left:28px!important;bottom:84px!important}
.star-impact-halo{
  position:absolute;z-index:5;left:52%;top:54%;width:330px;height:160px;
  transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(95,235,255,.24),rgba(65,126,184,.10) 38%,transparent 70%);
  filter:blur(5px);animation:repoHaloPulse 2.4s ease-in-out infinite alternate;
}
.shooting-star{
  z-index:10!important;
  left:52%!important;top:51%!important;
  width:260px!important;height:225px!important;
  transform:translate(-50%,-50%)!important;
  filter:drop-shadow(0 22px 18px rgba(0,0,0,.75)) drop-shadow(0 0 22px rgba(100,220,238,.24))!important;
  animation:repoStarHover 4.2s ease-in-out infinite!important;
}
.shooting-star::before{
  content:"";position:absolute;z-index:-1;left:50%;top:50%;width:265px;height:120px;
  transform:translate(-50%,-50%) rotate(-11deg);border:2px solid rgba(129,231,255,.28);border-radius:50%;
  box-shadow:0 0 12px rgba(93,205,255,.18),inset 0 0 12px rgba(93,205,255,.14);
  animation:repoOrbitSpin 9s linear infinite;
}
.shooting-star::after{
  content:"";position:absolute;z-index:-2;inset:22px;border-radius:50%;
  background:radial-gradient(circle,rgba(120,240,255,.32),transparent 67%);filter:blur(15px);
  animation:repoCoreGlow 1.7s ease-in-out infinite alternate;
}
.shooting-star>i,.shooting-star>.star-core{
  position:absolute!important;
  border:2px solid #153e45!important;
  background:linear-gradient(145deg,#548d8d 0,#2c6165 45%,#173c44 72%,#0c2028 100%)!important;
  box-shadow:inset 5px 6px 0 rgba(197,255,248,.08),inset -8px -7px 12px rgba(0,0,0,.35),0 0 8px rgba(96,225,226,.12)!important;
  clip-path:polygon(18% 8%,70% 0,94% 27%,100% 72%,72% 98%,26% 91%,0 62%,5% 25%)!important;
}
.shooting-star>i:nth-child(1){inset:24px 30px 28px 25px!important;transform:rotate(5deg)!important}
.shooting-star>i:nth-child(2){width:122px!important;height:112px!important;left:1px!important;top:59px!important;transform:rotate(-26deg)!important;background:linear-gradient(145deg,#376f72,#173d45 72%)!important}
.shooting-star>i:nth-child(3){width:124px!important;height:132px!important;right:0!important;top:43px!important;transform:rotate(29deg)!important;background:linear-gradient(145deg,#477f7e,#173841 75%)!important}
.shooting-star>i:nth-child(4){width:112px!important;height:93px!important;left:74px!important;top:0!important;transform:rotate(12deg)!important;background:linear-gradient(145deg,#659b91,#285d64 68%)!important}
.shooting-star>i:nth-child(5){width:118px!important;height:96px!important;left:70px!important;bottom:0!important;transform:rotate(-10deg)!important;background:linear-gradient(145deg,#2d6469,#122f39 75%)!important}
.shooting-star>.star-core{
  z-index:8!important;width:104px!important;height:104px!important;left:78px!important;top:58px!important;
  border:2px solid #d7f9ff!important;border-radius:38% 62% 48% 52%!important;
  clip-path:polygon(50% 0,84% 18%,100% 56%,72% 92%,31% 100%,0 67%,8% 25%)!important;
  background:
    radial-gradient(circle at 35% 28%,#fff 0 5%,#bffaff 8%,#54d7df 28%,#1e7f8b 55%,#123c50 78%,#071c2b 100%)!important;
  box-shadow:inset 0 0 15px #d9ffff,0 0 15px #8ef5ff,0 0 40px rgba(68,210,255,.52)!important;
  animation:repoCoreGlow 1.3s ease-in-out infinite alternate!important;
}
.shooting-star.struck{animation:repoStarImpact .48s cubic-bezier(.2,.8,.2,1)!important}
.shooting-star.degraded{
  filter:grayscale(.82) brightness(.52) drop-shadow(0 18px 13px #000)!important;
  transform:translate(-50%,-50%) scale(.94)!important;
  animation:none!important;
}
.shooting-star.degraded::before{opacity:.18!important;animation:none!important}
.shooting-star.degraded::after{opacity:.1!important}
.shooting-star.degraded>.star-core{box-shadow:inset 0 0 8px #87969a,0 0 7px #49575c!important;animation:none!important}
.shooting-star.degraded:after{content:""!important}

.star-dust{position:absolute;z-index:12;inset:0;pointer-events:none}
.star-dust i{
  width:6px!important;height:6px!important;border-radius:50%!important;
  background:#c6fbff!important;box-shadow:0 0 9px #6cecff!important;
  transform:none!important;animation:repoDustLift 2.4s ease-out infinite!important;
}
.star-dust i:nth-child(1){left:42%!important;top:50%!important}.star-dust i:nth-child(2){left:56%!important;top:43%!important}.star-dust i:nth-child(3){left:48%!important;top:67%!important}.star-dust i:nth-child(4){left:61%!important;top:59%!important}.star-dust i:nth-child(5){left:37%!important;top:61%!important}
.mining-pet{
  z-index:16!important;left:24%!important;bottom:64px!important;width:116px!important;height:132px!important;
  animation:repoPetWorkBob 1.25s ease-in-out infinite!important;
}
.mining-pet::after{
  content:"";position:absolute;left:8px;right:15px;bottom:-2px;height:16px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,0,0,.7),transparent 70%);filter:blur(2px);z-index:-1;
}
.mining-pet .pet-body,.mining-pet img{filter:drop-shadow(0 7px 4px rgba(0,0,0,.7))!important}
.mining-pet-label,
.live-star-miner>span{
  border:1px solid rgba(222,191,112,.65)!important;
  border-radius:3px!important;
  background:linear-gradient(180deg,rgba(21,29,35,.96),rgba(8,11,15,.96))!important;
  color:#ffe7a8!important;
  box-shadow:0 3px 8px #0008!important;
}
.pet-pickaxe{right:-8px!important;bottom:39px!important;filter:drop-shadow(0 3px 3px #0008)!important}
.fake-miner{z-index:8!important;filter:drop-shadow(0 4px 4px #0008)}
.fake-bubble{z-index:20!important;background:#eee0c0!important;border-color:#6b4926!important;box-shadow:0 5px 12px #0008!important}
.live-star-miners{z-index:14!important}
.live-star-miner{filter:drop-shadow(0 5px 5px rgba(0,0,0,.68))}

.mining-cycle-rewards{
  position:relative!important;
  z-index:3!important;
  margin-top:11px!important;
  padding:12px 14px!important;
  border:1px solid #6c563c!important;
  border-radius:5px!important;
  background:linear-gradient(180deg,#171b24,#0d0c12)!important;
  color:#c9c0ae!important;
  box-shadow:inset 0 0 18px #0007,0 3px 9px #0005!important;
}
.mining-cycle-rewards b{display:block!important;margin-top:4px!important;color:#ffe0a0!important;font:900 13px/1 Georgia,serif!important}
.mining-cycle-track{
  height:15px!important;border:1px solid #4c5360!important;border-radius:999px!important;
  background:#05070b!important;box-shadow:inset 0 2px 6px #000!important;
}
.mining-cycle-track i{
  border-radius:999px!important;
  background:linear-gradient(90deg,#348cad,#78e4eb 52%,#ffe18a)!important;
  box-shadow:0 0 12px rgba(91,224,241,.58)!important;
}
.mining-controls{gap:9px!important}
.mining-controls button{
  min-height:52px!important;
  border:1px solid #9b6e36!important;
  background:linear-gradient(#51301a,#29160d)!important;
  color:#ffe2a1!important;
  font:900 11px/1 Georgia,serif!important;
  letter-spacing:.07em!important;
  box-shadow:inset 0 0 0 2px #130a06,0 3px 0 #080402!important;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease!important;
}
.mining-controls button:hover:not(:disabled){transform:translateY(-2px)!important;filter:brightness(1.13)!important;box-shadow:inset 0 0 0 2px #130a06,0 5px 0 #080402,0 0 16px rgba(255,176,62,.22)!important}
.mining-controls button:disabled{filter:grayscale(.45)!important;opacity:.66!important;cursor:not-allowed!important}
#miningMessage{
  min-height:20px!important;margin:11px 0 0!important;color:#c8beac!important;
  font-size:11px!important;line-height:1.4!important;letter-spacing:.02em!important;
}
.mining-game.is-active #mineStarButton:not(:disabled){animation:none!important}
.mining-game.is-active .star-impact-halo{animation-duration:1.3s!important;opacity:1!important}

@keyframes repoStarfieldDrift{to{transform:translate3d(-8px,5px,0);filter:brightness(1.15)}}
@keyframes repoNebulaMove{to{transform:translateX(5%) rotate(-1deg);opacity:.7}}
@keyframes repoEmberRise{0%{transform:translateY(0) scale(.7);opacity:0}18%{opacity:1}100%{transform:translateY(-240px) translateX(30px) scale(1.3);opacity:0}}
@keyframes repoTwinkle{to{opacity:.25;transform:scale(.55)}}
@keyframes repoMeteorPass{0%,72%{opacity:0;transform:translate(-130px,-40px) rotate(-27deg)}76%{opacity:.85}91%{opacity:0;transform:translate(260px,145px) rotate(-27deg)}100%{opacity:0}}
@keyframes repoCraterBreath{to{opacity:.65;transform:translateY(-7px)}}
@keyframes repoHaloPulse{to{opacity:.55;transform:translate(-50%,-50%) scale(1.1)}}
@keyframes repoStarHover{0%,100%{transform:translate(-50%,-50%) translateY(0) rotate(-.7deg)}50%{transform:translate(-50%,-50%) translateY(-7px) rotate(.8deg)}}
@keyframes repoOrbitSpin{to{transform:translate(-50%,-50%) rotate(349deg)}}
@keyframes repoCoreGlow{to{filter:brightness(1.23);opacity:.8}}
@keyframes repoStarImpact{0%{transform:translate(-50%,-50%) scale(1)}22%{transform:translate(-50%,-50%) scale(.91) rotate(-3deg);filter:brightness(2.2)}58%{transform:translate(-50%,-50%) scale(1.08) rotate(2deg)}100%{transform:translate(-50%,-50%) scale(1)}}
@keyframes repoDustLift{0%{opacity:0;transform:translate(0,5px) scale(.5)}25%{opacity:1}100%{opacity:0;transform:translate(30px,-55px) scale(1.15)}}
@keyframes repoPetWorkBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
@keyframes repoStarHoverMobile{0%,100%{transform:translate(-50%,-50%) scale(.78) translateY(0) rotate(-.7deg)}50%{transform:translate(-50%,-50%) scale(.78) translateY(-7px) rotate(.8deg)}}

@media(max-width:760px){
  .runecrafting-dialog #rcModeHub{grid-auto-rows:150px!important}
  .runecrafting-dialog #rcModeHub .rc-mode-card{height:150px!important;min-height:150px!important;max-height:150px!important;grid-template-columns:82px minmax(0,1fr)!important;padding:15px!important;column-gap:13px!important}
  .runecrafting-dialog #rcModeHub .rc-mode-card>img,.runecrafting-dialog #rcModeHub .rc-mode-card>.rc-mode-rune{width:64px!important;height:64px!important;max-width:64px!important;max-height:64px!important}
  .star-arena{height:430px!important}
  .shooting-star{left:56%!important;transform:translate(-50%,-50%) scale(.78)!important;animation:repoStarHoverMobile 4.2s ease-in-out infinite!important}
  .star-impact-halo{left:56%!important;transform:translate(-50%,-50%) scale(.78)!important}
  .mining-pet{left:16%!important;transform:scale(.88)!important;transform-origin:bottom center!important}
  .mining-hud{grid-template-columns:1fr!important}
  .mining-cycle-rewards{grid-template-columns:1fr!important;text-align:center!important}
}
@media(prefers-reduced-motion:reduce){
  .star-arena::before,.volcano-sky::before,.volcano-sky>i,.starfield i,.meteor-trails i,.crater-haze,.star-impact-halo,.shooting-star,.shooting-star::before,.shooting-star::after,.shooting-star>.star-core,.star-dust i,.mining-pet{animation:none!important}
}


/* Temporary homepage billboard scene swap */
.scene.billboard-scene>.tavern-sound-toggle{display:none!important}
.scene.billboard-scene .tavern-lobby{background:#0c1121}
.scene.billboard-scene .tavern-lobby>img{object-position:center center}
.scene.billboard-scene .tavern-lobby-vignette{box-shadow:inset 0 0 34px rgba(4,9,22,.26)}
.scene.billboard-scene .tavern-guest{width:32.5%;z-index:4;transform:translate(-50%,-50%);transform-origin:50% 100%}
.scene.billboard-scene .tavern-guest img{filter:drop-shadow(0 3px 2px rgba(6,9,18,.52))}
.scene.billboard-scene .tavern-guest.is-idle{animation:none}
@media(max-width:760px){.scene.billboard-scene .tavern-guest{width:35%}}

.scene.billboard-scene .tavern-guest.is-billboard-seated{animation:none!important}
.scene.billboard-scene .tavern-guest.is-billboard-seated img{transform-origin:50% 100%}


/* Billboard V3: dedicated ladder poses + corrected perch baseline */
.scene.billboard-scene .tavern-guest.is-billboard-climbing{
  width:var(--billboard-climb-width,9.2%)!important;
  z-index:5;
  transform:translate(-50%,-50%);
}
.scene.billboard-scene .tavern-guest.is-billboard-climbing img{
  transform:translate(0,0) scaleX(var(--guest-facing,-1))!important;
  transform-origin:50% 50%!important;
  filter:drop-shadow(0 2px 1px rgba(5,8,18,.58));
}
.scene.billboard-scene .tavern-guest.is-billboard-seated{
  z-index:5;
}
/* Keep the billboard lip visually in front of the dangling lower legs. */
.scene.billboard-scene .tavern-guest.is-billboard-seated::before{
  content:"";
  position:absolute;
  left:20%;right:20%;top:49.5%;height:2px;
  background:rgba(8,10,15,.18);
  pointer-events:none;
}


/* Billboard V4: feet-aligned platform walk + consistent ladder/entry scale */
.scene.billboard-scene .tavern-guest.is-billboard-walking{
  width:var(--billboard-walk-width,19%)!important;
  z-index:5;
  animation:none!important;
}
.scene.billboard-scene .tavern-guest.is-billboard-walking img{
  transform-origin:50% 100%;
}


/* Billboard V5: clean sit transition, depth ordering and true sky dissolves */
.scene.billboard-scene .tavern-lobby-base,
.scene.billboard-scene .tavern-lobby-frame{
  opacity:0;
  transition:opacity 1120ms cubic-bezier(.22,.61,.36,1);
  will-change:opacity;
}
.scene.billboard-scene .tavern-guest.is-billboard-walking{
  z-index:3!important; /* route passes behind seated guests */
}
.scene.billboard-scene .tavern-guest.is-billboard-seated{
  z-index:6!important;
}
.scene.billboard-scene .tavern-guest.is-billboard-climbing{
  z-index:7!important;
}

/* Billboard V6: keep guests permanently above the environmental dissolve.
   Background frames may swap z-index while crossfading, but never over actors. */
.scene.billboard-scene .tavern-guest-layer{
  z-index:10!important;
}
.scene.billboard-scene .tavern-lobby-base,
.scene.billboard-scene .tavern-lobby-frame{
  pointer-events:none;
}


/* Billboard V8: World Cup advertisement rotation inside the physical screen */
.scene.billboard-scene .billboard-ad-layer{
  position:absolute;
  left:14.25%;
  top:11.45%;
  width:71.55%;
  height:36.85%;
  z-index:6;
  overflow:hidden;
  pointer-events:none;
  background:#050811;
  border-radius:.35%;
  box-shadow:
    inset 0 0 0 1px rgba(235,187,93,.07),
    inset 0 0 28px rgba(0,0,0,.30),
    0 0 12px rgba(89,126,185,.05);
  isolation:isolate;
}
.scene.billboard-scene .billboard-ad-slide{
  position:absolute;
  inset:0;
  opacity:0;
  transition:opacity 1450ms cubic-bezier(.22,.61,.36,1);
  will-change:opacity;
  overflow:hidden;
}
.scene.billboard-scene .billboard-ad-slide::before{
  content:"";
  position:absolute;
  inset:-4%;
  background-image:var(--ad-image);
  background-size:cover;
  background-position:center;
  filter:blur(10px) brightness(.42) saturate(.82);
  transform:scale(1.05);
  opacity:.72;
}
.scene.billboard-scene .billboard-ad-slide img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
  z-index:1;
  transform:scale(1.012);
  transform-origin:center;
  filter:brightness(.92) contrast(1.035) saturate(.94);
  image-rendering:auto;
}
.scene.billboard-scene .billboard-ad-slide.is-active{opacity:1}
.scene.billboard-scene .billboard-ad-scanlines{
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.012),transparent 12%,transparent 88%,rgba(255,196,97,.018)),
    repeating-linear-gradient(to bottom,rgba(255,255,255,.012) 0 1px,rgba(0,0,0,.018) 1px 3px);
  mix-blend-mode:soft-light;
  opacity:.48;
}
.scene.billboard-scene .billboard-ad-sheen{
  position:absolute;
  z-index:5;
  top:-18%;
  bottom:-18%;
  left:-42%;
  width:30%;
  transform:skewX(-18deg);
  background:linear-gradient(90deg,transparent,rgba(255,236,194,.055),transparent);
  filter:blur(3px);
  opacity:.55;
  animation:billboard-ad-sheen 13s ease-in-out infinite;
  pointer-events:none;
}
@keyframes billboard-ad-sheen{
  0%,18%{left:-42%;opacity:0}
  28%{opacity:.42}
  48%{left:118%;opacity:.20}
  52%,100%{left:118%;opacity:0}
}
/* Environmental frames keep their JS-controlled 1/2/3 stacking during the
   wind dissolve. The ad screen sits above them, and guests sit above the ad. */
.scene.billboard-scene .billboard-ad-layer{z-index:5!important}
.scene.billboard-scene .tavern-lobby-vignette{z-index:9;pointer-events:none}
.scene.billboard-scene .tavern-guest-layer{z-index:10!important}


/* Billboard V9: registered environmental plate + screen overscan */
.scene.billboard-scene .billboard-ad-layer{
  /* 0.08% overscan is hidden behind the physical frame and prevents a
     browser-rounding seam from appearing along the top edge. */
  clip-path:inset(0 round .35%);
}


/* Billboard V10: true full-bleed adverts. The fixture posters are 16:9 while
   the physical billboard aperture is slightly taller; cover + tiny overscan
   removes the remaining top/bottom letterbox seam without exposing the frame. */
.scene.billboard-scene .billboard-ad-slide img{
  object-fit:cover!important;
  object-position:center center!important;
  transform:scale(1.012);
}
.scene.billboard-scene .billboard-ad-slide::before{
  inset:-6%;
  transform:scale(1.08);
}


/* ======================================================================
   REPO COMPANY V20.0 — ONE-PAGE ADVENTURER DASHBOARD
   Supplied frame art: 1774×887. The dashboard is laid out in those virtual
   pixels and scaled as one unit, giving the homepage a game-client feel.
   ====================================================================== */
body.repo-dashboard-v20-active{
  margin:0!important;
  min-height:100vh!important;
  background:#02070b!important;
}
body.repo-dashboard-v20-active.repo-dashboard-v20-desktop{
  width:100vw!important;
  height:100vh!important;
  overflow:hidden!important;
}
body.repo-dashboard-v20-active #petRoom{display:none!important}
body.repo-dashboard-v20-active > #repoDashboardV20{
  display:block!important;
}
.repo-dashboard-shell-v20{
  --repo-dashboard-scale:1;
  position:fixed;
  left:50%;top:50%;
  width:1774px;height:887px;
  transform:translate(-50%,-50%) scale(var(--repo-dashboard-scale));
  transform-origin:center center;
  isolation:isolate;
  overflow:visible;
  --repo-dashboard-frame-url:url('assets/repo-dashboard-frame-v20.png');
  background-image:var(--repo-dashboard-frame-url);
  background-position:center;
  background-repeat:no-repeat;
  background-size:100% 100%;
  color:#e6d7ab;
  font-family:Georgia,'Times New Roman',serif;
}
.repo-dashboard-shell-v20::after{
  content:"";position:absolute;inset:0;z-index:40;pointer-events:none;
  box-shadow:inset 0 0 0 2px rgba(200,144,58,.18),inset 0 0 70px rgba(0,0,0,.26);
}

/* Header: logo floats over the upper vista; existing controls occupy the carved strip. */
.repo-dashboard-shell-v20>.repo-main-header{
  position:absolute!important;inset:0!important;z-index:20!important;
  width:100%!important;height:232px!important;max-width:none!important;
  margin:0!important;padding:0!important;border:0!important;background:none!important;
  box-shadow:none!important;overflow:visible!important;pointer-events:none!important;
}
.repo-dashboard-shell-v20>.repo-main-header::before,.repo-dashboard-shell-v20>.repo-main-header::after{display:none!important}
.repo-dashboard-shell-v20 .repo-header-centre{position:static!important;width:100%!important;height:100%!important;display:block!important;transform:none!important}
.repo-dashboard-shell-v20 .repo-logo-wrap{
  position:absolute!important;left:50%!important;top:5px!important;z-index:2!important;
  width:345px!important;height:154px!important;margin:0!important;padding:0!important;
  transform:translateX(-50%)!important;display:grid!important;place-items:center!important;
  pointer-events:none!important;background:none!important;border:0!important;box-shadow:none!important;
}
.repo-dashboard-shell-v20 .repo-header-logo{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center!important;
  filter:drop-shadow(0 7px 8px rgba(0,0,0,.74))!important;
}
.repo-dashboard-shell-v20 .character-box{
  position:absolute!important;left:282px!important;top:164px!important;z-index:3!important;
  width:1152px!important;height:60px!important;min-width:0!important;margin:0!important;padding:0!important;
  transform:none!important;text-align:left!important;pointer-events:auto!important;
}
.repo-dashboard-shell-v20 .signed-in-controls{
  position:relative!important;width:100%!important;height:60px!important;margin:0!important;padding:0 7px!important;
  display:grid!important;grid-template-columns:214px 316px 116px 116px 116px 128px 54px!important;
  gap:4px!important;align-items:stretch!important;justify-content:stretch!important;flex-wrap:nowrap!important;
}
.repo-dashboard-shell-v20 .signed-in-controls.hidden{display:none!important}
.repo-dashboard-shell-v20 .admin-button{
  position:absolute!important;left:-38px!important;top:14px!important;z-index:8!important;width:32px!important;height:32px!important;
  min-width:32px!important;margin:0!important;padding:0!important;border:1px solid #7f6538!important;border-radius:4px!important;
  background:#0d1720!important;color:#d6b864!important;font-size:0!important;
}
.repo-dashboard-shell-v20 .admin-button::before{content:'A';font:900 11px/1 Georgia,serif}
.repo-dashboard-shell-v20 .character-summary{
  grid-column:1!important;position:relative!important;display:grid!important;grid-template-columns:46px minmax(0,1fr)!important;
  grid-template-rows:1fr 1fr!important;column-gap:9px!important;align-items:center!important;
  width:100%!important;height:100%!important;min-width:0!important;margin:0!important;padding:7px 10px!important;
  border:1px solid rgba(132,101,55,.35)!important;border-radius:2px!important;
  background:linear-gradient(180deg,rgba(9,18,25,.74),rgba(5,11,16,.42))!important;
  box-shadow:inset 0 0 0 1px rgba(226,185,102,.025)!important;color:#d9c390!important;text-align:left!important;
}
.repo-dashboard-shell-v20 .character-summary:hover{background:linear-gradient(180deg,rgba(17,31,42,.90),rgba(7,15,22,.65))!important;border-color:rgba(202,151,67,.55)!important}
.repo-dashboard-shell-v20 .repo-dash-avatar{
  grid-row:1/3!important;grid-column:1!important;width:42px!important;height:42px!important;object-fit:cover!important;object-position:center top!important;
  border:1px solid #9a753b!important;border-radius:3px!important;background:#09121b!important;box-shadow:inset 0 0 0 2px #1a1109,0 2px 5px #0008!important;
}
.repo-dashboard-shell-v20 .character-summary>b{grid-column:2!important;align-self:end!important;color:#e46e58!important;font:900 14px/1 Georgia,serif!important;letter-spacing:.025em!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.repo-dashboard-shell-v20 .character-summary>span{grid-column:2!important;align-self:start!important;color:#d0b77d!important;font:700 10px/1.2 Georgia,serif!important;white-space:nowrap}
.repo-dashboard-shell-v20 .character-summary>span strong{color:#f0d697!important;font-size:11px!important}
.repo-dash-harmony-quick{
  grid-column:2!important;display:grid!important;grid-template-columns:72px 1fr!important;align-items:center!important;
  height:100%;padding:6px 13px!important;border-left:1px solid rgba(144,107,58,.30);border-right:1px solid rgba(144,107,58,.30);
  background:linear-gradient(180deg,rgba(7,15,21,.58),rgba(2,8,12,.20));
}
.repo-dash-harmony-quick>strong{color:#e5d5a8;font:900 34px/.9 Georgia,serif;text-align:center;text-shadow:0 2px #000}
.repo-dash-harmony-copy{display:grid;grid-template-columns:1fr auto;gap:3px 9px;align-items:center;min-width:0}
.repo-dash-harmony-copy>small{grid-column:1/3;color:#b68a49;font:900 8px/1 Georgia,serif;letter-spacing:.16em}
.repo-dash-harmony-copy>i{display:block;height:8px;border:1px solid #392f1f;background:#05090c;box-shadow:inset 0 1px 3px #000;overflow:hidden}
.repo-dash-harmony-copy>i b{display:block;height:100%;width:0;background:linear-gradient(90deg,#7b9d23,#c19c38,#e0c16b);box-shadow:0 0 7px rgba(213,181,91,.26);transition:width .25s ease}
.repo-dash-harmony-copy>em{color:#c5ad77;font:700 8px/1 Georgia,serif;font-style:normal;white-space:nowrap}
.repo-dashboard-shell-v20 .header-quick-button,
.repo-dashboard-shell-v20 #openWorldCupEvent,
.repo-dashboard-shell-v20 #openTcgBinderQuick{
  position:relative!important;height:100%!important;min-width:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:5px 8px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  border:1px solid rgba(125,96,54,.28)!important;border-radius:1px!important;background:linear-gradient(180deg,rgba(13,24,31,.72),rgba(5,11,16,.46))!important;
  color:#dbc286!important;box-shadow:inset 0 1px rgba(255,255,255,.025)!important;font:900 11px/1 Georgia,serif!important;letter-spacing:.06em!important;
  transition:background .14s ease,border-color .14s ease,filter .14s ease!important;
}
.repo-dashboard-shell-v20 .header-quick-button:hover,
.repo-dashboard-shell-v20 #openWorldCupEvent:hover,
.repo-dashboard-shell-v20 #openTcgBinderQuick:hover{background:linear-gradient(180deg,rgba(27,45,56,.86),rgba(8,17,23,.65))!important;border-color:rgba(204,154,70,.64)!important;filter:brightness(1.08)!important;transform:none!important}
.repo-dashboard-shell-v20 .header-quick-button img{width:28px!important;height:28px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px #000)!important}
.repo-dashboard-shell-v20 #openBank{grid-column:3!important}.repo-dashboard-shell-v20 #openSkills{grid-column:4!important}.repo-dashboard-shell-v20 #openPets{grid-column:5!important}
.repo-dashboard-shell-v20 #openWorldCupEvent{grid-column:6!important}.repo-dashboard-shell-v20 #openTcgBinderQuick{grid-column:7!important}
.repo-dashboard-shell-v20 #openWorldCupEvent img{width:86px!important;height:47px!important;max-width:100%!important;object-fit:contain!important}
.repo-dashboard-shell-v20 #openTcgBinderQuick img{width:36px!important;height:44px!important;max-width:36px!important;max-height:44px!important;transform:none!important;animation:none!important}
.repo-dashboard-shell-v20 #openQuidditchMode{display:none!important}

/* Three primary panels line up exactly with the openings in the supplied frame. */
.repo-dashboard-shell-v20>main{
  position:absolute!important;left:285px!important;top:239px!important;z-index:10!important;
  width:1151px!important;height:420px!important;max-width:none!important;margin:0!important;padding:0!important;
  display:grid!important;grid-template-columns:310px 550px 287px!important;grid-template-rows:420px!important;gap:2px!important;align-items:stretch!important;
  background:none!important;border:0!important;overflow:visible!important;
}
.repo-dashboard-shell-v20>main>.card,
.repo-dashboard-shell-v20>main>.scene{
  min-width:0!important;width:100%!important;height:420px!important;min-height:0!important;max-height:none!important;margin:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important;
}

/* Left: Harmony progression. */
.repo-dashboard-shell-v20 .harmony-card{padding:13px 17px 11px!important;color:#d7c18e!important}
.repo-dashboard-shell-v20 .harmony-card .harmony-heading{height:30px;margin:0 0 4px!important;padding:0 0 7px!important;border-bottom:1px solid rgba(154,111,58,.34)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;color:#dfc786!important;font:900 12px/1 Georgia,serif!important;letter-spacing:.14em!important}
.repo-dashboard-shell-v20 .harmony-card .harmony-heading img{width:22px!important;height:22px!important;object-fit:contain!important}
.repo-dashboard-shell-v20 .harmony-card #count{font:900 62px/.92 Georgia,serif!important;color:#ead9ae!important;text-shadow:0 3px 0 #3c2714,0 0 10px rgba(226,192,112,.08)!important;text-align:center!important;margin:7px 0 0!important}
.repo-dashboard-shell-v20 .harmony-card #status{height:17px!important;min-height:0!important;margin:2px 0 7px!important;color:#d1ad67!important;font:700 10px/1 Georgia,serif!important;text-align:center!important}
.repo-dashboard-shell-v20 .harmony-card .bar{height:8px!important;margin:0!important;border:1px solid #4c3920!important;border-radius:999px!important;background:#071014!important;box-shadow:inset 0 2px 3px #0008!important}
.repo-dashboard-shell-v20 .harmony-card .bar i{background:linear-gradient(90deg,#748c1b,#b38c2f,#d8b55a)!important}
.repo-dashboard-shell-v20 .harmony-card>.row{height:22px!important;margin:3px 0 3px!important;padding:0 2px!important;display:flex!important;align-items:center!important;color:#c0a36c!important;font:700 9px/1 Georgia,serif!important}
.repo-dashboard-shell-v20 .harmony-card>.row b{color:#d8bb78!important;font-size:9px!important}
.repo-dashboard-shell-v20 .harmony-unlocks{margin-top:3px!important;padding:0!important;border-top:1px solid rgba(125,91,49,.24)!important}
.repo-dashboard-shell-v20 .harmony-unlocks-title{height:22px!important;padding:6px 0 0!important;color:#caa85f!important;font:900 9px/1 Georgia,serif!important;letter-spacing:.16em!important;text-align:center!important}
.repo-dashboard-shell-v20 .harmony-lamp-group{padding:5px 5px 6px!important;border:1px solid rgba(117,84,45,.25)!important;background:rgba(4,10,14,.24)!important}
.repo-dashboard-shell-v20 .harmony-lamp-group-heading{height:30px!important;display:grid!important;grid-template-columns:30px 1fr!important;gap:7px!important;align-items:center!important;margin:0 0 4px!important;padding:0!important}
.repo-dashboard-shell-v20 .harmony-lamp-group-heading img{width:28px!important;height:28px!important;object-fit:contain!important}
.repo-dashboard-shell-v20 .harmony-lamp-group-heading b{color:#d3b36c!important;font-size:9px!important}.repo-dashboard-shell-v20 .harmony-lamp-group-heading small{color:#866f50!important;font-size:7px!important}
.repo-dashboard-shell-v20 .harmony-lamp-levels{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:3px!important}
.repo-dashboard-shell-v20 .harmony-lamp-tier{min-height:42px!important;padding:3px 2px!important;background:rgba(5,12,16,.38)!important;border:1px solid rgba(112,82,45,.26)!important;text-align:center!important}
.repo-dashboard-shell-v20 .harmony-lamp-tier .harmony-unlock-level{width:22px!important;height:22px!important;font-size:8px!important}.repo-dashboard-shell-v20 .harmony-lamp-tier b{font-size:7px!important}.repo-dashboard-shell-v20 .harmony-lamp-tier strong{font-size:6px!important}
.repo-dashboard-shell-v20 .harmony-unlock{height:52px!important;min-height:52px!important;margin-top:5px!important;padding:4px 5px!important;display:grid!important;grid-template-columns:28px 34px 1fr 42px!important;gap:5px!important;align-items:center!important;border:1px solid rgba(113,83,46,.24)!important;background:rgba(4,10,14,.28)!important}
.repo-dashboard-shell-v20 .harmony-unlock .harmony-unlock-level{width:26px!important;height:26px!important;font-size:9px!important}.repo-dashboard-shell-v20 .harmony-unlock>img{width:32px!important;height:32px!important;object-fit:contain!important}.repo-dashboard-shell-v20 .harmony-unlock-copy b{font-size:9px!important;color:#d3b56f!important}.repo-dashboard-shell-v20 .harmony-unlock-copy small{font-size:7px!important;color:#8e7957!important;line-height:1.12!important}.repo-dashboard-shell-v20 .harmony-unlock>strong{font-size:7px!important}

/* Centre: keep the real live billboard/character scene, only fit it to the new aperture. */
.repo-dashboard-shell-v20 #scene{position:relative!important;padding:0!important;isolation:isolate!important;background:#08121b!important}
.repo-dashboard-shell-v20 #scene>.tavern-lobby{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;box-shadow:none!important}
.repo-dashboard-shell-v20 #scene>.tavern-room,.repo-dashboard-shell-v20 #scene>.poster,.repo-dashboard-shell-v20 #scene>.monitor,.repo-dashboard-shell-v20 #scene>.desk,.repo-dashboard-shell-v20 #scene>.keyboard,.repo-dashboard-shell-v20 #scene>.chair,.repo-dashboard-shell-v20 #scene>#gamer,.repo-dashboard-shell-v20 #scene>#level{display:none!important}
.repo-dashboard-shell-v20 #scene #nextDeskCharacter{bottom:9px!important;right:9px!important;transform:scale(.82)!important;transform-origin:right bottom!important;opacity:.8!important}
.repo-dashboard-shell-v20 #scene #resourceLayer{inset:0!important}

/* Right: Harmonize + both live leaderboards. */
.repo-dashboard-shell-v20 .harmony-actions{padding:13px 15px 10px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;color:#d8c28c!important;overflow:hidden!important}
.repo-dashboard-shell-v20 .harmony-actions>h2{height:30px!important;margin:0 0 5px!important;padding:4px 0 8px!important;border-bottom:1px solid rgba(154,111,58,.34)!important;color:#dfc786!important;font:900 12px/1 Georgia,serif!important;letter-spacing:.14em!important;text-align:center!important}
.repo-dashboard-shell-v20 .harmony-actions .harmony-button{height:126px!important;min-height:126px!important;margin:0 0 5px!important;padding:8px!important;border:1px solid rgba(143,103,53,.55)!important;border-radius:3px!important;background:radial-gradient(circle at 50% 20%,rgba(133,53,25,.12),transparent 44%),rgba(5,12,16,.32)!important;box-shadow:inset 0 0 0 1px rgba(229,184,91,.025)!important}
.repo-dashboard-shell-v20 .harmony-actions .harmony-button-logo{width:60px!important;height:60px!important;margin:0 auto 4px!important}.repo-dashboard-shell-v20 .harmony-actions .harmony-button-logo img{width:60px!important;height:60px!important}.repo-dashboard-shell-v20 .harmony-actions .harmony-button strong{font:900 20px/1 Georgia,serif!important;color:#e0c887!important}.repo-dashboard-shell-v20 .harmony-actions .harmony-button em{font:900 9px/1 Georgia,serif!important;color:#c79a46!important}
.repo-dashboard-shell-v20 .harmony-sound-toggle{align-self:center!important;height:18px!important;margin:0 0 4px!important;padding:2px 8px!important;border:1px solid rgba(123,91,51,.34)!important;border-radius:2px!important;background:rgba(5,11,15,.32)!important;color:#9b8058!important;font-size:7px!important}
.repo-dashboard-shell-v20 .harmony-actions .daily-xp-board{width:100%!important;min-height:0!important;margin:0 0 4px!important;padding:4px 7px 5px!important;background:rgba(5,11,15,.28)!important;border:1px solid rgba(116,84,45,.22)!important;box-shadow:none!important;overflow:hidden!important}
.repo-dashboard-shell-v20 .harmony-actions .daily-xp-board::before,.repo-dashboard-shell-v20 .harmony-actions .daily-xp-board::after{display:none!important}
.repo-dashboard-shell-v20 .harmony-actions .daily-xp-heading{height:18px!important;margin:0!important;padding:3px 0 4px!important;border-bottom:1px solid rgba(121,87,47,.22)!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-heading span{font:900 8px/1 Georgia,serif!important;letter-spacing:.14em!important;color:#c8a761!important}
.repo-dashboard-shell-v20 .harmony-actions .daily-xp-list{padding:2px 0 0!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-entry{min-height:15px!important;padding:1px 1px!important;grid-template-columns:13px minmax(0,1fr) auto!important;gap:3px!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-rank,.repo-dashboard-shell-v20 .harmony-actions .daily-xp-name,.repo-dashboard-shell-v20 .harmony-actions .daily-xp-total{font:700 7px/1.1 Georgia,serif!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-rank{color:#c49242!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-name{color:#c9b582!important}.repo-dashboard-shell-v20 .harmony-actions .daily-xp-total{color:#d1bd8a!important}
.repo-dashboard-shell-v20 .harmony-actions .global-xp-board{margin-top:0!important;margin-bottom:3px!important}
.repo-dashboard-shell-v20 .home-leaderboards-shortcut{height:24px!important;min-height:24px!important;margin:auto 0 0!important;padding:2px 8px!important;border:1px solid rgba(120,88,48,.28)!important;border-radius:2px!important;background:rgba(5,11,15,.36)!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;color:#bda56e!important;box-shadow:none!important}.repo-dashboard-shell-v20 .home-leaderboards-shortcut img{width:14px!important;height:14px!important}.repo-dashboard-shell-v20 .home-leaderboards-shortcut span{display:flex!important;gap:6px!important;align-items:center!important}.repo-dashboard-shell-v20 .home-leaderboards-shortcut b{font-size:7px!important}.repo-dashboard-shell-v20 .home-leaderboards-shortcut small{font-size:6px!important}.repo-dashboard-shell-v20 .home-leaderboards-shortcut em{font-size:13px!important}

/* Bottom command deck: same buttons, regrouped into the three training wings and two utility groups. */
.repo-dashboard-shell-v20>.game-strip.adventure-nav{
  position:absolute!important;left:271px!important;top:665px!important;z-index:12!important;
  width:1228px!important;height:151px!important;max-width:none!important;margin:0!important;padding:0!important;
  display:grid!important;grid-template-columns:700px 513px!important;gap:15px!important;align-items:stretch!important;
  border:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important;
}
.repo-dashboard-shell-v20 .game-strip.adventure-nav .nav-section{height:151px!important;margin:0!important;padding:8px 11px 9px!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
.repo-dashboard-shell-v20 .nav-section-heading{height:24px!important;margin:0 0 5px!important;padding:0 2px 5px!important;border-bottom:1px solid rgba(142,101,54,.30)!important;display:flex!important;align-items:center!important;gap:8px!important}
.repo-dashboard-shell-v20 .nav-section-heading>span:first-child{font:900 12px/1 Georgia,serif!important;color:#d2b36e!important;letter-spacing:.12em!important}.repo-dashboard-shell-v20 .nav-section-heading>small{display:none!important}
.repo-dash-training-quick{margin-left:auto!important;display:flex!important;gap:5px!important}.repo-dash-training-quick button{width:auto!important;min-width:92px!important;height:20px!important;min-height:20px!important;margin:0!important;padding:2px 8px!important;border:1px solid rgba(120,89,48,.36)!important;border-radius:2px!important;background:#09131a!important;color:#bda268!important;font:900 7px/1 Georgia,serif!important;letter-spacing:.06em!important;box-shadow:none!important}
.repo-dashboard-shell-v20 .nav-button-grid{display:grid!important;grid-template-columns:1fr!important;gap:0!important;padding:0!important;background:none!important}
.repo-dashboard-shell-v20 .training-skill-grid{grid-template-columns:repeat(3,1fr)!important;gap:8px!important;height:108px!important}.repo-dashboard-shell-v20 .activity-button-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important;height:108px!important}
.repo-dash-skill-group{min-width:0;height:108px;padding:6px 6px 5px;border:1px solid rgba(121,87,47,.32);background:linear-gradient(180deg,rgba(7,15,20,.36),rgba(3,8,12,.20));box-shadow:inset 0 1px rgba(255,255,255,.018)}
.repo-dash-skill-group>b{display:block;height:17px;margin:0 0 5px;color:#c9ad6b;font:900 8px/1 Georgia,serif;letter-spacing:.10em;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-dash-skill-group>div{height:75px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;align-items:stretch}
.repo-dashboard-shell-v20 .repo-dash-skill-group button{
  position:relative!important;width:100%!important;height:75px!important;min-height:75px!important;margin:0!important;padding:4px 2px 3px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
  border:1px solid transparent!important;border-radius:2px!important;background:transparent!important;box-shadow:none!important;color:#bea769!important;font:700 7px/1 Georgia,serif!important;text-align:center!important;overflow:hidden!important;
}
.repo-dashboard-shell-v20 .repo-dash-skill-group button::before,.repo-dashboard-shell-v20 .repo-dash-skill-group button::after{display:none!important}
.repo-dashboard-shell-v20 .repo-dash-skill-group button:hover:not(:disabled){border-color:rgba(209,161,75,.58)!important;background:linear-gradient(180deg,rgba(73,51,24,.32),rgba(8,16,21,.26))!important;filter:brightness(1.12)!important;transform:none!important}
.repo-dashboard-shell-v20 .repo-dash-skill-group button:disabled{opacity:.45!important;filter:saturate(.55)!important}
.repo-dashboard-shell-v20 .repo-dash-skill-group button>img,.repo-dashboard-shell-v20 .repo-dash-skill-group button>.activity-icon,.repo-dashboard-shell-v20 .repo-dash-skill-group button>.training-skill-icon{width:31px!important;height:31px!important;max-width:31px!important;max-height:31px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px #0008)!important;transform:none!important}
.repo-dashboard-shell-v20 .repo-dash-skill-group button .training-button-copy,.repo-dashboard-shell-v20 .repo-dash-skill-group button .activity-button-copy{display:block!important;width:100%!important;min-width:0!important;text-align:center!important}.repo-dashboard-shell-v20 .repo-dash-skill-group button .training-button-copy small,.repo-dashboard-shell-v20 .repo-dash-skill-group button .activity-button-copy small{display:none!important}.repo-dashboard-shell-v20 .repo-dash-skill-group button .training-button-copy>span,.repo-dashboard-shell-v20 .repo-dash-skill-group button .activity-button-copy>span{display:block!important;color:#bfa86d!important;font:700 7px/1 Georgia,serif!important;white-space:normal!important;line-height:1.05!important}.repo-dashboard-shell-v20 .repo-dash-skill-group .ge-button-icon{border:1px solid #91723d!important;border-radius:50%!important;background:#342611!important;color:#d8b76b!important;display:grid!important;place-items:center!important;font-size:9px!important}
.repo-dashboard-shell-v20 #wiseTaskBadge{position:absolute!important;right:3px!important;top:2px!important}

/* Bottom status strip replaces the old prose footer without introducing new page height. */
.repo-dashboard-shell-v20>footer{
  position:absolute!important;left:279px!important;top:821px!important;z-index:12!important;width:1213px!important;height:42px!important;max-width:none!important;margin:0!important;padding:0 8px!important;
  display:grid!important;grid-template-columns:180px repeat(4,1fr)!important;gap:0!important;align-items:stretch!important;
  border:0!important;background:transparent!important;color:#bda46b!important;overflow:hidden!important;
}
.repo-dash-today{display:flex;align-items:center;padding-left:13px;color:#c9a65c;font:900 10px/1 Georgia,serif;letter-spacing:.13em;white-space:nowrap}
.repo-dash-ticker-item{min-width:0!important;width:100%!important;height:42px!important;margin:0!important;padding:4px 9px!important;display:flex!important;align-items:center!important;gap:8px!important;border:0!important;border-left:1px solid rgba(120,87,47,.28)!important;border-radius:0!important;background:transparent!important;color:#b9a36e!important;box-shadow:none!important;text-align:left!important;cursor:pointer!important}
.repo-dash-ticker-item.is-static{cursor:default!important}.repo-dash-ticker-item:hover:not(.is-static){background:rgba(25,40,47,.24)!important}
.repo-dash-ticker-item img{width:27px!important;height:27px!important;object-fit:contain!important;flex:0 0 27px!important}.repo-dash-ticker-item span{display:flex!important;min-width:0!important;flex-direction:column!important;gap:2px!important}.repo-dash-ticker-item b{color:#c9ad6b!important;font:800 8px/1 Georgia,serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.repo-dash-ticker-item small{color:#8f7c58!important;font:700 7px/1 Georgia,serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Logged-out safety: keep authentication accessible even though the dashboard nodes are nested. */
body.repo-logged-out > #repoDashboardV20{display:block!important;background-image:var(--repo-dashboard-frame-url)!important}
body.repo-logged-out #repoDashboardV20>main,body.repo-logged-out #repoDashboardV20>.game-strip,body.repo-logged-out #repoDashboardV20>footer{display:none!important}
body.repo-logged-out #repoDashboardV20>.repo-main-header{display:block!important}
body.repo-logged-out #repoDashboardV20 .character-box{left:50%!important;top:355px!important;width:360px!important;height:auto!important;transform:translateX(-50%)!important}
body.repo-logged-out #repoDashboardV20 .repo-logo-wrap{top:175px!important;width:430px!important;height:180px!important}
body.repo-logged-out #repoDashboardV20 .character-button{display:block!important;width:100%!important;min-width:0!important;pointer-events:auto!important}

/* Small-screen fallback: functionality remains available with scrolling instead of making a tiny 2:1 dashboard. */
@media(max-width:859px){
  body.repo-dashboard-v20-active{overflow:auto!important;height:auto!important;min-height:100vh!important}
  .repo-dashboard-shell-v20{position:relative!important;left:0!important;top:0!important;width:100%!important;height:auto!important;min-height:100vh!important;transform:none!important;background:#071019!important;padding:12px!important;overflow:visible!important}
  .repo-dashboard-shell-v20>.repo-main-header,.repo-dashboard-shell-v20>main,.repo-dashboard-shell-v20>.game-strip.adventure-nav,.repo-dashboard-shell-v20>footer{position:relative!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important;margin:0 0 10px!important}
  .repo-dashboard-shell-v20>.repo-main-header{height:auto!important;padding-top:145px!important}.repo-dashboard-shell-v20 .repo-logo-wrap{top:8px!important;width:300px!important;height:130px!important}.repo-dashboard-shell-v20 .character-box{position:relative!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important}.repo-dashboard-shell-v20 .signed-in-controls{height:auto!important;display:flex!important;flex-wrap:wrap!important}.repo-dash-harmony-quick{min-width:240px!important;flex:1!important}.repo-dashboard-shell-v20>main{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:10px!important}.repo-dashboard-shell-v20>main>.card,.repo-dashboard-shell-v20>main>.scene{height:auto!important;min-height:420px!important}.repo-dashboard-shell-v20>.game-strip.adventure-nav{display:grid!important;grid-template-columns:1fr!important}.repo-dashboard-shell-v20 .game-strip.adventure-nav .nav-section{height:auto!important}.repo-dashboard-shell-v20 .training-skill-grid,.repo-dashboard-shell-v20 .activity-button-grid{height:auto!important;grid-template-columns:1fr!important}.repo-dashboard-shell-v20>footer{display:grid!important;grid-template-columns:1fr!important;height:auto!important}.repo-dash-today,.repo-dash-ticker-item{min-height:42px!important}
}


/* ======================================================================
   REPO COMPANY V20.1 — DASHBOARD PRECISION POLISH
   Visual correction pass based on the first real V20 render.
   ====================================================================== */

/* The supplied logo can geometrically reach the navigation strip. Keep the
   bar itself opaque and above it so the logo never shows through buttons. */
#repoDashboardV20 .repo-logo-wrap{
  top:7px!important;
  z-index:1!important;
  width:326px!important;
  height:150px!important;
}
#repoDashboardV20 .repo-header-logo{
  width:100%!important;
  height:100%!important;
  object-fit:fill!important;
  object-position:center!important;
  transform:none!important;
}
#repoDashboardV20 .character-box{
  z-index:5!important;
  overflow:hidden!important;
  background:
    linear-gradient(180deg,rgba(8,17,23,.985),rgba(4,10,15,.985))!important;
  box-shadow:
    inset 0 1px 0 rgba(211,164,79,.10),
    inset 0 -1px 0 rgba(0,0,0,.82)!important;
}
#repoDashboardV20 .signed-in-controls{
  position:relative!important;
  z-index:2!important;
}
#repoDashboardV20 .header-quick-button,
#repoDashboardV20 #openWorldCupEvent,
#repoDashboardV20 #openTcgBinderQuick,
#repoDashboardV20 .character-summary,
#repoDashboardV20 .repo-dash-harmony-quick{
  overflow:hidden!important;
}

/* Remove V20.0's temporary pair completely even if an old DOM survived a
   hot reload before this script version was applied. */
#repoDashboardV20 .repo-dash-training-quick{display:none!important}

/* Give headings their own clean row again now that the temporary buttons are gone. */
#repoDashboardV20 .nav-section-heading{
  height:24px!important;
  padding:0 5px 5px!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
}
#repoDashboardV20 .nav-section-heading>span:first-child{
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Command deck — neutralise legacy selected/active/locked button skins.
   The old homepage had several brown button states with higher specificity. */
#repoDashboardV20 .repo-dash-skill-group>div>button,
#repoDashboardV20 .repo-dash-skill-group>div>button.active,
#repoDashboardV20 .repo-dash-skill-group>div>button.selected,
#repoDashboardV20 .repo-dash-skill-group>div>button.unlocked,
#repoDashboardV20 .repo-dash-skill-group>div>button.locked,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-pressed='true'],
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-selected='true']{
  width:100%!important;
  height:75px!important;
  min-height:75px!important;
  margin:0!important;
  padding:5px 2px 4px!important;
  border:1px solid transparent!important;
  border-radius:2px!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
  filter:none!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>button:hover:not(:disabled),
#repoDashboardV20 .repo-dash-skill-group>div>button:focus-visible{
  border-color:rgba(178,135,68,.42)!important;
  background:linear-gradient(180deg,rgba(23,40,49,.54),rgba(7,16,22,.34))!important;
  box-shadow:inset 0 0 0 1px rgba(236,197,112,.025)!important;
  filter:brightness(1.07)!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>button:disabled{
  background:transparent!important;
  border-color:transparent!important;
  opacity:.48!important;
}

/* A little more breathing room around each command icon and a smaller,
   predictable label area so long legacy names cannot escape their boxes. */
#repoDashboardV20 .repo-dash-skill-group{
  padding:6px 5px 5px!important;
}
#repoDashboardV20 .repo-dash-skill-group>div{
  gap:2px!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>button>img,
#repoDashboardV20 .repo-dash-skill-group>div>button>.activity-icon,
#repoDashboardV20 .repo-dash-skill-group>div>button>.training-skill-icon{
  width:29px!important;
  height:29px!important;
  max-width:29px!important;
  max-height:29px!important;
  flex:0 0 29px!important;
}
#repoDashboardV20 .repo-dash-skill-group button .training-button-copy,
#repoDashboardV20 .repo-dash-skill-group button .activity-button-copy{
  width:100%!important;
  max-width:100%!important;
  min-height:14px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-dash-skill-group button .training-button-copy>span,
#repoDashboardV20 .repo-dash-skill-group button .activity-button-copy>span{
  width:100%!important;
  max-width:100%!important;
  color:#bfa86d!important;
  font:700 6.15px/1.05 Georgia,serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  overflow:hidden!important;
}

/* Keep every panel's content inside the decorative frame rather than allowing
   inherited page padding/margins to poke into neighbouring apertures. */
#repoDashboardV20>main>.card,
#repoDashboardV20>main>.scene{
  box-sizing:border-box!important;
}
#repoDashboardV20 .harmony-card{
  padding:12px 16px 10px!important;
}
#repoDashboardV20 .harmony-card #count{
  font-size:59px!important;
  margin-top:5px!important;
}
#repoDashboardV20 .harmony-card #status{
  margin-bottom:5px!important;
  font-size:9px!important;
}
#repoDashboardV20 .harmony-unlock{
  height:50px!important;
  min-height:50px!important;
}
#repoDashboardV20 .harmony-actions{
  padding:12px 14px 9px!important;
}
#repoDashboardV20 .harmony-actions .harmony-button{
  height:122px!important;
  min-height:122px!important;
}
#repoDashboardV20 .harmony-actions .harmony-button strong{
  font-size:19px!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-entry{
  overflow:hidden!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-name{
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-total{
  white-space:nowrap!important;
}

/* Today in Velmora: align with the same central frame width and give each
   ticker cell enough text room instead of stretching into the outer stone. */
#repoDashboardV20>footer{
  left:285px!important;
  top:819px!important;
  width:1151px!important;
  height:40px!important;
  padding:0 7px!important;
  grid-template-columns:154px repeat(4,minmax(0,1fr))!important;
}
#repoDashboardV20 .repo-dash-today{
  min-width:0!important;
  padding-left:11px!important;
  font-size:8.5px!important;
  letter-spacing:.11em!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-dash-ticker-item{
  height:40px!important;
  min-width:0!important;
  padding:4px 7px!important;
  gap:7px!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-dash-ticker-item img{
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
}
#repoDashboardV20 .repo-dash-ticker-item span{
  min-width:0!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-dash-ticker-item b{
  max-width:100%!important;
  font-size:7px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoDashboardV20 .repo-dash-ticker-item small{
  max-width:100%!important;
  font-size:6px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Header contents need a tiny scale correction at the supplied 1774px canvas
   so icon labels and the binder tile remain comfortably within their cells. */
#repoDashboardV20 .signed-in-controls{
  grid-template-columns:214px 316px 112px 112px 112px 126px 54px!important;
  gap:5px!important;
}
#repoDashboardV20 .header-quick-button{
  padding-inline:5px!important;
  gap:5px!important;
  font-size:10px!important;
}
#repoDashboardV20 .header-quick-button img{
  width:26px!important;
  height:26px!important;
}
#repoDashboardV20 #openWorldCupEvent img{
  width:82px!important;
  height:43px!important;
}


/* ======================================================================
   REPO COMPANY V20.2 — MICRO POLISH
   Fixes after the V20.1 screenshot pass.
   ====================================================================== */

/* Remove lingering "selected/current" skins that were still tinting
   Farming and Raids differently. Cover button states, parent states and
   pseudo-decorators from older page layouts. */
#repoDashboardV20 .repo-dash-skill-group>div.active>button,
#repoDashboardV20 .repo-dash-skill-group>div.is-active>button,
#repoDashboardV20 .repo-dash-skill-group>div.current>button,
#repoDashboardV20 .repo-dash-skill-group>div.is-current>button,
#repoDashboardV20 .repo-dash-skill-group>div.selected>button,
#repoDashboardV20 .repo-dash-skill-group>div.is-selected>button,
#repoDashboardV20 .repo-dash-skill-group>div[data-active='true']>button,
#repoDashboardV20 .repo-dash-skill-group>div[data-selected='true']>button,
#repoDashboardV20 .repo-dash-skill-group>div[data-current='true']>button,
#repoDashboardV20 .repo-dash-skill-group>div>button.active,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-active,
#repoDashboardV20 .repo-dash-skill-group>div>button.current,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-current,
#repoDashboardV20 .repo-dash-skill-group>div>button.selected,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-selected,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='page'],
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='true']{
  background:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  filter:none!important;
}
#repoDashboardV20 .repo-dash-skill-group>div.active>button::before,
#repoDashboardV20 .repo-dash-skill-group>div.is-active>button::before,
#repoDashboardV20 .repo-dash-skill-group>div.current>button::before,
#repoDashboardV20 .repo-dash-skill-group>div.is-current>button::before,
#repoDashboardV20 .repo-dash-skill-group>div.selected>button::before,
#repoDashboardV20 .repo-dash-skill-group>div.is-selected>button::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.active::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-active::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.current::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-current::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.selected::before,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-selected::before,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='page']::before,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='true']::before,
#repoDashboardV20 .repo-dash-skill-group>div.active>button::after,
#repoDashboardV20 .repo-dash-skill-group>div.is-active>button::after,
#repoDashboardV20 .repo-dash-skill-group>div.current>button::after,
#repoDashboardV20 .repo-dash-skill-group>div.is-current>button::after,
#repoDashboardV20 .repo-dash-skill-group>div.selected>button::after,
#repoDashboardV20 .repo-dash-skill-group>div.is-selected>button::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.active::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-active::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.current::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-current::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.selected::after,
#repoDashboardV20 .repo-dash-skill-group>div>button.is-selected::after,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='page']::after,
#repoDashboardV20 .repo-dash-skill-group>div>button[aria-current='true']::after{
  display:none!important;
  content:none!important;
}

/* Lower and slightly reduce the big TRAINING / OTHER labels so they sit
   on the panel cleanly rather than overlapping the top frame. Cover both
   pseudo-label and real-label implementations. */
#repoDashboardV20 .training-nav::before,
#repoDashboardV20 .other-nav::before,
#repoDashboardV20 .repo-dash-training-shell::before,
#repoDashboardV20 .repo-dash-other-shell::before{
  top:-10px!important;
  font-size:14px!important;
  line-height:1!important;
  padding:0 8px!important;
}
#repoDashboardV20 .training-nav>.nav-shell-title,
#repoDashboardV20 .other-nav>.nav-shell-title,
#repoDashboardV20 .repo-dash-training-title,
#repoDashboardV20 .repo-dash-other-title{
  top:-10px!important;
  font-size:14px!important;
  line-height:1!important;
  transform:none!important;
}

/* Clean the Today in Velmora strip: remove the extra horizontal rule / line
   that is visually cutting through the ticker row. */
#repoDashboardV20>footer,
#repoDashboardV20 .repo-dash-ticker-item,
#repoDashboardV20 .repo-dash-ticker-item span{
  background-image:none!important;
}
#repoDashboardV20>footer::before,
#repoDashboardV20>footer::after,
#repoDashboardV20 .repo-dash-ticker-item::before,
#repoDashboardV20 .repo-dash-ticker-item::after,
#repoDashboardV20 .repo-dash-today::before,
#repoDashboardV20 .repo-dash-today::after{
  display:none!important;
  content:none!important;
  border:0!important;
  box-shadow:none!important;
  background:none!important;
}
#repoDashboardV20>footer{
  border-top:0!important;
  box-shadow:none!important;
}
#repoDashboardV20 .repo-dash-today,
#repoDashboardV20 .repo-dash-ticker-item{
  border-top:0!important;
  box-shadow:none!important;
}


/* ======================================================================
   REPO COMPANY V20.3 — ACTUAL DASHBOARD CORRECTION PASS
   Targets the selectors that were still winning in the live page.
   ====================================================================== */

/* 1. Farming / Raids:
   Older ID-specific homepage rules were stronger than the generic V20 rules.
   Use TWO IDs here so these definitively inherit the clean command-deck skin. */
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button,
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button:hover,
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button:focus-visible,
#repoDashboardV20 .game-strip #openRaids.raids-open-button,
#repoDashboardV20 .game-strip #openRaids.raids-open-button:hover,
#repoDashboardV20 .game-strip #openRaids.raids-open-button:focus-visible{
  background:transparent!important;
  background-image:none!important;
  border:1px solid transparent!important;
  border-radius:2px!important;
  box-shadow:none!important;
  outline:none!important;
  filter:none!important;
  transform:none!important;
  color:#bea769!important;
}
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button:hover,
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button:focus-visible,
#repoDashboardV20 .game-strip #openRaids.raids-open-button:hover,
#repoDashboardV20 .game-strip #openRaids.raids-open-button:focus-visible{
  border-color:rgba(178,135,68,.42)!important;
  background:linear-gradient(180deg,rgba(23,40,49,.54),rgba(7,16,22,.34))!important;
  filter:brightness(1.07)!important;
}
#repoDashboardV20 .game-strip #openRuneDle.farm-run-open-button > span,
#repoDashboardV20 .game-strip #openRaids.raids-open-button > span{
  color:#bfa86d!important;
  text-shadow:none!important;
}

/* 2. The real TRAINING / OTHER labels are .nav-section-heading spans.
   Previous pass targeted pseudo-elements that are not used here.
   Move the actual headings DOWN INSIDE the frame and make them smaller. */
#repoDashboardV20>.game-strip.adventure-nav .nav-section{
  height:151px!important;
  padding:14px 11px 7px!important;
}
#repoDashboardV20>.game-strip.adventure-nav .nav-section-heading{
  position:relative!important;
  top:0!important;
  height:17px!important;
  min-height:17px!important;
  margin:0 0 4px!important;
  padding:0 3px 3px!important;
  align-items:center!important;
  border-bottom:1px solid rgba(142,101,54,.22)!important;
  overflow:visible!important;
}
#repoDashboardV20>.game-strip.adventure-nav .nav-section-heading>span:first-child{
  position:relative!important;
  top:0!important;
  margin:0!important;
  padding:0!important;
  color:#ccb06c!important;
  font:900 10px/1 Georgia,serif!important;
  letter-spacing:.10em!important;
  text-shadow:0 1px 1px #000!important;
}
#repoDashboardV20>.game-strip.adventure-nav .training-skill-grid,
#repoDashboardV20>.game-strip.adventure-nav .activity-button-grid{
  height:105px!important;
}
#repoDashboardV20>.game-strip.adventure-nav .repo-dash-skill-group{
  height:105px!important;
}

/* 3. TODAY IN VELMORA:
   The visible 'line through it' is the decorative lower-panel border in the
   supplied frame because V20 placed the ticker too high. Move the whole ticker
   INTO the narrow lower strip instead of trying to hide the artwork line. */
#repoDashboardV20>footer{
  left:285px!important;
  top:840px!important;
  width:1151px!important;
  height:29px!important;
  min-height:29px!important;
  padding:0 6px!important;
  grid-template-columns:154px repeat(4,minmax(0,1fr))!important;
  align-items:center!important;
  overflow:hidden!important;
  border:0!important;
  background:rgba(4,11,16,.16)!important;
  box-shadow:none!important;
}
#repoDashboardV20 .repo-dash-today,
#repoDashboardV20 .repo-dash-ticker-item{
  height:27px!important;
  min-height:27px!important;
  border-top:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
#repoDashboardV20 .repo-dash-today{
  padding-left:9px!important;
  font-size:7.6px!important;
  letter-spacing:.10em!important;
}
#repoDashboardV20 .repo-dash-ticker-item{
  padding:2px 6px!important;
  gap:6px!important;
  border-left:1px solid rgba(120,87,47,.24)!important;
}
#repoDashboardV20 .repo-dash-ticker-item img{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}
#repoDashboardV20 .repo-dash-ticker-item b{
  font-size:6.4px!important;
  line-height:1!important;
}
#repoDashboardV20 .repo-dash-ticker-item small{
  font-size:5.6px!important;
  line-height:1!important;
}

/* 4. Logo:
   Keep it entirely in the upper vista. Preserve the logo's aspect ratio,
   make it deliberately smaller, and leave a clean gap above the navigation. */
#repoDashboardV20 .repo-logo-wrap{
  left:50%!important;
  top:5px!important;
  width:240px!important;
  height:150px!important;
  z-index:2!important;
  transform:translateX(-50%)!important;
  overflow:visible!important;
}
#repoDashboardV20 .repo-header-logo{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:drop-shadow(0 5px 6px rgba(0,0,0,.64))!important;
}
/* Navigation is the foreground surface; logo stays visually above it, never behind it. */
#repoDashboardV20 .character-box{
  top:164px!important;
  z-index:6!important;
  background:linear-gradient(180deg,rgba(7,16,22,.995),rgba(4,10,14,.995))!important;
}
#repoDashboardV20 .signed-in-controls{
  z-index:7!important;
}


/* ======================================================================
   REPO COMPANY V20.4 — RIGHT PANEL + LIVE NEWS POLISH
   ====================================================================== */

/* Crisp heading: remove the inherited glow/shadow that was making the scaled
   TRAIN HARMONY label look fuzzy. */
#repoDashboardV20 .harmony-actions>h2{
  height:25px!important;
  min-height:25px!important;
  margin:0 0 4px!important;
  padding:3px 0 6px!important;
  color:#e0c783!important;
  font:900 10.5px/1 Georgia,serif!important;
  letter-spacing:.12em!important;
  text-shadow:none!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:geometricPrecision!important;
}

/* Harmonize label and +3 XP are explicit rows now, so they cannot collide. */
#repoDashboardV20 .harmony-actions{
  padding:10px 13px 8px!important;
}
#repoDashboardV20 .harmony-actions .harmony-button{
  height:100px!important;
  min-height:100px!important;
  flex:0 0 100px!important;
  margin:0 0 4px!important;
  padding:6px 8px 7px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
}
#repoDashboardV20 .harmony-actions .harmony-button-logo{
  width:51px!important;
  height:51px!important;
  flex:0 0 51px!important;
  margin:0 auto 4px!important;
}
#repoDashboardV20 .harmony-actions .harmony-button-logo img{
  width:51px!important;
  height:51px!important;
}
#repoDashboardV20 .harmony-actions .harmony-button strong{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#e5ce8b!important;
  font:900 18px/.95 Georgia,serif!important;
  letter-spacing:.02em!important;
  text-shadow:none!important;
  white-space:nowrap!important;
}
#repoDashboardV20 .harmony-actions .harmony-button em{
  display:block!important;
  position:static!important;
  margin:4px 0 0!important;
  padding:0!important;
  color:#cfa04a!important;
  font:900 7.5px/1 Georgia,serif!important;
  letter-spacing:.04em!important;
  transform:none!important;
  white-space:nowrap!important;
}
#repoDashboardV20 .harmony-sound-toggle{
  flex:0 0 16px!important;
  height:16px!important;
  min-height:16px!important;
  margin:0 0 3px!important;
  padding:1px 7px!important;
}

/* Both boards now have a fixed compact height that safely contains five rows.
   This prevents the lower rows and shortcut from falling behind the frame. */
#repoDashboardV20 .harmony-actions .daily-xp-board,
#repoDashboardV20 .harmony-actions .daily-xp-board.global-xp-board{
  flex:0 0 82px!important;
  width:100%!important;
  height:82px!important;
  min-height:82px!important;
  max-height:82px!important;
  margin:0 0 3px!important;
  padding:3px 6px 4px!important;
  overflow:hidden!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-heading{
  height:15px!important;
  min-height:15px!important;
  padding:2px 0 3px!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-heading span{
  font:900 7.2px/1 Georgia,serif!important;
  letter-spacing:.10em!important;
  text-shadow:none!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-list{
  padding:1px 0 0!important;
  overflow:hidden!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-entry{
  grid-template-columns:13px minmax(0,1fr) auto!important;
  gap:3px!important;
  height:11px!important;
  min-height:11px!important;
  padding:0 1px!important;
  align-items:center!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-rank,
#repoDashboardV20 .harmony-actions .daily-xp-name,
#repoDashboardV20 .harmony-actions .daily-xp-total{
  font-size:6.1px!important;
  line-height:1!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-total{
  max-width:78px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Put the Leaderboards shortcut dead-centre and guarantee its own row. */
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut{
  align-self:center!important;
  flex:0 0 23px!important;
  width:100%!important;
  max-width:none!important;
  height:23px!important;
  min-height:23px!important;
  margin:1px auto 0!important;
  padding:1px 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut span{
  width:auto!important;
  justify-content:center!important;
}

/* The live news cell fades cleanly between real daily / weekly events. */
#repoDashboardV20 #repoVelmoraNewsTicker{
  transition:opacity .16s ease!important;
  cursor:default!important;
}
#repoDashboardV20 #repoVelmoraNewsTicker.is-changing{
  opacity:.18!important;
}
#repoDashboardV20 #repoVelmoraNewsTicker b,
#repoDashboardV20 #repoVelmoraNewsTicker small{
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}


/* ======================================================================
   REPO COMPANY V20.5 — SPACE + LABEL ALIGNMENT
   Uses the remaining right-panel space and nudges the lower section labels
   into the frame rather than leaving them caught against the border.
   ====================================================================== */

/* RIGHT PANEL — use the dead space below the existing Leaderboards shortcut.
   Both boards get more breathing room, rows become easier to read, and the
   shortcut itself is larger while remaining centred. */
#repoDashboardV20 .harmony-actions .daily-xp-board,
#repoDashboardV20 .harmony-actions .daily-xp-board.global-xp-board{
  flex:0 0 102px!important;
  height:102px!important;
  min-height:102px!important;
  max-height:102px!important;
  margin:0 0 5px!important;
  padding:4px 7px 6px!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-heading{
  height:19px!important;
  min-height:19px!important;
  padding:3px 0 4px!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-heading span{
  font-size:8px!important;
  letter-spacing:.11em!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-list{
  padding:2px 0 0!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-entry{
  height:14px!important;
  min-height:14px!important;
  padding:1px 2px!important;
  grid-template-columns:14px minmax(0,1fr) auto!important;
  gap:4px!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-rank,
#repoDashboardV20 .harmony-actions .daily-xp-name,
#repoDashboardV20 .harmony-actions .daily-xp-total{
  font-size:6.8px!important;
  line-height:1.05!important;
}
#repoDashboardV20 .harmony-actions .daily-xp-total{
  max-width:92px!important;
}
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut{
  flex:0 0 34px!important;
  width:88%!important;
  max-width:88%!important;
  height:34px!important;
  min-height:34px!important;
  margin:3px auto 0!important;
  padding:3px 12px!important;
  border-color:rgba(145,104,55,.38)!important;
  background:rgba(5,11,15,.40)!important;
}
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut b{
  font-size:8.7px!important;
  letter-spacing:.10em!important;
}
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut small{
  font-size:6.5px!important;
}
#repoDashboardV20 .harmony-actions .home-leaderboards-shortcut em{
  font-size:14px!important;
}

/* TRAINING / OTHER — move the actual main section labels slightly right and
   down so they sit inside the top border rather than touching its corner. */
#repoDashboardV20>.game-strip.adventure-nav .nav-section-heading{
  height:19px!important;
  min-height:19px!important;
  margin:0 0 4px!important;
  padding:2px 3px 3px 14px!important;
  align-items:center!important;
}
#repoDashboardV20>.game-strip.adventure-nav .nav-section-heading>span:first-child{
  top:1px!important;
  left:7px!important;
  font-size:9.2px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
}

/* TODAY IN VELMORA — same visual nudge as the two section labels. */
#repoDashboardV20 .repo-dash-today{
  padding-left:20px!important;
  padding-top:2px!important;
  font-size:7.4px!important;
  line-height:1!important;
  align-items:center!important;
}



/* ============================================================
   REPO PASSPORT LEFT PANEL
   ============================================================ */
.passport-card{
  padding:18px 16px 16px !important;
  position:relative;
  overflow:hidden;
}
.passport-shell{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:100%;
}
.passport-header{
  flex-direction:column;
  gap:2px;
  padding-bottom:6px;
  border-bottom:1px solid rgba(194,139,60,.42);
}
.passport-header span{
  display:block;
  font:800 clamp(22px,2.05vw,34px)/1 Georgia,serif;
  letter-spacing:1.3px;
  color:#f0cf7a;
  text-shadow:0 2px 0 #37200b,0 0 16px rgba(245,206,118,.08);
}
.passport-header small{
  display:block;
  font:700 11px/1.2 Georgia,serif;
  letter-spacing:1.1px;
  color:#d3b276;
}
.passport-top{
  display:grid;
  grid-template-columns:126px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.passport-avatar-wrap{
  position:relative;
  width:126px;
}
.passport-avatar-frame{
  position:relative;
  aspect-ratio:1/1.08;
  border:2px solid rgba(195,145,55,.86);
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 28%, rgba(52,91,154,.28), transparent 58%),
    linear-gradient(180deg, rgba(16,31,54,.96), rgba(8,15,28,.98));
  box-shadow:
    inset 0 0 0 1px rgba(248,216,147,.15),
    inset 0 15px 35px rgba(255,255,255,.03),
    0 10px 20px rgba(0,0,0,.18);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
}
.passport-avatar-frame::before{
  content:'';
  position:absolute;
  inset:8px;
  border:1px solid rgba(247,219,151,.2);
  border-radius:16px;
  pointer-events:none;
}
.passport-avatar-image{
  position:relative;
  width:90%;
  height:90%;
  object-fit:contain;
  image-rendering:auto;
  filter:drop-shadow(0 3px 12px rgba(0,0,0,.55));
}
.passport-level-badge{
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  min-width:48px;
  height:34px;
  padding:0 12px;
  border-radius:16px;
  border:2px solid rgba(202,152,63,.95);
  background:linear-gradient(180deg,#0f1730,#0a111f);
  display:flex;
  align-items:center;
  justify-content:center;
  font:900 18px/1 Georgia,serif;
  color:#f0cf7a;
  text-shadow:0 1px 0 #2d1806;
  box-shadow:0 8px 14px rgba(0,0,0,.18);
}
.passport-identity{
  min-width:0;
  padding-top:4px;
  display:flex;
  flex-direction:column;
  gap:7px;
}
.passport-username{
  font:800 30px/1 Georgia,serif;
  color:#f4d38c;
  text-shadow:0 2px 0 #39200c;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.passport-title-row{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.passport-title-label{
  font:700 10px/1 Georgia,serif;
  letter-spacing:.9px;
  color:#b7c8df;
  text-transform:uppercase;
}
.passport-title-select{
  width:100%;
  height:34px;
  border-radius:10px;
  border:1px solid rgba(194,144,60,.55);
  background:linear-gradient(180deg, rgba(14,27,49,.92), rgba(8,16,29,.97));
  color:#f0d89f;
  font:700 13px/1 Georgia,serif;
  padding:0 10px;
  outline:none;
  box-shadow:inset 0 0 0 1px rgba(250,225,170,.08);
}
.passport-title-select:focus{
  border-color:#e0bc72;
  box-shadow:0 0 0 1px rgba(224,188,114,.3), inset 0 0 0 1px rgba(250,225,170,.08);
}
.passport-member-since{
  font:700 13px/1.2 Georgia,serif;
  color:#d5bb85;
}
.passport-status-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.passport-status-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(194,144,60,.35);
  background:rgba(9,17,30,.55);
  color:#d8c188;
  font:700 11px/1 Georgia,serif;
}
.passport-status-pill i{
  display:inline-block;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#c29a45;
  box-shadow:0 0 8px rgba(194,154,69,.65);
}
.passport-status-pill.is-online i{
  background:#4caf50;
  box-shadow:0 0 8px rgba(76,175,80,.7);
}
.passport-stat-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.passport-stat-card{
  min-height:78px;
  border:1px solid rgba(192,143,61,.52);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(10,22,40,.92), rgba(8,16,28,.97));
  box-shadow:inset 0 0 0 1px rgba(251,226,169,.06);
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px 12px;
}
.passport-stat-icon{
  width:42px;
  height:42px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:radial-gradient(circle at 50% 40%, rgba(251,220,147,.12), rgba(13,24,44,.3) 60%);
}
.passport-stat-icon img{
  width:28px;
  height:28px;
  object-fit:contain;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45));
}
.passport-xp-icon{
  display:inline-grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:50%;
  border:2px solid rgba(210,165,78,.88);
  color:#f0cf7a;
  font:900 14px/1 Georgia,serif;
}
.passport-stat-copy{
  min-width:0;
}
.passport-stat-copy strong{
  display:block;
  font:900 28px/.95 Georgia,serif;
  color:#f6deb0;
  text-shadow:0 2px 0 #2f1808;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.passport-stat-copy span{
  display:block;
  margin-top:5px;
  font:700 11px/1 Georgia,serif;
  letter-spacing:1px;
  color:#d1b47a;
}
.passport-weekly-card{
  border:1px solid rgba(193,143,61,.52);
  border-radius:16px;
  padding:12px 12px 14px;
  background:linear-gradient(180deg, rgba(9,18,31,.96), rgba(7,14,26,.99));
  box-shadow:inset 0 0 0 1px rgba(251,227,170,.06);
}
.passport-weekly-heading{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-bottom:10px;
  font:900 22px/1 Georgia,serif;
  letter-spacing:1.15px;
  color:#edc86f;
}
.passport-weekly-hourglass{
  font-size:20px;
  line-height:1;
}
.passport-weekly-bar{
  position:relative;
  height:18px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(4,11,20,.9), rgba(12,23,40,.95));
  border:1px solid rgba(197,145,61,.56);
  overflow:hidden;
  box-shadow:inset 0 3px 8px rgba(0,0,0,.45);
}
.passport-weekly-bar i{
  display:block;
  height:100%;
  width:0%;
  border-radius:999px;
  background:linear-gradient(90deg, #a6822f 0%, #d6b564 55%, #f6df94 100%);
  box-shadow:0 0 12px rgba(246,223,148,.18);
  transition:width .35s ease;
}
.passport-weekly-body{
  margin-top:12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 90px;
  gap:12px;
  align-items:center;
}
.passport-weekly-percent{
  margin-bottom:4px;
  text-align:right;
}
.passport-weekly-percent b{
  font:900 28px/1 Georgia,serif;
  color:#f4cf78;
}
.passport-weekly-line,
.passport-weekly-reset,
.passport-weekly-reward-row{
  font:700 14px/1.35 Georgia,serif;
  color:#e1c591;
}
.passport-weekly-reward-row{
  margin-top:4px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.passport-claim-button{
  height:30px;
  padding:0 12px;
  border-radius:10px;
  border:1px solid rgba(204,157,69,.78);
  background:linear-gradient(180deg, #6c4819, #3e2610);
  color:#fae2a8;
  font:800 11px/1 Georgia,serif;
  letter-spacing:.8px;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,233,171,.14);
}
.passport-claim-button:hover{filter:brightness(1.08)}
.passport-weekly-pack{
  display:flex;
  align-items:center;
  justify-content:center;
}
.passport-weekly-pack img{
  width:74px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.4));
}
.passport-favourites{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.passport-favourite-card{
  min-width:0;
  border:1px solid rgba(194,143,61,.48);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(10,21,37,.95), rgba(7,14,24,.98));
  box-shadow:inset 0 0 0 1px rgba(251,225,167,.05);
  padding:8px;
}
.passport-favourite-heading{
  text-align:center;
  font:800 13px/1.1 Georgia,serif;
  letter-spacing:.85px;
  color:#e4c373;
  margin-bottom:8px;
  white-space:nowrap;
}
.passport-favourite-frame{
  border:1px solid rgba(190,141,58,.28);
  border-radius:11px;
  min-height:150px;
  padding:8px;
  display:flex;
  flex-direction:column;
  gap:8px;
  justify-content:flex-start;
}
.passport-favourite-media{
  height:82px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.passport-favourite-media img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.4));
}
.passport-card-preview{
  height:88px;
}
.passport-card-preview img{
  max-height:88px;
  border-radius:8px;
}
.passport-skill-preview img{
  width:68px;
  height:68px;
}
.passport-favourite-copy{
  min-width:0;
  text-align:center;
}
.passport-favourite-copy strong{
  display:block;
  font:700 14px/1.18 Georgia,serif;
  color:#f0d7a0;
}
.passport-favourite-copy span{
  display:block;
  margin-top:3px;
  font:700 11px/1.25 Georgia,serif;
  color:#c7af7b;
}
.passport-legacy-hidden{
  display:none !important;
}
@media (max-width: 1500px){
  .passport-top{grid-template-columns:112px minmax(0,1fr)}
  .passport-avatar-wrap{width:112px}
  .passport-username{font-size:26px}
  .passport-favourites{grid-template-columns:1fr}
  .passport-favourite-frame{min-height:132px}
}
@media (max-width: 1100px){
  .passport-card{padding:16px 14px !important}
  .passport-top{grid-template-columns:98px minmax(0,1fr);gap:12px}
  .passport-avatar-wrap{width:98px}
  .passport-username{font-size:23px}
  .passport-stat-copy strong{font-size:24px}
  .passport-weekly-heading{font-size:20px}
  .passport-weekly-body{grid-template-columns:minmax(0,1fr) 72px}
  .passport-weekly-pack img{width:62px}
}



/* ============================================================
   V20.7 — REPO PASSPORT COMPACT PRECISION PASS
   Built specifically for the dashboard's 310px × 420px left panel.
   ============================================================ */
.repo-dashboard-shell-v20 .passport-card{
  padding:10px 11px 9px!important;
  overflow:hidden!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-shell{
  height:401px!important;
  min-height:0!important;
  display:grid!important;
  grid-template-rows:28px 82px 78px 92px 92px!important;
  gap:5px!important;
  align-content:start!important;
}

/* Header */
.repo-dashboard-shell-v20 .passport-card .passport-header{
  height:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:0 0 4px!important;
  gap:0!important;
  border-bottom:1px solid rgba(157,112,54,.38)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-header span{
  font:900 16px/.92 Georgia,serif!important;
  letter-spacing:.13em!important;
  color:#e7c774!important;
  text-shadow:0 1px 0 #241407!important;
  white-space:nowrap!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-header small{
  margin-top:2px!important;
  font:800 7px/1 Georgia,serif!important;
  letter-spacing:.2em!important;
  color:#a88b55!important;
}

/* Identity area */
.repo-dashboard-shell-v20 .passport-card .passport-top{
  height:82px!important;
  display:grid!important;
  grid-template-columns:74px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:center!important;
  overflow:hidden!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-avatar-wrap{
  width:74px!important;
  height:78px!important;
  align-self:center!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-avatar-frame{
  width:74px!important;
  height:70px!important;
  aspect-ratio:auto!important;
  border:1px solid rgba(187,139,57,.76)!important;
  border-radius:10px!important;
  box-shadow:inset 0 0 0 1px rgba(243,211,143,.06)!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-avatar-frame::before{
  inset:5px!important;
  border-radius:7px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-avatar-image{
  width:82%!important;
  height:82%!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-level-badge{
  bottom:1px!important;
  min-width:30px!important;
  height:22px!important;
  padding:0 7px!important;
  border-width:1px!important;
  border-radius:10px!important;
  font:900 11px/1 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-identity{
  height:82px!important;
  padding:1px 0 0!important;
  gap:3px!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-username{
  font:900 17px/1 Georgia,serif!important;
  color:#efd18a!important;
  text-shadow:0 1px 0 #2b1808!important;
  max-width:100%!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-row{
  position:relative!important;
  display:block!important;
  gap:0!important;
  height:24px!important;
  flex:none!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-label{
  position:absolute!important;
  left:8px!important;
  top:3px!important;
  z-index:2!important;
  font:800 5.5px/1 Georgia,serif!important;
  letter-spacing:.18em!important;
  color:#8ea1bb!important;
  pointer-events:none!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-row::after{
  content:'◆'!important;
  position:absolute!important;
  right:8px!important;
  top:50%!important;
  transform:translateY(-42%) rotate(45deg)!important;
  color:#b99857!important;
  font-size:5px!important;
  pointer-events:none!important;
  z-index:3!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-select{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:100%!important;
  height:24px!important;
  min-height:24px!important;
  padding:8px 22px 2px 8px!important;
  border:1px solid rgba(151,109,55,.45)!important;
  border-radius:3px!important;
  background:
    linear-gradient(180deg,rgba(13,27,42,.98),rgba(5,13,22,.98))!important;
  background-color:#07111b!important;
  color:#e0c58d!important;
  font:800 8.5px/1 Georgia,serif!important;
  letter-spacing:.02em!important;
  box-shadow:
    inset 0 1px rgba(255,255,255,.025),
    inset 0 -1px rgba(0,0,0,.55)!important;
  outline:0!important;
  cursor:pointer!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-select:hover,
.repo-dashboard-shell-v20 .passport-card .passport-title-select:focus{
  border-color:rgba(211,166,85,.76)!important;
  background:linear-gradient(180deg,rgba(18,35,51,.98),rgba(6,15,25,.98))!important;
  box-shadow:inset 0 0 0 1px rgba(225,188,112,.06)!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-title-select option{
  background:#08131d!important;
  color:#e3cc9a!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-member-since{
  font:700 7.5px/1 Georgia,serif!important;
  color:#bca370!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-status-row{
  display:flex!important;
  gap:4px!important;
  flex-wrap:nowrap!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-status-pill{
  height:16px!important;
  padding:0 6px!important;
  gap:4px!important;
  border-radius:8px!important;
  font:700 6.5px/1 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-status-pill i{
  width:4px!important;
  height:4px!important;
}

/* Four quick stats */
.repo-dashboard-shell-v20 .passport-card .passport-stat-grid{
  height:78px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:36px 36px!important;
  gap:6px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-stat-card{
  min-height:0!important;
  height:36px!important;
  border-radius:4px!important;
  grid-template-columns:27px minmax(0,1fr)!important;
  gap:5px!important;
  padding:4px 6px!important;
  background:linear-gradient(180deg,rgba(7,17,29,.78),rgba(4,10,17,.82))!important;
  border-color:rgba(137,99,51,.37)!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-stat-icon{
  width:25px!important;
  height:25px!important;
  border-radius:4px!important;
  background:transparent!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-stat-icon img{
  width:20px!important;
  height:20px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-xp-icon{
  width:22px!important;
  height:22px!important;
  border-width:1px!important;
  font:900 7px/1 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-stat-copy strong{
  font:900 15px/.9 Georgia,serif!important;
  color:#ecd39a!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-stat-copy span{
  margin-top:2px!important;
  font:800 6px/1 Georgia,serif!important;
  letter-spacing:.08em!important;
  color:#a9905f!important;
}

/* Weekly progress */
.repo-dashboard-shell-v20 .passport-card .passport-weekly-card{
  height:92px!important;
  min-height:0!important;
  padding:6px 7px!important;
  border-radius:5px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(7,16,28,.84),rgba(4,10,18,.86))!important;
  border-color:rgba(139,100,51,.38)!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-heading{
  height:15px!important;
  margin:0 0 4px!important;
  gap:4px!important;
  font:900 9px/1 Georgia,serif!important;
  letter-spacing:.12em!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-hourglass{
  font-size:8px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-bar{
  height:7px!important;
  border-radius:2px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-body{
  margin-top:5px!important;
  height:54px!important;
  grid-template-columns:minmax(0,1fr) 44px!important;
  gap:5px!important;
  align-items:center!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-percent{
  float:right!important;
  margin:0 0 1px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-percent b{
  font:900 11px/1 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-line,
.repo-dashboard-shell-v20 .passport-card .passport-weekly-reset,
.repo-dashboard-shell-v20 .passport-card .passport-weekly-reward-row{
  font:700 6.5px/1.15 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-reward-row{
  margin-top:2px!important;
  gap:4px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-reset{
  margin-top:2px!important;
  color:#87755a!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-claim-button{
  height:16px!important;
  min-height:16px!important;
  padding:0 5px!important;
  border-radius:2px!important;
  font:800 5.5px/1 Georgia,serif!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-weekly-pack img{
  width:35px!important;
  max-height:50px!important;
}

/* Three favourites always visible inside the panel */
.repo-dashboard-shell-v20 .passport-card .passport-favourites{
  height:92px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:5px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-card{
  min-width:0!important;
  height:92px!important;
  padding:4px!important;
  border-radius:4px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(7,16,27,.8),rgba(4,10,17,.85))!important;
  border-color:rgba(137,99,50,.35)!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-heading{
  height:11px!important;
  margin:0 0 3px!important;
  font:800 5.8px/1 Georgia,serif!important;
  letter-spacing:.06em!important;
  color:#bda164!important;
  white-space:nowrap!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-frame{
  height:69px!important;
  min-height:0!important;
  padding:3px!important;
  gap:2px!important;
  border-radius:3px!important;
  justify-content:flex-start!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-media,
.repo-dashboard-shell-v20 .passport-card .passport-card-preview{
  height:42px!important;
  min-height:42px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-card-preview img{
  max-height:41px!important;
  border-radius:2px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-skill-preview img{
  width:34px!important;
  height:34px!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-copy strong{
  font:800 6.5px/1.05 Georgia,serif!important;
  color:#d9bf87!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-dashboard-shell-v20 .passport-card .passport-favourite-copy span{
  margin-top:1px!important;
  font:700 5.3px/1 Georgia,serif!important;
  color:#806f54!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Keep the legacy harmony hooks alive but completely out of layout. */
.repo-dashboard-shell-v20 .passport-card .passport-legacy-hidden{
  display:none!important;
}


/* ============================================================
   V20.8 — REPO PASSPORT DATA / AVATAR CORRECTION
   ============================================================ */
#repoDashboardV20 .passport-card .passport-level-badge{display:none!important}
#repoDashboardV20 .passport-card .passport-avatar-wrap{
  height:78px!important;
}
#repoDashboardV20 .passport-card .passport-avatar-frame{
  height:78px!important;
  border-radius:9px!important;
  align-items:center!important;
}
#repoDashboardV20 .passport-card .passport-avatar-image{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  image-rendering:auto!important;
  filter:drop-shadow(0 2px 6px rgba(0,0,0,.42))!important;
}
#repoDashboardV20 .passport-card .passport-skill-preview{
  height:42px!important;
}
#repoDashboardV20 .passport-card .passport-skill-preview img{
  width:32px!important;
  height:32px!important;
  max-width:32px!important;
  max-height:32px!important;
  object-fit:contain!important;
}
#repoDashboardV20 .passport-card .passport-favourite-copy strong{
  font-size:5.9px!important;
}
#repoDashboardV20 .repo-dash-harmony-copy>i{
  position:relative!important;
  overflow:hidden!important;
}
#repoDashboardV20 #repoDashHarmonyFill{
  width:100%!important;
  transform-origin:left center!important;
  will-change:transform!important;
}


/* ======================================================================
   REPO COMPANY V20.9 — HARMONY BAR + SCENE FIT + CHARACTER PASSPORT HOVER
   ====================================================================== */

/* Harmony fill is now a pseudo-element on the track. This is deliberately
   independent of the old <b> child so historical width/transform rules cannot
   ever make a half-complete level look full. */
#repoDashboardV20 .repo-dash-harmony-copy>i{
  position:relative!important;
  display:block!important;
  height:8px!important;
  overflow:hidden!important;
  background:#05090c!important;
  border:1px solid #392f1f!important;
  box-shadow:inset 0 1px 3px #000!important;
}
#repoDashboardV20 .repo-dash-harmony-copy>i::before{
  content:''!important;
  position:absolute!important;
  left:0!important;top:0!important;bottom:0!important;
  width:var(--repo-harmony-pct,0%)!important;
  max-width:100%!important;
  background:linear-gradient(90deg,#7b9d23,#c19c38 62%,#e0c16b)!important;
  box-shadow:0 0 7px rgba(213,181,91,.26)!important;
  transition:width .25s ease!important;
}
#repoDashboardV20 #repoDashHarmonyFill{
  display:none!important;
  width:0!important;
  transform:none!important;
}

/* The live billboard scene owns the complete 550 × 420 centre aperture.
   An opaque backing plate prevents any copy of the scenery baked into the
   dashboard frame from showing through during environmental crossfades. */
#repoDashboardV20>main>#scene{
  position:relative!important;
  width:550px!important;
  min-width:550px!important;
  max-width:550px!important;
  height:420px!important;
  min-height:420px!important;
  max-height:420px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  isolation:isolate!important;
  clip-path:inset(0)!important;
  background:#08121b!important;
}
#repoDashboardV20>main>#scene::before{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:#08121b!important;
  pointer-events:none!important;
}
#repoDashboardV20 #scene>.tavern-lobby{
  position:absolute!important;
  inset:-1px!important;
  width:calc(100% + 2px)!important;
  height:calc(100% + 2px)!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  background:#08121b url('assets/homepage-billboard/frame_01.png') center center/cover no-repeat!important;
  overflow:hidden!important;
  z-index:2!important;
}
#repoDashboardV20 #scene>.tavern-lobby>img,
#repoDashboardV20 #scene .tavern-lobby-base,
#repoDashboardV20 #scene .tavern-lobby-frame{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* Guests were display-only before. Give only their visible sprite boxes pointer
   hit-testing so a player can inspect a Passport without affecting the scene. */
#repoDashboardV20 #tavernGuestLayer{pointer-events:none!important}
#repoDashboardV20 #tavernGuestLayer .repo-passport-hover-target{
  pointer-events:auto!important;
  cursor:help!important;
  outline:none!important;
}
#repoDashboardV20 #tavernGuestLayer .repo-passport-hover-target:focus-visible img,
#repoDashboardV20 #tavernGuestLayer .repo-passport-hover-target:hover img{
  filter:drop-shadow(0 3px 2px rgba(6,9,18,.52)) drop-shadow(0 0 6px rgba(226,186,91,.25))!important;
}

.repo-character-passport-hover{
  position:fixed;
  z-index:2147483000;
  width:318px;
  max-width:calc(100vw - 24px);
  box-sizing:border-box;
  padding:10px;
  border:1px solid rgba(190,142,60,.78);
  border-radius:7px;
  background:
    linear-gradient(180deg,rgba(10,23,37,.985),rgba(4,11,19,.99));
  color:#dcc48b;
  box-shadow:0 18px 46px rgba(0,0,0,.62),inset 0 0 0 1px rgba(240,207,134,.06);
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transform:translateY(4px);
  transition:opacity .13s ease,transform .13s ease,visibility .13s;
  font-family:Georgia,'Times New Roman',serif;
}
.repo-character-passport-hover.is-visible{opacity:1;visibility:visible;transform:none}
.repo-character-passport-hover::before{
  content:'';position:absolute;inset:4px;border:1px solid rgba(161,115,51,.22);border-radius:4px;pointer-events:none
}
.repo-character-passport-loading{min-height:86px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}
.repo-character-passport-loading>b,.repo-hover-passport-head>span{color:#efd080;font:900 15px/1 Georgia,serif;letter-spacing:.12em}
.repo-character-passport-loading>strong{color:#f5deb0;font:900 18px/1 Georgia,serif}
.repo-character-passport-loading>span{color:#8299aa;font:700 9px/1 Georgia,serif}
.repo-hover-passport-head{position:relative;display:flex;align-items:baseline;justify-content:space-between;padding:1px 3px 7px;border-bottom:1px solid rgba(157,112,54,.36)}
.repo-hover-passport-head>small{color:#8ca0ae;font:800 7px/1 Georgia,serif;letter-spacing:.15em}
.repo-hover-passport-identity{display:grid;grid-template-columns:72px minmax(0,1fr);gap:9px;align-items:center;padding:8px 2px 7px}
.repo-hover-passport-avatar{height:70px;border:1px solid rgba(190,142,60,.55);border-radius:6px;background:#07131f;display:grid;place-items:center;overflow:hidden}
.repo-hover-passport-avatar img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 3px 6px rgba(0,0,0,.46))}
.repo-hover-passport-identity>div:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}
.repo-hover-passport-identity strong{color:#f0d18c;font:900 18px/1 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-hover-passport-identity b{color:#b9a16c;font:800 10px/1 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-hover-passport-identity small{display:flex;align-items:center;gap:5px;color:#8fa4b0;font:700 8px/1 Georgia,serif}
.repo-hover-passport-identity small i{width:5px;height:5px;border-radius:50%;background:#4ebd62;box-shadow:0 0 6px rgba(78,189,98,.65)}
.repo-hover-passport-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:7px}
.repo-hover-passport-stats>div{min-width:0;padding:6px 4px;border:1px solid rgba(137,99,51,.35);border-radius:4px;background:rgba(4,12,21,.58);text-align:center}
.repo-hover-passport-stats span{display:block;color:#8da0ac;font:800 6px/1 Georgia,serif;letter-spacing:.08em}
.repo-hover-passport-stats b{display:block;margin-top:3px;color:#ead09a;font:900 12px/1 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-hover-passport-favourites{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.repo-hover-favourite{min-width:0;border:1px solid rgba(137,99,51,.33);border-radius:4px;background:rgba(4,11,18,.7);padding:5px}
.repo-hover-favourite>small{display:block;text-align:center;color:#aa915b;font:800 5.8px/1 Georgia,serif;letter-spacing:.06em;white-space:nowrap}
.repo-hover-favourite>span{display:flex;flex-direction:column;align-items:center;min-width:0;margin-top:4px}
.repo-hover-favourite img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.45))}
.repo-hover-favourite b{max-width:100%;margin-top:3px;color:#dcc28b;font:800 7px/1.05 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-hover-favourite em{max-width:100%;margin-top:2px;color:#7f92a0;font:700 5.8px/1 Georgia,serif;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* ======================================================================
   REPO COMPANY V20.10 — PIXEL-AWARE CHARACTER HOVER + WATCHCARD BACKDROP
   ====================================================================== */

/* Mouse hit testing is now performed against the actual non-transparent
   character pixels in JavaScript. Do not let the 32.5%-wide sprite containers
   create giant invisible hover boxes. */
#repoDashboardV20 #tavernGuestLayer .repo-passport-hover-target,
#repoDashboardV20 #tavernGuestLayer .repo-passport-hover-target img{
  pointer-events:none!important;
  cursor:default!important;
}

/* Equipped Party Pete / Watch Party backdrop behind Passport portraits. */
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop,
.repo-character-passport-hover .repo-hover-passport-avatar.has-watchcard-backdrop{
  background-color:#07131f!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop::after,
.repo-character-passport-hover .repo-hover-passport-avatar.has-watchcard-backdrop::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(4,10,18,.02),rgba(4,10,18,.18))!important;
  z-index:0!important;
}
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop .passport-avatar-image,
.repo-character-passport-hover .repo-hover-passport-avatar.has-watchcard-backdrop img{
  position:relative!important;
  z-index:1!important;
}
.repo-character-passport-hover .repo-hover-passport-avatar{
  position:relative!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}


/* ======================================================================
   REPO COMPANY V20.11 — PASSPORT BACKDROP / HARMONY / LOGO / LOGOUT
   ====================================================================== */

/* New supplied Repo Company plaque logo. Keep it wholly above the nav. */
#repoDashboardV20 .repo-logo-wrap{
  left:50%!important;
  top:15px!important;
  width:268px!important;
  height:123px!important;
  transform:translateX(-50%)!important;
  z-index:3!important;
  overflow:visible!important;
}
#repoDashboardV20 .repo-header-logo{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.68))!important;
}

/* The Passport portrait MUST show the equipped Watchcard art beneath the
   supplied transparent account bust. Inline background-image is authoritative. */
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop{
  background-color:#07131f!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop::after{
  background:linear-gradient(180deg,rgba(3,8,15,.00),rgba(3,8,15,.16))!important;
}
#repoDashboardV20 .passport-card .passport-avatar-frame.has-watchcard-backdrop .passport-avatar-image{
  z-index:2!important;
  position:relative!important;
}

/* Harmony is painted directly onto the track by JS. Disable the older
   pseudo-element completely so there is one and only one visual fill. */
#repoDashboardV20 .repo-dash-harmony-copy>i::before{
  content:none!important;
  display:none!important;
  width:0!important;
  background:none!important;
}
#repoDashboardV20 #repoDashHarmonyFill{
  display:none!important;
  width:0!important;
  min-width:0!important;
  max-width:0!important;
  transform:none!important;
}

/* Add one small final header cell for logout while keeping the existing
   Binder book exactly where it is. */
#repoDashboardV20 .signed-in-controls{
  grid-template-columns:214px 316px 112px 112px 112px 126px 54px 36px!important;
  gap:3px!important;
}
#repoDashboardV20 #repoLogoutQuick{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:stretch!important;
  border:0!important;
  border-left:1px solid rgba(133,96,49,.25)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  cursor:pointer!important;
  opacity:.72!important;
  transition:opacity .16s ease,background .16s ease!important;
}
#repoDashboardV20 #repoLogoutQuick:hover,
#repoDashboardV20 #repoLogoutQuick:focus-visible{
  opacity:1!important;
  background:rgba(134,93,39,.10)!important;
}
#repoDashboardV20 #repoLogoutQuick:disabled{
  opacity:.35!important;
  cursor:wait!important;
}
#repoDashboardV20 .repo-logout-icon{
  width:20px!important;
  height:20px!important;
  overflow:visible!important;
  fill:none!important;
  stroke:#b99556!important;
  stroke-width:1.45!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.72))!important;
}
#repoDashboardV20 .repo-logout-door{
  fill:rgba(128,89,41,.10)!important;
}
#repoDashboardV20 .repo-logout-arrow{
  stroke:#ddc27d!important;
}
#repoDashboardV20 .repo-logout-knob{
  fill:#d7b86f!important;
  stroke:none!important;
}


/* ======================================================================
   REPO COMPANY V20.12 — HARMONY / LOGO / SCENE PRECISION PASS
   ====================================================================== */

/* Completely new Harmony meter. No i/b legacy selectors can affect this. */
#repoDashboardV20 .repo-harmony-meter{
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:8px!important;
  min-height:8px!important;
  margin:2px 0 0!important;
  padding:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  border:1px solid #46391f!important;
  border-radius:1px!important;
  background:#05090c!important;
  box-shadow:
    inset 0 1px 3px rgba(0,0,0,.95),
    0 0 0 1px rgba(177,133,58,.035)!important;
}
#repoDashboardV20 .repo-harmony-meter-fill{
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:0;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#719b22 0%,#a8ad35 58%,#d4b75c 100%)!important;
  box-shadow:0 0 6px rgba(204,177,83,.22)!important;
  transform:none!important;
  transition:width .22s ease!important;
}

/* Keep the now-unused historic meter hidden if an old DOM survives a hot reload. */
#repoDashboardV20 #repoDashHarmonyFill,
#repoDashboardV20 .repo-dash-harmony-copy>i{
  display:none!important;
}

/* Supplied stone REPO COMPANY plaque: 5% larger than V20.11 and lowered
   so the bottom of the plaque visually rests just above the nav bar. */
#repoDashboardV20 .repo-logo-wrap{
  left:50%!important;
  top:32px!important;
  width:282px!important;
  height:129px!important;
  transform:translateX(-50%)!important;
  z-index:3!important;
}
#repoDashboardV20 .repo-header-logo{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  transform:none!important;
}

/* Centre scene: fill the complete visual aperture including the old 6px gap.
   The training deck sits above it in z-order, so the live scene can safely
   overscan to the exact lower frame edge without covering any controls. */
#repoDashboardV20>main>#scene{
  height:426px!important;
  min-height:426px!important;
  max-height:426px!important;
  overflow:hidden!important;
  background:#08121b!important;
}
#repoDashboardV20 #scene>.tavern-lobby{
  inset:-2px!important;
  width:calc(100% + 4px)!important;
  height:calc(100% + 4px)!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  background-color:#08121b!important;
}
#repoDashboardV20 #scene>.tavern-lobby>img,
#repoDashboardV20 #scene .tavern-lobby-base,
#repoDashboardV20 #scene .tavern-lobby-frame{
  inset:-1px!important;
  width:calc(100% + 2px)!important;
  height:calc(100% + 2px)!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* Ensure the 6px area between the old scene row and Training cannot expose
   the dashboard-frame copy of the mountain image. */
#repoDashboardV20>main{
  overflow:visible!important;
}


/* ======================================================================
   REPO COMPANY V20.13 — TRUE HARMONY METER + ATMOSPHERE
   ====================================================================== */

/* Harmony meter is now SVG. Old width/background rules cannot touch its geometry. */
#repoDashboardV20 .repo-harmony-svg-meter{
  display:block!important;
  width:100%!important;
  height:8px!important;
  min-height:8px!important;
  margin:2px 0 0!important;
  overflow:visible!important;
  shape-rendering:geometricPrecision!important;
}
#repoDashboardV20 .repo-harmony-svg-track{
  fill:#05090c!important;
  stroke:#46391f!important;
  stroke-width:.8!important;
  vector-effect:non-scaling-stroke!important;
}
#repoDashboardV20 .repo-harmony-svg-fill{
  filter:drop-shadow(0 0 1px rgba(212,183,92,.42))!important;
}
#repoDashboardV20 .repo-harmony-meter,
#repoDashboardV20 .repo-harmony-meter-fill{
  display:none!important;
}

/* V20.14: keep the same top position, but make the logo 10% larger. */
#repoDashboardV20 .repo-logo-wrap{
  top:39px!important;
  width:310px!important;
  height:142px!important;
}

/* Castle atmosphere layer. */
#repoDashboardV20{
  isolation:isolate!important;
}
#repoDashboardV20 .repo-atmosphere-layer{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  overflow:hidden!important;
  opacity:1!important;
}
#repoDashboardV20 .repo-atmosphere-layer::before{
  content:''!important;
  position:absolute!important;
  inset:-18% -24% -10% -24%!important;
  background:conic-gradient(from 72deg,
    transparent 0 8%,
    rgba(255,188,86,.040) 12%,
    transparent 18% 30%,
    rgba(245,239,228,.030) 36%,
    transparent 43% 56%,
    rgba(191,104,44,.038) 61%,
    transparent 68% 100%)!important;
  filter:blur(10px)!important;
  animation:repoAutumnCurrent 15s linear infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote{
  position:absolute!important;
  left:-72px!important;
  display:block!important;
  height:1px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(233,243,249,.62),rgba(255,255,255,0))!important;
  filter:blur(.25px)!important;
  opacity:0!important;
  transform:rotate(-6deg)!important;
  animation:repoWindDrift var(--wind-duration,17s) linear var(--wind-delay,0s) infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle{
  position:absolute!important;
  display:block!important;
  border-radius:90% 10% 90% 10%!important;
  background:linear-gradient(135deg,#ffd766 0%,#d26a1e 58%,#772308 100%)!important;
  box-shadow:0 0 4px rgba(255,164,44,.32)!important;
  opacity:0!important;
  transform-origin:50% 50%!important;
  animation:repoLeafCurrentFall var(--leaf-duration,12s) ease-in-out var(--leaf-delay,0s) infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle.is-pale{
  background:linear-gradient(135deg,#fffdf6 0%,#ece6d9 54%,#b7aa92 100%)!important;
  box-shadow:0 0 4px rgba(255,248,230,.26)!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-pale-particle{
  position:absolute!important;
  display:block!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,255,255,.96) 0%,rgba(235,240,236,.86) 58%,rgba(235,240,236,0) 100%)!important;
  box-shadow:0 0 3px rgba(239,243,241,.34)!important;
  opacity:0!important;
  animation:repoPaleCurrentDrift var(--pale-duration,14s) linear var(--pale-delay,0s) infinite!important;
}

/* Keep interface surfaces above atmosphere; particles remain visible in scenery. */
#repoDashboardV20 .repo-logo-wrap,
#repoDashboardV20 .character-box,
#repoDashboardV20>main,
#repoDashboardV20>.game-strip,
#repoDashboardV20>footer{
  position:relative;
  z-index:4!important;
}

@keyframes repoAutumnCurrent{
  0%{transform:translate3d(-4%,1%,0) rotate(0deg) scale(.98);opacity:.40}
  50%{transform:translate3d(3%,-2%,0) rotate(180deg) scale(1.03);opacity:.72}
  100%{transform:translate3d(9%,-4%,0) rotate(360deg) scale(1.06);opacity:.40}
}
@keyframes repoLeafCurrentFall{
  0%{
    opacity:0;
    transform:translate3d(0,-18px,0) rotate(0deg) scale(.72);
  }
  8%{opacity:.72}
  48%{opacity:.68}
  100%{
    opacity:0;
    transform:translate3d(var(--leaf-drift,110px),calc(100vh + var(--leaf-drop,40px)),0) rotate(var(--leaf-spin,280deg)) scale(1.02);
  }
}
@keyframes repoWindDrift{
  0%{opacity:0;transform:translate3d(0,0,0) rotate(-6deg)}
  12%{opacity:var(--wind-opacity,.10)}
  76%{opacity:calc(var(--wind-opacity,.10) * .82)}
  100%{opacity:0;transform:translate3d(1980px,-46px,0) rotate(-6deg)}
}
@keyframes repoPaleCurrentDrift{
  0%{opacity:0;transform:translate3d(0,-12px,0) scale(.65)}
  12%{opacity:var(--pale-opacity,.14)}
  74%{opacity:calc(var(--pale-opacity,.14) * .88)}
  100%{opacity:0;transform:translate3d(var(--pale-drift,20px),calc(var(--pale-drop,36px) + 88px),0) scale(1)}
}
@media (prefers-reduced-motion:reduce){
  #repoDashboardV20 .repo-atmosphere-layer *,
  #repoDashboardV20 .repo-atmosphere-layer::before{
    animation:none!important;
  }
  #repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote,
  #repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle,
  #repoDashboardV20 .repo-atmosphere-layer .repo-pale-particle{
    display:none!important;
  }
}

/* ======================================================================
   REPO COMPANY V20.16 — PASSPORT / CENTRE SCENE BORDER PRECISION
   The live centre scene was painting over the decorative right-hand edge of
   the Passport aperture. Keep the scene's right edge exactly where it was,
   but inset its left edge by 7px so the carved divider in the dashboard frame
   remains fully visible instead of being cut in half.
   ====================================================================== */
#repoDashboardV20>main>#scene{
  width:543px!important;
  min-width:543px!important;
  max-width:543px!important;
  justify-self:end!important;
}


/* ======================================================================
   REPO COMPANY V20.18 — CLEAN COMMAND DECK + VISIBLE AUTUMN CURRENT
   ====================================================================== */

/* TRAINING / OTHER are redundant at this point: the five framed group titles
   already explain the deck. Remove the two super-headings completely. */
#repoDashboardV20>.game-strip.adventure-nav .nav-section-heading{
  display:none!important;
}
#repoDashboardV20>.game-strip.adventure-nav .nav-section{
  padding-top:10px!important;
  padding-bottom:8px!important;
}
#repoDashboardV20>.game-strip.adventure-nav .training-skill-grid,
#repoDashboardV20>.game-strip.adventure-nav .activity-button-grid{
  height:128px!important;
  align-items:center!important;
}
#repoDashboardV20>.game-strip.adventure-nav .repo-dash-skill-group{
  height:121px!important;
}

/* Put atmosphere directly above the supplied dashboard background art, but
   still below all real interface apertures. This makes it actually readable
   on the stone/castle background without floating over buttons or text. */
#repoDashboardV20 .repo-atmosphere-layer{
  z-index:9!important;
  opacity:1!important;
}
#repoDashboardV20 .repo-atmosphere-layer::before{
  opacity:.72!important;
  filter:blur(8px)!important;
  background:conic-gradient(from 74deg,
    transparent 0 8%,
    rgba(223,145,57,.075) 13%,
    transparent 20% 31%,
    rgba(241,244,243,.045) 38%,
    transparent 45% 57%,
    rgba(170,82,35,.065) 63%,
    transparent 70% 100%)!important;
  animation:repoAutumnCurrentV2018 18s linear infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote{
  height:1.5px!important;
  background:linear-gradient(90deg,rgba(238,244,246,0),rgba(238,244,246,.72),rgba(238,244,246,0))!important;
  filter:blur(.2px)!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle{
  border-radius:88% 12% 82% 18%!important;
  background:linear-gradient(135deg,#e8bb62 0%,#c66b2a 54%,#783315 100%)!important;
  box-shadow:0 0 4px rgba(225,143,52,.42)!important;
  opacity:0!important;
  animation:repoAutumnLeafV2018 var(--leaf-duration,14s) ease-in-out var(--leaf-delay,0s) infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle.is-pale{
  background:linear-gradient(135deg,#fffdf7 0%,#e5e7e4 50%,#adb4b6 100%)!important;
  box-shadow:0 0 5px rgba(246,248,246,.46)!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-pale-particle{
  display:none!important;
}

/* Restore the intended dashboard stacking. V20.17's generic atmosphere rule
   accidentally lowered these major sections to z-index 4. */
#repoDashboardV20>main{position:absolute!important;z-index:10!important}
#repoDashboardV20>.game-strip.adventure-nav{position:absolute!important;z-index:12!important}
#repoDashboardV20>.repo-main-header{position:absolute!important;z-index:20!important}
#repoDashboardV20>footer{position:absolute!important;z-index:14!important}
#repoDashboardV20 .repo-logo-wrap{position:absolute!important;z-index:3!important}
#repoDashboardV20 .character-box{position:absolute!important;z-index:5!important}

@keyframes repoAutumnCurrentV2018{
  0%{transform:translate3d(-5%,1%,0) rotate(0deg) scale(.98)}
  50%{transform:translate3d(2%,-2%,0) rotate(180deg) scale(1.035)}
  100%{transform:translate3d(8%,-4%,0) rotate(360deg) scale(1.07)}
}
@keyframes repoAutumnLeafV2018{
  0%{opacity:0;transform:translate3d(0,-30px,0) rotate(0deg) scale(.76)}
  7%{opacity:.84}
  34%{opacity:.78;transform:translate3d(var(--leaf-drift-a,28px),300px,0) rotate(var(--leaf-spin-a,95deg)) scale(.92)}
  68%{opacity:.72;transform:translate3d(var(--leaf-drift-b,-15px),610px,0) rotate(var(--leaf-spin-b,215deg)) scale(1)}
  100%{opacity:0;transform:translate3d(var(--leaf-drift,65px),940px,0) rotate(var(--leaf-spin,340deg)) scale(.88)}
}

@media (prefers-reduced-motion:reduce){
  #repoDashboardV20 .repo-atmosphere-layer::before,
  #repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote,
  #repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle{
    animation:none!important;
  }
  #repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote,
  #repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle{
    display:none!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.19 — VISIBLE EMBER / SNOW BACKGROUND CURRENT
   The previous layer was behind the dashboard apertures and therefore almost
   completely hidden. This one deliberately sits over the static dashboard art
   but below the final decorative vignette, with low-opacity particles only.
   No fixed fire-source glows are used.
   ====================================================================== */
#repoDashboardV20 .repo-atmosphere-layer{
  position:absolute!important;
  inset:0!important;
  z-index:35!important;
  pointer-events:none!important;
  overflow:hidden!important;
  opacity:1!important;
  mix-blend-mode:screen!important;
}
#repoDashboardV20 .repo-atmosphere-layer::before{display:none!important}
#repoDashboardV20 .repo-atmosphere-layer .repo-wind-mote,
#repoDashboardV20 .repo-atmosphere-layer .repo-leaf-particle,
#repoDashboardV20 .repo-atmosphere-layer .repo-pale-particle{display:none!important}
#repoDashboardV20 .repo-atmosphere-layer .repo-current-particle{
  position:absolute!important;
  display:block!important;
  border-radius:50%!important;
  opacity:0!important;
  will-change:transform,opacity!important;
  animation:repoCurrentParticleFloat var(--fx-duration,14s) linear var(--fx-delay,0s) infinite!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-current-particle.is-ember{
  background:radial-gradient(circle,rgba(255,248,220,.98) 0 16%,rgba(255,196,92,.94) 28%,rgba(239,111,34,.72) 56%,rgba(222,73,20,0) 78%)!important;
  box-shadow:0 0 4px rgba(255,194,86,.76),0 0 8px rgba(237,103,34,.28)!important;
}
#repoDashboardV20 .repo-atmosphere-layer .repo-current-particle.is-snow{
  background:radial-gradient(circle,rgba(255,255,255,.98) 0 28%,rgba(225,239,248,.90) 54%,rgba(208,228,241,0) 80%)!important;
  box-shadow:0 0 4px rgba(228,241,249,.62)!important;
}
@keyframes repoCurrentParticleFloat{
  0%{opacity:0;transform:translate3d(0,-18px,0) scale(.72)}
  8%{opacity:var(--fx-opacity,.42)}
  48%{opacity:calc(var(--fx-opacity,.42) * .92);transform:translate3d(var(--fx-mid-x,18px),var(--fx-mid-y,145px),0) scale(1)}
  86%{opacity:calc(var(--fx-opacity,.42) * .66)}
  100%{opacity:0;transform:translate3d(var(--fx-end-x,42px),var(--fx-end-y,330px),0) scale(.84)}
}


/* ======================================================================
   REPO COMPANY V20.20 — STAINED-GLASS SANCTUARY CHARACTER SCENE
   New supplied backdrop, six central step seats, side walk-ins and subtle
   moving sunlight / air currents. All effects remain behind the characters.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene{
  background:#07100e!important;
  isolation:isolate!important;
}
#repoDashboardV20 #scene.sanctuary-scene>.tavern-lobby--sanctuary{
  position:absolute!important;
  inset:-2px!important;
  width:calc(100% + 4px)!important;
  height:calc(100% + 4px)!important;
  overflow:hidden!important;
  background:#07100e!important;
  background-image:none!important;
  isolation:isolate!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-backdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:1!important;
  z-index:0!important;
  transform:scale(1.004)!important;
  filter:saturate(.98) contrast(1.015) brightness(.985)!important;
  pointer-events:none!important;
}

/* Warm window bloom plus a very soft diagonal shaft. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  overflow:hidden!important;
  mix-blend-mode:screen!important;
  background:
    radial-gradient(ellipse at 50% 22%,rgba(255,220,145,.17) 0%,rgba(255,195,94,.075) 18%,transparent 42%),
    radial-gradient(ellipse at 50% 61%,rgba(255,185,87,.055) 0%,transparent 39%)!important;
  opacity:.82!important;
  animation:repoSanctuarySunBreathe 8.5s ease-in-out infinite alternate!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::before{
  content:''!important;
  position:absolute!important;
  left:31%!important;
  top:-18%!important;
  width:34%!important;
  height:116%!important;
  background:linear-gradient(104deg,transparent 0 27%,rgba(255,232,176,.02) 35%,rgba(255,224,155,.09) 48%,rgba(255,239,200,.035) 60%,transparent 71%)!important;
  filter:blur(9px)!important;
  transform:rotate(-5deg)!important;
  transform-origin:50% 0!important;
  animation:repoSanctuaryRayShift 11s ease-in-out infinite alternate!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::after{
  content:''!important;
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  bottom:11%!important;
  height:13%!important;
  background:radial-gradient(ellipse at 50% 50%,rgba(255,197,98,.08),transparent 68%)!important;
  filter:blur(8px)!important;
  opacity:.75!important;
}

/* Long, nearly transparent air ribbons make the room feel breezy. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
  position:absolute!important;
  left:-36%!important;
  top:var(--y)!important;
  width:var(--w)!important;
  height:1px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,transparent,rgba(241,246,239,.24),rgba(255,229,178,.18),transparent)!important;
  filter:blur(.35px)!important;
  opacity:0!important;
  transform:translate3d(0,0,0) rotate(-5deg)!important;
  animation:repoSanctuaryBreeze var(--d) linear var(--delay) infinite!important;
}

/* Tiny lit dust/pollen flecks moving in the same air current. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  position:absolute!important;
  inset:0!important;
  z-index:4!important;
  overflow:hidden!important;
  pointer-events:none!important;
  mix-blend-mode:screen!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
  position:absolute!important;
  left:var(--x)!important;
  top:var(--y)!important;
  width:var(--s)!important;
  height:var(--s)!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,246,203,.92) 0 28%,rgba(255,199,92,.52) 55%,transparent 78%)!important;
  box-shadow:0 0 3px rgba(255,215,132,.30)!important;
  opacity:0!important;
  animation:repoSanctuaryDust var(--d) ease-in-out var(--delay) infinite!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit.is-pale{
  background:radial-gradient(circle,rgba(255,255,255,.92) 0 30%,rgba(224,239,235,.48) 58%,transparent 80%)!important;
  box-shadow:0 0 3px rgba(235,245,241,.26)!important;
}

/* Guests remain the foreground subject. */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest-layer{z-index:10!important;overflow:hidden!important}
#repoDashboardV20 #scene.sanctuary-scene .tavern-lobby-vignette{
  z-index:12!important;
  box-shadow:inset 0 0 34px rgba(2,7,6,.24),inset 0 -18px 26px rgba(1,5,4,.13)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:30.5%!important;
  z-index:11!important;
  animation:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated::before{display:none!important}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-walking,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-walking{
  z-index:9!important;
  animation:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest img{
  filter:drop-shadow(0 4px 3px rgba(2,6,5,.58)) drop-shadow(0 0 2px rgba(255,210,126,.07))!important;
}

@keyframes repoSanctuarySunBreathe{
  0%{opacity:.62;filter:brightness(.94)}
  55%{opacity:.88;filter:brightness(1.05)}
  100%{opacity:.74;filter:brightness(.99)}
}
@keyframes repoSanctuaryRayShift{
  from{transform:translateX(-3%) rotate(-7deg);opacity:.55}
  to{transform:translateX(5%) rotate(-2deg);opacity:.86}
}
@keyframes repoSanctuaryBreeze{
  0%{opacity:0;transform:translate3d(0,8px,0) rotate(-5deg)}
  12%{opacity:.32}
  68%{opacity:.20}
  100%{opacity:0;transform:translate3d(850px,var(--drift),0) rotate(-5deg)}
}
@keyframes repoSanctuaryDust{
  0%{opacity:0;transform:translate3d(0,4px,0) scale(.55)}
  16%{opacity:.55}
  55%{opacity:.42}
  100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1.05)}
}
@media(prefers-reduced-motion:reduce){
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::before,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{animation:none!important}
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{display:none!important}
}


/* ======================================================================
   REPO COMPANY V20.21 — SANCTUARY POSITION + ATMOSPHERE VISIBILITY
   Lift seated guests onto the marked stone step, reduce their displayed size
   by 5%, and make the stained-glass sunlight / moving air clearly readable.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:28.975%!important; /* exactly 5% smaller than V20.20's 30.5% */
}

/* More legible warm stained-glass bloom without washing out the artwork. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine{
  background:
    radial-gradient(ellipse at 50% 19%,rgba(255,235,177,.34) 0%,rgba(255,205,111,.18) 19%,rgba(255,176,74,.07) 37%,transparent 54%),
    radial-gradient(ellipse at 50% 62%,rgba(255,204,116,.13) 0%,rgba(255,178,77,.045) 43%,transparent 64%)!important;
  opacity:1!important;
  filter:saturate(1.04)!important;
}

/* Three broad, soft shafts moving very slowly across the glass and floor. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::before{
  left:14%!important;
  top:-25%!important;
  width:68%!important;
  height:135%!important;
  background:linear-gradient(105deg,
    transparent 0 13%,
    rgba(255,242,204,.035) 18%,
    rgba(255,226,163,.19) 23%,
    rgba(255,245,214,.07) 29%,
    transparent 35% 43%,
    rgba(255,234,185,.035) 47%,
    rgba(255,216,143,.145) 52%,
    rgba(255,244,211,.05) 57%,
    transparent 63% 71%,
    rgba(255,229,172,.11) 77%,
    transparent 84% 100%)!important;
  filter:blur(6px)!important;
  opacity:.92!important;
  transform:rotate(-5deg)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::after{
  left:4%!important;
  right:4%!important;
  bottom:7%!important;
  height:19%!important;
  background:radial-gradient(ellipse at 50% 50%,rgba(255,219,148,.19) 0%,rgba(255,182,79,.07) 43%,transparent 72%)!important;
  filter:blur(7px)!important;
  opacity:.95!important;
}

/* Air ribbons should now be visible at a glance, but remain soft and slow. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
  height:2px!important;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(231,244,238,.08) 15%,
    rgba(244,251,246,.52) 46%,
    rgba(255,229,181,.36) 63%,
    transparent 100%)!important;
  filter:blur(.45px) drop-shadow(0 0 2px rgba(255,240,205,.14))!important;
}
@keyframes repoSanctuaryBreeze{
  0%{opacity:0;transform:translate3d(0,8px,0) rotate(-5deg)}
  10%{opacity:.54}
  58%{opacity:.40}
  82%{opacity:.25}
  100%{opacity:0;transform:translate3d(850px,var(--drift),0) rotate(-5deg)}
}

/* Lit pollen/dust becomes just visible enough to sell the moving sunlight. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
  width:max(var(--s),2px)!important;
  height:max(var(--s),2px)!important;
  box-shadow:0 0 4px rgba(255,215,132,.48),0 0 8px rgba(255,190,91,.10)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit.is-pale{
  box-shadow:0 0 4px rgba(240,250,246,.52),0 0 7px rgba(220,239,233,.12)!important;
}
@keyframes repoSanctuaryDust{
  0%{opacity:0;transform:translate3d(0,4px,0) scale(.55)}
  14%{opacity:.78}
  55%{opacity:.58}
  88%{opacity:.32}
  100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1.08)}
}


/* ======================================================================
   REPO COMPANY V20.22 — STEP ALIGNMENT + VISIBLE BREEZE + LEAF CURRENT
   ====================================================================== */
/* Guests are now anchored higher in JS so their boots land on the lower
   sanctuary stone step rather than the scene frame. Size remains V20.21. */

/* Make the wind read as actual soft ribbons rather than hairline streaks. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze{
  z-index:6!important;
  mix-blend-mode:screen!important;
  opacity:1!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
  height:14px!important;
  min-width:150px!important;
  border-top:2px solid rgba(244,250,246,.58)!important;
  border-radius:50% 60% 0 0!important;
  background:linear-gradient(180deg,rgba(255,242,212,.055),transparent 62%)!important;
  filter:drop-shadow(0 0 2px rgba(255,241,207,.30)) blur(.15px)!important;
  opacity:0!important;
  transform-origin:50% 50%!important;
  animation:repoSanctuaryBreezeV22 var(--d) linear var(--delay) infinite!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i:nth-child(3n){
  border-top-color:rgba(225,244,239,.48)!important;
}
@keyframes repoSanctuaryBreezeV22{
  0%{opacity:0;transform:translate3d(0,5px,0) rotate(-4deg) scaleX(.92)}
  8%{opacity:.72}
  44%{opacity:.60;transform:translate3d(430px,calc(var(--drift) * .45),0) rotate(-2deg) scaleX(1.04)}
  78%{opacity:.40}
  100%{opacity:0;transform:translate3d(900px,var(--drift),0) rotate(-5deg) scaleX(.96)}
}

/* A sparse Autumn-Current-style leaf pass inside the sanctuary itself. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves{
  position:absolute!important;
  inset:0!important;
  z-index:7!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf{
  position:absolute!important;
  left:var(--x)!important;
  top:var(--y)!important;
  width:calc(var(--s) + 3px)!important;
  height:var(--s)!important;
  border-radius:90% 10% 90% 10%!important;
  opacity:0!important;
  transform-origin:50% 50%!important;
  background:linear-gradient(135deg,#f8ce63 0%,#ce6b28 58%,#74351b 100%)!important;
  box-shadow:0 0 3px rgba(230,152,54,.28)!important;
  animation:repoSanctuaryLeafFly var(--d) ease-in-out var(--delay) infinite!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf--rust{
  background:linear-gradient(135deg,#e7a447 0%,#a84b27 60%,#54281e 100%)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf--pale{
  background:linear-gradient(135deg,#fffdf2 0%,#e9e3d2 60%,#a99c87 100%)!important;
  box-shadow:0 0 3px rgba(255,248,227,.24)!important;
}
@keyframes repoSanctuaryLeafFly{
  0%{opacity:0;transform:translate3d(-90px,-12px,0) rotate(0deg) scale(.72)}
  10%{opacity:.72}
  42%{opacity:.68;transform:translate3d(calc(var(--dx) + 245px),calc(var(--dy) * .35),0) rotate(calc(var(--spin) * .46)) scale(1)}
  75%{opacity:.52}
  100%{opacity:0;transform:translate3d(calc(var(--dx) + 680px),var(--dy),0) rotate(var(--spin)) scale(.86)}
}

/* Keep effects under the guest sprites but above the stained glass. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{z-index:5!important}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest-layer{z-index:10!important}

@media(prefers-reduced-motion:reduce){
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves{display:none!important}
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{animation:none!important}
}


/* ======================================================================
   REPO COMPANY V20.23 — SEAT SCALE + ATMOSPHERE AUTHORITY
   - seats lowered only a few pixels
   - seated characters 10% smaller than V20.22
   - sanctuary wind/leaves explicitly remain rendered (older reduced-motion
     rules were hiding the parent layers entirely on some systems)
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:26.0775%!important; /* V20.22 28.975% × 0.90 */
}

/* Final visibility owner: never let historic billboard/reduced-motion rules
   collapse these requested scene layers. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  display:block!important;
  visibility:visible!important;
  pointer-events:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze{
  opacity:1!important;
  z-index:7!important;
  mix-blend-mode:screen!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves{
  opacity:1!important;
  z-index:8!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  opacity:1!important;
  z-index:6!important;
}

/* Readable but restrained wind ribbons. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
  display:block!important;
  visibility:visible!important;
  height:18px!important;
  min-width:180px!important;
  border-top:2px solid rgba(247,251,247,.72)!important;
  border-radius:50% 60% 0 0!important;
  background:linear-gradient(180deg,rgba(255,246,224,.10),rgba(236,247,244,.035) 38%,transparent 74%)!important;
  box-shadow:0 -1px 5px rgba(255,241,205,.20)!important;
  filter:blur(.12px) drop-shadow(0 0 2px rgba(236,248,244,.30))!important;
  opacity:0!important;
  animation:repoSanctuaryBreezeV23 var(--d) linear var(--delay) infinite!important;
  will-change:transform,opacity!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i:nth-child(2n){
  border-top-color:rgba(224,242,239,.64)!important;
  background:linear-gradient(180deg,rgba(226,245,241,.085),transparent 72%)!important;
}
@keyframes repoSanctuaryBreezeV23{
  0%{opacity:0;transform:translate3d(-70px,5px,0) rotate(-4deg) scaleX(.92)}
  7%{opacity:.76}
  42%{opacity:.62;transform:translate3d(390px,var(--drift),0) rotate(-2deg) scaleX(1.05)}
  78%{opacity:.42}
  100%{opacity:0;transform:translate3d(980px,calc(var(--drift) + 8px),0) rotate(-5deg) scaleX(.96)}
}

/* Leaves are deliberately sparse, but large/opaque enough to actually read
   against the detailed stained glass. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf{
  display:block!important;
  visibility:visible!important;
  width:calc(var(--s) + 5px)!important;
  height:calc(var(--s) + 1px)!important;
  opacity:0!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.34))!important;
  animation:repoSanctuaryLeafFlyV23 var(--d) ease-in-out var(--delay) infinite!important;
  will-change:transform,opacity!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf--gold{
  background:linear-gradient(135deg,#ffe083 0%,#d87a2e 58%,#71341a 100%)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf--rust{
  background:linear-gradient(135deg,#efb05a 0%,#ad512b 60%,#55291f 100%)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf--pale{
  background:linear-gradient(135deg,#fffef8 0%,#eee8da 58%,#aa9e8b 100%)!important;
  box-shadow:0 0 4px rgba(255,250,235,.38)!important;
}
@keyframes repoSanctuaryLeafFlyV23{
  0%{opacity:0;transform:translate3d(-110px,-8px,0) rotate(0deg) scale(.82)}
  7%{opacity:.88}
  43%{opacity:.80;transform:translate3d(300px,var(--dy),0) rotate(155deg) scale(1)}
  78%{opacity:.62}
  100%{opacity:0;transform:translate3d(790px,calc(var(--dy) + 16px),0) rotate(var(--spin)) scale(.88)}
}

/* Keep a little lit dust/pollen in the same air stream. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
  display:block!important;
  visibility:visible!important;
  min-width:2px!important;
  min-height:2px!important;
  animation:repoSanctuaryDustV23 var(--d) ease-in-out var(--delay) infinite!important;
}
@keyframes repoSanctuaryDustV23{
  0%{opacity:0;transform:translate3d(0,3px,0) scale(.6)}
  12%{opacity:.82}
  58%{opacity:.60}
  88%{opacity:.28}
  100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1.08)}
}

/* User explicitly requested these scene animations. This final block is after
   the legacy reduced-motion rules so they do not silently hide the effects. */
@media(prefers-reduced-motion:reduce){
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
    display:block!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
    animation:repoSanctuaryBreezeV23 calc(var(--d) * 1.35) linear var(--delay) infinite!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf{
    animation:repoSanctuaryLeafFlyV23 calc(var(--d) * 1.35) ease-in-out var(--delay) infinite!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
    animation:repoSanctuaryDustV23 calc(var(--d) * 1.35) ease-in-out var(--delay) infinite!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.24 — LOWER STEP BASELINE + GUARANTEED SANCTUARY FX
   ====================================================================== */
/* V20.23 already owns the requested 10%-smaller seated character size.
   Seat Y is corrected in JS; keep the scale unchanged here. */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:26.0775%!important;
}

/* Make these scene-local layers impossible for earlier billboard / motion rules
   to collapse. They remain below guests (z10) and above the backdrop. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  display:block!important;
  visibility:visible!important;
  pointer-events:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze{
  z-index:7!important;
  opacity:1!important;
  mix-blend-mode:screen!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves{
  z-index:8!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  z-index:6!important;
  opacity:1!important;
  mix-blend-mode:screen!important;
}

/* Two broad curved currents ensure the breeze reads even between the smaller
   individual ribbons. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::before,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::after{
  content:''!important;
  position:absolute!important;
  left:-58%!important;
  width:58%!important;
  height:82px!important;
  border-top:2px solid rgba(244,250,246,.56)!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at 50% 0,rgba(245,250,247,.055),transparent 66%)!important;
  filter:blur(.25px) drop-shadow(0 0 3px rgba(245,248,242,.18))!important;
  opacity:0!important;
  will-change:transform,opacity!important;
  animation:repoSanctuaryBroadWindV24 12.5s linear -3.2s infinite!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::before{top:28%!important}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::after{
  top:61%!important;
  border-top-color:rgba(229,244,241,.48)!important;
  animation-duration:15.5s!important;
  animation-delay:-10.4s!important;
}
@keyframes repoSanctuaryBroadWindV24{
  0%{opacity:0;transform:translate3d(0,8px,0) rotate(-4deg) scaleX(.92)}
  9%{opacity:.68}
  50%{opacity:.48;transform:translate3d(760px,-5px,0) rotate(-1deg) scaleX(1.04)}
  82%{opacity:.28}
  100%{opacity:0;transform:translate3d(1550px,9px,0) rotate(-4deg) scaleX(.96)}
}

/* Individual ribbons are now deliberately readable against the detailed glass. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
  display:block!important;
  visibility:visible!important;
  height:20px!important;
  min-width:190px!important;
  border-top:2px solid rgba(248,252,249,.68)!important;
  border-radius:50% 62% 0 0!important;
  background:linear-gradient(180deg,rgba(247,252,249,.075),rgba(255,234,193,.035) 42%,transparent 76%)!important;
  box-shadow:0 -1px 5px rgba(245,249,244,.16)!important;
  filter:blur(.08px) drop-shadow(0 0 2px rgba(242,249,246,.24))!important;
  animation-name:repoSanctuaryBreezeV24!important;
  animation-duration:var(--d)!important;
  animation-timing-function:linear!important;
  animation-delay:var(--delay)!important;
  animation-iteration-count:infinite!important;
  animation-play-state:running!important;
}
@keyframes repoSanctuaryBreezeV24{
  0%{opacity:0;transform:translate3d(-90px,4px,0) rotate(-4deg) scaleX(.92)}
  8%{opacity:.76}
  44%{opacity:.58;transform:translate3d(430px,calc(var(--drift) * .5),0) rotate(-2deg) scaleX(1.05)}
  78%{opacity:.36}
  100%{opacity:0;transform:translate3d(1020px,var(--drift),0) rotate(-5deg) scaleX(.96)}
}

/* Leaves: still sparse, but now clearly leaf-shaped and sufficiently opaque. */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf{
  display:block!important;
  visibility:visible!important;
  width:calc(var(--s) + 8px)!important;
  height:calc(var(--s) + 3px)!important;
  border-radius:92% 8% 88% 12%!important;
  filter:drop-shadow(0 1px 1px rgba(0,0,0,.46))!important;
  animation-name:repoSanctuaryLeafFlyV24!important;
  animation-duration:var(--d)!important;
  animation-timing-function:ease-in-out!important;
  animation-delay:var(--delay)!important;
  animation-iteration-count:infinite!important;
  animation-play-state:running!important;
}
@keyframes repoSanctuaryLeafFlyV24{
  0%{opacity:0;transform:translate3d(-130px,-10px,0) rotate(0deg) scale(.82)}
  7%{opacity:.96}
  42%{opacity:.88;transform:translate3d(330px,var(--dy),0) rotate(165deg) scale(1.03)}
  77%{opacity:.72}
  100%{opacity:0;transform:translate3d(860px,calc(var(--dy) + 18px),0) rotate(var(--spin)) scale(.9)}
}

#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
  display:block!important;
  visibility:visible!important;
  animation-name:repoSanctuaryDustV24!important;
  animation-duration:var(--d)!important;
  animation-timing-function:ease-in-out!important;
  animation-delay:var(--delay)!important;
  animation-iteration-count:infinite!important;
  animation-play-state:running!important;
}
@keyframes repoSanctuaryDustV24{
  0%{opacity:0;transform:translate3d(0,3px,0) scale(.62)}
  12%{opacity:.82}
  58%{opacity:.58}
  88%{opacity:.26}
  100%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) scale(1.08)}
}

/* IMPORTANT: previous builds attempted calc(var(--d) * 1.35) here. That time
   multiplication is not reliably accepted by browsers, so the older
   animation:none!important could win. The user explicitly wants these scene
   effects, so this final rule uses the valid original duration directly. */
@media(prefers-reduced-motion:reduce){
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
    display:block!important;
    visibility:visible!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::before,
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze::after{
    animation:repoSanctuaryBroadWindV24 15s linear -4s infinite!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze>i{
    animation:repoSanctuaryBreezeV24 var(--d) linear var(--delay) infinite!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaf{
    animation:repoSanctuaryLeafFlyV24 var(--d) ease-in-out var(--delay) infinite!important;
  }
  #repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust-bit{
    animation:repoSanctuaryDustV24 var(--d) ease-in-out var(--delay) infinite!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.25 — SANCTUARY EFFECT SYSTEM HARD RESET
   The previous sanctuary effects were CSS-only and could be swallowed by the
   legacy billboard cascade. Retire those nodes; V20.25 draws its atmosphere
   with a dedicated JS/Web-Animations layer immediately below the guests.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust{
  display:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .repo-sanctuary-fx-v25{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}

/* V20.26 — direct canvas sanctuary atmosphere */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves,
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-dust,
#repoDashboardV20 #scene.sanctuary-scene .repo-sanctuary-fx-v25{display:none!important}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-fx-canvas,
#scene.sanctuary-scene .sanctuary-fx-canvas{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  display:block!important;visibility:visible!important;opacity:1!important;z-index:8!important;
  pointer-events:none!important;background:transparent!important;transform:none!important;filter:none!important
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest-layer{z-index:10!important}


/* ======================================================================
   REPO COMPANY V20.27 — PREMIUM SANCTUARY ATMOSPHERE
   Cleaner presentation: gentle light, soft air currents and sparse leaves.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-fx-canvas,
#scene.sanctuary-scene .sanctuary-fx-canvas{
  opacity:.96!important;
  mix-blend-mode:screen!important;
}


/* ======================================================================
   REPO COMPANY V20.28 — ENDLESS HORDE GP ECONOMY
   ====================================================================== */
#combatDialog .combat-hud .combat-gp-earned{
  border-color:#765c28!important;
  background:linear-gradient(180deg,rgba(41,32,14,.86),rgba(16,13,8,.94))!important;
  color:#b8a56f!important;
}
#combatDialog .combat-hud .combat-gp-earned b{color:#f0cc66!important;text-shadow:0 1px #000,0 0 7px rgba(225,174,62,.18)!important}
.endless-horde-economy{
  display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;
  margin:12px 0 10px;padding:9px 11px;border:1px solid #66512b;
  background:linear-gradient(180deg,rgba(31,25,13,.94),rgba(11,10,7,.96));
  box-shadow:inset 0 0 0 1px rgba(229,191,91,.025);color:#d8c69a
}
.endless-horde-economy>img{width:31px;height:31px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 3px #000)}
.endless-horde-economy>span{display:flex;min-width:0;flex-direction:column;gap:3px}.endless-horde-economy>span>b{color:#e9cf83;font:900 10px/1 Georgia,serif;letter-spacing:.12em}.endless-horde-economy>span>small{color:#a99d82;font:700 9px/1.3 Georgia,serif}.endless-horde-economy>strong{padding:6px 8px;border-left:1px solid #574523;color:#edcd70;font:900 10px/1 Georgia,serif;white-space:nowrap}
#combatDialog{position:relative!important}
#repoHordeRewardNotice.repo-horde-reward-notice{
  position:absolute;z-index:90;left:50%;top:91px;min-width:210px;transform:translate(-50%,-8px) scale(.985);opacity:0;pointer-events:none;
  display:grid;justify-items:center;gap:2px;padding:8px 15px 9px;border:1px solid #77602e;border-radius:3px;
  background:linear-gradient(180deg,rgba(22,20,13,.96),rgba(8,9,7,.97));
  box-shadow:0 8px 22px rgba(0,0,0,.42),inset 0 0 0 1px rgba(240,205,111,.035);
  transition:opacity .18s ease,transform .18s ease
}
#repoHordeRewardNotice.show{opacity:1;transform:translate(-50%,0) scale(1)}
#repoHordeRewardNotice small{color:#a89972;font:900 7px/1 Georgia,serif;letter-spacing:.18em}
#repoHordeRewardNotice b{color:#f0cc66;font:900 18px/1 Georgia,serif;text-shadow:0 1px #000}
#repoHordeRewardNotice em{color:#8f8a77;font:700 7px/1 Georgia,serif;font-style:normal}
#repoHordeRewardNotice.bonus{border-color:#a78032;box-shadow:0 8px 22px rgba(0,0,0,.44),0 0 14px rgba(222,174,61,.10),inset 0 0 0 1px rgba(248,219,130,.06)}
#repoHordeRewardNotice.bonus b{color:#ffe08a}
@media(max-width:720px){.endless-horde-economy{grid-template-columns:32px 1fr}.endless-horde-economy>strong{grid-column:1/-1;border-left:0;border-top:1px solid #574523;text-align:center;padding-top:7px}}


/* ======================================================================
   REPO COMPANY V20.31 — LOGIN LANDING FINAL AUTHORITY
   Header is moved back to body while signed out, so it is genuinely viewport
   fixed and can no longer inherit the scaled dashboard-shell coordinate space.
   ====================================================================== */
body.repo-logged-out > #repoDashboardV20{display:none!important}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header{
  display:flex!important;
  position:fixed!important;
  inset:0!important;
  z-index:100!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100vh!important;
  margin:0!important;
  padding:clamp(18px,4vh,50px) 20px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  pointer-events:auto!important;
  border:0!important;
  background-color:#07131b!important;
  background-image:
    radial-gradient(circle at 50% 34%,rgba(62,101,126,.22),transparent 40%),
    linear-gradient(180deg,rgba(4,12,18,.10),rgba(2,8,13,.42)),
    url('assets/repo-signed-out-background.gif')!important;
  background-position:center,center,center!important;
  background-size:cover,cover,cover!important;
  background-repeat:no-repeat!important;
  transform:none!important;
  box-shadow:inset 0 0 100px rgba(0,0,0,.34)!important;
}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header .repo-header-centre{
  position:relative!important;
  z-index:2!important;
  width:min(900px,96vw)!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  transform:none!important;
}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header .repo-logo-wrap{
  position:relative!important;
  inset:auto!important;
  width:min(570px,70vw)!important;
  height:auto!important;
  transform:none!important;
  pointer-events:none!important;
}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header .repo-header-logo{
  width:100%!important;height:auto!important;max-height:54vh!important;object-fit:contain!important
}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header .character-box{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  margin:8px auto 0!important;
  transform:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:auto!important;
}
body.repo-logged-out > .repo-main-header.repo-auth-landing-header #createCharacter{
  display:block!important;
  width:auto!important;
  min-width:min(330px,88vw)!important;
  height:auto!important;
  margin:0 auto!important;
  padding:13px 30px!important;
  pointer-events:auto!important;
}
#characterDialog[open]{z-index:2147483000!important}
#characterDialog::backdrop{background:rgba(1,6,10,.78)!important;backdrop-filter:blur(3px)}


/* ======================================================================
   REPO COMPANY V20.35 — MMORPG REALM RANKINGS
   Dark steel / midnight UI. No parchment or brown panel treatment.
   ====================================================================== */
#leaderboardDialog.repo-rankings-dialog{
  width:min(1060px,94vw)!important;max-width:none!important;max-height:92vh!important;margin:auto!important;padding:0!important;
  border:1px solid #385162!important;border-radius:8px!important;background:#05090d!important;color:#dce7ee!important;
  box-shadow:0 0 0 1px #05080b,0 0 0 3px rgba(90,127,150,.22),0 32px 110px rgba(0,0,0,.9)!important;
  overflow:hidden!important;
}
#leaderboardDialog.repo-rankings-dialog::backdrop{
  background:radial-gradient(circle at 50% 38%,rgba(15,34,46,.52),rgba(1,4,7,.92) 72%)!important;
  backdrop-filter:blur(5px) brightness(.52)!important;
}
#leaderboardDialog .repo-rankings-shell{
  position:relative;max-height:90vh;overflow:auto;padding:0 24px 18px;
  background:
    radial-gradient(circle at 50% -15%,rgba(72,128,158,.18),transparent 38%),
    linear-gradient(180deg,#0a1118 0%,#071018 34%,#050b11 100%)!important;
  scrollbar-color:#385568 #071018;scrollbar-width:thin;
}
#leaderboardDialog .repo-rankings-shell::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.36;
  background-image:linear-gradient(rgba(119,165,190,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(119,165,190,.025) 1px,transparent 1px);
  background-size:32px 32px;
}
#leaderboardDialog .repo-rankings-close{
  position:absolute!important;z-index:50!important;right:15px!important;top:15px!important;width:38px!important;height:38px!important;padding:0!important;margin:0!important;
  display:grid!important;place-items:center!important;border:1px solid #41596a!important;border-radius:5px!important;
  background:linear-gradient(180deg,#15232e,#091018)!important;color:#c8d7df!important;font:800 22px/1 Arial,sans-serif!important;
  box-shadow:0 7px 18px rgba(0,0,0,.38),inset 0 1px rgba(255,255,255,.035)!important;
}
#leaderboardDialog .repo-rankings-close:hover{background:#1c303e!important;border-color:#63859a!important;color:#fff!important}
#leaderboardDialog .repo-rankings-header{
  position:relative;z-index:2;display:grid;grid-template-columns:64px minmax(0,1fr) 86px;align-items:center;gap:16px;
  min-height:116px;margin:0 -24px;padding:18px 64px 18px 24px;border-bottom:1px solid #263b49;
  background:linear-gradient(90deg,rgba(14,28,38,.96),rgba(8,17,24,.98));
  box-shadow:0 12px 26px rgba(0,0,0,.22);
}
#leaderboardDialog .repo-rankings-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,transparent,#5b879e 28%,#d1b66b 50%,#5b879e 72%,transparent);opacity:.55}
#leaderboardDialog .repo-rankings-crest{
  width:58px;height:58px;border-radius:12px;display:grid;place-items:center;border:1px solid #3d5a6b;
  background:linear-gradient(145deg,#102330,#081118);box-shadow:inset 0 0 20px rgba(94,154,184,.1),0 8px 22px rgba(0,0,0,.34);
}
#leaderboardDialog .repo-rankings-crest img{width:40px;height:40px;object-fit:contain;filter:drop-shadow(0 2px 4px #000)}
#leaderboardDialog .repo-rankings-title small{display:block;margin-bottom:5px;color:#7192a4;font:800 8px/1.2 Arial,sans-serif;letter-spacing:2.1px}
#leaderboardDialog .repo-rankings-title h3{margin:0!important;color:#eef5f8!important;font:800 clamp(28px,3.4vw,39px)/1 Arial,sans-serif!important;letter-spacing:.5px!important;text-shadow:0 2px 14px #000!important}
#leaderboardDialog .repo-rankings-title p{margin:7px 0 0!important;color:#8da0ab!important;font:500 11px/1.35 Arial,sans-serif!important}
#leaderboardDialog .repo-rankings-live{justify-self:end;width:68px;height:54px;border:1px solid #334e5f;border-radius:6px;display:grid;grid-template-columns:8px auto;grid-template-rows:1fr 1fr;align-items:center;justify-content:center;column-gap:6px;background:#08131b;box-shadow:inset 0 0 18px rgba(65,126,157,.08)}
#leaderboardDialog .repo-rankings-live i{grid-row:1/3;width:7px;height:7px;border-radius:50%;background:#68c38a;box-shadow:0 0 8px rgba(104,195,138,.7)}
#leaderboardDialog .repo-rankings-live span{align-self:end;color:#cce2eb;font:900 9px Arial,sans-serif;letter-spacing:1.2px}.repo-rankings-live small{align-self:start;color:#587585;font:800 6px Arial,sans-serif;letter-spacing:1px}
#leaderboardDialog .repo-rankings-toolbar{
  position:relative;z-index:2;height:48px;margin:0 -24px 18px;padding:0 24px;display:flex;align-items:center;gap:14px;border-bottom:1px solid #1d303c;background:rgba(5,12,18,.88)
}
#leaderboardDialog .repo-rankings-toolbar button{height:48px;margin:0;padding:0 15px;border:0;border-bottom:2px solid transparent;background:transparent;color:#718795;font:800 9px Arial,sans-serif;letter-spacing:1.4px;cursor:default}
#leaderboardDialog .repo-rankings-toolbar button.active{color:#dbe8ee;border-bottom-color:#79a9c0}.repo-rankings-toolbar span{color:#4e6877;font:700 7px Arial,sans-serif;letter-spacing:1.3px}.repo-rankings-toolbar small{margin-left:auto;color:#66808e;font:700 7px Arial,sans-serif;letter-spacing:1.2px}
#leaderboardDialog .repo-rankings-board{position:relative;z-index:2}
#leaderboardDialog .repo-rankings-loading,#leaderboardDialog .repo-rankings-empty{min-height:420px;display:grid;place-content:center;justify-items:center;text-align:center;gap:8px;color:#8195a0;font-family:Arial,sans-serif}
#leaderboardDialog .repo-rankings-loading span{width:34px;height:34px;border:2px solid rgba(105,151,174,.18);border-top-color:#76a8c0;border-radius:50%;animation:repoRankSpin .8s linear infinite}.repo-rankings-loading b,.repo-rankings-empty b{color:#d8e7ed;font:800 13px Arial,sans-serif;letter-spacing:1.7px}.repo-rankings-loading small,.repo-rankings-empty span{color:#6f8591;font:600 10px Arial,sans-serif}@keyframes repoRankSpin{to{transform:rotate(360deg)}}
#leaderboardDialog .repo-rankings-error button{margin-top:8px;padding:9px 18px;border:1px solid #47677a;border-radius:4px;background:#10212c;color:#d8e8ef;font:800 9px Arial,sans-serif;letter-spacing:1px;cursor:pointer}.repo-rankings-error button:hover{background:#173244;border-color:#7093a6}

#leaderboardDialog .repo-rank-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
#leaderboardDialog .repo-rank-podium-card{
  position:relative;min-height:222px;padding:14px 14px 13px;display:flex;flex-direction:column;align-items:center;overflow:hidden;
  border:1px solid #294351;border-radius:6px;background:linear-gradient(180deg,rgba(15,31,41,.96),rgba(7,16,23,.98));color:#dbe5ea;cursor:pointer;
  box-shadow:0 10px 28px rgba(0,0,0,.26),inset 0 1px rgba(255,255,255,.02);transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
#leaderboardDialog .repo-rank-podium-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 15%,rgba(91,153,184,.12),transparent 42%);pointer-events:none}
#leaderboardDialog .repo-rank-podium-card:hover{transform:translateY(-3px);border-color:#51778c;background:linear-gradient(180deg,rgba(20,43,56,.98),rgba(8,18,26,.98))}
#leaderboardDialog .repo-rank-podium-card.rank-gold{border-color:#8d7740;box-shadow:0 10px 30px rgba(0,0,0,.30),inset 0 1px rgba(255,241,192,.04)}
#leaderboardDialog .repo-rank-podium-card.rank-gold::before{background:radial-gradient(circle at 50% 14%,rgba(214,184,99,.14),transparent 43%)}
#leaderboardDialog .repo-rank-podium-card.is-you{box-shadow:inset 0 0 0 1px rgba(106,181,138,.25),0 10px 28px rgba(0,0,0,.25)}
#leaderboardDialog .repo-rank-podium-place{position:relative;z-index:2;width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:#718897}.repo-rank-podium-place i{font:900 18px Arial,sans-serif;font-style:normal}.repo-rank-podium-place small{font:800 6px Arial,sans-serif;letter-spacing:1.3px}
#leaderboardDialog .rank-gold .repo-rank-podium-place i{color:#e4c66f}.rank-silver .repo-rank-podium-place i{color:#becbd2}.rank-bronze .repo-rank-podium-place i{color:#b88b69}
#leaderboardDialog .repo-rank-avatar{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 35%,#1c3442,#08131a 72%);border:1px solid #365465}
#leaderboardDialog .repo-rank-avatar-podium{z-index:2;width:88px;height:88px;margin:0 0 9px;border-radius:50%;box-shadow:0 0 0 4px #071117,0 0 0 5px #3c5b6d,0 8px 18px rgba(0,0,0,.42)}
#leaderboardDialog .rank-gold .repo-rank-avatar-podium{box-shadow:0 0 0 4px #071117,0 0 0 5px #8d7740,0 8px 18px rgba(0,0,0,.42)}
#leaderboardDialog .repo-rank-avatar-row{width:46px;height:46px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 0 2px #071117}
#leaderboardDialog .repo-rank-avatar img{position:relative;z-index:2;width:100%;height:100%;object-fit:cover;object-position:center top;image-rendering:auto}.repo-rank-avatar-fallback{position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:#839dab;font:900 15px Arial,sans-serif}.repo-rank-avatar.is-fallback img{display:none!important}
#leaderboardDialog .repo-rank-podium-name{position:relative;z-index:2;max-width:100%;display:flex;align-items:center;gap:6px;color:#f0f5f7;font:800 16px/1.15 Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-rank-podium-name em{padding:2px 4px;border:1px solid #466c58;border-radius:3px;color:#8fc6a4;font:800 6px Arial,sans-serif;letter-spacing:.8px;font-style:normal}
#leaderboardDialog .repo-rank-podium-title{position:relative;z-index:2;margin-top:4px;max-width:100%;color:#78909d;font:600 8px Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#leaderboardDialog .repo-rank-podium-stat{position:relative;z-index:2;margin-top:12px;display:grid;text-align:center}.repo-rank-podium-stat small{color:#5f7784;font:800 6px Arial,sans-serif;letter-spacing:1.2px}.repo-rank-podium-stat b{margin-top:2px;color:#e4edf1;font:900 25px/1 Arial,sans-serif}.rank-gold .repo-rank-podium-stat b{color:#e5c873}
#leaderboardDialog .repo-rank-open{position:relative;z-index:2;margin-top:auto;padding-top:10px;color:#69808d;font:800 6px Arial,sans-serif;letter-spacing:1px}.repo-rank-open b{font-size:12px;color:#8fb0c0}

#leaderboardDialog .repo-rank-list{border:1px solid #223945;border-radius:6px;overflow:hidden;background:rgba(5,13,19,.80)}
#leaderboardDialog .repo-rank-list>header{min-height:36px;padding:0 12px;display:grid;grid-template-columns:44px 56px minmax(170px,1fr) 110px 116px 22px;align-items:center;gap:10px;border-bottom:1px solid #253b48;background:#0c1821;color:#5f7b8a}
#leaderboardDialog .repo-rank-list>header span{font:800 6px Arial,sans-serif;letter-spacing:1.3px}.repo-rank-list>header span:nth-child(2){grid-column:2/4}.repo-rank-list>header span:nth-child(3){grid-column:4}.repo-rank-list>header span:nth-child(4){grid-column:5;text-align:right}.repo-rank-list>header span:nth-child(5){grid-column:6}
#leaderboardDialog .repo-rank-list-row{width:100%;min-height:62px;margin:0;padding:7px 12px;display:grid;grid-template-columns:44px 46px minmax(170px,1fr) 110px 116px 22px;align-items:center;gap:10px;border:0;border-bottom:1px solid rgba(48,73,86,.48);background:transparent;color:#dbe5ea;text-align:left;cursor:pointer;transition:background .12s ease,box-shadow .12s ease}
#leaderboardDialog .repo-rank-list-row:last-child{border-bottom:0}.repo-rank-list-row:hover{background:linear-gradient(90deg,rgba(43,82,103,.25),rgba(20,42,55,.14));box-shadow:inset 3px 0 #648fa5}.repo-rank-list-row.is-you{background:rgba(49,91,70,.10);box-shadow:inset 3px 0 #5f9874}
#leaderboardDialog .repo-rank-list-position{justify-self:center;color:#7d96a4;font:900 12px Arial,sans-serif}.repo-rank-list-player{min-width:0;display:flex;flex-direction:column;gap:3px}.repo-rank-list-player b{min-width:0;color:#e7eef1;font:800 12px Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-rank-list-player b em{margin-left:6px;padding:2px 4px;border:1px solid #466c58;border-radius:3px;color:#8fc6a4;font:800 5px Arial,sans-serif;letter-spacing:.7px;font-style:normal}.repo-rank-list-player small{color:#718995;font:600 7px Arial,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#leaderboardDialog .repo-rank-list-status{display:flex;align-items:center;gap:6px;color:#58727f;font:800 6px Arial,sans-serif;letter-spacing:1px}.repo-rank-list-status i{width:5px;height:5px;border-radius:50%;background:#557d90;box-shadow:0 0 6px rgba(85,125,144,.45)}
#leaderboardDialog .repo-rank-list-level{text-align:right;display:flex;flex-direction:column}.repo-rank-list-level small{color:#526b77;font:800 5px Arial,sans-serif;letter-spacing:1px}.repo-rank-list-level strong{color:#d7e3e8;font:900 17px Arial,sans-serif}.repo-rank-list-open{justify-self:end;color:#537182;font:900 21px Arial,sans-serif;transition:transform .12s ease,color .12s ease}.repo-rank-list-row:hover .repo-rank-list-open{transform:translateX(2px);color:#94b5c4}
#leaderboardDialog .repo-rank-list-empty{padding:22px;text-align:center;color:#667d89;font:600 9px Arial,sans-serif}
#leaderboardDialog .repo-rankings-footer{position:relative;z-index:2;margin-top:13px;padding:0 2px;display:flex;justify-content:space-between;gap:12px;color:#4c6571;font:700 6px Arial,sans-serif;letter-spacing:1.2px}.repo-rankings-footer i{color:#526d7a;font-style:normal}
@media(max-width:760px){
  #leaderboardDialog .repo-rankings-shell{padding:0 12px 14px}.repo-rankings-header{grid-template-columns:50px 1fr!important;min-height:98px!important;margin:0 -12px!important;padding:14px 50px 14px 14px!important}.repo-rankings-crest{width:46px!important;height:46px!important}.repo-rankings-crest img{width:32px!important;height:32px!important}.repo-rankings-live{display:none!important}.repo-rankings-title h3{font-size:25px!important}.repo-rankings-toolbar{margin:0 -12px 12px!important;padding:0 12px!important}.repo-rankings-toolbar span{display:none}.repo-rank-podium{grid-template-columns:1fr!important}.repo-rank-podium-card{min-height:178px!important}.repo-rank-list>header{display:none!important}.repo-rank-list-row{grid-template-columns:30px 42px minmax(0,1fr) 80px 14px!important;gap:7px!important}.repo-rank-list-status{display:none!important}.repo-rank-avatar-row{width:40px!important;height:40px!important}.repo-rankings-footer{display:none!important}}


/* ======================================================================
   REPO COMPANY V20.36 — REALM LADDER HARD FIX
   Final authority for the Overall Leaderboard. Intentionally avoids the
   site's legacy brown game-dialog/header/button/footer rules.
   ====================================================================== */
#leaderboardDialog.repo-rankings-dialog{
  width:min(1080px,94vw)!important;
  max-width:none!important;
  height:auto!important;
  max-height:92vh!important;
  padding:0!important;
  margin:auto!important;
  overflow:hidden!important;
  border:1px solid #324959!important;
  border-radius:12px!important;
  outline:1px solid rgba(137,181,202,.08)!important;
  background:#050a0f!important;
  color:#dce8ee!important;
  box-shadow:0 0 0 1px #020406,0 24px 100px rgba(0,0,0,.82),0 0 60px rgba(54,101,126,.09)!important;
  font-family:Inter,Segoe UI,Arial,sans-serif!important;
}
#leaderboardDialog.repo-rankings-dialog::backdrop{
  background:radial-gradient(circle at 50% 38%,rgba(23,47,60,.34),rgba(1,4,7,.92) 68%)!important;
  backdrop-filter:blur(7px) brightness(.48)!important;
}
#leaderboardDialog .repo-rankings-shell{
  position:relative!important;
  display:block!important;
  max-height:90vh!important;
  min-height:620px!important;
  padding:0 24px 18px!important;
  overflow:auto!important;
  background:
    linear-gradient(180deg,rgba(18,31,40,.52),transparent 155px),
    radial-gradient(circle at 50% -8%,rgba(78,142,172,.13),transparent 34%),
    linear-gradient(180deg,#081018 0%,#060d13 46%,#050a0f 100%)!important;
  border:0!important;
  box-shadow:none!important;
  color:#dce8ee!important;
}
#leaderboardDialog .repo-rankings-shell::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  opacity:.5!important;
  background-image:
    linear-gradient(rgba(126,168,188,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(126,168,188,.018) 1px,transparent 1px)!important;
  background-size:40px 40px!important;
}
#leaderboardDialog .repo-rankings-close{
  position:absolute!important;z-index:100!important;right:16px!important;top:16px!important;
  width:36px!important;height:36px!important;min-width:0!important;padding:0!important;margin:0!important;
  display:grid!important;place-items:center!important;
  border:1px solid #3d596a!important;border-radius:7px!important;
  background:#0b161e!important;color:#cbdbe2!important;
  font:800 22px/1 Segoe UI,Arial,sans-serif!important;
  box-shadow:0 6px 18px rgba(0,0,0,.34)!important;
}
#leaderboardDialog .repo-rankings-close:hover{background:#122532!important;border-color:#6d91a4!important;color:white!important}

#leaderboardDialog .repo-rankings-header{
  position:relative!important;z-index:2!important;
  min-height:112px!important;
  margin:0 -24px!important;
  padding:18px 70px 18px 24px!important;
  display:grid!important;
  grid-template-columns:60px minmax(0,1fr) 76px!important;
  gap:16px!important;align-items:center!important;
  border:0!important;border-bottom:1px solid #263d4a!important;
  border-radius:0!important;
  background:linear-gradient(90deg,#0d1b24 0%,#09141c 58%,#081118 100%)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
  color:#e8f0f4!important;
}
#leaderboardDialog .repo-rankings-header::after{
  content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;height:2px!important;
  background:linear-gradient(90deg,transparent 2%,#456d82 28%,#79a3b6 50%,#456d82 72%,transparent 98%)!important;
  opacity:.62!important;
}
#leaderboardDialog .repo-rankings-crest{
  width:56px!important;height:56px!important;display:grid!important;place-items:center!important;
  border:1px solid #39576a!important;border-radius:12px!important;
  background:radial-gradient(circle at 50% 40%,#142a38,#08131b 72%)!important;
  box-shadow:inset 0 0 20px rgba(84,145,173,.10),0 8px 20px rgba(0,0,0,.3)!important;
}
#leaderboardDialog .repo-rankings-crest img{width:38px!important;height:38px!important;object-fit:contain!important;filter:drop-shadow(0 2px 4px #000)!important}
#leaderboardDialog .repo-rankings-title{background:transparent!important;border:0!important;padding:0!important;margin:0!important}
#leaderboardDialog .repo-rankings-title small{display:block!important;margin:0 0 5px!important;color:#6f94a7!important;font:800 8px/1.2 Segoe UI,Arial,sans-serif!important;letter-spacing:2px!important}
#leaderboardDialog .repo-rankings-title h3{margin:0!important;padding:0!important;color:#eef5f8!important;background:transparent!important;border:0!important;font:800 clamp(28px,3.3vw,38px)/1 Segoe UI,Arial,sans-serif!important;letter-spacing:.3px!important;text-shadow:0 2px 12px #000!important}
#leaderboardDialog .repo-rankings-title p{margin:7px 0 0!important;color:#8196a2!important;font:500 11px/1.35 Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .repo-rankings-live{
  justify-self:end!important;width:68px!important;height:52px!important;padding:0!important;margin:0!important;
  display:grid!important;grid-template-columns:8px auto!important;grid-template-rows:1fr 1fr!important;align-items:center!important;justify-content:center!important;column-gap:6px!important;
  border:1px solid #2e4b5b!important;border-radius:7px!important;background:#07131b!important;box-shadow:inset 0 0 16px rgba(61,126,157,.08)!important;
}
#leaderboardDialog .repo-rankings-live i{grid-row:1/3!important;width:6px!important;height:6px!important;border-radius:50%!important;background:#70d19a!important;box-shadow:0 0 8px rgba(112,209,154,.75)!important}
#leaderboardDialog .repo-rankings-live span{align-self:end!important;color:#d8e8ee!important;font:900 9px Segoe UI,Arial,sans-serif!important;letter-spacing:1px!important}
#leaderboardDialog .repo-rankings-live small{align-self:start!important;color:#587887!important;font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:.9px!important}

#leaderboardDialog .repo-rankings-toolbar{
  position:relative!important;z-index:2!important;
  min-height:48px!important;height:48px!important;
  margin:0 -24px 18px!important;padding:0 24px!important;
  display:flex!important;align-items:center!important;gap:14px!important;
  border:0!important;border-bottom:1px solid #1d303b!important;
  background:#060d13!important;box-shadow:none!important;color:#78909d!important;
}
#leaderboardDialog .repo-rankings-mode{
  height:48px!important;padding:0 3px!important;display:flex!important;align-items:center!important;
  border:0!important;border-bottom:2px solid #73a2b8!important;
  background:transparent!important;color:#d8e7ed!important;
  font:800 9px Segoe UI,Arial,sans-serif!important;letter-spacing:1.4px!important;
}
#leaderboardDialog .repo-rankings-scope{color:#496675!important;font:700 7px Segoe UI,Arial,sans-serif!important;letter-spacing:1.2px!important}
#leaderboardDialog #repoRankingsUpdated{margin-left:auto!important;color:#648390!important;font:700 7px Segoe UI,Arial,sans-serif!important;letter-spacing:1.1px!important}

#leaderboardDialog .repo-rankings-board{position:relative!important;z-index:2!important;background:transparent!important;border:0!important;box-shadow:none!important}
#leaderboardDialog .repo-rankings-loading,#leaderboardDialog .repo-rankings-empty{
  min-height:390px!important;display:grid!important;place-content:center!important;justify-items:center!important;text-align:center!important;gap:8px!important;
  border:0!important;background:transparent!important;color:#8197a2!important;font-family:Segoe UI,Arial,sans-serif!important;box-shadow:none!important;
}
#leaderboardDialog .repo-rankings-loading span{width:32px!important;height:32px!important;border:2px solid rgba(112,157,179,.16)!important;border-top-color:#78a9bf!important;border-radius:50%!important;background:transparent!important;animation:repoRankSpin .8s linear infinite!important}
#leaderboardDialog .repo-rankings-loading b,#leaderboardDialog .repo-rankings-empty b{color:#d9e6eb!important;font:800 13px Segoe UI,Arial,sans-serif!important;letter-spacing:1.5px!important}
#leaderboardDialog .repo-rankings-loading small,#leaderboardDialog .repo-rankings-empty span{color:#6e8793!important;font:600 10px Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .repo-rankings-error button{
  margin-top:8px!important;padding:9px 18px!important;border:1px solid #44677a!important;border-radius:5px!important;background:#0c1b25!important;color:#d9e8ef!important;font:800 9px Segoe UI,Arial,sans-serif!important;letter-spacing:1px!important;box-shadow:none!important
}

#leaderboardDialog .repo-rank-podium{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;margin:0 0 16px!important;background:transparent!important;border:0!important}
#leaderboardDialog .repo-rank-podium-card{
  position:relative!important;min-height:226px!important;padding:14px!important;margin:0!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;overflow:hidden!important;
  border:1px solid #294653!important;border-radius:8px!important;
  background:linear-gradient(180deg,#0e202a 0%,#09151d 55%,#071018 100%)!important;
  color:#dce7ec!important;cursor:pointer!important;text-align:center!important;
  box-shadow:0 10px 26px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.025)!important;
  transition:transform .15s ease,border-color .15s ease,background .15s ease!important;
}
#leaderboardDialog .repo-rank-podium-card:hover{transform:translateY(-3px)!important;border-color:#557d90!important;background:linear-gradient(180deg,#132b38,#09151d)!important}
#leaderboardDialog .repo-rank-podium-card.rank-gold{border-color:#77683d!important;background:linear-gradient(180deg,#17262b 0%,#0a171d 56%,#071018 100%)!important}
#leaderboardDialog .repo-rank-podium-card::before{content:""!important;position:absolute!important;inset:0!important;pointer-events:none!important;background:radial-gradient(circle at 50% 12%,rgba(82,151,180,.11),transparent 43%)!important}
#leaderboardDialog .repo-rank-podium-card.rank-gold::before{background:radial-gradient(circle at 50% 12%,rgba(205,184,112,.10),transparent 43%)!important}
#leaderboardDialog .repo-rank-podium-place{position:relative!important;z-index:2!important;width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;margin:0 0 10px!important;color:#718b98!important;background:transparent!important;border:0!important}
#leaderboardDialog .repo-rank-podium-place i{font:900 18px Segoe UI,Arial,sans-serif!important;font-style:normal!important}
#leaderboardDialog .repo-rank-podium-place small{font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1.2px!important}
#leaderboardDialog .rank-gold .repo-rank-podium-place i{color:#d8c06f!important}
#leaderboardDialog .rank-silver .repo-rank-podium-place i{color:#b9c7ce!important}
#leaderboardDialog .rank-bronze .repo-rank-podium-place i{color:#ad8469!important}
#leaderboardDialog .repo-rank-avatar{position:relative!important;display:grid!important;place-items:center!important;overflow:hidden!important;background:radial-gradient(circle at 50% 35%,#1a3544,#08131a 72%)!important;border:1px solid #36576a!important}
#leaderboardDialog .repo-rank-avatar-podium{z-index:2!important;width:92px!important;height:92px!important;margin:0 0 10px!important;border-radius:50%!important;box-shadow:0 0 0 4px #071117,0 0 0 5px #3d6072,0 8px 18px rgba(0,0,0,.42)!important}
#leaderboardDialog .rank-gold .repo-rank-avatar-podium{box-shadow:0 0 0 4px #071117,0 0 0 5px #77683d,0 8px 18px rgba(0,0,0,.42)!important}
#leaderboardDialog .repo-rank-avatar-row{width:46px!important;height:46px!important;border-radius:50%!important;flex:0 0 auto!important;box-shadow:0 0 0 2px #071117!important}
#leaderboardDialog .repo-rank-avatar img{position:relative!important;z-index:2!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;background:transparent!important;border:0!important;box-shadow:none!important}
#leaderboardDialog .repo-rank-avatar-fallback{position:absolute!important;inset:0!important;z-index:1!important;display:grid!important;place-items:center!important;color:#809aa7!important;font:900 15px Segoe UI,Arial,sans-serif!important;background:transparent!important}
#leaderboardDialog .repo-rank-podium-name{position:relative!important;z-index:2!important;max-width:100%!important;display:flex!important;align-items:center!important;gap:6px!important;color:#eef4f6!important;background:transparent!important;font:800 16px/1.15 Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .repo-rank-podium-title{position:relative!important;z-index:2!important;margin:4px 0 0!important;max-width:100%!important;color:#78939f!important;background:transparent!important;font:600 8px Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .repo-rank-podium-stat{position:relative!important;z-index:2!important;margin:12px 0 0!important;display:grid!important;background:transparent!important;border:0!important}
#leaderboardDialog .repo-rank-podium-stat small{color:#5d7884!important;font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1.1px!important}
#leaderboardDialog .repo-rank-podium-stat b{margin-top:2px!important;color:#dfe9ed!important;font:900 25px/1 Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .rank-gold .repo-rank-podium-stat b{color:#dcc473!important}
#leaderboardDialog .repo-rank-open{position:relative!important;z-index:2!important;margin-top:auto!important;padding-top:10px!important;color:#66818e!important;background:transparent!important;font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1px!important}

#leaderboardDialog .repo-rank-list{border:1px solid #223b48!important;border-radius:8px!important;overflow:hidden!important;background:#071018!important;box-shadow:0 8px 24px rgba(0,0,0,.18)!important}
#leaderboardDialog .repo-rank-list>header{
  min-height:36px!important;padding:0 12px!important;margin:0!important;display:grid!important;
  grid-template-columns:44px 56px minmax(170px,1fr) 110px 116px 22px!important;align-items:center!important;gap:10px!important;
  border:0!important;border-bottom:1px solid #263d49!important;background:#0b1922!important;color:#607d8b!important;box-shadow:none!important
}
#leaderboardDialog .repo-rank-list>header span{font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1.2px!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-row{
  width:100%!important;min-height:64px!important;margin:0!important;padding:8px 12px!important;
  display:grid!important;grid-template-columns:44px 46px minmax(170px,1fr) 110px 116px 22px!important;align-items:center!important;gap:10px!important;
  border:0!important;border-bottom:1px solid rgba(50,78,91,.45)!important;border-radius:0!important;
  background:#071018!important;color:#dce7ec!important;text-align:left!important;cursor:pointer!important;box-shadow:none!important
}
#leaderboardDialog .repo-rank-list-row:last-child{border-bottom:0!important}
#leaderboardDialog .repo-rank-list-row:hover{background:#0d202a!important;box-shadow:inset 3px 0 #628da1!important}
#leaderboardDialog .repo-rank-list-row.is-you{background:#0b1d1a!important;box-shadow:inset 3px 0 #5d9572!important}
#leaderboardDialog .repo-rank-list-position{justify-self:center!important;color:#7894a0!important;font:900 12px Segoe UI,Arial,sans-serif!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-player{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-player b{color:#e8f0f3!important;font:800 12px Segoe UI,Arial,sans-serif!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-player small{color:#708c98!important;font:600 7px Segoe UI,Arial,sans-serif!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-status{display:flex!important;align-items:center!important;gap:6px!important;color:#557481!important;font:800 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1px!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-status i{width:5px!important;height:5px!important;border-radius:50%!important;background:#5c8699!important;box-shadow:0 0 6px rgba(92,134,153,.45)!important}
#leaderboardDialog .repo-rank-list-level{text-align:right!important;display:flex!important;flex-direction:column!important;background:transparent!important}
#leaderboardDialog .repo-rank-list-level small{color:#526f7b!important;font:800 5px Segoe UI,Arial,sans-serif!important;letter-spacing:1px!important}
#leaderboardDialog .repo-rank-list-level strong{color:#dce8ed!important;font:900 17px Segoe UI,Arial,sans-serif!important}
#leaderboardDialog .repo-rank-list-open{justify-self:end!important;color:#557789!important;font:900 21px Segoe UI,Arial,sans-serif!important;background:transparent!important}

#leaderboardDialog .repo-rankings-footer{
  position:relative!important;z-index:2!important;
  min-height:38px!important;margin:13px 0 0!important;padding:0 12px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;
  border:1px solid #1f3440!important;border-radius:6px!important;
  background:#071018!important;box-shadow:none!important;color:#4f6b78!important;
  font:700 6px Segoe UI,Arial,sans-serif!important;letter-spacing:1.1px!important
}
#leaderboardDialog .repo-rankings-footer i{color:#587581!important;font-style:normal!important;background:transparent!important}

@media(max-width:760px){
  #leaderboardDialog .repo-rankings-shell{padding:0 12px 14px!important;min-height:0!important}
  #leaderboardDialog .repo-rankings-header{grid-template-columns:48px minmax(0,1fr)!important;min-height:96px!important;margin:0 -12px!important;padding:14px 54px 14px 14px!important;gap:11px!important}
  #leaderboardDialog .repo-rankings-crest{width:46px!important;height:46px!important}.repo-rankings-crest img{width:32px!important;height:32px!important}
  #leaderboardDialog .repo-rankings-live{display:none!important}
  #leaderboardDialog .repo-rankings-title h3{font-size:25px!important}
  #leaderboardDialog .repo-rankings-toolbar{margin:0 -12px 12px!important;padding:0 12px!important}
  #leaderboardDialog .repo-rankings-scope{display:none!important}
  #leaderboardDialog .repo-rank-podium{grid-template-columns:1fr!important}
  #leaderboardDialog .repo-rank-podium-card{min-height:176px!important}
  #leaderboardDialog .repo-rank-list>header{display:none!important}
  #leaderboardDialog .repo-rank-list-row{grid-template-columns:30px 42px minmax(0,1fr) 80px 14px!important;gap:7px!important}
  #leaderboardDialog .repo-rank-list-status{display:none!important}
  #leaderboardDialog .repo-rank-avatar-row{width:40px!important;height:40px!important}
  #leaderboardDialog .repo-rankings-footer{display:none!important}
}


/* ======================================================================
   REPO COMPANY V20.39 — DUAL BINDER FOUNDATION
   Clean second-binder shell only. No grading/slab logic is included.
   ====================================================================== */

/* The original binder front becomes a physical two-binder shelf. */
#quidditchTcgBinderDialog[data-binder-page='front'] .quidditch-tcg-binder-stage{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(26px,4.2vw,74px)!important;
  padding:22px 34px!important;
  box-sizing:border-box!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover img{
  width:auto!important;
  height:min(76vh,760px)!important;
  max-height:calc(100% - 18px)!important;
  max-width:42%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 20px 28px rgba(0,0,0,.84)) drop-shadow(0 0 10px rgba(199,155,69,.10))!important;
  transform:translateY(0) scale(1)!important;
  transition:transform .22s cubic-bezier(.2,.76,.22,1),filter .22s ease,opacity .18s ease!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage{
  flex:0 1 auto!important;
}
#quidditchTcgBinderDialog .repo-secondary-binder-cover{
  display:none;
  appearance:none;
  border:0!important;
  outline:0!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer;
  position:relative;
  z-index:4;
  align-items:center;
  justify-content:center;
  height:min(76vh,760px)!important;
  max-height:calc(100% - 18px)!important;
  max-width:42%!important;
  width:auto!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover{
  display:flex!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover img{
  display:block!important;
  width:auto!important;
  height:100%!important;
  max-width:100%!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage:hover,
#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage:focus-visible,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover:hover img,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover:focus-visible img{
  transform:translateY(-11px) scale(1.022)!important;
  filter:brightness(1.075) drop-shadow(0 29px 34px rgba(0,0,0,.90)) drop-shadow(0 0 18px rgba(218,176,88,.17))!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover:focus-visible{
  outline:1px solid rgba(235,202,126,.72)!important;
  outline-offset:8px!important;
  border-radius:4px;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover::after{
  content:'RCG SLAB BINDER';
  position:absolute;
  left:50%;
  bottom:-9px;
  transform:translate(-50%,100%);
  opacity:0;
  pointer-events:none;
  white-space:nowrap;
  padding:6px 12px;
  border:1px solid rgba(209,169,81,.58);
  background:rgba(6,10,15,.92);
  color:#e4cc91;
  font:700 9px/1.1 Georgia,serif;
  letter-spacing:.13em;
  box-shadow:0 8px 18px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.035);
  transition:opacity .16s ease;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover:hover::after,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover:focus-visible::after{opacity:.9}

/* Keep all normal collection layers out of the closed-cover chooser. */
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-binder-spread-126,
#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderCards{
  display:none!important;
}

/* Empty second binder. This intentionally has no collection mechanics yet. */
.repo-empty-secondary-binder-dialog{
  width:min(99vw,1740px)!important;
  max-width:none!important;
  height:min(97vh,1040px)!important;
  max-height:none!important;
  padding:0!important;
  border:0!important;
  overflow:visible!important;
  color:#e6d19a;
  background:transparent!important;
  opacity:0;
  transform:scale(.985);
  transition:opacity .15s ease,transform .18s ease;
}
.repo-empty-secondary-binder-dialog.is-visible{opacity:1;transform:scale(1.04)}
.repo-empty-secondary-binder-dialog::backdrop{
  background:rgba(1,4,8,.91)!important;
  backdrop-filter:blur(4px) saturate(.78)!important;
}
.repo-empty-secondary-binder-shell{
  box-sizing:border-box;
  height:100%;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  position:relative;
  padding:10px 12px 10px;
  border:1px solid rgba(128,164,191,.42);
  outline:1px solid rgba(214,174,80,.56);
  outline-offset:-7px;
  background:radial-gradient(ellipse at 50% 20%,rgba(21,34,47,.98),rgba(3,7,11,.995) 72%);
  box-shadow:0 26px 78px rgba(0,0,0,.88),inset 0 0 0 1px rgba(255,255,255,.025),inset 0 0 80px rgba(49,94,128,.10);
}
.repo-empty-secondary-binder-header{
  min-height:48px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  text-align:center;
  padding:6px 56px 8px;
  font-family:Georgia,serif;
  text-shadow:1px 2px 2px #000;
}
.repo-empty-secondary-binder-header strong{color:#ead290;font-size:clamp(17px,1.8vw,27px);letter-spacing:.12em}
.repo-empty-secondary-binder-header small{color:#8397aa;font-size:9px;letter-spacing:.20em}
.repo-empty-secondary-binder-close{
  position:absolute;
  right:18px;
  top:15px;
  z-index:20;
  width:38px;
  height:38px;
  border:1px solid rgba(213,174,83,.72);
  background:linear-gradient(#1b2229,#090d11);
  color:#ecd69e;
  font:900 23px/1 Georgia,serif;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.04);
}
.repo-empty-secondary-binder-close:hover{filter:brightness(1.18)}
.repo-empty-secondary-binder-stage{
  position:relative;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-top:1px solid rgba(210,174,89,.20);
  border-bottom:1px solid rgba(210,174,89,.20);
  background:radial-gradient(ellipse at center,rgba(32,55,72,.28),rgba(0,0,0,.46) 72%);
}
.repo-empty-secondary-binder-stage::before{
  content:'';
  position:absolute;
  inset:-20%;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 42%,rgba(207,226,236,.025) 47%,rgba(238,214,155,.055) 50%,rgba(207,226,236,.022) 53%,transparent 58%);
  animation:repoSecondaryBinderAmbientSweep 12s ease-in-out infinite;
}
.repo-empty-secondary-book{
  position:relative;
  width:min(93vw,1500px);
  aspect-ratio:1.56 / 1;
  max-height:88vh;
  display:grid;
  grid-template-columns:1fr 52px 1fr;
  transform:perspective(1400px) rotateX(2deg) scale(.94);
  opacity:.2;
  filter:drop-shadow(0 24px 32px rgba(0,0,0,.85));
  transition:transform .48s cubic-bezier(.16,.84,.2,1),opacity .34s ease;
}
.repo-empty-secondary-binder-dialog.is-opened .repo-empty-secondary-book{transform:perspective(1400px) rotateX(0) scale(1);opacity:1}
.repo-empty-secondary-page{
  position:relative;
  overflow:hidden;
  border:2px solid #1b2025;
  outline:1px solid rgba(205,164,75,.60);
  background:
    radial-gradient(circle at 46% 42%,rgba(60,70,76,.12),transparent 32%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.014) 0 1px,transparent 1px 5px),
    linear-gradient(135deg,#15191d,#090c0f 58%,#050708);
  box-shadow:inset 0 0 0 5px #090c0f,inset 0 0 0 7px rgba(196,157,69,.36),inset 0 0 62px rgba(0,0,0,.68);
}
.repo-empty-secondary-page.left{border-radius:18px 3px 3px 18px;box-shadow:inset -28px 0 42px rgba(0,0,0,.35),inset 0 0 0 5px #090c0f,inset 0 0 0 7px rgba(196,157,69,.36),inset 0 0 62px rgba(0,0,0,.68)}
.repo-empty-secondary-page.right{border-radius:3px 18px 18px 3px;box-shadow:inset 28px 0 42px rgba(0,0,0,.35),inset 0 0 0 5px #090c0f,inset 0 0 0 7px rgba(196,157,69,.36),inset 0 0 62px rgba(0,0,0,.68)}
.repo-empty-secondary-page::after{
  content:'EMPTY';
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  color:rgba(206,175,105,.12);
  font:700 clamp(26px,4vw,62px)/1 Georgia,serif;
  letter-spacing:.22em;
}
.repo-empty-secondary-spine{
  position:relative;
  z-index:4;
  border-left:1px solid #ad7e2f;
  border-right:1px solid #ad7e2f;
  background:linear-gradient(90deg,#030405,#11161b 22%,#232a30 50%,#11161b 78%,#030405);
  box-shadow:0 0 24px #000,inset 0 0 0 3px rgba(185,139,53,.24);
}
.repo-empty-secondary-spine::before,.repo-empty-secondary-spine::after{
  content:'';
  position:absolute;
  left:7px;
  right:7px;
  height:8px;
  border:1px solid #9e742f;
  border-radius:8px;
  background:linear-gradient(#d0a34e,#5e3c13);
  box-shadow:0 2px 5px #000;
}
.repo-empty-secondary-spine::before{top:31%}.repo-empty-secondary-spine::after{bottom:31%}
.repo-empty-secondary-binder-footer{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(260px,2fr) minmax(180px,1fr);
  align-items:center;
  gap:12px;
  padding:9px 2px 0;
}
.repo-empty-secondary-binder-footer button{
  min-height:40px;
  border:1px solid rgba(207,167,78,.66);
  background:linear-gradient(#192129,#080c10);
  color:#e7cf93;
  font:800 10px/1 Georgia,serif;
  letter-spacing:.10em;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
.repo-empty-secondary-binder-footer button:hover{filter:brightness(1.17)}
.repo-empty-secondary-binder-footer span{
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:3px;
  color:#d9c386;
  font:700 12px/1.2 Georgia,serif;
  letter-spacing:.13em;
}
.repo-empty-secondary-binder-footer span small{color:#7890a3;font:600 9px/1.2 system-ui,sans-serif;letter-spacing:.08em}
.repo-empty-secondary-binder-footer i{display:block}

@keyframes repoSecondaryBinderAmbientSweep{
  0%,20%{transform:translateX(-28%);opacity:0}
  34%{opacity:.78}
  58%{transform:translateX(28%);opacity:.24}
  70%,100%{transform:translateX(34%);opacity:0}
}

@media(max-width:900px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .quidditch-tcg-binder-stage{gap:16px!important;padding:18px 14px!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage,
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover{max-width:47%!important;height:min(67vh,630px)!important}
  .repo-empty-secondary-book{grid-template-columns:1fr 32px 1fr;width:95vw}
}
@media(max-width:620px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .quidditch-tcg-binder-stage{gap:8px!important;padding:12px 7px!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage,
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover{max-width:48%!important;height:min(60vh,530px)!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover::after{display:none}
  .repo-empty-secondary-binder-dialog{width:99vw!important;height:94vh!important}
  .repo-empty-secondary-binder-dialog.is-visible{transform:scale(1)}
  .repo-empty-secondary-binder-header small{display:none}
  .repo-empty-secondary-book{grid-template-columns:1fr 22px 1fr;width:97vw}
  .repo-empty-secondary-binder-footer{grid-template-columns:105px 1fr 0;gap:6px}
  .repo-empty-secondary-binder-footer i{display:none}
}
@media(prefers-reduced-motion:reduce){
  .repo-empty-secondary-binder-stage::before{animation:none!important}
  .repo-empty-secondary-book,#quidditchTcgBinderDialog[data-binder-page='front'] #quidditchTcgBinderImage,#quidditchTcgBinderDialog[data-binder-page='front'] .repo-secondary-binder-cover img{transition:none!important}
}

/* V20.40: final dual-cover shelf layout is injected at runtime after legacy binder centring styles. */


/* ======================================================================
   REPO COMPANY V20.41 — TRUE DUAL-BINDER FRONT SHELF
   This uses a dedicated overlay that legacy binder-stage layout rules cannot
   reflow. The original cover remains in the DOM for the working binder code.
   ====================================================================== */
#quidditchTcgBinderDialog[data-binder-page='front'] .quidditch-tcg-binder-stage > #quidditchTcgBinderImage,
#quidditchTcgBinderDialog[data-binder-page='front'] .quidditch-tcg-binder-stage > .repo-secondary-binder-cover{
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
#quidditchTcgBinderDialog .repo-dual-binder-shelf-v2041{
  display:none!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shelf-v2041{
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  width:min(88vw,1220px)!important;
  height:min(78dvh,780px)!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  padding:clamp(14px,2vh,24px)!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(42px,5.4vw,92px)!important;
  z-index:120!important;
  pointer-events:none!important;
  overflow:visible!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  flex:0 1 min(37vw,500px)!important;
  width:min(37vw,500px)!important;
  height:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  overflow:visible!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{
  display:block!important;
  width:auto!important;
  height:min(72dvh,720px)!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:translateY(0) scale(1)!important;
  transform-origin:50% 52%!important;
  animation:repoBinderCoverIdle 5.2s ease-in-out infinite!important;
  filter:drop-shadow(0 25px 34px rgba(0,0,0,.82)) drop-shadow(0 0 1px rgba(236,192,91,.43))!important;
  transition:transform .24s cubic-bezier(.2,.8,.2,1),filter .24s ease,brightness .24s ease!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041:hover img,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041:focus-visible img{
  animation-play-state:paused!important;
  transform:translateY(-10px) scale(1.022) rotateY(-.65deg)!important;
  filter:brightness(1.07) drop-shadow(0 32px 42px rgba(0,0,0,.88)) drop-shadow(0 0 14px rgba(219,172,69,.18)) drop-shadow(0 0 8px rgba(72,142,221,.11))!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041:focus-visible{
  outline:1px solid rgba(221,181,91,.58)!important;
  outline-offset:10px!important;
  border-radius:3px!important;
}
@media(max-width:820px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shelf-v2041{
    width:96vw!important;
    gap:18px!important;
    padding:14px 8px!important;
  }
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041{
    width:calc(50vw - 22px)!important;
    flex-basis:calc(50vw - 22px)!important;
  }
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{
    height:min(65dvh,620px)!important;
  }
}
@media(max-width:520px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shelf-v2041{gap:8px!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041{
    width:calc(50vw - 12px)!important;
    flex-basis:calc(50vw - 12px)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{animation:none!important}
}


/* ======================================================================
   REPO COMPANY V20.42 — RCG SLAB BINDER 9-UP PROFESSIONAL INTERIOR
   Replaces the empty secondary binder interior with a clean professional
   9-slab-per-page presentation.
   ====================================================================== */
.repo-empty-secondary-binder-dialog{width:min(99vw,1810px)!important;height:min(97vh,1120px)!important}
.repo-empty-secondary-binder-shell-v2042{
  background:
    radial-gradient(circle at 50% 10%,rgba(64,84,104,.16),transparent 35%),
    radial-gradient(circle at 50% 45%,rgba(18,26,34,.78),rgba(3,6,10,.99) 72%)!important;
}
.repo-empty-secondary-binder-header{
  min-height:60px;
  gap:16px;
  padding:10px 64px 10px;
}
.repo-empty-secondary-binder-header strong{font-size:clamp(20px,1.9vw,30px)!important;letter-spacing:.15em}
.repo-empty-secondary-binder-header small{font-size:10px!important;letter-spacing:.24em;color:#96adbf!important}
.repo-empty-secondary-binder-stage{
  background:
    radial-gradient(circle at 50% 50%,rgba(39,57,74,.26),rgba(6,10,14,.40) 58%,rgba(0,0,0,.60) 82%),
    linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,0));
}
.repo-empty-secondary-book-v2042{
  width:min(95vw,1600px)!important;
  aspect-ratio:1.63 / 1!important;
  max-height:90vh!important;
  grid-template-columns:1fr 58px 1fr!important;
  transform:perspective(1500px) rotateX(0.8deg) scale(.955)!important;
}
.repo-empty-secondary-binder-dialog.is-opened .repo-empty-secondary-book-v2042{transform:perspective(1500px) rotateX(0deg) scale(1)!important}
.repo-empty-secondary-page-v2042{
  padding:20px 18px 18px;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:14px;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.035),transparent 22%),
    radial-gradient(circle at 80% 82%,rgba(255,255,255,.025),transparent 18%),
    repeating-linear-gradient(135deg,rgba(255,255,255,.012) 0 1px,transparent 1px 5px),
    linear-gradient(135deg,#14181d,#090c10 54%,#06080a 100%)!important;
}
.repo-empty-secondary-page-v2042::after{display:none!important}
.repo-empty-secondary-page-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  padding:2px 6px 0;
  color:#e7d39c;
  text-shadow:0 1px 2px rgba(0,0,0,.85);
}
.repo-empty-secondary-page-head span{font:700 16px/1.1 Georgia,serif;letter-spacing:.16em}
.repo-empty-secondary-page-head small{font:700 8.5px/1.2 Georgia,serif;letter-spacing:.22em;color:#8ea2b5}
.repo-empty-secondary-grid{
  min-height:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:14px;
  padding:2px 4px 4px;
}
.repo-empty-secondary-slot{
  position:relative;
  min-height:0;
  border-radius:16px;
  padding:6px;
  background:linear-gradient(180deg,rgba(206,168,86,.14),rgba(88,59,18,.06));
  box-shadow:inset 0 0 0 1px rgba(201,161,75,.24),inset 0 0 0 6px rgba(0,0,0,.18);
}
.repo-empty-secondary-slot::before{
  content:'';
  position:absolute;
  inset:0;
  border-radius:16px;
  background:linear-gradient(130deg,rgba(255,255,255,.04),transparent 28%,transparent 72%,rgba(255,255,255,.02));
  pointer-events:none;
}
.repo-empty-secondary-slab{
  position:relative;
  height:100%;
  min-height:0;
  border-radius:12px;
  display:grid;
  grid-template-rows:20px minmax(0,1fr) 20px;
  overflow:hidden;
  background:
    linear-gradient(180deg,rgba(247,249,252,.30),rgba(232,238,246,.16) 8%,rgba(255,255,255,.08) 16%,rgba(255,255,255,.03) 100%),
    linear-gradient(135deg,rgba(12,18,25,.85),rgba(6,10,15,.52));
  box-shadow:
    inset 0 0 0 2px rgba(235,239,244,.48),
    inset 0 0 0 5px rgba(255,255,255,.10),
    inset 0 0 0 7px rgba(0,0,0,.22),
    0 8px 16px rgba(0,0,0,.34);
}
.repo-empty-secondary-slab::before{
  content:'';
  position:absolute;
  inset:4px;
  border-radius:10px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.44);
  pointer-events:none;
}
.repo-empty-secondary-slab::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:12px;
  background:linear-gradient(112deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.07) 14%,rgba(255,255,255,0) 28%,rgba(255,255,255,0) 72%,rgba(255,255,255,.06) 90%,rgba(255,255,255,.16) 100%);
  mix-blend-mode:screen;
  pointer-events:none;
}
.repo-empty-secondary-slab-label,
.repo-empty-secondary-slab-base{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 6px;
  color:#d7ba73;
  text-shadow:0 1px 1px rgba(0,0,0,.9);
  font:700 9px/1 Georgia,serif;
  letter-spacing:.18em;
  background:linear-gradient(180deg,#161c23,#0a0f13);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(0,0,0,.65);
}
.repo-empty-secondary-slab-label{font-size:8px;letter-spacing:.22em}
.repo-empty-secondary-slab-window{
  position:relative;
  margin:6px;
  border-radius:9px;
  background:
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.24),rgba(239,243,249,.10) 26%,rgba(204,215,228,.06) 50%,rgba(255,255,255,.02) 72%,rgba(0,0,0,.04) 100%),
    linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.04));
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.36),inset 0 0 0 4px rgba(0,0,0,.10),inset 0 0 18px rgba(255,255,255,.12);
}
.repo-empty-secondary-slab-window::before{
  content:'';
  position:absolute;
  inset:10% 14%;
  border-radius:7px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.02)),
    radial-gradient(circle at 50% 25%,rgba(255,255,255,.16),transparent 46%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.26);
}
.repo-empty-secondary-slab-window::after{
  content:'';
  position:absolute;
  left:12%;top:7%;width:34%;height:18%;
  border-radius:999px;
  background:linear-gradient(180deg,rgba(255,255,255,.48),rgba(255,255,255,0));
  filter:blur(1px);
}
.repo-empty-secondary-binder-footer-v2042{
  grid-template-columns:minmax(230px,1fr) minmax(320px,1.8fr) minmax(220px,1fr)!important;
}
.repo-empty-secondary-binder-footer-v2042 span{padding-left:16px}
.repo-empty-secondary-binder-footer-v2042 i{
  display:flex!important;
  justify-content:flex-end;
  align-items:center;
  font:700 10px/1.2 Georgia,serif;
  letter-spacing:.18em;
  color:#93a8ba;
  font-style:normal;
  text-transform:uppercase;
}
@media(max-width:1200px){
  .repo-empty-secondary-grid{gap:10px}
  .repo-empty-secondary-page-v2042{padding:15px 12px 12px;gap:10px}
  .repo-empty-secondary-book-v2042{grid-template-columns:1fr 46px 1fr!important}
  .repo-empty-secondary-slab-label,.repo-empty-secondary-slab-base{font-size:7px}
}
@media(max-width:900px){
  .repo-empty-secondary-book-v2042{width:min(97vw,1200px)!important;aspect-ratio:1.42 / 1!important}
  .repo-empty-secondary-grid{gap:8px}
  .repo-empty-secondary-page-head span{font-size:13px}
  .repo-empty-secondary-page-head small{font-size:7px}
}


/* ======================================================================
   REPO COMPANY V20.43 — PROFESSIONAL RCG SLAB BINDER
   Replaces the temporary brown RCG interior with a cleaner professional,
   binder-matched blue/gold slab album with 15 spreads and 9 slabs per page.
   ====================================================================== */
.repo-rcg-binder-dialog{
  width:min(99vw,1740px)!important;
  max-width:none!important;
  height:min(97vh,1040px)!important;
  max-height:none!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#f8dda0;
  overflow:visible!important;
  opacity:0;
  transform:scale(.985);
  transition:opacity .13s ease,transform .15s ease;
}
.repo-rcg-binder-dialog.binder-visible{opacity:1;transform:scale(1.04)}
.repo-rcg-binder-dialog::backdrop{background:rgba(2,5,10,.88)!important;backdrop-filter:blur(3px)}
.repo-rcg-binder-shell{
  height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;position:relative;
  padding:10px 12px 9px;border:3px solid #bd8731;outline:2px solid #101a28;outline-offset:-8px;
  background:radial-gradient(circle at 50% 25%,rgba(30,58,91,.92),rgba(4,9,16,.985) 72%);
  box-shadow:0 20px 70px #000,inset 0 0 0 1px #f0c45c,inset 0 0 70px rgba(29,64,110,.28)
}
.repo-rcg-binder-header{display:flex;justify-content:center;align-items:center;gap:12px;padding:5px 54px 7px;text-align:center;font-family:Georgia,serif;text-shadow:2px 2px #000}
.repo-rcg-binder-header strong{font-size:clamp(17px,2vw,28px);letter-spacing:.08em;color:#f5d681}
.repo-rcg-binder-header small{font-size:10px;letter-spacing:.19em;color:#8fb9ee}
.repo-rcg-binder-close{position:absolute;right:17px;top:15px;z-index:5;width:38px;height:38px;border:2px solid #bd8731;background:#2d1d0d;color:#ffe39a;font:900 23px/1 Georgia,serif;cursor:pointer;box-shadow:inset 0 0 10px #000}
.repo-rcg-binder-close:hover{filter:brightness(1.25)}
.repo-rcg-binder-stage{position:relative;min-height:0;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;border-top:1px solid rgba(225,181,87,.38);border-bottom:1px solid rgba(225,181,87,.38);background:radial-gradient(ellipse at center,rgba(26,50,77,.55),rgba(0,0,0,.48) 70%)}
.repo-rcg-binder-stage::before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(135deg,transparent 0 32px,rgba(255,255,255,.012) 33px 34px)}

.repo-rcg-book{
  position:relative;z-index:2;width:min(95vw,1510px);aspect-ratio:1.56/1;max-height:calc(100% - 18px);
  display:grid;grid-template-columns:1fr 54px 1fr;gap:0;filter:drop-shadow(0 15px 18px rgba(0,0,0,.84));
  overflow:hidden;border:1px solid #e0b246;outline:2px solid #101a28;outline-offset:-7px;
  background:linear-gradient(90deg,#171d25 0 48.85%,#080a0d 49.35% 50.65%,#171d25 51.15% 100%);
  box-shadow:0 18px 44px #000,inset 0 0 0 2px #f3d883,inset 0 0 0 5px rgba(188,213,230,.16),inset 0 0 68px rgba(61,120,187,.14),0 0 26px rgba(88,154,236,.12);
}
.repo-rcg-book::before{content:'';position:absolute;inset:-10%;z-index:1;pointer-events:none;background:radial-gradient(circle at var(--repo-ambient-x,50%) var(--repo-ambient-y,34%),rgba(105,187,255,.17),transparent 25%),radial-gradient(circle at 18% 82%,rgba(104,130,255,.08),transparent 32%),radial-gradient(circle at 82% 18%,rgba(244,211,121,.06),transparent 28%);filter:blur(2px);animation:repoBinderAmbientBreath 8s ease-in-out infinite}
.repo-rcg-book::after{content:'';position:absolute;inset:-65% -35%;z-index:6;pointer-events:none;background:linear-gradient(112deg,transparent 42%,rgba(169,220,255,.045) 47%,rgba(255,239,181,.10) 50%,rgba(169,220,255,.04) 53%,transparent 58%);transform:translateX(-34%) rotate(1deg);animation:repoBinderAmbientSweep 13s ease-in-out infinite}
.repo-rcg-page{
  position:relative;z-index:2;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;box-sizing:border-box;padding:1%;
  border:1px solid rgba(220,233,242,.28);
  background:linear-gradient(145deg,rgba(103,150,205,.07),rgba(205,226,240,.03) 44%,rgba(7,12,18,.16));
  box-shadow:inset 0 0 22px rgba(126,170,225,.08)
}
.repo-rcg-page.left{border-right:0}
.repo-rcg-page.right{border-left:0}
.repo-rcg-page-head{
  display:flex;justify-content:space-between;align-items:center;gap:10px;padding:3px 8px 0;min-height:22px;
  color:#f5d681;text-shadow:1px 1px #000;font-family:Georgia,serif;font-weight:700;letter-spacing:.14em;font-size:10px
}
.repo-rcg-page-head small{font-size:9px;letter-spacing:.12em;color:#9fcdf5}
.repo-rcg-page-head .repo-rcg-page-no{font-size:11px;color:#ffe7aa}
.repo-rcg-spine{
  position:relative;z-index:4;border-left:1px solid #ad7e2f;border-right:1px solid #ad7e2f;
  background:linear-gradient(90deg,#040608,#10161d 18%,#2a3139 50%,#10161d 82%,#040608);
  box-shadow:0 0 24px #000,inset 0 0 0 3px rgba(185,139,53,.22)
}
.repo-rcg-spine::before,.repo-rcg-spine::after,.repo-rcg-spine i{content:'';position:absolute;left:8px;right:8px;height:8px;border:1px solid #9e742f;border-radius:8px;background:linear-gradient(#d0a34e,#5e3c13);box-shadow:0 2px 5px #000}
.repo-rcg-spine::before{top:24%}.repo-rcg-spine i{top:49%}.repo-rcg-spine::after{bottom:24%}
.repo-rcg-grid{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:10px;position:relative}
.repo-rcg-slot{
  position:relative;border:1px solid #d9bd66;background:linear-gradient(145deg,#23303d,#101821 62%,#0a1016);
  box-shadow:inset 0 0 0 2px #0c1218,0 0 0 1px rgba(240,212,124,.75),inset 0 0 18px rgba(208,226,238,.05),0 0 9px rgba(90,141,212,.08);
  border-radius:7px;overflow:hidden;transition:box-shadow .24s ease,transform .24s ease,filter .24s ease
}
.repo-rcg-slot::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.025),transparent 35%,transparent 75%,rgba(255,255,255,.02))}
.repo-rcg-slot:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:inset 0 0 0 2px #06101a,0 0 0 1px #e0b246,0 0 18px rgba(92,174,255,.14)}
.repo-rcg-slot-inner{position:absolute;inset:4px;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:4px}
.repo-rcg-slab-wrap{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;padding:1px}
.repo-rcg-slab-wrap img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(0,0,0,.58)) drop-shadow(0 0 3px rgba(217,189,102,.10));user-select:none;-webkit-user-drag:none}
.repo-rcg-slot-label{display:flex;align-items:center;justify-content:center;min-height:18px;padding:0 4px;border-top:1px solid rgba(217,189,102,.24);color:#f5d681;text-shadow:1px 1px #000;font:700 8px/1 Georgia,serif;letter-spacing:.16em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.repo-rcg-empty-note{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;padding:2px 8px;border:1px solid rgba(217,189,102,.30);background:rgba(7,14,21,.76);color:#9fcdf5;font:700 7px/1 Georgia,serif;letter-spacing:.18em;text-shadow:1px 1px #000;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.36)}
.repo-rcg-book[aria-busy='true']{opacity:.18;transform:perspective(1100px) rotateY(-3deg) scale(.992);transition:opacity .16s ease,transform .22s ease}

.repo-rcg-binder-nav{display:grid;grid-template-columns:170px 1fr 190px;align-items:center;gap:9px;padding-top:8px}
.repo-rcg-shelf-btn,
.repo-rcg-nav-buttons button{
  appearance:none;border:2px solid #bd8731;background:linear-gradient(180deg,#2b4666,#0f1a28 62%,#09111a);color:#ffe39a;
  font:900 11px/1 Georgia,serif;letter-spacing:.11em;padding:10px 12px;cursor:pointer;text-shadow:1px 1px #000;
  box-shadow:inset 0 0 0 1px rgba(150,205,255,.10),0 8px 18px rgba(0,0,0,.28);transition:filter .18s ease,transform .18s ease
}
.repo-rcg-shelf-btn:hover,.repo-rcg-nav-buttons button:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px)}
.repo-rcg-nav-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.repo-rcg-nav-buttons button:disabled{opacity:.28;cursor:default;transform:none;filter:none}
.repo-rcg-binder-status{text-align:center;display:flex;flex-direction:column;gap:2px;min-width:0}
.repo-rcg-binder-status b{font-family:Georgia,serif;font-size:14px;letter-spacing:.12em;color:#f6d87e}
.repo-rcg-binder-status small{font-size:10px;color:#9bb1ce;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:700px){
  .repo-rcg-binder-dialog{width:99vw;height:min(94vh,800px)}
  .repo-rcg-binder-dialog.binder-visible{transform:scale(1)}
  .repo-rcg-binder-shell{padding:8px}
  .repo-rcg-binder-header{padding:4px 42px 5px}.repo-rcg-binder-header small{display:none}
  .repo-rcg-binder-close{right:10px;top:10px;width:34px;height:34px}
  .repo-rcg-binder-nav{grid-template-columns:116px 1fr 144px;gap:5px}
  .repo-rcg-shelf-btn,.repo-rcg-nav-buttons button{font-size:9px;padding:8px 6px}
  .repo-rcg-binder-status small{font-size:8px}
  .repo-rcg-book{width:calc(100% - 6px);grid-template-columns:1fr 38px 1fr}
  .repo-rcg-grid{gap:6px}
  .repo-rcg-slot-label{font-size:6.5px}
}
@media(prefers-reduced-motion:reduce){.repo-rcg-book::before,.repo-rcg-book::after{animation:none!important}}


/* ======================================================================
   REPO COMPANY V20.44 — RCG THEME + INVISIBLE EDGE NAV FIX
   Removes the brown/tacky slab-binder theming and makes navigation happen
   by clicking the left/right sides of the binder. Bottom prev/next buttons
   remain in the DOM but are visually hidden.
   ====================================================================== */
.repo-rcg-binder-shell{
  background:
    radial-gradient(circle at 50% 16%,rgba(40,78,121,.28),transparent 28%),
    radial-gradient(circle at 50% 25%,rgba(22,43,69,.96),rgba(4,9,16,.99) 72%)!important;
  box-shadow:0 20px 70px #000,inset 0 0 0 1px #f0c45c,inset 0 0 70px rgba(29,64,110,.24)!important;
}
.repo-rcg-binder-header{
  position:relative;
  min-height:48px;
  background:
    linear-gradient(180deg,rgba(18,31,46,.86),rgba(8,16,27,.92)),
    linear-gradient(90deg,rgba(84,143,216,.10),rgba(0,0,0,0) 28%,rgba(84,143,216,.10));
  border:1px solid rgba(224,178,70,.48);
  box-shadow:inset 0 0 0 1px rgba(133,191,246,.10),inset 0 -1px 0 rgba(224,178,70,.22);
  margin-bottom:8px;
}
.repo-rcg-binder-header::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,transparent 0 4%,rgba(255,255,255,.025) 4% 8%,transparent 8% 12%,rgba(255,255,255,.02) 12% 16%,transparent 16% 100%);
  opacity:.9;
}
.repo-rcg-binder-header strong{color:#f5d681!important;text-shadow:0 2px 4px rgba(0,0,0,.85)!important}
.repo-rcg-binder-header small{color:#9fcdf5!important}
.repo-rcg-binder-close{
  background:linear-gradient(180deg,#23415f,#0d1826 62%,#08111a)!important;
  border-color:#bd8731!important;
  box-shadow:inset 0 0 0 1px rgba(150,205,255,.12),0 8px 18px rgba(0,0,0,.28)!important;
}
.repo-rcg-binder-close:hover{filter:brightness(1.12)!important}
.repo-rcg-binder-stage{
  border-top:1px solid rgba(225,181,87,.30)!important;
  border-bottom:1px solid rgba(225,181,87,.30)!important;
  background:radial-gradient(ellipse at center,rgba(21,41,63,.50),rgba(0,0,0,.48) 70%)!important;
}
.repo-rcg-book{
  background:linear-gradient(90deg,#171d25 0 48.85%,#080a0d 49.35% 50.65%,#171d25 51.15% 100%)!important;
}
.repo-rcg-page{
  background:linear-gradient(145deg,rgba(56,95,137,.09),rgba(205,226,240,.03) 44%,rgba(7,12,18,.16))!important;
}
.repo-rcg-slot{
  background:linear-gradient(145deg,#213140,#0f1924 62%,#091018)!important;
  box-shadow:inset 0 0 0 2px #0c1218,0 0 0 1px rgba(240,212,124,.72),inset 0 0 18px rgba(208,226,238,.06),0 0 9px rgba(90,141,212,.08)!important;
}
.repo-rcg-binder-nav{
  grid-template-columns:170px 1fr 0!important;
  gap:12px!important;
  align-items:center!important;
  padding-top:8px!important;
  background:
    linear-gradient(180deg,rgba(12,21,32,.92),rgba(7,13,21,.96)),
    linear-gradient(90deg,rgba(84,143,216,.08),transparent 24%,rgba(84,143,216,.08));
  border:1px solid rgba(224,178,70,.42);
  box-shadow:inset 0 0 0 1px rgba(133,191,246,.08);
}
.repo-rcg-shelf-btn{
  background:linear-gradient(180deg,#23415f,#0d1826 62%,#08111a)!important;
  border-color:#bd8731!important;
  box-shadow:inset 0 0 0 1px rgba(150,205,255,.10),0 8px 18px rgba(0,0,0,.28)!important;
}
.repo-rcg-shelf-btn:hover{filter:brightness(1.12)!important}
.repo-rcg-binder-status b{color:#f6d87e!important}
.repo-rcg-binder-status small{color:#9bb1ce!important}
.repo-rcg-nav-buttons{
  position:absolute!important;
  width:1px!important;height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;
  white-space:nowrap!important;
  opacity:0!important;pointer-events:none!important;
}
.repo-rcg-hit-zone{
  position:absolute;top:0;bottom:0;z-index:9;width:12%;min-width:54px;
  border:0;background:transparent;padding:0;margin:0;cursor:pointer;
  opacity:0;appearance:none;-webkit-appearance:none;
}
.repo-rcg-hit-zone.left{left:0}
.repo-rcg-hit-zone.right{right:0}
.repo-rcg-hit-zone:disabled{cursor:default}
.repo-rcg-hit-zone:focus-visible{opacity:.08;outline:1px solid rgba(224,178,70,.6);outline-offset:-8px}
@media(max-width:700px){
  .repo-rcg-binder-nav{grid-template-columns:116px 1fr 0!important;gap:8px!important}
}


/* ======================================================================
   REPO COMPANY V20.45 — FINAL RCG THEME POLISH + PAGE 1 SHELF RETURN
   Removes all remaining brown strip styling and makes going left from the
   first spread return to the binder shelf/front page.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-shell,
#repoRcgBinderDialog .repo-rcg-binder-header,
#repoRcgBinderDialog .repo-rcg-binder-nav,
#repoRcgBinderDialog .repo-rcg-shelf-btn,
#repoRcgBinderDialog .repo-rcg-binder-close{
  background-image:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-shell{
  background:
    radial-gradient(circle at 50% 0%,rgba(67,126,191,.18),transparent 22%),
    linear-gradient(180deg,rgba(14,25,39,.98),rgba(6,12,19,.99) 100%)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  background:
    linear-gradient(180deg,rgba(20,36,54,.96),rgba(8,15,24,.98))!important;
  border:1px solid rgba(224,178,70,.48)!important;
  box-shadow:
    inset 0 0 0 1px rgba(140,194,244,.10),
    inset 0 -1px 0 rgba(224,178,70,.20),
    0 2px 10px rgba(0,0,0,.24)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header::before{
  background:
    linear-gradient(90deg,transparent 0 6%,rgba(255,255,255,.024) 6% 12%,transparent 12% 18%,rgba(122,181,244,.02) 18% 24%,transparent 24% 100%)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header strong,
#repoRcgBinderDialog .repo-rcg-binder-status b{
  color:#f5d681!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header small,
#repoRcgBinderDialog .repo-rcg-binder-status small{
  color:#9fcdf5!important;
}
#repoRcgBinderDialog .repo-rcg-binder-close,
#repoRcgBinderDialog .repo-rcg-shelf-btn{
  background:
    linear-gradient(180deg,#203953,#0e1a28 62%,#09111a)!important;
  border:2px solid #bd8731!important;
  box-shadow:
    inset 0 0 0 1px rgba(150,205,255,.12),
    0 8px 18px rgba(0,0,0,.28)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-close:hover,
#repoRcgBinderDialog .repo-rcg-shelf-btn:hover{
  filter:brightness(1.12)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  background:
    linear-gradient(180deg,rgba(11,20,31,.98),rgba(6,11,18,.98))!important;
  border:1px solid rgba(224,178,70,.42)!important;
  box-shadow:
    inset 0 0 0 1px rgba(133,191,246,.08),
    inset 0 1px 0 rgba(255,255,255,.03)!important;
}
#repoRcgBinderDialog .repo-rcg-page-head{
  color:#f5d681!important;
}
#repoRcgBinderDialog .repo-rcg-page-head small,
#repoRcgBinderDialog .repo-rcg-page-head .repo-rcg-page-no{
  color:#9fcdf5!important;
}
#repoRcgBinderDialog .repo-rcg-shelf-btn{
  min-width:138px!important;
}


/* ======================================================================
   REPO COMPANY V20.46 — PREMIUM RCG BINDER + HIDDEN/CUSTOMIZE UI
   Gives the slab binder a more premium display feel and adds top-right
   Hidden Slabs and Customize Binder controls.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-shell{
  --rcg-accent:#d9b25f;
  --rcg-accent-2:#8cc0f1;
  --rcg-panel-bg:rgba(8,14,22,.96);
  --rcg-shell-top:rgba(16,28,43,.98);
  --rcg-shell-bottom:rgba(5,10,17,.99);
  --rcg-book-left:#171f28;
  --rcg-book-mid:#070b10;
  --rcg-slot-top:#223244;
  --rcg-slot-bottom:#0b141d;
  --rcg-action-top:#223a57;
  --rcg-action-bottom:#0d1825;
  background:
    radial-gradient(circle at 50% -4%,rgba(129,198,255,.16),transparent 22%),
    radial-gradient(circle at 50% 100%,rgba(36,57,85,.18),transparent 24%),
    linear-gradient(180deg,var(--rcg-shell-top),var(--rcg-shell-bottom) 100%)!important;
  box-shadow:
    0 30px 85px rgba(0,0,0,.82),
    inset 0 0 0 1px rgba(241,196,88,.92),
    inset 0 0 0 4px rgba(12,19,29,.92),
    inset 0 0 0 5px rgba(150,205,255,.08),
    inset 0 0 88px rgba(72,124,179,.14)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-shell[data-rcg-theme='obsidian']{
  --rcg-accent:#cab57d;--rcg-accent-2:#93a6b8;--rcg-shell-top:rgba(20,21,24,.985);--rcg-shell-bottom:rgba(8,9,11,.995);--rcg-book-left:#17191d;--rcg-book-mid:#07080a;--rcg-slot-top:#262a31;--rcg-slot-bottom:#11141a;--rcg-action-top:#303744;--rcg-action-bottom:#121720;
}
#repoRcgBinderDialog .repo-rcg-binder-shell[data-rcg-theme='royal']{
  --rcg-accent:#e3c372;--rcg-accent-2:#b998ff;--rcg-shell-top:rgba(26,20,38,.985);--rcg-shell-bottom:rgba(8,9,16,.995);--rcg-book-left:#221c2f;--rcg-book-mid:#0a0910;--rcg-slot-top:#312749;--rcg-slot-bottom:#14141f;--rcg-action-top:#433162;--rcg-action-bottom:#171426;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  position:relative;
  justify-content:space-between!important;
  gap:16px!important;
  padding:12px 78px 12px 18px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)),
    linear-gradient(180deg,rgba(11,18,28,.88),rgba(9,15,24,.98))!important;
  border:1px solid color-mix(in srgb,var(--rcg-accent) 60%, transparent)!important;
  box-shadow:inset 0 0 0 1px rgba(150,205,255,.08), inset 0 -1px 0 rgba(0,0,0,.75), 0 8px 18px rgba(0,0,0,.25)!important;
}
#repoRcgBinderDialog .repo-rcg-header-copy{display:flex;flex-direction:column;gap:3px;text-align:left;min-width:0}
#repoRcgBinderDialog .repo-rcg-binder-header strong{font-size:clamp(20px,2.1vw,31px)!important;letter-spacing:.09em!important;color:var(--rcg-accent)!important}
#repoRcgBinderDialog .repo-rcg-binder-header small{font-size:10px!important;letter-spacing:.2em!important;color:color-mix(in srgb,var(--rcg-accent-2) 82%, white)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#repoRcgBinderDialog .repo-rcg-header-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;min-width:max-content;padding-right:10px}
#repoRcgBinderDialog .repo-rcg-header-btn,
#repoRcgBinderDialog .repo-rcg-shelf-btn,
#repoRcgBinderDialog .repo-rcg-binder-close{
  appearance:none;
  border:1px solid color-mix(in srgb,var(--rcg-accent) 68%, transparent)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0)),
    linear-gradient(180deg,var(--rcg-action-top),var(--rcg-action-bottom))!important;
  color:#f6deb0!important;
  box-shadow:inset 0 0 0 1px rgba(150,205,255,.10), 0 8px 18px rgba(0,0,0,.28)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.9);
}
#repoRcgBinderDialog .repo-rcg-header-btn{
  padding:9px 12px;
  font:800 10px/1 Georgia,serif;
  letter-spacing:.14em;
  cursor:pointer;
  transition:filter .16s ease,transform .16s ease, box-shadow .16s ease;
}
#repoRcgBinderDialog .repo-rcg-header-btn:hover,
#repoRcgBinderDialog .repo-rcg-header-btn.is-active,
#repoRcgBinderDialog .repo-rcg-shelf-btn:hover,
#repoRcgBinderDialog .repo-rcg-binder-close:hover{filter:brightness(1.12)!important;transform:translateY(-1px);box-shadow:inset 0 0 0 1px rgba(150,205,255,.16),0 10px 22px rgba(0,0,0,.34),0 0 16px rgba(100,170,255,.08)!important}
#repoRcgBinderDialog .repo-rcg-binder-close{top:18px!important;right:18px!important;width:36px!important;height:36px!important;font-size:21px!important;padding:0!important;display:grid;place-items:center}
#repoRcgBinderDialog .repo-rcg-binder-stage{position:relative;overflow:hidden!important}
#repoRcgBinderDialog .repo-rcg-book{
  background:linear-gradient(90deg,var(--rcg-book-left) 0 48.85%,var(--rcg-book-mid) 49.35% 50.65%,var(--rcg-book-left) 51.15% 100%)!important;
  box-shadow:0 18px 44px #000,inset 0 0 0 2px color-mix(in srgb,var(--rcg-accent) 88%, white),inset 0 0 0 5px rgba(188,213,230,.12),inset 0 0 68px rgba(61,120,187,.10),0 0 26px rgba(88,154,236,.10)!important;
}
#repoRcgBinderDialog .repo-rcg-page{
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.03),transparent 20%),
    linear-gradient(145deg,color-mix(in srgb,var(--rcg-slot-top) 38%, transparent),rgba(205,226,240,.03) 44%,rgba(7,12,18,.18))!important;
}
#repoRcgBinderDialog .repo-rcg-page-head{padding:5px 10px 2px!important;border-bottom:1px solid rgba(255,255,255,.04)}
#repoRcgBinderDialog .repo-rcg-page-head span{color:var(--rcg-accent)!important;font-size:10px!important;letter-spacing:.18em!important}
#repoRcgBinderDialog .repo-rcg-page-head small,#repoRcgBinderDialog .repo-rcg-page-head .repo-rcg-page-no{color:color-mix(in srgb,var(--rcg-accent-2) 86%, white)!important;font-size:9px!important}
#repoRcgBinderDialog .repo-rcg-slot{
  background:linear-gradient(145deg,var(--rcg-slot-top),var(--rcg-slot-bottom) 68%,rgba(8,12,18,.98))!important;
  border-color:color-mix(in srgb,var(--rcg-accent) 76%, transparent)!important;
  box-shadow:inset 0 0 0 2px #0c1218,0 0 0 1px color-mix(in srgb,var(--rcg-accent) 68%, transparent),inset 0 0 18px rgba(208,226,238,.05),0 0 9px rgba(90,141,212,.08)!important;
  border-radius:10px!important;
}
#repoRcgBinderDialog .repo-rcg-slot-label{color:var(--rcg-accent)!important;opacity:.95}
#repoRcgBinderDialog .repo-rcg-empty-note{border-color:color-mix(in srgb,var(--rcg-accent) 42%, transparent)!important;color:color-mix(in srgb,var(--rcg-accent-2) 86%, white)!important;background:rgba(7,14,21,.82)!important}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  grid-template-columns:170px 1fr 0!important;
  gap:14px!important;
  margin-top:10px;
  padding:12px 14px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0)),
    linear-gradient(180deg,rgba(10,17,26,.98),rgba(6,11,18,.98))!important;
  border:1px solid color-mix(in srgb,var(--rcg-accent) 52%, transparent)!important;
  box-shadow:inset 0 0 0 1px rgba(133,191,246,.06), inset 0 1px 0 rgba(255,255,255,.03)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status{text-align:center!important}
#repoRcgBinderDialog .repo-rcg-binder-status b{color:var(--rcg-accent)!important;font-size:16px!important;letter-spacing:.12em!important}
#repoRcgBinderDialog .repo-rcg-binder-status small{color:color-mix(in srgb,var(--rcg-accent-2) 82%, white)!important;font-size:10px!important}
#repoRcgBinderDialog .repo-rcg-nav-buttons{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;opacity:0!important;pointer-events:none!important}
#repoRcgBinderDialog .repo-rcg-side-panel{
  position:absolute;top:16px;right:18px;z-index:14;width:min(390px,calc(100% - 36px));max-height:calc(100% - 32px);
  display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(-8px) scale(.985);pointer-events:none;
  border:1px solid color-mix(in srgb,var(--rcg-accent) 56%, transparent);
  background:
    linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)),
    linear-gradient(180deg,var(--rcg-panel-bg),rgba(6,12,19,.985));
  box-shadow:0 22px 50px rgba(0,0,0,.68), inset 0 0 0 1px rgba(150,205,255,.06);
  transition:opacity .18s ease, transform .18s ease;
}
#repoRcgBinderDialog .repo-rcg-side-panel.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
#repoRcgBinderDialog .repo-rcg-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,rgba(20,36,54,.94),rgba(10,16,24,.98))}
#repoRcgBinderDialog .repo-rcg-panel-head b{font:800 14px/1 Georgia,serif;letter-spacing:.14em;color:var(--rcg-accent)}
#repoRcgBinderDialog .repo-rcg-panel-close{appearance:none;border:1px solid color-mix(in srgb,var(--rcg-accent) 65%, transparent);background:linear-gradient(180deg,var(--rcg-action-top),var(--rcg-action-bottom));color:#f6deb0;font:900 18px/1 Georgia,serif;width:32px;height:32px;display:grid;place-items:center;cursor:pointer}
#repoRcgBinderDialog .repo-rcg-panel-body{padding:14px;display:flex;flex-direction:column;gap:14px;overflow:auto}
#repoRcgBinderDialog .repo-rcg-panel-copy{margin:0;color:#b6cae0;font:400 13px/1.5 Georgia,serif}
#repoRcgBinderDialog .repo-rcg-empty-vault{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-height:180px;border:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.02);padding:18px}
#repoRcgBinderDialog .repo-rcg-vault-icon{font-size:22px;color:var(--rcg-accent)}
#repoRcgBinderDialog .repo-rcg-empty-vault strong{color:var(--rcg-accent);font:800 15px/1.2 Georgia,serif;letter-spacing:.12em}
#repoRcgBinderDialog .repo-rcg-empty-vault small{color:#9fb3c8;font:400 12px/1.4 Georgia,serif;max-width:260px}
#repoRcgBinderDialog .repo-rcg-theme-grid{display:grid;grid-template-columns:1fr;gap:10px}
#repoRcgBinderDialog .repo-rcg-theme-chip{appearance:none;display:grid;grid-template-columns:20px 1fr;grid-template-areas:'swatch title' 'swatch desc';column-gap:12px;row-gap:4px;align-items:center;text-align:left;padding:12px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}
#repoRcgBinderDialog .repo-rcg-theme-chip:hover,#repoRcgBinderDialog .repo-rcg-theme-chip.is-active{transform:translateY(-1px);border-color:color-mix(in srgb,var(--rcg-accent) 58%, transparent);background:rgba(255,255,255,.04)}
#repoRcgBinderDialog .repo-rcg-theme-chip span{grid-area:swatch;align-self:stretch;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#284666,#101a28)}
#repoRcgBinderDialog .repo-rcg-theme-chip[data-rcg-theme='obsidian'] span{background:linear-gradient(180deg,#3b414c,#121820)}
#repoRcgBinderDialog .repo-rcg-theme-chip[data-rcg-theme='royal'] span{background:linear-gradient(180deg,#513f78,#191629)}
#repoRcgBinderDialog .repo-rcg-theme-chip b{grid-area:title;color:var(--rcg-accent);font:800 12px/1.1 Georgia,serif;letter-spacing:.12em}
#repoRcgBinderDialog .repo-rcg-theme-chip small{grid-area:desc;color:#9fb4cb;font:400 11px/1.35 Georgia,serif}
@media(max-width:900px){
  #repoRcgBinderDialog .repo-rcg-binder-header{padding-right:54px!important;align-items:flex-start!important}
  #repoRcgBinderDialog .repo-rcg-header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;padding-right:0}
}
@media(max-width:700px){
  #repoRcgBinderDialog .repo-rcg-binder-header{padding:10px 48px 10px 12px!important}
  #repoRcgBinderDialog .repo-rcg-header-btn{padding:8px 10px;font-size:8px}
  #repoRcgBinderDialog .repo-rcg-side-panel{top:10px;right:10px;width:calc(100% - 20px)}
}


/* ======================================================================
   REPO COMPANY V20.48 — STANDALONE PREMIUM BINDER LAYOUT
   Makes the RCG slab binder feel like a binder on its own, not a binder
   within a framed box, and moves Hidden Slabs / Customize Binder into a
   dedicated right-side control rail.
   ====================================================================== */
#repoRcgBinderDialog{
  width:min(98vw,1820px)!important;
  height:min(96vh,1100px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-shell{
  position:relative;
  height:100%;
  padding:10px 14px 14px!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  height:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 318px;
  align-items:center;
  gap:24px;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  min-width:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  align-self:stretch;
  justify-items:center;
  gap:8px;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,1508px);
  justify-content:flex-start!important;
  padding:0 0 2px 8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header::before{display:none!important}
#repoRcgBinderDialog .repo-rcg-header-copy{gap:2px}
#repoRcgBinderDialog .repo-rcg-binder-header strong{
  font-size:clamp(28px,2.5vw,40px)!important;
  letter-spacing:.08em!important;
  text-shadow:0 2px 8px rgba(0,0,0,.85)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header small{
  font-size:11px!important;
  letter-spacing:.22em!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  width:100%;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
  min-height:0;
}
#repoRcgBinderDialog .repo-rcg-binder-stage::before{display:none!important}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100%,1510px);
  max-height:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(100%,1508px);
  grid-template-columns:186px 1fr 0!important;
  gap:16px!important;
  margin-top:4px;
  padding:4px 10px 0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog .repo-rcg-shelf-btn{
  min-height:42px;
}
#repoRcgBinderDialog .repo-rcg-binder-status{
  padding-bottom:4px;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{
  font-size:20px!important;
  letter-spacing:.11em!important;
  text-shadow:0 2px 6px rgba(0,0,0,.86);
}
#repoRcgBinderDialog .repo-rcg-binder-status small{
  font-size:11px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-close{
  top:12px!important;
  right:12px!important;
  z-index:20;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  align-self:center;
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
  max-width:318px;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
#repoRcgBinderDialog .repo-rcg-header-btn{
  width:100%;
  padding:12px 14px;
  justify-self:stretch;
}
#repoRcgBinderDialog .repo-rcg-sidebar-panels{
  display:grid;
  gap:12px;
}
#repoRcgBinderDialog .repo-rcg-side-panel{
  position:relative!important;
  top:auto!important;
  right:auto!important;
  width:100%!important;
  max-height:none!important;
  display:none;
  opacity:1!important;
  transform:none!important;
  pointer-events:auto!important;
  overflow:hidden;
}
#repoRcgBinderDialog .repo-rcg-side-panel.is-open{
  display:flex;
}
#repoRcgBinderDialog .repo-rcg-panel-body{
  max-height:min(58vh,560px);
}
@media(max-width:1300px){
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:minmax(0,1fr);
    justify-items:center;
    gap:16px;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(100%,1508px);
    max-width:none;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  #repoRcgBinderDialog .repo-rcg-panel-body{max-height:none}
}
@media(max-width:860px){
  #repoRcgBinderDialog{height:min(98vh,1300px)!important}
  #repoRcgBinderDialog .repo-rcg-binder-header strong{font-size:clamp(21px,6vw,32px)!important}
  #repoRcgBinderDialog .repo-rcg-binder-nav{grid-template-columns:1fr!important;justify-items:center;text-align:center;padding-top:8px!important}
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{grid-template-columns:1fr}
}


/* ======================================================================
   REPO COMPANY V20.49 — RCG OPEN BINDER ART REPLACEMENT
   Replaces the slab binder visual with the supplied open-binder artwork and
   re-aligns slab positions so the official RCG slabs sit cleanly in the new
   9-up archive layout.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100%,1180px)!important;
  aspect-ratio:1365 / 1024 !important;
  grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr)!important;
  border:0!important;
  outline:0!important;
  overflow:visible!important;
  background:url('assets/rcg/rcg-slab-binder-open.png') center / 100% 100% no-repeat !important;
  box-shadow:0 20px 50px rgba(0,0,0,.62), 0 0 30px rgba(72,130,205,.08)!important;
  filter:drop-shadow(0 18px 22px rgba(0,0,0,.65));
}
#repoRcgBinderDialog .repo-rcg-book::before,
#repoRcgBinderDialog .repo-rcg-book::after,
#repoRcgBinderDialog .repo-rcg-spine{display:none!important}
#repoRcgBinderDialog .repo-rcg-page{
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:56px 34px 52px!important;
  gap:0!important;
}
#repoRcgBinderDialog .repo-rcg-page-head{display:none!important}
#repoRcgBinderDialog .repo-rcg-grid{
  gap:16px!important;
}
#repoRcgBinderDialog .repo-rcg-slot{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-slot::before{display:none!important}
#repoRcgBinderDialog .repo-rcg-slot:hover{
  transform:none!important;
  filter:none!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog .repo-rcg-slot-inner{
  inset:0!important;
  display:block!important;
}
#repoRcgBinderDialog .repo-rcg-slab-wrap{
  position:absolute!important;
  inset:0!important;
  padding:0!important;
}
#repoRcgBinderDialog .repo-rcg-slab-wrap img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 5px 9px rgba(0,0,0,.28))!important;
}
#repoRcgBinderDialog .repo-rcg-empty-note,
#repoRcgBinderDialog .repo-rcg-slot-label{display:none!important}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  align-items:flex-start!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(100%,1180px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,1180px)!important;
}
@media(max-width:1180px){
  #repoRcgBinderDialog .repo-rcg-book{
    width:min(100%,1020px)!important;
    grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)!important;
  }
  #repoRcgBinderDialog .repo-rcg-page{padding:48px 28px 44px!important}
  #repoRcgBinderDialog .repo-rcg-grid{gap:12px!important}
}
@media(max-width:860px){
  #repoRcgBinderDialog .repo-rcg-book{
    width:min(100%,760px)!important;
    grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr)!important;
  }
  #repoRcgBinderDialog .repo-rcg-page{padding:36px 18px 32px!important}
  #repoRcgBinderDialog .repo-rcg-grid{gap:8px!important}
}


/* ======================================================================
   REPO COMPANY V20.50 — RCG CENTERED / LARGER BINDER TUNING
   Centers the open slab binder properly within the dialog and scales it up.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  grid-template-columns:auto 240px!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:28px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  width:fit-content!important;
  justify-self:center!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  display:flex!important;
  justify-content:center!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100%,1260px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav,
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,1260px)!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  width:240px!important;
  max-width:240px!important;
}
@media(max-width:1480px){
  #repoRcgBinderDialog .repo-rcg-book{
    width:min(100%,1180px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav,
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(100%,1180px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:auto 220px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:220px!important;
    max-width:220px!important;
  }
}
@media(max-width:1300px){
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:center!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-main{
    width:100%!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(100%,1260px)!important;
    max-width:none!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.51 — RCG COVER / HEADER / SCALE FIX
   Restores a large premium binder presentation, replaces the slab archive
   shelf cover art, and swaps the header text for the supplied image banner.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  grid-template-columns:minmax(0,1fr) 232px!important;
  justify-content:center!important;
  align-items:center!important;
  gap:26px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  width:auto!important;
  min-width:0!important;
  justify-self:center!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  width:auto!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(76vw,1365px)!important;
  max-width:1365px!important;
  min-width:1040px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header,
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(76vw,1365px)!important;
  max-width:1365px!important;
  min-width:1040px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  padding:0 0 8px!important;
  justify-content:center!important;
  align-items:center!important;
}
#repoRcgBinderDialog .repo-rcg-header-copy{display:none!important}
#repoRcgBinderDialog .repo-rcg-header-brand{
  display:block!important;
  width:min(100%,920px)!important;
  height:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.5));
  user-select:none;
  pointer-events:none;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  width:232px!important;
  max-width:232px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  grid-template-columns:170px 1fr 0!important;
}
@media(max-width:1580px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-header,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(78vw,1280px)!important;
    min-width:980px!important;
  }
}
@media(max-width:1300px){
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:center!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(78vw,1280px)!important;
    max-width:none!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-header,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(88vw,1120px)!important;
    min-width:0!important;
  }
}
@media(max-width:860px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-header,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(94vw,760px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{width:min(100%,680px)!important}
}


/* ======================================================================
   REPO COMPANY V20.52 — RCG HEADER SCALE / CENTER FIX
   Reduces the header banner by ~30%, places it neatly above the binder,
   recenters the binder visually, and prevents the spread from falling off
   the bottom of the viewport.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-shell{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:14px 28px 18px!important;
  min-height:min(94vh,1000px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  position:relative!important;
  display:block!important;
  width:100%!important;
  max-width:1560px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  width:fit-content!important;
  max-width:100%!important;
  margin:0 auto!important;
  justify-self:center!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,680px)!important;
  max-width:680px!important;
  min-width:0!important;
  margin:0 auto 8px!important;
  padding:0!important;
  justify-content:center!important;
  align-items:center!important;
}
#repoRcgBinderDialog .repo-rcg-header-brand{
  width:100%!important;
  max-width:680px!important;
  height:auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100vw - 420px,1080px)!important;
  max-width:1080px!important;
  min-width:900px!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(100vw - 420px,1080px)!important;
  max-width:1080px!important;
  min-width:900px!important;
  margin:6px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  position:absolute!important;
  left:calc(50% + 570px)!important;
  top:50%!important;
  transform:translateY(-28%)!important;
  width:180px!important;
  max-width:180px!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  gap:12px!important;
}
#repoRcgBinderDialog .repo-rcg-header-btn{
  min-height:40px!important;
}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 390px,1020px)!important;
    max-width:1020px!important;
    min-width:860px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 535px)!important;
  }
}
@media(max-width:1420px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 360px,960px)!important;
    max-width:960px!important;
    min-width:780px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 485px)!important;
    width:170px!important;
    max-width:170px!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:12px 18px 16px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    display:grid!important;
    justify-items:center!important;
    gap:12px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-main{
    width:100%!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(92vw,620px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(92vw,900px)!important;
    min-width:0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    width:min(92vw,900px)!important;
    max-width:none!important;
    margin:0 auto!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-header{
    margin-bottom:4px!important;
    max-width:620px!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 420px,980px)!important;
    max-width:980px!important;
    min-width:820px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 515px)!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.53 — RCG RAISE / CENTER / ENLARGE FIX
   Raises the header, lifts and enlarges the binder, and keeps the binder nav
   fully visible instead of clipping off the bottom edge.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-shell{
  padding:6px 28px 8px!important;
  min-height:min(92vh,980px)!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,640px)!important;
  max-width:640px!important;
  margin:-4px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-header-brand{
  max-width:640px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  margin:-2px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100vw - 430px,1125px)!important;
  max-width:1125px!important;
  min-width:940px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(100vw - 430px,1125px)!important;
  max-width:1125px!important;
  min-width:940px!important;
  margin:-4px auto 0!important;
  padding-top:0!important;
  grid-template-columns:130px 1fr 0!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  left:calc(50% + 585px)!important;
  top:47%!important;
  transform:translateY(-24%)!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  gap:10px!important;
}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 400px,1060px)!important;
    max-width:1060px!important;
    min-width:890px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 550px)!important;
  }
}
@media(max-width:1420px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:8px 20px 10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 360px,990px)!important;
    max-width:990px!important;
    min-width:800px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 500px)!important;
    top:46%!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:8px 16px 10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(92vw,600px)!important;
    max-width:600px!important;
    margin:0 auto 2px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    max-width:600px!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(94vw,960px)!important;
    max-width:960px!important;
    min-width:0!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:2px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(94vw,960px)!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:2px 24px 6px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(100%,590px)!important;
    max-width:590px!important;
    margin:-4px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    max-width:590px!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 410px,1010px)!important;
    max-width:1010px!important;
    min-width:840px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-8px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 525px)!important;
    top:46%!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.54 — RCG HEADER UP / BINDER UPSIZE FIX
   Lifts the archive header higher, removes the dead gap before the binder,
   recenters the slab spread, and enlarges the binder by roughly 10%.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-shell{
  padding:0 28px 10px!important;
  min-height:min(94vh,1000px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  max-width:1700px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:min(100%,640px)!important;
  max-width:640px!important;
  margin:-18px auto -18px!important;
}
#repoRcgBinderDialog .repo-rcg-header-brand{
  max-width:640px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  width:fit-content!important;
  margin:-10px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  margin-top:0!important;
  justify-content:center!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(100vw - 445px,1235px)!important;
  max-width:1235px!important;
  min-width:1015px!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(100vw - 445px,1235px)!important;
  max-width:1235px!important;
  min-width:1015px!important;
  margin:-8px auto 0!important;
  padding-top:0!important;
  grid-template-columns:130px 1fr 0!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  left:calc(50% + 645px)!important;
  top:47.5%!important;
  transform:translateY(-22%)!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{gap:10px!important}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 405px,1160px)!important;
    max-width:1160px!important;
    min-width:940px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 600px)!important;
  }
}
@media(max-width:1420px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:4px 20px 10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    margin:-8px auto -10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-main{
    margin:-4px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 360px,1060px)!important;
    max-width:1060px!important;
    min-width:850px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 535px)!important;
    top:46.5%!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:6px 16px 10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(92vw,600px)!important;
    max-width:600px!important;
    margin:0 auto -4px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{max-width:600px!important}
  #repoRcgBinderDialog .repo-rcg-binder-main{
    margin:0 auto!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(94vw,1020px)!important;
    max-width:1020px!important;
    min-width:0!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-4px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(94vw,1020px)!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:0 24px 8px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(100%,600px)!important;
    max-width:600px!important;
    margin:-18px auto -16px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{max-width:600px!important}
  #repoRcgBinderDialog .repo-rcg-binder-main{
    margin:-10px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(100vw - 430px,1110px)!important;
    max-width:1110px!important;
    min-width:900px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-10px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 575px)!important;
    top:46.5%!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.55 — RCG GAP + FOOTER FIX
   Collapses the dead space around the slab archive banner, places the binder
   directly beneath it, enlarges the binder moderately, and keeps the footer
   shelf/pages area fully inside the viewport.
   ====================================================================== */
#repoRcgBinderDialog{
  height:min(99vh,1120px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-shell{
  padding:0 22px 16px!important;
  min-height:100%!important;
  overflow:visible!important;
  justify-content:flex-start!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:20px!important;
  width:100%!important;
  max-width:1580px!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  width:fit-content!important;
  max-width:100%!important;
  margin:0 auto!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:580px!important;
  max-width:min(92vw,580px)!important;
  min-width:0!important;
  height:108px!important;
  overflow:hidden!important;
  margin:-32px auto -12px!important;
  padding:0!important;
  justify-content:center!important;
  align-items:flex-start!important;
  background:transparent!important;
}
#repoRcgBinderDialog .repo-rcg-header-brand{
  width:580px!important;
  max-width:min(92vw,580px)!important;
  height:auto!important;
  display:block!important;
  margin:0 auto!important;
  transform:translateY(-66px)!important;
  filter:drop-shadow(0 3px 8px rgba(0,0,0,.55))!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  margin:0!important;
  padding:0!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  overflow:visible!important;
  border:0!important;
  background:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage::before{display:none!important}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(calc(100vw - 430px),1160px)!important;
  max-width:1160px!important;
  min-width:960px!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(calc(100vw - 430px),1160px)!important;
  max-width:1160px!important;
  min-width:960px!important;
  margin:2px auto 0!important;
  padding:0 0 4px!important;
  grid-template-columns:130px 1fr 0!important;
  align-items:end!important;
  position:relative!important;
  z-index:2!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status{
  padding-bottom:0!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  position:absolute!important;
  left:calc(50% + 610px)!important;
  top:50%!important;
  transform:translateY(-18%)!important;
  width:176px!important;
  max-width:176px!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{gap:10px!important}
#repoRcgBinderDialog .repo-rcg-shelf-btn{margin-bottom:0!important}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 390px),1100px)!important;
    max-width:1100px!important;
    min-width:900px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 575px)!important;
  }
}
@media(max-width:1440px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:0 18px 14px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:540px!important;
    max-width:min(90vw,540px)!important;
    height:100px!important;
    margin:-24px auto -8px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    width:540px!important;
    max-width:min(90vw,540px)!important;
    transform:translateY(-62px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 350px),1020px)!important;
    max-width:1020px!important;
    min-width:820px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 525px)!important;
    top:49%!important;
    width:168px!important;
    max-width:168px!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog{height:min(99vh,1180px)!important}
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    display:grid!important;
    justify-items:center!important;
    gap:10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(88vw,520px)!important;
    max-width:min(88vw,520px)!important;
    height:94px!important;
    margin:-10px auto -4px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    width:min(88vw,520px)!important;
    max-width:min(88vw,520px)!important;
    transform:translateY(-58px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(94vw,980px)!important;
    max-width:980px!important;
    min-width:0!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:4px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    position:static!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    width:min(94vw,980px)!important;
    max-width:none!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog{height:min(99vh,1080px)!important}
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:0 20px 12px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:540px!important;
    max-width:540px!important;
    height:94px!important;
    margin:-28px auto -10px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    width:540px!important;
    max-width:540px!important;
    transform:translateY(-60px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 400px),1060px)!important;
    max-width:1060px!important;
    min-width:860px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:0 auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    left:calc(50% + 550px)!important;
    top:48.5%!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.56 — RCG FOOTER CENTER CLEANUP
   Removes the Binder Shelf button from the slab binder footer and centers the
   page/status text directly beneath the binder.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-shelf-btn,
#repoRcgBinderDialog #repoRcgBinderShelfBtn{
  display:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  width:min(calc(100vw - 430px),1160px)!important;
  max-width:1160px!important;
  min-width:960px!important;
  margin:2px auto 0!important;
  padding:4px 0 2px!important;
  grid-template-columns:none!important;
  gap:0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  padding:0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{
  display:block!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status small{
  display:block!important;
  margin:1px auto 0!important;
}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 390px),1100px)!important;
    max-width:1100px!important;
    min-width:900px!important;
  }
}
@media(max-width:1440px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 350px),1020px)!important;
    max-width:1020px!important;
    min-width:820px!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(94vw,980px)!important;
    max-width:980px!important;
    min-width:0!important;
    padding:4px 0 2px!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 400px),1060px)!important;
    max-width:1060px!important;
    min-width:860px!important;
    padding:2px 0 2px!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.57 — RCG FOOTER UP / TIGHTEN GAP
   Pulls the slab collection page text upward so it sits directly beneath
   the binder with less dead space, while keeping it centered and visible.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-nav{
  margin:-18px auto 0!important;
  padding:0 0 2px!important;
  transform:translateY(-8px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status{
  margin:0 auto!important;
  padding:0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{
  line-height:1.05!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status small{
  line-height:1.1!important;
  margin:2px auto 0!important;
}
@media(max-width:1440px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-16px auto 0!important;
    transform:translateY(-6px)!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-10px auto 0!important;
    transform:none!important;
    padding:0 0 2px!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-20px auto 0!important;
    transform:translateY(-8px)!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.58 — RCG FOOTER GAP + HIDDEN CASE BUTTON
   Removes the remaining dead vertical space under the binder by letting the
   slab stage size to its content, then swaps the Hidden Slabs button for the
   supplied RCG slab case artwork in the right-hand control rail.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-main{
  gap:2px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  height:auto!important;
  min-height:0!important;
  flex:0 0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  margin:-56px auto 0!important;
  padding:0!important;
  transform:none!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status{
  margin:0 auto!important;
  padding:0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{
  line-height:1.02!important;
  margin:0 auto!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status small{
  line-height:1.05!important;
  margin:2px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  gap:14px!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn{
  appearance:none!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  width:170px!important;
  min-width:170px!important;
  max-width:170px!important;
  height:auto!important;
  display:block!important;
  cursor:pointer!important;
  transition:transform .16s ease, filter .16s ease!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn:hover,
#repoRcgBinderDialog .repo-rcg-hidden-image-btn.is-active{
  transform:translateY(-2px) scale(1.015)!important;
  filter:brightness(1.06) drop-shadow(0 10px 18px rgba(0,0,0,.38))!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  pointer-events:none!important;
  user-select:none!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn span{
  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;
}
@media(max-width:1620px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-50px auto 0!important;
  }
}
@media(max-width:1440px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-42px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-hidden-image-btn{
    width:156px!important;
    min-width:156px!important;
    max-width:156px!important;
  }
}
@media(max-width:1260px){
  #repoRcgBinderDialog .repo-rcg-binder-main{
    gap:4px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-18px auto 0!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:12px!important;
  }
  #repoRcgBinderDialog .repo-rcg-hidden-image-btn{
    width:min(220px,44vw)!important;
    min-width:140px!important;
    max-width:220px!important;
  }
}
@media(max-height:930px) and (min-width:1261px){
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin:-54px auto 0!important;
  }
}


/* ======================================================================
   REPO COMPANY V20.66 — TWO LAYOUT ERRORS FIXED
   1. Grading-shop CTA is a real second row beneath both front binder covers.
   2. Open-binder controls are a real third column to the right of the binder.
   No runtime positioning or scale transforms.
   ====================================================================== */

/* FRONT: two covers on row one, CTA centred on row two */
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shelf-v2041{
  position:fixed!important;
  left:50%!important;
  top:50%!important;
  width:min(90vw,1120px)!important;
  height:auto!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  grid-template-rows:auto auto!important;
  column-gap:clamp(48px,5vw,86px)!important;
  row-gap:18px!important;
  align-items:end!important;
  justify-items:center!important;
  overflow:visible!important;
  pointer-events:none!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041{
  width:min(34vw,430px)!important;
  height:auto!important;
  flex:none!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  pointer-events:auto!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{
  width:auto!important;
  height:min(64dvh,640px)!important;
  max-width:100%!important;
  max-height:none!important;
  object-fit:contain!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-normal-v2041{grid-column:1!important;grid-row:1!important}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-rcg-v2041{grid-column:2!important;grid-row:1!important}
#quidditchTcgBinderDialog .repo-dual-binder-shop-cta-v2066{display:none!important}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066{
  grid-column:1 / 3!important;
  grid-row:2!important;
  display:block!important;
  width:310px!important;
  max-width:min(62vw,310px)!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  appearance:none!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066 img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 16px rgba(0,0,0,.62))!important;
}

/* OPEN RCG: symmetric grid keeps binder central, controls are outside on right */
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  width:100%!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1160px) 150px!important;
  column-gap:28px!important;
  align-items:start!important;
  justify-content:center!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace::before{
  content:''!important;
  grid-column:1!important;
  grid-row:1!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(calc(100vw - 430px),1160px)!important;
  max-width:1160px!important;
  min-width:0!important;
  margin:0 auto!important;
  transform:none!important;
  transform-origin:center top!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  position:static!important;
  width:min(calc(100vw - 430px),1160px)!important;
  max-width:1160px!important;
  min-width:0!important;
  margin:10px auto 0!important;
  padding:0!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  transform:none!important;
  text-align:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog .repo-rcg-shelf-btn,
#repoRcgBinderDialog #repoRcgBinderShelfBtn,
#repoRcgBinderDialog .repo-rcg-nav-buttons{display:none!important}
#repoRcgBinderDialog .repo-rcg-binder-status{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  text-align:center!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{margin:0!important;line-height:1.05!important}
#repoRcgBinderDialog .repo-rcg-binder-status small{margin:2px 0 0!important;line-height:1.1!important}
#repoRcgBinderDialog .repo-rcg-sidebar{
  grid-column:3!important;
  grid-row:1!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  margin:0!important;
  align-self:center!important;
  justify-self:start!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  width:150px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn{
  width:146px!important;
  min-width:146px!important;
  max-width:146px!important;
  margin:0!important;
}
#repoRcgBinderDialog #repoRcgCustomizeBtn{
  width:150px!important;
  min-width:150px!important;
  max-width:150px!important;
  margin:0!important;
}

@media(max-width:1320px){
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:130px minmax(0,960px) 130px!important;
    column-gap:20px!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{width:min(calc(100vw - 350px),960px)!important;max-width:960px!important}
  #repoRcgBinderDialog .repo-rcg-sidebar,
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{width:130px!important;min-width:130px!important;max-width:130px!important}
  #repoRcgBinderDialog .repo-rcg-hidden-image-btn{width:126px!important;min-width:126px!important;max-width:126px!important}
  #repoRcgBinderDialog #repoRcgCustomizeBtn{width:130px!important;min-width:130px!important;max-width:130px!important;font-size:7px!important}
}
@media(max-width:980px){
  #repoRcgBinderDialog .repo-rcg-binder-workspace{grid-template-columns:1fr!important;justify-items:center!important}
  #repoRcgBinderDialog .repo-rcg-binder-workspace::before{display:none!important}
  #repoRcgBinderDialog .repo-rcg-binder-main{grid-column:1!important}
  #repoRcgBinderDialog .repo-rcg-sidebar{grid-column:1!important;grid-row:2!important;width:min(94vw,760px)!important;max-width:760px!important;min-width:0!important;justify-self:center!important;margin-top:12px!important}
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{width:100%!important;max-width:100%!important;min-width:0!important;flex-direction:row!important;justify-content:center!important}
}


/* ======================================================================
   REPO COMPANY V20.67 — RCG OPEN PAGE DOWN + 10% BIGGER
   Moves the open slab archive presentation slightly lower and enlarges the
   entire open-page composition by roughly 10% while keeping the same layout.
   ====================================================================== */
#repoRcgBinderDialog{
  height:min(99vh,1240px)!important;
}
#repoRcgBinderDialog .repo-rcg-binder-shell{
  padding:18px 22px 22px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-close{
  top:30px!important;
  right:18px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  grid-template-columns:165px minmax(0,1276px) 165px!important;
  column-gap:31px!important;
  align-items:start!important;
}
#repoRcgBinderDialog .repo-rcg-binder-main{
  width:100%!important;
}
#repoRcgBinderDialog .repo-rcg-binder-header{
  width:638px!important;
  max-width:min(92vw,638px)!important;
  height:119px!important;
  margin:-24px auto -10px!important;
}
#repoRcgBinderDialog .repo-rcg-header-brand{
  width:638px!important;
  max-width:min(92vw,638px)!important;
  transform:translateY(-73px)!important;
}
#repoRcgBinderDialog .repo-rcg-book{
  width:min(calc(100vw - 473px),1276px)!important;
  max-width:1276px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:min(calc(100vw - 473px),1276px)!important;
  max-width:1276px!important;
  margin:12px auto 0!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status b{
  font-size:17.6px!important;
}
#repoRcgBinderDialog .repo-rcg-binder-status small{
  font-size:11px!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar{
  width:165px!important;
  min-width:165px!important;
  max-width:165px!important;
  align-self:center!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  width:165px!important;
  gap:13px!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn{
  width:161px!important;
  min-width:161px!important;
  max-width:161px!important;
}
#repoRcgBinderDialog #repoRcgCustomizeBtn{
  width:165px!important;
  min-width:165px!important;
  max-width:165px!important;
  min-height:44px!important;
  font-size:8px!important;
}
@media(max-width:1320px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:16px 18px 20px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-workspace{
    grid-template-columns:143px minmax(0,1056px) 143px!important;
    column-gap:22px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:584px!important;
    max-width:min(90vw,584px)!important;
    height:109px!important;
    margin:-18px auto -8px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    width:584px!important;
    max-width:min(90vw,584px)!important;
    transform:translateY(-67px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(calc(100vw - 380px),1056px)!important;
    max-width:1056px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar,
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{
    width:143px!important;
    min-width:143px!important;
    max-width:143px!important;
  }
  #repoRcgBinderDialog .repo-rcg-hidden-image-btn{
    width:139px!important;
    min-width:139px!important;
    max-width:139px!important;
  }
  #repoRcgBinderDialog #repoRcgCustomizeBtn{
    width:143px!important;
    min-width:143px!important;
    max-width:143px!important;
  }
}
@media(max-width:980px){
  #repoRcgBinderDialog .repo-rcg-binder-shell{
    padding:14px 14px 18px!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    width:min(92vw,560px)!important;
    max-width:min(92vw,560px)!important;
    height:104px!important;
    margin:-8px auto -4px!important;
  }
  #repoRcgBinderDialog .repo-rcg-header-brand{
    width:min(92vw,560px)!important;
    max-width:min(92vw,560px)!important;
    transform:translateY(-64px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-book,
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    width:min(96vw,1040px)!important;
    max-width:1040px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    width:min(96vw,820px)!important;
    max-width:820px!important;
    margin-top:14px!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar-actions{
    width:100%!important;
    max-width:100%!important;
    gap:12px!important;
  }
}


/* ========================================================================
   RCG GRADING SHOP v20.71 — CLEAN TOP-LAYER DIALOG
   ======================================================================== */
body.repo-rcg-shop-open{overflow:hidden!important}

dialog.repo-rcg-shop-dialog-v2071{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
  background:#08111b!important;
  color:inherit!important;
  z-index:2147483647!important;
}
dialog.repo-rcg-shop-dialog-v2071::backdrop{
  background:rgba(2,6,12,.92)!important;
  backdrop-filter:none!important;
}
.repo-rcg-shop-stage-v2071{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  background:#08111b!important;
}
.repo-rcg-shop-scene-v2071{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .28s ease!important;
}
.repo-rcg-shop-scene-v2071.is-active{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
.repo-rcg-shop-bg-v2071{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
  pointer-events:none!important;
}
.repo-rcg-shop-close-v2071,
.repo-rcg-shop-back-v2071{
  position:absolute!important;
  z-index:20!important;
  top:14px!important;
  cursor:pointer!important;
}
.repo-rcg-shop-close-v2071{
  all:unset!important;
  position:absolute!important;
  right:14px!important;
  top:14px!important;
  width:38px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(242,201,109,.72)!important;
  background:linear-gradient(180deg,rgba(48,66,96,.94),rgba(18,28,46,.94))!important;
  color:#ffe9ab!important;
  box-shadow:0 8px 20px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.05)!important;
  font:700 22px/1 Georgia,serif!important;
  text-align:center!important;
  cursor:pointer!important;
}
.repo-rcg-shop-back-v2071{
  all:unset!important;
  position:absolute!important;
  left:14px!important;
  top:14px!important;
  min-width:74px!important;
  height:34px!important;
  padding:0 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border:1px solid rgba(242,201,109,.72)!important;
  background:linear-gradient(180deg,rgba(48,66,96,.94),rgba(18,28,46,.94))!important;
  color:#ffe9ab!important;
  box-shadow:0 8px 18px rgba(0,0,0,.3),inset 0 0 0 1px rgba(255,255,255,.05)!important;
  font:700 12px/1 Georgia,serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  cursor:pointer!important;
  border-radius:2px!important;
}
.repo-rcg-shop-back-v2071:hover,.repo-rcg-shop-close-v2071:hover{filter:brightness(1.08)!important}
.repo-rcg-shop-back-v2071:focus,.repo-rcg-shop-back-v2071:focus-visible,.repo-rcg-shop-close-v2071:focus,.repo-rcg-shop-close-v2071:focus-visible{outline:none!important;box-shadow:0 0 0 2px rgba(120,201,255,.35),0 8px 18px rgba(0,0,0,.3)!important}
.repo-rcg-shop-atmo-v2071{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.repo-rcg-shop-sunbeam-v2071{
  position:absolute!important;
  left:-8%!important;
  top:-8%!important;
  width:48%!important;
  height:115%!important;
  background:linear-gradient(90deg,rgba(255,244,191,0) 0%,rgba(255,240,176,.12) 30%,rgba(255,232,155,.22) 48%,rgba(255,246,209,.08) 64%,rgba(255,255,255,0) 100%)!important;
  transform:skewX(-18deg) rotate(3deg)!important;
  filter:blur(3px)!important;
  mix-blend-mode:screen!important;
  animation:repoRcgSunDrift2071 7s ease-in-out infinite alternate!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071{
  left:1%!important;
  top:-4%!important;
  width:36%!important;
  height:108%!important;
  background:linear-gradient(90deg,rgba(255,248,209,0) 0%,rgba(255,240,176,.14) 28%,rgba(255,229,142,.26) 54%,rgba(255,251,224,.06) 72%,rgba(255,255,255,0) 100%)!important;
  transform:skewX(-12deg)!important;
}
.repo-rcg-shop-glow-v2071{
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at 22% 22%,rgba(255,236,154,.18),transparent 20%),
    radial-gradient(circle at 79% 32%,rgba(255,207,95,.12),transparent 14%),
    radial-gradient(circle at 50% 80%,rgba(65,145,190,.07),transparent 24%)!important;
  mix-blend-mode:screen!important;
  animation:repoRcgGlowPulse2071 5s ease-in-out infinite!important;
}
.repo-rcg-shop-particles-v2071{
  position:absolute!important;
  inset:-8% -4%!important;
  background-image:
    radial-gradient(circle,rgba(255,247,214,.84) 0 1.1px,transparent 1.7px),
    radial-gradient(circle,rgba(255,230,170,.58) 0 1px,transparent 1.6px),
    radial-gradient(circle,rgba(255,255,255,.42) 0 .9px,transparent 1.4px)!important;
  background-size:180px 180px,240px 240px,320px 320px!important;
  background-position:0 0,40px 70px,120px 20px!important;
  opacity:.34!important;
  animation:repoRcgDustFloat2071 16s linear infinite!important;
}
.repo-rcg-shop-motes-v2071{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.repo-rcg-shop-mote-v2071{
  position:absolute!important;
  width:var(--mote-size,3px)!important;
  height:var(--mote-size,3px)!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(255,252,239,1) 0%,rgba(255,236,176,.96) 38%,rgba(255,229,149,.42) 72%,rgba(255,229,149,0) 100%)!important;
  opacity:var(--mote-alpha,.38)!important;
  box-shadow:0 0 10px rgba(255,234,170,.28)!important;
  animation:repoRcgMoteFloat2071 linear infinite!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-mote-v2071{
  background:radial-gradient(circle,rgba(255,252,243,1) 0%,rgba(255,241,190,.98) 35%,rgba(255,222,132,.50) 70%,rgba(255,222,132,0) 100%)!important;
  opacity:calc(var(--mote-alpha,.38) + .08)!important;
}
.repo-rcg-shop-leaves-v2071{
  position:absolute!important;
  inset:-5%!important;
  z-index:3!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.repo-rcg-shop-leaf-v2071{
  position:absolute!important;
  top:-12%!important;
  width:18px!important;
  height:12px!important;
  opacity:.6!important;
  background:radial-gradient(circle at 35% 35%,#cfe983 0 18%,#89b64d 52%,#557f31 100%)!important;
  border-radius:80% 8% 80% 8%!important;
  box-shadow:0 0 8px rgba(90,135,56,.25)!important;
  animation:repoRcgLeafFall2071 linear infinite!important;
}
.repo-rcg-shop-door-hotspot-v2071{
  all:unset!important;
  position:absolute!important;
  left:44.3%!important;
  top:35.8%!important;
  width:11.2%!important;
  height:37.6%!important;
  z-index:10!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  background-image:none!important;
  color:transparent!important;
  opacity:0!important;
  cursor:pointer!important;
}
.repo-rcg-shop-door-hotspot-v2071::before,
.repo-rcg-shop-door-hotspot-v2071::after{display:none!important;content:none!important}
.repo-rcg-shop-door-hotspot-v2071:focus,
.repo-rcg-shop-door-hotspot-v2071:hover,
.repo-rcg-shop-door-hotspot-v2071:active{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  opacity:0!important;
}
@keyframes repoRcgSunDrift2071{
  0%{transform:skewX(-18deg) translateX(-1.5%) translateY(0) rotate(3deg);opacity:.74}
  100%{transform:skewX(-14deg) translateX(3%) translateY(1%) rotate(4deg);opacity:1}
}
@keyframes repoRcgGlowPulse2071{0%,100%{opacity:.72}50%{opacity:1}}
@keyframes repoRcgDustFloat2071{from{transform:translate3d(0,0,0)}to{transform:translate3d(-30px,40px,0)}}
@keyframes repoRcgMoteFloat2071{
  0%{transform:translate3d(0,0,0) scale(.85);opacity:0}
  12%{opacity:var(--mote-alpha,.38)}
  100%{transform:translate3d(var(--mote-drift-x,22px),var(--mote-drift-y,36px),0) scale(1.18);opacity:0}
}
@keyframes repoRcgLeafFall2071{
  0%{transform:translate3d(0,-4vh,0) rotate(0deg);opacity:0}
  10%{opacity:.65}
  100%{transform:translate3d(var(--leaf-drift,90px),115vh,0) rotate(380deg) scale(var(--leaf-scale,1));opacity:0}
}
@media(max-width:900px){
  .repo-rcg-shop-door-hotspot-v2071{left:43.2%!important;top:36%!important;width:13.4%!important;height:36.4%!important}
}


/* ==========================================================================
   RCG SHOP v20.75 — AUTHORITATIVE CONTROLS + ATMOSPHERE FIX
   ========================================================================== */

/* Back/close must sit ABOVE the full-screen scene and atmospheric layers. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-back-v2071,
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-close-v2071{
  z-index:1000!important;
  pointer-events:auto!important;
}

/* Small, clean top-left back control. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-back-v2071{
  all:unset!important;
  position:absolute!important;
  left:14px!important;
  top:14px!important;
  z-index:1000!important;
  box-sizing:border-box!important;
  height:34px!important;
  min-width:72px!important;
  padding:0 11px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(225,185,92,.72)!important;
  border-radius:3px!important;
  background:linear-gradient(180deg,rgba(23,40,61,.96),rgba(8,20,34,.96))!important;
  color:#f5dc96!important;
  box-shadow:0 7px 18px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.045)!important;
  font:700 11px/1 "Trebuchet MS",Verdana,sans-serif!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}

/* Keep X above scene too. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-close-v2071{
  z-index:1000!important;
}

/* Make the atmosphere visibly present rather than barely perceptible. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-atmo-v2071{
  z-index:20!important;
  opacity:1!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-leaves-v2071{
  z-index:28!important;
  opacity:1!important;
}

/* Two visible shafts of warm moving sunlight. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-sunbeam-v2071{
  left:-5%!important;
  top:-12%!important;
  width:48%!important;
  height:130%!important;
  opacity:.78!important;
  filter:blur(7px)!important;
  background:linear-gradient(
    96deg,
    rgba(255,247,214,0) 0%,
    rgba(255,239,169,.10) 22%,
    rgba(255,232,145,.34) 44%,
    rgba(255,246,207,.18) 61%,
    rgba(255,255,255,0) 79%
  )!important;
  animation:repoRcgSunSweepV2075 6.8s ease-in-out infinite alternate!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-sunbeam-v2071::after{
  content:""!important;
  position:absolute!important;
  left:58%!important;
  top:-4%!important;
  width:58%!important;
  height:108%!important;
  background:linear-gradient(
    96deg,
    rgba(255,255,255,0) 0%,
    rgba(255,238,167,.12) 30%,
    rgba(255,228,138,.26) 52%,
    rgba(255,255,255,0) 82%
  )!important;
  filter:blur(10px)!important;
  transform:skewX(-10deg)!important;
  animation:repoRcgSunSweepSecondaryV2075 8.5s ease-in-out infinite alternate!important;
}

/* Interior = sunlight + dust/motes only, absolutely no leaves. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-leaves-v2071{
  display:none!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071{
  left:-1%!important;
  width:44%!important;
  opacity:.82!important;
}

/* Exterior leaves: visible but still tasteful. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.exterior .repo-rcg-shop-leaf-v2071{
  width:17px!important;
  height:11px!important;
  opacity:.78!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))!important;
  animation-name:repoRcgLeafFallV2075!important;
}

/* Brighter visible sun dust. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-particles-v2071{
  opacity:.55!important;
  animation:repoRcgDustFloatV2075 12s linear infinite!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-motes-v2071{
  z-index:24!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-mote-v2071{
  opacity:.68!important;
  box-shadow:0 0 12px rgba(255,230,149,.42)!important;
  animation:repoRcgMoteFloatV2075 linear infinite!important;
}

/* Invisible door stays invisible. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-door-hotspot-v2071{
  opacity:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}

@keyframes repoRcgSunSweepV2075{
  0%{transform:translate3d(-2.5%,0,0) skewX(-17deg) rotate(2deg);opacity:.56}
  50%{opacity:.86}
  100%{transform:translate3d(7%,1.5%,0) skewX(-11deg) rotate(3.5deg);opacity:.72}
}
@keyframes repoRcgSunSweepSecondaryV2075{
  0%{transform:translate3d(-3%,0,0) skewX(-12deg);opacity:.32}
  100%{transform:translate3d(10%,2%,0) skewX(-8deg);opacity:.62}
}
@keyframes repoRcgDustFloatV2075{
  0%{transform:translate3d(0,0,0)}
  100%{transform:translate3d(-48px,58px,0)}
}
@keyframes repoRcgMoteFloatV2075{
  0%{transform:translate3d(0,6px,0) scale(.8);opacity:0}
  15%{opacity:.68}
  65%{opacity:.42}
  100%{transform:translate3d(var(--mote-drift-x,28px),calc(var(--mote-drift-y,38px) * -1),0) scale(1.25);opacity:0}
}
@keyframes repoRcgLeafFallV2075{
  0%{transform:translate3d(-40px,-8vh,0) rotate(-25deg);opacity:0}
  8%{opacity:.78}
  45%{transform:translate3d(calc(var(--leaf-drift,90px) * .45),46vh,0) rotate(160deg);opacity:.72}
  100%{transform:translate3d(var(--leaf-drift,90px),112vh,0) rotate(395deg);opacity:0}
}


/* ========================================================================
   RCG SHOP v20.76 — EXTERIOR LEAVES HARD FIX
   Dedicated JS-driven leaf layer so the leaves cannot be lost behind the
   background image or depend on older CSS keyframes.
   ======================================================================== */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-live-leaves-v2076{
  position:absolute!important;
  inset:0!important;
  z-index:80!important;
  overflow:hidden!important;
  pointer-events:none!important;
  contain:layout paint!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-live-leaf-v2076{
  position:absolute!important;
  left:0;
  top:0;
  width:var(--leaf-w,18px)!important;
  height:var(--leaf-h,11px)!important;
  border-radius:78% 12% 78% 12%!important;
  background:
    linear-gradient(135deg,rgba(231,241,159,.96) 0 12%,rgba(141,172,76,.98) 38%,rgba(85,121,48,.98) 72%,rgba(53,84,35,.98) 100%)!important;
  box-shadow:
    0 2px 4px rgba(0,0,0,.28),
    inset 1px 1px 1px rgba(255,255,220,.28)!important;
  transform-origin:50% 50%!important;
  will-change:transform,opacity!important;
  opacity:0;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-live-leaf-v2076::after{
  content:""!important;
  position:absolute!important;
  left:49%!important;
  top:8%!important;
  width:1px!important;
  height:82%!important;
  background:rgba(232,244,185,.48)!important;
  transform:rotate(12deg)!important;
  transform-origin:center!important;
}


/* ========================================================================
   RCG SHOP v20.77 — PERSISTENT LEFT-TO-RIGHT WIND LEAVES
   The exterior now uses one dedicated JS wind stream. The older falling leaf
   layer is disabled so nothing drops in from the top of the scene.
   ======================================================================== */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.exterior > .repo-rcg-shop-leaves-v2071{
  display:none!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-live-leaves-v2076{
  z-index:82!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-live-leaf-v2076{
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.24)) var(--leaf-filter,none)!important;
  opacity:0;
}


/* ========================================================================
   RCG SHOP v20.78 — INTERIOR SUNSHINE BOOST
   Stronger animated warm light inside only. Exterior wind leaves untouched.
   ======================================================================== */

/* Interior remains completely leaf-free. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-leaves-v2071,
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-live-leaves-v2076{
  display:none!important;
}

/* Main broad shaft — brighter and more obvious. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071{
  left:-7%!important;
  top:-14%!important;
  width:58%!important;
  height:138%!important;
  opacity:.96!important;
  filter:blur(7px)!important;
  mix-blend-mode:screen!important;
  background:linear-gradient(
    100deg,
    rgba(255,250,226,0) 0%,
    rgba(255,244,198,.12) 18%,
    rgba(255,231,143,.46) 38%,
    rgba(255,242,190,.31) 54%,
    rgba(255,252,232,.10) 69%,
    rgba(255,255,255,0) 82%
  )!important;
  animation:repoRcgInteriorSunSweepV2078 5.6s ease-in-out infinite alternate!important;
}

/* Second narrower shaft moving independently. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::before{
  content:""!important;
  position:absolute!important;
  left:38%!important;
  top:-3%!important;
  width:34%!important;
  height:112%!important;
  background:linear-gradient(
    98deg,
    rgba(255,255,255,0) 0%,
    rgba(255,244,204,.10) 18%,
    rgba(255,226,128,.36) 46%,
    rgba(255,246,211,.13) 68%,
    rgba(255,255,255,0) 88%
  )!important;
  filter:blur(9px)!important;
  transform:skewX(-11deg)!important;
  opacity:.86!important;
  animation:repoRcgInteriorSunSecondV2078 7.2s ease-in-out infinite alternate!important;
}

/* Third soft shaft farther into the room. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::after{
  content:""!important;
  position:absolute!important;
  left:83%!important;
  top:4%!important;
  width:30%!important;
  height:98%!important;
  background:linear-gradient(
    98deg,
    rgba(255,255,255,0) 0%,
    rgba(255,238,173,.08) 20%,
    rgba(255,221,118,.28) 49%,
    rgba(255,247,218,.10) 70%,
    rgba(255,255,255,0) 90%
  )!important;
  filter:blur(11px)!important;
  transform:skewX(-9deg)!important;
  opacity:.68!important;
  animation:repoRcgInteriorSunThirdV2078 8.8s ease-in-out infinite alternate!important;
}

/* Warm light pools that gently breathe across the workbench/floor. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-atmo-v2071::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 21% 78%,rgba(255,214,112,.25) 0%,rgba(255,226,144,.10) 21%,transparent 43%),
    radial-gradient(ellipse at 48% 68%,rgba(255,235,174,.18) 0%,transparent 34%),
    radial-gradient(ellipse at 76% 54%,rgba(255,228,148,.11) 0%,transparent 28%)!important;
  mix-blend-mode:screen!important;
  opacity:.84!important;
  animation:repoRcgInteriorLightPoolV2078 4.8s ease-in-out infinite alternate!important;
}

/* A subtle travelling glint, so the interior visibly feels alive. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-atmo-v2071::after{
  content:""!important;
  position:absolute!important;
  left:-28%!important;
  top:0!important;
  width:26%!important;
  height:100%!important;
  pointer-events:none!important;
  background:linear-gradient(92deg,transparent,rgba(255,246,210,.15),rgba(255,224,138,.23),rgba(255,250,228,.08),transparent)!important;
  filter:blur(13px)!important;
  mix-blend-mode:screen!important;
  transform:skewX(-13deg)!important;
  opacity:.8!important;
  animation:repoRcgInteriorGlintV2078 9.5s ease-in-out infinite!important;
}

/* Make interior dust/light motes easier to see in the shafts. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-particles-v2071{
  opacity:.72!important;
  filter:drop-shadow(0 0 3px rgba(255,231,156,.28))!important;
  animation-duration:10s!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-mote-v2071{
  opacity:.82!important;
  box-shadow:0 0 14px rgba(255,228,143,.55)!important;
  filter:brightness(1.18)!important;
}

@keyframes repoRcgInteriorSunSweepV2078{
  0%{transform:translate3d(-3%,0,0) skewX(-16deg) rotate(1.5deg);opacity:.72}
  45%{opacity:1}
  100%{transform:translate3d(8%,1.5%,0) skewX(-10deg) rotate(3deg);opacity:.88}
}
@keyframes repoRcgInteriorSunSecondV2078{
  0%{transform:translate3d(-6%,0,0) skewX(-13deg);opacity:.48}
  100%{transform:translate3d(12%,1%,0) skewX(-8deg);opacity:.92}
}
@keyframes repoRcgInteriorSunThirdV2078{
  0%{transform:translate3d(-8%,1%,0) skewX(-10deg);opacity:.30}
  100%{transform:translate3d(14%,-1%,0) skewX(-6deg);opacity:.72}
}
@keyframes repoRcgInteriorLightPoolV2078{
  0%{opacity:.56;transform:scale(1)}
  100%{opacity:.92;transform:scale(1.025)}
}
@keyframes repoRcgInteriorGlintV2078{
  0%,10%{transform:translate3d(0,0,0) skewX(-13deg);opacity:0}
  20%{opacity:.7}
  55%{opacity:.9}
  90%,100%{transform:translate3d(520%,0,0) skewX(-13deg);opacity:0}
}


/* ========================================================================
   RCG SHOP v20.79 — INTERIOR LIGHT BALANCE
   Less glare, more visible floating sun particles.
   ======================================================================== */

dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071{
  opacity:.46!important;
  filter:blur(11px)!important;
  background:linear-gradient(
    100deg,
    rgba(255,250,226,0) 0%,
    rgba(255,244,198,.06) 18%,
    rgba(255,231,143,.19) 38%,
    rgba(255,242,190,.13) 54%,
    rgba(255,252,232,.05) 69%,
    rgba(255,255,255,0) 82%
  )!important;
}

dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::before{
  opacity:.32!important;
  filter:blur(14px)!important;
  background:linear-gradient(
    98deg,
    rgba(255,255,255,0) 0%,
    rgba(255,244,204,.05) 18%,
    rgba(255,226,128,.16) 46%,
    rgba(255,246,211,.06) 68%,
    rgba(255,255,255,0) 88%
  )!important;
}

dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::after{
  opacity:.22!important;
  filter:blur(16px)!important;
  background:linear-gradient(
    98deg,
    rgba(255,255,255,0) 0%,
    rgba(255,238,173,.04) 20%,
    rgba(255,221,118,.12) 49%,
    rgba(255,247,218,.04) 70%,
    rgba(255,255,255,0) 90%
  )!important;
}

/* Keep just a soft warm lift on surfaces instead of a washed-out veil. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-atmo-v2071::before{
  opacity:.34!important;
  background:
    radial-gradient(ellipse at 18% 76%,rgba(255,218,126,.13) 0%,rgba(255,229,158,.05) 23%,transparent 43%),
    radial-gradient(ellipse at 48% 68%,rgba(255,238,184,.08) 0%,transparent 34%),
    radial-gradient(ellipse at 76% 54%,rgba(255,231,160,.05) 0%,transparent 28%)!important;
}

/* Travelling glint is now very subtle. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-atmo-v2071::after{
  opacity:.26!important;
  filter:blur(18px)!important;
}

/* Background dust stays gentle. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-particles-v2071{
  opacity:.34!important;
  filter:none!important;
  animation-duration:14s!important;
}

/* Floating sunlight particles are now the main atmospheric effect. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-motes-v2071{
  z-index:34!important;
  opacity:1!important;
}

dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-mote-v2071{
  width:clamp(3px,var(--mote-size,4px),6.5px)!important;
  height:clamp(3px,var(--mote-size,4px),6.5px)!important;
  opacity:.86!important;
  background:radial-gradient(
    circle,
    rgba(255,255,246,1) 0%,
    rgba(255,244,196,.98) 28%,
    rgba(255,220,124,.72) 58%,
    rgba(255,206,92,.20) 78%,
    rgba(255,206,92,0) 100%
  )!important;
  box-shadow:
    0 0 6px rgba(255,245,200,.75),
    0 0 14px rgba(255,218,118,.42)!important;
  filter:none!important;
  animation-name:repoRcgInteriorMoteFloatV2079!important;
  animation-timing-function:ease-in-out!important;
}

/* Give the particles a more lazy, suspended-in-sunlight motion. */
@keyframes repoRcgInteriorMoteFloatV2079{
  0%{
    transform:translate3d(0,8px,0) scale(.78);
    opacity:0;
  }
  12%{
    opacity:.76;
  }
  38%{
    transform:translate3d(calc(var(--mote-drift-x,22px) * .35),-8px,0) scale(1);
    opacity:.92;
  }
  70%{
    transform:translate3d(calc(var(--mote-drift-x,22px) * .72),-22px,0) scale(.9);
    opacity:.68;
  }
  100%{
    transform:translate3d(var(--mote-drift-x,22px),-42px,0) scale(1.14);
    opacity:0;
  }
}


/* ========================================================================
   RCG SHOP v20.80 — VISIBLE INTERIOR SUN ANIMATION
   Dedicated moving rays/pools so the animation is unmistakably visible,
   while keeping the overall glare below the v20.78 level.
   ======================================================================== */

dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-interior-sunfx-v2080{
  position:absolute!important;
  inset:0!important;
  z-index:31!important;
  overflow:hidden!important;
  pointer-events:none!important;
  opacity:1!important;
  mix-blend-mode:screen!important;
}

/* Suppress the old broad wash. The new explicit rays below provide the movement. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071{
  opacity:.20!important;
  filter:blur(15px)!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::before,
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-sunbeam-v2071::after{
  opacity:.12!important;
}

.repo-rcg-sun-ray-v2080{
  position:absolute!important;
  top:-18%!important;
  height:142%!important;
  border-radius:50%!important;
  filter:blur(14px)!important;
  transform-origin:50% 0%!important;
  will-change:transform,opacity!important;
  background:linear-gradient(
    92deg,
    rgba(255,255,255,0) 0%,
    rgba(255,249,222,.06) 17%,
    rgba(255,237,171,.25) 40%,
    rgba(255,225,129,.34) 51%,
    rgba(255,242,191,.18) 66%,
    rgba(255,255,255,0) 100%
  )!important;
}
.repo-rcg-sun-ray-v2080.ray-a{
  left:4%!important;
  width:18%!important;
  transform:rotate(-8deg) skewX(-8deg)!important;
  animation:repoRcgSunRayA2080 6.2s ease-in-out infinite alternate!important;
}
.repo-rcg-sun-ray-v2080.ray-b{
  left:24%!important;
  width:13%!important;
  opacity:.70!important;
  transform:rotate(-5deg) skewX(-5deg)!important;
  animation:repoRcgSunRayB2080 8.1s ease-in-out infinite alternate!important;
}
.repo-rcg-sun-ray-v2080.ray-c{
  left:47%!important;
  width:9%!important;
  opacity:.44!important;
  transform:rotate(-3deg)!important;
  animation:repoRcgSunRayC2080 10.4s ease-in-out infinite alternate!important;
}

.repo-rcg-sun-pool-v2080{
  position:absolute!important;
  border-radius:50%!important;
  filter:blur(24px)!important;
  will-change:transform,opacity!important;
  background:radial-gradient(ellipse,rgba(255,225,137,.25) 0%,rgba(255,234,169,.13) 42%,rgba(255,246,213,0) 76%)!important;
}
.repo-rcg-sun-pool-v2080.pool-a{
  left:3%!important;
  bottom:4%!important;
  width:38%!important;
  height:25%!important;
  animation:repoRcgSunPoolA2080 5.4s ease-in-out infinite alternate!important;
}
.repo-rcg-sun-pool-v2080.pool-b{
  left:33%!important;
  bottom:29%!important;
  width:27%!important;
  height:18%!important;
  opacity:.56!important;
  animation:repoRcgSunPoolB2080 7.2s ease-in-out infinite alternate!important;
}

/* Narrow travelling shimmer across the room every few seconds. */
.repo-rcg-sun-glint-v2080{
  position:absolute!important;
  left:-22%!important;
  top:-4%!important;
  width:9%!important;
  height:112%!important;
  transform:skewX(-15deg)!important;
  filter:blur(10px)!important;
  opacity:0!important;
  background:linear-gradient(90deg,transparent,rgba(255,247,214,.20),rgba(255,223,130,.28),rgba(255,249,224,.10),transparent)!important;
  animation:repoRcgInteriorGlint2080 9.2s ease-in-out infinite!important;
  will-change:transform,opacity!important;
}

/* Keep the floating dust strongly readable in the moving rays. */
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-motes-v2071{
  z-index:36!important;
}
dialog.repo-rcg-shop-dialog-v2071 .repo-rcg-shop-scene-v2071.interior .repo-rcg-shop-mote-v2071{
  opacity:.92!important;
  min-width:3.2px!important;
  min-height:3.2px!important;
  box-shadow:0 0 7px rgba(255,250,218,.82),0 0 15px rgba(255,218,112,.48)!important;
}

@keyframes repoRcgSunRayA2080{
  0%{transform:translate3d(-3%,0,0) rotate(-9deg) skewX(-8deg);opacity:.34}
  42%{opacity:.72}
  100%{transform:translate3d(17%,1%,0) rotate(-5deg) skewX(-4deg);opacity:.50}
}
@keyframes repoRcgSunRayB2080{
  0%{transform:translate3d(-10%,0,0) rotate(-6deg) skewX(-6deg);opacity:.24}
  55%{opacity:.60}
  100%{transform:translate3d(22%,0,0) rotate(-2deg) skewX(-3deg);opacity:.38}
}
@keyframes repoRcgSunRayC2080{
  0%{transform:translate3d(-14%,0,0) rotate(-4deg);opacity:.14}
  100%{transform:translate3d(24%,1%,0) rotate(0deg);opacity:.38}
}
@keyframes repoRcgSunPoolA2080{
  0%{transform:translate3d(-2%,1%,0) scale(.94);opacity:.28}
  100%{transform:translate3d(6%,-2%,0) scale(1.06);opacity:.52}
}
@keyframes repoRcgSunPoolB2080{
  0%{transform:translate3d(-4%,0,0) scale(.92);opacity:.22}
  100%{transform:translate3d(7%,2%,0) scale(1.08);opacity:.42}
}
@keyframes repoRcgInteriorGlint2080{
  0%,12%{transform:translate3d(0,0,0) skewX(-15deg);opacity:0}
  20%{opacity:.36}
  48%{opacity:.52}
  82%,100%{transform:translate3d(1450%,0,0) skewX(-15deg);opacity:0}
}

/* ========================================================================
   RCG SHOP v20.81 — INTERACTIVE SUBMIT A CARD MENU
   Uses supplied transparent UI artwork as the foreground frame.
   ======================================================================== */

/* Clickable areas on the physical shop interior. No ugly browser button UI. */
.repo-rcg-shop-scene-v2071.interior .repo-rcg-submit-entry-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:120!important;
  display:block!important;
  cursor:pointer!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:10px!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-submit-entry-v2081.sign{
  left:10.35%!important;
  top:19.45%!important;
  width:13.1%!important;
  height:7.1%!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-submit-entry-v2081.box{
  left:12.25%!important;
  top:45.4%!important;
  width:10.9%!important;
  height:17.4%!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-submit-entry-v2081:hover,
.repo-rcg-shop-scene-v2071.interior .repo-rcg-submit-entry-v2081:focus-visible{
  box-shadow:0 0 18px rgba(55,225,230,.18),inset 0 0 12px rgba(62,231,235,.09)!important;
}

.repo-rcg-submit-overlay-v2081{
  position:absolute!important;
  inset:0!important;
  z-index:5000!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(2,7,11,.84)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.repo-rcg-submit-overlay-v2081.is-open{display:flex!important}

.repo-rcg-submit-frame-v2081{
  position:relative!important;
  flex:0 0 auto!important;
  width:min(96vw,calc(94vh * 1.7768331562),1672px)!important;
  aspect-ratio:1672/941!important;
  overflow:visible!important;
  isolation:isolate!important;
  filter:drop-shadow(0 28px 48px rgba(0,0,0,.76))!important;
}
.repo-rcg-submit-art-v2081{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}

/* Search/filter/sort line mapped directly onto the artwork. */
.repo-rcg-submit-search-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:10!important;
  left:11.45%!important;
  top:20.25%!important;
  width:11.75%!important;
  height:4.7%!important;
  box-sizing:border-box!important;
  padding:0 10px 0 11px!important;
  color:#dce9ef!important;
  caret-color:#7fe3eb!important;
  font:700 clamp(8px,.68vw,11px)/1 Arial,sans-serif!important;
  letter-spacing:.03em!important;
  background:rgba(4,12,18,.12)!important;
  border-radius:2px!important;
}
.repo-rcg-submit-search-v2081::placeholder{color:rgba(130,153,163,.68)!important}
.repo-rcg-submit-search-v2081:focus{box-shadow:inset 0 0 0 1px rgba(71,211,221,.3)!important}
.repo-rcg-submit-filter-v2081,
.repo-rcg-submit-sort-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:12!important;
  top:20.05%!important;
  height:5.35%!important;
  cursor:pointer!important;
  border-radius:3px!important;
}
.repo-rcg-submit-filter-v2081{left:24.33%!important;width:3.55%!important}
.repo-rcg-submit-sort-v2081{left:28.75%!important;width:3.55%!important}
.repo-rcg-submit-filter-v2081:hover,.repo-rcg-submit-sort-v2081:hover,
.repo-rcg-submit-filter-v2081:focus-visible,.repo-rcg-submit-sort-v2081:focus-visible{
  box-shadow:inset 0 0 11px rgba(71,223,230,.18),0 0 9px rgba(52,208,217,.13)!important;
  outline:none!important;
}

/* Real account cards scroll behind the six decorative apertures. */
.repo-rcg-submit-card-list-v2081{
  position:absolute!important;
  z-index:9!important;
  left:11.38%!important;
  top:27.55%!important;
  width:16.55%!important;
  height:60.15%!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:max-content!important;
  gap:2.1% 10.2%!important;
  align-content:start!important;
  padding:.25% .65% .6%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  overscroll-behavior:contain!important;
  mask-image:linear-gradient(to bottom,transparent 0,#000 2%,#000 98%,transparent 100%)!important;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 2%,#000 98%,transparent 100%)!important;
}
.repo-rcg-submit-card-list-v2081::-webkit-scrollbar{display:none!important}
.repo-rcg-submit-card-v2081{
  all:unset!important;
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  aspect-ratio:.675!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
  border-radius:3px!important;
  transition:transform .12s ease,filter .12s ease,box-shadow .12s ease!important;
}
.repo-rcg-submit-card-v2081 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.72))!important;
  pointer-events:none!important;
}
.repo-rcg-submit-card-v2081:hover{transform:translateY(-2px) scale(1.025)!important;filter:brightness(1.08)!important}
.repo-rcg-submit-card-v2081.is-selected{
  box-shadow:0 0 0 2px rgba(79,230,236,.82),0 0 14px rgba(52,218,226,.38)!important;
  background:rgba(39,190,199,.08)!important;
}
.repo-rcg-submit-card-v2081.is-locked{filter:saturate(.55) brightness(.72)!important}
.repo-rcg-submit-card-v2081.is-locked span{
  position:absolute!important;
  left:50%!important;
  bottom:4%!important;
  transform:translateX(-50%)!important;
  padding:3px 5px!important;
  background:rgba(5,11,16,.9)!important;
  border:1px solid rgba(200,152,60,.72)!important;
  color:#e4c67f!important;
  font:900 clamp(5px,.42vw,7px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}
.repo-rcg-submit-empty-v2081{
  grid-column:1/-1!important;
  min-height:72%!important;
  display:grid!important;
  place-items:center!important;
  color:#758894!important;
  font:900 clamp(7px,.58vw,10px)/1.45 Arial,sans-serif!important;
  letter-spacing:.1em!important;
  text-align:center!important;
}

/* Selected card pocket. */
.repo-rcg-selected-card-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:12!important;
  left:35.55%!important;
  top:28.4%!important;
  width:10.05%!important;
  height:26.25%!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
.repo-rcg-selected-card-v2081 img{
  display:block!important;
  width:94%!important;
  height:96%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.65))!important;
  transition:transform .15s ease,filter .15s ease!important;
}
.repo-rcg-selected-card-v2081:hover img{transform:translateY(-2px) scale(1.02)!important;filter:brightness(1.07) drop-shadow(0 6px 9px rgba(0,0,0,.7))!important}
.repo-rcg-selected-card-v2081 span{
  color:#657681!important;
  font:900 clamp(8px,.72vw,12px)/1.5 Arial,sans-serif!important;
  letter-spacing:.1em!important;
  text-align:center!important;
}

/* Parchment data block. */
.repo-rcg-selected-info-v2081{
  position:absolute!important;
  z-index:12!important;
  left:47.72%!important;
  top:30.2%!important;
  width:8.85%!important;
  height:21.85%!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:8.5% 7% 5%!important;
  overflow:hidden!important;
  color:#6e3f1a!important;
  text-align:center!important;
  text-shadow:0 1px rgba(255,238,185,.35)!important;
  pointer-events:none!important;
}
.repo-rcg-selected-info-v2081 strong{
  display:block!important;
  width:100%!important;
  margin:0 0 3%!important;
  font:900 clamp(6px,.56vw,10px)/1.08 Georgia,serif!important;
  color:#5b3418!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-selected-info-v2081 span{
  font:900 clamp(5px,.46vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.06em!important;
  color:#8e581f!important;
  margin-bottom:9%!important;
}
.repo-rcg-selected-info-v2081 i{
  font:700 clamp(5px,.43vw,7px)/1.18 Arial,sans-serif!important;
  color:#7c5128!important;
  font-style:normal!important;
  margin-bottom:8%!important;
}
.repo-rcg-selected-info-v2081 b{
  display:block!important;
  width:100%!important;
  font:800 clamp(5px,.45vw,7.5px)/1.35 Arial,sans-serif!important;
  color:#70451f!important;
  margin-bottom:4%!important;
}
.repo-rcg-selected-info-v2081 small{
  display:block!important;
  margin-top:auto!important;
  font:800 clamp(4.5px,.4vw,6.5px)/1.22 Arial,sans-serif!important;
  color:#8e5f2f!important;
}

/* Place-card zone and staged preview. */
.repo-rcg-place-zone-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:15!important;
  left:67.15%!important;
  top:19.55%!important;
  width:16.15%!important;
  height:26.2%!important;
  cursor:pointer!important;
  border-radius:5px!important;
}
.repo-rcg-place-zone-v2081:hover,.repo-rcg-place-zone-v2081:focus-visible{
  box-shadow:inset 0 0 17px rgba(51,224,230,.08),0 0 16px rgba(48,222,228,.10)!important;
  outline:none!important;
}
.repo-rcg-staged-card-v2081{
  position:absolute!important;
  z-index:14!important;
  left:69.35%!important;
  top:27.35%!important;
  width:9.35%!important;
  height:18.25%!important;
  display:grid!important;
  place-items:center!important;
  pointer-events:none!important;
}
.repo-rcg-staged-card-v2081 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.7)) drop-shadow(0 0 8px rgba(44,230,233,.17))!important;
  animation:repoRcgSubmitPlacedV2081 .28s ease-out both!important;
}
@keyframes repoRcgSubmitPlacedV2081{from{transform:translateY(-8px) scale(.96);opacity:0}to{transform:none;opacity:1}}

.repo-rcg-submit-fee-v2081{
  position:absolute!important;
  z-index:13!important;
  left:49.35%!important;
  top:83.65%!important;
  width:8.5%!important;
  height:4.55%!important;
  display:grid!important;
  place-items:center!important;
  color:#6b3f18!important;
  font:900 clamp(7px,.68vw,11px)/1 Georgia,serif!important;
  text-shadow:0 1px rgba(255,235,177,.45)!important;
  pointer-events:none!important;
}
.repo-rcg-submit-status-v2081{
  position:absolute!important;
  z-index:13!important;
  left:58.2%!important;
  top:76.55%!important;
  width:28.3%!important;
  height:2.5%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#7f9ca7!important;
  font:900 clamp(5px,.46vw,7.5px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  pointer-events:none!important;
}

.repo-rcg-submit-cancel-v2081,
.repo-rcg-submit-close-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:30!important;
  cursor:pointer!important;
}
.repo-rcg-submit-cancel-v2081{
  left:34.25%!important;
  top:80.45%!important;
  width:10.85%!important;
  height:8.05%!important;
}
.repo-rcg-submit-close-v2081{
  left:84.7%!important;
  top:6.15%!important;
  width:5.25%!important;
  height:9.0%!important;
}
.repo-rcg-submit-cancel-v2081:hover,.repo-rcg-submit-close-v2081:hover,
.repo-rcg-submit-cancel-v2081:focus-visible,.repo-rcg-submit-close-v2081:focus-visible{
  filter:brightness(1.1)!important;
  outline:none!important;
  box-shadow:inset 0 0 12px rgba(255,211,101,.12)!important;
}

/* The supplied art shows the submit button disabled. We overlay an enabled
   state only when a real account card has been placed in the tray. */
.repo-rcg-submit-confirm-v2081{
  all:unset!important;
  position:absolute!important;
  z-index:22!important;
  left:61.55%!important;
  top:79.7%!important;
  width:26.6%!important;
  height:8.65%!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:4px!important;
  color:transparent!important;
  font:900 clamp(10px,1.12vw,19px)/1 Georgia,serif!important;
  letter-spacing:.055em!important;
  text-align:center!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
}
.repo-rcg-submit-confirm-v2081.is-ready:not(:disabled){
  color:#f2cd73!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  border:1px solid rgba(220,164,59,.64)!important;
  background:linear-gradient(180deg,rgba(26,66,72,.94),rgba(8,28,35,.95))!important;
  box-shadow:inset 0 0 0 2px rgba(3,11,15,.8),inset 0 0 18px rgba(37,205,211,.12),0 0 13px rgba(43,205,212,.10)!important;
  text-shadow:0 2px #020609,0 0 8px rgba(225,174,64,.22)!important;
}
.repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):hover,
.repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):focus-visible{
  filter:brightness(1.12)!important;
  box-shadow:inset 0 0 0 2px rgba(3,11,15,.8),inset 0 0 20px rgba(55,226,230,.20),0 0 18px rgba(52,218,225,.18)!important;
  outline:none!important;
}

@media(max-width:900px){
  .repo-rcg-submit-frame-v2081{width:min(99vw,calc(96vh * 1.7768331562))!important}
}
@media(prefers-reduced-motion:reduce){
  .repo-rcg-staged-card-v2081 img{animation:none!important}
}


/* ==========================================================================
   RCG SUBMIT MENU v20.82 — SINGLE CLICK + CLEAN LAYOUT
   ========================================================================== */

/* No second click required, so this giant invisible place button is removed
   entirely. This also removes the brown browser/button rectangle seen over
   the card placement area. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-place-zone-v2081{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* Selected preview is display-only now. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-card-v2081{
  cursor:default!important;
  pointer-events:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Slightly enlarge/recentre the parchment's usable text region. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081{
  left:47.42%!important;
  top:30.35%!important;
  width:9.72%!important;
  height:22.55%!important;
  padding:6.5% 7.5% 5.5%!important;
  overflow:hidden!important;
  justify-content:flex-start!important;
  gap:0!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 strong{
  max-width:100%!important;
  margin:0 0 4%!important;
  font:900 clamp(6px,.52vw,9.2px)/1.12 Georgia,serif!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  text-transform:uppercase!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 span{
  margin:0 0 7%!important;
  font:900 clamp(5.2px,.42vw,7.3px)/1.05 Arial,sans-serif!important;
  letter-spacing:.05em!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 i{
  margin:0 0 7%!important;
  font:800 clamp(5px,.39vw,6.8px)/1.1 Arial,sans-serif!important;
  letter-spacing:.035em!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 b{
  margin:0 0 3.5%!important;
  font:900 clamp(5.4px,.43vw,7.4px)/1.12 Arial,sans-serif!important;
  letter-spacing:.04em!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 small{
  margin-top:auto!important;
  padding-top:3%!important;
  font:900 clamp(4.8px,.37vw,6.5px)/1.08 Arial,sans-serif!important;
  letter-spacing:.035em!important;
  white-space:normal!important;
}

/* Placement preview is automatically populated as soon as a card is clicked. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-staged-card-v2081{
  left:69.18%!important;
  top:27.05%!important;
  width:9.55%!important;
  height:18.8%!important;
}

/* Centre the fee cleanly inside the paper value strip and keep it legible. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081{
  left:48.95%!important;
  top:83.45%!important;
  width:9.55%!important;
  height:4.75%!important;
  box-sizing:border-box!important;
  padding:0 3%!important;
  overflow:visible!important;
  white-space:nowrap!important;
  font:900 clamp(8px,.63vw,11.5px)/1.15 Georgia,serif!important;
  letter-spacing:.015em!important;
  text-align:center!important;
  color:#654018!important;
}

/* The card grid selection glow now communicates that the same card is also
   already staged on the right. */
.repo-rcg-submit-card-v2081.is-selected{
  box-shadow:0 0 0 2px rgba(79,230,236,.86),0 0 16px rgba(52,218,226,.42)!important;
}


/* ========================================================================
   RCG SUBMIT MENU v20.83 — ALIGNMENT + TYPOGRAPHY POLISH
   ======================================================================== */

/* Place the staged card precisely inside the gold corner brackets in the art.
   Artwork target: x≈1161–1316, y≈257–421 on the 1672×941 source. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-staged-card-v2081{
  left:69.44%!important;
  top:27.31%!important;
  width:9.27%!important;
  height:17.43%!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-staged-card-v2081 img{
  width:72%!important;
  height:94%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.68)) drop-shadow(0 0 7px rgba(44,230,233,.14))!important;
}

/* The parchment is treated as a real information card: card identity on the
   two printed lines, then eligibility odds beneath them. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081{
  left:47.36%!important;
  top:30.12%!important;
  width:9.96%!important;
  height:23.55%!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
  color:#603816!important;
  text-shadow:0 1px rgba(255,239,190,.32)!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 > *{
  box-sizing:border-box!important;
}
.repo-rcg-parchment-name-v2083{
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  top:27.5%!important;
  height:11%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:#5b3518!important;
  font:900 clamp(6px,.48vw,8.6px)/1.05 Georgia,serif!important;
  letter-spacing:.018em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-parchment-tier-v2083{
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  top:43.5%!important;
  height:9%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:#7a4a21!important;
  font:900 clamp(5.1px,.40vw,7px)/1 Arial,sans-serif!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-parchment-eligibility-v2083{
  position:absolute!important;
  left:7%!important;
  right:7%!important;
  top:57.5%!important;
  height:8%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#6e431f!important;
  font:900 clamp(5.4px,.42vw,7.4px)/1 Arial,sans-serif!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  text-align:center!important;
}
.repo-rcg-parchment-odds-v2083{
  position:absolute!important;
  left:9%!important;
  right:9%!important;
  top:66.5%!important;
  height:15%!important;
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:3%!important;
  align-items:center!important;
}
.repo-rcg-parchment-odds-v2083 span{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  margin:0!important;
  color:#66401f!important;
}
.repo-rcg-parchment-odds-v2083 b{
  display:block!important;
  width:auto!important;
  margin:0!important;
  color:#573315!important;
  font:900 clamp(6px,.47vw,8.2px)/1 Georgia,serif!important;
}
.repo-rcg-parchment-odds-v2083 em{
  display:block!important;
  margin:0!important;
  color:#825329!important;
  font:900 clamp(5px,.39vw,6.8px)/1 Arial,sans-serif!important;
  font-style:normal!important;
}
.repo-rcg-parchment-state-v2083{
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  bottom:7.5%!important;
  height:8.5%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:#835528!important;
  font:900 clamp(4.7px,.36vw,6.3px)/1 Arial,sans-serif!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.repo-rcg-parchment-empty-v2083{
  position:absolute!important;
  left:10%!important;
  right:10%!important;
  top:67%!important;
  height:14%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#815127!important;
  font:900 clamp(4.8px,.38vw,6.5px)/1.18 Arial,sans-serif!important;
  letter-spacing:.04em!important;
  text-align:center!important;
}

/* Keep any old generic element rules from interfering with the new structured
   parchment layout. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 strong,
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 span,
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 i,
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 small{
  max-width:none!important;
}

/* Grading fee: the amount belongs inside the pale inset field, not above it. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081{
  left:49.48%!important;
  top:84.37%!important;
  width:8.48%!important;
  height:4.18%!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-align:center!important;
  line-height:1!important;
  color:#5d3718!important;
  transform:translateY(1px)!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081 strong{
  display:block!important;
  margin:0!important;
  color:#5d3718!important;
  font:900 clamp(8px,.68vw,12px)/1 Georgia,serif!important;
  letter-spacing:.015em!important;
  text-shadow:0 1px rgba(255,236,177,.38)!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081 small{
  display:block!important;
  margin:1px 0 0!important;
  color:#795028!important;
  font:900 clamp(5px,.40vw,7px)/1 Arial,sans-serif!important;
  letter-spacing:.055em!important;
}


/* ========================================================================
   RCG SUBMIT MENU v20.84 — PARCHMENT TEXT POLISH
   Keep every label inside the parchment's blank bands, increase legibility,
   and allow long card names to wrap without clipping.
   ======================================================================== */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081{
  left:47.36%!important;
  top:30.12%!important;
  width:9.96%!important;
  height:23.55%!important;
  padding:0!important;
  overflow:visible!important;
  color:#593314!important;
  text-shadow:0 1px rgba(255,242,198,.34)!important;
}

/* Card name sits in the clear space ABOVE the first printed rule. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-name-v2083{
  position:absolute!important;
  left:6%!important;
  right:6%!important;
  top:8.5%!important;
  height:18%!important;
  padding:0 1%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  color:#503014!important;
  font:900 clamp(8px,.61vw,11px)/1.04 Georgia,'Times New Roman',serif!important;
  letter-spacing:.012em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  text-overflow:clip!important;
}

/* Tier sits cleanly BETWEEN the first and second printed rules. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-tier-v2083{
  position:absolute!important;
  left:7%!important;
  right:7%!important;
  top:34.3%!important;
  height:11.8%!important;
  padding:0 1%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  color:#67401d!important;
  font:900 clamp(6.9px,.51vw,9.1px)/1.04 'Trebuchet MS',Arial,sans-serif!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}

/* Eligibility heading begins below the second printed rule. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-eligibility-v2083{
  position:absolute!important;
  left:6%!important;
  right:6%!important;
  top:55.8%!important;
  height:8.8%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#5c3718!important;
  font:900 clamp(6.8px,.50vw,8.9px)/1 'Trebuchet MS',Arial,sans-serif!important;
  letter-spacing:.072em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:nowrap!important;
}

/* Three odds get their own roomy row. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-odds-v2083{
  position:absolute!important;
  left:7%!important;
  right:7%!important;
  top:66.2%!important;
  height:13.8%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4%!important;
  align-items:center!important;
  justify-items:center!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-odds-v2083 span{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  margin:0!important;
  padding:0!important;
  color:#5b3518!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-odds-v2083 b{
  display:block!important;
  margin:0!important;
  color:#4d2c12!important;
  font:900 clamp(7.6px,.57vw,10px)/1 Georgia,'Times New Roman',serif!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-odds-v2083 em{
  display:block!important;
  margin:0!important;
  color:#70451f!important;
  font:900 clamp(6.7px,.49vw,8.7px)/1 'Trebuchet MS',Arial,sans-serif!important;
  font-style:normal!important;
}

/* Status occupies the clean bottom margin and never touches the odds. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-state-v2083{
  position:absolute!important;
  left:6%!important;
  right:6%!important;
  bottom:6.2%!important;
  height:8.6%!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  color:#70461f!important;
  font:900 clamp(6px,.44vw,7.9px)/1.04 'Trebuchet MS',Arial,sans-serif!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:normal!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-parchment-empty-v2083{
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  top:66.5%!important;
  height:14%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#6f431d!important;
  font:900 clamp(6.5px,.48vw,8.4px)/1.12 'Trebuchet MS',Arial,sans-serif!important;
  letter-spacing:.035em!important;
  text-align:center!important;
  white-space:normal!important;
}

/* Protect this structured layout from older generic child rules. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081 > div{
  max-width:none!important;
  box-sizing:border-box!important;
  text-overflow:clip!important;
}


/* ==========================================================================
   RCG SUBMIT v20.85 — TEMPLATE ART IS THE BUTTON
   No generated blue/teal submit control is ever drawn.
   ========================================================================== */

.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:disabled,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled),
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:active{
  all:unset!important;
  position:absolute!important;
  z-index:30!important;
  left:61.55%!important;
  top:79.7%!important;
  width:26.6%!important;
  height:8.65%!important;
  display:block!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-shadow:none!important;
  opacity:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

/* Disabled: artwork remains visible, hotspot simply cannot be pressed. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081:disabled{
  pointer-events:none!important;
  cursor:default!important;
}

/* Ready: same artwork, now the invisible hit area becomes clickable. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled){
  pointer-events:auto!important;
  cursor:pointer!important;
}

/* Absolutely no hover/focus chrome — the supplied image remains untouched. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-confirm-v2081.is-ready:not(:disabled):active{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  color:transparent!important;
  text-shadow:none!important;
}


/* ==========================================================================
   RCG SUBMIT v20.86 — CLEAN CANCEL/X HOTSPOTS
   The supplied template artwork is the only visible button chrome.
   ========================================================================== */

.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:active,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:active{
  all:unset!important;
  position:absolute!important;
  z-index:40!important;
  display:block!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  opacity:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-shadow:none!important;
  cursor:pointer!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081{
  left:34.25%!important;
  top:80.45%!important;
  width:10.85%!important;
  height:8.05%!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081{
  left:84.7%!important;
  top:6.15%!important;
  width:5.25%!important;
  height:9%!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081::before,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081::after,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081::before,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081::after{
  content:none!important;
  display:none!important;
}

/* Protected-card visual state is retired: all owned raw cards are eligible. */
.repo-rcg-submit-card-v2081.is-locked:not([title*="AT RCG"]){
  opacity:1!important;
  filter:none!important;
}


/* ==========================================================================
   RCG SUBMIT v20.87 — RELIABLE TEMPLATE BUTTONS + CARD CENTRING
   ========================================================================== */

/* Cancel and X are visual parts of the supplied PNG. The actual HTML buttons
   no longer intercept input: the frame handles these exact artwork regions. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:hover,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:focus,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:focus-visible,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-cancel-v2081:active,
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-close-v2081:active{
  pointer-events:none!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
}

/* Make sure the source artwork frame itself receives those coordinate clicks. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-frame-v2081{
  pointer-events:auto!important;
}

/* Centre the staged card visually inside the gold PLACE CARD HERE brackets.
   A small rightward correction compensates for the card artwork canvas itself. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-staged-card-v2081{
  left:70.35%!important;
  top:27.31%!important;
  width:9.27%!important;
  height:17.43%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-staged-card-v2081 img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:auto!important;
  height:94%!important;
  max-width:78%!important;
  max-height:94%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
}


/* ==========================================================================
   RCG v20.88 — ONE-TIME CARDS ARE GUARANTEED RCG 10
   ========================================================================== */

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081.is-guaranteed-ten
.repo-rcg-parchment-eligibility-v2083{
  color:#785016!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081.is-guaranteed-ten
.repo-rcg-parchment-odds-v2083 span:last-child{
  color:#6d4510!important;
  font-weight:950!important;
  text-shadow:0 0 5px rgba(218,164,58,.18)!important;
}

.repo-rcg-submit-overlay-v2081 .repo-rcg-selected-info-v2081.is-guaranteed-ten
.repo-rcg-parchment-state-v2083{
  color:#69420d!important;
  font-weight:950!important;
  letter-spacing:.065em!important;
}


/* ==========================================================================
   RCG COLLECTION DESK v20.89
   ========================================================================== */

/* Interior artwork entry points: transparent, with only a subtle hover glow. */
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089{
  all:unset!important;
  position:absolute!important;
  z-index:48!important;
  display:block!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
  border-radius:6px!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  transition:box-shadow .14s ease,filter .14s ease!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089.sign{
  left:73.85%!important;
  top:19.75%!important;
  width:13.45%!important;
  height:6.8%!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089.scanner{
  left:71.85%!important;
  top:54.75%!important;
  width:19.0%!important;
  height:8.6%!important;
  border-radius:42%!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089:hover,
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089:focus-visible{
  outline:0!important;
  box-shadow:
    inset 0 0 18px rgba(77,229,239,.12),
    0 0 18px rgba(59,219,231,.18)!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089.sign:hover,
.repo-rcg-shop-scene-v2071.interior .repo-rcg-collect-entry-v2089.sign:focus-visible{
  box-shadow:
    inset 0 0 15px rgba(255,208,94,.08),
    0 0 15px rgba(71,225,234,.14)!important;
}

/* Foreground menu. */
.repo-rcg-collect-overlay-v2089{
  position:absolute!important;
  inset:0!important;
  z-index:6200!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(1,5,9,.86)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.repo-rcg-collect-overlay-v2089.is-open{display:flex!important}

.repo-rcg-collect-frame-v2089{
  position:relative!important;
  flex:0 0 auto!important;
  width:min(96vw,calc(94vh * 1.7768331562),1672px)!important;
  aspect-ratio:1672/941!important;
  isolation:isolate!important;
  overflow:visible!important;
  filter:drop-shadow(0 28px 48px rgba(0,0,0,.78))!important;
}
.repo-rcg-collect-art-v2089{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}

/* X / BACK / confirm are invisible hit areas over the supplied art. */
.repo-rcg-collect-close-v2089,
.repo-rcg-collect-back-v2089,
.repo-rcg-collect-confirm-v2089,
.repo-rcg-collect-up-v2089,
.repo-rcg-collect-down-v2089{
  all:unset!important;
  position:absolute!important;
  z-index:30!important;
  display:block!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  transition:box-shadow .14s ease,filter .14s ease!important;
}
.repo-rcg-collect-close-v2089{
  left:84.55%!important;
  top:6.25%!important;
  width:5.45%!important;
  height:9.1%!important;
  border-radius:4px!important;
}
.repo-rcg-collect-back-v2089{
  left:9.95%!important;
  top:82.0%!important;
  width:13.25%!important;
  height:7.35%!important;
  border-radius:5px!important;
}
.repo-rcg-collect-confirm-v2089{
  left:58.25%!important;
  top:81.75%!important;
  width:29.45%!important;
  height:7.75%!important;
  border-radius:5px!important;
}
.repo-rcg-collect-up-v2089{
  left:85.85%!important;
  top:20.2%!important;
  width:3.05%!important;
  height:5.45%!important;
}
.repo-rcg-collect-down-v2089{
  left:85.85%!important;
  top:76.05%!important;
  width:3.05%!important;
  height:5.45%!important;
}
.repo-rcg-collect-close-v2089:hover,
.repo-rcg-collect-back-v2089:hover,
.repo-rcg-collect-confirm-v2089.is-ready:hover,
.repo-rcg-collect-up-v2089:not(:disabled):hover,
.repo-rcg-collect-down-v2089:not(:disabled):hover,
.repo-rcg-collect-close-v2089:focus-visible,
.repo-rcg-collect-back-v2089:focus-visible,
.repo-rcg-collect-confirm-v2089.is-ready:focus-visible,
.repo-rcg-collect-up-v2089:not(:disabled):focus-visible,
.repo-rcg-collect-down-v2089:not(:disabled):focus-visible{
  outline:0!important;
  box-shadow:
    inset 0 0 13px rgba(74,225,234,.10),
    0 0 13px rgba(72,214,225,.14)!important;
}
.repo-rcg-collect-confirm-v2089:disabled,
.repo-rcg-collect-up-v2089:disabled,
.repo-rcg-collect-down-v2089:disabled{
  cursor:default!important;
  pointer-events:none!important;
}

/* Page thumb overlays the ornamental right-hand track. */
.repo-rcg-collect-scroll-thumb-v2089{
  position:absolute!important;
  z-index:19!important;
  left:86.62%!important;
  width:1.46%!important;
  min-height:10%!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(235,190,69,.10),rgba(63,210,224,.18),rgba(235,190,69,.10))!important;
  box-shadow:inset 0 0 7px rgba(54,214,225,.16),0 0 6px rgba(54,214,225,.10)!important;
  pointer-events:none!important;
  transition:top .2s ease,height .2s ease,opacity .2s ease!important;
}

/* Eight real return slots mapped to the eight decorative frames. */
.repo-rcg-collect-slots-v2089{
  position:absolute!important;
  inset:0!important;
  z-index:12!important;
  pointer-events:none!important;
}
.repo-rcg-collect-slot-v2089{
  all:unset!important;
  position:absolute!important;
  display:block!important;
  box-sizing:border-box!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  overflow:visible!important;
  border-radius:5px!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  transition:transform .14s ease,filter .14s ease,box-shadow .14s ease!important;
}
.repo-rcg-collect-slot-v2089.slot-1{left:11.55%!important;top:21.05%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-2{left:29.55%!important;top:21.05%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-3{left:48.55%!important;top:21.05%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-4{left:67.65%!important;top:21.05%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-5{left:11.55%!important;top:51.15%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-6{left:29.55%!important;top:51.15%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-7{left:48.55%!important;top:51.15%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089.slot-8{left:67.65%!important;top:51.15%!important;width:15.75%!important;height:27.85%!important}
.repo-rcg-collect-slot-v2089:disabled{cursor:default!important}
.repo-rcg-collect-slot-v2089.is-filled:hover,
.repo-rcg-collect-slot-v2089.is-filled:focus-visible{
  outline:0!important;
  transform:translateY(-2px)!important;
  box-shadow:
    inset 0 0 17px rgba(58,224,233,.08),
    0 0 15px rgba(60,218,229,.13)!important;
}
.repo-rcg-collect-slot-v2089.is-selected{
  box-shadow:
    inset 0 0 0 2px rgba(92,231,235,.66),
    inset 0 0 22px rgba(44,211,223,.13),
    0 0 18px rgba(58,222,231,.22)!important;
}

/* A sealed finished slab preview. Grade is intentionally not shown until collect. */
.repo-rcg-return-card-v2089{
  position:absolute!important;
  left:50%!important;
  top:44%!important;
  width:49%!important;
  height:72%!important;
  transform:translate(-50%,-50%)!important;
  display:block!important;
  overflow:hidden!important;
  border:3px solid rgba(224,233,235,.82)!important;
  border-radius:8px!important;
  background:
    linear-gradient(180deg,rgba(238,247,249,.92) 0 20%,rgba(9,19,28,.96) 20.5% 100%)!important;
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.28),
    inset 0 0 0 5px rgba(13,29,39,.46),
    0 8px 14px rgba(0,0,0,.42)!important;
  pointer-events:none!important;
}
.repo-rcg-return-card-v2089 img{
  position:absolute!important;
  left:9%!important;
  top:26%!important;
  width:82%!important;
  height:67%!important;
  object-fit:contain!important;
  object-position:center!important;
  filter:saturate(.9) brightness(.94)!important;
}
.repo-rcg-return-card-v2089>b{
  position:absolute!important;
  left:8%!important;
  top:5%!important;
  color:#113041!important;
  font:950 clamp(7px,.72vw,12px)/1 Georgia,serif!important;
  letter-spacing:.08em!important;
}
.repo-rcg-return-card-v2089>small{
  position:absolute!important;
  right:8%!important;
  top:7%!important;
  color:#6c5430!important;
  font:900 clamp(4.5px,.38vw,6.5px)/1 Arial,sans-serif!important;
  letter-spacing:.055em!important;
}
.repo-rcg-return-glass-v2089{
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(116deg,transparent 0 38%,rgba(255,255,255,.14) 45%,transparent 53%),
    linear-gradient(180deg,rgba(255,255,255,.10),transparent 24%)!important;
  mix-blend-mode:screen!important;
}
.repo-rcg-return-label-v2089{
  position:absolute!important;
  left:13%!important;
  right:13%!important;
  bottom:1.8%!important;
  height:8.3%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  color:#684119!important;
  font:950 clamp(5px,.48vw,8px)/1.05 Georgia,serif!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  pointer-events:none!important;
}
.repo-rcg-return-variant-v2089{
  position:absolute!important;
  left:22%!important;
  right:22%!important;
  bottom:-5.3%!important;
  display:block!important;
  color:rgba(173,151,101,.72)!important;
  font:900 clamp(4px,.34vw,5.8px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  pointer-events:none!important;
}

/* Status lives in the blank centre strip at the bottom of the supplied artwork. */
.repo-rcg-collect-status-v2089{
  position:absolute!important;
  z-index:18!important;
  left:24.0%!important;
  top:82.05%!important;
  width:32.6%!important;
  height:7.15%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding:0 2%!important;
  overflow:hidden!important;
  color:#a68c5d!important;
  font:900 clamp(6px,.54vw,9px)/1.2 Arial,sans-serif!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px #02070b!important;
  pointer-events:none!important;
}

@media(max-width:760px){
  .repo-rcg-return-card-v2089{border-width:2px!important}
}


/* ==========================================================================
   RCG COLLECTION v20.91 — SAFE CSS-ONLY HOTFIX
   Built on the known-working V20.89 JavaScript.
   ========================================================================== */

/* --------------------------------------------------------------------------
   X / BACK / COLLECT SELECTED / SCROLL ARROWS
   Existing template artwork is the only visible button.
   -------------------------------------------------------------------------- */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-close-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-back-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-confirm-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-up-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-down-v2089{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  color:transparent!important;
  text-shadow:none!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-close-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-close-v2089::after,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-back-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-back-v2089::after,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-confirm-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-confirm-v2089::after,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-up-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-up-v2089::after,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-down-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-down-v2089::after{
  content:none!important;
  display:none!important;
}

/* Hover/focus = subtle glow only. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-close-v2089:hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-back-v2089:hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-confirm-v2089.is-ready:hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-up-v2089:not(:disabled):hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-down-v2089:not(:disabled):hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-close-v2089:focus-visible,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-back-v2089:focus-visible,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-confirm-v2089.is-ready:focus-visible,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-up-v2089:not(:disabled):focus-visible,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-down-v2089:not(:disabled):focus-visible{
  background:transparent!important;
  border:0!important;
  outline:0!important;
  filter:none!important;
  box-shadow:
    inset 0 0 15px rgba(72,225,235,.07),
    0 0 10px rgba(72,225,235,.13),
    0 0 18px rgba(226,185,81,.045)!important;
}

/* --------------------------------------------------------------------------
   RETURN SLOT BUTTONS
   Remove every possible brown/global hover panel.
   -------------------------------------------------------------------------- */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089:hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089:focus,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089:focus-visible,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089:active,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-selected{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089::before,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089::after{
  content:none!important;
  display:none!important;
}

/* --------------------------------------------------------------------------
   V20.89 generated preview node is reused as the sealed packet.
   NO JavaScript changes required.
   -------------------------------------------------------------------------- */
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089{
  position:absolute!important;
  left:50%!important;
  top:43%!important;
  width:54%!important;
  height:77%!important;
  transform:translate(-50%,-50%) scale(1)!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:
    url('assets/rcg/rcg-graded-return-pack.png')
    center center / contain no-repeat!important;
  box-shadow:none!important;
  filter:
    drop-shadow(0 7px 11px rgba(0,0,0,.48))
    drop-shadow(0 0 4px rgba(58,209,220,.08))!important;
  transition:transform .16s ease,filter .16s ease!important;
  pointer-events:none!important;
}

/* Hide all the old fake-slab internals while keeping the same working DOM. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089 > img,
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089 > b,
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089 > small,
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-glass-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-variant-v2089{
  display:none!important;
}

/* Packet hover is the indication — no slot background. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:hover,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:focus-visible{
  transform:none!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:focus-visible .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.025)!important;
  filter:
    brightness(1.07)
    drop-shadow(0 8px 12px rgba(0,0,0,.50))
    drop-shadow(0 0 9px rgba(70,225,233,.25))
    drop-shadow(0 0 13px rgba(224,185,82,.11))!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-selected .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.035)!important;
  filter:
    brightness(1.09)
    drop-shadow(0 8px 13px rgba(0,0,0,.52))
    drop-shadow(0 0 11px rgba(72,228,235,.34))
    drop-shadow(0 0 17px rgba(224,183,75,.14))!important;
}

/* Keep the real card identity neatly on the parchment label underneath. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-label-v2089{
  left:13%!important;
  right:13%!important;
  bottom:1.75%!important;
  height:8.3%!important;
  color:#684119!important;
  font:950 clamp(5px,.48vw,8px)/1.05 Georgia,serif!important;
  letter-spacing:.025em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 1px rgba(255,239,191,.28)!important;
}


/* ==========================================================================
   RCG COLLECTION v20.92 — LABEL + HOVER POLISH
   ========================================================================== */

@keyframes repoRcgPacketHoverWobble{
  0%{transform:translate(-50%,-50%) scale(1.02) rotate(0deg)}
  20%{transform:translate(calc(-50% - 1px),calc(-50% + .5px)) scale(1.025) rotate(-.85deg)}
  40%{transform:translate(calc(-50% + 1.2px),calc(-50% - .8px)) scale(1.03) rotate(.85deg)}
  60%{transform:translate(calc(-50% - .8px),calc(-50% + .6px)) scale(1.028) rotate(-.55deg)}
  80%{transform:translate(calc(-50% + .8px),calc(-50% - .5px)) scale(1.03) rotate(.45deg)}
  100%{transform:translate(-50%,-50%) scale(1.03) rotate(0deg)}
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-return-label-v2089{
  left:10%!important;
  right:10%!important;
  bottom:1.7%!important;
  height:8.8%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#6b4218!important;
  font:950 clamp(5.6px,.56vw,9px)/1.03 Georgia,serif!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-align:center!important;
  text-shadow:
    0 1px 0 rgba(255,240,203,.45),
    0 0 1px rgba(255,240,203,.18)!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:focus-visible .repo-rcg-return-card-v2089{
  animation:repoRcgPacketHoverWobble .5s ease-in-out infinite!important;
  filter:
    brightness(1.08)
    saturate(1.03)
    drop-shadow(0 9px 12px rgba(0,0,0,.50))
    drop-shadow(0 0 10px rgba(255,215,110,.34))
    drop-shadow(0 0 18px rgba(255,200,70,.22))
    drop-shadow(0 0 5px rgba(72,225,235,.18))!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-selected .repo-rcg-return-card-v2089{
  animation:none!important;
  filter:
    brightness(1.1)
    saturate(1.04)
    drop-shadow(0 9px 13px rgba(0,0,0,.52))
    drop-shadow(0 0 10px rgba(255,214,110,.28))
    drop-shadow(0 0 16px rgba(255,190,60,.18))
    drop-shadow(0 0 5px rgba(72,228,235,.16))!important;
}


/* ==========================================================================
   RCG SUBMISSION v20.93 — MULTI-SUBMIT + FEE/SUCCESS FEEDBACK
   ========================================================================== */

/* Make the charge unmistakable inside the existing grading-fee paper strip. */
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  overflow:visible!important;
  text-align:center!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081 strong{
  display:block!important;
  color:#664015!important;
  font:950 clamp(8px,.72vw,12.5px)/1 Georgia,serif!important;
  letter-spacing:.015em!important;
  white-space:nowrap!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081 small{
  display:block!important;
  color:#825522!important;
  font:950 clamp(4px,.32vw,5.8px)/1 Arial,sans-serif!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081.is-fee-armed-v2093 strong{
  color:#8a4219!important;
  text-shadow:0 0 5px rgba(221,157,58,.18)!important;
}
.repo-rcg-submit-overlay-v2081 .repo-rcg-submit-fee-v2081.is-fee-armed-v2093{
  animation:repoRcgFeeArmedPulseV2093 1.55s ease-in-out infinite!important;
}
@keyframes repoRcgFeeArmedPulseV2093{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.12)}
}

/* The successful card visibly drops into the cyan grading tray. */
.repo-rcg-submit-frame-v2081.is-rcg-submitting-success-v2093 .repo-rcg-staged-card-v2081{
  z-index:80!important;
  animation:repoRcgSendCardV2093 .82s cubic-bezier(.2,.75,.2,1) both!important;
}
.repo-rcg-submit-frame-v2081.is-rcg-submitting-success-v2093 .repo-rcg-submit-confirm-v2081{
  pointer-events:none!important;
}
@keyframes repoRcgSendCardV2093{
  0%{
    transform:translate3d(0,0,0) scale(1);
    filter:brightness(1) drop-shadow(0 5px 7px rgba(0,0,0,.7));
    opacity:1;
  }
  30%{
    transform:translate3d(1%,8%,0) scale(1.04);
    filter:brightness(1.2) drop-shadow(0 0 15px rgba(67,228,234,.42));
    opacity:1;
  }
  72%{
    transform:translate3d(7%,86%,0) scale(.68) rotate(2deg);
    filter:brightness(1.35) drop-shadow(0 0 18px rgba(67,228,234,.55));
    opacity:.9;
  }
  100%{
    transform:translate3d(9%,132%,0) scale(.38) rotate(4deg);
    filter:brightness(1.6) drop-shadow(0 0 22px rgba(67,228,234,.62));
    opacity:0;
  }
}

/* Full feedback layer is visual only — no new visible buttons. */
.repo-rcg-submit-success-fx-v2093{
  position:absolute!important;
  inset:0!important;
  z-index:120!important;
  overflow:hidden!important;
  pointer-events:none!important;
}

.repo-rcg-submit-success-glow-v2093{
  position:absolute!important;
  left:61.5%!important;
  top:47.5%!important;
  width:27%!important;
  height:34%!important;
  border-radius:50%!important;
  background:
    radial-gradient(ellipse at center,
      rgba(72,236,241,.30) 0%,
      rgba(67,219,229,.14) 30%,
      rgba(236,190,73,.08) 52%,
      transparent 72%)!important;
  filter:blur(5px)!important;
  animation:repoRcgTrayFlashV2093 1.2s ease-out both!important;
}
@keyframes repoRcgTrayFlashV2093{
  0%{opacity:0;transform:scale(.55)}
  22%{opacity:1;transform:scale(1.06)}
  62%{opacity:.7;transform:scale(1)}
  100%{opacity:0;transform:scale(1.28)}
}

/* Floating explicit GP deduction. */
.repo-rcg-submit-fee-charge-v2093{
  position:absolute!important;
  left:48.2%!important;
  top:79.2%!important;
  width:14%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  color:#ffd66e!important;
  font:950 clamp(14px,1.28vw,23px)/1 Georgia,serif!important;
  letter-spacing:.03em!important;
  text-align:center!important;
  text-shadow:
    0 2px 2px rgba(0,0,0,.82),
    0 0 10px rgba(255,194,67,.45)!important;
  animation:repoRcgFeePaidV2093 1.3s ease-out both!important;
}
.repo-rcg-submit-fee-charge-v2093 small{
  margin-top:4px!important;
  color:#f5e3ad!important;
  font:900 clamp(5px,.48vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.11em!important;
}
@keyframes repoRcgFeePaidV2093{
  0%{opacity:0;transform:translateY(10px) scale(.78)}
  18%{opacity:1;transform:translateY(0) scale(1.06)}
  68%{opacity:1;transform:translateY(-13px) scale(1)}
  100%{opacity:0;transform:translateY(-29px) scale(.95)}
}

/* Mechanical RCG RECEIVED stamp over the tray. */
.repo-rcg-submit-received-v2093{
  position:absolute!important;
  left:64.2%!important;
  top:55.5%!important;
  width:21%!important;
  min-height:8%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:8px 10px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(111,230,235,.70)!important;
  outline:1px solid rgba(223,182,72,.48)!important;
  outline-offset:3px!important;
  background:linear-gradient(180deg,rgba(8,41,53,.90),rgba(4,20,30,.93))!important;
  box-shadow:
    0 10px 25px rgba(0,0,0,.55),
    inset 0 0 18px rgba(56,218,226,.12),
    0 0 17px rgba(52,215,224,.20)!important;
  transform:rotate(-2deg)!important;
  animation:repoRcgReceivedStampV2093 1.12s cubic-bezier(.17,.84,.3,1) both!important;
}
.repo-rcg-submit-received-v2093 b{
  color:#f2cd68!important;
  font:950 clamp(9px,.92vw,16px)/1 Georgia,serif!important;
  letter-spacing:.10em!important;
}
.repo-rcg-submit-received-v2093 small{
  margin-top:5px!important;
  max-width:100%!important;
  color:#8fe0e6!important;
  font:900 clamp(4.5px,.39vw,6.8px)/1.1 Arial,sans-serif!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
@keyframes repoRcgReceivedStampV2093{
  0%{opacity:0;transform:rotate(-2deg) translateY(-26px) scale(1.35)}
  23%{opacity:1;transform:rotate(-2deg) translateY(0) scale(.94)}
  34%{transform:rotate(-2deg) translateY(-2px) scale(1.02)}
  72%{opacity:1;transform:rotate(-2deg) translateY(0) scale(1)}
  100%{opacity:0;transform:rotate(-2deg) translateY(3px) scale(.98)}
}

/* Gold/cyan sparks burst around the grading tray. */
.repo-rcg-submit-success-particles-v2093{
  position:absolute!important;
  left:61%!important;
  top:43%!important;
  width:29%!important;
  height:39%!important;
}
.repo-rcg-submit-success-particles-v2093 i{
  --angle:calc(var(--i) * 18deg);
  position:absolute!important;
  left:50%!important;
  top:58%!important;
  width:clamp(3px,.32vw,5px)!important;
  height:clamp(3px,.32vw,5px)!important;
  border-radius:50%!important;
  background:radial-gradient(circle,#fff4bd 0 20%,#f0bd45 38%,#55dce6 70%,transparent 72%)!important;
  box-shadow:0 0 7px rgba(246,193,67,.48),0 0 7px rgba(70,220,231,.30)!important;
  animation:repoRcgSuccessSparkV2093 .9s ease-out var(--d) both!important;
}
@keyframes repoRcgSuccessSparkV2093{
  0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(4px) scale(.45)}
  18%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateX(clamp(56px,7.4vw,126px)) scale(1.1)}
}

@media(prefers-reduced-motion:reduce){
  .repo-rcg-submit-frame-v2081.is-rcg-submitting-success-v2093 .repo-rcg-staged-card-v2081,
  .repo-rcg-submit-success-fx-v2093 *,
  .repo-rcg-submit-fee-v2081.is-fee-armed-v2093{
    animation:none!important;
  }
}


/* =====================================================================
   RCG COLLECTION v20.94 — PACK CENTERING POLISH
   Keeps the sealed return packets sitting dead-centre in each frame.
   ===================================================================== */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089{
  display:block!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089{
  left:50%!important;
  top:43.25%!important;
  width:50.8%!important;
  height:74.5%!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  transform-origin:center center!important;
}
/* Fine-tune the second slot very slightly so the packet sits visually
   in the middle of the illustrated frame rather than reading left-heavy. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2 .repo-rcg-return-card-v2089{
  left:50.45%!important;
}

.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:focus-visible .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.03)!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-selected .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.035)!important;
}
/* Preserve the slot-2 correction while hovered/selected. */
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-filled:focus-visible .repo-rcg-return-card-v2089{
  left:50.45%!important;
  transform:translate(-50%,-50%) scale(1.03)!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-selected .repo-rcg-return-card-v2089{
  left:50.45%!important;
  transform:translate(-50%,-50%) scale(1.035)!important;
}


/* =====================================================================
   RCG COLLECTION v20.95 — VISUAL PACK CENTERING
   The packet art itself has transparent padding on the right, so even when
   the element is mathematically centred it reads visually left-heavy.
   Compensate by centring the element normally and nudging only the artwork.
   ===================================================================== */
.repo-rcg-collect-overlay-v2089 .repo-rcg-return-card-v2089{
  left:50%!important;
  top:43.25%!important;
  width:50.8%!important;
  height:74.5%!important;
  background-position:54.6% 50%!important;
  background-size:contain!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2 .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-filled:focus-visible .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.slot-2.is-selected .repo-rcg-return-card-v2089{
  left:50%!important;
  background-position:54.6% 50%!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:hover .repo-rcg-return-card-v2089,
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-filled:focus-visible .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.03)!important;
}
.repo-rcg-collect-overlay-v2089 .repo-rcg-collect-slot-v2089.is-selected .repo-rcg-return-card-v2089{
  transform:translate(-50%,-50%) scale(1.035)!important;
}


/* =====================================================================
   RCG COLLECT REVEAL ANIMATION v20.96
   Cinematic packet-opening sequence for collected finished slabs.
   ===================================================================== */
.repo-rcg-reveal-overlay-v2096{
  position:absolute;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(4,10,18,.72);
  backdrop-filter:blur(5px);
  z-index:640;
  pointer-events:none;
}
.repo-rcg-reveal-overlay-v2096.is-open{
  display:flex;
  pointer-events:auto;
}
.repo-rcg-reveal-stage-v2096{
  position:relative;
  width:min(84vw,84vh);
  aspect-ratio:1/1;
  border-radius:1.8rem;
  overflow:hidden;
  box-shadow:0 2rem 4rem rgba(0,0,0,.48),0 0 0 1px rgba(255,210,114,.15) inset;
  background:radial-gradient(circle at 50% 35%,rgba(39,67,86,.55),rgba(10,18,29,.95));
  outline:none;
}
.repo-rcg-reveal-stage-v2096::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,244,205,.08),rgba(0,0,0,.06) 38%,rgba(0,0,0,.28));
  pointer-events:none;
  z-index:2;
}
.repo-rcg-reveal-scene-v2096{
  position:absolute;
  inset:0;
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  opacity:0;
  transform:scale(1.02);
  transition:opacity .32s ease,transform 1.4s ease;
}
.repo-rcg-reveal-scene-v2096.is-visible{
  opacity:1;
  transform:scale(1);
}
.repo-rcg-reveal-card-layer-v2096{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform:translateY(2.4rem) scale(.82);
  transition:opacity .34s ease,transform .72s cubic-bezier(.14,.9,.18,1.06),filter .72s ease;
  filter:brightness(.9) saturate(.92);
  z-index:3;
  pointer-events:none;
}
.repo-rcg-reveal-card-layer-v2096.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:brightness(1) saturate(1);
}
.repo-rcg-reveal-overlay-v2096.is-final .repo-rcg-reveal-card-layer-v2096{ opacity:1; }
.repo-rcg-reveal-continue-v2096{
  position:absolute;
  left:50%;
  bottom:3.4%;
  transform:translateX(-50%);
  padding:.55rem 1rem;
  border-radius:999px;
  background:rgba(6,20,35,.64);
  border:1px solid rgba(255,210,114,.3);
  color:#f7df9a;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:0;
  transition:opacity .35s ease;
  z-index:4;
  pointer-events:none;
}
.repo-rcg-reveal-continue-v2096.is-visible{ opacity:1; }
.repo-rcg-reveal-slab-v2096{
  --rcg-aura: rgba(110,176,235,.24);
  --rcg-aura-strong: rgba(110,176,235,.42);
  --rcg-grade-chip-start:#21496f;
  --rcg-grade-chip-end:#0f2740;
  --rcg-grade-chip-text:#f3deb1;
  position:relative;
  width:min(35vw,27rem);
  aspect-ratio:1032/1523;
  filter:drop-shadow(0 1.6rem 2.95rem rgba(0,0,0,.5));
  transform-origin:center center;
  animation:repoRcgRevealPopV2096 .82s cubic-bezier(.16,.95,.16,1), repoRcgRevealFloatV2096 4.4s ease-in-out .85s infinite;
}
.repo-rcg-reveal-slab-v2096.grade-8{
  --rcg-aura: rgba(100,175,232,.18);
  --rcg-aura-strong: rgba(110,180,238,.34);
  --rcg-grade-chip-start:#294f75;
  --rcg-grade-chip-end:#12263c;
}
.repo-rcg-reveal-slab-v2096.grade-9{
  --rcg-aura: rgba(132,193,247,.24);
  --rcg-aura-strong: rgba(184,205,255,.44);
  --rcg-grade-chip-start:#274f77;
  --rcg-grade-chip-end:#0f2740;
}
.repo-rcg-reveal-slab-v2096.grade-10{
  --rcg-aura: rgba(247,212,118,.34);
  --rcg-aura-strong: rgba(255,226,132,.6);
  --rcg-grade-chip-start:#6f5323;
  --rcg-grade-chip-end:#2d1f0c;
  --rcg-grade-chip-text:#fff1c6;
}
.repo-rcg-reveal-slab-template-v2099{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  z-index:4;
  pointer-events:none;
  user-select:none;
}
.repo-rcg-reveal-slab-label-v2099{
  position:absolute;
  left:13.3%;
  top:5.65%;
  width:73.4%;
  height:12.4%;
  z-index:5;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto auto;
  gap:.08rem .6rem;
  align-content:center;
  box-sizing:border-box;
  padding:1.75% 3.4% 1.2% 3.4%;
  color:#1a3044;
}
.repo-rcg-reveal-slab-name-v2099{
  grid-column:1;
  grid-row:1;
  align-self:end;
  min-width:0;
  font:900 clamp(.76rem,1.28vw,1.16rem)/1.05 Arial,sans-serif;
  letter-spacing:.2em;
  text-transform:uppercase;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.repo-rcg-reveal-slab-grade-v2099{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:start;
  justify-self:end;
  display:block;
  padding:0;
  margin-top:.02rem;
  min-width:0;
  background:none;
  border:none;
  border-radius:0;
  box-shadow:none;
  color:#21374d;
  font:900 clamp(.74rem,1.14vw,.98rem)/1.04 Arial,sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
  text-align:right;
  text-shadow:0 1px 0 rgba(255,255,255,.42);
}
.repo-rcg-reveal-slab-v2096.grade-8 .repo-rcg-reveal-slab-grade-v2099{ color:#27415b; }
.repo-rcg-reveal-slab-v2096.grade-9 .repo-rcg-reveal-slab-grade-v2099{ color:#183f63; }
.repo-rcg-reveal-slab-v2096.grade-10 .repo-rcg-reveal-slab-grade-v2099{ color:#725114; }
.repo-rcg-reveal-slab-subline-v2099{
  grid-column:1;
  grid-row:2;
  min-width:0;
  color:#b3a57f;
  font:800 clamp(.28rem,.56vw,.46rem)/1.08 Arial,sans-serif;
  letter-spacing:.15em;
  text-transform:uppercase;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.repo-rcg-reveal-slab-cert-v2099{
  grid-column:1 / span 2;
  grid-row:3;
  justify-self:center;
  min-width:0;
  color:#23384b;
  font:800 clamp(.32rem,.6vw,.5rem)/1 Arial,sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  opacity:.92;
}
.repo-rcg-reveal-slab-barcode-v2100{
  position:absolute;
  left:4.8%;
  bottom:13%;
  width:24.8%;
  height:17%;
  border:1px solid rgba(29,39,52,.34);
  border-radius:.08rem;
  background:
    repeating-linear-gradient(90deg,#1f2530 0 1px,transparent 1px 2px,#1f2530 2px 4px,transparent 4px 5px,#1f2530 5px 6px,transparent 6px 8px),
    linear-gradient(180deg,rgba(255,255,255,.5),rgba(235,235,235,.7));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
  opacity:.82;
}
.repo-rcg-reveal-slab-window-v2099{
  position:absolute;
  left:10.37%;
  top:28.56%;
  width:79.36%;
  height:64.68%;
  z-index:6;
  overflow:hidden;
  border-radius:1.1% / 1%;
  background:transparent;
}
.repo-rcg-reveal-card-art-v2100{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
}
.repo-rcg-reveal-card-art-v2100 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(.992);
  filter:saturate(1.08) contrast(1.06) brightness(1.04);
}
.repo-rcg-reveal-window-glass-v2100{
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid rgba(242,248,255,.48);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16), inset 0 .85rem 1.25rem rgba(255,255,255,.06), inset 0 -.45rem .9rem rgba(41,74,106,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,0) 18%,rgba(255,255,255,0) 72%,rgba(255,255,255,.05));
  pointer-events:none;
}
.repo-rcg-reveal-sheen-v2099{
  position:absolute;
  inset:-10%;
  z-index:2;
  background:linear-gradient(104deg,rgba(255,255,255,0) 40%,rgba(255,255,255,.18) 48%,rgba(255,255,255,.4) 52%,rgba(255,255,255,.12) 56%,rgba(255,255,255,0) 62%);
  transform:translateX(-96%) rotate(6deg);
  animation:repoRcgRevealSheenV2096 2.65s ease .9s infinite;
  pointer-events:none;
}
.repo-rcg-reveal-grade-aura-v2100,
.repo-rcg-reveal-burst-v2100,
.repo-rcg-reveal-sparkles-v2100{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.repo-rcg-reveal-grade-aura-v2100{
  inset:16% 12% 8%;
  z-index:1;
  border-radius:7%;
  background:radial-gradient(circle at 50% 48%,var(--rcg-aura-strong),transparent 56%);
  filter:blur(18px);
  opacity:.9;
  animation:repoRcgRevealAuraPulseV2100 2.4s ease-out .1s both;
}
.repo-rcg-reveal-burst-v2100{
  z-index:0;
  inset:-12%;
  background:conic-gradient(from 0deg,transparent 0 12deg,rgba(255,255,255,.06) 12deg 16deg,transparent 16deg 42deg,var(--rcg-aura) 42deg 46deg,transparent 46deg 78deg,rgba(255,255,255,.05) 78deg 82deg,transparent 82deg 120deg,var(--rcg-aura) 120deg 124deg,transparent 124deg 360deg);
  opacity:.55;
  animation:repoRcgRevealBurstV2100 1.3s cubic-bezier(.12,.76,.22,1) .02s both;
}
.repo-rcg-reveal-sparkles-v2100{ z-index:7; }
.repo-rcg-reveal-sparkles-v2100 i{
  position:absolute;
  width:.48rem;
  height:.48rem;
  border-radius:50%;
  background:radial-gradient(circle,#fffbe0 0 18%, color-mix(in srgb,var(--rcg-aura-strong) 70%, #ffe6a4) 19% 58%, transparent 59%);
  filter:drop-shadow(0 0 .4rem color-mix(in srgb,var(--rcg-aura-strong) 82%, transparent));
  opacity:0;
  animation:repoRcgRevealSparkleV2100 1.35s ease-out .12s both;
}
.repo-rcg-reveal-sparkles-v2100 i:nth-child(1){ left:10%; top:24%; animation-delay:.08s; }
.repo-rcg-reveal-sparkles-v2100 i:nth-child(2){ left:84%; top:19%; animation-delay:.14s; }
.repo-rcg-reveal-sparkles-v2100 i:nth-child(3){ left:16%; bottom:18%; animation-delay:.22s; }
.repo-rcg-reveal-sparkles-v2100 i:nth-child(4){ right:12%; bottom:14%; animation-delay:.3s; }
.repo-rcg-reveal-sparkles-v2100 i:nth-child(5){ left:49%; top:10%; animation-delay:.38s; }
.repo-rcg-reveal-sparkles-v2100 i:nth-child(6){ left:52%; bottom:7%; animation-delay:.48s; }
@keyframes repoRcgRevealPopV2096{
  0%{ transform:translateY(2.8rem) scale(.72) rotate(-4deg); opacity:0; }
  54%{ transform:translateY(-.45rem) scale(1.05) rotate(1.2deg); opacity:1; }
  72%{ transform:translateY(.14rem) scale(.985) rotate(-.35deg); }
  100%{ transform:translateY(0) scale(1) rotate(0); opacity:1; }
}
@keyframes repoRcgRevealFloatV2096{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-.32rem); }
}
@keyframes repoRcgRevealSheenV2096{
  0%{ transform:translateX(-96%) rotate(6deg); opacity:0; }
  12%{ opacity:1; }
  34%{ opacity:.88; }
  56%,100%{ transform:translateX(94%) rotate(6deg); opacity:0; }
}
@keyframes repoRcgRevealAuraPulseV2100{
  0%{ opacity:0; transform:scale(.8); }
  30%{ opacity:1; }
  100%{ opacity:.55; transform:scale(1.08); }
}
@keyframes repoRcgRevealBurstV2100{
  0%{ opacity:0; transform:scale(.18) rotate(-22deg); }
  34%{ opacity:.9; }
  100%{ opacity:.18; transform:scale(1.18) rotate(16deg); }
}
@keyframes repoRcgRevealSparkleV2100{
  0%{ opacity:0; transform:scale(.2); }
  18%{ opacity:1; transform:scale(1.1); }
  100%{ opacity:0; transform:translateY(-.9rem) scale(1.45); }
}
  14%{ opacity:1; }
  36%{ opacity:.95; }
  52%,100%{ transform:translateX(92%) rotate(6deg); opacity:0; }
}
@media (max-width: 900px){
  .repo-rcg-reveal-stage-v2096{ width:min(92vw,92vh); }
  .repo-rcg-reveal-slab-v2096{ width:min(54vw,25rem); }
}
@media (max-width: 620px){
  .repo-rcg-reveal-slab-v2096{ width:min(66vw,21rem); }
  .repo-rcg-reveal-slab-name-v2099{ font-size:clamp(.62rem,2.2vw,.95rem); }
  .repo-rcg-reveal-slab-grade-v2099{ font-size:clamp(.62rem,2vw,.86rem); }
  .repo-rcg-reveal-slab-subline-v2099{ font-size:clamp(.24rem,1vw,.38rem); }
  .repo-rcg-reveal-slab-cert-v2099{ font-size:clamp(.28rem,1.05vw,.42rem); }
  .repo-rcg-reveal-continue-v2096{ font-size:.68rem; letter-spacing:.13em; }
}


/* =====================================================================
   RCG COLLECT REVEAL v20.97 — TRUE FOREGROUND + AUDIO FOCUS
   ===================================================================== */

/* The collect screen itself disappears while the opening animation runs. */
.repo-rcg-collect-overlay-v2089.is-cinematic-hidden-v2097{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:none!important;
}

/* The reveal must beat every RCG shop/menu layer. */
.repo-rcg-shop-dialog-v2071 .repo-rcg-reveal-overlay-v2096{
  position:fixed!important;
  inset:0!important;
  z-index:12000!important;
  width:100vw!important;
  height:100vh!important;
  background:rgba(2,7,13,.91)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
.repo-rcg-shop-dialog-v2071 .repo-rcg-reveal-overlay-v2096.is-open{
  display:flex!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* Keep the cinematic itself large and unobstructed. */
.repo-rcg-shop-dialog-v2071 .repo-rcg-reveal-stage-v2096{
  z-index:12001!important;
  width:min(92vw,92vh)!important;
  max-width:980px!important;
  max-height:980px!important;
  box-shadow:
    0 35px 85px rgba(0,0,0,.70),
    0 0 0 1px rgba(238,196,94,.22) inset,
    0 0 55px rgba(53,209,221,.08)!important;
}

/* During reveal, no underlying RCG shop controls can steal clicks. */
.repo-rcg-reveal-overlay-v2096.is-open ~ *,
.repo-rcg-shop-dialog-v2071:has(.repo-rcg-reveal-overlay-v2096.is-open) .repo-rcg-shop-back-v2071,
.repo-rcg-shop-dialog-v2071:has(.repo-rcg-reveal-overlay-v2096.is-open) .repo-rcg-shop-close-v2071{
  pointer-events:none!important;
}

/* Slight black edge vignette makes the supplied scenes read like a proper reveal. */
.repo-rcg-reveal-stage-v2096::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:8;
  pointer-events:none;
  box-shadow:inset 0 0 70px rgba(0,0,0,.26)!important;
  border-radius:inherit;
}
.repo-rcg-reveal-card-layer-v2096,
.repo-rcg-reveal-continue-v2096{
  z-index:10!important;
}


/* ==========================================================================
   RCG BINDER v20.98 — LIVE HIDDEN SLABS STORAGE
   Newly revealed/collected slabs live here until placed in the binder layout.
   ========================================================================== */

#repoRcgHiddenPanel .repo-rcg-panel-head b{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
#repoRcgHiddenPanel .repo-rcg-panel-head b em{
  min-width:21px!important;
  height:18px!important;
  padding:0 5px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(95,222,229,.36)!important;
  border-radius:999px!important;
  background:rgba(18,47,65,.72)!important;
  color:#8de4e7!important;
  font:900 9px/1 Arial,sans-serif!important;
  font-style:normal!important;
  box-shadow:inset 0 0 8px rgba(60,211,220,.08)!important;
}

#repoRcgHiddenPanel .repo-rcg-panel-body{
  overflow-y:auto!important;
  scrollbar-width:thin!important;
}

#repoRcgHiddenPanel .repo-rcg-empty-vault[hidden]{
  display:none!important;
}

.repo-rcg-hidden-slab-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  padding:4px 2px 10px!important;
}

.repo-rcg-hidden-slab-card{
  min-width:0!important;
  padding:8px!important;
  border:1px solid rgba(207,169,77,.28)!important;
  border-radius:8px!important;
  background:
    linear-gradient(180deg,rgba(18,38,57,.88),rgba(7,20,33,.94))!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.025),
    0 6px 13px rgba(0,0,0,.26)!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
.repo-rcg-hidden-slab-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(81,218,225,.42)!important;
  box-shadow:
    inset 0 0 15px rgba(56,211,220,.06),
    0 8px 18px rgba(0,0,0,.32),
    0 0 12px rgba(59,207,216,.08)!important;
}

.repo-rcg-hidden-slab-visual{
  position:relative!important;
  width:74%!important;
  aspect-ratio:1026/1536!important;
  margin:0 auto 7px!important;
  filter:drop-shadow(0 5px 7px rgba(0,0,0,.42))!important;
}

.repo-rcg-hidden-slab-case{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:3!important;
  pointer-events:none!important;
}

.repo-rcg-hidden-slab-card-art{
  position:absolute!important;
  left:14.2%!important;
  top:30.7%!important;
  width:71.7%!important;
  height:62.7%!important;
  z-index:1!important;
  overflow:hidden!important;
  border-radius:2px!important;
  background:#0a1520!important;
}
.repo-rcg-hidden-slab-card-art img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}

.repo-rcg-hidden-slab-grade{
  position:absolute!important;
  left:10.8%!important;
  right:10.8%!important;
  top:7.1%!important;
  height:14.3%!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding:0 5%!important;
  color:#20364a!important;
  text-align:right!important;
  pointer-events:none!important;
}
.repo-rcg-hidden-slab-grade b{
  color:#17314a!important;
  font:950 clamp(7px,.65vw,11px)/1 Georgia,serif!important;
  letter-spacing:.045em!important;
}
.repo-rcg-hidden-slab-grade small{
  max-width:62%!important;
  margin-top:2px!important;
  color:#6f5937!important;
  font:900 clamp(4px,.35vw,6px)/1.05 Arial,sans-serif!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.repo-rcg-hidden-slab-meta{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:2px!important;
  text-align:center!important;
}
.repo-rcg-hidden-slab-meta strong{
  max-width:100%!important;
  color:#f1d480!important;
  font:900 9px/1.12 Georgia,serif!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-hidden-slab-meta span{
  color:#79d8df!important;
  font:950 8px/1 Arial,sans-serif!important;
  letter-spacing:.07em!important;
}
.repo-rcg-hidden-slab-meta small{
  max-width:100%!important;
  color:#879bac!important;
  font:800 6.5px/1.1 Arial,sans-serif!important;
  letter-spacing:.035em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

@media(max-width:900px){
  .repo-rcg-hidden-slab-list{grid-template-columns:1fr!important}
  .repo-rcg-hidden-slab-visual{width:58%!important}
}


/* ========================================================================
   RCG INSPECTION DESK v21.03
   Grading sign + machine open a current grading queue menu.
   ======================================================================== */
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103{
  all:unset!important;
  position:absolute!important;
  z-index:120!important;
  display:block!important;
  cursor:pointer!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:12px!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103.sign{
  left:43.9%!important;
  top:18.75%!important;
  width:15.1%!important;
  height:8.1%!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103.machine{
  left:35.2%!important;
  top:29.35%!important;
  width:29.8%!important;
  height:34.3%!important;
  border-radius:20px!important;
}
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103:hover,
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103:focus-visible{
  box-shadow:0 0 18px rgba(55,225,230,.18), inset 0 0 12px rgba(62,231,235,.09)!important;
}

.repo-rcg-inspection-overlay-v2103{
  position:absolute!important;
  inset:0!important;
  z-index:5001!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(2,7,11,.86)!important;
  backdrop-filter:blur(3px)!important;
  -webkit-backdrop-filter:blur(3px)!important;
}
.repo-rcg-inspection-overlay-v2103.is-open{display:flex!important}

.repo-rcg-inspection-frame-v2103{
  position:relative!important;
  flex:0 0 auto!important;
  width:min(96vw,calc(94vh * 1.7568710359),1662px)!important;
  aspect-ratio:1662/946!important;
  isolation:isolate!important;
  overflow:visible!important;
  filter:drop-shadow(0 28px 48px rgba(0,0,0,.78))!important;
}
.repo-rcg-inspection-art-v2103{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  pointer-events:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}
.repo-rcg-inspection-close-v2103,
.repo-rcg-inspection-back-v2103,
.repo-rcg-inspection-up-v2103,
.repo-rcg-inspection-down-v2103{
  all:unset!important;
  position:absolute!important;
  z-index:30!important;
  display:block!important;
  cursor:pointer!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  border-radius:16px!important;
}
.repo-rcg-inspection-close-v2103{
  right:2.8%!important;
  top:1.9%!important;
  width:5.5%!important;
  height:8.7%!important;
  border-radius:50%!important;
}
.repo-rcg-inspection-back-v2103{
  left:47.2%!important;
  bottom:1.0%!important;
  width:7.5%!important;
  height:8.6%!important;
  border-radius:50%!important;
}
.repo-rcg-inspection-up-v2103{
  right:2.4%!important;
  top:17.8%!important;
  width:4.15%!important;
  height:7.15%!important;
}
.repo-rcg-inspection-down-v2103{
  right:2.4%!important;
  bottom:7.6%!important;
  width:4.15%!important;
  height:7.15%!important;
}
.repo-rcg-inspection-close-v2103::before,
.repo-rcg-inspection-close-v2103::after,
.repo-rcg-inspection-back-v2103::before,
.repo-rcg-inspection-back-v2103::after,
.repo-rcg-inspection-up-v2103::before,
.repo-rcg-inspection-up-v2103::after,
.repo-rcg-inspection-down-v2103::before,
.repo-rcg-inspection-down-v2103::after{
  content:''!important;
  position:absolute!important;
  inset:12%!important;
  border-radius:inherit!important;
  opacity:0!important;
  transition:opacity .18s ease, transform .18s ease!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-close-v2103::before,
.repo-rcg-inspection-back-v2103::before,
.repo-rcg-inspection-up-v2103::before,
.repo-rcg-inspection-down-v2103::before{
  background:radial-gradient(circle at center, rgba(255,232,155,.28), rgba(62,231,235,.08) 62%, transparent 78%)!important;
}
.repo-rcg-inspection-close-v2103::after,
.repo-rcg-inspection-back-v2103::after,
.repo-rcg-inspection-up-v2103::after,
.repo-rcg-inspection-down-v2103::after{
  box-shadow:0 0 0 1px rgba(255,214,112,.45), 0 0 18px rgba(98,255,255,.28), inset 0 0 14px rgba(255,223,142,.18)!important;
}
.repo-rcg-inspection-close-v2103:hover::before,
.repo-rcg-inspection-close-v2103:hover::after,
.repo-rcg-inspection-close-v2103:focus-visible::before,
.repo-rcg-inspection-close-v2103:focus-visible::after,
.repo-rcg-inspection-back-v2103:hover::before,
.repo-rcg-inspection-back-v2103:hover::after,
.repo-rcg-inspection-back-v2103:focus-visible::before,
.repo-rcg-inspection-back-v2103:focus-visible::after,
.repo-rcg-inspection-up-v2103:hover::before,
.repo-rcg-inspection-up-v2103:hover::after,
.repo-rcg-inspection-up-v2103:focus-visible::before,
.repo-rcg-inspection-up-v2103:focus-visible::after,
.repo-rcg-inspection-down-v2103:hover::before,
.repo-rcg-inspection-down-v2103:hover::after,
.repo-rcg-inspection-down-v2103:focus-visible::before,
.repo-rcg-inspection-down-v2103:focus-visible::after{
  opacity:1!important;
}

.repo-rcg-inspection-preview-v2103{
  position:absolute!important;
  z-index:12!important;
  left:7.4%!important;
  top:19.5%!important;
  width:36.4%!important;
  height:61.6%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3.4%!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-preview-card-v2103{
  position:relative!important;
  width:39.5%!important;
  min-width:140px!important;
  max-width:230px!important;
  aspect-ratio:0.715!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:1.8%!important;
  background:linear-gradient(180deg, rgba(12,32,44,.18), rgba(8,20,30,.02))!important;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,.42))!important;
  animation:repoRcgInspectFloatV2103 3.8s ease-in-out infinite!important;
}
.repo-rcg-inspection-preview-card-v2103 img{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  border-radius:14px!important;
  border:1px solid rgba(241,214,141,.52)!important;
  box-shadow:0 10px 18px rgba(0,0,0,.32), 0 0 0 1px rgba(14,47,62,.68)!important;
}
.repo-rcg-inspection-preview-card-v2103.is-ready img{box-shadow:0 12px 22px rgba(0,0,0,.36), 0 0 26px rgba(255,218,121,.34), 0 0 0 1px rgba(14,47,62,.68)!important}
.repo-rcg-inspection-preview-card-v2103.is-soon img{box-shadow:0 12px 20px rgba(0,0,0,.34), 0 0 20px rgba(69,240,243,.25), 0 0 0 1px rgba(14,47,62,.68)!important}
.repo-rcg-inspection-preview-glow-v2103{
  position:absolute!important;
  inset:-10%!important;
  border-radius:50%!important;
  background:radial-gradient(circle at center, rgba(65,236,241,.24), rgba(65,236,241,.08) 46%, rgba(255,225,142,.08) 63%, transparent 76%)!important;
  filter:blur(6px)!important;
  opacity:.92!important;
}
.repo-rcg-inspection-preview-fallback-v2103{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
  border-radius:14px!important;
  border:1px solid rgba(241,214,141,.45)!important;
  background:linear-gradient(180deg, rgba(15,37,48,.9), rgba(7,19,28,.92))!important;
  color:#f2d999!important;
  font:800 clamp(28px,2.3vw,44px)/1.05 'Cinzel',serif!important;
  letter-spacing:.08em!important;
}
.repo-rcg-inspection-preview-meta-v2103{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  max-width:88%!important;
  text-align:center!important;
  text-shadow:0 1px 1px rgba(0,0,0,.55)!important;
}
.repo-rcg-inspection-preview-meta-v2103 b{
  color:#f6df9b!important;
  font:800 clamp(16px,1.4vw,24px)/1.08 'Cinzel',serif!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-preview-meta-v2103 small{
  color:rgba(234,223,192,.84)!important;
  font:700 clamp(11px,1vw,15px)/1.15 'Cinzel',serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.repo-rcg-inspection-preview-meta-v2103 span{
  color:#62f5f8!important;
  font:800 clamp(14px,1.25vw,19px)/1 'Cinzel',serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.repo-rcg-inspection-empty-v2103{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:88%!important;
  height:58%!important;
  padding:4% 6%!important;
  border-radius:24px!important;
  background:linear-gradient(180deg, rgba(7,21,30,.34), rgba(6,16,24,.12))!important;
  box-shadow:inset 0 0 0 1px rgba(255,218,126,.12)!important;
}
.repo-rcg-inspection-empty-v2103 b{
  color:#f3db98!important;
  font:800 clamp(16px,1.45vw,24px)/1.06 'Cinzel',serif!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.repo-rcg-inspection-empty-v2103 small{
  color:rgba(225,217,198,.8)!important;
  font:700 clamp(12px,1.02vw,15px)/1.4 'Inter',system-ui,sans-serif!important;
  text-align:center!important;
}

.repo-rcg-inspection-rows-v2103{
  position:absolute!important;
  z-index:15!important;
  left:54.8%!important;
  top:20.2%!important;
  width:36.7%!important;
  height:58.3%!important;
  display:flex!important;
  flex-direction:column!important;
  gap:3.55%!important;
}
.repo-rcg-inspection-slot-v2103{
  flex:1 1 0!important;
  min-height:0!important;
}
.repo-rcg-inspection-row-v2103{
  all:unset!important;
  position:relative!important;
  display:grid!important;
  grid-template-columns:16.3% minmax(0,1fr) 29.4%!important;
  align-items:center!important;
  width:100%!important;
  height:100%!important;
  padding:1.5% 0.5% 1.5% 0.45%!important;
  box-sizing:border-box!important;
  border-radius:16px!important;
  cursor:pointer!important;
  transition:transform .16s ease, filter .16s ease!important;
}
.repo-rcg-inspection-row-v2103:hover,
.repo-rcg-inspection-row-v2103:focus-visible{transform:translateY(-1px)!important}
.repo-rcg-inspection-row-v2103::before{
  content:''!important;
  position:absolute!important;
  inset:4% 1.4%!important;
  border-radius:16px!important;
  opacity:0!important;
  background:linear-gradient(90deg, rgba(97,241,244,.08), rgba(255,215,120,.08), rgba(97,241,244,.06))!important;
  box-shadow:0 0 0 1px rgba(255,214,117,.16), inset 0 0 0 1px rgba(103,240,244,.08), 0 0 18px rgba(97,241,244,.09)!important;
  transition:opacity .18s ease!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-row-v2103:hover::before,
.repo-rcg-inspection-row-v2103:focus-visible::before,
.repo-rcg-inspection-row-v2103.is-selected::before{opacity:1!important}
.repo-rcg-inspection-row-v2103.is-ready::before{box-shadow:0 0 0 1px rgba(255,215,126,.24), inset 0 0 0 1px rgba(255,225,164,.14), 0 0 22px rgba(255,216,120,.16)!important}
.repo-rcg-inspection-row-v2103.is-empty{cursor:default!important}
.repo-rcg-inspection-row-v2103.is-empty::before{display:none!important}

.repo-rcg-inspection-row-thumb-v2103{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:76%!important;
  height:84%!important;
  margin-left:4%!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg, rgba(12,31,43,.66), rgba(7,19,29,.72))!important;
  box-shadow:0 0 0 1px rgba(239,206,128,.26), inset 0 0 0 1px rgba(7,20,28,.5)!important;
}
.repo-rcg-inspection-row-thumb-v2103 img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.repo-rcg-inspection-row-thumb-v2103 i{
  color:#f0d690!important;
  font:800 clamp(12px,1.05vw,16px)/1 'Cinzel',serif!important;
  letter-spacing:.12em!important;
  font-style:normal!important;
  text-transform:uppercase!important;
}
.repo-rcg-inspection-row-name-v2103{
  position:relative!important;
  z-index:2!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
  padding:0 5%!important;
}
.repo-rcg-inspection-row-name-v2103 b{
  display:block!important;
  color:#f6df9d!important;
  font:800 clamp(14px,1.18vw,20px)/1.05 'Cinzel',serif!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-row-name-v2103 small{
  color:rgba(225,219,202,.76)!important;
  font:700 clamp(10px,0.85vw,13px)/1.15 'Cinzel',serif!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-row-time-v2103{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  width:90%!important;
  height:74%!important;
  margin-left:auto!important;
  margin-right:4.5%!important;
  border-radius:14px!important;
  background:linear-gradient(180deg, rgba(11,45,63,.62), rgba(8,30,40,.62))!important;
  box-shadow:0 0 0 1px rgba(239,208,133,.28), inset 0 0 18px rgba(71,233,239,.14)!important;
  text-align:center!important;
}
.repo-rcg-inspection-row-time-v2103 strong{
  color:#63eff3!important;
  font:800 clamp(13px,1.12vw,18px)/1 'Cinzel',serif!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
.repo-rcg-inspection-row-time-v2103 em{
  color:rgba(244,230,194,.78)!important;
  font:700 clamp(9px,0.76vw,12px)/1 'Cinzel',serif!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  font-style:normal!important;
}
.repo-rcg-inspection-row-v2103.is-ready .repo-rcg-inspection-row-time-v2103{
  background:linear-gradient(180deg, rgba(67,49,14,.56), rgba(32,26,11,.62))!important;
  box-shadow:0 0 0 1px rgba(244,211,126,.34), inset 0 0 18px rgba(244,211,126,.16), 0 0 18px rgba(244,211,126,.12)!important;
}
.repo-rcg-inspection-row-v2103.is-ready .repo-rcg-inspection-row-time-v2103 strong{color:#ffe2a1!important}
.repo-rcg-inspection-row-v2103.is-soon .repo-rcg-inspection-row-time-v2103 strong{color:#8cf8fb!important}
.repo-rcg-inspection-row-time-v2103.is-empty,
.repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-time-v2103{
  background:linear-gradient(180deg, rgba(12,31,43,.25), rgba(9,22,31,.18))!important;
  box-shadow:0 0 0 1px rgba(239,208,133,.16), inset 0 0 12px rgba(255,255,255,.03)!important;
}

.repo-rcg-inspection-status-v2103{
  position:absolute!important;
  z-index:16!important;
  left:56.1%!important;
  bottom:8.6%!important;
  width:35.2%!important;
  min-height:3.8%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  color:#e8d39a!important;
  font:800 clamp(11px,0.94vw,14px)/1.1 'Cinzel',serif!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  text-shadow:0 1px 1px rgba(0,0,0,.56)!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-scroll-thumb-v2103{
  position:absolute!important;
  z-index:18!important;
  right:2.95%!important;
  width:2.25%!important;
  min-height:7%!important;
  border-radius:999px!important;
  background:linear-gradient(180deg, rgba(92,240,244,.78), rgba(29,119,139,.84))!important;
  box-shadow:0 0 0 1px rgba(255,219,136,.38), 0 0 16px rgba(71,236,241,.16), inset 0 0 12px rgba(255,255,255,.16)!important;
  opacity:0!important;
  transition:top .18s ease, height .18s ease, opacity .18s ease!important;
}

@keyframes repoRcgInspectFloatV2103{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-6px)}
}


/* ========================================================================
   RCG INSPECTION v21.04 — MODAL/TOP-LAYER OPEN FIX
   The grading shop itself is a <dialog>. The inspection UI therefore lives
   inside that dialog, just like Submit and Collect, so it can actually render.
   ======================================================================== */
.repo-rcg-shop-dialog-v2071 > .repo-rcg-inspection-overlay-v2103{
  position:absolute!important;
  inset:0!important;
  z-index:6800!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
}
.repo-rcg-shop-dialog-v2071 > .repo-rcg-inspection-overlay-v2103.is-open{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.repo-rcg-shop-dialog-v2071 > .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-frame-v2103{
  pointer-events:auto!important;
}
/* Make sure the two entry hotspots beat the atmosphere layers. */
.repo-rcg-shop-scene-v2071.interior .repo-rcg-grading-entry-v2103{
  z-index:240!important;
  pointer-events:auto!important;
}


/* ========================================================================
   RCG INSPECTION v21.05 — ARTWORK-LOCKED GEOMETRY
   The live content is positioned to the actual decorative boxes in the
   1662×946 supplied inspection artwork. No floating text/cards.
   ======================================================================== */

/* Selected inspection preview: compact card hovering over the inspection bed. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-v2103{
  left:24.6%!important;
  top:39.0%!important;
  width:12.0%!important;
  height:19.6%!important;
  gap:.8%!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-card-v2103{
  width:62%!important;
  min-width:0!important;
  max-width:none!important;
  aspect-ratio:.715!important;
  padding:0!important;
  border-radius:5px!important;
  background:transparent!important;
  filter:drop-shadow(0 6px 9px rgba(0,0,0,.42))!important;
  animation:repoRcgInspectFloatV2103 3.8s ease-in-out infinite!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-card-v2103 img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  border-radius:4px!important;
  border:1px solid rgba(236,204,122,.52)!important;
  box-shadow:0 5px 9px rgba(0,0,0,.30),0 0 0 1px rgba(21,66,77,.34)!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-glow-v2103{
  inset:-11%!important;
  opacity:.42!important;
  filter:blur(8px)!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-meta-v2103{
  width:100%!important;
  max-width:100%!important;
  min-height:18%!important;
  gap:1px!important;
  padding:.9% 2.2%!important;
  box-sizing:border-box!important;
  border-radius:6px!important;
  background:rgba(3,15,22,.28)!important;
  box-shadow:inset 0 0 0 1px rgba(233,202,124,.08)!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-meta-v2103 b{
  font:800 clamp(7px,.52vw,10px)/1.02 'Cinzel',serif!important;
  letter-spacing:.05em!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-meta-v2103 small{
  font:700 clamp(4px,.34vw,6px)/1.02 'Cinzel',serif!important;
  letter-spacing:.065em!important;
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-preview-meta-v2103 span{
  font:800 clamp(6px,.46vw,8px)/1 'Cinzel',serif!important;
}

/* The right queue host now covers ONLY the four illustrated queue rows. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-rows-v2103{
  left:57.75%!important;
  top:27.15%!important;
  width:32.15%!important;
  height:47.2%!important;
  display:block!important;
  overflow:visible!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103{
  position:absolute!important;
  left:0!important;
  width:100%!important;
  height:20.5%!important;
  min-height:0!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-1{top:0!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-2{top:25.35%!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-3{top:50.70%!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-4{top:76.05%!important}

.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  padding:0!important;
  border-radius:0!important;
  transform:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:hover,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:focus-visible{
  transform:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103::before{
  inset:1% 0!important;
  border-radius:8px!important;
  background:linear-gradient(90deg,rgba(63,222,229,.06),rgba(255,217,124,.045),rgba(63,222,229,.05))!important;
  box-shadow:0 0 13px rgba(70,228,233,.08),inset 0 0 0 1px rgba(255,216,120,.10)!important;
}

/* Thumbnail sits inside the small gold square. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103{
  position:absolute!important;
  left:1.9%!important;
  top:8.5%!important;
  width:14.2%!important;
  height:82%!important;
  margin:0!important;
  border-radius:3px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  box-shadow:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103 img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:auto!important;
  height:90%!important;
  max-width:86%!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  border-radius:2px!important;
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.52))!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103 i{
  font-size:8px!important;
}

/* Name and rarity sit inside the long centre plaque. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103{
  position:absolute!important;
  left:22.8%!important;
  top:22.5%!important;
  width:40.0%!important;
  height:56%!important;
  padding:0 2.8%!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  text-align:center!important;
  overflow:hidden!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 b{
  width:100%!important;
  color:#f2d78e!important;
  font:800 clamp(9px,.78vw,13px)/1.04 'Cinzel',serif!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 small{
  width:100%!important;
  color:rgba(218,208,184,.82)!important;
  font:700 clamp(6px,.50vw,8px)/1.05 'Cinzel',serif!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Timer text lives inside the cyan TIME LEFT box — no generated panel. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103{
  position:absolute!important;
  left:69.7%!important;
  top:21.5%!important;
  width:27.4%!important;
  height:57%!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 strong{
  color:#6ee9ed!important;
  font:800 clamp(9px,.82vw,13px)/1 'Cinzel',serif!important;
  letter-spacing:.04em!important;
  white-space:nowrap!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 em{
  color:rgba(234,218,178,.84)!important;
  font:700 clamp(5.5px,.44vw,7px)/1.02 'Cinzel',serif!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-ready .repo-rcg-inspection-row-time-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103.is-empty,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-time-v2103{
  background:transparent!important;
  box-shadow:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-ready .repo-rcg-inspection-row-time-v2103 strong{
  color:#ffe1a0!important;
  text-shadow:0 0 8px rgba(255,218,120,.22)!important;
}

/* Empty illustrated bays stay visually empty instead of adding UI text. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-thumb-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-name-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-time-v2103{
  visibility:hidden!important;
}

/* Remove the stray footer line that was sitting outside the supplied artwork. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-status-v2103{
  display:none!important;
}

/* Scroll thumb aligns with the actual narrow right-hand track. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-scroll-thumb-v2103{
  right:2.75%!important;
  width:1.0%!important;
  border-radius:999px!important;
  box-shadow:0 0 8px rgba(70,232,236,.12)!important;
}

@media(max-width:900px){
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 b{font-size:8px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 small{font-size:5.5px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 strong{font-size:8px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 em{font-size:5.5px!important}
}


/* ========================================================================
   RCG INSPECTION v21.08 — PIXEL-LOCKED QUEUE GEOMETRY
   All queue content is positioned directly against the 1662×946 artwork.
   This removes nested percentage drift from the previous implementations.
   ======================================================================== */

/* Make the queue host cover the entire artwork so every coordinate below
   maps directly to the original image. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-rows-v2103{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  display:block!important;
  overflow:visible!important;
  pointer-events:none!important;
}

.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103{
  --rcg-row-offset:0%;
  position:absolute!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-1{--rcg-row-offset:0%!important;top:0!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-2{--rcg-row-offset:11.945%!important;top:0!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-3{--rcg-row-offset:23.890%!important;top:0!important}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-slot-v2103.slot-4{--rcg-row-offset:35.835%!important;top:0!important}

.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103{
  all:unset!important;
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  box-sizing:border-box!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  border:0!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:hover,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:focus,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:focus-visible,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:active{
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  border-color:transparent!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty{
  cursor:default!important;
  pointer-events:none!important;
}

/* Keep hover/selection restrained to the three illustrated cells only. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103::before{
  content:''!important;
  position:absolute!important;
  left:57.75%!important;
  top:calc(27.55% + var(--rcg-row-offset))!important;
  width:32.25%!important;
  height:10.1%!important;
  border-radius:8px!important;
  opacity:0!important;
  background:linear-gradient(90deg,rgba(64,223,230,.045),rgba(255,218,125,.03),rgba(64,223,230,.04))!important;
  box-shadow:0 0 13px rgba(70,228,233,.07),inset 0 0 0 1px rgba(255,216,120,.08)!important;
  transition:opacity .15s ease!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:hover::before,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103:focus-visible::before,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-selected::before{
  opacity:1!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty::before{
  display:none!important;
}

/* Exact thumbnail frame: approximately x=966..1055, y=263..351 in source art. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103{
  position:absolute!important;
  left:59.08%!important;
  top:calc(28.62% + var(--rcg-row-offset))!important;
  width:5.34%!important;
  height:9.22%!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:3px!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103 img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  display:block!important;
  width:auto!important;
  height:88%!important;
  max-width:84%!important;
  max-height:88%!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  border-radius:2px!important;
  filter:drop-shadow(0 3px 4px rgba(0,0,0,.48))!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-thumb-v2103 i{
  font-size:8px!important;
}

/* Exact centre plaque: approximately x=1082..1289, y=284..343. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103{
  position:absolute!important;
  left:65.92%!important;
  top:calc(30.62% + var(--rcg-row-offset))!important;
  width:12.85%!important;
  height:6.64%!important;
  padding:0 1.1%!important;
  margin:0!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  text-align:center!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 b{
  display:block!important;
  width:100%!important;
  margin:0!important;
  color:#f3d88f!important;
  font:800 clamp(11px,.9vw,15px)/1.02 'Cinzel',serif!important;
  letter-spacing:.035em!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 small{
  display:block!important;
  width:100%!important;
  margin:0!important;
  color:rgba(220,211,188,.82)!important;
  font:700 clamp(6.5px,.5vw,8.5px)/1.04 'Cinzel',serif!important;
  letter-spacing:.075em!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Exact cyan timer cell: approximately x=1315..1495, y=278..346. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103{
  position:absolute!important;
  left:79.82%!important;
  top:calc(30.02% + var(--rcg-row-offset))!important;
  width:11.10%!important;
  height:7.38%!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  text-align:center!important;
  pointer-events:none!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 strong{
  display:block!important;
  margin:0!important;
  color:#78eef2!important;
  font:800 clamp(11px,.92vw,15px)/1 'Cinzel',serif!important;
  letter-spacing:.035em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 em{
  display:block!important;
  margin:0!important;
  color:rgba(238,221,181,.84)!important;
  font:700 clamp(6.5px,.5vw,8.5px)/1 'Cinzel',serif!important;
  letter-spacing:.06em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-ready .repo-rcg-inspection-row-time-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103.is-empty,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-time-v2103{
  background:transparent!important;
  box-shadow:none!important;
}

/* Empty rows should leave the actual illustrated boxes untouched. */
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-thumb-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-name-v2103,
.repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-v2103.is-empty .repo-rcg-inspection-row-time-v2103{
  visibility:hidden!important;
}

@media(max-width:900px){
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 b{font-size:9px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-name-v2103 small{font-size:5.5px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 strong{font-size:9px!important}
  .repo-rcg-inspection-overlay-v2103 .repo-rcg-inspection-row-time-v2103 em{font-size:5.5px!important}
}


/* ========================================================================
   RCG SLAB BINDER v21.12 — PLACE / RE-HIDE INTERACTION
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-slot{
  cursor:pointer!important;
  outline:0!important;
}
#repoRcgBinderDialog .repo-rcg-slot:focus-visible{
  filter:drop-shadow(0 0 9px rgba(86,226,232,.36))!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-place-target{
  border-radius:7px!important;
  box-shadow:inset 0 0 0 1px rgba(101,229,234,.24),0 0 14px rgba(70,219,226,.08)!important;
  animation:repoRcgPlaceTargetPulseV2112 1.55s ease-in-out infinite!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-place-target:hover{
  box-shadow:inset 0 0 0 2px rgba(111,239,242,.58),0 0 22px rgba(69,226,232,.22)!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-saving{pointer-events:none!important}

.repo-rcg-slot-slab-visual{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.44))!important;
  transition:transform .17s ease,filter .17s ease!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled:hover .repo-rcg-slot-slab-visual{
  transform:translateY(-2px) scale(1.015)!important;
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.48)) drop-shadow(0 0 7px rgba(87,220,225,.14))!important;
}
.repo-rcg-slot-slab-case{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  z-index:3!important;
  pointer-events:none!important;
}
.repo-rcg-slot-slab-card-art{
  position:absolute!important;
  left:14.2%!important;
  top:30.7%!important;
  width:71.7%!important;
  height:62.7%!important;
  z-index:1!important;
  overflow:hidden!important;
  border-radius:2px!important;
  background:#091522!important;
}
.repo-rcg-slot-slab-card-art img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.repo-rcg-slot-slab-grade{
  position:absolute!important;
  left:10.8%!important;
  right:10.8%!important;
  top:7.1%!important;
  height:14.3%!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding:0 5%!important;
  color:#20364a!important;
  text-align:right!important;
  pointer-events:none!important;
}
.repo-rcg-slot-slab-grade b{
  color:#17314a!important;
  font:950 clamp(5px,.48vw,8px)/1 Georgia,serif!important;
  letter-spacing:.04em!important;
}
.repo-rcg-slot-slab-grade small{
  max-width:63%!important;
  margin-top:1px!important;
  color:#6f5937!important;
  font:900 clamp(3px,.27vw,4.7px)/1 Arial,sans-serif!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-slot-hover-action,
.repo-rcg-slot-place-action{
  position:absolute!important;
  left:50%!important;
  bottom:5.5%!important;
  z-index:8!important;
  transform:translate(-50%,5px)!important;
  padding:4px 8px!important;
  border:1px solid rgba(230,194,100,.52)!important;
  border-radius:999px!important;
  background:rgba(5,20,31,.86)!important;
  color:#f0d68e!important;
  box-shadow:0 4px 10px rgba(0,0,0,.42),0 0 9px rgba(64,218,225,.08)!important;
  font:900 clamp(4px,.35vw,6px)/1 Arial,sans-serif!important;
  letter-spacing:.09em!important;
  white-space:nowrap!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:opacity .16s ease,transform .16s ease!important;
}
.repo-rcg-slot-place-action{
  opacity:.75!important;
  color:#8ce8eb!important;
  border-color:rgba(84,220,226,.44)!important;
  animation:repoRcgPlaceLabelPulseV2112 1.45s ease-in-out infinite!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled:hover .repo-rcg-slot-hover-action,
#repoRcgBinderDialog .repo-rcg-slot.is-filled:focus-visible .repo-rcg-slot-hover-action{
  opacity:1!important;
  transform:translate(-50%,0)!important;
}
#repoRcgBinderDialog .repo-rcg-empty-slot-template{
  opacity:.20!important;
  filter:grayscale(.14) brightness(.72)!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-place-target .repo-rcg-empty-slot-template{
  opacity:.34!important;
  filter:brightness(.92) drop-shadow(0 0 7px rgba(79,222,228,.22))!important;
}

.repo-rcg-hidden-slab-card{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  box-sizing:border-box!important;
  cursor:pointer!important;
  color:inherit!important;
  font:inherit!important;
  text-align:inherit!important;
}
.repo-rcg-hidden-slab-card:disabled{cursor:wait!important;opacity:.74!important}
.repo-rcg-hidden-slab-card.is-selected-for-placement{
  border-color:rgba(91,229,234,.72)!important;
  background:linear-gradient(180deg,rgba(20,55,71,.94),rgba(7,28,41,.97))!important;
  box-shadow:inset 0 0 19px rgba(55,215,222,.09),0 8px 18px rgba(0,0,0,.36),0 0 17px rgba(61,219,226,.16)!important;
}
.repo-rcg-hidden-place-label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:18px!important;
  margin-top:7px!important;
  border-top:1px solid rgba(211,174,82,.22)!important;
  padding-top:6px!important;
  box-sizing:border-box!important;
  color:#7cdde1!important;
  font:900 6.5px/1 Arial,sans-serif!important;
  letter-spacing:.085em!important;
  text-align:center!important;
}
.repo-rcg-hidden-slab-card.is-selected-for-placement .repo-rcg-hidden-place-label{
  color:#f1d585!important;
  text-shadow:0 0 7px rgba(229,187,80,.2)!important;
}

@keyframes repoRcgPlaceTargetPulseV2112{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.08)}
}
@keyframes repoRcgPlaceLabelPulseV2112{
  0%,100%{opacity:.62}
  50%{opacity:1}
}


/* ========================================================================
   RCG SLAB BINDER v21.13 — CARD BINDER MECHANICS
   Mirrors Hidden Cards: right-click displayed slab to hide; RESTORE button
   automatically places a hidden slab into the current spread.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-slot.is-place-target{
  box-shadow:none!important;
  animation:none!important;
}
#repoRcgBinderDialog .repo-rcg-slot-place-action,
#repoRcgBinderDialog .repo-rcg-slot-hover-action{
  display:none!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled{
  cursor:context-menu!important;
}
#repoRcgBinderDialog .repo-rcg-slot:not(.is-filled){
  cursor:default!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled:hover .repo-rcg-slot-slab-visual{
  transform:translateY(-1px) scale(1.008)!important;
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.48)) drop-shadow(0 0 7px rgba(87,220,225,.10))!important;
}

#repoRcgHiddenPanel.repo-rcg-hidden-storage .repo-rcg-panel-body{
  gap:9px!important;
  padding:12px!important;
}
.repo-rcg-hidden-storage-subtitle{
  color:#9eb0be!important;
  font:800 8px/1.25 Arial,sans-serif!important;
  letter-spacing:.035em!important;
  text-align:center!important;
}
.repo-rcg-hidden-storage-tools{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
}
.repo-rcg-hidden-storage-search{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  height:30px!important;
  padding:0 10px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(210,171,77,.34)!important;
  border-radius:5px!important;
  outline:none!important;
  background:linear-gradient(180deg,rgba(5,18,29,.96),rgba(8,24,36,.96))!important;
  color:#e9d7a2!important;
  font:800 8px/1 Arial,sans-serif!important;
  box-shadow:inset 0 0 10px rgba(0,0,0,.32)!important;
}
.repo-rcg-hidden-storage-search::placeholder{color:#708494!important}
.repo-rcg-hidden-storage-search:focus{
  border-color:rgba(93,220,226,.58)!important;
  box-shadow:inset 0 0 10px rgba(0,0,0,.28),0 0 10px rgba(75,211,218,.10)!important;
}
.repo-rcg-hidden-storage-results{
  min-height:12px!important;
  color:#778c9d!important;
  font:800 6.5px/1.15 Arial,sans-serif!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  text-transform:uppercase!important;
}
#repoRcgHiddenPanel .repo-rcg-hidden-slab-list{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
}
#repoRcgHiddenPanel .repo-rcg-hidden-slab-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  padding:7px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(207,169,77,.28)!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(18,38,57,.88),rgba(7,20,33,.94))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 6px 13px rgba(0,0,0,.26)!important;
  cursor:default!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
#repoRcgHiddenPanel .repo-rcg-hidden-slab-card:hover,
#repoRcgHiddenPanel .repo-rcg-hidden-slab-card:focus-visible{
  transform:translateY(-2px)!important;
  outline:none!important;
  border-color:rgba(81,218,225,.42)!important;
  box-shadow:inset 0 0 15px rgba(56,211,220,.06),0 8px 18px rgba(0,0,0,.32),0 0 12px rgba(59,207,216,.08)!important;
}
#repoRcgHiddenPanel .repo-rcg-hidden-slab-visual{
  width:70%!important;
  margin:0 auto 6px!important;
}
.repo-rcg-hidden-restore{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:24px!important;
  margin-top:7px!important;
  padding:5px 5px!important;
  box-sizing:border-box!important;
  border:1px solid rgba(89,214,220,.38)!important;
  border-radius:5px!important;
  background:linear-gradient(180deg,rgba(14,54,69,.92),rgba(7,31,43,.96))!important;
  color:#8ce7ea!important;
  font:950 6.5px/1 Arial,sans-serif!important;
  letter-spacing:.075em!important;
  text-align:center!important;
  cursor:pointer!important;
  box-shadow:inset 0 0 10px rgba(54,216,224,.05),0 3px 7px rgba(0,0,0,.25)!important;
  transition:filter .15s ease,border-color .15s ease,box-shadow .15s ease!important;
}
.repo-rcg-hidden-restore:hover,
.repo-rcg-hidden-restore:focus-visible{
  outline:none!important;
  filter:brightness(1.12)!important;
  border-color:rgba(107,235,239,.7)!important;
  box-shadow:inset 0 0 12px rgba(65,222,229,.09),0 4px 9px rgba(0,0,0,.3),0 0 9px rgba(68,220,226,.10)!important;
}
.repo-rcg-hidden-restore:disabled{opacity:.58!important;cursor:wait!important}
.repo-rcg-hidden-storage-help{
  padding:8px 8px 2px!important;
  border-top:1px solid rgba(211,174,82,.18)!important;
  color:#758a9a!important;
  font:700 6.4px/1.35 Arial,sans-serif!important;
  text-align:center!important;
}
.repo-rcg-hidden-storage-help b{color:#d8bd77!important;font-weight:900!important}
#repoRcgHiddenPanel .repo-rcg-hidden-slab-card.is-selected-for-placement,
#repoRcgHiddenPanel .repo-rcg-hidden-place-label{
  display:none!important;
}
@media(max-width:900px){
  #repoRcgHiddenPanel .repo-rcg-hidden-slab-list{grid-template-columns:1fr!important}
}


/* ========================================================================
   RCG SLAB BINDER v21.14 — USE THE REAL HIDDEN CARDS DRAWER
   No custom mini-sidebar imitation: same drawer classes/UI as card binder.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-hidden-cards-clone.repo-binder-storage{
  position:absolute!important;
  z-index:260!important;
  right:24px!important;
  top:96px!important;
  bottom:28px!important;
  width:min(390px,31vw)!important;
  max-width:390px!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-cards-clone.repo-binder-storage.is-open{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateX(0)!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-cards-clone .repo-binder-storage-filters{
  grid-template-columns:repeat(4,1fr)!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-cards-clone .repo-binder-storage-card{
  cursor:default!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-cards-clone .repo-binder-storage-card-image{
  min-height:170px!important;
}
#repoRcgBinderDialog .repo-rcg-storage-slab-preview{
  position:relative!important;
  width:84%!important;
  aspect-ratio:1032/1523!important;
  margin:auto!important;
  pointer-events:none!important;
}
#repoRcgBinderDialog .repo-rcg-storage-slab-preview .repo-rcg-slot-slab-visual{
  position:absolute!important;
  inset:0!important;
}
#repoRcgBinderDialog .repo-rcg-storage-slab-cert{
  display:block!important;
  min-height:12px!important;
  margin:-1px 2px 6px!important;
  color:#7998ad!important;
  font:800 7px/1.15 Arial,sans-serif!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-count-badge{
  position:absolute!important;
  right:5px!important;
  bottom:5px!important;
  min-width:18px!important;
  height:18px!important;
  padding:0 4px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(218,176,75,.7)!important;
  border-radius:999px!important;
  background:#071623!important;
  color:#85e6e9!important;
  font:900 8px/1 Arial,sans-serif!important;
  font-style:normal!important;
  box-shadow:0 2px 7px rgba(0,0,0,.5)!important;
}

/* Placed slabs must LOOK placed. The source case is semi-opaque, so the
   card art is deliberately above the translucent case window, with the frame
   and label remaining visible around it. */
#repoRcgBinderDialog .repo-rcg-slot-slab-case{
  z-index:2!important;
}
#repoRcgBinderDialog .repo-rcg-slot-slab-card-art{
  z-index:4!important;
  left:11.9%!important;
  top:28.3%!important;
  width:76.2%!important;
  height:65.0%!important;
  border-radius:2.5%!important;
  box-shadow:inset 0 0 0 1px rgba(237,246,255,.34)!important;
}
#repoRcgBinderDialog .repo-rcg-slot-slab-card-art::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:linear-gradient(112deg,rgba(255,255,255,.08),transparent 22%,transparent 72%,rgba(255,255,255,.05))!important;
}
#repoRcgBinderDialog .repo-rcg-slot-slab-grade{
  z-index:5!important;
}
#repoRcgBinderDialog .repo-rcg-slot-slab-visual,
#repoRcgBinderDialog .repo-rcg-slot-slab-visual *{
  pointer-events:none!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled{
  cursor:context-menu!important;
}
#repoRcgBinderDialog .repo-rcg-hit-zone{
  z-index:6!important;
}
#repoRcgBinderDialog .repo-rcg-grid,
#repoRcgBinderDialog .repo-rcg-slot{
  z-index:10!important;
}
@media(max-width:900px){
  #repoRcgBinderDialog .repo-rcg-hidden-cards-clone.repo-binder-storage{
    right:8px!important;top:64px!important;bottom:14px!important;width:min(360px,88%)!important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.15 — FUNCTIONAL HIDDEN DRAWER + VISIBLE PLACED SLABS
   ======================================================================== */
#repoRcgBinderDialog #repoRcgHiddenBtn{
  position:relative!important;
  z-index:900!important;
  pointer-events:auto!important;
}
#repoRcgBinderDialog #repoRcgHiddenBtn img{pointer-events:none!important}
#repoRcgBinderDialog #repoRcgHiddenPanel.repo-binder-storage{
  z-index:2200!important;
  display:flex!important;
  right:28px!important;
  top:92px!important;
  bottom:26px!important;
  width:min(390px,31vw)!important;
  max-width:390px!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  transform:translateX(calc(100% + 34px))!important;
}
#repoRcgBinderDialog #repoRcgHiddenPanel.repo-binder-storage.is-open{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateX(0)!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled .repo-rcg-slab-wrap{
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled .repo-rcg-slot-slab-visual{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  z-index:20!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled .repo-rcg-slot-slab-card-art{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  z-index:24!important;
}
#repoRcgBinderDialog .repo-rcg-slot.is-filled .repo-rcg-slot-slab-case{z-index:22!important}
#repoRcgBinderDialog .repo-rcg-slot.is-filled .repo-rcg-slot-slab-grade{z-index:26!important}
@media(max-width:900px){
  #repoRcgBinderDialog #repoRcgHiddenPanel.repo-binder-storage{
    right:8px!important;top:64px!important;bottom:14px!important;width:min(360px,88%)!important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.16 — HARD FIX VISUALS / REAL HIDDEN CARDS DRAWER
   ======================================================================== */
#repoRcgBinderDialog #repoRcgHiddenPanelLegacyV2116{display:none!important}
#repoRcgBinderDialog .repo-rcg-v2116-sidebar-live,
#repoRcgBinderDialog .repo-rcg-v2116-sidebar-live .repo-rcg-sidebar-actions{
  position:relative!important;
  z-index:4000!important;
  pointer-events:auto!important;
}
#repoRcgBinderDialog #repoRcgHiddenBtn{
  position:relative!important;
  z-index:4001!important;
  pointer-events:auto!important;
  isolation:isolate!important;
}
#repoRcgBinderDialog #repoRcgHiddenBtn *{pointer-events:none!important}

#repoRcgBinderDialog #repoRcgSlabStorageDrawerV2116.repo-binder-storage{
  position:absolute!important;
  z-index:5000!important;
  right:22px!important;
  top:82px!important;
  bottom:24px!important;
  width:min(390px,31vw)!important;
  max-width:390px!important;
}
#repoRcgBinderDialog #repoRcgSlabStorageDrawerV2116.repo-binder-storage.is-open{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  transform:translateX(0)!important;
}
#repoRcgBinderDialog #repoRcgSlabStorageDrawerV2116 .repo-binder-storage-filters{
  grid-template-columns:repeat(4,1fr)!important;
}

#repoRcgBinderDialog .repo-rcg-v2116-filled{
  cursor:context-menu!important;
  z-index:30!important;
}
#repoRcgBinderDialog .repo-rcg-v2116-filled .repo-rcg-slab-wrap{
  overflow:visible!important;
  z-index:31!important;
}
.repo-rcg-v2116-slab{
  position:absolute!important;
  inset:0!important;
  z-index:40!important;
  width:100%!important;
  height:100%!important;
  pointer-events:none!important;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.40))!important;
  transition:transform .16s ease,filter .16s ease!important;
}
#repoRcgBinderDialog .repo-rcg-v2116-filled:hover .repo-rcg-v2116-slab{
  transform:translateY(-2px) scale(1.012)!important;
  filter:drop-shadow(0 7px 10px rgba(0,0,0,.46)) drop-shadow(0 0 8px rgba(64,218,225,.13))!important;
}
.repo-rcg-v2116-case{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  pointer-events:none!important;
}
.repo-rcg-v2116-art{
  position:absolute!important;
  left:10.65%!important;
  top:28.15%!important;
  width:78.7%!important;
  height:65.15%!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  border-radius:2.2%!important;
  background:#07121d!important;
  box-shadow:inset 0 0 0 1px rgba(232,244,255,.42)!important;
}
.repo-rcg-v2116-art img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  filter:none!important;
}
.repo-rcg-v2116-art span{
  color:#c69d49!important;
  font:900 18px/1 Georgia,serif!important;
  letter-spacing:.1em!important;
}
.repo-rcg-v2116-label{
  position:absolute!important;
  left:12.8%!important;
  top:5.9%!important;
  width:74.4%!important;
  height:13.6%!important;
  z-index:5!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  gap:1px 6px!important;
  box-sizing:border-box!important;
  padding:3.4% 3.8% 2.2%!important;
  color:#20384d!important;
  text-shadow:0 1px rgba(255,255,255,.45)!important;
}
.repo-rcg-v2116-label strong{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  color:#20384d!important;
  font:900 clamp(5px,.44vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-v2116-label b{
  grid-column:2!important;
  grid-row:1!important;
  color:#7a5617!important;
  font:900 clamp(5px,.43vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
}
.repo-rcg-v2116-label small{
  grid-column:1/3!important;
  grid-row:2!important;
  justify-self:center!important;
  max-width:70%!important;
  color:#627281!important;
  font:800 clamp(3px,.25vw,4.5px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.repo-rcg-v2116-label i{
  position:absolute!important;
  left:3.2%!important;
  bottom:4%!important;
  width:19%!important;
  height:17%!important;
  opacity:.72!important;
  background:repeating-linear-gradient(90deg,#26303a 0 1px,transparent 1px 2px,#26303a 2px 4px,transparent 4px 5px)!important;
}
.repo-rcg-v2116-glass{
  position:absolute!important;
  left:10.65%!important;
  top:28.15%!important;
  width:78.7%!important;
  height:65.15%!important;
  z-index:6!important;
  border-radius:2.2%!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),inset 0 13px 18px rgba(255,255,255,.045)!important;
  background:linear-gradient(112deg,rgba(255,255,255,.06),transparent 24%,transparent 72%,rgba(255,255,255,.035))!important;
  pointer-events:none!important;
}

#repoRcgSlabStorageDrawerV2116 .repo-rcg-v2116-storage-image{
  min-height:168px!important;
  padding:7px!important;
}
#repoRcgSlabStorageDrawerV2116 .repo-rcg-v2116-slab.is-mini{
  position:relative!important;
  inset:auto!important;
  width:92px!important;
  height:136px!important;
  margin:auto!important;
  transform:none!important;
}
#repoRcgSlabStorageDrawerV2116 .repo-rcg-v2116-slab.is-mini .repo-rcg-v2116-label strong{
  font-size:4px!important;
}
#repoRcgSlabStorageDrawerV2116 .repo-rcg-v2116-slab.is-mini .repo-rcg-v2116-label b{
  font-size:4px!important;
}
#repoRcgSlabStorageDrawerV2116 .repo-rcg-v2116-slab.is-mini .repo-rcg-v2116-label small{
  font-size:2.7px!important;
}
#repoRcgSlabStorageDrawerV2116 .repo-binder-storage-card{
  cursor:default!important;
}

@media(max-width:980px){
  #repoRcgBinderDialog #repoRcgSlabStorageDrawerV2116.repo-binder-storage{
    right:8px!important;top:60px!important;bottom:12px!important;width:min(370px,88vw)!important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.17 — ROOT FIX
   Direct placed-slab layer; immune to legacy wrap repaints.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-slot{
  position:relative!important;
}
/* Hide every older placed-slab visual. The new direct child below is the only
   displayed slab layer. Empty slot artwork remains untouched. */
#repoRcgBinderDialog .repo-rcg-slot .repo-rcg-slab-wrap > .repo-rcg-v2116-slab,
#repoRcgBinderDialog .repo-rcg-slot .repo-rcg-slab-wrap > .repo-rcg-slot-slab-visual{
  display:none!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:999!important;
  display:block!important;
  overflow:hidden!important;
  pointer-events:none!important;
  border-radius:4px!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  filter:drop-shadow(0 4px 7px rgba(0,0,0,.34))!important;
}
/* The binder artwork already contains the clear RCG slab shell. We only fill
   its card window + label so the card stays bright and visible. */
#repoRcgBinderDialog .repo-rcg-v2117-slot-art{
  position:absolute!important;
  left:10.8%!important;
  top:28.35%!important;
  width:78.4%!important;
  height:64.8%!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  border-radius:2.2%!important;
  background:rgba(7,16,25,.96)!important;
  box-shadow:inset 0 0 0 1px rgba(240,248,255,.36)!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-art img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  padding:0!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-art span{
  color:#d2ae60!important;
  font:900 14px/1 Georgia,serif!important;
  letter-spacing:.12em!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-label{
  position:absolute!important;
  left:11.5%!important;
  top:5.55%!important;
  width:77%!important;
  height:14.2%!important;
  z-index:5!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  column-gap:5px!important;
  row-gap:1px!important;
  box-sizing:border-box!important;
  padding:3.2% 3.2% 2.4%!important;
  overflow:hidden!important;
  color:#20384d!important;
  text-shadow:0 1px rgba(255,255,255,.4)!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-label strong{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  color:#20384d!important;
  font:900 clamp(5px,.44vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-label b{
  grid-column:2!important;
  grid-row:1!important;
  color:#6e4f19!important;
  font:900 clamp(5px,.43vw,8px)/1 Arial,sans-serif!important;
  letter-spacing:.055em!important;
  white-space:nowrap!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-label small{
  grid-column:1/3!important;
  grid-row:2!important;
  justify-self:center!important;
  max-width:72%!important;
  color:#667581!important;
  font:800 clamp(3px,.25vw,4.5px)/1 Arial,sans-serif!important;
  letter-spacing:.06em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-label i{
  position:absolute!important;
  left:3%!important;
  bottom:5%!important;
  width:18%!important;
  height:16%!important;
  opacity:.72!important;
  background:repeating-linear-gradient(90deg,#28313a 0 1px,transparent 1px 2px,#28313a 2px 4px,transparent 4px 5px)!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-slot-glass{
  position:absolute!important;
  left:10.8%!important;
  top:28.35%!important;
  width:78.4%!important;
  height:64.8%!important;
  z-index:6!important;
  border-radius:2.2%!important;
  pointer-events:none!important;
  background:linear-gradient(112deg,rgba(255,255,255,.045),transparent 22%,transparent 73%,rgba(255,255,255,.025))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.19),inset 0 10px 14px rgba(255,255,255,.025)!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-filled{
  cursor:context-menu!important;
}
#repoRcgBinderDialog .repo-rcg-v2117-filled:hover .repo-rcg-v2117-slot-overlay{
  transform:translateY(-1px) scale(1.008)!important;
  filter:drop-shadow(0 5px 8px rgba(0,0,0,.38)) drop-shadow(0 0 6px rgba(71,218,224,.10))!important;
}
/* Never let the storage list become an eternal loading placeholder again. */
#repoRcgSlabStorageDrawerV2116 .repo-binder-storage-empty{
  min-height:150px!important;
}


/* ========================================================================
   RCG SLAB BINDER v21.18 — CONSTRUCTED BINDER
   No binder background image: leather/page/slots are genuine DOM/CSS.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-v2118-legacy-book-hidden{display:none!important}
#repoRcgBinderDialog .repo-rcg-binder-stage{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:0!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-book{
  position:relative!important;
  width:min(100%,1160px)!important;
  aspect-ratio:1.56!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 7.8% minmax(0,1fr)!important;
  align-items:stretch!important;
  padding:1.35%!important;
  box-sizing:border-box!important;
  border-radius:15px 15px 12px 12px!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.035),transparent 5%,transparent 95%,rgba(255,255,255,.025)),
    repeating-linear-gradient(7deg,rgba(255,255,255,.018) 0 1px,rgba(0,0,0,.02) 1px 3px),
    linear-gradient(180deg,#162d47 0%,#0d2138 42%,#08182b 100%)!important;
  border:2px solid #162b40!important;
  box-shadow:
    0 24px 44px rgba(0,0,0,.62),
    inset 0 0 0 2px rgba(204,155,63,.82),
    inset 0 0 0 6px #071628,
    inset 0 0 28px rgba(0,0,0,.44)!important;
  isolation:isolate!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-book::before,
#repoRcgBinderDialog .repo-rcg-v2118-book::after{
  content:''!important;
  position:absolute!important;
  top:.4%!important;
  bottom:.4%!important;
  width:1.7%!important;
  z-index:12!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,#d4a95b 0%,#7f551d 11%,#e2ba69 18%,#70471a 48%,#c99743 82%,#5b3510 100%)!important;
  border:1px solid #3b240d!important;
  box-shadow:inset 0 0 0 1px rgba(255,239,185,.25),0 3px 8px rgba(0,0,0,.38)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-book::before{left:.15%;clip-path:polygon(0 0,100% 0,100% 4%,52% 4%,52% 96%,100% 96%,100% 100%,0 100%)}
#repoRcgBinderDialog .repo-rcg-v2118-book::after{right:.15%;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 96%,48% 96%,48% 4%,0 4%)}

#repoRcgBinderDialog .repo-rcg-v2118-page{
  position:relative!important;
  min-width:0!important;
  padding:2.3%!important;
  box-sizing:border-box!important;
  background:
    linear-gradient(90deg,rgba(255,255,255,.025),transparent 8%,transparent 92%,rgba(0,0,0,.06)),
    linear-gradient(180deg,#142b43,#0d2138)!important;
  border:1px solid rgba(213,171,88,.62)!important;
  box-shadow:inset 0 0 0 3px #071727,inset 0 0 16px rgba(0,0,0,.42)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-page.left{border-radius:7px 2px 2px 7px!important}
#repoRcgBinderDialog .repo-rcg-v2118-page.right{border-radius:2px 7px 7px 2px!important}
#repoRcgBinderDialog .repo-rcg-v2118-page-lining{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  padding:3.3% 3.5% 5%!important;
  box-sizing:border-box!important;
  background:
    radial-gradient(circle at 35% 15%,rgba(255,255,255,.7),transparent 24%),
    linear-gradient(180deg,#fffdf4 0%,#f7f0dc 55%,#f1e7cf 100%)!important;
  border:2px solid #d2aa58!important;
  box-shadow:inset 0 0 0 4px #102a42,inset 0 0 0 6px rgba(74,190,188,.32),inset 0 0 22px rgba(74,49,15,.16)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grid{
  width:100%!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(3,minmax(0,1fr))!important;
  gap:2.0% 3.0%!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot{
  all:unset!important;
  position:relative!important;
  min-width:0!important;
  min-height:0!important;
  display:block!important;
  cursor:default!important;
  box-sizing:border-box!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled{cursor:context-menu!important}
#repoRcgBinderDialog .repo-rcg-v2118-pocket{
  position:absolute!important;
  inset:0!important;
  overflow:visible!important;
  border-radius:6px!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.82),rgba(238,241,238,.48) 44%,rgba(255,255,255,.72)),
    linear-gradient(180deg,#f9fbfa,#e9eeec)!important;
  border:4px solid #142d45!important;
  box-shadow:
    0 0 0 2px rgba(206,161,73,.62),
    inset 0 0 0 2px rgba(255,255,255,.88),
    inset 0 0 15px rgba(103,129,142,.22),
    0 3px 5px rgba(57,39,13,.16)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-pocket::before,
#repoRcgBinderDialog .repo-rcg-v2118-pocket::after{
  content:''!important;
  position:absolute!important;
  z-index:1!important;
  pointer-events:none!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-pocket::before{
  inset:5%!important;
  border-radius:8px!important;
  border:1px solid rgba(163,175,178,.54)!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.42),inset 0 0 10px rgba(88,111,125,.14)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-pocket::after{
  left:12%!important;right:12%!important;bottom:4%!important;height:4%!important;
  border-radius:50%!important;
  border-top:2px solid rgba(144,159,162,.36)!important;
  filter:blur(.2px)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-pocket-highlight{
  position:absolute!important;
  inset:2.5%!important;
  z-index:2!important;
  pointer-events:none!important;
  border-radius:7px!important;
  background:linear-gradient(115deg,rgba(255,255,255,.18),transparent 30%,transparent 70%,rgba(255,255,255,.10))!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-pocket{
  box-shadow:0 0 0 2px rgba(226,184,86,.78),inset 0 0 0 2px rgba(255,255,255,.88),0 0 18px rgba(80,218,221,.14)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-page-mark{
  position:absolute!important;
  bottom:1.15%!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  color:#80602d!important;
  font:900 clamp(10px,.9vw,16px)/1 Georgia,serif!important;
  letter-spacing:.08em!important;
  text-shadow:0 1px 0 rgba(255,255,255,.85)!important;
}

#repoRcgBinderDialog .repo-rcg-v2118-spine{
  position:relative!important;
  z-index:4!important;
  margin:-.3% -5%!important;
  background:
    linear-gradient(90deg,#07182a 0%,#17324f 16%,#1d3a57 36%,#102a45 50%,#1d3a57 64%,#17324f 84%,#07182a 100%)!important;
  border-left:1px solid rgba(203,157,70,.35)!important;
  border-right:1px solid rgba(203,157,70,.35)!important;
  box-shadow:inset 10px 0 18px rgba(0,0,0,.28),inset -10px 0 18px rgba(0,0,0,.28)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-spine-plaque{
  position:absolute!important;
  left:22%!important;right:22%!important;top:37%!important;height:25%!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3%!important;
  color:#e2c16f!important;
  font:800 clamp(7px,.58vw,10px)/1.1 Georgia,serif!important;
  text-align:center!important;
  background:linear-gradient(180deg,#142944,#0a1d34)!important;
  border:1px solid #b08238!important;
  box-shadow:0 0 0 2px #061426,inset 0 0 0 1px rgba(248,211,119,.15)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-spine-plaque i{
  width:14px!important;height:14px!important;margin-top:12%!important;
  transform:rotate(45deg)!important;
  background:linear-gradient(135deg,#4be3df,#0b8893)!important;
  border:2px solid #c99a3e!important;
  box-shadow:0 0 7px rgba(74,231,226,.25)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-turn{
  all:unset!important;
  position:absolute!important;top:7%!important;bottom:7%!important;width:5%!important;z-index:25!important;cursor:pointer!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-turn.left{left:0!important}
#repoRcgBinderDialog .repo-rcg-v2118-turn.right{right:0!important}

/* Real slab visual inside the actual slot. */
#repoRcgBinderDialog .repo-rcg-v2118-slab{
  position:absolute!important;
  z-index:8!important;
  left:50%!important;top:50%!important;
  width:88%!important;height:91%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:7px!important;
  background:rgba(246,250,252,.12)!important;
  border:2px solid rgba(218,230,233,.82)!important;
  box-shadow:0 8px 12px rgba(0,0,0,.22),inset 0 0 0 2px rgba(255,255,255,.34)!important;
  overflow:hidden!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-clear-case{
  position:absolute!important;inset:0!important;z-index:7!important;pointer-events:none!important;
  border-radius:inherit!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.48),inset 0 0 11px rgba(161,188,196,.16)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label{
  position:absolute!important;z-index:5!important;left:4.5%!important;right:4.5%!important;top:3.2%!important;height:19.5%!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto auto!important;
  align-content:center!important;gap:1px 5px!important;padding:3% 4%!important;box-sizing:border-box!important;
  background:linear-gradient(180deg,#fffdf6,#f4efdf)!important;border:1px solid #17324c!important;border-radius:3px!important;
  box-shadow:inset 0 0 0 1px rgba(202,157,65,.48)!important;color:#183047!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label strong{
  min-width:0!important;font:900 clamp(5px,.46vw,8px)/1 Arial,sans-serif!important;letter-spacing:.09em!important;text-transform:uppercase!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label b{
  grid-column:2!important;grid-row:1 / span 2!important;align-self:start!important;
  font:900 clamp(5px,.48vw,8px)/1 Arial,sans-serif!important;letter-spacing:.06em!important;white-space:nowrap!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label small{
  grid-column:1 / span 2!important;font:800 clamp(3px,.28vw,5px)/1 Arial,sans-serif!important;letter-spacing:.06em!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label i{
  position:absolute!important;left:5%!important;bottom:8%!important;width:20%!important;height:12%!important;
  background:repeating-linear-gradient(90deg,#1b2730 0 1px,transparent 1px 2px,#1b2730 2px 4px,transparent 4px 5px)!important;opacity:.7!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-card-window{
  position:absolute!important;z-index:4!important;left:6.5%!important;right:6.5%!important;top:25%!important;bottom:5.5%!important;
  display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-radius:3px!important;background:#10253b!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-card-window img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important}
#repoRcgBinderDialog .repo-rcg-v2118-card-window span{color:#d7b45f!important;font:900 16px/1 Georgia,serif!important}
#repoRcgBinderDialog .repo-rcg-v2118-glass{
  position:absolute!important;inset:0!important;z-index:6!important;pointer-events:none!important;
  background:linear-gradient(112deg,rgba(255,255,255,.12),transparent 26%,transparent 73%,rgba(255,255,255,.05))!important;
}

/* Hidden Cards-style drawer, but slabs inside it. */
#repoRcgBinderDialog .repo-rcg-v2118-storage{
  position:absolute!important;
  z-index:9000!important;
  top:13%!important;right:2.2%!important;bottom:8%!important;
  width:min(360px,26vw)!important;
  display:none!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-storage.is-open{display:flex!important}
#repoRcgBinderDialog .repo-rcg-v2118-storage .repo-binder-storage-list{overflow-y:auto!important}
#repoRcgBinderDialog .repo-rcg-v2118-storage .repo-binder-storage-filters button{
  cursor:pointer!important;border:1px solid rgba(199,153,67,.34)!important;background:rgba(7,25,40,.72)!important;color:#d9c38b!important;
  font:800 8px/1 Arial,sans-serif!important;padding:6px 7px!important;border-radius:4px!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-storage .repo-binder-storage-filters button[aria-pressed="true"]{color:#71e2e4!important;border-color:rgba(79,223,226,.48)!important;box-shadow:inset 0 0 9px rgba(69,218,221,.09)!important}
#repoRcgBinderDialog .repo-rcg-v2118-storage-card .repo-rcg-v2118-slab.is-mini{
  position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:74%!important;height:auto!important;aspect-ratio:.69!important;margin:auto!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-storage-image{display:flex!important;align-items:center!important;justify-content:center!important}

@media(max-width:1050px){
  #repoRcgBinderDialog .repo-rcg-v2118-book{width:100%!important}
  #repoRcgBinderDialog .repo-rcg-v2118-pocket{border-width:3px!important}
  #repoRcgBinderDialog .repo-rcg-v2118-storage{width:min(330px,32vw)!important}
}

/* ========================================================================
   RCG SLAB BINDER v21.20 — 25% LARGER + TRUE SCREEN CENTER
   Pure layout pass. Functional slab/storage logic is unchanged.
   ======================================================================== */
#repoRcgBinderDialog{
  width:100vw!important;
  max-width:none!important;
  height:100vh!important;
  max-height:none!important;
  margin:0!important;
}

#repoRcgBinderDialog .repo-rcg-binder-shell{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  box-sizing:border-box!important;
  padding:10px 18px 14px!important;
  overflow:visible!important;
}

/* Stop the old balanced 3-column grid from shifting the binder off-centre. */
#repoRcgBinderDialog .repo-rcg-binder-workspace{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-binder-workspace::before{
  display:none!important;
  content:none!important;
}

/* The complete header + binder + footer stack is now centred on the screen. */
#repoRcgBinderDialog .repo-rcg-binder-main{
  position:relative!important;
  grid-column:auto!important;
  grid-row:auto!important;
  flex:0 0 auto!important;
  width:min(78vw,1450px)!important;
  max-width:min(78vw,1450px)!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

#repoRcgBinderDialog .repo-rcg-binder-header{
  flex:0 0 auto!important;
  margin:-18px auto -8px!important;
}

#repoRcgBinderDialog .repo-rcg-binder-stage{
  width:100%!important;
  height:auto!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}

/* 1160px -> 1450px = exactly +25% at the desktop cap. */
#repoRcgBinderDialog .repo-rcg-v2118-book{
  width:100%!important;
  max-width:1450px!important;
  min-width:0!important;
  margin:0 auto!important;
}

#repoRcgBinderDialog .repo-rcg-binder-nav{
  width:100%!important;
  max-width:1450px!important;
  margin:10px auto 0!important;
  flex:0 0 auto!important;
}

/* Sidebar no longer participates in binder centring. */
#repoRcgBinderDialog .repo-rcg-sidebar{
  position:absolute!important;
  z-index:80!important;
  grid-column:auto!important;
  grid-row:auto!important;
  right:1.1vw!important;
  left:auto!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
  width:clamp(125px,9vw,165px)!important;
  min-width:0!important;
  max-width:165px!important;
  margin:0!important;
  align-self:auto!important;
  justify-self:auto!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn,
#repoRcgBinderDialog #repoRcgCustomizeBtn{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}

/* Keep the drawer usable while the tool button itself lives at screen-right. */
#repoRcgBinderDialog .repo-rcg-v2118-storage{
  right:1.1vw!important;
}

/* On shorter screens, size from height so the larger binder remains wholly usable. */
@media(max-height:900px){
  #repoRcgBinderDialog .repo-rcg-binder-main{
    width:min(74vw,calc((100vh - 150px) * 1.56),1450px)!important;
    max-width:min(74vw,calc((100vh - 150px) * 1.56),1450px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-header{
    margin:-26px auto -14px!important;
    transform:scale(.92)!important;
    transform-origin:center bottom!important;
  }
  #repoRcgBinderDialog .repo-rcg-binder-nav{
    margin-top:6px!important;
  }
}

@media(max-width:1050px){
  #repoRcgBinderDialog .repo-rcg-binder-main{
    width:min(94vw,1100px)!important;
    max-width:min(94vw,1100px)!important;
  }
  #repoRcgBinderDialog .repo-rcg-sidebar{
    right:8px!important;
    width:120px!important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.21 — HEADER / TOOL ALIGNMENT + PREMIUM SLAB POLISH
   Layout/visual pass only. Binder storage mechanics remain unchanged.
   ======================================================================== */

/* Move the archive banner up slightly without changing the binder position. */
#repoRcgBinderDialog .repo-rcg-binder-header{
  margin:-30px auto -8px!important;
}

/* JS anchors this to the actual constructed binder edge/top. These values are
   fallback only, preventing the legacy screen-right position from flashing. */
#repoRcgBinderDialog .repo-rcg-sidebar{
  right:auto!important;
  top:18%!important;
  transform:none!important;
  width:clamp(128px,9vw,158px)!important;
  max-width:158px!important;
}
#repoRcgBinderDialog .repo-rcg-sidebar-actions{
  gap:9px!important;
}
#repoRcgBinderDialog .repo-rcg-hidden-image-btn{
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.34))!important;
}
#repoRcgBinderDialog #repoRcgCustomizeBtn{
  min-height:40px!important;
  letter-spacing:.09em!important;
}

/* Premium slab: thinner clearer acrylic, more card visibility, sharper label. */
#repoRcgBinderDialog .repo-rcg-v2118-slab{
  width:91.5%!important;
  height:93.5%!important;
  border-radius:8px!important;
  background:rgba(247,251,253,.035)!important;
  border:1px solid rgba(232,241,244,.88)!important;
  box-shadow:
    0 7px 12px rgba(3,10,17,.28),
    0 0 0 1px rgba(131,159,172,.26),
    inset 0 0 0 1px rgba(255,255,255,.44),
    inset 0 0 8px rgba(189,221,231,.08)!important;
  overflow:hidden!important;
  transition:transform .17s ease,filter .17s ease,box-shadow .17s ease!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-slab{
  transform:translate(-50%,-50%) scale(1.018)!important;
  filter:brightness(1.035) saturate(1.04)!important;
  box-shadow:
    0 10px 18px rgba(2,8,14,.34),
    0 0 0 1px rgba(218,179,91,.48),
    0 0 16px rgba(68,214,218,.11),
    inset 0 0 0 1px rgba(255,255,255,.55)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-clear-case{
  inset:0!important;
  border-radius:inherit!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.56),
    inset 0 10px 12px rgba(255,255,255,.035),
    inset 0 -7px 10px rgba(53,85,104,.035)!important;
  background:linear-gradient(115deg,rgba(255,255,255,.035),transparent 28%,transparent 72%,rgba(255,255,255,.025))!important;
}

#repoRcgBinderDialog .repo-rcg-v2118-label{
  left:3.8%!important;
  right:3.8%!important;
  top:2.7%!important;
  height:20.8%!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto auto!important;
  gap:1px 5px!important;
  padding:2.6% 4.2% 2.2%!important;
  background:
    linear-gradient(180deg,rgba(255,254,249,.99),rgba(244,240,226,.99))!important;
  border:1px solid #16334c!important;
  border-radius:3px!important;
  box-shadow:
    inset 0 0 0 1px rgba(205,162,73,.45),
    0 1px 2px rgba(4,16,25,.12)!important;
  color:#172f45!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label strong{
  grid-column:1!important;
  grid-row:1!important;
  align-self:end!important;
  font:900 clamp(6px,.52vw,9px)/1.03 Arial,sans-serif!important;
  letter-spacing:.105em!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label b{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  align-self:start!important;
  justify-self:end!important;
  margin-top:1px!important;
  font:900 clamp(6px,.52vw,9px)/1.03 Arial,sans-serif!important;
  letter-spacing:.07em!important;
  color:#213b53!important;
  text-shadow:0 1px 0 rgba(255,255,255,.85)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label em{
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  color:#a18a58!important;
  font:800 clamp(3.5px,.31vw,5.5px)/1.02 Arial,sans-serif!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  font-style:normal!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label small{
  grid-column:1 / span 2!important;
  grid-row:3!important;
  justify-self:center!important;
  color:#6d7780!important;
  font:800 clamp(3.4px,.30vw,5px)/1 Arial,sans-serif!important;
  letter-spacing:.10em!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label i{
  left:4.5%!important;
  bottom:7%!important;
  width:20%!important;
  height:11%!important;
  border:1px solid rgba(30,47,59,.18)!important;
  background:
    repeating-linear-gradient(90deg,#17222b 0 1px,transparent 1px 2px,#17222b 2px 4px,transparent 4px 5px,#17222b 5px 6px,transparent 6px 8px)!important;
  opacity:.78!important;
}

/* Grade text stays integrated into the label; just a subtle hierarchy. */
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-label b{
  color:#8b6215!important;
  text-shadow:0 0 5px rgba(211,167,65,.12),0 1px 0 #fff!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-label b{color:#1f4d72!important}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-label b{color:#34495c!important}

/* Give the actual card substantially more of the slab and avoid cropping art. */
#repoRcgBinderDialog .repo-rcg-v2118-card-window{
  left:4.7%!important;
  right:4.7%!important;
  top:24.4%!important;
  bottom:3.8%!important;
  border-radius:3px!important;
  background:
    radial-gradient(circle at 50% 20%,rgba(55,91,116,.16),transparent 42%),
    #071725!important;
  border:1px solid rgba(21,49,72,.82)!important;
  box-shadow:inset 0 0 0 1px rgba(220,186,106,.22)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-card-window img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#071725!important;
  filter:contrast(1.025) saturate(1.035)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-glass{
  background:
    linear-gradient(111deg,rgba(255,255,255,.075),transparent 20%,transparent 76%,rgba(255,255,255,.03)),
    linear-gradient(180deg,rgba(255,255,255,.018),transparent 30%)!important;
}

/* The mini storage versions should stay compact rather than inheriting the
   larger binder-slot sizing too aggressively. */
#repoRcgBinderDialog .repo-rcg-v2118-storage-card .repo-rcg-v2118-slab.is-mini{
  width:78%!important;
  height:auto!important;
}

@media(max-height:900px){
  #repoRcgBinderDialog .repo-rcg-binder-header{
    margin:-34px auto -12px!important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.22 — LARGER SLABS + HIGHER HEADER + CLEAN CARD BED
   Visual-only pass. Binder dimensions and mechanics remain unchanged.
   ======================================================================== */

/* Lift the archive banner further above the binder without moving the binder. */
#repoRcgBinderDialog .repo-rcg-binder-header{
  margin:-30px auto -8px!important;
  transform:translateY(-20px)!important;
  transform-origin:center bottom!important;
}

/* Let the acrylic slab fill more of each existing pocket. */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini){
  width:95.4%!important;
  height:96.6%!important;
  border-radius:7px!important;
  box-shadow:
    0 8px 14px rgba(3,10,17,.25),
    0 0 0 1px rgba(140,158,168,.22),
    inset 0 0 0 1px rgba(255,255,255,.52),
    inset 0 0 7px rgba(189,221,231,.055)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-slab:not(.is-mini){
  transform:translate(-50%,-50%) scale(1.012)!important;
}

/* Slightly tighter label means the card itself gets a little more visual weight. */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-label{
  left:3.5%!important;
  right:3.5%!important;
  top:2.45%!important;
  height:19.2%!important;
  padding:2.35% 3.8% 1.95%!important;
}

/* Replace the dark navy card recess with a clean neutral bed. */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window{
  left:3.9%!important;
  right:3.9%!important;
  top:22.8%!important;
  bottom:3.1%!important;
  border-radius:3px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(242,240,234,.98))!important;
  border:1px solid rgba(39,57,70,.34)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.72),
    inset 0 0 10px rgba(78,95,106,.05)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  filter:contrast(1.035) saturate(1.045) brightness(1.01)!important;
}

/* Keep the acrylic reflection subtle so artwork stays crisp. */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-glass{
  background:
    linear-gradient(112deg,rgba(255,255,255,.055),transparent 18%,transparent 78%,rgba(255,255,255,.025)),
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 25%)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-clear-case{
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.5),
    inset 0 8px 10px rgba(255,255,255,.025),
    inset 0 -6px 8px rgba(53,85,104,.025)!important;
  background:linear-gradient(115deg,rgba(255,255,255,.025),transparent 26%,transparent 74%,rgba(255,255,255,.015))!important;
}

@media(max-height:900px){
  #repoRcgBinderDialog .repo-rcg-binder-header{
    margin:-34px auto -12px!important;
    transform:translateY(-15px) scale(.92)!important;
  }
}


/* RCG v21.24 — safe visual-only slab movement */
.repo-rcg-slab-transfer-ghost-v2124{contain:layout paint style!important;backface-visibility:hidden!important;transform-style:preserve-3d!important}
.repo-rcg-v2118-slab.is-awaiting-arrival-v2124{opacity:0!important;transform:scale(.96)!important;pointer-events:none!important}
.repo-rcg-v2118-slab.is-arriving-v2124{animation:repoRcgSlabSettleV2124 .42s cubic-bezier(.18,.84,.2,1.12) both!important}
@keyframes repoRcgSlabSettleV2124{0%{opacity:.18;transform:translateY(-9px) scale(.93);filter:brightness(1.22) drop-shadow(0 0 12px rgba(88,226,232,.24))}58%{opacity:1;transform:translateY(2px) scale(1.025);filter:brightness(1.1) drop-shadow(0 8px 10px rgba(0,0,0,.2))}100%{opacity:1;transform:translateY(0) scale(1);filter:none}}


/* ========================================================================
   RCG v21.25 — premium slab hover + no-layout-shift interaction polish
   Visual only. Does not alter binder dimensions or saved layout mechanics.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled{
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled .repo-rcg-v2118-slab:not(.is-mini){
  transition:
    transform .18s cubic-bezier(.2,.78,.22,1),
    filter .18s ease,
    box-shadow .18s ease!important;
  will-change:transform,filter!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-slab:not(.is-mini),
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:focus-within .repo-rcg-v2118-slab:not(.is-mini){
  transform:translate(-50%,-50%) translateY(-3px) scale(1.025)!important;
  filter:brightness(1.055) saturate(1.045) contrast(1.015)!important;
  box-shadow:
    0 12px 22px rgba(2,9,15,.34),
    0 0 0 1px rgba(236,211,137,.34),
    0 0 16px rgba(72,205,214,.12),
    0 0 24px rgba(223,184,91,.075),
    inset 0 0 0 1px rgba(255,255,255,.62)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-card-window,
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:focus-within .repo-rcg-v2118-card-window{
  border-color:rgba(50,79,93,.46)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.78),
    inset 0 0 10px rgba(78,95,106,.04),
    0 0 10px rgba(63,209,216,.07)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-label,
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-filled:focus-within .repo-rcg-v2118-label{
  filter:brightness(1.025)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10:not(.is-mini):hover{
  box-shadow:
    0 12px 23px rgba(2,9,15,.35),
    0 0 0 1px rgba(245,211,119,.46),
    0 0 18px rgba(236,191,83,.16),
    inset 0 0 0 1px rgba(255,255,255,.66)!important;
}

/* Flight ghosts must never influence the underlying live slab hover state. */
.repo-rcg-slab-transfer-ghost-v2124{
  pointer-events:none!important;
  user-select:none!important;
}


/* ========================================================================
   RCG v21.28 — SAFE VISIBLE SLAB FLIGHT
   Visual-only transfer layer inside the binder <dialog> top-layer.
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-slab-flight-wrap-v2128{
  contain:layout paint style!important;
  backface-visibility:hidden!important;
  transform-style:preserve-3d!important;
  isolation:isolate!important;
}
#repoRcgBinderDialog .repo-rcg-slab-flight-wrap-v2128 .repo-rcg-v2118-slab{
  transition:none!important;
  animation:none!important;
  box-sizing:border-box!important;
}


/* ========================================================================
   RCG SLAB BINDER v21.29 — NAVIGATION + FULL CARD-BINDER CUSTOMIZER
   ======================================================================== */

/* Keep the dialog X in the actual viewport, regardless of binder width. */
#repoRcgBinderDialog .repo-rcg-binder-close{
  position:fixed!important;
  top:18px!important;
  right:18px!important;
  left:auto!important;
  z-index:2147483600!important;
  width:38px!important;
  height:38px!important;
  margin:0!important;
  transform:none!important;
}

/* Retire the old three-preset slab customizer completely. */
#repoRcgBinderDialog #repoRcgCustomizePanel{display:none!important}

/* Shared theme variables: same palette catalogue as the card binder. */
#repoRcgBinderDialog{--rcgu-a:#2359a7;--rcgu-b:#071d4a;--rcgu-c:#a8d4ff;--rcgu-page:#102a42;--rcgu-deep:#071628}
#repoRcgBinderDialog[data-rcg-upgrade-theme='midnight']{--rcgu-a:#3b83d5;--rcgu-b:#07101c;--rcgu-c:#8fc9ff;--rcgu-page:#142f4e;--rcgu-deep:#07101c}
#repoRcgBinderDialog[data-rcg-upgrade-theme='emerald']{--rcgu-a:#27855b;--rcgu-b:#06150f;--rcgu-c:#92e8b7;--rcgu-page:#123f2c;--rcgu-deep:#06150f}
#repoRcgBinderDialog[data-rcg-upgrade-theme='royal']{--rcgu-a:#7650bd;--rcgu-b:#11091d;--rcgu-c:#d0adff;--rcgu-page:#35215a;--rcgu-deep:#11091d}
#repoRcgBinderDialog[data-rcg-upgrade-theme='crimson']{--rcgu-a:#a63f4b;--rcgu-b:#1b0709;--rcgu-c:#ffb3b8;--rcgu-page:#541c25;--rcgu-deep:#1b0709}
#repoRcgBinderDialog[data-rcg-upgrade-theme='frost']{--rcgu-a:#8399ad;--rcgu-b:#0b1015;--rcgu-c:#e5f2ff;--rcgu-page:#2c3b49;--rcgu-deep:#0b1015}
#repoRcgBinderDialog[data-rcg-upgrade-theme='golden']{--rcgu-a:#a56c16;--rcgu-b:#190f02;--rcgu-c:#ffe28a;--rcgu-page:#55350b;--rcgu-deep:#190f02}
#repoRcgBinderDialog[data-rcg-upgrade-theme='ocean']{--rcgu-a:#168697;--rcgu-b:#031519;--rcgu-c:#8ef5ff;--rcgu-page:#0f4650;--rcgu-deep:#031519}
#repoRcgBinderDialog[data-rcg-upgrade-theme='rose']{--rcgu-a:#a84f78;--rcgu-b:#1b0711;--rcgu-c:#ffc1dc;--rcgu-page:#54203a;--rcgu-deep:#1b0711}
#repoRcgBinderDialog[data-rcg-upgrade-theme='obsidian']{--rcgu-a:#4b5360;--rcgu-b:#080a0d;--rcgu-c:#d7dfeb;--rcgu-page:#252b33;--rcgu-deep:#080a0d}
#repoRcgBinderDialog[data-rcg-upgrade-theme='sunfire']{--rcgu-a:#c65318;--rcgu-b:#1d0801;--rcgu-c:#ffd06f;--rcgu-page:#652306;--rcgu-deep:#1d0801}
#repoRcgBinderDialog[data-rcg-upgrade-theme='sapphire']{--rcgu-a:#2359a7;--rcgu-b:#030b1d;--rcgu-c:#a8d4ff;--rcgu-page:#133b72;--rcgu-deep:#030b1d}
#repoRcgBinderDialog[data-rcg-upgrade-theme='amethyst']{--rcgu-a:#8b43b8;--rcgu-b:#180722;--rcgu-c:#efbdff;--rcgu-page:#55236e;--rcgu-deep:#180722}
#repoRcgBinderDialog[data-rcg-upgrade-theme='bloodmoon']{--rcgu-a:#7f2638;--rcgu-b:#180306;--rcgu-c:#ff9daa;--rcgu-page:#4e1420;--rcgu-deep:#180306}
#repoRcgBinderDialog[data-rcg-upgrade-theme='jade']{--rcgu-a:#28775f;--rcgu-b:#06140f;--rcgu-c:#d4e997;--rcgu-page:#1b4a3a;--rcgu-deep:#06140f}
#repoRcgBinderDialog[data-rcg-upgrade-theme='copper']{--rcgu-a:#9c572a;--rcgu-b:#1b0b04;--rcgu-c:#ffc28f;--rcgu-page:#5b2d15;--rcgu-deep:#1b0b04}
#repoRcgBinderDialog[data-rcg-upgrade-theme='neon']{--rcgu-a:#b33b91;--rcgu-b:#16061c;--rcgu-c:#6ef4ff;--rcgu-page:#4e1b5f;--rcgu-deep:#16061c}

#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-book{
  background:
    linear-gradient(90deg,rgba(255,255,255,.035),transparent 5%,transparent 95%,rgba(255,255,255,.025)),
    repeating-linear-gradient(7deg,rgba(255,255,255,.018) 0 1px,rgba(0,0,0,.02) 1px 3px),
    linear-gradient(180deg,color-mix(in srgb,var(--rcgu-page) 72%,#162d47),color-mix(in srgb,var(--rcgu-deep) 88%,#08182b))!important;
  border-color:color-mix(in srgb,var(--rcgu-a) 66%,#162b40)!important;
  box-shadow:0 24px 44px rgba(0,0,0,.62),inset 0 0 0 2px rgba(204,155,63,.82),inset 0 0 0 6px var(--rcgu-deep),inset 0 0 34px color-mix(in srgb,var(--rcgu-a) 18%,transparent)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page{
  background:linear-gradient(180deg,color-mix(in srgb,var(--rcgu-page) 88%,#142b43),color-mix(in srgb,var(--rcgu-deep) 90%,#0d2138))!important;
  border-color:color-mix(in srgb,var(--rcgu-c) 36%,#d5ab58)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page-lining{
  box-shadow:inset 0 0 0 4px color-mix(in srgb,var(--rcgu-page) 82%,#102a42),inset 0 0 0 6px color-mix(in srgb,var(--rcgu-a) 46%,transparent),inset 0 0 22px rgba(74,49,15,.16)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine{
  background:linear-gradient(90deg,var(--rcgu-deep),color-mix(in srgb,var(--rcgu-page) 88%,#17324f) 18%,color-mix(in srgb,var(--rcgu-a) 32%,#1d3a57) 50%,color-mix(in srgb,var(--rcgu-page) 88%,#17324f) 82%,var(--rcgu-deep))!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine-plaque{border-color:color-mix(in srgb,var(--rcgu-c) 34%,#b08238)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--rcgu-page) 86%,#142944),var(--rcgu-deep))!important}

/* Pocket finishes copied conceptually from the normal card binder. */
#repoRcgBinderDialog[data-rcg-upgrade-finish='crystal'] .repo-rcg-v2118-pocket{border-color:#d8efff!important;box-shadow:0 0 0 2px rgba(147,208,238,.75),inset 0 0 0 2px #fff,0 0 16px rgba(128,218,255,.18)!important}
#repoRcgBinderDialog[data-rcg-upgrade-finish='shadow'] .repo-rcg-v2118-pocket{background:linear-gradient(145deg,#29323a,#151d24)!important;border-color:#111a22!important;box-shadow:0 0 0 2px rgba(124,139,151,.4),inset 0 0 0 2px rgba(255,255,255,.07),inset 0 0 18px #000!important}
#repoRcgBinderDialog[data-rcg-upgrade-finish='platinum'] .repo-rcg-v2118-pocket{border-color:#aab8c4!important;box-shadow:0 0 0 2px #e2edf4,inset 0 0 0 2px #fff,0 3px 6px rgba(28,38,48,.2)!important}
#repoRcgBinderDialog[data-rcg-upgrade-finish='enchanted'] .repo-rcg-v2118-pocket{border-color:color-mix(in srgb,var(--rcgu-c) 76%,#d6b25a)!important;box-shadow:0 0 0 2px color-mix(in srgb,var(--rcgu-a) 58%,#d5a546),inset 0 0 0 2px #fff,0 0 18px color-mix(in srgb,var(--rcgu-c) 30%,transparent)!important;animation:repoRcgPocketEnchantedV2129 2.7s ease-in-out infinite}
@keyframes repoRcgPocketEnchantedV2129{50%{filter:brightness(1.055);box-shadow:0 0 0 2px var(--rcgu-c),inset 0 0 0 2px #fff,0 0 28px color-mix(in srgb,var(--rcgu-c) 42%,transparent)}}

/* Effect layer — visual only, behind slab contents and never interactive. */
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{position:absolute!important;inset:1.2%!important;z-index:5!important;pointer-events:none!important;overflow:hidden!important;border-radius:11px!important;opacity:.78!important;mix-blend-mode:screen!important}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{content:'';position:absolute;inset:-18%;pointer-events:none}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129{display:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle at 12% 22%,#fff 0 1px,transparent 2px),radial-gradient(circle at 68% 18%,var(--rcgu-c) 0 1px,transparent 2px),radial-gradient(circle at 34% 70%,#fff8cf 0 1.2px,transparent 2.2px),radial-gradient(circle at 84% 64%,var(--rcgu-c) 0 1px,transparent 2px);background-size:130px 110px,170px 145px,190px 160px,150px 130px;animation:repoRcgFxDriftV2129 15s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-upgrade-fx-v2129::before{background:linear-gradient(110deg,transparent 10%,color-mix(in srgb,var(--rcgu-a) 45%,transparent) 34%,color-mix(in srgb,var(--rcgu-c) 35%,transparent) 52%,transparent 77%);filter:blur(28px);animation:repoRcgFxSweepV2129 9s ease-in-out infinite alternate}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle,#ffcf6d 0 1.4px,transparent 2.5px);background-size:52px 68px;filter:drop-shadow(0 0 4px #e66f20);animation:repoRcgFxRiseV2129 8s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle,#ffe28a 0 1.3px,transparent 2.4px);background-size:44px 58px;animation:repoRcgFxFallV2129 10s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(ellipse at 35% 55%,rgba(209,226,241,.18),transparent 42%),radial-gradient(ellipse at 72% 42%,rgba(133,174,210,.14),transparent 44%);filter:blur(18px);animation:repoRcgFxSweepV2129 13s ease-in-out infinite alternate}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-linear-gradient(115deg,transparent 0 75px,color-mix(in srgb,var(--rcgu-c) 12%,transparent) 76px 78px,transparent 79px 145px);animation:repoRcgFxDriftV2129 13s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle,#fff1a0 0 1.6px,transparent 3px);background-size:87px 76px;filter:drop-shadow(0 0 5px #f6d85c);animation:repoRcgFxRiseV2129 11s ease-in-out infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-upgrade-fx-v2129::before{background:linear-gradient(115deg,transparent 0 46%,rgba(255,255,255,.65) 49%,color-mix(in srgb,var(--rcgu-c) 58%,transparent) 50%,transparent 54%);transform:translateX(-70%);animation:repoRcgFxCometV2129 6.5s ease-in-out infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-radial-gradient(circle at 50% 50%,transparent 0 90px,color-mix(in srgb,var(--rcgu-c) 11%,transparent) 91px 93px,transparent 94px 160px);animation:repoRcgFxPulseV2129 6s ease-in-out infinite}

/* Legendary effect treatments. */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(ellipse at 50% 115%,rgba(255,68,0,.5),transparent 50%),repeating-linear-gradient(102deg,transparent 0 70px,rgba(255,177,38,.08) 72px 76px,transparent 78px 140px);filter:blur(3px);animation:repoRcgFxInfernoV2129 2.3s ease-in-out infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle at 30% 25%,rgba(114,79,255,.34),transparent 25%),radial-gradient(circle at 70% 60%,rgba(51,180,255,.28),transparent 30%),radial-gradient(circle,#fff 0 1px,transparent 2px);background-size:auto,auto,70px 70px;animation:repoRcgFxDriftV2129 12s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle at 50% 100%,rgba(255,188,45,.36),transparent 48%),radial-gradient(circle,#ffe5a0 0 1.4px,transparent 2.6px);background-size:auto,55px 52px;animation:repoRcgFxFallV2129 7s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-upgrade-fx-v2129::before{background:conic-gradient(from 220deg at 50% 100%,transparent,rgba(255,86,15,.42),rgba(255,202,75,.3),transparent 42%);filter:blur(10px);animation:repoRcgFxPhoenixV2129 3.3s ease-in-out infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-radial-gradient(ellipse at 50% 50%,rgba(160,77,255,.2) 0 4px,transparent 7px 48px);animation:repoRcgFxSpinV2129 13s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(circle,#9ef0a3 0 1.5px,transparent 3px),linear-gradient(120deg,transparent 40%,rgba(49,177,91,.14),transparent 62%);background-size:80px 78px,auto;animation:repoRcgFxRiseV2129 10s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-linear-gradient(165deg,transparent 0 65px,rgba(216,238,255,.15) 67px 70px,transparent 72px 130px);filter:blur(1px);animation:repoRcgFxWindV2129 4.6s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(ellipse at 20% 60%,rgba(217,222,228,.16),transparent 34%),radial-gradient(ellipse at 75% 44%,rgba(142,153,165,.14),transparent 38%);filter:blur(26px);animation:repoRcgFxSweepV2129 9s ease-in-out infinite alternate}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(ellipse,#f6b34c 0 1.8px,transparent 3.2px),radial-gradient(ellipse,#d87831 0 1.6px,transparent 3px);background-size:80px 64px,115px 88px;animation:repoRcgFxFallV2129 8s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-linear-gradient(165deg,transparent 0 95px,rgba(81,226,245,.17) 98px 102px,transparent 104px 175px);animation:repoRcgFxWindV2129 6s linear infinite}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-upgrade-fx-v2129::before{background:radial-gradient(ellipse at 45% 65%,rgba(255,235,194,.23),transparent 43%),radial-gradient(ellipse at 72% 40%,rgba(223,240,244,.16),transparent 40%);filter:blur(24px);animation:repoRcgFxSweepV2129 14s ease-in-out infinite alternate}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-upgrade-fx-v2129::before{background:repeating-linear-gradient(104deg,transparent 0 34px,rgba(135,190,255,.16) 35px 36px,transparent 37px 65px),radial-gradient(circle at 70% 20%,rgba(147,182,255,.17),transparent 24%);animation:repoRcgFxRainV2129 1.7s linear infinite}

@keyframes repoRcgFxDriftV2129{to{background-position:120px 80px, -100px 65px, 80px -120px, -60px -90px}}
@keyframes repoRcgFxSweepV2129{from{transform:translateX(-8%) scale(1)}to{transform:translateX(8%) scale(1.08)}}
@keyframes repoRcgFxRiseV2129{from{background-position:0 90px}to{background-position:30px -90px}}
@keyframes repoRcgFxFallV2129{from{background-position:0 -100px}to{background-position:30px 110px}}
@keyframes repoRcgFxCometV2129{0%,58%{transform:translateX(-90%);opacity:0}64%{opacity:1}82%,100%{transform:translateX(90%);opacity:0}}
@keyframes repoRcgFxPulseV2129{50%{transform:scale(1.08);opacity:.45}}
@keyframes repoRcgFxInfernoV2129{50%{transform:scaleY(1.08);filter:brightness(1.14) blur(3px)}}
@keyframes repoRcgFxPhoenixV2129{50%{transform:scale(1.08) rotate(2deg);filter:brightness(1.16) blur(9px)}}
@keyframes repoRcgFxSpinV2129{to{transform:rotate(360deg) scale(1.07)}}
@keyframes repoRcgFxWindV2129{to{background-position:180px 0}}
@keyframes repoRcgFxRainV2129{to{background-position:22px 85px,0 0}}

/* Full slab-binder customizer drawer. */
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129{
  position:fixed!important;z-index:2147483550!important;top:6vh!important;right:5vw!important;bottom:6vh!important;width:min(470px,31vw)!important;
  display:none!important;flex-direction:column!important;overflow:hidden!important;border:1px solid #b68438!important;border-radius:10px!important;
  background:linear-gradient(180deg,#0d2235,#071521 58%,#050e17)!important;box-shadow:0 24px 60px rgba(0,0,0,.72),inset 0 0 0 1px rgba(103,208,219,.08)!important;color:#e8d8ab!important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129.is-open{display:flex!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>header{display:grid!important;grid-template-columns:minmax(0,1fr) auto 36px!important;align-items:center!important;gap:10px!important;padding:14px 14px 12px!important;border-bottom:1px solid rgba(201,154,63,.34)!important;background:linear-gradient(180deg,#18354e,#0c2134)!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>header strong{display:block!important;color:#f0cf79!important;font:900 19px/1 Georgia,serif!important;letter-spacing:.08em!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>header small{display:block!important;margin-top:4px!important;color:#7eb4c7!important;font:800 9px/1 Arial,sans-serif!important;letter-spacing:.09em!important;text-transform:uppercase!important}
#repoRcgBinderDialog .repo-rcg-upgrade-balance-v2129{color:#8edee1!important;font:900 9px/1 Arial,sans-serif!important;white-space:nowrap!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>header button{all:unset!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border:1px solid #a57530!important;background:#11263a!important;color:#f0d187!important;font:900 21px/1 Georgia,serif!important;cursor:pointer!important}
#repoRcgBinderDialog .repo-rcg-upgrade-scroll-v2129{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;padding:12px 14px 18px!important;scrollbar-width:thin!important;scrollbar-color:#9b6c2a #071521!important}
#repoRcgBinderDialog .repo-rcg-upgrade-scroll-v2129 h4{margin:14px 0 8px!important;padding-bottom:6px!important;border-bottom:1px solid rgba(201,154,63,.22)!important;color:#d8bd77!important;font:900 10px/1 Arial,sans-serif!important;letter-spacing:.16em!important}
#repoRcgBinderDialog .repo-rcg-upgrade-grid-v2129{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129{position:relative!important;display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:center!important;gap:9px!important;min-height:62px!important;padding:8px!important;box-sizing:border-box!important;border:1px solid rgba(153,184,200,.18)!important;border-radius:7px!important;background:linear-gradient(145deg,rgba(19,47,67,.74),rgba(6,23,35,.86))!important;color:#dfe8eb!important;text-align:left!important;cursor:pointer!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.018)!important}
#repoRcgBinderDialog button.repo-rcg-upgrade-choice-v2129{font:inherit!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129:hover{border-color:rgba(211,173,89,.42)!important;filter:brightness(1.08)!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129.is-selected{border-color:#d0a34c!important;box-shadow:0 0 14px rgba(63,204,214,.10),inset 0 0 0 1px rgba(211,171,83,.16)!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129.is-locked{opacity:.83!important;cursor:default!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129>span{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129 b{color:#f0d48d!important;font:900 10px/1.05 Arial,sans-serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129 small{color:#91aaba!important;font:700 7.5px/1.15 Arial,sans-serif!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129 em{color:#70ccd3!important;font:900 6.5px/1 Arial,sans-serif!important;font-style:normal!important;letter-spacing:.07em!important}
#repoRcgBinderDialog .repo-rcg-upgrade-choice-v2129 span>button{all:unset!important;margin-top:3px!important;padding:5px 7px!important;border:1px solid #9f732f!important;border-radius:4px!important;background:#1d3446!important;color:#e5c879!important;font:900 7px/1 Arial,sans-serif!important;text-align:center!important;cursor:pointer!important}
#repoRcgBinderDialog .repo-rcg-theme-dot-v2129,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129,#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129,#repoRcgBinderDialog .repo-rcg-music-swatch-v2129{width:36px!important;height:36px!important;border-radius:8px!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;border:1px solid rgba(228,200,126,.34)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 4px 9px rgba(0,0,0,.28)!important}
#repoRcgBinderDialog .repo-rcg-theme-dot-v2129{border-radius:50%!important;background:radial-gradient(circle at 32% 28%,var(--dot2),var(--dot) 52%,#07121c 100%)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129{background:radial-gradient(circle at 32% 32%,var(--rcgu-c),var(--rcgu-a) 42%,var(--rcgu-deep) 100%)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-embers,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-inferno,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-phoenix{background:radial-gradient(circle,#ffd37c,#b13f14 48%,#270704)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-goldfall,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-dragonhoard,#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129.finish-classic{background:linear-gradient(135deg,#ffe18a,#8c5b16)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-moonmist,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-stormwind,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-smokeveil,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-dawnmist{background:linear-gradient(135deg,#e2eef5,#637a8a)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-voidrift,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-celestial{background:radial-gradient(circle,#b377ff,#331b6e 55%,#080819)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-enchantedwilds{background:linear-gradient(135deg,#97e985,#185c38)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-tidalstream,#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-aurora{background:linear-gradient(135deg,#8cf6f4,#195e88,#693f9a)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-autumnstream{background:linear-gradient(135deg,#f4b34a,#8f371c)!important}
#repoRcgBinderDialog .repo-rcg-effect-swatch-v2129.effect-nightrain{background:linear-gradient(135deg,#566fae,#111827)!important}
#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129.finish-crystal{background:linear-gradient(135deg,#fff,#96d9f4)!important}
#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129.finish-shadow{background:linear-gradient(135deg,#333c44,#090d11)!important}
#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129.finish-platinum{background:linear-gradient(135deg,#f0f4f6,#8898a4)!important}
#repoRcgBinderDialog .repo-rcg-finish-swatch-v2129.finish-enchanted{background:linear-gradient(135deg,var(--rcgu-c),var(--rcgu-a),#d6aa4e)!important}
#repoRcgBinderDialog .repo-rcg-music-swatch-v2129{background:linear-gradient(145deg,#173751,#091d30)!important;color:#f0cd77!important;font:900 14px/1 Georgia,serif!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:10px 14px!important;border-top:1px solid rgba(201,154,63,.28)!important;background:#071521!important}
#repoRcgBinderDialog .repo-rcg-upgrade-status-v2129{color:#88b8c7!important;font:800 7.5px/1.2 Arial,sans-serif!important;letter-spacing:.06em!important}
#repoRcgBinderDialog .repo-rcg-upgrade-status-v2129.is-error{color:#ef9b8d!important}
#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129>footer button{all:unset!important;padding:7px 9px!important;border:1px solid #87632f!important;background:#142a3b!important;color:#d7bd7c!important;font:900 7px/1 Arial,sans-serif!important;cursor:pointer!important;white-space:nowrap!important}

@media(max-width:1100px){#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129{right:14px!important;width:min(430px,44vw)!important}}
@media(max-width:760px){#repoRcgBinderDialog .repo-rcg-upgrade-menu-v2129{left:10px!important;right:10px!important;width:auto!important;top:5vh!important;bottom:5vh!important}#repoRcgBinderDialog .repo-rcg-upgrade-grid-v2129{grid-template-columns:1fr!important}}


/* ========================================================================
   RCG SLAB BINDER v21.30 — PREMIUM GAME-GRADE PERSONALITY EFFECTS
   Layered atmosphere, theme-coloured edge lighting and high-detail particles.
   ======================================================================== */

#repoRcgBinderDialog[data-rcg-upgrade-effect]{
  --rcgfx1:var(--rcgu-c);
  --rcgfx2:var(--rcgu-a);
  --rcgfx3:#d8ad58;
  --rcgfxGlow:color-mix(in srgb,var(--rcgfx1) 42%,transparent);
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno']{--rcgfx1:#ffb448;--rcgfx2:#ff4e16;--rcgfx3:#8d1609}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial']{--rcgfx1:#b99cff;--rcgfx2:#4d9dff;--rcgfx3:#f2f5ff}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard']{--rcgfx1:#ffe394;--rcgfx2:#d49a28;--rcgfx3:#7c4214}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix']{--rcgfx1:#ffd36e;--rcgfx2:#ff5d1c;--rcgfx3:#b91f0f}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift']{--rcgfx1:#d29cff;--rcgfx2:#7635da;--rcgfx3:#231052}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds']{--rcgfx1:#baf49d;--rcgfx2:#40b86b;--rcgfx3:#16603b}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind']{--rcgfx1:#eef8ff;--rcgfx2:#8dc5e8;--rcgfx3:#55788f}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil']{--rcgfx1:#dce4eb;--rcgfx2:#8495a3;--rcgfx3:#34404a}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream']{--rcgfx1:#ffc65b;--rcgfx2:#dd6e2f;--rcgfx3:#7c311e}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream']{--rcgfx1:#91f5ff;--rcgfx2:#20a8d3;--rcgfx3:#15557f}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist']{--rcgfx1:#fff1b4;--rcgfx2:#d6dce1;--rcgfx3:#b98552}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain']{--rcgfx1:#9bc8ff;--rcgfx2:#455d9f;--rcgfx3:#15234e}

/* The whole binder now takes on the personality of its selected animation. */
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-book{
  box-shadow:
    0 28px 50px rgba(0,0,0,.66),
    0 0 42px color-mix(in srgb,var(--rcgfx1) 20%,transparent),
    0 0 100px color-mix(in srgb,var(--rcgfx2) 10%,transparent),
    inset 0 0 0 2px rgba(204,155,63,.82),
    inset 0 0 0 6px var(--rcgu-deep),
    inset 0 0 42px color-mix(in srgb,var(--rcgfx2) 23%,transparent)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-page{
  box-shadow:
    inset 0 0 0 3px var(--rcgu-deep),
    inset 0 0 24px color-mix(in srgb,var(--rcgfx2) 18%,rgba(0,0,0,.35)),
    0 0 18px color-mix(in srgb,var(--rcgfx1) 10%,transparent)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-spine-plaque i{
  background:linear-gradient(135deg,var(--rcgfx1),var(--rcgfx2))!important;
  box-shadow:0 0 7px var(--rcgfx1),0 0 20px color-mix(in srgb,var(--rcgfx2) 48%,transparent)!important;
}

/* Layer stack lives behind slabs but above the page artwork. */
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{
  inset:.7%!important;
  z-index:5!important;
  opacity:1!important;
  overflow:hidden!important;
  border-radius:13px!important;
  mix-blend-mode:screen!important;
  isolation:isolate!important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{z-index:1!important}
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{
  position:absolute!important;inset:0!important;pointer-events:none!important;
}
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130{z-index:2!important;opacity:.9!important}
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130{z-index:3!important;opacity:.72!important}
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130{z-index:4!important;overflow:hidden!important}
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{z-index:5!important;opacity:0!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129{display:none!important}

/* Generic premium particles. Each effect changes their shape/behaviour below. */
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130 i{
  --px:calc(var(--x) * 1%);
  position:absolute!important;
  left:var(--px)!important;
  top:calc((var(--d) * 2.1) * 1%)!important;
  width:3px!important;height:3px!important;
  border-radius:50%!important;
  background:var(--rcgfx1)!important;
  box-shadow:0 0 7px var(--rcgfx1),0 0 14px color-mix(in srgb,var(--rcgfx2) 55%,transparent)!important;
  opacity:.72!important;
  animation:repoRcgPremiumFloatV2130 calc(var(--s) * .085s) linear calc(var(--n) * -.23s) infinite!important;
}

/* -------------------------- STANDARD EFFECTS --------------------------- */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-atmos-v2130{
  background:radial-gradient(ellipse at 50% 42%,color-mix(in srgb,var(--rcgu-a) 16%,transparent),transparent 62%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-particles-v2130 i:nth-child(3n){width:5px!important;height:5px!important;background:#fff8dc!important;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)!important;animation-name:repoRcgPremiumTwinkleV2130!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-atmos-v2130{
  inset:-25%!important;filter:blur(26px)!important;
  background:conic-gradient(from 210deg at 45% 50%,transparent 0 14%,color-mix(in srgb,var(--rcgu-c) 46%,transparent) 18% 27%,transparent 33% 47%,color-mix(in srgb,var(--rcgu-a) 42%,transparent) 53% 64%,transparent 70%)!important;
  animation:repoRcgAuroraRollV2130 11s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-ribbon-v2130{
  inset:-18%!important;filter:blur(18px)!important;background:linear-gradient(115deg,transparent 18%,rgba(128,255,224,.18),rgba(126,172,255,.2),rgba(218,139,255,.16),transparent 78%)!important;animation:repoRcgRibbonSweepV2130 7.5s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-atmos-v2130{
  background:radial-gradient(ellipse at 50% 115%,rgba(255,93,17,.25),transparent 55%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-particles-v2130 i{width:4px!important;height:7px!important;border-radius:70% 30% 70% 30%!important;background:#ffb542!important;animation:repoRcgEmberRiseV2130 calc(4.2s + (var(--n) * .08s)) linear calc(var(--n) * -.31s) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-particles-v2130 i{width:4px!important;height:4px!important;background:#ffe69a!important;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)!important;animation:repoRcgGoldFallV2130 calc(5.2s + (var(--n) * .11s)) linear calc(var(--n) * -.27s) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-ribbon-v2130{background:linear-gradient(110deg,transparent 35%,rgba(255,223,128,.17) 48%,rgba(255,247,206,.26) 51%,transparent 63%)!important;animation:repoRcgReflectSweepV2130 5.8s ease-in-out infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-atmos-v2130{
  inset:-20%!important;filter:blur(30px)!important;background:radial-gradient(ellipse at 25% 66%,rgba(226,240,252,.24),transparent 38%),radial-gradient(ellipse at 76% 45%,rgba(206,225,241,.2),transparent 40%),radial-gradient(ellipse at 50% 96%,rgba(255,242,205,.16),transparent 45%)!important;animation:repoRcgFogRollV2130 12s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-particles-v2130 i{width:auto!important;height:auto!important;background:none!important;box-shadow:none!important;color:color-mix(in srgb,var(--rcgu-c) 65%,#fff)!important;font:900 12px/1 Georgia,serif!important;opacity:.28!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-particles-v2130 i::before{content:'◇'!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-particles-v2130 i{background:#fff4a7!important;box-shadow:0 0 7px #ffe568,0 0 17px rgba(255,222,64,.62)!important;animation:repoRcgFireflyV2130 calc(5s + (var(--n) * .12s)) ease-in-out calc(var(--n) * -.3s) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-ribbon-v2130{inset:-20%!important;background:linear-gradient(118deg,transparent 43%,rgba(255,255,255,.0) 45%,rgba(255,255,255,.86) 49%,color-mix(in srgb,var(--rcgu-c) 78%,transparent) 51%,transparent 58%)!important;filter:blur(1px)!important;transform:translateX(-95%)!important;animation:repoRcgCometProV2130 6.2s cubic-bezier(.18,.65,.22,1) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-atmos-v2130{background:repeating-radial-gradient(circle at 50% 50%,transparent 0 84px,color-mix(in srgb,var(--rcgu-c) 23%,transparent) 86px 88px,transparent 91px 145px)!important;animation:repoRcgRippleProV2130 4.8s ease-out infinite!important}

/* ------------------------- LEGENDARY EFFECTS -------------------------- */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-atmos-v2130{
  inset:-12%!important;filter:blur(12px)!important;
  background:radial-gradient(ellipse at 18% 112%,rgba(255,62,8,.58),transparent 34%),radial-gradient(ellipse at 50% 118%,rgba(255,159,31,.48),transparent 42%),radial-gradient(ellipse at 82% 112%,rgba(255,57,8,.55),transparent 34%)!important;
  animation:repoRcgInfernoBreathV2130 2.4s ease-in-out infinite!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-ribbon-v2130{
  inset:25% -15% -25%!important;filter:blur(7px)!important;background:repeating-conic-gradient(from 200deg at 50% 120%,transparent 0 6deg,rgba(255,121,20,.16) 8deg 13deg,transparent 15deg 23deg)!important;animation:repoRcgFlameTonguesV2130 2.2s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-particles-v2130 i,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-particles-v2130 i{width:5px!important;height:8px!important;border-radius:70% 30% 75% 25%!important;background:linear-gradient(#fff0a4,#ff9d2f 48%,#ef3b12)!important;animation:repoRcgEmberRiseV2130 calc(3.2s + (var(--n) * .08s)) linear calc(var(--n) * -.27s) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-atmos-v2130{
  inset:-12%!important;filter:blur(10px)!important;background:radial-gradient(circle at 24% 20%,rgba(126,81,255,.48),transparent 28%),radial-gradient(circle at 72% 58%,rgba(40,175,255,.38),transparent 34%),radial-gradient(circle at 52% 88%,rgba(221,106,255,.22),transparent 32%)!important;animation:repoRcgNebulaBreathV2130 8s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-particles-v2130 i:nth-child(4n){width:6px!important;height:6px!important;background:#fff!important;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)!important;animation-name:repoRcgPremiumTwinkleV2130!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-flash-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-flash-v2130{background:linear-gradient(118deg,transparent 42%,rgba(215,234,255,.85) 48%,#fff 49%,transparent 51%)!important;animation:repoRcgLightningV2130 6.8s steps(1,end) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-atmos-v2130{background:radial-gradient(ellipse at 50% 112%,rgba(255,184,38,.46),transparent 50%),linear-gradient(125deg,transparent 20%,rgba(255,221,132,.08) 48%,transparent 75%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-particles-v2130 i{width:6px!important;height:6px!important;border-radius:0!important;transform:rotate(45deg)!important;background:linear-gradient(135deg,#fff3bd,#d99a2d)!important;animation:repoRcgHoardGlintV2130 calc(4.5s + (var(--n)*.07s)) ease-in-out calc(var(--n)*-.33s) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-ribbon-v2130{background:linear-gradient(110deg,transparent 30%,rgba(255,240,189,.12) 45%,rgba(255,255,255,.45) 50%,rgba(255,214,111,.18) 54%,transparent 68%)!important;transform:translateX(-100%)!important;animation:repoRcgReflectSweepV2130 4.4s ease-in-out infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-atmos-v2130{inset:-16%!important;filter:blur(16px)!important;background:conic-gradient(from 200deg at 50% 76%,transparent 0 16%,rgba(255,65,18,.42) 20% 28%,rgba(255,213,94,.32) 31% 37%,transparent 42% 58%,rgba(255,213,94,.32) 63% 69%,rgba(255,65,18,.42) 72% 80%,transparent 84%)!important;animation:repoRcgPhoenixWingsV2130 4.4s ease-in-out infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-flash-v2130{background:radial-gradient(circle at 50% 72%,rgba(255,246,193,.82),rgba(255,141,40,.25) 22%,transparent 44%)!important;animation:repoRcgPhoenixPulseV2130 4.4s ease-in-out infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-atmos-v2130{inset:4% 22%!important;border-radius:50%!important;background:repeating-radial-gradient(ellipse at 50% 50%,rgba(180,110,255,.24) 0 2px,transparent 5px 32px),radial-gradient(circle at 50% 50%,rgba(62,12,113,.5),transparent 58%)!important;filter:blur(1px)!important;animation:repoRcgVortexV2130 13s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-ribbon-v2130{inset:12% 30%!important;border-radius:50%!important;border:2px solid rgba(208,159,255,.22)!important;box-shadow:0 0 25px rgba(154,69,255,.32),inset 0 0 25px rgba(98,26,184,.3)!important;animation:repoRcgVortexReverseV2130 8s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-particles-v2130 i{border-radius:0!important;clip-path:polygon(50% 0,100% 35%,72% 100%,18% 82%,0 30%)!important;background:#c38bff!important;animation:repoRcgShardOrbitV2130 calc(5s + var(--n)*.11s) ease-in-out calc(var(--n)*-.3s) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-atmos-v2130{background:radial-gradient(ellipse at 0 100%,rgba(55,182,94,.34),transparent 38%),radial-gradient(ellipse at 100% 100%,rgba(117,222,111,.26),transparent 40%),radial-gradient(circle at 50% 30%,rgba(188,247,159,.12),transparent 45%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-particles-v2130 i{width:6px!important;height:10px!important;border-radius:90% 10% 90% 10%!important;background:linear-gradient(135deg,#c9f4a4,#4bad68)!important;animation:repoRcgLeafDriftV2130 calc(6s + var(--n)*.1s) ease-in-out calc(var(--n)*-.32s) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-ribbon-v2130{background:radial-gradient(circle at 20% 80%,rgba(172,255,174,.18),transparent 25%),radial-gradient(circle at 80% 65%,rgba(112,239,142,.16),transparent 26%)!important;filter:blur(8px)!important;animation:repoRcgWildsBreathV2130 5.8s ease-in-out infinite alternate!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-ribbon-v2130{inset:-20%!important;background:repeating-linear-gradient(165deg,transparent 0 46px,rgba(238,249,255,.28) 49px 51px,transparent 54px 90px)!important;filter:blur(.6px)!important;animation:repoRcgStormSweepV2130 2.8s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-particles-v2130 i{width:18px!important;height:1px!important;border-radius:99px!important;background:#e8f7ff!important;animation:repoRcgWindParticleV2130 calc(2.2s + var(--n)*.035s) linear calc(var(--n)*-.15s) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-atmos-v2130{inset:-20%!important;filter:blur(34px)!important;background:radial-gradient(ellipse at 12% 62%,rgba(214,224,232,.28),transparent 35%),radial-gradient(ellipse at 48% 46%,rgba(119,137,153,.24),transparent 40%),radial-gradient(ellipse at 86% 60%,rgba(214,224,232,.22),transparent 36%)!important;animation:repoRcgSmokeRollV2130 10s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-ribbon-v2130{inset:-15%!important;filter:blur(24px)!important;background:radial-gradient(ellipse at 25% 55%,rgba(255,255,255,.13),transparent 32%),radial-gradient(ellipse at 70% 50%,rgba(166,181,194,.14),transparent 34%)!important;animation:repoRcgSmokeRollV2130 7s ease-in-out -3s infinite alternate-reverse!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-particles-v2130 i{width:7px!important;height:10px!important;border-radius:80% 10% 80% 10%!important;background:linear-gradient(135deg,#ffc65b,#b94e29)!important;animation:repoRcgAutumnLeafV2130 calc(5.5s + var(--n)*.09s) ease-in-out calc(var(--n)*-.28s) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-atmos-v2130{background:linear-gradient(180deg,rgba(255,188,72,.05),transparent 42%),radial-gradient(ellipse at 50% 110%,rgba(180,70,27,.22),transparent 48%)!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-ribbon-v2130{inset:3% -20%!important;background:repeating-radial-gradient(ellipse at 50% 130%,transparent 0 74px,rgba(91,231,255,.24) 77px 81px,transparent 84px 126px)!important;animation:repoRcgTidalRollV2130 5.2s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-particles-v2130 i{width:5px!important;height:5px!important;background:#8cf4ff!important;animation:repoRcgBubbleRiseV2130 calc(4.5s + var(--n)*.08s) ease-in calc(var(--n)*-.23s) infinite!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-ribbon-v2130{background:linear-gradient(115deg,rgba(255,240,178,.23),rgba(255,255,255,.04) 22%,transparent 43%)!important;clip-path:polygon(0 0,62% 0,39% 100%,0 100%)!important;filter:blur(5px)!important;animation:repoRcgSunRayV2130 6s ease-in-out infinite alternate!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-atmos-v2130{background:linear-gradient(180deg,rgba(29,48,93,.2),transparent 60%),radial-gradient(circle at 72% 12%,rgba(122,162,255,.18),transparent 25%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-particles-v2130 i{width:1.5px!important;height:26px!important;border-radius:99px!important;background:linear-gradient(180deg,rgba(174,211,255,0),#a9d5ff)!important;box-shadow:none!important;transform:rotate(12deg)!important;animation:repoRcgRainDropV2130 calc(1.2s + var(--n)*.018s) linear calc(var(--n)*-.09s) infinite!important}

/* Legendary effects receive stronger pocket-edge identity without tinting art. */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-v2118-pocket,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-v2118-pocket{
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--rcgfx3) 48%,rgba(206,161,73,.62)),
    inset 0 0 0 2px rgba(255,255,255,.88),
    inset 0 0 18px color-mix(in srgb,var(--rcgfx2) 10%,rgba(103,129,142,.16)),
    0 0 12px color-mix(in srgb,var(--rcgfx1) 16%,transparent),
    0 3px 5px rgba(57,39,13,.16)!important;
}

/* Animation library. */
@keyframes repoRcgPremiumFloatV2130{0%{transform:translate3d(0,18px,0) scale(.6);opacity:0}18%{opacity:.75}62%{opacity:.55}100%{transform:translate3d(calc((var(--n) % 5 - 2)*9px),-120px,0) scale(1.15);opacity:0}}
@keyframes repoRcgPremiumTwinkleV2130{0%,100%{transform:scale(.35) rotate(0);opacity:.12}45%{transform:scale(1.35) rotate(45deg);opacity:1}70%{transform:scale(.65) rotate(90deg);opacity:.3}}
@keyframes repoRcgAuroraRollV2130{from{transform:translate3d(-7%,-2%,0) rotate(-4deg) scale(1.04)}to{transform:translate3d(8%,4%,0) rotate(5deg) scale(1.14)}}
@keyframes repoRcgRibbonSweepV2130{from{transform:translateX(-12%) skewX(-7deg)}to{transform:translateX(13%) skewX(7deg)}}
@keyframes repoRcgEmberRiseV2130{0%{transform:translate3d(0,125px,0) rotate(0) scale(.45);opacity:0}14%{opacity:1}72%{opacity:.75}100%{transform:translate3d(calc((var(--n)%7 - 3)*11px),-135px,0) rotate(240deg) scale(1.2);opacity:0}}
@keyframes repoRcgGoldFallV2130{0%{transform:translate3d(0,-90px,0) rotate(0) scale(.6);opacity:0}18%{opacity:.9}100%{transform:translate3d(calc((var(--n)%5 - 2)*14px),125px,0) rotate(270deg) scale(1.15);opacity:0}}
@keyframes repoRcgReflectSweepV2130{0%,15%{transform:translateX(-110%);opacity:0}28%{opacity:.8}58%{transform:translateX(110%);opacity:.16}100%{transform:translateX(110%);opacity:0}}
@keyframes repoRcgFogRollV2130{from{transform:translateX(-7%) scale(1.03);opacity:.62}to{transform:translateX(8%) scale(1.12);opacity:.95}}
@keyframes repoRcgFireflyV2130{0%,100%{transform:translate(0,12px) scale(.5);opacity:.15}35%{transform:translate(8px,-22px) scale(1.25);opacity:1}70%{transform:translate(-6px,-58px) scale(.7);opacity:.35}}
@keyframes repoRcgCometProV2130{0%,63%{transform:translateX(-105%);opacity:0}67%{opacity:1}82%{transform:translateX(100%);opacity:.85}85%,100%{transform:translateX(105%);opacity:0}}
@keyframes repoRcgRippleProV2130{0%{transform:scale(.76);opacity:.72}75%,100%{transform:scale(1.15);opacity:0}}
@keyframes repoRcgInfernoBreathV2130{0%,100%{transform:scaleY(.93) scaleX(1);filter:brightness(.9) blur(12px)}50%{transform:scaleY(1.12) scaleX(1.03);filter:brightness(1.18) blur(10px)}}
@keyframes repoRcgFlameTonguesV2130{from{transform:translateY(5%) scaleX(.96)}to{transform:translateY(-6%) scaleX(1.06)}}
@keyframes repoRcgNebulaBreathV2130{from{transform:translate(-3%,-2%) scale(1.02) rotate(-2deg)}to{transform:translate(4%,3%) scale(1.1) rotate(3deg)}}
@keyframes repoRcgLightningV2130{0%,70%,74%,100%{opacity:0}71%{opacity:.65}72%{opacity:.08}73%{opacity:.42}}
@keyframes repoRcgHoardGlintV2130{0%,100%{opacity:.12;transform:translateY(14px) rotate(45deg) scale(.5)}45%{opacity:1;transform:translateY(-22px) rotate(135deg) scale(1.35)}}
@keyframes repoRcgPhoenixWingsV2130{0%,100%{transform:scale(.92) rotate(-1deg);opacity:.55}50%{transform:scale(1.08) rotate(1deg);opacity:1}}
@keyframes repoRcgPhoenixPulseV2130{0%,100%{opacity:.08;transform:scale(.82)}50%{opacity:.62;transform:scale(1.12)}}
@keyframes repoRcgVortexV2130{to{transform:rotate(360deg) scale(1.08)}}
@keyframes repoRcgVortexReverseV2130{to{transform:rotate(-360deg) scale(.94)}}
@keyframes repoRcgShardOrbitV2130{0%,100%{transform:translate(0,18px) rotate(0) scale(.5);opacity:.15}50%{transform:translate(calc((var(--n)%7 - 3)*13px),-32px) rotate(180deg) scale(1.2);opacity:.9}}
@keyframes repoRcgLeafDriftV2130{0%{transform:translate(-35px,-60px) rotate(0);opacity:0}15%{opacity:.85}55%{transform:translate(22px,25px) rotate(180deg);opacity:.78}100%{transform:translate(-12px,120px) rotate(360deg);opacity:0}}
@keyframes repoRcgWildsBreathV2130{from{transform:scale(.96);opacity:.5}to{transform:scale(1.08);opacity:.9}}
@keyframes repoRcgStormSweepV2130{to{background-position:220px 35px}}
@keyframes repoRcgWindParticleV2130{0%{transform:translate(-110px,40px) rotate(-10deg);opacity:0}12%{opacity:.8}100%{transform:translate(220px,-70px) rotate(-10deg);opacity:0}}
@keyframes repoRcgSmokeRollV2130{from{transform:translateX(-9%) scale(1.02);opacity:.55}to{transform:translateX(10%) scale(1.12);opacity:.9}}
@keyframes repoRcgAutumnLeafV2130{0%{transform:translate(-40px,-80px) rotate(0);opacity:0}12%{opacity:.9}55%{transform:translate(25px,28px) rotate(180deg);opacity:.82}100%{transform:translate(-20px,125px) rotate(390deg);opacity:0}}
@keyframes repoRcgTidalRollV2130{from{transform:translateX(-4%) scaleY(.96)}to{transform:translateX(5%) scaleY(1.08)}}
@keyframes repoRcgBubbleRiseV2130{0%{transform:translateY(115px) scale(.4);opacity:0}20%{opacity:.72}100%{transform:translateY(-120px) scale(1.15);opacity:0}}
@keyframes repoRcgSunRayV2130{from{opacity:.35;transform:translateX(-3%) rotate(-1deg)}to{opacity:.78;transform:translateX(5%) rotate(1deg)}}
@keyframes repoRcgRainDropV2130{0%{transform:translate(30px,-90px) rotate(12deg);opacity:0}12%{opacity:.75}100%{transform:translate(-25px,140px) rotate(12deg);opacity:0}}


/* ========================================================================
   RCG SLAB BINDER v21.31 — PREMIUM COSMETIC REBUILD
   Stronger theme identity, layered depth, cinematic light and cleaner motion.
   Effects remain below slab art so readability stays intact.
   ======================================================================== */

#repoRcgBinderDialog[data-rcg-upgrade-effect]{
  --rcg31-edge:var(--rcgfx1);
  --rcg31-secondary:var(--rcgfx2);
  --rcg31-deep:var(--rcgfx3);
  --rcg31-soft:color-mix(in srgb,var(--rcgfx1) 18%,transparent);
  --rcg31-strong:color-mix(in srgb,var(--rcgfx2) 38%,transparent);
}
/* Standard effects get their own deliberate palettes too. */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust']{--rcgfx1:#d9eeff;--rcgfx2:#78aee9;--rcgfx3:#344f78}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora']{--rcgfx1:#90ffe0;--rcgfx2:#ad88ff;--rcgfx3:#2d6d76}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers']{--rcgfx1:#ffc060;--rcgfx2:#ff6328;--rcgfx3:#782513}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall']{--rcgfx1:#ffe7a3;--rcgfx2:#d99d33;--rcgfx3:#80531d}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist']{--rcgfx1:#e3f1ff;--rcgfx2:#91aeca;--rcgfx3:#53687c}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes']{--rcgfx1:#8bf3e9;--rcgfx2:#d9b56b;--rcgfx3:#255a5c}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies']{--rcgfx1:#e8ff9d;--rcgfx2:#7bd46c;--rcgfx3:#386538}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet']{--rcgfx1:#f5fbff;--rcgfx2:#71c8ff;--rcgfx3:#315b82}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple']{--rcgfx1:#9df4ff;--rcgfx2:#479ed0;--rcgfx3:#23577b}

#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131{
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
}
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131{z-index:1!important;opacity:.9!important}
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130{z-index:2!important}
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130{z-index:3!important}
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131{z-index:4!important;opacity:.5!important}
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130{z-index:5!important}
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131{z-index:6!important;opacity:.62!important}
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{z-index:7!important}

/* Cinematic binder lighting — cosmetics colour the physical binder, not card art. */
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-book{
  border-color:color-mix(in srgb,var(--rcg31-edge) 34%,#182b3e)!important;
  background:
    radial-gradient(ellipse at 50% -12%,color-mix(in srgb,var(--rcg31-secondary) 14%,transparent),transparent 48%),
    linear-gradient(90deg,color-mix(in srgb,var(--rcg31-deep) 18%,transparent),transparent 13%,transparent 87%,color-mix(in srgb,var(--rcg31-deep) 18%,transparent)),
    repeating-linear-gradient(7deg,rgba(255,255,255,.018) 0 1px,rgba(0,0,0,.02) 1px 3px),
    linear-gradient(180deg,#162d47 0%,#0d2138 42%,#08182b 100%)!important;
  box-shadow:
    0 28px 58px rgba(0,0,0,.70),
    0 0 32px color-mix(in srgb,var(--rcg31-edge) 20%,transparent),
    0 0 92px color-mix(in srgb,var(--rcg31-secondary) 13%,transparent),
    inset 0 0 0 2px rgba(211,164,72,.88),
    inset 0 0 0 6px #071628,
    inset 0 18px 44px color-mix(in srgb,var(--rcg31-secondary) 13%,transparent),
    inset 0 -24px 56px color-mix(in srgb,var(--rcg31-deep) 16%,transparent)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-page{
  background:
    radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--rcg31-secondary) 12%,transparent),transparent 52%),
    linear-gradient(180deg,color-mix(in srgb,var(--rcg31-deep) 9%,#142b43),#0d2138)!important;
  border-color:color-mix(in srgb,var(--rcg31-edge) 32%,rgba(213,171,88,.62))!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-spine{
  filter:drop-shadow(0 0 11px color-mix(in srgb,var(--rcg31-edge) 16%,transparent))!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect]:not([data-rcg-upgrade-effect='calm']) .repo-rcg-v2118-pocket{
  border-color:color-mix(in srgb,var(--rcg31-edge) 28%,#c69d4f)!important;
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--rcg31-edge) 24%,rgba(206,161,73,.56)),
    inset 0 0 0 2px rgba(255,255,255,.9),
    inset 0 0 16px color-mix(in srgb,var(--rcg31-secondary) 7%,rgba(103,129,142,.10)),
    0 0 11px color-mix(in srgb,var(--rcg31-edge) 11%,transparent),
    0 4px 8px rgba(33,24,12,.16)!important;
}

/* Premium edge light / glass sweep. */
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131{
  inset:1.4%!important;
  border-radius:11px!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.13),
    inset 0 -1px 0 rgba(0,0,0,.25),
    inset 0 0 24px color-mix(in srgb,var(--rcg31-edge) 6%,transparent)!important;
  background:linear-gradient(112deg,transparent 0 37%,rgba(255,255,255,.035) 43%,rgba(255,255,255,.11) 48%,rgba(255,255,255,.025) 53%,transparent 61%)!important;
  transform:translateX(-75%)!important;
  animation:repoRcg31GlassSweep 10s ease-in-out infinite!important;
}

/* --------------------------- STANDARD PREMIUM -------------------------- */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 50% 45%,rgba(84,121,186,.16),transparent 40%),radial-gradient(circle at 18% 28%,rgba(185,222,255,.08),transparent 23%),radial-gradient(circle at 82% 70%,rgba(118,163,225,.08),transparent 27%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-sigil-v2131{
  background:radial-gradient(circle at 50% 50%,transparent 0 45%,rgba(205,233,255,.055) 45.3% 45.7%,transparent 46%)!important;
  animation:repoRcg31Breathe 7s ease-in-out infinite!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-particles-v2130 i{opacity:.85!important;box-shadow:0 0 5px #dff3ff,0 0 14px rgba(119,174,236,.55)!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-depth-v2131{
  inset:-15%!important;filter:blur(30px)!important;background:radial-gradient(ellipse at 20% 65%,rgba(76,255,201,.16),transparent 35%),radial-gradient(ellipse at 75% 30%,rgba(155,102,255,.16),transparent 38%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-sigil-v2131{
  inset:-12%!important;filter:blur(10px)!important;background:linear-gradient(110deg,transparent 10%,rgba(90,255,211,.09) 27%,rgba(124,174,255,.13) 48%,rgba(197,121,255,.10) 67%,transparent 83%)!important;animation:repoRcg31AuroraVeil 12s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 50% 120%,rgba(255,75,12,.32),transparent 58%),linear-gradient(180deg,transparent 52%,rgba(111,25,8,.08))!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-v2118-book{box-shadow:0 28px 58px rgba(0,0,0,.7),0 12px 50px rgba(255,81,16,.15),inset 0 0 0 2px rgba(211,164,72,.88),inset 0 0 0 6px #071628,inset 0 -28px 58px rgba(145,38,9,.18)!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 50% 0%,rgba(255,222,132,.18),transparent 53%),radial-gradient(ellipse at 50% 110%,rgba(177,115,21,.14),transparent 48%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-sigil-v2131{
  background:repeating-linear-gradient(118deg,transparent 0 110px,rgba(255,226,149,.04) 112px 113px,transparent 115px 210px)!important;animation:repoRcg31GoldParallax 16s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(180deg,rgba(171,200,225,.06),transparent 58%),radial-gradient(ellipse at 40% 90%,rgba(225,240,251,.18),transparent 42%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-sigil-v2131{
  inset:35% -15% -12%!important;filter:blur(25px)!important;background:radial-gradient(ellipse at 30% 50%,rgba(243,248,252,.16),transparent 33%),radial-gradient(ellipse at 70% 55%,rgba(174,198,219,.14),transparent 36%)!important;animation:repoRcg31MistLayer 13s ease-in-out infinite alternate-reverse!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 50% 50%,rgba(53,188,174,.10),transparent 54%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-sigil-v2131::before{
  content:'ᚱ  ✦  ᛉ  ᚦ  ◇  ᚨ  ✧  ᛟ  ᛞ  ✦  ᚱ  ◇  ᛉ'!important;position:absolute!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;color:rgba(140,243,233,.18)!important;font:900 clamp(18px,2.1vw,32px)/1 Georgia,serif!important;letter-spacing:clamp(18px,2.6vw,42px)!important;text-shadow:0 0 12px rgba(74,220,209,.28)!important;white-space:nowrap!important;animation:repoRcg31RuneDrift 22s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 50% 110%,rgba(48,116,50,.18),transparent 55%),radial-gradient(circle at 20% 40%,rgba(165,228,104,.06),transparent 24%),radial-gradient(circle at 80% 32%,rgba(165,228,104,.06),transparent 24%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-particles-v2130 i:nth-child(4n){width:5px!important;height:5px!important;opacity:1!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 62% 36%,rgba(87,159,222,.12),transparent 36%),radial-gradient(circle at 25% 75%,rgba(75,111,164,.08),transparent 30%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-sigil-v2131{
  background:radial-gradient(circle,#fff 0 1px,transparent 1.6px)!important;background-size:120px 110px!important;opacity:.22!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 50% 50%,rgba(60,175,219,.12),transparent 45%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-sigil-v2131{
  inset:8%!important;border-radius:50%!important;border:1px solid rgba(125,231,246,.10)!important;box-shadow:0 0 0 22px rgba(125,231,246,.025),0 0 0 46px rgba(125,231,246,.018),0 0 30px rgba(71,158,208,.14)!important;animation:repoRcg31RippleRing 5.5s ease-in-out infinite!important;
}

/* -------------------------- LEGENDARY PREMIUM ------------------------- */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(180deg,transparent 35%,rgba(95,15,4,.10) 62%,rgba(205,50,8,.24) 100%),radial-gradient(ellipse at 50% 112%,rgba(255,132,24,.42),transparent 52%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-sigil-v2131{
  inset:34% -12% -18%!important;filter:blur(10px)!important;background:repeating-conic-gradient(from 205deg at 50% 118%,transparent 0 8deg,rgba(255,181,55,.12) 10deg 15deg,rgba(255,65,15,.18) 17deg 23deg,transparent 25deg 34deg)!important;animation:repoRcg31FlameCrown 2.8s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 24% 28%,rgba(142,89,255,.23),transparent 27%),radial-gradient(circle at 75% 62%,rgba(53,152,255,.20),transparent 31%),radial-gradient(circle at 52% 44%,rgba(255,255,255,.055),transparent 46%)!important;filter:saturate(1.18)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-sigil-v2131{
  inset:5% 18%!important;border-radius:50%!important;background:repeating-conic-gradient(from 0deg,rgba(194,164,255,.08) 0 1.5deg,transparent 2deg 16deg)!important;mask-image:radial-gradient(circle,black 0 48%,transparent 74%)!important;animation:repoRcg31GalaxySpin 28s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 50% 112%,rgba(243,175,36,.36),transparent 55%),repeating-radial-gradient(circle at 50% 125%,rgba(255,235,170,.045) 0 4px,transparent 5px 17px)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-sigil-v2131{
  background:repeating-conic-gradient(from 45deg at 50% 50%,rgba(255,230,160,.035) 0 4deg,transparent 4deg 16deg)!important;opacity:.38!important;animation:repoRcg31GoldParallax 22s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 50% 73%,rgba(255,207,81,.23),transparent 18%),radial-gradient(ellipse at 50% 108%,rgba(221,49,12,.22),transparent 50%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-sigil-v2131{
  inset:-8% 10%!important;background:conic-gradient(from 208deg at 50% 76%,transparent 0 13%,rgba(255,80,17,.13) 18% 26%,rgba(255,219,103,.18) 29% 36%,transparent 40% 60%,rgba(255,219,103,.18) 64% 71%,rgba(255,80,17,.13) 74% 82%,transparent 87%)!important;filter:blur(7px)!important;animation:repoRcg31PhoenixBreath 5s ease-in-out infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 50% 50%,rgba(21,4,45,.40),rgba(83,27,137,.18) 22%,transparent 48%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-sigil-v2131{
  inset:9% 28%!important;border-radius:50%!important;border:2px solid rgba(195,139,255,.12)!important;box-shadow:0 0 0 15px rgba(154,89,222,.025),0 0 0 38px rgba(129,66,202,.022),inset 0 0 35px rgba(104,35,182,.20),0 0 45px rgba(128,49,225,.22)!important;animation:repoRcg31RiftPulse 4.8s ease-in-out infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 0 110%,rgba(46,154,79,.28),transparent 42%),radial-gradient(ellipse at 100% 110%,rgba(76,181,82,.24),transparent 42%),radial-gradient(circle at 50% 30%,rgba(181,239,143,.09),transparent 45%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-sigil-v2131{
  background:radial-gradient(circle at 14% 78%,rgba(179,246,150,.10),transparent 14%),radial-gradient(circle at 84% 68%,rgba(115,223,135,.09),transparent 16%)!important;filter:blur(7px)!important;animation:repoRcg31WildPulse 6.8s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(165deg,rgba(197,229,246,.08),transparent 32%,rgba(122,172,204,.07) 68%,transparent)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-sigil-v2131{
  inset:-15%!important;background:repeating-linear-gradient(168deg,transparent 0 70px,rgba(235,248,255,.12) 73px 75px,transparent 78px 132px)!important;filter:blur(.6px)!important;animation:repoRcg31WindField 5.2s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(180deg,rgba(120,135,148,.08),transparent 60%),radial-gradient(ellipse at 50% 100%,rgba(172,181,190,.12),transparent 52%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-sigil-v2131{
  inset:20% -16% -10%!important;filter:blur(30px)!important;background:radial-gradient(ellipse at 20% 55%,rgba(224,230,235,.18),transparent 34%),radial-gradient(ellipse at 55% 42%,rgba(119,131,141,.16),transparent 37%),radial-gradient(ellipse at 84% 60%,rgba(215,222,228,.16),transparent 34%)!important;animation:repoRcg31SmokeLayer 11s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(180deg,rgba(255,185,65,.05),transparent 46%),radial-gradient(ellipse at 50% 110%,rgba(171,67,25,.20),transparent 50%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-sigil-v2131{
  background:linear-gradient(108deg,transparent 30%,rgba(255,202,92,.055) 48%,transparent 66%)!important;animation:repoRcg31AutumnLight 8s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(ellipse at 50% 112%,rgba(29,167,204,.28),transparent 55%),linear-gradient(180deg,rgba(88,218,235,.055),transparent 50%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-sigil-v2131{
  inset:15% -15% -8%!important;background:repeating-radial-gradient(ellipse at 50% 135%,transparent 0 72px,rgba(106,236,249,.12) 75px 79px,transparent 82px 124px)!important;animation:repoRcg31TideField 6.2s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-depth-v2131{
  background:radial-gradient(circle at 8% -6%,rgba(255,228,157,.30),transparent 30%),linear-gradient(115deg,rgba(255,241,196,.09),transparent 38%),radial-gradient(ellipse at 50% 105%,rgba(217,228,232,.15),transparent 48%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-sigil-v2131{
  clip-path:polygon(0 0,62% 0,42% 100%,0 100%)!important;background:linear-gradient(110deg,rgba(255,237,176,.18),rgba(255,255,255,.04) 30%,transparent 72%)!important;filter:blur(5px)!important;animation:repoRcg31SunSweep 7.4s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-depth-v2131{
  background:linear-gradient(180deg,rgba(25,43,86,.24),rgba(12,24,54,.08) 68%,transparent),radial-gradient(circle at 78% 10%,rgba(132,170,255,.16),transparent 25%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-sigil-v2131{
  background:linear-gradient(110deg,transparent 25%,rgba(153,196,255,.05) 44%,transparent 64%)!important;animation:repoRcg31RainGlow 5s ease-in-out infinite alternate!important;
}

/* Legendary cosmetics carry stronger coloured edges and a restrained breathing glow. */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-v2118-book,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-v2118-book{
  animation:repoRcg31LegendaryBinderBreath 5.6s ease-in-out infinite!important;
}

@keyframes repoRcg31GlassSweep{0%,22%{transform:translateX(-75%);opacity:.12}39%{opacity:.55}57%{transform:translateX(75%);opacity:.16}100%{transform:translateX(75%);opacity:.08}}
@keyframes repoRcg31Breathe{0%,100%{opacity:.25;transform:scale(.97)}50%{opacity:.62;transform:scale(1.03)}}
@keyframes repoRcg31AuroraVeil{from{transform:translate(-9%,-3%) skewX(-6deg) scale(1.03)}to{transform:translate(10%,4%) skewX(6deg) scale(1.11)}}
@keyframes repoRcg31GoldParallax{to{background-position:240px 0}}
@keyframes repoRcg31MistLayer{from{transform:translateX(-8%) scale(1.02);opacity:.45}to{transform:translateX(9%) scale(1.12);opacity:.8}}
@keyframes repoRcg31RuneDrift{from{transform:translateX(-8%)}to{transform:translateX(8%)}}
@keyframes repoRcg31RippleRing{0%,100%{transform:scale(.88);opacity:.35}50%{transform:scale(1.08);opacity:.72}}
@keyframes repoRcg31FlameCrown{from{transform:translateY(5%) scaleX(.96);opacity:.62}to{transform:translateY(-7%) scaleX(1.07);opacity:.95}}
@keyframes repoRcg31GalaxySpin{to{transform:rotate(360deg)}}
@keyframes repoRcg31PhoenixBreath{0%,100%{transform:scale(.94);opacity:.55}50%{transform:scale(1.07);opacity:.9}}
@keyframes repoRcg31RiftPulse{0%,100%{transform:scale(.92) rotate(-4deg);opacity:.45}50%{transform:scale(1.08) rotate(4deg);opacity:.9}}
@keyframes repoRcg31WildPulse{from{transform:scale(.96);opacity:.5}to{transform:scale(1.08);opacity:.86}}
@keyframes repoRcg31WindField{to{background-position:260px 70px}}
@keyframes repoRcg31SmokeLayer{from{transform:translateX(-10%) scale(1.01);opacity:.5}to{transform:translateX(11%) scale(1.12);opacity:.86}}
@keyframes repoRcg31AutumnLight{from{transform:translateX(-8%);opacity:.3}to{transform:translateX(8%);opacity:.72}}
@keyframes repoRcg31TideField{from{transform:translateX(-4%) scaleY(.95)}to{transform:translateX(5%) scaleY(1.07)}}
@keyframes repoRcg31SunSweep{from{transform:translateX(-5%) rotate(-1deg);opacity:.35}to{transform:translateX(7%) rotate(1deg);opacity:.82}}
@keyframes repoRcg31RainGlow{from{opacity:.2}to{opacity:.58}}
@keyframes repoRcg31LegendaryBinderBreath{0%,100%{filter:saturate(1) brightness(1)}50%{filter:saturate(1.08) brightness(1.035)}}

@media (prefers-reduced-motion:reduce){
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129 *,
  #repoRcgBinderDialog[data-rcg-upgrade-effect] .repo-rcg-v2118-book{animation-duration:.001ms!important;animation-iteration-count:1!important}
}


/* ======================================================================
   REPO COMPANY V21.32 — RCG EFFECTS REBUILD
   Full low-lag remake of slab binder effects.
   Goal: cleaner, more premium, more varied, less particle spam.
   ====================================================================== */
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{
  inset:1.35% !important;
  border-radius:14px !important;
  opacity:.92 !important;
  mix-blend-mode:screen !important;
  contain:layout paint style !important;
  isolation:isolate !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after,
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130 i{
  will-change:transform,opacity,background-position !important;
  backface-visibility:hidden !important;
}

/* hard reset of the older heavier effect stack */
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after,
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{
  inset:0 !important;
  background:none !important;
  filter:none !important;
  box-shadow:none !important;
  opacity:0 !important;
  animation:none !important;
  transform:none !important;
  clip-path:none !important;
}
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130{
  inset:0 !important;
  opacity:0 !important;
  animation:none !important;
}
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130 i{
  position:absolute !important;
  left:calc(var(--x) * 1%) !important;
  top:calc(8% + ((var(--n) * 7) % 74) * 1%) !important;
  width:6px !important;
  height:6px !important;
  border-radius:999px !important;
  opacity:0 !important;
  background:#fff !important;
  box-shadow:none !important;
  animation:none !important;
  transform:translate3d(0,0,0) !important;
}

#repoRcgBinderDialog .repo-rcg-fx-glass-v2131{
  opacity:.35 !important;
  background:
    linear-gradient(110deg,rgba(255,255,255,.10),transparent 18%,transparent 72%,rgba(255,255,255,.06) 100%),
    linear-gradient(180deg,rgba(255,255,255,.05),transparent 16%,transparent 84%,rgba(255,255,255,.04)) !important;
}
#repoRcgBinderDialog .repo-rcg-book:hover .repo-rcg-fx-glass-v2131{opacity:.46 !important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129{display:none !important}

/* universal subtle premium motion */
@keyframes repoRcgV2132Float {0%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-1.3%,0)}100%{transform:translate3d(0,0,0)}}
@keyframes repoRcgV2132Sweep {0%{transform:translate3d(-6%,0,0)}100%{transform:translate3d(6%,0,0)}}
@keyframes repoRcgV2132SweepWide {0%{transform:translate3d(-14%,0,0)}100%{transform:translate3d(14%,0,0)}}
@keyframes repoRcgV2132Rotate {0%{transform:rotate(0deg) scale(1)}100%{transform:rotate(360deg) scale(1)}}
@keyframes repoRcgV2132Pulse {0%,100%{opacity:.18;transform:scale(.96)}50%{opacity:.52;transform:scale(1.04)}}
@keyframes repoRcgV2132Rise {0%{transform:translate3d(0,28px,0) scale(.85);opacity:0}15%{opacity:.75}100%{transform:translate3d(0,-34px,0) scale(1.08);opacity:0}}
@keyframes repoRcgV2132Fall {0%{transform:translate3d(0,-30px,0) rotate(0deg);opacity:0}15%{opacity:.8}100%{transform:translate3d(0,34px,0) rotate(180deg);opacity:0}}
@keyframes repoRcgV2132Twinkle {0%,100%{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1.2)}}
@keyframes repoRcgV2132Rain {0%{transform:translate3d(-8px,-36px,0);opacity:0}20%{opacity:.6}100%{transform:translate3d(8px,42px,0);opacity:0}}
@keyframes repoRcgV2132Leaf {0%{transform:translate3d(0,-24px,0) rotate(0deg);opacity:0}15%{opacity:.78}50%{transform:translate3d(18px,8px,0) rotate(90deg)}100%{transform:translate3d(-12px,40px,0) rotate(190deg);opacity:0}}
@keyframes repoRcgV2132Orb {0%,100%{transform:translate3d(0,0,0) scale(.88);opacity:.28}50%{transform:translate3d(0,-8px,0) scale(1.08);opacity:.82}}
@keyframes repoRcgV2132Lightning {0%,88%,100%{opacity:0}90%{opacity:.9}92%{opacity:.2}94%{opacity:.8}96%{opacity:0}}

/* helper: effects that do use particles */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-particles-v2130{opacity:1 !important}

/* STARDUST */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-depth-v2131{
  opacity:.28 !important;
  background:radial-gradient(circle at 20% 22%,rgba(148,208,255,.18),transparent 18%),radial-gradient(circle at 76% 66%,rgba(255,244,190,.12),transparent 20%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-sigil-v2131{
  opacity:.20 !important;
  background:radial-gradient(circle at 50% 50%,rgba(145,204,255,.12),transparent 34%) !important;
  animation:repoRcgV2132Pulse 8s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-fx-particles-v2130 i{
  width:4px !important;height:4px !important;background:#fefcff !important;box-shadow:0 0 8px rgba(159,209,255,.55) !important;
  animation:repoRcgV2132Twinkle calc(2.8s + var(--n)*.16s) ease-in-out calc(var(--n)*-.23s) infinite !important;
}

/* AURORA */
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-depth-v2131{
  opacity:.34 !important;
  background:linear-gradient(110deg,rgba(104,240,255,.12),transparent 32%,transparent 62%,rgba(218,142,255,.12)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-atmos-v2130{
  opacity:.66 !important;
  background:radial-gradient(120% 50% at 12% 70%,rgba(92,255,238,.22),transparent 34%),radial-gradient(110% 50% at 84% 28%,rgba(198,112,255,.20),transparent 30%) !important;
  animation:repoRcgV2132SweepWide 8s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-fx-ribbon-v2130{
  opacity:.58 !important;
  background:linear-gradient(118deg,transparent 18%,rgba(123,255,239,.22) 32%,rgba(188,131,255,.22) 50%,transparent 66%) !important;
  filter:blur(4px) !important;
  animation:repoRcgV2132Sweep 7s ease-in-out infinite alternate !important;
}

/* EMBERS */
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-depth-v2131{
  opacity:.38 !important;background:radial-gradient(ellipse at 50% 112%,rgba(255,114,42,.24),transparent 42%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-ribbon-v2130{
  opacity:.34 !important;background:linear-gradient(180deg,transparent 48%,rgba(255,164,57,.10) 100%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-fx-particles-v2130 i{
  width:4px !important;height:8px !important;border-radius:70% 30% 70% 30% !important;background:linear-gradient(180deg,#ffd37b,#ff7c25) !important;
  animation:repoRcgV2132Rise calc(3.6s + var(--n)*.10s) linear calc(var(--n)*-.19s) infinite !important;
}

/* GOLDFALL */
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-depth-v2131{
  opacity:.34 !important;background:linear-gradient(180deg,rgba(255,227,151,.10),transparent 18%,transparent 70%,rgba(255,189,73,.14)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-ribbon-v2130{
  opacity:.46 !important;background:repeating-linear-gradient(100deg,transparent 0 72px,rgba(255,225,140,.13) 72px 76px,transparent 76px 146px) !important;
  animation:repoRcgV2132SweepWide 10s linear infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-fx-particles-v2130 i{
  width:5px !important;height:5px !important;background:#ffe499 !important;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%) !important;
  animation:repoRcgV2132Fall calc(5.5s + var(--n)*.13s) linear calc(var(--n)*-.22s) infinite !important;
}

/* MOONMIST */
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-depth-v2131{
  opacity:.36 !important;background:radial-gradient(ellipse at 25% 68%,rgba(208,229,244,.24),transparent 28%),radial-gradient(ellipse at 75% 42%,rgba(144,178,214,.18),transparent 30%) !important;
  filter:blur(8px) !important;animation:repoRcgV2132Sweep 12s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-atmos-v2130{
  opacity:.42 !important;background:linear-gradient(180deg,transparent 20%,rgba(205,226,241,.06) 50%,transparent 82%) !important;
}

/* RUNES */
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-depth-v2131{
  opacity:.26 !important;background:repeating-linear-gradient(112deg,transparent 0 84px,rgba(131,193,255,.08) 84px 88px,transparent 88px 154px) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-sigil-v2131{
  opacity:.40 !important;background:radial-gradient(circle at 50% 50%,rgba(112,197,255,.14),transparent 28%),conic-gradient(from 0deg,transparent 0 12%,rgba(136,197,255,.24) 14% 16%,transparent 18% 32%,rgba(229,207,134,.24) 34% 36%,transparent 38% 52%,rgba(136,197,255,.24) 54% 56%,transparent 58% 72%,rgba(229,207,134,.24) 74% 76%,transparent 78% 100%) !important;
  mask:radial-gradient(circle at center,transparent 0 31%,#000 35% 39%,transparent 43%) !important;
  animation:repoRcgV2132Rotate 22s linear infinite !important;
}

/* FIREFLIES */
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-depth-v2131{
  opacity:.24 !important;background:radial-gradient(circle at 18% 82%,rgba(94,164,102,.18),transparent 18%),radial-gradient(circle at 84% 24%,rgba(174,132,72,.14),transparent 16%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-particles-v2130 i{
  width:6px !important;height:6px !important;background:#ffe99e !important;box-shadow:0 0 10px rgba(252,236,126,.75) !important;
  animation:repoRcgV2132Orb calc(3.8s + var(--n)*.12s) ease-in-out calc(var(--n)*-.18s) infinite !important;
}

/* COMET */
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-depth-v2131{
  opacity:.28 !important;background:radial-gradient(circle at 75% 22%,rgba(161,210,255,.18),transparent 18%),radial-gradient(circle at 30% 82%,rgba(255,222,168,.10),transparent 14%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-ribbon-v2130{
  opacity:.70 !important;background:linear-gradient(108deg,transparent 42%,rgba(255,255,255,.78) 47%,rgba(143,211,255,.30) 48%,transparent 54%) !important;
  animation:repoRcgV2132SweepWide 5.5s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-particles-v2130 i{
  width:3px !important;height:3px !important;background:#dff3ff !important;opacity:.55 !important;
  animation:repoRcgV2132Twinkle calc(2.2s + var(--n)*.1s) ease-in-out calc(var(--n)*-.17s) infinite !important;
}

/* RIPPLE */
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-depth-v2131{
  opacity:.30 !important;background:radial-gradient(circle at 50% 50%,rgba(117,198,255,.18),transparent 20%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-sigil-v2131{
  opacity:.40 !important;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 62px,rgba(122,198,255,.18) 62px 64px,transparent 64px 118px) !important;
  animation:repoRcgV2132Pulse 7s ease-in-out infinite !important;
}

/* LEGENDARIES */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-depth-v2131{
  opacity:.48 !important;background:radial-gradient(ellipse at 50% 110%,rgba(255,87,25,.34),transparent 40%),linear-gradient(180deg,transparent 56%,rgba(255,153,42,.08)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-ribbon-v2130{
  opacity:.42 !important;background:linear-gradient(110deg,transparent 22%,rgba(255,133,26,.18) 36%,rgba(255,67,0,.16) 54%,transparent 66%) !important;animation:repoRcgV2132Sweep 3.2s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-particles-v2130 i{width:5px !important;height:10px !important;background:linear-gradient(180deg,#ffd783,#ff5b1d) !important;border-radius:60% 40% 70% 30% !important;animation:repoRcgV2132Rise calc(2.8s + var(--n)*.08s) linear calc(var(--n)*-.12s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-depth-v2131{
  opacity:.42 !important;background:radial-gradient(circle at 20% 24%,rgba(118,104,255,.22),transparent 22%),radial-gradient(circle at 76% 72%,rgba(76,199,255,.20),transparent 24%),linear-gradient(180deg,rgba(24,38,100,.10),transparent 55%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-sigil-v2131{
  opacity:.24 !important;background:conic-gradient(from 0deg,transparent,rgba(168,134,255,.22),transparent,rgba(120,224,255,.18),transparent) !important;mask:radial-gradient(circle at center,transparent 0 32%,#000 36% 40%,transparent 44%) !important;animation:repoRcgV2132Rotate 16s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-flash-v2130{
  opacity:.8 !important;background:linear-gradient(115deg,transparent 0 46%,rgba(255,255,255,.92) 49%,transparent 52%) !important;animation:repoRcgV2132Lightning 7s linear infinite !important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-depth-v2131{
  opacity:.46 !important;background:radial-gradient(ellipse at 50% 110%,rgba(255,199,77,.30),transparent 42%),linear-gradient(180deg,rgba(255,223,138,.06),transparent 24%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-ribbon-v2130{
  opacity:.34 !important;background:repeating-linear-gradient(138deg,transparent 0 52px,rgba(255,215,125,.12) 52px 58px,transparent 58px 104px) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-particles-v2130 i{width:5px !important;height:5px !important;background:#ffe7a1 !important;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%) !important;animation:repoRcgV2132Fall calc(4.4s + var(--n)*.11s) linear calc(var(--n)*-.18s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-depth-v2131{
  opacity:.44 !important;background:radial-gradient(ellipse at 50% 100%,rgba(255,94,23,.26),transparent 44%),linear-gradient(180deg,rgba(255,196,92,.08),transparent 28%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-ribbon-v2130{
  opacity:.56 !important;background:conic-gradient(from 225deg at 50% 105%,transparent 0 10%,rgba(255,97,20,.34) 12% 22%,rgba(255,210,102,.26) 24% 34%,transparent 36% 64%,rgba(255,97,20,.34) 66% 76%,rgba(255,210,102,.24) 78% 88%,transparent 90% 100%) !important;filter:blur(3px) !important;animation:repoRcgV2132Pulse 4.8s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-particles-v2130 i{width:4px !important;height:8px !important;background:linear-gradient(180deg,#ffe89b,#ff6828) !important;border-radius:80% 20% 80% 20% !important;animation:repoRcgV2132Rise calc(3s + var(--n)*.08s) linear calc(var(--n)*-.16s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-depth-v2131{
  opacity:.42 !important;background:radial-gradient(circle at 50% 50%,rgba(60,24,92,.28),transparent 26%),radial-gradient(circle at 50% 50%,rgba(161,92,255,.12),transparent 42%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-sigil-v2131{
  opacity:.50 !important;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 46px,rgba(181,113,255,.20) 46px 50px,transparent 50px 90px),conic-gradient(from 0deg,rgba(113,35,206,.14),transparent 20%,rgba(178,114,255,.20) 40%,transparent 60%,rgba(113,35,206,.14) 80%,transparent) !important;
  animation:repoRcgV2132Rotate 18s linear infinite !important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-depth-v2131{
  opacity:.34 !important;background:radial-gradient(circle at 18% 82%,rgba(92,198,114,.16),transparent 22%),radial-gradient(circle at 82% 18%,rgba(151,224,161,.12),transparent 18%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-ribbon-v2130{
  opacity:.38 !important;background:repeating-linear-gradient(132deg,transparent 0 90px,rgba(77,175,96,.12) 90px 96px,transparent 96px 160px) !important;animation:repoRcgV2132SweepWide 11s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-particles-v2130 i{width:6px !important;height:6px !important;background:#b8f5a9 !important;box-shadow:0 0 8px rgba(140,239,126,.58) !important;animation:repoRcgV2132Orb calc(3.6s + var(--n)*.1s) ease-in-out calc(var(--n)*-.16s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-depth-v2131{
  opacity:.30 !important;background:linear-gradient(180deg,rgba(219,242,255,.06),transparent 30%,transparent 70%,rgba(207,232,255,.08)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-ribbon-v2130{
  opacity:.48 !important;background:repeating-linear-gradient(164deg,transparent 0 54px,rgba(233,246,255,.20) 54px 57px,transparent 57px 100px) !important;animation:repoRcgV2132SweepWide 3.6s linear infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-particles-v2130 i{width:18px !important;height:2px !important;border-radius:99px !important;background:#f4fcff !important;animation:repoRcgV2132SweepWide calc(2.2s + var(--n)*.03s) linear calc(var(--n)*-.11s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-depth-v2131{
  opacity:.40 !important;background:radial-gradient(ellipse at 18% 62%,rgba(217,225,232,.22),transparent 28%),radial-gradient(ellipse at 62% 44%,rgba(133,146,160,.18),transparent 32%),radial-gradient(ellipse at 84% 60%,rgba(217,225,232,.18),transparent 30%) !important;filter:blur(8px) !important;animation:repoRcgV2132Sweep 10s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-atmos-v2130{opacity:.22 !important;background:linear-gradient(180deg,transparent 32%,rgba(255,255,255,.05) 50%,transparent 72%) !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-depth-v2131{
  opacity:.32 !important;background:linear-gradient(180deg,rgba(255,198,87,.06),transparent 30%,transparent 70%,rgba(187,92,38,.12)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-particles-v2130 i{width:8px !important;height:11px !important;border-radius:80% 12% 80% 12% !important;background:linear-gradient(135deg,#ffc45f,#b24e2d) !important;animation:repoRcgV2132Leaf calc(5.4s + var(--n)*.09s) ease-in-out calc(var(--n)*-.2s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-depth-v2131{
  opacity:.34 !important;background:linear-gradient(180deg,rgba(114,234,255,.08),transparent 22%,transparent 72%,rgba(95,207,255,.10)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-ribbon-v2130{
  opacity:.46 !important;background:repeating-radial-gradient(ellipse at 50% 120%,transparent 0 72px,rgba(103,232,255,.22) 72px 76px,transparent 76px 124px) !important;animation:repoRcgV2132Sweep 5.6s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-particles-v2130 i{width:5px !important;height:5px !important;background:#9ef7ff !important;animation:repoRcgV2132Rise calc(4.6s + var(--n)*.08s) ease-in calc(var(--n)*-.2s) infinite !important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-depth-v2131{
  opacity:.36 !important;background:radial-gradient(ellipse at 50% 72%,rgba(255,231,192,.18),transparent 28%),radial-gradient(ellipse at 72% 34%,rgba(218,241,244,.16),transparent 22%) !important;filter:blur(6px) !important;animation:repoRcgV2132Float 10s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-ribbon-v2130{
  opacity:.32 !important;background:linear-gradient(115deg,rgba(255,240,180,.22),rgba(255,255,255,0) 22%,transparent 46%) !important;clip-path:polygon(0 0,58% 0,38% 100%,0 100%) !important;animation:repoRcgV2132Sweep 7s ease-in-out infinite alternate !important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-depth-v2131{
  opacity:.34 !important;background:linear-gradient(180deg,rgba(31,48,89,.18),transparent 48%),radial-gradient(circle at 76% 16%,rgba(138,170,255,.16),transparent 18%) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-flash-v2130{opacity:.76 !important;background:linear-gradient(110deg,transparent 0 48%,rgba(226,240,255,.88) 49%,transparent 51%) !important;animation:repoRcgV2132Lightning 8.5s linear infinite !important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-particles-v2130 i{width:2px !important;height:24px !important;border-radius:99px !important;background:linear-gradient(180deg,rgba(167,209,255,0),rgba(167,209,255,.88)) !important;transform:rotate(12deg) !important;animation:repoRcgV2132Rain calc(1.35s + var(--n)*.02s) linear calc(var(--n)*-.07s) infinite !important}

/* finish still respected, but cleaner slot presentation */
#repoRcgBinderDialog .repo-rcg-slot{
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
#repoRcgBinderDialog .repo-rcg-slot:hover{
  transform:translateY(-1px) !important;
  box-shadow:inset 0 0 0 2px #0c1218,0 0 0 1px color-mix(in srgb,var(--rcg-accent) 78%, transparent),0 10px 18px rgba(0,0,0,.18),0 0 16px rgba(116,177,246,.10) !important;
  filter:brightness(1.02) !important;
}

/* low power users keep premium but static */
@media (prefers-reduced-motion: reduce){
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129,
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after,
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129 *{
    animation:none !important;
    transition:none !important;
  }
}


/* ========================================================================
   RCG v21.33 — slab header match + cleaner premium effect refresh
   ======================================================================== */

/* --- Binder slabs: make the top plate match the grading reveal plate more closely --- */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini){
  width:95.8%!important;
  height:97.1%!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,rgba(251,253,255,.26),rgba(234,242,246,.18))!important;
  border:1px solid rgba(235,243,246,.94)!important;
  box-shadow:
    0 10px 18px rgba(2,8,14,.25),
    0 0 0 1px rgba(128,148,162,.24),
    inset 0 0 0 1px rgba(255,255,255,.58),
    inset 0 14px 20px rgba(255,255,255,.05),
    inset 0 -9px 14px rgba(62,92,111,.04)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-clear-case{
  background:
    linear-gradient(108deg,rgba(255,255,255,.055),transparent 18%,transparent 82%,rgba(255,255,255,.03)),
    linear-gradient(180deg,rgba(255,255,255,.05),transparent 14%,transparent 88%,rgba(175,197,211,.03))!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.58),
    inset 0 12px 15px rgba(255,255,255,.04),
    inset 0 -8px 12px rgba(53,85,104,.03)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-label{
  left:3.2%!important;
  right:3.2%!important;
  top:2.3%!important;
  height:21.2%!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  grid-template-rows:auto auto auto!important;
  gap:1px 8px!important;
  align-items:start!important;
  padding:2.45% 3.8% 2.2%!important;
  border-radius:3px!important;
  background:linear-gradient(180deg,rgba(250,248,241,.99),rgba(241,236,221,.995))!important;
  border:1px solid rgba(31,55,79,.95)!important;
  box-shadow:
    inset 0 0 0 1px rgba(213,173,82,.48),
    0 1px 2px rgba(5,16,24,.14)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-top{
  grid-column:1 / span 2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:end!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label strong{
  grid-column:1!important;
  font:900 clamp(6.8px,.56vw,10px)/1.03 Arial,sans-serif!important;
  letter-spacing:.14em!important;
  color:#19324b!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-transform:uppercase!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label b{
  grid-column:2!important;
  margin:0!important;
  align-self:start!important;
  justify-self:end!important;
  font:900 clamp(6.7px,.55vw,10px)/1.03 Arial,sans-serif!important;
  letter-spacing:.12em!important;
  color:#7a5a15!important;
  text-shadow:0 1px 0 rgba(255,255,255,.9)!important;
  white-space:nowrap!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label em{
  grid-column:1!important;
  grid-row:2!important;
  min-width:0!important;
  color:#1a3350!important;
  font:800 clamp(3.9px,.32vw,5.9px)/1.02 Arial,sans-serif!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  font-style:normal!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand{
  grid-column:1 / span 2!important;
  grid-row:2!important;
  align-self:end!important;
  justify-self:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  transform:translateY(10%)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand span{
  color:#214a72!important;
  font:900 clamp(6.5px,.54vw,10px)/1 Arial,sans-serif!important;
  letter-spacing:.06em!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand small{
  color:#6c7680!important;
  font:800 clamp(2.9px,.25vw,4.4px)/1 Arial,sans-serif!important;
  letter-spacing:.09em!important;
  white-space:nowrap!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-meta{
  grid-column:1 / span 2!important;
  grid-row:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:7px!important;
  margin-top:1px!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label small{
  position:static!important;
  margin:0!important;
  color:#7a8389!important;
  font:800 clamp(3.1px,.27vw,4.8px)/1 Arial,sans-serif!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label i{
  position:static!important;
  width:26%!important;
  min-width:26%!important;
  height:7px!important;
  border:1px solid rgba(30,47,59,.20)!important;
  border-radius:1px!important;
  background:repeating-linear-gradient(90deg,#1c2630 0 1px,transparent 1px 2px,#1c2630 2px 4px,transparent 4px 5px,#1c2630 5px 6px,transparent 6px 8px)!important;
  opacity:.84!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-label b{
  color:#8a6213!important;
  text-shadow:0 0 6px rgba(204,170,87,.14),0 1px 0 #fff!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-label b{color:#234c71!important}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-label b{color:#445260!important}
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window{
  left:3.75%!important;
  right:3.75%!important;
  top:24.8%!important;
  bottom:2.8%!important;
  border-radius:3px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(241,239,234,.99))!important;
  border:1px solid rgba(31,55,79,.72)!important;
  box-shadow:inset 0 0 0 1px rgba(226,191,107,.18), inset 0 0 10px rgba(68,81,90,.04)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  padding:0!important;
  background:transparent!important;
  filter:contrast(1.045) saturate(1.05) brightness(1.012)!important;
}

/* --- Effect rebuild pass: make every effect clearly visible without heavy layering --- */
@keyframes repoRcgV2133DriftX{0%{transform:translate3d(-3%,0,0)}100%{transform:translate3d(3%,0,0)}}
@keyframes repoRcgV2133DriftY{0%{transform:translate3d(0,-2%,0)}100%{transform:translate3d(0,2%,0)}}
@keyframes repoRcgV2133Breath{0%,100%{opacity:.24;transform:scale(.96)}50%{opacity:.56;transform:scale(1.03)}}
@keyframes repoRcgV2133Runes{0%{background-position:0 0,0 0}100%{background-position:180px 0,-140px 0}}
@keyframes repoRcgV2133Ripple{0%{transform:scale(.76);opacity:.06}55%{opacity:.22}100%{transform:scale(1.16);opacity:0}}

#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129{display:block!important;opacity:.52!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-fx-depth-v2131{
  opacity:.46!important;
  background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 25%,transparent 72%,rgba(255,215,142,.05)), radial-gradient(circle at 16% 22%,rgba(170,215,255,.11),transparent 20%), radial-gradient(circle at 82% 74%,rgba(255,226,171,.08),transparent 22%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-fx-glass-v2131{opacity:.44!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-depth-v2131{
  opacity:.50!important;
  background:radial-gradient(ellipse at 16% 70%,rgba(214,228,238,.22),transparent 24%),radial-gradient(ellipse at 52% 46%,rgba(190,211,225,.16),transparent 28%),radial-gradient(ellipse at 84% 66%,rgba(220,232,240,.20),transparent 24%)!important;
  filter:blur(8px)!important;
  animation:repoRcgV2133DriftX 11s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-fx-atmos-v2130{
  opacity:.28!important;
  background:linear-gradient(180deg,transparent 24%,rgba(235,242,248,.08) 54%,transparent 78%)!important;
  animation:repoRcgV2133DriftY 9s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-depth-v2131{
  opacity:.34!important;
  background:repeating-linear-gradient(115deg,transparent 0 76px,rgba(132,197,255,.10) 76px 80px,transparent 80px 148px), repeating-linear-gradient(90deg,transparent 0 138px,rgba(231,205,135,.06) 138px 142px,transparent 142px 260px)!important;
  animation:repoRcgV2133Runes 14s linear infinite!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-fx-sigil-v2131{
  opacity:.56!important;
  background:radial-gradient(circle at center,rgba(116,193,255,.08),transparent 26%),conic-gradient(from 0deg,transparent 0 10%,rgba(129,197,255,.22) 12% 14%,transparent 16% 34%,rgba(230,205,134,.22) 36% 38%,transparent 40% 58%,rgba(129,197,255,.22) 60% 62%,transparent 64% 82%,rgba(230,205,134,.22) 84% 86%,transparent 88% 100%)!important;
  mask:radial-gradient(circle at center,transparent 0 31%,#000 35% 39%,transparent 43%)!important;
  animation:repoRcgV2132Rotate 22s linear infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-depth-v2131{
  opacity:.28!important;
  background:radial-gradient(circle at 20% 82%,rgba(84,154,92,.14),transparent 18%),radial-gradient(circle at 84% 22%,rgba(120,175,92,.10),transparent 14%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-fx-particles-v2130 i{
  width:7px!important;height:7px!important;background:#ffec9f!important;box-shadow:0 0 12px rgba(255,236,132,.78)!important;animation:repoRcgV2132Orb calc(3.8s + var(--n)*.12s) ease-in-out calc(var(--n)*-.18s) infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-ribbon-v2130{
  opacity:.88!important;
  background:linear-gradient(108deg,transparent 36%,rgba(255,255,255,.95) 46%,rgba(153,219,255,.36) 48%,transparent 55%)!important;
  animation:repoRcgV2132SweepWide 4.6s cubic-bezier(.35,.1,.22,.95) infinite!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-fx-depth-v2131{
  opacity:.26!important;background:radial-gradient(circle at 76% 24%,rgba(176,220,255,.20),transparent 18%),radial-gradient(circle at 24% 78%,rgba(255,226,180,.12),transparent 16%)!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-depth-v2131{
  opacity:.26!important;background:radial-gradient(circle at center,rgba(120,204,255,.12),transparent 18%)!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-fx-sigil-v2131{
  opacity:.44!important;
  background:repeating-radial-gradient(circle at 50% 50%,transparent 0 48px,rgba(120,204,255,.18) 48px 51px,transparent 51px 92px)!important;
  animation:repoRcgV2133Breath 6.2s ease-in-out infinite!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-depth-v2131{
  opacity:.48!important;
  background:radial-gradient(ellipse at 14% 64%,rgba(226,232,238,.22),transparent 24%),radial-gradient(ellipse at 58% 42%,rgba(157,168,176,.18),transparent 28%),radial-gradient(ellipse at 82% 58%,rgba(210,219,226,.18),transparent 24%)!important;
  filter:blur(10px)!important;
  animation:repoRcgV2133DriftX 8.5s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-fx-atmos-v2130{
  opacity:.24!important;background:linear-gradient(180deg,transparent 22%,rgba(255,255,255,.05) 48%,transparent 76%)!important;animation:repoRcgV2133DriftY 10s ease-in-out infinite alternate!important;
}

#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-depth-v2131{
  opacity:.44!important;
  background:radial-gradient(ellipse at 50% 82%,rgba(255,226,183,.24),transparent 28%),radial-gradient(ellipse at 72% 32%,rgba(225,241,248,.16),transparent 24%),linear-gradient(180deg,rgba(255,245,218,.06),transparent 30%,transparent 72%,rgba(255,210,129,.08))!important;
  filter:blur(6px)!important;
  animation:repoRcgV2133DriftX 9s ease-in-out infinite alternate!important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-fx-ribbon-v2130{
  opacity:.42!important;
  background:linear-gradient(116deg,rgba(255,238,184,.30),transparent 24%,transparent 70%,rgba(255,255,255,.10))!important;
  clip-path:polygon(0 0,52% 0,34% 100%,0 100%)!important;
  animation:repoRcgV2132Sweep 8s ease-in-out infinite alternate!important;
}

/* slight premium boost for the strong legendary group so all feel active */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-fx-glass-v2131{opacity:.42!important}

/* ========================================================================
   RCG v21.34 — use card-binder effect parity, stronger theme tint, label overlap fix
   ======================================================================== */

/* 1) EFFECT PARITY: disable the extra experimental slab-only layers and use the same
   clean base effect layer as the normal card binder customizer. This keeps the
   visuals cleaner and also reduces lag. */
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131{
  display:none !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{
  display:block !important;
  opacity:.94 !important;
  mix-blend-mode:screen !important;
  filter:saturate(1.12) brightness(1.03) !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{
  opacity:1 !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129{
  display:none !important;
  opacity:0 !important;
}
/* Slightly cleaner default density so the copied card-binder effects read better on slabs */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-upgrade-fx-v2129::before{
  background-size:110px 95px,150px 130px,165px 145px,130px 120px !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.9 !important;
}

/* 2) STRONGER THEME COLOUR CHANGE: push the selected theme deeper into the binder body,
   page panels, spine and pockets so switching themes feels obvious. */
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-book{
  background:
    linear-gradient(90deg,rgba(255,255,255,.055),transparent 5%,transparent 95%,rgba(255,255,255,.04)),
    repeating-linear-gradient(7deg,rgba(255,255,255,.022) 0 1px,rgba(0,0,0,.03) 1px 3px),
    linear-gradient(180deg,
      color-mix(in srgb,var(--rcgu-page) 90%,#1a3554),
      color-mix(in srgb,var(--rcgu-a) 18%,var(--rcgu-deep) 82%) 52%,
      color-mix(in srgb,var(--rcgu-deep) 94%,#06111e)) !important;
  border-color:color-mix(in srgb,var(--rcgu-a) 82%,#19324a) !important;
  box-shadow:
    0 24px 44px rgba(0,0,0,.62),
    inset 0 0 0 2px rgba(204,155,63,.82),
    inset 0 0 0 6px color-mix(in srgb,var(--rcgu-deep) 96%,#08131d),
    inset 0 0 42px color-mix(in srgb,var(--rcgu-a) 28%,transparent),
    inset 0 -16px 36px color-mix(in srgb,var(--rcgu-c) 10%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page{
  background:linear-gradient(180deg,
    color-mix(in srgb,var(--rcgu-page) 92%,#17314d),
    color-mix(in srgb,var(--rcgu-page) 70%,var(--rcgu-deep) 30%) 30%,
    color-mix(in srgb,var(--rcgu-deep) 92%,#0d2138)) !important;
  border-color:color-mix(in srgb,var(--rcgu-c) 54%,#d5ab58) !important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rcgu-a) 18%,transparent), inset 0 0 26px color-mix(in srgb,var(--rcgu-c) 9%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page-lining{
  box-shadow:
    inset 0 0 0 4px color-mix(in srgb,var(--rcgu-page) 88%,#102a42),
    inset 0 0 0 7px color-mix(in srgb,var(--rcgu-a) 66%,transparent),
    inset 0 0 26px color-mix(in srgb,var(--rcgu-c) 12%,transparent),
    inset 0 -8px 18px rgba(0,0,0,.14) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine{
  background:linear-gradient(90deg,
    var(--rcgu-deep),
    color-mix(in srgb,var(--rcgu-page) 90%,#17324f) 16%,
    color-mix(in srgb,var(--rcgu-a) 54%,#1d3a57) 50%,
    color-mix(in srgb,var(--rcgu-page) 90%,#17324f) 84%,
    var(--rcgu-deep)) !important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rcgu-c) 20%,transparent), inset 0 0 24px color-mix(in srgb,var(--rcgu-c) 12%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine-plaque{
  border-color:color-mix(in srgb,var(--rcgu-c) 52%,#b08238) !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--rcgu-page) 92%,#18314d),color-mix(in srgb,var(--rcgu-deep) 90%,#081423)) !important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--rcgu-a) 22%,transparent), inset 0 0 18px color-mix(in srgb,var(--rcgu-c) 8%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-pocket{
  border-color:color-mix(in srgb,var(--rcgu-a) 44%,#6d7f92) !important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rcgu-c) 18%,transparent), inset 0 -6px 10px rgba(0,0,0,.05), 0 0 0 1px rgba(255,255,255,.05) !important;
}

/* 3) LABEL OVERLAP FIX: keep variant text separate from the centre RCG brand/cert area. */
#repoRcgBinderDialog .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-label{
  height:22.5% !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  grid-template-rows:auto auto auto auto !important;
  gap:1px 8px !important;
  padding:2.25% 3.8% 2.1% !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-top{
  grid-column:1 / span 2 !important;
  grid-row:1 !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label em{
  grid-column:1 / span 2 !important;
  grid-row:2 !important;
  align-self:start !important;
  justify-self:start !important;
  font:800 clamp(3.4px,.285vw,5.1px)/1.02 Arial,sans-serif !important;
  letter-spacing:.13em !important;
  max-width:64% !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand{
  grid-column:1 / span 2 !important;
  grid-row:3 !important;
  align-self:center !important;
  justify-self:center !important;
  transform:none !important;
  margin-top:-1px !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand span{
  font:900 clamp(5.5px,.45vw,8.4px)/1 Arial,sans-serif !important;
  letter-spacing:.05em !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand small{
  font:800 clamp(2.4px,.20vw,3.7px)/1 Arial,sans-serif !important;
  letter-spacing:.08em !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-meta{
  grid-column:1 / span 2 !important;
  grid-row:4 !important;
  align-items:center !important;
  gap:5px !important;
  margin-top:0 !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label i{
  width:22% !important;
  min-width:22% !important;
  height:6px !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label small{
  font:800 clamp(2.7px,.235vw,4.1px)/1 Arial,sans-serif !important;
  letter-spacing:.095em !important;
}

/* ========================================================================
   RCG v21.35 — stronger theme border tint + fully working clean effect set
   ======================================================================== */

/* Make the visible blue binder borders/theme strips actually follow the chosen theme. */
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-book{
  border-color:color-mix(in srgb,var(--rcgu-a) 68%,#13263d) !important;
  box-shadow:
    0 24px 44px rgba(0,0,0,.62),
    inset 0 0 0 2px rgba(204,155,63,.82),
    inset 0 0 0 6px color-mix(in srgb,var(--rcgu-deep) 86%,#071628),
    inset 0 0 28px rgba(0,0,0,.36),
    inset 0 0 46px color-mix(in srgb,var(--rcgu-a) 14%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page{
  background:
    linear-gradient(90deg,rgba(255,255,255,.025),transparent 8%,transparent 92%,rgba(0,0,0,.06)),
    linear-gradient(180deg,
      color-mix(in srgb,var(--rcgu-page) 94%,#18324f),
      color-mix(in srgb,var(--rcgu-deep) 86%,#081727)) !important;
  border-color:color-mix(in srgb,var(--rcgu-c) 62%,#d5ab58) !important;
  box-shadow:
    inset 0 0 0 3px color-mix(in srgb,var(--rcgu-deep) 80%,#071727),
    inset 0 0 16px rgba(0,0,0,.34),
    inset 0 0 24px color-mix(in srgb,var(--rcgu-a) 12%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-page-lining{
  border-color:color-mix(in srgb,var(--rcgu-c) 58%,#d2aa58) !important;
  box-shadow:
    inset 0 0 0 4px color-mix(in srgb,var(--rcgu-page) 86%,#102a42),
    inset 0 0 0 6px color-mix(in srgb,var(--rcgu-a) 42%,transparent),
    inset 0 0 24px color-mix(in srgb,var(--rcgu-c) 9%,transparent),
    0 0 0 1px color-mix(in srgb,var(--rcgu-a) 18%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine{
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--rcgu-deep) 96%,#06101d),
    color-mix(in srgb,var(--rcgu-page) 94%,#1b3452) 18%,
    color-mix(in srgb,var(--rcgu-a) 72%,#27486d) 50%,
    color-mix(in srgb,var(--rcgu-page) 94%,#1b3452) 82%,
    color-mix(in srgb,var(--rcgu-deep) 96%,#06101d)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-spine-plaque{
  border-color:color-mix(in srgb,var(--rcgu-c) 56%,#b08238) !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb,var(--rcgu-a) 22%,transparent),
    inset 0 0 18px color-mix(in srgb,var(--rcgu-c) 10%,transparent),
    0 0 14px color-mix(in srgb,var(--rcgu-a) 12%,transparent) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-theme] .repo-rcg-v2118-pocket{
  border-color:color-mix(in srgb,var(--rcgu-a) 30%,#b9a66d) !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb,var(--rcgu-c) 15%,transparent),
    inset 0 -6px 10px rgba(0,0,0,.05),
    0 0 0 1px color-mix(in srgb,var(--rcgu-a) 14%,transparent) !important;
}

/* Reset the slab FX area to a clean single-layer animation system. */
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{
  display:block !important;
  position:absolute !important;
  inset:1.15% !important;
  z-index:5 !important;
  pointer-events:none !important;
  overflow:hidden !important;
  border-radius:11px !important;
  opacity:.82 !important;
  mix-blend-mode:screen !important;
  isolation:isolate !important;
  filter:saturate(1.03) !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{
  content:'';
  position:absolute;
  inset:-22%;
  pointer-events:none;
  opacity:0;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129,
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129::after{opacity:0 !important;display:none !important}

/* non-legendary — match the clean card-binder feel */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.82 !important;
  background-image:radial-gradient(circle,#fff 0 1px,transparent 1.8px),radial-gradient(circle,var(--rcgfx2,#8fc9ff) 0 1px,transparent 1.9px),radial-gradient(circle,#fff1a6 0 .8px,transparent 1.5px) !important;
  background-size:72px 77px,109px 101px,151px 137px !important;
  animation:repoRcgFxStarsV2135 18s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.60 !important;
  inset:-55% !important;
  background:conic-gradient(from 15deg,transparent 0 17%,color-mix(in srgb,var(--rcgfx1,#e6fffb) 32%,transparent) 23%,transparent 33% 49%,color-mix(in srgb,var(--rcgfx2,#b595ff) 42%,transparent) 56%,transparent 67% 100%) !important;
  filter:blur(28px) !important;
  animation:repoRcgFxAuroraV2135 15s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.78 !important;
  background-image:radial-gradient(circle,#fff2a7 0 1px,transparent 2px),radial-gradient(circle,#ff9d35 0 1.4px,transparent 2.4px),radial-gradient(circle,#ff5c2c 0 1px,transparent 2px) !important;
  background-size:57px 87px,89px 127px,127px 157px !important;
  background-position:0 100%,20px 100%,55px 100% !important;
  animation:repoRcgFxRiseV2135 9s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.78 !important;
  background-image:radial-gradient(circle,#fff7bd 0 1px,transparent 2px),radial-gradient(circle,#ffd252 0 1.4px,transparent 2.6px),radial-gradient(circle,#bd7a17 0 1px,transparent 2px) !important;
  background-size:49px 63px,83px 97px,131px 143px !important;
  animation:repoRcgFxFallV2135 12s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.58 !important;
  inset:-20% !important;
  background:radial-gradient(ellipse at 18% 76%,color-mix(in srgb,var(--rcgfx1,#dce8ff) 24%,#c7ddff55),transparent 42%),radial-gradient(ellipse at 82% 26%,color-mix(in srgb,var(--rcgfx2,#a6c0d9) 24%,#a4b9d455),transparent 45%) !important;
  filter:blur(30px) !important;
  animation:repoRcgFxMistV2135 13s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-upgrade-fx-v2129::before{
  content:'ᚱ   ᛉ   ᚦ   ✦   ᚨ   ᛟ   ᛞ   ✧   ᚱ   ᛉ   ᚦ' !important;
  inset:-8% -14% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:color-mix(in srgb,var(--rcgfx1,#8bf3e9) 42%,transparent) !important;
  font:900 clamp(16px,2.1vw,31px)/2.7 Georgia,serif !important;
  letter-spacing:clamp(12px,2.2vw,34px) !important;
  white-space:normal !important;
  text-align:center !important;
  text-shadow:0 0 9px color-mix(in srgb,var(--rcgfx2,#d9b56b) 70%,transparent) !important;
  background:repeating-linear-gradient(90deg,transparent 0 70px,color-mix(in srgb,var(--rcgfx2,#d9b56b) 8%,transparent) 72px 73px) !important;
  animation:repoRcgFxRunesV2135 17s linear infinite !important;
  opacity:.78 !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.78 !important;
  background-image:radial-gradient(circle,#fffbd0 0 1px,#ffda62 1.3px,transparent 3px),radial-gradient(circle,#d9ff9b 0 1px,#8fd95a 1.4px,transparent 3px),radial-gradient(circle,#fff0a8 0 1px,transparent 2.7px) !important;
  background-size:67px 103px,101px 137px,149px 181px !important;
  background-position:0 100%,38px 100%,72px 100% !important;
  animation:repoRcgFxRiseSlowV2135 13s linear infinite !important;
  filter:drop-shadow(0 0 4px #ffe971) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:1 !important;
  inset:-70% -55% !important;
  background:linear-gradient(126deg,transparent 45%,rgba(255,255,255,.02) 47%,color-mix(in srgb,var(--rcgfx1,#f5fbff) 48%,transparent) 49%,#fff9 50%,color-mix(in srgb,var(--rcgfx2,#71c8ff) 32%,transparent) 51%,transparent 54%) !important;
  animation:repoRcgFxCometV2135 9s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.74 !important;
  inset:-35% !important;
  background:repeating-radial-gradient(circle at 50% 50%,transparent 0 44px,color-mix(in srgb,var(--rcgfx1,#9df4ff) 17%,transparent) 46px 48px,transparent 51px 75px) !important;
  filter:blur(.4px) !important;
  animation:repoRcgFxRippleV2135 10s ease-in-out infinite !important;
}

/* legendary — distinct, clean, lightweight animated identities */
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.78 !important;
  background-image:radial-gradient(circle,#fff0b0 0 1px,transparent 2px),radial-gradient(circle,#ff9d35 0 1.5px,transparent 2.4px),radial-gradient(circle,#ff5227 0 1px,transparent 2px) !important;
  background-size:58px 90px,86px 124px,121px 148px !important;
  background-position:0 100%,24px 100%,55px 100% !important;
  animation:repoRcgFxRiseV2135 8.5s linear infinite !important;
  filter:drop-shadow(0 0 6px rgba(255,119,54,.55)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.42 !important;
  inset:-45% !important;
  background:radial-gradient(circle at 50% 115%,rgba(255,95,36,.35),transparent 36%),linear-gradient(180deg,transparent 25%,rgba(255,126,43,.12) 62%,transparent 100%) !important;
  filter:blur(18px) !important;
  animation:repoRcgFxPulseV2135 3.2s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.74 !important;
  inset:-38% !important;
  background:
    radial-gradient(circle at 26% 28%,rgba(175,231,255,.55),transparent 18%),
    radial-gradient(circle at 74% 40%,rgba(210,160,255,.42),transparent 23%),
    radial-gradient(circle at 52% 78%,rgba(121,165,255,.32),transparent 26%),
    radial-gradient(circle,#fff 0 1px,transparent 1.8px),
    radial-gradient(circle,#9fd3ff 0 1px,transparent 2px) !important;
  background-size:auto,auto,auto,78px 82px,128px 132px !important;
  animation:repoRcgFxNebulaV2135 16s ease-in-out infinite alternate !important;
  filter:blur(.1px) drop-shadow(0 0 8px rgba(123,175,255,.35)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.55 !important;
  inset:-65% -45% !important;
  background:linear-gradient(124deg,transparent 46%,rgba(255,255,255,.03) 48%,rgba(172,222,255,.52) 49%,rgba(255,255,255,.7) 50%,rgba(179,140,255,.26) 51%,transparent 54%) !important;
  animation:repoRcgFxCometV2135 11s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.80 !important;
  background-image:radial-gradient(circle,#fff7c4 0 1px,transparent 2px),radial-gradient(circle,#ffd056 0 1.6px,transparent 2.8px),radial-gradient(circle,#b87616 0 1px,transparent 2px) !important;
  background-size:46px 58px,72px 86px,116px 126px !important;
  animation:repoRcgFxFallV2135 9.5s linear infinite !important;
  filter:drop-shadow(0 0 5px rgba(255,205,94,.42)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.34 !important;
  inset:-30% !important;
  background:repeating-linear-gradient(135deg,transparent 0 18px,rgba(255,214,103,.09) 18px 20px,transparent 20px 38px) !important;
  animation:repoRcgFxDriftV2135 14s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.66 !important;
  inset:-32% !important;
  background:conic-gradient(from 190deg at 28% 56%,transparent 0 17%,rgba(255,176,86,.28) 22%,transparent 30%,rgba(255,86,54,.22) 41%,transparent 54%,rgba(255,227,137,.22) 61%,transparent 100%) !important;
  filter:blur(16px) !important;
  animation:repoRcgFxAuroraV2135 11s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.78 !important;
  inset:-68% -52% !important;
  background:linear-gradient(126deg,transparent 45%,rgba(255,255,255,.02) 47%,rgba(255,214,111,.45) 49%,rgba(255,255,255,.72) 50%,rgba(255,98,49,.28) 51%,transparent 54%) !important;
  animation:repoRcgFxCometV2135 7.6s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.75 !important;
  inset:-42% !important;
  background:repeating-radial-gradient(circle at 50% 50%,transparent 0 34px,rgba(143,108,255,.16) 36px 39px,transparent 41px 58px),radial-gradient(circle at 50% 50%,rgba(37,10,73,.38),transparent 42%) !important;
  animation:repoRcgFxRippleV2135 8.5s ease-in-out infinite !important;
  filter:blur(.25px) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.54 !important;
  inset:-32% !important;
  background:radial-gradient(circle at 50% 50%,transparent 0 24%,rgba(172,131,255,.18) 30%,transparent 43%),linear-gradient(135deg,transparent 0 47%,rgba(198,165,255,.15) 50%,transparent 53%) !important;
  animation:repoRcgFxPulseV2135 4.2s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.76 !important;
  background-image:radial-gradient(circle,#fff3b4 0 1px,transparent 2px),radial-gradient(circle,#98f0b2 0 1.4px,transparent 2.6px),radial-gradient(circle,#4fa76b 0 1px,transparent 2px) !important;
  background-size:66px 98px,97px 129px,143px 164px !important;
  background-position:0 100%,34px 100%,62px 100% !important;
  animation:repoRcgFxRiseSlowV2135 12s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.34 !important;
  inset:-24% !important;
  background:repeating-linear-gradient(125deg,transparent 0 28px,rgba(129,217,149,.10) 28px 32px,transparent 32px 62px) !important;
  animation:repoRcgFxDriftV2135 18s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.58 !important;
  inset:-20% -36% !important;
  background:repeating-linear-gradient(112deg,transparent 0 32px,rgba(219,240,255,.18) 34px 42px,transparent 46px 76px),linear-gradient(115deg,transparent 0 30%,rgba(189,227,255,.14) 42%,transparent 56%) !important;
  filter:blur(1px) !important;
  animation:repoRcgFxStormV2135 8.5s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.36 !important;
  inset:-50% -40% !important;
  background:linear-gradient(126deg,transparent 47%,rgba(255,255,255,.04) 49%,rgba(222,240,255,.42) 50%,transparent 52%) !important;
  animation:repoRcgFxCometV2135 13s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.50 !important;
  width:72% !important;
  height:58% !important;
  left:-18% !important;
  top:48% !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse,rgba(230,236,243,.18),transparent 68%) !important;
  filter:blur(34px) !important;
  animation:repoRcgFxSmokeAV2135 11s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.42 !important;
  width:70% !important;
  height:56% !important;
  right:-18% !important;
  top:8% !important;
  inset:auto !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse,rgba(185,200,212,.16),transparent 68%) !important;
  filter:blur(30px) !important;
  animation:repoRcgFxSmokeBV2135 14s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.80 !important;
  background-image:radial-gradient(circle,#fff5c2 0 1px,transparent 2px),radial-gradient(circle,#ffbf63 0 1.4px,transparent 2.6px),radial-gradient(circle,#b96a22 0 1px,transparent 2px) !important;
  background-size:58px 72px,88px 104px,132px 146px !important;
  animation:repoRcgFxFallV2135 10.5s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.24 !important;
  background:repeating-linear-gradient(135deg,transparent 0 38px,rgba(255,181,90,.10) 40px 44px,transparent 46px 84px) !important;
  animation:repoRcgFxDriftV2135 16s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.56 !important;
  inset:-22% -28% !important;
  background:repeating-linear-gradient(106deg,transparent 0 38px,rgba(125,242,255,.16) 40px 48px,transparent 50px 86px),linear-gradient(115deg,transparent 0 34%,rgba(120,226,255,.16) 42%,transparent 58%) !important;
  filter:blur(1px) !important;
  animation:repoRcgFxStormV2135 9.5s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.62 !important;
  background-image:radial-gradient(circle,#eaffff 0 1px,transparent 2px),radial-gradient(circle,#8cf4ff 0 1.2px,transparent 2.4px) !important;
  background-size:66px 102px,94px 140px !important;
  background-position:0 100%,40px 100% !important;
  animation:repoRcgFxRiseSlowV2135 11s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.58 !important;
  inset:-18% !important;
  background:radial-gradient(ellipse at 18% 76%,rgba(255,241,196,.18),transparent 42%),radial-gradient(ellipse at 82% 26%,rgba(255,246,224,.22),transparent 45%) !important;
  filter:blur(26px) !important;
  animation:repoRcgFxMistV2135 12s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.46 !important;
  inset:-40% -18% !important;
  background:linear-gradient(116deg,transparent 0 36%,rgba(255,249,204,.22) 42%,transparent 48%) !important;
  filter:blur(6px) !important;
  animation:repoRcgFxSunbeamV2135 8s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.54 !important;
  inset:-14% -24% !important;
  background:repeating-linear-gradient(102deg,transparent 0 40px,rgba(169,213,255,.16) 42px 44px,transparent 46px 78px) !important;
  animation:repoRcgFxRainV2135 1.45s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.32 !important;
  inset:-18% !important;
  background:radial-gradient(circle at 72% 14%,rgba(122,162,255,.18),transparent 18%),linear-gradient(180deg,rgba(29,48,93,.18),transparent 58%) !important;
  animation:repoRcgFxPulseV2135 5.8s ease-in-out infinite !important;
}

@keyframes repoRcgFxStarsV2135{to{background-position:72px 154px,-81px 202px,151px 274px}}
@keyframes repoRcgFxAuroraV2135{from{transform:translate(-7%,-4%) rotate(-11deg) scale(.9)}to{transform:translate(8%,7%) rotate(17deg) scale(1.08)}}
@keyframes repoRcgFxRiseV2135{to{background-position:35px -174px,-42px -254px,81px -314px}}
@keyframes repoRcgFxRiseSlowV2135{to{background-position:22px -154px,-31px -226px,61px -288px}}
@keyframes repoRcgFxFallV2135{to{background-position:20px 126px,-31px 194px,53px 286px}}
@keyframes repoRcgFxMistV2135{to{transform:translate(4%,-3%) scale(1.08)}}
@keyframes repoRcgFxRunesV2135{from{transform:translate3d(-8%,4%,0) rotate(-2deg)}to{transform:translate3d(8%,-5%,0) rotate(2deg)}}
@keyframes repoRcgFxCometV2135{0%,68%{transform:translateX(-55%) rotate(2deg);opacity:0}74%{opacity:1}86%{transform:translateX(55%) rotate(2deg);opacity:.45}90%,100%{opacity:0}}
@keyframes repoRcgFxRippleV2135{0%,100%{transform:scale(.82);opacity:.20}50%{transform:scale(1.08);opacity:.62}}
@keyframes repoRcgFxPulseV2135{0%,100%{transform:scale(.97);opacity:.22}50%{transform:scale(1.04);opacity:.48}}
@keyframes repoRcgFxNebulaV2135{0%{transform:translate(-3%,-2%) scale(.96)}100%{transform:translate(4%,3%) scale(1.05)}}
@keyframes repoRcgFxDriftV2135{from{transform:translateX(-3%)}to{transform:translateX(3%)}}
@keyframes repoRcgFxStormV2135{from{transform:translateX(-7%)}to{transform:translateX(7%)}}
@keyframes repoRcgFxSmokeAV2135{to{transform:translate(24%,-17%) scale(1.15)}}
@keyframes repoRcgFxSmokeBV2135{to{transform:translate(-25%,20%) scale(.9)}}
@keyframes repoRcgFxSunbeamV2135{from{transform:translateX(-4%) rotate(-2deg)}to{transform:translateX(5%) rotate(3deg)}}
@keyframes repoRcgFxRainV2135{from{transform:translateY(-8%)}to{transform:translateY(8%)}}

/* ========================================================================
   RCG v21.36 — effect freeze fix + card-binder parity pass
   Uses one clean, always-running FX layer so it behaves like the other binder.
   ======================================================================== */

/* Kill the old layered experimental stack so only the parity layer renders. */
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{
  display:none !important;
  opacity:0 !important;
  animation:none !important;
}

#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129{
  display:block !important;
  position:absolute !important;
  inset:1.25% !important;
  overflow:hidden !important;
  border-radius:12px !important;
  pointer-events:none !important;
  z-index:5 !important;
  opacity:.92 !important;
  mix-blend-mode:screen !important;
  isolation:isolate !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{
  animation-play-state:running !important;
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{
  content:'' !important;
  position:absolute !important;
  inset:-18% !important;
  pointer-events:none !important;
  opacity:0 !important;
  will-change:transform,opacity,background-position !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129,
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:0 !important;
  display:none !important;
}

/* core / standard effects */
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.84 !important;
  background-image:radial-gradient(circle,#fff 0 1px,transparent 2px),radial-gradient(circle,var(--rcgu-c) 0 1.1px,transparent 2.1px),radial-gradient(circle,#fff7bf 0 .9px,transparent 1.8px) !important;
  background-size:76px 82px,112px 118px,158px 164px !important;
  animation:repoRcgFxStarsV2136 18s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.60 !important;
  inset:-52% !important;
  background:conic-gradient(from 22deg,transparent 0 18%,color-mix(in srgb,var(--rcgu-a) 28%,transparent) 26%,transparent 36% 54%,color-mix(in srgb,var(--rcgu-c) 18%,transparent) 62%,transparent 74% 100%) !important;
  filter:blur(28px) !important;
  animation:repoRcgFxAuroraV2136 14s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='phoenix'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.82 !important;
  background-image:radial-gradient(circle,#fff1af 0 1px,transparent 2px),radial-gradient(circle,#ffac43 0 1.4px,transparent 2.5px),radial-gradient(circle,#ff5f29 0 1px,transparent 2px) !important;
  background-size:59px 86px,88px 124px,130px 154px !important;
  background-position:0 100%,20px 100%,56px 100% !important;
  animation:repoRcgFxRiseV2136 9s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='dragonhoard'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.80 !important;
  background-image:radial-gradient(circle,#fff7c7 0 1px,transparent 2px),radial-gradient(circle,#ffd15a 0 1.5px,transparent 2.5px),radial-gradient(circle,#bb7a1c 0 1px,transparent 2px) !important;
  background-size:47px 61px,78px 95px,120px 140px !important;
  animation:repoRcgFxFallV2136 11s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.76 !important;
  inset:-10% -12% !important;
  content:'ᚱ   ᛉ   ᚦ   ✦   ᚨ   ᛟ   ᛞ   ✧   ᚱ   ᛉ   ᚦ' !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:color-mix(in srgb,var(--rcgu-c) 44%,transparent) !important;
  font:900 clamp(16px,2vw,30px)/2.8 Georgia,serif !important;
  letter-spacing:clamp(10px,2vw,30px) !important;
  text-shadow:0 0 9px color-mix(in srgb,var(--rcgu-a) 36%,transparent) !important;
  white-space:normal !important;
  text-align:center !important;
  animation:repoRcgFxRunesV2136 18s linear infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='enchantedwilds'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.82 !important;
  background-image:radial-gradient(circle,#fff7c8 0 1px,#ffd96e 1.3px,transparent 3px),radial-gradient(circle,#d9ff9f 0 1px,#8fd15e 1.4px,transparent 3px),radial-gradient(circle,#fff1a5 0 1px,transparent 2.7px) !important;
  background-size:68px 98px,102px 134px,149px 182px !important;
  background-position:0 100%,34px 100%,74px 100% !important;
  animation:repoRcgFxRiseSlowV2136 13s linear infinite !important;
  filter:drop-shadow(0 0 4px rgba(255,226,116,.5)) !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-upgrade-fx-v2129::after,
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-upgrade-fx-v2129::after,
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-upgrade-fx-v2129::after,
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:1 !important;
  inset:-72% -56% !important;
  background:linear-gradient(126deg,transparent 45%,rgba(255,255,255,.02) 47%,color-mix(in srgb,var(--rcgu-c) 50%,transparent) 49%,rgba(255,255,255,.72) 50%,color-mix(in srgb,var(--rcgu-a) 28%,transparent) 51%,transparent 54%) !important;
  animation:repoRcgFxCometV2136 8s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-upgrade-fx-v2129::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='voidrift'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.74 !important;
  inset:-36% !important;
  background:repeating-radial-gradient(circle at 50% 50%,transparent 0 42px,color-mix(in srgb,var(--rcgu-c) 17%,transparent) 45px 47px,transparent 50px 74px) !important;
  animation:repoRcgFxRippleV2136 9s ease-in-out infinite !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-upgrade-fx-v2129::before{
  opacity:.50 !important;
  width:74% !important;
  height:58% !important;
  left:-18% !important;
  top:48% !important;
  inset:auto !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse,rgba(233,237,243,.18),transparent 68%) !important;
  filter:blur(34px) !important;
  animation:repoRcgFxSmokeAV2136 11s ease-in-out infinite alternate !important;
}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-upgrade-fx-v2129::after{
  opacity:.40 !important;
  width:72% !important;
  height:56% !important;
  right:-18% !important;
  top:8% !important;
  inset:auto !important;
  border-radius:50% !important;
  background:radial-gradient(ellipse,rgba(190,201,212,.15),transparent 68%) !important;
  filter:blur(30px) !important;
  animation:repoRcgFxSmokeBV2136 14s ease-in-out infinite alternate !important;
}

@keyframes repoRcgFxStarsV2136{to{background-position:76px 164px,-84px 230px,152px 296px}}
@keyframes repoRcgFxAuroraV2136{from{transform:translate(-7%,-4%) rotate(-11deg) scale(.92)}to{transform:translate(8%,7%) rotate(16deg) scale(1.08)}}
@keyframes repoRcgFxRiseV2136{to{background-position:34px -178px,-38px -252px,82px -316px}}
@keyframes repoRcgFxRiseSlowV2136{to{background-position:24px -160px,-30px -228px,64px -292px}}
@keyframes repoRcgFxFallV2136{to{background-position:22px 128px,-33px 196px,52px 286px}}
@keyframes repoRcgFxRunesV2136{from{transform:translate3d(-8%,4%,0) rotate(-2deg)}to{transform:translate3d(8%,-5%,0) rotate(2deg)}}
@keyframes repoRcgFxCometV2136{0%,68%{transform:translateX(-55%) rotate(2deg);opacity:0}74%{opacity:1}86%{transform:translateX(55%) rotate(2deg);opacity:.48}90%,100%{opacity:0}}
@keyframes repoRcgFxRippleV2136{0%,100%{transform:scale(.84);opacity:.22}50%{transform:scale(1.08);opacity:.64}}
@keyframes repoRcgFxSmokeAV2136{to{transform:translate(24%,-17%) scale(1.15)}}
@keyframes repoRcgFxSmokeBV2136{to{transform:translate(-25%,20%) scale(.9)}}

@media (prefers-reduced-motion: reduce){
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129,
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::before,
  #repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129::after{
    animation:none !important;
  }
}


/* ========================================================================
   RCG SLAB BINDER v21.37 — FULL PARITY EFFECTS
   Reuses the normal binder full-spread animation language 1:1.
   ======================================================================== */
#repoRcgBinderDialog{
  --bc-accent:var(--rcgu-a,#2359a7);
  --bc-bright:var(--rcgu-c,#a8d4ff);
}
#repoRcgBinderDialog .repo-rcg-upgrade-fx-v2129,
#repoRcgBinderDialog .repo-rcg-fx-depth-v2131,
#repoRcgBinderDialog .repo-rcg-fx-atmos-v2130,
#repoRcgBinderDialog .repo-rcg-fx-ribbon-v2130,
#repoRcgBinderDialog .repo-rcg-fx-sigil-v2131,
#repoRcgBinderDialog .repo-rcg-fx-particles-v2130,
#repoRcgBinderDialog .repo-rcg-fx-glass-v2131,
#repoRcgBinderDialog .repo-rcg-fx-flash-v2130{display:none!important;animation:none!important}
#repoRcgBinderDialog .repo-rcg-book>.repo-binder-full-spread-fx.repo-rcg-parity-fx{
  position:absolute!important;
  inset:0!important;
  z-index:7!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  clip-path:inset(5.1% 2.8% 5.2% 2.8% round 18px)!important;
  pointer-events:none!important;
  isolation:isolate!important;
  opacity:0!important;
  background:none!important;
}
#repoRcgBinderDialog .repo-rcg-book>.repo-binder-full-spread-fx.repo-rcg-parity-fx::before,
#repoRcgBinderDialog .repo-rcg-book>.repo-binder-full-spread-fx.repo-rcg-parity-fx::after{content:'';position:absolute;inset:0;pointer-events:none}
#repoRcgBinderDialog .repo-rcg-book>.repo-binder-full-spread-fx.repo-rcg-parity-fx i{display:none;position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);pointer-events:none;will-change:transform,opacity}

#repoRcgBinderDialog[data-rcg-upgrade-effect='calm'] .repo-rcg-parity-fx{opacity:0!important;background:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-parity-fx{opacity:.76!important;background:radial-gradient(ellipse at 50% 45%,color-mix(in srgb,var(--bc-accent) 6%,transparent),transparent 65%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stardust'] .repo-rcg-parity-fx i{display:block!important;border-radius:50%;background:radial-gradient(circle,#fff 0 18%,var(--bc-bright) 30%,transparent 72%)!important;box-shadow:0 0 5px color-mix(in srgb,var(--bc-bright) 52%,transparent);animation:repoBinderV3Twinkle var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-parity-fx{opacity:.70!important;background:transparent!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-parity-fx::before{inset:-45%!important;background:conic-gradient(from 8deg,transparent 0 15%,color-mix(in srgb,var(--bc-bright) 27%,transparent) 22%,transparent 32% 49%,color-mix(in srgb,var(--bc-accent) 31%,transparent) 57%,transparent 68% 100%)!important;filter:blur(27px)!important;animation:repoBinderV3Aurora 12s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='aurora'] .repo-rcg-parity-fx::after{display:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-parity-fx{opacity:.82!important;background:radial-gradient(ellipse at 50% 105%,rgba(163,54,10,.15),transparent 55%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='embers'] .repo-rcg-parity-fx i{display:block!important;top:calc(100% + 8px)!important;border-radius:50%;background:radial-gradient(circle,#fff4b0 0 18%,#ff9c2f 38%,#e74616 60%,transparent 75%)!important;box-shadow:0 0 5px #ff7b21;animation:repoBinderV3Rise var(--d) ease-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-parity-fx{opacity:.75!important;background:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='goldfall'] .repo-rcg-parity-fx i{display:block!important;top:-12px!important;border-radius:50%;background:radial-gradient(circle,#fff7c8 0 20%,#ffd45a 42%,#9c6614 66%,transparent 74%)!important;box-shadow:0 0 4px rgba(255,207,73,.58);animation:repoBinderV3Fall var(--d) linear var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-parity-fx{opacity:.70!important;background:transparent!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-parity-fx::before,
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-parity-fx::after{width:72%!important;height:60%!important;border-radius:50%!important;background:radial-gradient(ellipse,color-mix(in srgb,var(--bc-bright) 20%,#d8e8ff44),transparent 69%)!important;filter:blur(32px)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-parity-fx::before{left:-20%!important;top:44%!important;animation:repoBinderV3MistLeft 11s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='moonmist'] .repo-rcg-parity-fx::after{left:48%!important;top:-8%!important;animation:repoBinderV3MistRight 13s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-parity-fx{opacity:.62!important;background:repeating-linear-gradient(90deg,transparent 0 86px,color-mix(in srgb,var(--bc-accent) 5%,transparent) 88px 89px)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-parity-fx::before{content:'ᚱ  ᛉ  ᚦ  ✦  ᚨ  ᛟ  ᛞ  ✧  ᚱ  ᛉ  ᚦ'!important;inset:-10% -18%!important;display:flex!important;align-items:center!important;justify-content:center!important;color:color-mix(in srgb,var(--bc-bright) 42%,transparent)!important;font:900 clamp(17px,2vw,30px)/2.9 Georgia,serif!important;letter-spacing:clamp(14px,2.3vw,34px)!important;text-align:center!important;text-shadow:0 0 9px var(--bc-accent)!important;animation:repoBinderV3Runes 16s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='runes'] .repo-rcg-parity-fx::after{display:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-parity-fx{opacity:.80!important;background:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='fireflies'] .repo-rcg-parity-fx i{display:block!important;top:calc(100% + 5px)!important;border-radius:50%;background:radial-gradient(circle,#fffbd0 0 18%,#d9ff85 34%,#84d65e 51%,transparent 72%)!important;box-shadow:0 0 6px #dfff76;animation:repoBinderV3Firefly var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-parity-fx{opacity:.88!important;background:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-parity-fx::before{display:none!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='comet'] .repo-rcg-parity-fx::after{inset:-70% -55%!important;background:linear-gradient(126deg,transparent 45%,rgba(255,255,255,.02) 47%,color-mix(in srgb,var(--bc-bright) 48%,transparent) 49%,rgba(255,255,255,.64) 50%,color-mix(in srgb,var(--bc-accent) 29%,transparent) 51%,transparent 54%)!important;animation:repoBinderV3Comet 8.5s ease-in-out infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-parity-fx{opacity:.68!important;background:transparent!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-parity-fx::before{inset:-35%!important;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 44px,color-mix(in srgb,var(--bc-bright) 16%,transparent) 46px 48px,transparent 51px 77px)!important;filter:blur(.4px)!important;animation:repoBinderV3Ripple 9s ease-in-out infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='ripple'] .repo-rcg-parity-fx::after{display:none!important}

#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-parity-fx{opacity:.96!important;background:radial-gradient(ellipse at 50% 108%,rgba(255,231,112,.60) 0 7%,rgba(255,84,20,.44) 19%,rgba(91,8,1,.18) 43%,transparent 66%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-parity-fx::before{inset:18% -5% -18%!important;background:repeating-conic-gradient(from 206deg at 50% 100%,transparent 0 5deg,rgba(255,215,75,.30) 7deg 10deg,rgba(255,60,13,.47) 12deg 17deg,transparent 20deg 29deg)!important;filter:blur(8px) saturate(1.25)!important;transform-origin:50% 100%!important;animation:repoFullInfernoFlame 2.2s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-parity-fx::after{inset:-5%!important;background:linear-gradient(90deg,transparent,rgba(255,168,35,.08),transparent)!important;filter:blur(3px)!important;animation:repoFullInfernoHeat 1.65s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='inferno'] .repo-rcg-parity-fx i{display:block!important;top:calc(100% + 12px)!important;border-radius:50%!important;background:radial-gradient(circle,#fff8bd 0 22%,#ffb62f 36%,#ff4d15 65%,transparent 72%)!important;box-shadow:0 0 7px #ff6a19!important;animation:repoFullInfernoSpark var(--d) linear var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-parity-fx{opacity:.95!important;background:radial-gradient(ellipse at 22% 28%,rgba(89,77,255,.24),transparent 34%),radial-gradient(ellipse at 78% 72%,rgba(27,206,226,.20),transparent 38%),radial-gradient(ellipse at 53% 48%,rgba(177,85,255,.14),transparent 48%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-parity-fx::before{inset:-48%!important;background:conic-gradient(from 0deg,transparent 0 14%,rgba(93,83,255,.33) 22%,transparent 34% 52%,rgba(41,222,232,.27) 61%,transparent 72% 100%)!important;filter:blur(28px)!important;animation:repoFullCelestialNebula 11s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-parity-fx::after{background:linear-gradient(118deg,transparent 0 44%,rgba(218,244,255,.74) 45% 45.35%,transparent 46% 67%,rgba(180,111,255,.52) 68% 68.3%,transparent 69%)!important;opacity:0!important;animation:repoFullCelestialLightning 6.2s steps(1,end) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='celestial'] .repo-rcg-parity-fx i{display:block!important;border-radius:50%!important;background:#fff!important;box-shadow:0 0 5px #9fe9ff,0 0 10px #8e73ff!important;animation:repoFullCelestialStar var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-parity-fx{opacity:.88!important;background:radial-gradient(ellipse at 50% 44%,rgba(160,222,255,.10),transparent 62%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-parity-fx::before{inset:-28% -55%!important;background:repeating-linear-gradient(171deg,transparent 0 46px,rgba(224,246,255,.12) 49px 52px,transparent 55px 96px)!important;filter:blur(2px)!important;animation:repoNaturalWindRibbon 5.8s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-parity-fx::after{inset:10% -40%!important;background:radial-gradient(ellipse at 30% 40%,rgba(219,245,255,.16),transparent 29%),radial-gradient(ellipse at 72% 62%,rgba(163,214,239,.12),transparent 32%)!important;filter:blur(16px)!important;animation:repoNaturalWindCloud 6.5s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='stormwind'] .repo-rcg-parity-fx i{display:block!important;width:calc(var(--size) + 27px)!important;height:1px!important;border-radius:99px!important;background:linear-gradient(90deg,transparent,#e9f9ffcc,transparent)!important;filter:drop-shadow(0 0 3px #b8e7ff)!important;animation:repoNaturalWindParticle var(--d) linear var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-parity-fx{opacity:.84!important;background:radial-gradient(ellipse at 50% 58%,rgba(126,141,152,.13),transparent 68%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-parity-fx::before{inset:-18%!important;background:radial-gradient(ellipse at 15% 72%,rgba(213,222,228,.23),transparent 29%),radial-gradient(ellipse at 48% 45%,rgba(126,141,152,.20),transparent 34%),radial-gradient(ellipse at 85% 68%,rgba(221,229,233,.19),transparent 30%)!important;filter:blur(30px)!important;animation:repoNaturalSmokeBank 12s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-parity-fx::after{inset:-30% -10%!important;background:repeating-radial-gradient(ellipse at 40% 90%,transparent 0 48px,rgba(210,220,226,.065) 55px 66px,transparent 73px 108px)!important;filter:blur(12px)!important;animation:repoNaturalSmokeCurl 15s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='smokeveil'] .repo-rcg-parity-fx i{display:block!important;width:calc(var(--size) + 30px)!important;height:calc(var(--size) + 11px)!important;border-radius:50%!important;background:rgba(210,220,226,.20)!important;filter:blur(5px)!important;animation:repoNaturalSmokeParticle var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-parity-fx{opacity:.95!important;background:radial-gradient(ellipse at 50% 110%,rgba(117,47,8,.18),transparent 57%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-parity-fx::before{inset:-35%!important;background:conic-gradient(from 70deg,transparent,rgba(255,181,50,.07),transparent 22%,rgba(177,62,18,.08),transparent 47%)!important;animation:repoNaturalLeafCurrent 10s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='autumnstream'] .repo-rcg-parity-fx i{display:block!important;width:calc(var(--size) + 8px)!important;height:calc(var(--size) + 3px)!important;border-radius:90% 10% 90% 10%!important;background:linear-gradient(135deg,#ffd766,#d26a1e 58%,#772308)!important;box-shadow:0 0 4px rgba(255,164,44,.55)!important;animation:repoNaturalLeafFall var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-parity-fx{opacity:.90!important;background:radial-gradient(ellipse at 50% 88%,rgba(0,127,164,.14),transparent 67%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-parity-fx::before{inset:12% -28%!important;background:repeating-radial-gradient(ellipse at 50% 120%,transparent 0 55px,rgba(102,226,255,.15) 59px 64px,transparent 69px 102px)!important;filter:blur(1px)!important;animation:repoNaturalWaterFlow 6.8s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-parity-fx::after{inset:-15% -20%!important;background:linear-gradient(105deg,transparent 33%,rgba(179,247,255,.12) 43%,transparent 52% 66%,rgba(74,201,238,.11) 72%,transparent 80%)!important;filter:blur(9px)!important;animation:repoNaturalWaterShine 5s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='tidalstream'] .repo-rcg-parity-fx i{display:block!important;border:1px solid rgba(190,248,255,.78)!important;border-radius:50%!important;background:rgba(77,205,242,.16)!important;box-shadow:0 0 5px #6de6ff!important;animation:repoNaturalBubbleRise var(--d) ease-in var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-parity-fx{opacity:.83!important;background:radial-gradient(ellipse at 50% 70%,rgba(210,223,214,.10),transparent 70%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-parity-fx::before{inset:20% -28% -25%!important;background:radial-gradient(ellipse at 12% 60%,rgba(246,242,220,.33),transparent 35%),radial-gradient(ellipse at 45% 45%,rgba(210,225,219,.27),transparent 38%),radial-gradient(ellipse at 82% 65%,rgba(239,242,224,.30),transparent 36%)!important;filter:blur(35px)!important;animation:repoNaturalDawnMist 14s ease-in-out infinite alternate!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-parity-fx::after{inset:45% -35% -30%!important;background:repeating-linear-gradient(177deg,transparent 0 35px,rgba(236,241,227,.08) 38px 44px,transparent 47px 76px)!important;filter:blur(16px)!important;animation:repoNaturalMistBands 10s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='dawnmist'] .repo-rcg-parity-fx i{display:block!important;width:calc(var(--size) + 38px)!important;height:calc(var(--size) + 12px)!important;border-radius:50%!important;background:rgba(239,244,230,.16)!important;filter:blur(8px)!important;animation:repoNaturalMistParticle var(--d) ease-in-out var(--delay) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-parity-fx{opacity:.95!important;background:radial-gradient(circle at 18% 12%,rgba(201,225,255,.10),transparent 29%)!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-parity-fx::before{inset:0!important;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.8px),radial-gradient(circle,#8fc8ff 0 1px,transparent 1.8px)!important;background-size:83px 89px,131px 149px!important;opacity:.52!important;animation:repoNaturalNightStars 18s linear infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-parity-fx::after{background:linear-gradient(116deg,transparent 0 45%,rgba(214,239,255,.78) 46% 46.3%,transparent 47%)!important;opacity:0!important;animation:repoNaturalRainLightning 8s steps(1,end) infinite!important}
#repoRcgBinderDialog[data-rcg-upgrade-effect='nightrain'] .repo-rcg-parity-fx i{display:block!important;width:1px!important;height:calc(var(--size) + 25px)!important;border-radius:99px!important;background:linear-gradient(180deg,transparent,#bfe8ffdd)!important;filter:drop-shadow(0 0 2px #7abce8)!important;animation:repoNaturalRainDrop var(--d) linear var(--delay) infinite!important}

@keyframes repoBinderV3Twinkle{0%,100%{opacity:.18;transform:scale(.55)}50%{opacity:.95;transform:translateY(-8px) scale(1.25)}}
@keyframes repoBinderV3Aurora{from{transform:translate(-5%,-3%) rotate(-5deg) scale(.94)}to{transform:translate(5%,4%) rotate(5deg) scale(1.07)}}
@keyframes repoBinderV3Rise{0%{transform:translateY(0) scale(.5);opacity:0}10%{opacity:.96}100%{transform:translate(var(--drift),-112vh) scale(1.18);opacity:0}}
@keyframes repoBinderV3Fall{0%{transform:translate(0,-10px) scale(.6);opacity:0}10%{opacity:.92}100%{transform:translate(var(--drift),105vh) scale(1.1);opacity:0}}
@keyframes repoBinderV3MistLeft{from{transform:translateX(-8%) scale(.94)}to{transform:translateX(16%) scale(1.08)}}
@keyframes repoBinderV3MistRight{from{transform:translateX(7%) scale(.96)}to{transform:translateX(-14%) scale(1.10)}}
@keyframes repoBinderV3Runes{to{transform:translateX(8%)}}
@keyframes repoBinderV3Firefly{0%{transform:translate(0,0) scale(.4);opacity:0}18%{opacity:.95}55%{transform:translate(calc(var(--drift) * .45),-45vh) scale(1.1)}100%{transform:translate(var(--drift),-94vh) scale(.55);opacity:0}}
@keyframes repoBinderV3Comet{0%,68%{transform:translateX(-42%) rotate(0);opacity:0}74%{opacity:1}88%,100%{transform:translateX(46%) rotate(0);opacity:0}}
@keyframes repoBinderV3Ripple{0%,100%{transform:scale(.87);opacity:.28}50%{transform:scale(1.12);opacity:.82}}
@keyframes repoFullInfernoFlame{from{transform:translateY(6%) scaleX(.94)}to{transform:translateY(-3%) scaleX(1.05);filter:blur(7px) saturate(1.5) brightness(1.17)}}
@keyframes repoFullInfernoHeat{from{transform:translateX(-4%) skewX(-2deg)}to{transform:translateX(4%) skewX(2deg);opacity:.72}}
@keyframes repoFullInfernoSpark{0%{transform:translate(0,0) scale(.5);opacity:0}12%{opacity:1}100%{transform:translate(var(--drift),calc(-115vh - var(--y))) scale(1.25);opacity:0}}
@keyframes repoFullCelestialNebula{from{transform:translate(-4%,-3%) rotate(-4deg) scale(.92)}to{transform:translate(5%,4%) rotate(5deg) scale(1.08)}}
@keyframes repoFullCelestialLightning{0%,84%,90%,100%{opacity:0}85%,87%,91%{opacity:.92}}
@keyframes repoFullCelestialStar{0%,100%{transform:translateY(0) scale(.55);opacity:.25}50%{transform:translateY(-16px) scale(1.35);opacity:1}}
@keyframes repoNaturalWindRibbon{to{transform:translateX(45%)}}
@keyframes repoNaturalWindCloud{from{transform:translateX(-6%) scale(.94)}to{transform:translateX(7%) scale(1.05)}}
@keyframes repoNaturalWindParticle{0%{transform:translate(-35vw,18px) rotate(-7deg);opacity:0}12%{opacity:.85}100%{transform:translate(125vw,-28px) rotate(-7deg);opacity:0}}
@keyframes repoNaturalSmokeBank{from{transform:translateX(-7%) scale(.94)}to{transform:translateX(8%) scale(1.08)}}
@keyframes repoNaturalSmokeCurl{to{transform:rotate(12deg) translateX(5%)}}
@keyframes repoNaturalSmokeParticle{0%,100%{transform:translate(-20px,20px) scale(.65);opacity:0}28%{opacity:.38}65%{opacity:.22}90%{transform:translate(34px,-110px) scale(2.2);opacity:0}}
@keyframes repoNaturalLeafCurrent{to{transform:rotate(360deg)}}
@keyframes repoNaturalLeafFall{0%{transform:translate(-20vw,-30vh) rotate(0deg);opacity:0}12%{opacity:.95}55%{transform:translate(18vw,28vh) rotate(420deg)}100%{transform:translate(70vw,92vh) rotate(900deg);opacity:0}}
@keyframes repoNaturalWaterFlow{to{transform:translateX(9%)}}
@keyframes repoNaturalWaterShine{from{transform:translateX(-5%)}to{transform:translateX(6%)}}
@keyframes repoNaturalBubbleRise{0%{transform:translateY(75vh) scale(.55);opacity:0}18%{opacity:.8}100%{transform:translate(var(--drift),-85vh) scale(1.2);opacity:0}}
@keyframes repoNaturalDawnMist{from{transform:translateX(-7%) scale(.95)}to{transform:translateX(8%) scale(1.08)}}
@keyframes repoNaturalMistBands{to{transform:translateX(15%)}}
@keyframes repoNaturalMistParticle{0%,100%{transform:translate(-24vw,12px) scale(.7);opacity:0}25%{opacity:.26}72%{opacity:.18}100%{transform:translate(72vw,-22px) scale(1.8);opacity:0}}
@keyframes repoNaturalNightStars{to{background-position:83px 89px,-131px 149px}}
@keyframes repoNaturalRainLightning{0%,89%,94%,100%{opacity:0}90%,92%,95%{opacity:.86}}
@keyframes repoNaturalRainDrop{0%{transform:translate(-8vw,-75vh) rotate(8deg);opacity:0}8%{opacity:.82}100%{transform:translate(18vw,105vh) rotate(8deg);opacity:0}}


/* ========================================================================
   RCG v21.38 — drag/swap/cross-page + large slab hover preview
   ======================================================================== */

/* Tiny label correction: move variant line up so FULL ART never touches RCG brand. */
#repoRcgBinderDialog .repo-rcg-v2118-label em{
  position:relative!important;
  top:-2px!important;
}

/* Make filled slabs feel draggable without adding visual clutter. */
#repoRcgBinderDialog .repo-rcg-v2118-slab[draggable='true']{cursor:grab!important}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-slab[draggable='true']{cursor:grabbing!important}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-slot{
  transition:box-shadow .16s ease,transform .16s ease,filter .16s ease!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-drop-target-v2138{
  transform:translateY(-2px)!important;
  filter:brightness(1.045)!important;
  box-shadow:
    inset 0 0 0 2px color-mix(in srgb,var(--bc-bright,#a8d4ff) 66%,#fff),
    0 0 0 2px color-mix(in srgb,var(--bc-accent,#2359a7) 72%,transparent),
    0 0 18px color-mix(in srgb,var(--bc-bright,#a8d4ff) 32%,transparent)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slot.is-swap-land-v2138{
  animation:repoRcgSwapLandV2138 .40s cubic-bezier(.2,.8,.2,1)!important;
}
@keyframes repoRcgSwapLandV2138{
  0%{transform:scale(.96);filter:brightness(1.18)}
  55%{transform:scale(1.025);filter:brightness(1.09)}
  100%{transform:scale(1);filter:brightness(1)}
}

/* Existing invisible page edges become drag-turn targets, same mechanic as card binder. */
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-turn{
  width:7%!important;
  z-index:60!important;
}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-turn::after{
  content:'';
  position:absolute;
  top:18%;bottom:18%;width:4px;
  opacity:.22;
  border-radius:99px;
  background:linear-gradient(180deg,transparent,var(--bc-bright,#a8d4ff),transparent);
  box-shadow:0 0 10px color-mix(in srgb,var(--bc-bright,#a8d4ff) 45%,transparent);
}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-turn.left::after{left:9px}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-turn.right::after{right:9px}
#repoRcgBinderDialog.repo-rcg-v2138-dragging .repo-rcg-v2118-turn.is-drag-hot-v2138::after{
  opacity:.85;
  width:6px;
  box-shadow:0 0 18px color-mix(in srgb,var(--bc-bright,#a8d4ff) 76%,transparent);
}

/* Large premium hover preview. Uses an actual cloned RCG slab, not just card art. */
#repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview{
  position:absolute!important;
  z-index:2147483400!important;
  width:clamp(245px,19vw,330px)!important;
  aspect-ratio:0.676!important;
  pointer-events:none!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(8px) scale(.965)!important;
  transform-origin:center!important;
  transition:opacity .13s ease,transform .16s cubic-bezier(.2,.75,.22,1),visibility 0s linear .16s!important;
  filter:drop-shadow(0 22px 28px rgba(0,0,0,.62)) drop-shadow(0 0 16px color-mix(in srgb,var(--bc-accent,#2359a7) 20%,transparent))!important;
}
#repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview.is-visible{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
  transition-delay:0s!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab{
  position:absolute!important;
  inset:0!important;
  left:0!important;top:0!important;right:0!important;bottom:0!important;
  width:100%!important;
  height:100%!important;
  transform:none!important;
  margin:0!important;
  border-radius:11px!important;
  cursor:default!important;
  background:transparent!important;
  border-color:rgba(232,241,246,.32)!important;
  box-shadow:0 18px 34px rgba(0,0,0,.48)!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-clear-case{
  background:
    linear-gradient(108deg,rgba(255,255,255,.045),transparent 16%,transparent 84%,rgba(255,255,255,.022)),
    linear-gradient(180deg,rgba(255,255,255,.035),transparent 14%,transparent 88%,rgba(175,197,211,.02))!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.34),
    inset 0 10px 12px rgba(255,255,255,.03),
    inset 0 -6px 10px rgba(53,85,104,.02)!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-card-window{
  background:transparent!important;
  box-shadow:none!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-card-window img{
  background:transparent!important;
}
/* Preview text is intentionally larger/readable. */
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label strong{font-size:13px!important}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label b{font-size:12px!important}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label em{font-size:7px!important;top:-3px!important}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-brand span{font-size:11px!important}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-brand small{font-size:5px!important}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-meta small{font-size:5px!important}

@media(max-width:900px){
  #repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview{width:clamp(210px,30vw,270px)!important}
}


/* ========================================================================
   RCG v21.40 — hover preview transparent card-window correction
   Older binder rules had higher specificity and were leaving white side bars.
   ======================================================================== */
#repoRcgBinderDialog #repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview .repo-rcg-v2118-slab:not(.is-mini){
  background:transparent!important;
  border-color:rgba(232,241,246,.30)!important;
  box-shadow:0 18px 34px rgba(0,0,0,.48)!important;
}
#repoRcgBinderDialog #repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-clear-case{
  background:
    linear-gradient(108deg,rgba(255,255,255,.045),transparent 16%,transparent 84%,rgba(255,255,255,.022)),
    linear-gradient(180deg,rgba(255,255,255,.035),transparent 14%,transparent 88%,rgba(175,197,211,.02))!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.30),
    inset 0 10px 12px rgba(255,255,255,.025),
    inset 0 -6px 10px rgba(53,85,104,.018)!important;
}
#repoRcgBinderDialog #repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window{
  background:transparent!important;
  border-color:rgba(31,55,79,.30)!important;
  box-shadow:none!important;
}
#repoRcgBinderDialog #repoRcgSlabHoverPreviewV2138.repo-rcg-v2138-hover-preview .repo-rcg-v2118-slab:not(.is-mini) .repo-rcg-v2118-card-window img{
  background:transparent!important;
  object-fit:contain!important;
}

/* ========================================================================
   RCG v21.41 — premium slab label polish: stronger RCG / grade badge + cleaner label
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-v2118-label{
  background:
    linear-gradient(180deg,rgba(255,255,255,.76),transparent 24%),
    linear-gradient(180deg,#fcfbf5 0%,#f4eedf 58%,#eee3cf 100%) !important;
  border-color:rgba(28,48,69,.96) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    inset 0 0 0 1px rgba(216,179,84,.58),
    0 2px 4px rgba(6,17,26,.16) !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-top{
  align-items:center !important;
  gap:9px !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label strong{
  letter-spacing:.145em !important;
  color:#1b3650 !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label b{
  color:inherit !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-self:end !important;
  gap:2px !important;
  padding:1px 6px 1px 7px !important;
  border-radius:999px !important;
  border:1px solid rgba(31,69,101,.24) !important;
  background:linear-gradient(180deg,rgba(243,248,255,.98),rgba(226,235,246,.88)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 1px 1px rgba(9,24,36,.12) !important;
  text-shadow:none !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-brand{
  display:inline-block !important;
  font:900 clamp(6.6px,.56vw,9.8px)/1 Arial,sans-serif !important;
  letter-spacing:.14em !important;
  color:#225d92 !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-sep{
  display:inline-block !important;
  font:900 clamp(6.1px,.50vw,8.5px)/1 Arial,sans-serif !important;
  letter-spacing:.08em !important;
  color:#8b98a5 !important;
  margin:0 1px !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-value{
  display:inline-block !important;
  font:900 clamp(8.2px,.70vw,12.4px)/.94 Arial,sans-serif !important;
  letter-spacing:.03em !important;
  color:#aa771c !important;
  text-shadow:0 0 8px rgba(214,172,72,.20),0 1px 0 rgba(255,255,255,.96) !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-brand{color:#8c6112 !important}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-value{
  color:#b18020 !important;
  text-shadow:0 0 10px rgba(216,172,63,.28),0 1px 0 rgba(255,255,255,.96) !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-brand{color:#1e5f91 !important}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-value{
  color:#2b628f !important;
  text-shadow:0 0 10px rgba(92,164,222,.20),0 1px 0 rgba(255,255,255,.96) !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-brand{color:#415463 !important}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-value{
  color:#5b6976 !important;
  text-shadow:0 0 8px rgba(130,148,160,.14),0 1px 0 rgba(255,255,255,.96) !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand span{
  color:#25527c !important;
  font:900 clamp(5.8px,.50vw,8.8px)/1 Arial,sans-serif !important;
  letter-spacing:.085em !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand small{
  color:#6c7680 !important;
  letter-spacing:.11em !important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-meta small{
  color:#717981 !important;
  letter-spacing:.10em !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label b{
  gap:3px !important;
  padding:2px 8px 2px 9px !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-brand{
  font-size:12px !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-sep{
  font-size:11px !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-value{
  font-size:15px !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-brand span{
  font-size:12px !important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-brand small{
  font-size:5.4px !important;
  letter-spacing:.12em !important;
}

/* ========================================================================
   RCG v21.42 — crisp label / grade polish
   - lift variant line a touch to stop overlap with center RCG logo
   - remove border/pill around grade
   - apply luxe grade colours: 10 gold, 9 sapphire, 8 silver/steel
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-v2118-label em{
  position:relative!important;
  top:-4px!important;
  max-width:54%!important;
  font-size:clamp(3.35px,.285vw,5.05px)!important;
  letter-spacing:.10em!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label em{
  top:-5px!important;
  max-width:54%!important;
  font-size:6.4px!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-label-brand{
  transform:translateY(16%)!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label-brand{
  transform:translateY(14%)!important;
}

/* Remove the badge border/background while keeping stronger hierarchy. */
#repoRcgBinderDialog .repo-rcg-v2118-label b,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-label b{
  padding:0!important;
  border:none!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  gap:3px!important;
  text-shadow:none!important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.70));
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-brand{
  font:900 clamp(6.8px,.58vw,10.3px)/1 Arial,sans-serif!important;
  letter-spacing:.15em!important;
  color:#365f87!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-sep{
  font:900 clamp(6.4px,.52vw,9px)/1 Arial,sans-serif!important;
  color:#8b927e!important;
  margin:0 1px!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-grade-value{
  font:900 clamp(9.5px,.80vw,14.4px)/.92 Arial,sans-serif!important;
  letter-spacing:.02em!important;
  color:#a27b26!important;
  text-shadow:0 0 10px rgba(197,154,56,.20),0 1px 0 rgba(255,255,255,.96)!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-brand{
  font-size:13px!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-sep{
  font-size:12px!important;
}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-grade-value{
  font-size:17px!important;
}

/* 10 = gold luxe */
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-brand,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-brand{
  color:#8f6914!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-sep,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-sep{
  color:#a98a48!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-value,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-10 .repo-rcg-v2118-grade-value{
  color:#bf8f23!important;
  text-shadow:0 0 12px rgba(212,169,60,.28),0 1px 0 rgba(255,255,255,.98)!important;
}

/* 9 = sapphire / blue */
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-brand,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-brand{
  color:#255d8f!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-sep,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-sep{
  color:#6387aa!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-value,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-9 .repo-rcg-v2118-grade-value{
  color:#2d74b8!important;
  text-shadow:0 0 12px rgba(71,144,214,.22),0 1px 0 rgba(255,255,255,.98)!important;
}

/* 8 = silver / steel */
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-brand,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-brand{
  color:#4e5d6d!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-sep,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-sep{
  color:#8995a0!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-value,
#repoRcgSlabHoverPreviewV2138 .repo-rcg-v2118-slab.grade-8 .repo-rcg-v2118-grade-value{
  color:#667684!important;
  text-shadow:0 0 10px rgba(145,158,172,.18),0 1px 0 rgba(255,255,255,.96)!important;
}

/* ========================================================================
   RCG v21.43 — slab binder library + public read-only view
   ======================================================================== */
#repoRcgBinderDialog .repo-rcg-binder-status{
  position:relative!important;
  overflow:visible!important;
}
#repoRcgBinderDialog .repo-rcg-library-btn-v2143{
  position:absolute!important;
  left:50%!important;
  top:calc(100% + 8px)!important;
  transform:translateX(-50%)!important;
  z-index:90!important;
  min-width:178px!important;
  height:34px!important;
  padding:4px 15px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  border:1px solid rgba(198,152,66,.72)!important;
  border-radius:3px!important;
  background:linear-gradient(180deg,rgba(19,42,62,.98),rgba(7,20,32,.98))!important;
  box-shadow:inset 0 0 0 1px rgba(65,130,151,.18),0 5px 12px rgba(0,0,0,.30)!important;
  color:#ebc56e!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease!important;
}
#repoRcgBinderDialog .repo-rcg-library-btn-v2143 span{
  font:900 9px/1 Arial,sans-serif!important;
  letter-spacing:.16em!important;
}
#repoRcgBinderDialog .repo-rcg-library-btn-v2143 small{
  margin-top:3px!important;
  color:#7fc8d5!important;
  font:800 5.8px/1 Arial,sans-serif!important;
  letter-spacing:.12em!important;
}
#repoRcgBinderDialog .repo-rcg-library-btn-v2143:hover,
#repoRcgBinderDialog .repo-rcg-library-btn-v2143:focus-visible{
  transform:translateX(-50%) translateY(-2px)!important;
  filter:brightness(1.12)!important;
  box-shadow:inset 0 0 0 1px rgba(92,186,206,.30),0 7px 16px rgba(0,0,0,.35),0 0 16px rgba(80,190,207,.14)!important;
  outline:none!important;
}
#repoRcgBinderDialog.repo-rcg-public-view-v2143 .repo-rcg-v2118-slab{
  cursor:default!important;
}
#repoRcgBinderDialog.repo-rcg-public-view-v2143 .repo-rcg-v2118-slot.is-filled:hover .repo-rcg-v2118-slab{
  filter:brightness(1.055) saturate(1.03)!important;
}

#repoRcgBinderLibraryOverlayV2143.repo-rcg-library-overlay-v2143{
  position:fixed!important;
  inset:0!important;
  z-index:2147483600!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:28px!important;
  background:rgba(2,8,14,.78)!important;
  backdrop-filter:blur(8px) brightness(.68)!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:opacity .16s ease,visibility 0s linear .16s!important;
}
#repoRcgBinderLibraryOverlayV2143[hidden]{display:none!important}
#repoRcgBinderLibraryOverlayV2143.is-open{
  opacity:1!important;
  visibility:visible!important;
  transition-delay:0s!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-shell-v2143{
  position:relative!important;
  width:min(1060px,92vw)!important;
  max-height:min(760px,88vh)!important;
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
  border:1px solid rgba(199,153,67,.82)!important;
  border-radius:9px!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(33,105,128,.13),transparent 35%),
    linear-gradient(180deg,#0d1c2b 0%,#07131f 58%,#050e18 100%)!important;
  box-shadow:0 34px 80px rgba(0,0,0,.70),inset 0 0 0 2px rgba(5,13,22,.88),inset 0 0 0 3px rgba(198,152,66,.20)!important;
  color:#e9edf1!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-shell-v2143::before{
  content:''!important;
  position:absolute!important;
  inset:6px!important;
  pointer-events:none!important;
  border:1px solid rgba(74,173,194,.12)!important;
  border-radius:5px!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-head-v2143{
  position:relative!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:24px 28px 19px!important;
  border-bottom:1px solid rgba(198,152,66,.30)!important;
  background:linear-gradient(180deg,rgba(21,44,62,.70),rgba(8,22,34,.28))!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-head-v2143 small{
  display:block!important;
  margin-bottom:7px!important;
  color:#68bbc9!important;
  font:800 9px/1 Arial,sans-serif!important;
  letter-spacing:.17em!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-head-v2143 h2{
  margin:0!important;
  color:#edc76e!important;
  font:700 clamp(24px,2.3vw,34px)/1 Georgia,serif!important;
  letter-spacing:.08em!important;
  text-shadow:0 2px 12px rgba(0,0,0,.42)!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-head-v2143 p{
  max-width:690px!important;
  margin:7px 0 0!important;
  color:#9eb5c9!important;
  font:500 11px/1.45 Arial,sans-serif!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-close-v2143{
  width:36px!important;height:36px!important;flex:0 0 36px!important;
  border:1px solid rgba(198,152,66,.70)!important;border-radius:3px!important;
  background:linear-gradient(180deg,#173149,#0a1b29)!important;color:#f1cf7e!important;
  font:700 24px/1 Georgia,serif!important;cursor:pointer!important;
  box-shadow:inset 0 0 0 1px rgba(64,143,161,.14)!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-close-v2143:hover{filter:brightness(1.15)!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-toolbar-v2143{
  display:grid!important;
  grid-template-columns:1fr minmax(250px,330px)!important;
  align-items:end!important;
  gap:22px!important;
  padding:14px 28px!important;
  border-bottom:1px solid rgba(116,145,164,.16)!important;
  background:rgba(3,12,20,.42)!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-stats-v2143{
  display:flex!important;gap:9px!important;align-items:stretch!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-stats-v2143 span{
  min-width:116px!important;padding:8px 11px!important;border:1px solid rgba(82,132,153,.22)!important;border-radius:4px!important;
  background:linear-gradient(180deg,rgba(18,42,59,.80),rgba(7,21,31,.74))!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-stats-v2143 b{display:block!important;color:#e9c36c!important;font:800 15px/1 Arial,sans-serif!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-stats-v2143 small{display:block!important;margin-top:4px!important;color:#6faabd!important;font:800 6.5px/1 Arial,sans-serif!important;letter-spacing:.11em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-search-v2143{display:flex!important;flex-direction:column!important;gap:5px!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-search-v2143 span{color:#b9c7d2!important;font:800 7px/1 Arial,sans-serif!important;letter-spacing:.13em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-search-v2143 input{
  width:100%!important;height:36px!important;padding:0 12px!important;border:1px solid rgba(94,156,174,.35)!important;border-radius:4px!important;
  background:#06131e!important;color:#eaf4f7!important;outline:none!important;font:700 11px Arial,sans-serif!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-search-v2143 input:focus{border-color:#59b6c8!important;box-shadow:0 0 0 2px rgba(77,175,194,.12)!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-grid-v2143{
  min-height:280px!important;
  padding:18px 28px 24px!important;
  overflow:auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-content:start!important;
  gap:12px!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-entry-v2143{
  width:100%!important;min-height:126px!important;padding:11px!important;
  display:grid!important;grid-template-columns:88px minmax(0,1fr) 96px!important;align-items:center!important;gap:14px!important;
  border:1px solid rgba(102,136,157,.24)!important;border-radius:6px!important;
  background:linear-gradient(135deg,rgba(18,39,55,.94),rgba(6,18,29,.96))!important;
  color:#e9edf1!important;text-align:left!important;cursor:pointer!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.015)!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,filter .15s ease!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-entry-v2143:hover{
  transform:translateY(-2px)!important;filter:brightness(1.07)!important;
  border-color:rgba(79,179,198,.58)!important;box-shadow:0 9px 19px rgba(0,0,0,.25),0 0 18px rgba(58,157,179,.10)!important;
}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-entry-v2143.is-you{border-color:rgba(204,161,72,.48)!important;background:linear-gradient(135deg,rgba(41,47,50,.94),rgba(10,24,31,.96))!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-case-v2143{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;height:100px!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-case-v2143 img{max-width:84px!important;max-height:96px!important;object-fit:contain!important;filter:drop-shadow(0 8px 10px rgba(0,0,0,.44))!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-case-v2143 i{position:absolute!important;right:6px!important;bottom:5px!important;min-width:26px!important;height:20px!important;padding:0 5px!important;display:flex!important;align-items:center!important;justify-content:center!important;border:1px solid #b98736!important;border-radius:99px!important;background:#102c3b!important;color:#eac46b!important;font:900 7px Arial,sans-serif!important;letter-spacing:.05em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-copy-v2143{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-copy-v2143 small{color:#62b4c5!important;font:800 6.5px/1 Arial,sans-serif!important;letter-spacing:.12em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-copy-v2143 strong{max-width:100%!important;margin-top:5px!important;color:#efca72!important;font:700 17px/1.05 Georgia,serif!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-copy-v2143 em{margin-top:4px!important;color:#d8e3e9!important;font:800 7px/1 Arial,sans-serif!important;letter-spacing:.11em!important;font-style:normal!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-copy-v2143 p{margin:8px 0 0!important;color:#8fa5b5!important;font:500 9px/1.35 Arial,sans-serif!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-open-v2143{height:60px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;border-left:1px solid rgba(199,153,67,.20)!important;color:#edc66f!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-open-v2143 b{font:900 8px/1 Arial,sans-serif!important;letter-spacing:.10em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-open-v2143 small{margin-top:5px!important;color:#6db5c4!important;font:800 6px/1 Arial,sans-serif!important;letter-spacing:.10em!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-message-v2143{grid-column:1/-1!important;min-height:270px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:8px!important;color:#9db1bf!important;text-align:center!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-message-v2143 b{color:#edc66f!important;font:700 18px Georgia,serif!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-message-v2143 span{font:500 10px Arial,sans-serif!important}
#repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-foot-v2143{display:flex!important;justify-content:space-between!important;gap:18px!important;padding:11px 28px!important;border-top:1px solid rgba(198,152,66,.22)!important;color:#718a9c!important;font:700 7px/1.2 Arial,sans-serif!important;letter-spacing:.06em!important;background:rgba(3,12,20,.42)!important}

@media(max-width:850px){
  #repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-grid-v2143{grid-template-columns:1fr!important}
  #repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-toolbar-v2143{grid-template-columns:1fr!important}
  #repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-stats-v2143{flex-wrap:wrap!important}
  #repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-entry-v2143{grid-template-columns:74px minmax(0,1fr)!important}
  #repoRcgBinderLibraryOverlayV2143 .repo-rcg-library-open-v2143{grid-column:1/-1!important;height:36px!important;border-left:0!important;border-top:1px solid rgba(199,153,67,.20)!important}
}

/* ========================================================================
   REPO COMPANY V22 — ACHIEVEMENT LOG OVERHAUL
   ======================================================================== */
#achievementsDialog.repo-achievements-v22{
  width:min(1180px,calc(100vw - 28px))!important;
  max-width:none!important;
  height:min(88vh,900px)!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #9b7838!important;
  border-radius:8px!important;
  background:#06111d!important;
  color:#d7e1eb!important;
  box-shadow:0 30px 100px rgba(0,0,0,.82),inset 0 0 0 1px rgba(226,183,79,.18)!important;
}
#achievementsDialog.repo-achievements-v22::backdrop{
  background:radial-gradient(circle at 50% 35%,rgba(12,35,56,.72),rgba(1,5,10,.94) 72%)!important;
  backdrop-filter:blur(5px)!important;
}
#achievementsDialog .repo-achievements-close{
  position:absolute!important;right:14px!important;top:14px!important;z-index:20!important;
  width:36px!important;height:36px!important;border:1px solid rgba(222,180,82,.52)!important;border-radius:4px!important;
  background:linear-gradient(180deg,#13283d,#081522)!important;color:#f0d083!important;font:900 22px/1 Georgia,serif!important;
  box-shadow:inset 0 0 0 1px rgba(4,8,12,.75)!important;
}
#achievementsDialog .repo-achievements-close:hover{filter:brightness(1.18)!important;box-shadow:0 0 16px rgba(224,185,91,.18),inset 0 0 0 1px rgba(4,8,12,.75)!important}
.repo-achievements-shell{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:linear-gradient(180deg,#091827,#06111d 44%,#040b13)}
.repo-achievements-header{position:relative;display:grid;grid-template-columns:auto minmax(260px,1fr) auto;align-items:center;gap:18px;padding:18px 64px 17px 22px;border-bottom:1px solid rgba(190,146,61,.44);background:radial-gradient(circle at 18% 0,rgba(49,110,149,.16),transparent 32%),linear-gradient(180deg,#10243a,#091827)}
.repo-achievements-header::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#d7b35e88,transparent)}
.repo-achievements-emblem{width:62px;height:62px;display:grid;place-items:center;border:1px solid #8f6c32;border-radius:8px;background:linear-gradient(145deg,#162d43,#08131f);box-shadow:inset 0 0 20px rgba(73,160,205,.08),0 8px 20px rgba(0,0,0,.3)}
.repo-achievements-emblem img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 9px rgba(229,187,91,.18))}
.repo-achievements-titlecopy{min-width:0}.repo-achievements-titlecopy small{display:block;color:#67a7bf;font:800 9px/1 system-ui,sans-serif;letter-spacing:.22em}.repo-achievements-titlecopy h2{margin:5px 0 4px;color:#f0cf79;font:900 clamp(24px,2.4vw,34px)/1 Georgia,serif;letter-spacing:.07em;text-shadow:0 2px #000}.repo-achievements-titlecopy p{margin:0;color:#9eb0c0;font:600 11px/1.35 system-ui,sans-serif}
.repo-achievements-summary{display:flex;align-items:center;gap:9px}.repo-achievements-ring{--completion:0deg;width:76px;height:76px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,#0a1927 56%,transparent 57%),conic-gradient(#d8ad50 var(--completion),#1b3044 0);box-shadow:inset 0 0 18px #0008,0 0 0 1px #35536b}.repo-achievements-ring strong{color:#f4d786;font:900 18px/1 Georgia,serif}.repo-achievements-ring span{margin-top:3px;color:#7293a9;font:800 7px/1 system-ui,sans-serif;letter-spacing:.13em}.repo-achievements-summary-stat{min-width:112px;padding:9px 10px;border:1px solid #29455b;border-radius:5px;background:linear-gradient(180deg,#0d2132,#081521);box-shadow:inset 0 1px rgba(255,255,255,.03)}.repo-achievements-summary-stat span{display:block;color:#7199af;font:800 7px/1.1 system-ui,sans-serif;letter-spacing:.13em}.repo-achievements-summary-stat strong{display:block;margin-top:4px;color:#f1d488;font:900 17px/1 Georgia,serif}.repo-achievements-summary-stat small{display:block;margin-top:4px;max-width:145px;overflow:hidden;color:#7f91a0;font:700 8px/1.1 system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}
#achievementsDialog .achievement-login{margin:10px 18px 0;padding:9px 12px;border:1px solid #6e4c28;background:#261a10;color:#eccb84;font:700 10px system-ui,sans-serif}
.repo-achievements-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) repeat(3,minmax(135px,170px));gap:8px;padding:11px 16px;border-bottom:1px solid #1f374a;background:#071421}.repo-achievements-search{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #2b4c63;border-radius:5px;background:#0a1a28;color:#72a7bf}.repo-achievements-search span{font-size:20px;line-height:1}.repo-achievements-search input{width:100%;padding:9px 0;border:0!important;outline:0!important;background:transparent!important;color:#e6eef5!important;font:700 11px system-ui,sans-serif!important;box-shadow:none!important}.repo-achievements-toolbar select{min-width:0;padding:9px 28px 9px 10px;border:1px solid #2b4c63;border-radius:5px;background:#0a1a28;color:#b9c9d7;font:800 9px system-ui,sans-serif;letter-spacing:.04em}
.repo-achievements-layout{min-height:0;display:grid;grid-template-columns:205px minmax(0,1fr)}.repo-achievements-sidebar{min-height:0;overflow:auto;padding:12px 9px;border-right:1px solid #20374b;background:linear-gradient(180deg,#081726,#06111d)}.repo-ach-category{width:100%;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;margin:0 0 4px;padding:8px;border:1px solid transparent;border-radius:5px;background:transparent;color:#8fa5b7;text-align:left;cursor:pointer}.repo-ach-category:hover{border-color:#29475c;background:#0b1b2a;color:#d9e6ee}.repo-ach-category.is-active{border-color:#866834;background:linear-gradient(90deg,#132941,#0a1a29);color:#f1d385;box-shadow:inset 3px 0 #d0a548}.repo-ach-category i{display:grid;place-items:center;width:28px;height:28px;border:1px solid #29465c;border-radius:4px;background:#07131f;color:#78b6ca;font:900 13px Georgia,serif;font-style:normal}.repo-ach-category.is-active i{border-color:#94733b;color:#efd17f}.repo-ach-category span{min-width:0;font:800 9px/1.15 system-ui,sans-serif;letter-spacing:.035em}.repo-ach-category small{display:block;margin-top:4px;color:#637b8c;font:700 8px/1 system-ui,sans-serif}.repo-achievements-main{min-height:0;overflow:auto;padding:13px 16px 20px;background:radial-gradient(circle at 50% 0,rgba(25,68,96,.08),transparent 36%)}
.repo-achievements-featured{min-height:78px;display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:13px;padding:11px 13px;border:1px solid #6d572f;border-radius:6px;background:linear-gradient(115deg,rgba(23,49,69,.96),rgba(8,20,31,.98));box-shadow:inset 0 0 28px rgba(210,166,70,.035)}.repo-ach-feature-icon{width:50px;height:50px;display:grid;place-items:center;border:1px solid #6f5b34;border-radius:6px;background:#0b1a27;color:#e2c16d;font:900 22px Georgia,serif}.repo-ach-feature-icon img{width:36px;height:36px;object-fit:contain}.repo-ach-feature-copy{min-width:0}.repo-ach-feature-copy small{color:#6daec3;font:900 7px/1 system-ui,sans-serif;letter-spacing:.17em}.repo-ach-feature-copy strong{display:block;margin-top:3px;color:#efd17d;font:900 14px/1.1 Georgia,serif}.repo-ach-feature-copy span{display:block;margin-top:3px;color:#a8bac6;font:600 9px/1.25 system-ui,sans-serif}.repo-ach-feature-bar{height:4px;margin-top:7px;border-radius:99px;background:#13293a;overflow:hidden}.repo-ach-feature-bar i{display:block;height:100%;background:linear-gradient(90deg,#3b8ea8,#e1b752);box-shadow:0 0 8px #5eacc055}.repo-ach-feature-reward{max-width:190px;text-align:right}.repo-ach-feature-reward small{display:inline-block;padding:3px 6px;border:1px solid #604c2c;color:#caaa64;font:800 7px/1 system-ui,sans-serif;letter-spacing:.12em}.repo-ach-feature-reward b{display:block;margin-top:6px;color:#dce6ec;font:800 9px/1.3 system-ui,sans-serif}
.repo-achievements-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:3px 1px 8px;padding-bottom:7px;border-bottom:1px solid #203a4d}.repo-achievements-section-head small{color:#578ca3;font:800 7px/1 system-ui,sans-serif;letter-spacing:.17em}.repo-achievements-section-head h3{margin:3px 0 0;color:#e6c872;font:900 14px/1 Georgia,serif;letter-spacing:.07em}.repo-achievements-section-head>span{color:#708697;font:700 8px system-ui,sans-serif}.repo-achievements-list{display:grid;gap:7px}.repo-achievement-card{display:grid;grid-template-columns:46px minmax(0,1fr) 48px;gap:11px;align-items:center;padding:9px 10px;border:1px solid #28465c;border-radius:6px;background:linear-gradient(110deg,#0c1d2c,#081520);box-shadow:inset 0 1px rgba(255,255,255,.025);transition:border-color .16s ease,transform .16s ease,background .16s ease}.repo-achievement-card:hover{transform:translateY(-1px);border-color:#47728a;background:linear-gradient(110deg,#10263a,#0a1926)}.repo-achievement-card.is-near{border-color:#67552f;box-shadow:inset 3px 0 #b98b36}.repo-achievement-card.is-complete{border-color:#7b6334;background:linear-gradient(110deg,#112a35,#0b1a24);box-shadow:inset 3px 0 #d3a647,inset 0 0 22px rgba(211,166,71,.04)}.repo-achievement-card.is-secret:not(.is-complete){border-style:dashed;background:linear-gradient(110deg,#0b1722,#070e15)}.repo-achievement-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid #315168;border-radius:5px;background:#07131e;color:#76a9bd;font:900 20px Georgia,serif;overflow:hidden}.repo-achievement-icon img{width:36px;height:36px;object-fit:contain}.repo-achievement-card.is-complete .repo-achievement-icon{border-color:#846a37;box-shadow:0 0 12px rgba(217,176,81,.09)}.repo-achievement-copy{min-width:0}.repo-achievement-topline{display:flex;align-items:center;gap:8px}.repo-achievement-topline strong{min-width:0;overflow:hidden;color:#d9e5ec;font:900 11px/1.1 system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}.repo-achievement-card.is-complete .repo-achievement-topline strong{color:#f1d588}.repo-ach-difficulty{margin-left:auto;padding:3px 5px;border:1px solid #395064;border-radius:3px;color:#8299aa;font:900 6px/1 system-ui,sans-serif;letter-spacing:.1em}.repo-ach-difficulty.is-hard{border-color:#6d5932;color:#c4a259}.repo-ach-difficulty.is-elite{border-color:#315f77;color:#72bad2}.repo-ach-difficulty.is-legendary{border-color:#8b6a2e;color:#f0c967;box-shadow:0 0 8px rgba(219,170,62,.08)}.repo-achievement-copy p{margin:4px 0;color:#91a5b4;font:600 9px/1.25 system-ui,sans-serif}.repo-achievement-progress{display:grid;grid-template-columns:minmax(80px,180px) auto;align-items:center;gap:8px;margin-top:5px}.repo-achievement-progress>div{height:4px;border-radius:99px;background:#142a3a;overflow:hidden}.repo-achievement-progress i{display:block;height:100%;background:linear-gradient(90deg,#3d8ca8,#d5aa4e)}.repo-achievement-progress span{color:#718899;font:800 7px/1 system-ui,sans-serif;white-space:nowrap}.repo-achievement-reward{display:block;margin-top:5px;color:#b7a36e;font:700 7px/1.2 system-ui,sans-serif}.repo-achievement-points{text-align:center}.repo-achievement-points b{display:block;color:#e3c36d;font:900 15px/1 Georgia,serif}.repo-achievement-points span{display:block;margin-top:3px;color:#688294;font:900 6px/1 system-ui,sans-serif;letter-spacing:.12em}.repo-achievement-card.is-complete .repo-achievement-points b{color:#77c6a2;font-size:19px}.repo-achievements-empty{padding:36px;text-align:center;color:#73899a;font:800 10px system-ui,sans-serif}.repo-achievements-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 15px;border-top:1px solid #1f394d;background:#07131e}.repo-achievements-footer span{color:#718797;font:700 8px system-ui,sans-serif}.repo-achievements-footer button{padding:7px 10px;border:1px solid #745d31;border-radius:4px;background:#102338;color:#e6c675;font:900 8px system-ui,sans-serif;letter-spacing:.08em;cursor:pointer}.repo-achievements-footer button:hover{filter:brightness(1.15)}
.repo-achievement-unlock-v22{position:fixed;left:50%;top:72px;z-index:2147483647;display:flex;align-items:center;gap:12px;min-width:350px;max-width:min(520px,90vw);padding:12px 15px;border:1px solid #c49a42;border-radius:7px;background:linear-gradient(110deg,rgba(12,31,48,.98),rgba(5,14,23,.99));box-shadow:0 18px 50px #000b,inset 0 0 0 1px rgba(238,199,104,.13);opacity:0;transform:translate(-50%,-18px) scale(.97);pointer-events:none}.repo-achievement-unlock-v22.is-showing{animation:repoAchievementUnlockV22 3s ease forwards}.repo-achievement-unlock-crest{width:46px;height:46px;display:grid;place-items:center;border:1px solid #b58c3a;border-radius:50%;background:radial-gradient(circle,#21495a,#081722 72%);color:#f1d27d;font:900 20px Georgia,serif;box-shadow:0 0 20px rgba(225,184,80,.15)}.repo-achievement-unlock-v22 small{display:block;color:#65b4c8;font:900 7px system-ui,sans-serif;letter-spacing:.19em}.repo-achievement-unlock-v22 strong{display:block;margin-top:4px;color:#f3d47e;font:900 15px Georgia,serif}.repo-achievement-unlock-v22 span{display:block;margin-top:4px;color:#9eb0bc;font:700 8px system-ui,sans-serif}@keyframes repoAchievementUnlockV22{0%{opacity:0;transform:translate(-50%,-18px) scale(.97)}12%,78%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-8px) scale(.99)}}
.passport-achievement-summary-v22{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:7px;margin:10px 0;padding:9px;border:1px solid #4a6380;border-radius:6px;background:linear-gradient(110deg,rgba(10,28,46,.96),rgba(6,16,27,.98));box-shadow:inset 0 0 22px rgba(66,145,183,.05)}.passport-achievement-summary-v22>div{min-width:0;padding:5px 7px;border-right:1px solid #263f53}.passport-achievement-summary-v22 small{display:block;color:#6fa1b6;font:800 6px/1 system-ui,sans-serif;letter-spacing:.12em}.passport-achievement-summary-v22 strong{display:block;margin-top:4px;overflow:hidden;color:#e4c66f;font:900 10px/1.1 Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.passport-achievement-summary-v22 button{padding:7px 8px;border:1px solid #775f32;border-radius:4px;background:#10263a;color:#e7c977;font:900 7px system-ui,sans-serif;letter-spacing:.07em;cursor:pointer}.passport-ach-rarest{max-width:150px}
@media(max-width:880px){#achievementsDialog.repo-achievements-v22{height:92vh!important}.repo-achievements-header{grid-template-columns:auto 1fr;padding-right:58px}.repo-achievements-summary{grid-column:1 / -1}.repo-achievements-toolbar{grid-template-columns:1fr 1fr}.repo-achievements-layout{grid-template-columns:160px minmax(0,1fr)}.repo-achievements-featured{grid-template-columns:46px 1fr}.repo-ach-feature-reward{grid-column:2;text-align:left}.passport-achievement-summary-v22{grid-template-columns:1fr 1fr}.passport-achievement-summary-v22 button{grid-column:1/-1}}
@media(max-width:620px){.repo-achievements-layout{grid-template-columns:1fr}.repo-achievements-sidebar{display:flex;overflow:auto;border-right:0;border-bottom:1px solid #20374b}.repo-ach-category{min-width:145px}.repo-achievements-toolbar{grid-template-columns:1fr}.repo-achievements-summary{flex-wrap:wrap}.repo-achievement-card{grid-template-columns:38px 1fr}.repo-achievement-points{grid-column:2;display:flex;gap:5px;align-items:center;justify-content:flex-end}.repo-achievement-points b{font-size:11px}.repo-achievement-points span{margin:0}.repo-achievements-footer{align-items:flex-start;flex-direction:column}}
#repoCharacterPassportHover .repo-hover-passport-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#repoCharacterPassportHover .repo-hover-achievement-line{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:7px;margin:8px 0;padding:7px 8px;border:1px solid #314a61;border-radius:4px;background:#091826}
#repoCharacterPassportHover .repo-hover-achievement-line span{color:#6d99ad;font:900 6px system-ui,sans-serif;letter-spacing:.12em}
#repoCharacterPassportHover .repo-hover-achievement-line b{color:#e1c471;font:900 9px Georgia,serif;white-space:nowrap}
#repoCharacterPassportHover .repo-hover-achievement-line em{min-width:0;overflow:hidden;color:#7f929f;font:700 7px system-ui,sans-serif;font-style:normal;text-overflow:ellipsis;white-space:nowrap;text-align:right}

/* ========================================================================
   REPO COMPANY V22.01 — ACHIEVEMENT LOG LAYOUT ISOLATION HOTFIX
   Prevent legacy global header/main/footer/dialog-button rules leaking in.
   ======================================================================== */
#achievementsDialog.repo-achievements-v22{
  width:min(1280px,calc(100vw - 42px))!important;
  height:min(90vh,920px)!important;
  margin:auto!important;
}
#achievementsDialog .repo-achievements-shell{
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  max-width:none!important;
}
#achievementsDialog .repo-achievements-header{
  display:grid!important;
  grid-template-columns:62px minmax(320px,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:16px 62px 15px 20px!important;
  border:0!important;
  border-bottom:1px solid rgba(190,146,61,.44)!important;
  background:radial-gradient(circle at 18% 0,rgba(49,110,149,.16),transparent 32%),linear-gradient(180deg,#10243a,#091827)!important;
}
#achievementsDialog .repo-achievements-toolbar{
  display:grid!important;
  grid-template-columns:minmax(300px,1fr) repeat(3,minmax(145px,180px))!important;
  gap:9px!important;
  width:100%!important;
  margin:0!important;
  padding:10px 16px!important;
}
#achievementsDialog .repo-achievements-search{
  min-width:0!important;
  margin:0!important;
}
#achievementsDialog .repo-achievements-toolbar select{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:9px 30px 9px 11px!important;
  appearance:auto!important;
  color-scheme:dark!important;
  border:1px solid #2b4c63!important;
  border-radius:5px!important;
  background:#0a1a28!important;
  color:#c7d5df!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
  font:800 9px system-ui,sans-serif!important;
}
#achievementsDialog .repo-achievements-layout{
  min-height:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:190px minmax(0,1fr)!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
  max-width:none!important;
}
#achievementsDialog .repo-achievements-sidebar{
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:10px 8px 14px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
#achievementsDialog .repo-ach-category,
#achievementsDialog .game-dialog .repo-ach-category{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:29px minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 5px!important;
  padding:8px 9px!important;
  border:1px solid transparent!important;
  border-radius:5px!important;
  background:transparent!important;
  color:#8fa5b7!important;
  box-shadow:none!important;
  text-align:left!important;
}
#achievementsDialog .repo-ach-category:hover{
  border-color:#29475c!important;
  background:#0b1b2a!important;
  color:#d9e6ee!important;
}
#achievementsDialog .repo-ach-category.is-active{
  border-color:#866834!important;
  background:linear-gradient(90deg,#132941,#0a1a29)!important;
  color:#f1d385!important;
  box-shadow:inset 3px 0 #d0a548!important;
}
#achievementsDialog .repo-achievements-main{
  display:block!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  gap:0!important;
  min-width:0!important;
  min-height:0!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:13px 16px 20px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:radial-gradient(circle at 50% 0,rgba(25,68,96,.08),transparent 36%)!important;
}
#achievementsDialog .repo-achievements-featured{
  width:100%!important;
  min-width:0!important;
  min-height:74px!important;
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) minmax(150px,200px)!important;
  align-items:center!important;
  gap:12px!important;
  margin:0 0 12px!important;
  padding:10px 12px!important;
  position:relative!important;
  inset:auto!important;
}
#achievementsDialog .repo-ach-feature-copy,
#achievementsDialog .repo-ach-feature-reward{
  min-width:0!important;
}
#achievementsDialog .repo-ach-feature-copy span,
#achievementsDialog .repo-ach-feature-reward b{
  overflow-wrap:anywhere!important;
}
#achievementsDialog .repo-achievements-section-head{
  width:100%!important;
  margin:0 0 8px!important;
  padding:0 1px 7px!important;
}
#achievementsDialog .repo-achievements-list{
  width:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
}
#achievementsDialog .repo-achievement-card{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 54px!important;
  gap:11px!important;
  margin:0!important;
  padding:10px 11px!important;
  position:relative!important;
  inset:auto!important;
}
#achievementsDialog .repo-achievement-copy,
#achievementsDialog .repo-achievement-topline,
#achievementsDialog .repo-achievement-progress{
  min-width:0!important;
}
#achievementsDialog .repo-achievement-copy p{
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
}
#achievementsDialog .repo-achievement-progress{
  grid-template-columns:minmax(120px,260px) auto!important;
}
#achievementsDialog .repo-achievements-footer{
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin:0!important;
  padding:9px 14px!important;
  border:0!important;
  border-top:1px solid #1f394d!important;
  background:#07131e!important;
  color:inherit!important;
}
#achievementsDialog .repo-achievements-footer button{
  width:auto!important;
  min-width:165px!important;
  margin:0!important;
  padding:8px 12px!important;
  border:1px solid #745d31!important;
  border-radius:4px!important;
  background:#102338!important;
  color:#e6c675!important;
  box-shadow:none!important;
  font:900 8px system-ui,sans-serif!important;
  letter-spacing:.08em!important;
}
#achievementsDialog .repo-achievements-close{
  width:36px!important;
  min-width:36px!important;
  margin:0!important;
  padding:0!important;
}
@media(max-width:1040px){
  #achievementsDialog.repo-achievements-v22{width:calc(100vw - 24px)!important;height:92vh!important}
  #achievementsDialog .repo-achievements-header{grid-template-columns:54px minmax(260px,1fr)!important;padding-right:58px!important}
  #achievementsDialog .repo-achievements-summary{grid-column:1/-1!important;justify-content:flex-start!important}
  #achievementsDialog .repo-achievements-toolbar{grid-template-columns:minmax(260px,1fr) repeat(3,minmax(120px,1fr))!important}
  #achievementsDialog .repo-achievements-layout{grid-template-columns:168px minmax(0,1fr)!important}
}
@media(max-width:760px){
  #achievementsDialog .repo-achievements-toolbar{grid-template-columns:1fr 1fr!important}
  #achievementsDialog .repo-achievements-search{grid-column:1/-1!important}
  #achievementsDialog .repo-achievements-layout{grid-template-columns:1fr!important}
  #achievementsDialog .repo-achievements-sidebar{display:flex!important;gap:6px!important;overflow-x:auto!important;overflow-y:hidden!important;border-right:0!important;border-bottom:1px solid #20374b!important}
  #achievementsDialog .repo-ach-category{min-width:145px!important;margin:0!important}
  #achievementsDialog .repo-achievements-featured{grid-template-columns:44px minmax(0,1fr)!important}
  #achievementsDialog .repo-ach-feature-reward{grid-column:2!important;text-align:left!important}
}

/* ========================================================================
   REPO COMPANY V22.02 — TCG duplicates / RCG crack & favourite polish
   ======================================================================== */

/* Achievement progression remains in the Achievement Log only, never Repo Passport. */
#passportAchievementSummaryV22,
.passport-achievement-summary-v22,
.repo-hover-achievement-line{display:none!important}

/* RCG submission copy metadata. */
.repo-rcg-submit-card-v2081{position:relative!important}
.repo-rcg-copy-badge-v2202{
  position:absolute!important;
  right:3px!important;
  bottom:3px!important;
  z-index:6!important;
  min-width:23px!important;
  padding:3px 5px!important;
  border:1px solid rgba(225,184,83,.82)!important;
  border-radius:4px!important;
  background:linear-gradient(180deg,rgba(13,34,49,.96),rgba(5,18,29,.98))!important;
  color:#ffe5a0!important;
  font:900 7px/1 Arial,sans-serif!important;
  letter-spacing:.07em!important;
  text-align:center!important;
  box-shadow:0 2px 5px rgba(0,0,0,.42),inset 0 0 0 1px rgba(87,207,218,.12)!important;
  pointer-events:none!important;
}
.repo-rcg-submit-card-v2081.is-cracked-v2202{
  box-shadow:inset 0 0 0 1px rgba(222,177,71,.58),0 0 10px rgba(222,177,71,.14)!important;
}
.repo-rcg-submit-card-v2081.is-cracked-v2202 .repo-rcg-copy-badge-v2202{
  color:#f4ca6a!important;
  border-color:#c99b3c!important;
}
.repo-rcg-submit-empty-v2081 small{display:block;margin-top:5px;color:#9eb5c5;font-size:7px;letter-spacing:.08em}

/* Crack control sits directly underneath Customize Binder without moving sidebar layout. */
#repoRcgBinderDialog .repo-rcg-crack-btn-v2202{
  margin-top:8px!important;
  min-height:43px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  border-color:rgba(190,144,51,.70)!important;
  background:linear-gradient(180deg,rgba(24,46,65,.96),rgba(7,21,33,.98))!important;
  box-shadow:inset 0 0 0 1px rgba(80,202,211,.08),0 3px 8px rgba(0,0,0,.30)!important;
  color:#f0d391!important;
}
#repoRcgBinderDialog .repo-rcg-crack-btn-v2202 b{
  color:#f3d690!important;
  font:900 8px/1 Arial,sans-serif!important;
  letter-spacing:.10em!important;
}
#repoRcgBinderDialog .repo-rcg-crack-btn-v2202 small{
  color:#86a9bb!important;
  font:800 6px/1 Arial,sans-serif!important;
  letter-spacing:.08em!important;
}
#repoRcgBinderDialog .repo-rcg-crack-btn-v2202:not(:disabled):hover{
  filter:brightness(1.12)!important;
  box-shadow:inset 0 0 0 1px rgba(104,223,224,.18),0 0 14px rgba(208,166,66,.16),0 4px 9px rgba(0,0,0,.35)!important;
}
#repoRcgBinderDialog .repo-rcg-crack-btn-v2202:disabled{opacity:.50!important;cursor:default!important}

/* Selected crack target: elegant highlight only. */
#repoRcgBinderDialog .repo-rcg-v2118-slab.is-crack-selected-v2202{
  filter:brightness(1.055) saturate(1.035)!important;
  box-shadow:0 12px 22px rgba(0,0,0,.28),0 0 0 2px rgba(229,183,75,.88),0 0 19px rgba(229,183,75,.24),inset 0 0 0 1px rgba(255,255,255,.48)!important;
}
#repoRcgBinderDialog .repo-rcg-v2118-slab.is-crack-locked-v2202{
  box-shadow:0 10px 18px rgba(0,0,0,.25),0 0 0 1px rgba(139,152,164,.30),inset 0 0 0 1px rgba(255,255,255,.42)!important;
}
.repo-rcg-crack-count-v2202{
  position:absolute!important;
  z-index:24!important;
  left:5px!important;
  bottom:5px!important;
  padding:3px 5px!important;
  border-radius:3px!important;
  border:1px solid rgba(196,151,60,.55)!important;
  background:rgba(7,22,34,.88)!important;
  color:#e1bd67!important;
  font:900 5.5px/1 Arial,sans-serif!important;
  letter-spacing:.06em!important;
  box-shadow:0 2px 5px rgba(0,0,0,.38)!important;
  pointer-events:none!important;
}
.repo-rcg-v2118-slab.is-crack-locked-v2202 .repo-rcg-crack-count-v2202{color:#c7d0d7!important;border-color:rgba(163,178,190,.55)!important}

/* Favourite graded slab star. Appears on hover; active favourite remains visible. */
.repo-rcg-favourite-slab-v2202{
  position:absolute!important;
  z-index:28!important;
  right:5px!important;
  bottom:5px!important;
  width:23px!important;
  height:23px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:1px solid rgba(198,154,54,.74)!important;
  border-radius:50%!important;
  background:radial-gradient(circle at 35% 28%,#fff3ab,#b87a14 53%,#342000 100%)!important;
  color:#fff0a0!important;
  font:900 14px/1 Georgia,serif!important;
  text-shadow:0 1px 2px #000!important;
  box-shadow:0 2px 6px rgba(0,0,0,.48),inset 0 0 0 1px rgba(41,24,4,.48)!important;
  opacity:0!important;
  transform:scale(.86)!important;
  transition:opacity .14s ease,transform .14s ease,filter .14s ease!important;
  cursor:pointer!important;
}
.repo-rcg-v2118-slab:hover>.repo-rcg-favourite-slab-v2202,
.repo-rcg-favourite-slab-v2202.is-active,
.repo-rcg-favourite-slab-v2202:focus-visible{opacity:1!important;transform:scale(1)!important}
.repo-rcg-favourite-slab-v2202:hover{filter:brightness(1.18) drop-shadow(0 0 5px rgba(255,214,84,.38))!important}
.repo-rcg-favourite-slab-v2202.is-active{animation:repoRcgFavouriteSlabPulseV2202 2.5s ease-in-out infinite!important}
@keyframes repoRcgFavouriteSlabPulseV2202{50%{filter:brightness(1.2) drop-shadow(0 0 6px rgba(255,211,76,.5));transform:scale(1.07)}}
#repoRcgSlabHoverPreviewV2138 .repo-rcg-favourite-slab-v2202,
.repo-rcg-v2118-slab.is-mini .repo-rcg-favourite-slab-v2202{display:none!important}

/* Profiles: favourite slab is still the favourite card, but make the RCG grade obvious. */
.qm-watcher-profile-favourite.is-rcg-slab{border-color:rgba(92,190,201,.72)!important;background:radial-gradient(circle at 14% 26%,rgba(51,176,190,.20),transparent 36%),linear-gradient(145deg,rgba(17,31,41,.96),rgba(6,12,18,.98))!important}
.qm-watcher-profile-favourite-art{position:relative!important}
.qm-watcher-profile-favourite-art>em{
  position:absolute!important;
  right:2px!important;
  top:2px!important;
  z-index:3!important;
  padding:2px 4px!important;
  border:1px solid rgba(213,174,76,.70)!important;
  border-radius:3px!important;
  background:rgba(8,25,37,.92)!important;
  color:#f1d184!important;
  font:900 6px/1 Arial,sans-serif!important;
  font-style:normal!important;
  letter-spacing:.05em!important;
}

@media(prefers-reduced-motion:reduce){.repo-rcg-favourite-slab-v2202.is-active{animation:none!important}}

/* V22.02 Passport achievement removal: restore three-stat hover grid. */
#repoCharacterPassportHover .repo-hover-passport-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* ======================================================================
   REPO COMPANY V22.04 — FOIL & FABLE / GREGG'S CRACKING COUNTER
   ====================================================================== */

/* Binder-cover menu: the supplied Foil & Fable banner sits directly below
   the RCG shop banner as a proper third grid row. */
#quidditchTcgBinderDialog .repo-dual-binder-foil-cta-v2204{display:none!important}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shelf-v2041{
  grid-template-rows:auto auto auto!important;
  row-gap:clamp(5px,1vh,10px)!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{height:min(53dvh,570px)!important}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066{width:284px!important;max-width:min(62vw,284px)!important}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204{
  grid-column:1 / 3!important;
  grid-row:3!important;
  display:block!important;
  width:322px!important;
  max-width:min(68vw,322px)!important;
  margin:-2px auto 0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  appearance:none!important;
  background:transparent!important;
  box-shadow:none!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204 img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  object-fit:contain!important;
  filter:drop-shadow(0 9px 15px rgba(0,0,0,.72))!important;
  transition:transform .2s ease,filter .2s ease!important;
}
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204:hover img,
#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204:focus-visible img{
  transform:translateY(-3px) scale(1.025)!important;
  filter:brightness(1.12) drop-shadow(0 12px 18px rgba(0,0,0,.78)) drop-shadow(0 0 10px rgba(48,211,224,.16))!important;
}

body.repo-foil-shop-open-v2204{overflow:hidden!important}
.repo-foil-shop-dialog-v2204{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#081018!important;
  color:#f4e1b0!important;
  overflow:hidden!important;
  z-index:2147483200!important;
}
.repo-foil-shop-dialog-v2204::backdrop{background:#020609!important}
.repo-foil-stage-v2204,.repo-foil-scene-v2204{position:absolute;inset:0;overflow:hidden}
.repo-foil-scene-v2204{display:none;background:#071018;opacity:0;transition:opacity .3s ease}
.repo-foil-scene-v2204.is-active{display:block;opacity:1}
.repo-foil-scene-frame-v2204{
  position:absolute;
  left:50%;
  top:50%;
  width:max(100vw,150dvh);
  aspect-ratio:3/2;
  transform:translate(-50%,-50%);
  overflow:hidden;
}
.repo-foil-bg-v2204{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;user-select:none;-webkit-user-drag:none}
.repo-foil-back-v2204,.repo-foil-close-v2204{
  position:fixed;
  z-index:50;
  top:max(14px,env(safe-area-inset-top));
  min-height:42px;
  border:1px solid rgba(220,174,72,.78);
  color:#f7d982;
  background:linear-gradient(#162e42,#07131f);
  box-shadow:0 7px 22px rgba(0,0,0,.55),inset 0 0 0 1px rgba(56,190,198,.15);
  font:900 12px/1.1 Georgia,serif;
  letter-spacing:.11em;
  cursor:pointer;
}
.repo-foil-back-v2204{left:max(16px,env(safe-area-inset-left));padding:0 17px;border-radius:4px}
.repo-foil-close-v2204{right:max(16px,env(safe-area-inset-right));width:43px;border-radius:50%;font:700 27px/1 system-ui,sans-serif}
.repo-foil-back-v2204:hover,.repo-foil-close-v2204:hover{filter:brightness(1.25);transform:translateY(-1px)}
.repo-foil-door-hotspot-v2204,.repo-foil-gregg-hotspot-v2204{
  position:absolute;
  z-index:10;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.repo-foil-door-hotspot-v2204{left:40.2%;top:44%;width:19.3%;height:42%}
.repo-foil-door-hotspot-v2204::after,.repo-foil-gregg-hotspot-v2204::after{
  content:'';
  position:absolute;
  inset:4%;
  border:1px solid transparent;
  border-radius:18px;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.repo-foil-door-hotspot-v2204:hover::after,.repo-foil-door-hotspot-v2204:focus-visible::after{
  border-color:rgba(255,219,113,.55);
  background:radial-gradient(circle,rgba(255,222,118,.10),transparent 68%);
  box-shadow:0 0 34px rgba(255,197,64,.24),inset 0 0 34px rgba(255,197,64,.11);
}
.repo-foil-door-hotspot-v2204 span,.repo-foil-gregg-hotspot-v2204 span{
  position:absolute;
  left:50%;
  bottom:3%;
  translate:-50% 8px;
  min-width:max-content;
  padding:9px 13px;
  border:1px solid rgba(221,176,73,.75);
  border-radius:4px;
  color:#ffe49b;
  background:rgba(4,17,28,.93);
  box-shadow:0 7px 20px rgba(0,0,0,.62);
  font:900 11px/1.15 Georgia,serif;
  letter-spacing:.1em;
  opacity:0;
  transition:opacity .2s ease,translate .2s ease;
}
.repo-foil-door-hotspot-v2204:hover span,.repo-foil-door-hotspot-v2204:focus-visible span,
.repo-foil-gregg-hotspot-v2204:hover span,.repo-foil-gregg-hotspot-v2204:focus-visible span{opacity:1;translate:-50% 0}
.repo-foil-gregg-hotspot-v2204{left:36%;top:25%;width:28%;height:39%}
.repo-foil-gregg-hotspot-v2204 span{bottom:5%;display:grid;gap:3px;text-align:center}
.repo-foil-gregg-hotspot-v2204 span small{color:#67d9dc;font:800 8px/1.1 system-ui,sans-serif;letter-spacing:.09em}
.repo-foil-gregg-hotspot-v2204:hover::after,.repo-foil-gregg-hotspot-v2204:focus-visible::after{
  border-color:rgba(248,201,96,.5);
  background:radial-gradient(circle at 50% 44%,rgba(255,211,99,.1),transparent 66%);
  box-shadow:0 0 32px rgba(255,198,68,.2);
}
.repo-foil-shop-dialog-v2204.is-entering-v2204 .repo-foil-scene-v2204.is-active{animation:repoFoilEnterV2204 .38s ease both}
@keyframes repoFoilEnterV2204{to{filter:brightness(.28) blur(3px);transform:scale(1.04)}}

/* Exterior leaves and warm daylight; interior only gets calm sun shafts. */
.repo-foil-exterior-atmo-v2204,.repo-foil-interior-atmo-v2204,.repo-foil-leaf-layer-v2204{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.repo-foil-exterior-atmo-v2204 .sun-a,.repo-foil-exterior-atmo-v2204 .sun-b{
  position:absolute;left:-12vw;top:-35vh;width:78vw;height:100vh;transform:rotate(-20deg);
  background:linear-gradient(90deg,transparent,rgba(255,244,184,.12),transparent);filter:blur(18px);animation:repoFoilSunV2204 8s ease-in-out infinite alternate;
}
.repo-foil-exterior-atmo-v2204 .sun-b{left:34vw;top:-58vh;width:54vw;opacity:.48;animation-delay:-3s}
.repo-foil-exterior-atmo-v2204 .warm-pool{position:absolute;left:5%;top:-22%;width:60%;height:74%;background:radial-gradient(ellipse,rgba(255,232,148,.15),transparent 66%);animation:repoFoilWarmV2204 7s ease-in-out infinite}
.repo-foil-leaf-layer-v2204 i{position:absolute;left:0;top:0;border-radius:85% 8% 78% 12%;background:linear-gradient(135deg,#d8ad3f,#6f7b24 54%,#263f1b);box-shadow:0 1px 2px rgba(0,0,0,.36);will-change:transform,opacity}
.repo-foil-mote-v2204{position:absolute;width:var(--s);height:var(--s);border-radius:50%;background:#fff0ae;box-shadow:0 0 7px rgba(255,222,112,.72);opacity:.35;animation:repoFoilMoteV2204 var(--d) ease-in-out var(--delay) infinite alternate}
.repo-foil-interior-atmo-v2204 .ray{position:absolute;top:-38%;width:12%;height:120%;background:linear-gradient(90deg,transparent,rgba(255,219,136,.12),transparent);filter:blur(12px);transform:rotate(-12deg);animation:repoFoilRayV2204 7s ease-in-out infinite alternate}
.repo-foil-interior-atmo-v2204 .ray-a{left:18%}.repo-foil-interior-atmo-v2204 .ray-b{left:49%;opacity:.65;animation-delay:-2s}.repo-foil-interior-atmo-v2204 .ray-c{left:78%;opacity:.48;animation-delay:-4s}
.repo-foil-interior-atmo-v2204 .pool{position:absolute;width:34%;height:35%;top:8%;background:radial-gradient(ellipse,rgba(255,209,111,.12),transparent 69%);animation:repoFoilWarmV2204 6s ease-in-out infinite}
.repo-foil-interior-atmo-v2204 .pool-a{left:5%}.repo-foil-interior-atmo-v2204 .pool-b{right:1%;animation-delay:-2.4s}
.repo-foil-interior-atmo-v2204 .glint{position:absolute;left:49.5%;top:18%;width:2px;height:2px;border-radius:50%;background:#fff3bd;box-shadow:0 0 8px 3px rgba(255,229,158,.68);animation:repoFoilGlintV2204 3.6s ease-in-out infinite}
@keyframes repoFoilMoteV2204{to{translate:var(--dx) var(--dy);opacity:.72;scale:.45}}
@keyframes repoFoilSunV2204{to{opacity:.52;translate:4vw 2vh}}
@keyframes repoFoilRayV2204{to{opacity:.45;translate:3vw 1vh}}
@keyframes repoFoilWarmV2204{50%{opacity:.55;scale:1.08}}
@keyframes repoFoilGlintV2204{50%{opacity:.25;scale:2.6}}

/* Gregg's professional counter. */
.repo-foil-crack-overlay-v2204{position:absolute;inset:0;z-index:70;display:none;place-items:center;padding:clamp(12px,2vw,28px);background:rgba(2,7,12,.82);backdrop-filter:blur(9px);box-sizing:border-box}
.repo-foil-crack-overlay-v2204.is-open{display:grid;animation:repoFoilOverlayInV2204 .24s ease both}
.repo-foil-counter-shell-v2204{
  width:min(1180px,96vw);height:min(820px,94dvh);display:grid;grid-template-rows:auto auto 1fr auto;overflow:hidden;
  border:2px solid #b9812d;border-radius:9px;background:linear-gradient(145deg,#142b3b 0,#07141f 58%,#050b10 100%);
  box-shadow:0 34px 100px #000,inset 0 0 0 2px rgba(28,191,199,.13),inset 0 0 70px rgba(0,0,0,.36);color:#e9d39a;
}
.repo-foil-counter-head-v2204{position:relative;display:grid;grid-template-columns:64px 1fr 44px;gap:15px;align-items:center;padding:16px 19px;border-bottom:1px solid rgba(207,157,57,.48);background:linear-gradient(90deg,rgba(14,44,60,.96),rgba(6,19,29,.96));box-shadow:0 8px 22px rgba(0,0,0,.25)}
.repo-foil-counter-head-v2204 h2{margin:3px 0 2px;color:#f0c86b;font:900 clamp(20px,2.4vw,33px)/1 Georgia,serif;letter-spacing:.045em;text-shadow:0 2px 2px #000}
.repo-foil-counter-head-v2204 p,.repo-foil-counter-head-v2204 small{margin:0;color:#9eb5ba;font:700 9px/1.3 system-ui,sans-serif;letter-spacing:.095em}
.repo-foil-counter-head-v2204>button{width:42px;height:42px;border:1px solid rgba(214,168,66,.6);border-radius:50%;background:#07131d;color:#e7ca84;font:500 25px/1 system-ui,sans-serif;cursor:pointer}
.repo-foil-gregg-seal-v2204{position:relative;width:56px;height:56px;display:grid;place-items:center;border:2px solid #d0a041;border-radius:50%;background:radial-gradient(circle,#195065,#081b28 68%);box-shadow:0 0 0 3px #07141e,0 0 0 4px rgba(209,161,61,.55),0 0 18px rgba(35,195,202,.18)}
.repo-foil-gregg-seal-v2204 b{font:900 30px/1 Georgia,serif;color:#edc568}.repo-foil-gregg-seal-v2204 i{position:absolute;inset:7px;border:1px dotted rgba(232,195,104,.55);border-radius:50%;animation:repoFoilSealV2204 14s linear infinite}
.repo-foil-counter-bar-v2204{display:grid;grid-template-columns:160px 150px minmax(220px,1fr);gap:12px;padding:10px 18px;border-bottom:1px solid rgba(95,136,145,.28);background:rgba(4,13,20,.64)}
.repo-foil-counter-bar-v2204>span,.repo-foil-counter-bar-v2204>label{display:grid;gap:3px;align-content:center;min-width:0}.repo-foil-counter-bar-v2204 small{color:#6d8c94;font:800 8px/1 system-ui,sans-serif;letter-spacing:.12em}.repo-foil-counter-bar-v2204 b{color:#f1d080;font:900 15px/1 Georgia,serif}
.repo-foil-counter-bar-v2204 input{width:100%;height:34px;box-sizing:border-box;border:1px solid rgba(198,153,55,.42);border-radius:4px;padding:0 11px;background:#030b11;color:#e7ddbf;outline:none;font:700 11px/1 system-ui,sans-serif}.repo-foil-counter-bar-v2204 input:focus{border-color:#44bdc3;box-shadow:0 0 0 2px rgba(49,183,191,.12)}
.repo-foil-counter-main-v2204{min-height:0;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;padding:14px 18px;background:radial-gradient(circle at 24% 10%,rgba(28,105,117,.12),transparent 34%)}
.repo-foil-slab-library-v2204,.repo-foil-selected-v2204{min-height:0;border:1px solid rgba(190,143,48,.32);border-radius:6px;background:rgba(2,9,14,.6);overflow:hidden}
.repo-foil-slab-library-v2204{display:grid;grid-template-rows:auto 1fr}.repo-foil-slab-library-v2204>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid rgba(103,139,145,.25);background:rgba(11,31,42,.84)}
.repo-foil-slab-library-v2204>header div{display:grid;gap:3px}.repo-foil-slab-library-v2204>header b{color:#dec073;font:900 11px/1 Georgia,serif;letter-spacing:.08em}.repo-foil-slab-library-v2204>header small,.repo-foil-slab-library-v2204>header>span{color:#64858e;font:800 7px/1 system-ui,sans-serif;letter-spacing:.1em}
.repo-foil-slab-grid-v2204{min-height:0;display:grid;grid-template-columns:repeat(4,minmax(104px,1fr));align-content:start;gap:11px;padding:13px;overflow:auto;scrollbar-color:#926d2f #061018}
.repo-foil-slab-entry-v2204{min-width:0;display:grid;gap:6px;justify-items:center;padding:9px 7px 7px;border:1px solid rgba(112,146,151,.3);border-radius:5px;background:linear-gradient(155deg,rgba(20,44,57,.91),rgba(4,12,18,.96));color:#d7caab;cursor:pointer;transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease}
.repo-foil-slab-entry-v2204:not(:disabled):hover{transform:translateY(-3px);border-color:#c2943e;box-shadow:0 8px 20px rgba(0,0,0,.36),0 0 14px rgba(44,190,197,.1)}.repo-foil-slab-entry-v2204.is-selected{border-color:#54d0d3;box-shadow:0 0 0 2px rgba(48,191,196,.18),0 10px 25px rgba(0,0,0,.38)}.repo-foil-slab-entry-v2204.is-disabled{filter:saturate(.35);opacity:.46;cursor:not-allowed}
.repo-foil-slab-entry-meta-v2204{width:100%;display:grid;gap:3px;text-align:left}.repo-foil-slab-entry-meta-v2204 b{overflow:hidden;color:#e2cf9c;font:800 8px/1.15 system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}.repo-foil-slab-entry-meta-v2204 small{color:#6e9299;font:700 6px/1.1 system-ui,sans-serif;letter-spacing:.04em}
.repo-foil-slab-v2204{position:relative;width:min(88px,100%);aspect-ratio:1032/1523;filter:drop-shadow(0 5px 5px rgba(0,0,0,.48))}.repo-foil-slab-v2204.is-large{width:min(190px,47%)!important}
.repo-foil-slab-art-v2204{position:absolute;z-index:1;left:14.5%;top:20.7%;width:71%;height:62.5%;display:grid;place-items:center;overflow:hidden;background:#102532;color:#d0ac59;font:900 17px/1 Georgia,serif}.repo-foil-slab-art-v2204 img{width:100%;height:100%;object-fit:cover;display:block}
.repo-foil-slab-case-v2204{position:absolute;z-index:3;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.repo-foil-slab-label-v2204{position:absolute;z-index:2;left:15%;top:5.4%;width:70%;height:12.5%;display:grid;grid-template-columns:1fr auto;align-content:center;gap:1px 4px;overflow:hidden;color:#07131b;text-align:left}.repo-foil-slab-label-v2204 b{grid-row:1 / 3;grid-column:2;font:900 clamp(7px,1vw,14px)/1 Georgia,serif}.repo-foil-slab-label-v2204 span{overflow:hidden;font:900 clamp(4px,.5vw,8px)/1 system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}.repo-foil-slab-label-v2204 small{font:700 clamp(3px,.4vw,6px)/1 system-ui,sans-serif;white-space:nowrap}
.repo-foil-grid-message-v2204{grid-column:1/-1;align-self:center;display:grid;gap:8px;padding:44px 15px;color:#a98f58;text-align:center}.repo-foil-grid-message-v2204 b{font:900 14px/1 Georgia,serif;letter-spacing:.08em}.repo-foil-grid-message-v2204 small{color:#708b91;font:700 9px/1.4 system-ui,sans-serif}
.repo-foil-selected-v2204{position:relative;display:flex;flex-direction:column;overflow:auto;padding:15px}.repo-foil-gregg-intro-v2204{margin:auto;max-width:330px;text-align:center}.repo-foil-gregg-intro-v2204>span{width:70px;height:70px;margin:0 auto 14px;display:grid;place-items:center;border:2px solid #c6953e;border-radius:50%;background:radial-gradient(circle,#17465a,#06131e 70%);color:#e6bf65;font:900 39px/1 Georgia,serif;box-shadow:0 0 28px rgba(49,185,192,.14)}.repo-foil-gregg-intro-v2204>small{color:#699098;font:800 8px/1 system-ui,sans-serif;letter-spacing:.13em}.repo-foil-gregg-intro-v2204 h3{margin:10px 0;color:#ebce85;font:900 22px/1.16 Georgia,serif}.repo-foil-gregg-intro-v2204 p,.repo-foil-gregg-intro-v2204 li{color:#91a7aa;font:700 9px/1.5 system-ui,sans-serif}.repo-foil-gregg-intro-v2204 ul{display:grid;gap:5px;margin:14px 0 0;padding:12px 12px 12px 28px;border-top:1px solid rgba(190,145,48,.25);text-align:left}
.repo-foil-selected-top-v2204{display:grid;gap:4px;text-align:center}.repo-foil-selected-top-v2204 small{color:#57959d;font:800 7px/1 system-ui,sans-serif;letter-spacing:.12em}.repo-foil-selected-top-v2204 b{color:#ebca78;font:900 17px/1.1 Georgia,serif}.repo-foil-selected-top-v2204 span{color:#8fa4a7;font:700 8px/1 system-ui,sans-serif}
.repo-foil-selected-visual-v2204{position:relative;display:flex;justify-content:center;min-height:0;flex:1;padding:9px 0}.repo-foil-crack-line-v2204{position:absolute;z-index:5;left:49%;top:14%;width:2px;height:72%;opacity:.18;background:linear-gradient(transparent,#eefcff 12%,#63cbd0 48%,#fff 85%,transparent);transform:rotate(9deg);filter:drop-shadow(0 0 3px #77e5e8)}
.repo-foil-selected-facts-v2204{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:5px 0 10px}.repo-foil-selected-facts-v2204 span{display:grid;gap:3px;padding:7px 4px;border:1px solid rgba(181,139,49,.25);background:rgba(8,27,37,.7);text-align:center}.repo-foil-selected-facts-v2204 small{color:#5f838a;font:800 6px/1 system-ui,sans-serif}.repo-foil-selected-facts-v2204 b{color:#dcbf79;font:900 8px/1.1 Georgia,serif}
.repo-foil-prepare-v2204{width:100%;min-height:48px;display:grid;place-items:center;gap:2px;border:1px solid #c6953e;border-radius:4px;background:linear-gradient(#24717a,#103743);color:#fff0b6;box-shadow:inset 0 0 0 1px rgba(255,230,148,.13),0 7px 17px rgba(0,0,0,.35);cursor:pointer}.repo-foil-prepare-v2204 b{font:900 12px/1 Georgia,serif;letter-spacing:.07em}.repo-foil-prepare-v2204 small{font:800 7px/1 system-ui,sans-serif;letter-spacing:.09em}.repo-foil-prepare-v2204:disabled{opacity:.45;cursor:not-allowed}
.repo-foil-confirm-v2204{padding:10px;border:1px solid rgba(210,154,47,.55);background:linear-gradient(145deg,rgba(66,35,15,.9),rgba(18,18,18,.94));text-align:center}.repo-foil-confirm-v2204 strong{color:#ffcf5d;font:900 11px/1 Georgia,serif;letter-spacing:.06em}.repo-foil-confirm-v2204 p{margin:5px 0 9px;color:#c7b993;font:700 8px/1.35 system-ui,sans-serif}.repo-foil-confirm-v2204>div{display:grid;grid-template-columns:1fr 1.8fr;gap:7px}.repo-foil-confirm-v2204 button{min-height:34px;border:1px solid rgba(194,148,53,.6);background:#09141c;color:#ceb675;font:900 8px/1 system-ui,sans-serif;cursor:pointer}.repo-foil-confirm-v2204 [data-foil-confirm-crack]{background:linear-gradient(#9f5e1f,#51270d);color:#ffe4a0}
.repo-foil-counter-foot-v2204{display:grid;grid-template-columns:auto 18px auto 18px auto 18px auto 1fr;align-items:center;gap:6px;padding:10px 18px;border-top:1px solid rgba(205,157,55,.42);background:#061018}.repo-foil-counter-foot-v2204>span{display:grid;gap:2px}.repo-foil-counter-foot-v2204>span b{color:#c3a45f;font:900 7px/1 Georgia,serif;letter-spacing:.07em}.repo-foil-counter-foot-v2204>span small{color:#526e75;font:700 5px/1 system-ui,sans-serif}.repo-foil-counter-foot-v2204>i{height:1px;background:linear-gradient(90deg,#74551f,#2d858b)}.repo-foil-counter-foot-v2204>.locked b{color:#efba52}.repo-foil-counter-foot-v2204>p{margin:0;color:#769095;font:700 8px/1.25 system-ui,sans-serif;text-align:right}.repo-foil-counter-foot-v2204>p[data-tone='error']{color:#ff8c78}.repo-foil-counter-foot-v2204>p[data-tone='warn']{color:#f2bd5b}.repo-foil-counter-foot-v2204>p[data-tone='ok']{color:#70d7c4}
@keyframes repoFoilOverlayInV2204{from{opacity:0}to{opacity:1}}
@keyframes repoFoilSealV2204{to{transform:rotate(360deg)}}

/* Satisfying transaction ceremony: prepare, crack, then only show success once
   the database receipt has returned. */
.repo-foil-ceremony-v2204{position:absolute;inset:0;z-index:100;display:none;place-items:center;align-content:center;gap:12px;background:radial-gradient(circle,rgba(19,73,84,.95),rgba(2,6,9,.98) 68%);text-align:center;overflow:hidden}.repo-foil-ceremony-v2204.is-active{display:grid}.repo-foil-ceremony-v2204>strong{z-index:4;color:#f1cf79;font:900 clamp(16px,2vw,25px)/1.1 Georgia,serif;letter-spacing:.08em}.repo-foil-ceremony-v2204>small{z-index:4;color:#86a5aa;font:800 9px/1.2 system-ui,sans-serif;letter-spacing:.1em}.repo-foil-ceremony-light-v2204{position:absolute;width:min(80vw,650px);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,transparent,rgba(87,220,220,.17),transparent,rgba(242,195,89,.14),transparent);filter:blur(9px);animation:repoFoilCeremonyLightV2204 5s linear infinite}.repo-foil-ceremony-slab-v2204{position:relative;z-index:4;width:210px;display:grid;place-items:center}.repo-foil-ceremony-slab-v2204 .repo-foil-slab-v2204{width:190px!important}.repo-foil-ceremony-v2204.is-preparing .repo-foil-ceremony-slab-v2204{animation:repoFoilPrepareV2204 .8s ease-in-out infinite alternate}.repo-foil-ceremony-v2204.is-cracking .repo-foil-ceremony-slab-v2204{animation:repoFoilCrackV2204 .12s linear infinite}.repo-foil-ceremony-v2204.is-success{background:radial-gradient(circle,rgba(27,113,94,.96),rgba(2,8,10,.98) 68%)}.repo-foil-ceremony-v2204.is-success .repo-foil-ceremony-slab-v2204{animation:repoFoilSuccessV2204 .5s cubic-bezier(.2,.8,.2,1) both}.repo-foil-ceremony-v2204.is-error{background:radial-gradient(circle,rgba(91,30,22,.96),rgba(9,4,4,.99) 68%)}
.repo-foil-shards-v2204{position:absolute;left:50%;top:45%;z-index:6;width:1px;height:1px}.repo-foil-shards-v2204 i{position:absolute;width:7px;height:14px;clip-path:polygon(50% 0,100% 100%,0 72%);background:linear-gradient(#dffcff,#43979d);opacity:0;--angle:calc(var(--n)*20deg);transform:rotate(var(--angle)) translateY(-20px)}.repo-foil-ceremony-v2204.is-cracking .repo-foil-shards-v2204 i,.repo-foil-ceremony-v2204.is-success .repo-foil-shards-v2204 i{animation:repoFoilShardV2204 .72s calc(var(--n)*-17ms) ease-out both}
@keyframes repoFoilCeremonyLightV2204{to{transform:rotate(360deg)}}@keyframes repoFoilPrepareV2204{to{transform:translateY(-8px);filter:drop-shadow(0 0 18px rgba(78,219,222,.34))}}@keyframes repoFoilCrackV2204{25%{transform:translate(-5px,1px) rotate(-1deg)}75%{transform:translate(5px,-1px) rotate(1deg)}}@keyframes repoFoilSuccessV2204{0%{transform:scale(.88);filter:brightness(2)}100%{transform:scale(1.06);filter:drop-shadow(0 0 26px rgba(255,224,122,.55))}}@keyframes repoFoilShardV2204{0%{opacity:.95;transform:rotate(var(--angle)) translateY(-25px) scale(.5)}100%{opacity:0;transform:rotate(var(--angle)) translateY(-230px) scale(1.4)}}

@media(max-width:820px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{height:min(48dvh,500px)!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066{width:240px!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204{width:270px!important}
  .repo-foil-counter-shell-v2204{height:96dvh}.repo-foil-counter-head-v2204{grid-template-columns:45px 1fr 38px;padding:10px}.repo-foil-gregg-seal-v2204{width:39px;height:39px}.repo-foil-gregg-seal-v2204 b{font-size:22px}.repo-foil-counter-head-v2204 p{display:none}.repo-foil-counter-head-v2204 h2{font-size:18px}
  .repo-foil-counter-bar-v2204{grid-template-columns:1fr 1fr;padding:8px 10px}.repo-foil-counter-bar-v2204 label{grid-column:1/-1}.repo-foil-counter-main-v2204{grid-template-columns:1fr;padding:9px;overflow:auto}.repo-foil-slab-library-v2204{min-height:330px}.repo-foil-selected-v2204{min-height:390px}.repo-foil-slab-grid-v2204{grid-template-columns:repeat(3,minmax(88px,1fr))}.repo-foil-counter-foot-v2204{grid-template-columns:repeat(4,1fr);padding:8px}.repo-foil-counter-foot-v2204>i{display:none}.repo-foil-counter-foot-v2204>p{grid-column:1/-1;text-align:center}
}
@media(max-width:520px){
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{height:min(43dvh,420px)!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066{width:205px!important}
  #quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204{width:230px!important}
  .repo-foil-slab-grid-v2204{grid-template-columns:repeat(2,minmax(90px,1fr))}.repo-foil-door-hotspot-v2204 span,.repo-foil-gregg-hotspot-v2204 span{opacity:.88;translate:-50% 0}.repo-foil-back-v2204{min-height:38px;padding:0 12px}.repo-foil-close-v2204{width:38px;min-height:38px}
}
@media(max-height:720px) and (min-width:821px){#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-choice-v2041 img{height:min(43dvh,390px)!important}#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-shop-cta-v2066{width:220px!important}#quidditchTcgBinderDialog[data-binder-page='front'] .repo-dual-binder-foil-cta-v2204{width:248px!important}}
@media(prefers-reduced-motion:reduce){
  .repo-foil-mote-v2204,.repo-foil-exterior-atmo-v2204 *,.repo-foil-interior-atmo-v2204 *,.repo-foil-gregg-seal-v2204 i,.repo-foil-ceremony-light-v2204,.repo-foil-ceremony-slab-v2204,.repo-foil-shards-v2204 i{animation:none!important}
  .repo-foil-leaf-layer-v2204{display:none!important}
}

/* V22.05 — Scene controls must beat the site's legacy dialog-button rules.
   Doorway and Gregg remain accessible click targets but have no visible UI. */
#repoFoilAndFableDialogV2204 .repo-foil-door-hotspot-v2204,
#repoFoilAndFableDialogV2204 .repo-foil-gregg-hotspot-v2204{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:block!important;
  position:absolute!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  color:transparent!important;
  text-shadow:none!important;
  opacity:1!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-door-hotspot-v2204{
  left:40.2%!important;
  top:44%!important;
  width:19.3%!important;
  height:42%!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-gregg-hotspot-v2204{
  left:36%!important;
  top:25%!important;
  width:28%!important;
  height:39%!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-door-hotspot-v2204::before,
#repoFoilAndFableDialogV2204 .repo-foil-door-hotspot-v2204::after,
#repoFoilAndFableDialogV2204 .repo-foil-gregg-hotspot-v2204::before,
#repoFoilAndFableDialogV2204 .repo-foil-gregg-hotspot-v2204::after,
#repoFoilAndFableDialogV2204 .repo-foil-door-hotspot-v2204 span,
#repoFoilAndFableDialogV2204 .repo-foil-gregg-hotspot-v2204 span{
  display:none!important;
  content:none!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

#repoFoilAndFableDialogV2204 .repo-foil-back-v2204{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:fixed!important;
  left:max(14px,env(safe-area-inset-left))!important;
  right:auto!important;
  top:max(14px,env(safe-area-inset-top))!important;
  bottom:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:150px!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:0 13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(79,190,200,.78)!important;
  border-radius:5px!important;
  background:linear-gradient(180deg,rgba(20,71,91,.96),rgba(7,28,42,.97))!important;
  color:#d4f4ef!important;
  box-shadow:0 5px 14px rgba(0,0,0,.48),inset 0 1px 0 rgba(190,247,239,.12)!important;
  font:800 9px/1 system-ui,sans-serif!important;
  letter-spacing:.11em!important;
  text-shadow:0 1px 2px #000!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-back-v2204:hover,
#repoFoilAndFableDialogV2204 .repo-foil-back-v2204:focus-visible{
  border-color:#79dce0!important;
  background:linear-gradient(180deg,#205f76,#0b3348)!important;
  color:#effff9!important;
  box-shadow:0 7px 18px rgba(0,0,0,.54),0 0 12px rgba(66,202,207,.18)!important;
  transform:translateY(-1px)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-close-v2204{
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  border-color:rgba(79,190,200,.72)!important;
  background:linear-gradient(180deg,rgba(20,71,91,.96),rgba(7,28,42,.97))!important;
  color:#d4f4ef!important;
  box-shadow:0 5px 14px rgba(0,0,0,.48)!important;
}

/* ======================================================================
   V22.06 — GREGG'S PROFESSIONAL SLAB WORKSHOP
   Cleaner grading-desk presentation with larger, legible slab records.
   ====================================================================== */
#repoFoilAndFableDialogV2204 .repo-foil-crack-overlay-v2204{
  padding:clamp(10px,1.6vw,24px)!important;
  background:rgba(1,6,10,.88)!important;
  backdrop-filter:blur(12px) saturate(.72)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-shell-v2204{
  position:relative!important;
  width:min(1260px,96vw)!important;
  height:min(860px,95dvh)!important;
  grid-template-rows:94px 68px minmax(0,1fr) 56px!important;
  border:1px solid rgba(202,160,71,.8)!important;
  border-radius:12px!important;
  background:
    radial-gradient(circle at 22% 0,rgba(46,129,143,.13),transparent 34%),
    linear-gradient(145deg,#0a1822 0,#06121b 48%,#040c13 100%)!important;
  box-shadow:0 34px 100px rgba(0,0,0,.8),0 0 0 1px rgba(40,156,166,.18),inset 0 1px 0 rgba(255,235,175,.08)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-shell-v2204::before{
  content:''!important;
  position:absolute!important;
  z-index:10!important;
  left:20px!important;
  right:20px!important;
  top:0!important;
  height:2px!important;
  background:linear-gradient(90deg,transparent,#42aeb5 18%,#e0b760 50%,#42aeb5 82%,transparent)!important;
  opacity:.62!important;
  pointer-events:none!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204{
  grid-template-columns:62px minmax(0,1fr) 38px!important;
  gap:16px!important;
  padding:14px 20px!important;
  border:0!important;
  border-bottom:1px solid rgba(83,148,155,.28)!important;
  background:linear-gradient(100deg,rgba(15,43,57,.98),rgba(7,23,33,.98) 58%,rgba(5,16,24,.98))!important;
  box-shadow:0 7px 24px rgba(0,0,0,.22)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-gregg-seal-v2204{
  width:52px!important;
  height:52px!important;
  border-color:#d4ad58!important;
  background:radial-gradient(circle at 36% 28%,#226c7d,#0a2738 58%,#04131e 100%)!important;
  box-shadow:0 0 0 3px #07141e,0 0 0 4px rgba(212,173,88,.5),0 8px 20px rgba(0,0,0,.38)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204 small{
  color:#68b8be!important;
  font:800 8px/1.15 system-ui,sans-serif!important;
  letter-spacing:.16em!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204 h2{
  margin:5px 0 4px!important;
  color:#f0d58e!important;
  font:900 clamp(23px,2.5vw,34px)/.95 Georgia,serif!important;
  letter-spacing:.035em!important;
  text-shadow:0 2px 3px #000!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204 p{
  color:#829ca3!important;
  font:700 9px/1.2 system-ui,sans-serif!important;
  letter-spacing:.055em!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204>button{
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  border:1px solid rgba(94,180,187,.48)!important;
  background:#071a26!important;
  color:#aed9d9!important;
  box-shadow:none!important;
  font-size:21px!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204>button:hover{
  border-color:#d5ad58!important;
  color:#f3d791!important;
  background:#0d2a38!important;
}

#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204{
  grid-template-columns:165px 150px minmax(280px,1fr)!important;
  gap:18px!important;
  padding:11px 20px!important;
  border:0!important;
  border-bottom:1px solid rgba(83,148,155,.22)!important;
  background:rgba(3,13,20,.88)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204>span{
  position:relative!important;
  padding-left:11px!important;
  border-left:2px solid rgba(63,168,177,.45)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204 small{
  color:#66878f!important;
  font-size:7px!important;
  letter-spacing:.14em!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204 b{
  color:#e8ca80!important;
  font:900 15px/1 Georgia,serif!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204 input{
  height:38px!important;
  border:1px solid rgba(75,142,151,.5)!important;
  border-radius:6px!important;
  padding:0 13px!important;
  background:linear-gradient(180deg,#0b202b,#071721)!important;
  color:#dce8e4!important;
  box-shadow:inset 0 1px 5px rgba(0,0,0,.38)!important;
  font:700 10px/1 system-ui,sans-serif!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204 input::placeholder{color:#58747c!important}

#repoFoilAndFableDialogV2204 .repo-foil-counter-main-v2204{
  grid-template-columns:minmax(0,1fr) minmax(350px,390px)!important;
  gap:16px!important;
  padding:16px 20px!important;
  background:transparent!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204,
#repoFoilAndFableDialogV2204 .repo-foil-selected-v2204{
  border:1px solid rgba(66,124,132,.42)!important;
  border-radius:8px!important;
  background:linear-gradient(150deg,rgba(7,24,33,.94),rgba(3,12,18,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 12px 30px rgba(0,0,0,.2)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204>header{
  min-height:52px!important;
  padding:10px 15px!important;
  border:0!important;
  border-bottom:1px solid rgba(72,137,145,.34)!important;
  background:linear-gradient(90deg,rgba(14,48,61,.96),rgba(7,27,38,.96))!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204>header b{
  color:#e7cd8b!important;
  font:900 11px/1 Georgia,serif!important;
  letter-spacing:.11em!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204>header small{
  color:#62a7ad!important;
  font-size:7px!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204>header>span{
  padding:6px 9px!important;
  border:1px solid rgba(70,147,155,.3)!important;
  border-radius:20px!important;
  color:#76a7ab!important;
  background:rgba(4,17,25,.55)!important;
  font-size:6px!important;
}

/* Two-column archive records make each slab materially larger and keep its
   certification/status readable without overpowering the selected preview. */
#repoFoilAndFableDialogV2204 .repo-foil-slab-grid-v2204{
  grid-template-columns:repeat(2,minmax(250px,1fr))!important;
  gap:10px!important;
  padding:12px!important;
  scrollbar-width:thin!important;
  scrollbar-color:#387f87 #06141d!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204{
  position:relative!important;
  min-height:180px!important;
  display:grid!important;
  grid-template-columns:112px minmax(0,1fr)!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  justify-items:stretch!important;
  gap:12px!important;
  padding:11px!important;
  border:1px solid rgba(73,130,138,.36)!important;
  border-radius:7px!important;
  background:
    radial-gradient(circle at 8% 16%,rgba(54,139,149,.09),transparent 42%),
    linear-gradient(145deg,rgba(12,35,46,.96),rgba(5,17,25,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 6px 16px rgba(0,0,0,.22)!important;
  overflow:hidden!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204::before{
  content:''!important;
  position:absolute!important;
  left:0!important;
  top:13px!important;
  bottom:13px!important;
  width:2px!important;
  border-radius:2px!important;
  background:#3c929a!important;
  opacity:.38!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204:not(:disabled):hover{
  transform:translateY(-2px)!important;
  border-color:rgba(91,189,194,.76)!important;
  background:linear-gradient(145deg,rgba(16,49,61,.99),rgba(6,22,31,.99))!important;
  box-shadow:0 10px 24px rgba(0,0,0,.38),0 0 0 1px rgba(77,187,192,.1)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204.is-selected{
  border-color:#d3aa55!important;
  background:
    radial-gradient(circle at 5% 15%,rgba(216,175,84,.12),transparent 44%),
    linear-gradient(145deg,rgba(18,47,57,.99),rgba(7,24,32,.99))!important;
  box-shadow:0 0 0 1px rgba(211,170,85,.22),0 12px 28px rgba(0,0,0,.4)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204.is-selected::before{background:#d3aa55!important;opacity:1!important}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204.is-disabled{
  opacity:.58!important;
  filter:saturate(.5)!important;
  background:linear-gradient(145deg,rgba(18,25,29,.96),rgba(8,13,16,.98))!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204>.repo-foil-slab-v2204{
  width:108px!important;
  max-width:108px!important;
  filter:drop-shadow(0 8px 8px rgba(0,0,0,.54))!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-meta-v2204{
  align-self:center!important;
  width:auto!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:7px!important;
  text-align:left!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-meta-v2204>small{
  order:1!important;
  max-width:100%!important;
  overflow:hidden!important;
  color:#5d9299!important;
  font:800 6px/1 system-ui,sans-serif!important;
  letter-spacing:.1em!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-meta-v2204>b{
  order:2!important;
  max-width:100%!important;
  overflow:hidden!important;
  color:#e8d8ae!important;
  font:900 12px/1.23 Georgia,serif!important;
  text-overflow:ellipsis!important;
  white-space:normal!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-status-v2206{
  order:3!important;
  display:inline-flex!important;
  max-width:100%!important;
  padding:5px 7px!important;
  border:1px solid rgba(72,158,165,.42)!important;
  border-radius:3px!important;
  color:#82c7c8!important;
  background:rgba(13,55,64,.56)!important;
  font:800 6px/1 system-ui,sans-serif!important;
  font-style:normal!important;
  letter-spacing:.07em!important;
  white-space:normal!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204.is-disabled .repo-foil-slab-entry-status-v2206{
  border-color:rgba(122,130,130,.3)!important;
  color:#879092!important;
  background:rgba(35,40,41,.56)!important;
}

#repoFoilAndFableDialogV2204 .repo-foil-selected-v2204{
  padding:16px!important;
  background:
    radial-gradient(circle at 50% 24%,rgba(50,134,144,.12),transparent 38%),
    linear-gradient(155deg,rgba(7,27,37,.97),rgba(3,12,18,.99))!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204{
  min-height:52px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding-bottom:11px!important;
  border-bottom:1px solid rgba(76,137,144,.28)!important;
  text-align:left!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204>div{min-width:0!important;display:grid!important;gap:4px!important}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204 small{color:#58a8ae!important;font-size:7px!important;letter-spacing:.13em!important}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204 b{overflow:hidden!important;color:#f0d48d!important;font-size:17px!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204 span{color:#76949a!important;font-size:7px!important}
#repoFoilAndFableDialogV2204 .repo-foil-selected-top-v2204>em{
  flex:0 0 auto!important;
  padding:5px 7px!important;
  border:1px solid rgba(72,174,163,.48)!important;
  border-radius:20px!important;
  color:#83d8c5!important;
  background:rgba(22,92,80,.26)!important;
  font:800 6px/1 system-ui,sans-serif!important;
  font-style:normal!important;
  letter-spacing:.1em!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-visual-v2204{
  min-height:285px!important;
  flex:1 1 auto!important;
  align-items:center!important;
  padding:14px 0 8px!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-visual-v2204 .repo-foil-slab-v2204.is-large{
  width:220px!important;
  max-width:60%!important;
  filter:drop-shadow(0 15px 14px rgba(0,0,0,.58)) drop-shadow(0 0 10px rgba(71,160,166,.1))!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-facts-v2204{
  gap:7px!important;
  margin:4px 0 11px!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-facts-v2204 span{
  min-height:43px!important;
  align-content:center!important;
  padding:7px 5px!important;
  border:1px solid rgba(67,125,133,.38)!important;
  border-radius:4px!important;
  background:rgba(7,28,38,.75)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-selected-facts-v2204 small{color:#5f858c!important;font-size:6px!important}
#repoFoilAndFableDialogV2204 .repo-foil-selected-facts-v2204 b{color:#e5ca85!important;font-size:8px!important}
#repoFoilAndFableDialogV2204 .repo-foil-prepare-v2204{
  min-height:52px!important;
  border:1px solid rgba(204,163,75,.78)!important;
  border-radius:6px!important;
  background:linear-gradient(180deg,#1c6870,#0b3a49)!important;
  color:#f4e1ac!important;
  box-shadow:inset 0 1px 0 rgba(232,255,250,.12),0 8px 20px rgba(0,0,0,.38)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-prepare-v2204:not(:disabled):hover{
  border-color:#e0bd6f!important;
  background:linear-gradient(180deg,#257b81,#0e4758)!important;
  transform:translateY(-1px)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-confirm-v2204{
  border:1px solid rgba(204,163,75,.55)!important;
  border-radius:6px!important;
  background:linear-gradient(145deg,rgba(30,49,53,.98),rgba(9,22,29,.99))!important;
}

#repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204{
  grid-template-columns:auto 24px auto 24px auto 24px auto minmax(170px,1fr)!important;
  gap:7px!important;
  padding:9px 20px!important;
  border:0!important;
  border-top:1px solid rgba(72,137,145,.3)!important;
  background:rgba(3,13,20,.94)!important;
}
#repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204>span b{color:#cbb06e!important;font-size:7px!important}
#repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204>span small{color:#58777e!important;font-size:5px!important}
#repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204>i{background:linear-gradient(90deg,#315f65,#b28e47)!important}
#repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204>p{color:#78989d!important;font-size:7px!important}

#repoFoilAndFableDialogV2204 .repo-foil-grid-message-v2204{
  min-height:220px!important;
  align-content:center!important;
  border:1px dashed rgba(72,137,145,.28)!important;
  border-radius:6px!important;
  margin:8px!important;
  background:rgba(5,20,28,.56)!important;
}

@media(max-width:980px){
  #repoFoilAndFableDialogV2204 .repo-foil-counter-shell-v2204{grid-template-rows:auto auto minmax(0,1fr) auto!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-main-v2204{grid-template-columns:minmax(0,1fr) minmax(310px,350px)!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-grid-v2204{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  #repoFoilAndFableDialogV2204 .repo-foil-counter-shell-v2204{height:96dvh!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-main-v2204{display:grid!important;grid-template-columns:1fr!important;padding:9px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-library-v2204{min-height:440px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-grid-v2204{grid-template-columns:repeat(2,minmax(220px,1fr))!important}
  #repoFoilAndFableDialogV2204 .repo-foil-selected-v2204{min-height:500px!important}
}
@media(max-width:570px){
  #repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204{grid-template-columns:42px minmax(0,1fr) 32px!important;padding:10px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-gregg-seal-v2204{width:38px!important;height:38px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-head-v2204 h2{font-size:17px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204{grid-template-columns:1fr 1fr!important;gap:8px!important;padding:8px 10px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-bar-v2204 label{grid-column:1/-1!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-grid-v2204{grid-template-columns:1fr!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204{grid-template-columns:104px minmax(0,1fr)!important}
  #repoFoilAndFableDialogV2204 .repo-foil-slab-entry-v2204>.repo-foil-slab-v2204{width:100px!important}
  #repoFoilAndFableDialogV2204 .repo-foil-counter-foot-v2204{grid-template-columns:repeat(2,1fr)!important}
}


/* V30.0 — Velmora: Dragonbound homepage launcher and cinematic menu */

.dragonbound-open-button{
  position:relative;
}
.dragonbound-open-button .dragonbound-home-icon{
  position:relative;
  z-index:1;
  display:grid!important;
  place-items:center!important;
  width:28px!important;
  height:28px!important;
  border-radius:8px!important;
  border:1px solid #a97a36!important;
  background:
    radial-gradient(circle at 50% 34%,rgba(255,228,164,.55),transparent 42%),
    linear-gradient(180deg,#28413e,#0c2424 60%,#071417)!important;
  box-shadow:inset 0 0 0 1px rgba(255,223,152,.16),0 2px 6px rgba(0,0,0,.35)!important;
  overflow:hidden;
}
.dragonbound-open-button .dragonbound-home-icon::before{
  content:"";
  position:absolute;
  inset:3px;
  border:1px solid rgba(232,194,111,.35);
  border-radius:6px;
}
.dragonbound-open-button .dragonbound-home-icon b{
  position:relative;
  color:#f6dda6;
  font:900 10px/1 Georgia,serif;
  letter-spacing:.06em;
}
.dragonbound-overlay{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(0,0,0,.98);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:0;
  pointer-events:none;
  transition:opacity .7s ease, background .9s ease;
  z-index:10040;
}
.dragonbound-overlay::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 45%, rgba(255,212,138,.06), transparent 48%), linear-gradient(180deg, rgba(0,0,0,.85), rgba(0,0,0,.56) 38%, rgba(0,0,0,.72));
  opacity:1;
  transition:opacity 1.2s ease;
  pointer-events:none;
}
.dragonbound-overlay.is-open{
  opacity:1;
  pointer-events:auto;
  background:rgba(4,9,15,.84);
}
.dragonbound-overlay.is-open::before{
  opacity:.18;
}
.dragonbound-shell{
  position:relative;
  width:min(96vw,1875px);
  aspect-ratio:16/9;
  overflow:hidden;
  border:2px solid #d7af66;
  box-shadow:0 34px 90px rgba(0,0,0,.62), inset 0 0 0 1px rgba(255,222,160,.3);
  background:#0b1016;
  opacity:0;
  transform:scale(1.03);
  transition:opacity .9s ease, transform .9s ease;
  will-change:opacity, transform;
}
.dragonbound-overlay.is-open .dragonbound-shell{
  opacity:1;
  transform:scale(1);
}
.dragonbound-scene{
  position:absolute;
  inset:0;
  overflow:hidden;
  will-change:transform;
}
.dragonbound-overlay.is-open .dragonbound-scene{
  animation:dragonboundCameraFloat 16s ease-in-out infinite 1s;
}
.dragonbound-haze{
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.18;
  mix-blend-mode:screen;
  background:
    radial-gradient(ellipse at 71% 43%, rgba(255,235,201,.07) 0%, rgba(255,225,180,.035) 18%, transparent 42%),
    radial-gradient(ellipse at 45% 57%, rgba(255,247,226,.035) 0%, rgba(255,235,203,.02) 20%, transparent 45%);
  animation:dragonboundHazeShimmer 18s ease-in-out infinite alternate;
}
.dragonbound-bg{
  position:absolute;
  inset:-1.2%;
  opacity:1;
  background:url("assets/dragonbound/dragonbound-menu.png") center/cover no-repeat;
  transform-origin:center center;
  will-change:transform;
  pointer-events:none;
}
.dragonbound-bg-far{
  opacity:1;
  transform:scale(1.03);
  filter:saturate(1.02) brightness(.98);
  animation:dragonboundBackgroundDriftFar 34s ease-in-out infinite alternate;
}
.dragonbound-bg-mid{
  transform:scale(1.045);
  opacity:.13;
  filter:saturate(1.025) brightness(1.005);
  -webkit-mask-image:linear-gradient(to top,
    rgba(0,0,0,.88) 0%,
    rgba(0,0,0,.58) 24%,
    rgba(0,0,0,.22) 42%,
    transparent 58%);
  mask-image:linear-gradient(to top,
    rgba(0,0,0,.88) 0%,
    rgba(0,0,0,.58) 24%,
    rgba(0,0,0,.22) 42%,
    transparent 58%);
  animation:dragonboundBackgroundDriftMid 30s ease-in-out infinite alternate;
}
.dragonbound-bg-foreground{
  transform:scale(1.055);
  opacity:.12;
  filter:saturate(1.035) brightness(1.005);
  -webkit-mask-image:
    radial-gradient(ellipse at 84% 72%, rgba(0,0,0,.88) 0%, rgba(0,0,0,.58) 20%, rgba(0,0,0,.18) 35%, transparent 47%),
    linear-gradient(to top, rgba(0,0,0,.72) 0%, rgba(0,0,0,.34) 12%, transparent 28%);
  mask-image:
    radial-gradient(ellipse at 84% 72%, rgba(0,0,0,.88) 0%, rgba(0,0,0,.58) 20%, rgba(0,0,0,.18) 35%, transparent 47%),
    linear-gradient(to top, rgba(0,0,0,.72) 0%, rgba(0,0,0,.34) 12%, transparent 28%);
  animation:dragonboundBackgroundDriftForeground 24s ease-in-out infinite alternate;
}

 .dragonbound-bg,
.dragonbound-frame-glow,
.dragonbound-sun,
.dragonbound-breezes,
.dragonbound-leaves,
.dragonbound-particles,
.dragonbound-haze,
.dragonbound-vignette,
.dragonbound-title-shine,
.dragonbound-close{
  position:absolute;
}
.dragonbound-frame-glow{
  inset:0;
  pointer-events:none;
  box-shadow:inset 0 0 70px rgba(255,223,170,.18), inset 0 0 240px rgba(0,0,0,.18), inset 0 -18px 50px rgba(255,183,84,.08);
}
.dragonbound-vignette{
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(17,22,28,.04),rgba(9,13,18,.06)), radial-gradient(circle at center, transparent 52%, rgba(8,10,15,.24) 100%), linear-gradient(90deg, rgba(18,24,30,.08), transparent 18%, transparent 82%, rgba(18,24,30,.06));
}
.dragonbound-sun{
  right:12%;
  top:28%;
  width:min(38vw,620px);
  aspect-ratio:1/1;
  pointer-events:none;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,248,225,.38) 0%, rgba(255,231,176,.28) 15%, rgba(255,211,128,.18) 28%, rgba(255,197,110,.1) 44%, rgba(255,188,96,.04) 58%, transparent 72%);
  filter:blur(2px);
  mix-blend-mode:screen;
  animation:dragonboundSunPulse 8s ease-in-out infinite, dragonboundSunDrift 22s ease-in-out infinite alternate;
}
.dragonbound-breezes{
  inset:0;
  pointer-events:none;
  overflow:hidden;
  mix-blend-mode:screen;
  will-change:transform;
  animation:dragonboundAmbientLayerFloat 20s ease-in-out infinite alternate;
}
.dragonbound-breeze{
  position:absolute;
  left:-35%;
  width:var(--w,48%);
  height:var(--h,2px);
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(255,244,218,0), rgba(255,244,218,.1), rgba(255,240,207,.36), rgba(255,244,218,.12), transparent);
  filter:blur(var(--blur,.2px));
  opacity:var(--o,.65);
  animation:dragonboundBreeze var(--dur,12s) linear infinite;
  animation-delay:var(--delay,0s);
  transform:translateY(0) rotate(var(--rot,-6deg));
}
.dragonbound-breeze::after{
  content:"";
  position:absolute;
  right:8%; top:-1px;
  width:28%; height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,246,230,.42),transparent);
  opacity:.78;
}
.dragonbound-leaves{
  inset:0;
  pointer-events:none;
  overflow:hidden;
}
.dragonbound-leaf{
  position:absolute;
  top:var(--top,-10%);
  left:var(--x,50%);
  width:var(--size,16px);
  height:calc(var(--size,16px) * .62);
  border-radius:100% 8% 100% 8%;
  background:linear-gradient(135deg,var(--leaf-a,#f2cb79),var(--leaf-b,#a7c56f) 45%,var(--leaf-c,#5b8751));
  box-shadow:0 1px 0 1px rgba(64,46,18,.16), inset 0 0 1px rgba(255,239,198,.35);
  opacity:var(--alpha,.84);
  transform-origin:50% 50%;
  animation:dragonboundLeafFall var(--dur,10s) linear infinite;
  animation-delay:var(--delay,0s);
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.18));
}
.dragonbound-leaf::after{
  content:"";
  position:absolute;
  left:46%; top:9%; bottom:9%; width:1px;
  background:rgba(255,246,219,.48);
  transform:rotate(14deg);
}

.dragonbound-particles{
  inset:0;
  pointer-events:none;
  overflow:hidden;
  mix-blend-mode:screen;
  will-change:transform;
  animation:dragonboundAmbientLayerFloat 18s ease-in-out infinite alternate;
}
.dragonbound-particle{
  position:absolute;
  left:var(--x,50%);
  top:var(--y,50%);
  width:var(--size,4px);
  height:var(--size,4px);
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,247,221,.95) 0%, rgba(255,223,162,.72) 38%, rgba(255,220,144,.08) 72%, transparent 100%);
  opacity:var(--alpha,.55);
  filter:blur(var(--blur,0px));
  animation:dragonboundParticleFloat var(--dur,11s) ease-in-out infinite;
  animation-delay:var(--delay,0s);
}


.dragonbound-title-shine{
  top:15.8%;
  left:46.4%;
  width:31%;
  height:17%;
  pointer-events:none;
  overflow:hidden;
  opacity:.92;
  mix-blend-mode:screen;
}
.dragonbound-title-shine::before{
  content:"";
  position:absolute;
  top:-35%;
  left:-36%;
  width:24%;
  height:190%;
  background:linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,249,238,.04) 24%,
    rgba(255,244,214,.18) 42%,
    rgba(255,255,255,.36) 50%,
    rgba(255,231,176,.22) 58%,
    rgba(255,244,214,.05) 74%,
    rgba(255,255,255,0) 100%);
  transform:rotate(12deg);
  filter:blur(.35px);
  animation:dragonboundTitleShine 7.5s ease-in-out infinite;
}

.dragonbound-hud{
  display:none;
}
.dragonbound-hud small{
  display:block;
  margin-bottom:3px;
  color:#d0b073;
  font:700 9px/1 Georgia,serif;
  letter-spacing:.24em;
}
.dragonbound-hud strong{
  display:block;
  font:900 17px/1.1 Georgia,serif;
  letter-spacing:.05em;
}
.dragonbound-hud span{
  display:block;
  margin-top:5px;
  color:#d8c29a;
  font:600 11px/1.35 Georgia,serif;
}
.dragonbound-note{
  display:none;
}
.dragonbound-close{
  right:18px;
  top:18px;
  z-index:2;
  width:44px;
  height:44px;
  border:1px solid rgba(233,194,104,.78);
  background:linear-gradient(180deg,rgba(69,41,17,.95),rgba(27,17,10,.96));
  color:#f4ddae;
  font:900 24px/1 Georgia,serif;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 10px 26px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,229,180,.12);
  transition:transform .14s ease, filter .14s ease;
}
.dragonbound-close:hover{ transform:translateY(-1px); filter:brightness(1.08); }
.dragonbound-close:active{ transform:translateY(1px); }
body.dragonbound-menu-open{ overflow:hidden; }
@keyframes dragonboundCameraFloat{
  0%,100%{ transform:translate3d(0,0,0) scale(1); }
  22%{ transform:translate3d(-6px,-2px,0) scale(1.004); }
  52%{ transform:translate3d(4px,3px,0) scale(1.008); }
  78%{ transform:translate3d(-2px,2px,0) scale(1.003); }
}
@keyframes dragonboundBackgroundDriftFar{
  0%{ transform:translate3d(-0.55%,0.2%,0) scale(1.03); }
  38%{ transform:translate3d(0.2%,-0.28%,0) scale(1.039); }
  100%{ transform:translate3d(0.65%,-0.34%,0) scale(1.036); }
}
@keyframes dragonboundBackgroundDriftMid{
  0%{ transform:translate3d(-0.08%,0.12%,0) scale(1.045); }
  50%{ transform:translate3d(0.18%,-0.08%,0) scale(1.048); }
  100%{ transform:translate3d(0.34%,-0.12%,0) scale(1.046); }
}
@keyframes dragonboundBackgroundDriftForeground{
  0%{ transform:translate3d(-0.04%,0.16%,0) scale(1.055); }
  50%{ transform:translate3d(0.28%,-0.08%,0) scale(1.058); }
  100%{ transform:translate3d(0.46%,-0.12%,0) scale(1.056); }
}
@keyframes dragonboundSunDrift{
  0%{ transform:translate3d(0,0,0) scale(1); }
  50%{ transform:translate3d(8px,-5px,0) scale(1.03); }
  100%{ transform:translate3d(-6px,4px,0) scale(1.01); }
}
@keyframes dragonboundAmbientLayerFloat{
  0%{ transform:translate3d(0,0,0); }
  50%{ transform:translate3d(4px,-3px,0); }
  100%{ transform:translate3d(-3px,2px,0); }
}
@keyframes dragonboundHazeShimmer{
  0%{ transform:translate3d(-0.18%,0,0) scale(1.01); opacity:.16; }
  50%{ transform:translate3d(0.22%,-0.08%,0) scale(1.014); opacity:.24; }
  100%{ transform:translate3d(0.08%,0.06%,0) scale(1.012); opacity:.18; }
}
@keyframes dragonboundLeafFall{
  0%{ transform:translate3d(0,-6vh,0) rotate(0deg) scale(var(--scale,.9)); opacity:0; }
  8%{ opacity:var(--alpha,.85); }
  30%{ transform:translate3d(var(--drift1,6vw),28vh,0) rotate(125deg) scale(calc(var(--scale,.9) * 1.02)); }
  58%{ transform:translate3d(var(--drift2,-4vw),58vh,0) rotate(240deg) scale(var(--scale,.9)); }
  82%{ transform:translate3d(var(--drift3,12vw),84vh,0) rotate(360deg) scale(calc(var(--scale,.9) * .96)); opacity:calc(var(--alpha,.85) * .94); }
  100%{ transform:translate3d(var(--drift4,22vw),116vh,0) rotate(var(--rotEnd,480deg)) scale(calc(var(--scale,.9) * .9)); opacity:0; }
}
@keyframes dragonboundBreeze{
  0%{ transform:translate3d(-24%,0,0) rotate(var(--rot,-6deg)); opacity:0; }
  10%{ opacity:var(--o,.66); }
  55%{ opacity:calc(var(--o,.66) * .65); }
  100%{ transform:translate3d(188%,0,0) rotate(var(--rot,-6deg)); opacity:0; }
}
@keyframes dragonboundParticleFloat{
  0%,100%{ transform:translate3d(0,0,0) scale(.9); opacity:calc(var(--alpha,.55) * .75); }
  20%{ transform:translate3d(var(--dx1,10px),-8px,0) scale(1); opacity:var(--alpha,.55); }
  55%{ transform:translate3d(var(--dx2,-14px),12px,0) scale(1.06); opacity:calc(var(--alpha,.55) * .88); }
  80%{ transform:translate3d(var(--dx3,8px),-10px,0) scale(.96); }
}
@keyframes dragonboundTitleShine{
  0%, 12%{ transform:translate3d(0,0,0) rotate(12deg); opacity:0; }
  18%{ opacity:.65; }
  30%{ opacity:1; }
  44%{ transform:translate3d(520%,0,0) rotate(12deg); opacity:.14; }
  45%,100%{ transform:translate3d(520%,0,0) rotate(12deg); opacity:0; }
}
@keyframes dragonboundSunPulse{
  0%,100%{ transform:scale(1); opacity:.88; }
  50%{ transform:scale(1.055); opacity:1; }
}
@media(max-width:900px){
  .dragonbound-overlay{ padding:10px; }
  .dragonbound-shell{ width:98vw; }
  .dragonbound-title-shine{ left:45.8%; top:15.5%; width:32.5%; height:17.5%; }
  .dragonbound-close{ right:10px; top:10px; width:38px; height:38px; font-size:22px; }
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-shell,.dragonbound-scene,.dragonbound-bg,.dragonbound-haze,.dragonbound-sun,.dragonbound-breezes,.dragonbound-breeze,.dragonbound-leaves,.dragonbound-particles,.dragonbound-leaf,.dragonbound-particle{ animation:none!important; }
}

/* V30.6 safety: title glint only becomes visible once the scene is open. */
.dragonbound-title-shine{opacity:0!important}
.dragonbound-overlay.is-open .dragonbound-title-shine{opacity:.78!important}


/* V30.7 — Dragonbound interactive title-menu hotspots + New Game intro */
.dragonbound-shell{isolation:isolate}
.dragonbound-scene{z-index:1}
.dragonbound-close{
  z-index:80!important;
  background:rgba(5,12,14,.2)!important;
  border:1px solid rgba(245,211,141,.66)!important;
  color:#f5dfad!important;
  box-shadow:0 0 0 1px rgba(10,15,17,.35),0 0 16px rgba(240,193,103,.08)!important;
  backdrop-filter:blur(2px);
}
.dragonbound-close:hover{
  background:rgba(8,17,18,.32)!important;
  box-shadow:0 0 0 1px rgba(10,15,17,.3),0 0 18px rgba(255,220,145,.24)!important;
  text-shadow:0 0 9px rgba(255,233,181,.55);
}
.dragonbound-menu-actions{
  position:absolute;
  inset:0;
  z-index:60;
  pointer-events:none;
}
.dragonbound-menu-action{
  position:absolute;
  left:59.15%;
  width:18.3%;
  height:5.7%;
  padding:0!important;
  margin:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  outline:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  font-size:0!important;
  cursor:pointer;
  pointer-events:auto;
  overflow:visible;
}
.dragonbound-menu-action[data-dragonbound-action="new-game"]{top:38.55%}
.dragonbound-menu-action[data-dragonbound-action="load-game"]{top:44.65%}
.dragonbound-menu-action[data-dragonbound-action="rules"]{top:50.55%}
.dragonbound-menu-action::before{
  content:"";
  position:absolute;
  inset:13% 6%;
  border-radius:999px;
  background:radial-gradient(ellipse at center,
    rgba(255,239,194,.20) 0%,
    rgba(255,222,154,.10) 42%,
    rgba(255,212,125,.025) 66%,
    transparent 76%);
  filter:blur(8px);
  opacity:0;
  transform:scale(.92);
  transition:opacity .18s ease,transform .22s ease;
  mix-blend-mode:screen;
  pointer-events:none;
}
.dragonbound-menu-action::after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:11%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(248,222,159,.5),transparent);
  opacity:0;
  transform:scaleX(.65);
  transition:opacity .18s ease,transform .22s ease;
  pointer-events:none;
}
.dragonbound-menu-action:hover::before,
.dragonbound-menu-action:focus-visible::before{opacity:.85;transform:scale(1.04)}
.dragonbound-menu-action:hover::after,
.dragonbound-menu-action:focus-visible::after{opacity:.62;transform:scaleX(1)}
.dragonbound-menu-action:focus-visible{outline:1px solid rgba(255,226,161,.26)!important;outline-offset:3px!important}
.dragonbound-menu-feedback{
  position:absolute;
  z-index:63;
  left:58.4%;
  top:56.6%;
  width:19.8%;
  text-align:center;
  color:rgba(83,54,33,.82);
  font:700 clamp(8px,.72vw,13px)/1.35 Georgia,serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-shadow:0 0 7px rgba(255,237,194,.72),0 1px 0 rgba(255,255,255,.2);
  opacity:0;
  transform:translateY(3px);
  transition:opacity .2s ease,transform .2s ease;
  pointer-events:none;
}
.dragonbound-menu-feedback.is-visible{opacity:.78;transform:translateY(0)}
.dragonbound-new-game-stage{
  position:absolute;
  inset:0;
  z-index:42;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  background:#000;
}
.dragonbound-new-game-stage.is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.dragonbound-new-game-image{
  position:absolute;
  inset:-1%;
  opacity:0;
  transform:scale(1.018);
  filter:saturate(.985) brightness(.98);
  transition:opacity 1.15s ease;
  will-change:opacity,transform;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.dragonbound-new-game-image--forest{
  background:#000 url("assets/dragonbound/dragonbound-prologue-forest.png") center/cover no-repeat;
}
.dragonbound-new-game-image--cave{
  background:#000 url("assets/dragonbound/dragonbound-cave-passage.png") center/cover no-repeat;
}
.dragonbound-new-game-image--valley{
  background:#000 url("assets/dragonbound/dragonbound-valley-reveal.png") center/cover no-repeat;
}
.dragonbound-new-game-image--adoption{
  background:#000 url("assets/dragonbound/dragonbound-adoption-centre.png") center/cover no-repeat;
}
.dragonbound-new-game-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0;
  pointer-events:none;
  background:#000;
  transition:opacity .8s ease;
}
.dragonbound-adoption-effects,
.dragonbound-video-continue{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s ease}
.dragonbound-adoption-effects{z-index:46;overflow:hidden}
.dragonbound-video-continue{
  inset:auto 0 4.5% 0;
  text-align:center;
  z-index:63;
  color:#f3e0ae;
  font:700 clamp(12px,.96vw,16px)/1 Georgia,serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  text-shadow:0 2px 10px rgba(0,0,0,.65);
}
.dragonbound-video-continue.is-visible{opacity:1;animation:dragonboundPulsePrompt 1.8s ease-in-out infinite}
.dragonbound-new-game-stage.is-revealed .dragonbound-new-game-image--forest{
  opacity:1;
  animation:dragonboundNewGameBreath 18s ease-in-out infinite 1.2s;
}
.dragonbound-new-game-stage.is-cave .dragonbound-new-game-image--forest{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-cave .dragonbound-new-game-image--cave{
  opacity:1;
  animation:dragonboundNewGameBreath 18s ease-in-out infinite 1.2s;
}
.dragonbound-new-game-stage.is-valley .dragonbound-new-game-image--forest,
.dragonbound-new-game-stage.is-valley .dragonbound-new-game-image--cave{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-valley .dragonbound-new-game-image--valley{
  opacity:1;
  animation:dragonboundNewGameBreath 20s ease-in-out infinite 1.2s;
}
.dragonbound-new-game-stage.is-video .dragonbound-new-game-image--forest,
.dragonbound-new-game-stage.is-video .dragonbound-new-game-image--cave,
.dragonbound-new-game-stage.is-video .dragonbound-new-game-image--valley,
.dragonbound-new-game-stage.is-video .dragonbound-new-game-image--adoption{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-video .dragonbound-new-game-video{opacity:1}
.dragonbound-new-game-stage.is-adoption .dragonbound-new-game-image--forest,
.dragonbound-new-game-stage.is-adoption .dragonbound-new-game-image--cave,
.dragonbound-new-game-stage.is-adoption .dragonbound-new-game-image--valley{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-adoption .dragonbound-new-game-image--adoption{
  opacity:1;
  animation:dragonboundNewGameBreath 19s ease-in-out infinite 1s;
}
.dragonbound-new-game-stage.is-adoption .dragonbound-adoption-effects{opacity:1}
.dragonbound-adoption-winds,.dragonbound-adoption-leaves,.dragonbound-adoption-particles{position:absolute;inset:0;overflow:hidden}
.dragonbound-adoption-breeze{
  position:absolute;left:-18%;width:var(--w);height:var(--h);opacity:var(--o);
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,241,215,.55), rgba(255,255,255,0));
  filter:blur(1.2px);transform:rotate(var(--rot));animation:dragonboundAdoptionBreeze var(--dur) linear infinite;animation-delay:var(--delay);
}
.dragonbound-adoption-leaf{
  position:absolute;left:var(--x);top:var(--top);width:var(--size);height:calc(var(--size) * .58);opacity:var(--alpha);
  background:radial-gradient(circle at 35% 35%, var(--leaf-a) 0 38%, transparent 40%), linear-gradient(135deg, var(--leaf-b), var(--leaf-c));
  border-radius:100% 4% 100% 4%/100% 8% 92% 0%;
  box-shadow:0 0 10px rgba(255,227,163,.08);
  transform:rotate(-18deg); animation:dragonboundAdoptionLeaf var(--dur) linear infinite; animation-delay:var(--delay);
}
.dragonbound-adoption-particle{
  position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:999px;
  background:radial-gradient(circle, rgba(255,238,198,.95), rgba(255,212,121,.5) 52%, rgba(255,255,255,0) 72%);
  opacity:.5; filter:blur(.15px); animation:dragonboundAdoptionMote var(--dur) ease-in-out infinite; animation-delay:var(--delay);
}
.dragonbound-dialogue{
  position:absolute;
  left:4.2%;
  right:4.2%;
  bottom:3.7%;
  z-index:58;
  max-width:61%;
  padding:18px 20px 16px;
  border:1px solid rgba(220,184,112,.78);
  background:linear-gradient(180deg, rgba(5,14,18,.9), rgba(6,18,24,.82));
  box-shadow:0 18px 40px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,231,180,.08);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  color:#ecdcb4;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .34s ease, transform .34s ease;
}
.dragonbound-dialogue.is-visible{
  opacity:1;
  transform:translateY(0);
}
.dragonbound-dialogue-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  color:#d8b97a;
  font:700 clamp(10px,.88vw,15px)/1 Georgia,serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.dragonbound-dialogue-progress{
  color:#9bb4b6;
  font-size:clamp(9px,.78vw,13px);
  letter-spacing:.14em;
}
.dragonbound-dialogue-body{
  min-height:132px;
  font:500 clamp(14px,1.1vw,19px)/1.58 Georgia,serif;
  color:#f0e4c6;
  text-shadow:0 1px 1px rgba(0,0,0,.4);
}
.dragonbound-dialogue-body p{
  margin:0 0 10px;
}
.dragonbound-dialogue-body p:last-child{margin-bottom:0}
.dragonbound-dialogue-body .narration{
  color:#d7d0bd;
  font-style:italic;
}
.dragonbound-dialogue-body .spoken{
  color:#f7e7bf;
}
.dragonbound-dialogue-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(215,186,122,.18);
}
.dragonbound-dialogue-prompt{
  color:#9fb3b5;
  font:700 clamp(10px,.78vw,13px)/1.35 Georgia,serif;
  letter-spacing:.08em;
}
.dragonbound-dialogue-next{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid rgba(218,182,114,.48)!important;
  background:linear-gradient(180deg, rgba(7,22,26,.76), rgba(8,16,22,.56))!important;
  color:#f2dfb0!important;
  padding:10px 16px!important;
  min-width:128px;
  border-radius:999px!important;
  font:700 clamp(11px,.84vw,14px)/1 Georgia,serif!important;
  letter-spacing:.14em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:0 0 0 1px rgba(255,227,165,.06), 0 0 18px rgba(51,110,122,.16);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.dragonbound-dialogue-next:hover,
.dragonbound-dialogue-next:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(235,208,147,.82)!important;
  background:linear-gradient(180deg, rgba(12,28,33,.88), rgba(8,18,24,.68))!important;
  box-shadow:0 0 0 1px rgba(255,230,178,.1), 0 0 24px rgba(132,205,221,.18), 0 0 14px rgba(255,223,150,.18);
}
.dragonbound-dialogue-next:focus-visible{outline:1px solid rgba(255,226,161,.28)!important;outline-offset:2px!important}

.dragonbound-dialogue--maelith{
  left:2.2%;
  right:auto;
  bottom:2.2%;
  z-index:60;
  width:min(84%, 1360px);
  aspect-ratio:1672 / 941;
  min-height:0;
  max-width:calc(100% - 44px);
  padding:0;
  border:none;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  overflow:visible;
}
.dragonbound-dialogue--maelith::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("assets/dragonbound/dragonbound-maelith-dialogue-frame.png") center/100% 100% no-repeat;
  pointer-events:none;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-head,
.dragonbound-dialogue--maelith .dragonbound-dialogue-body,
.dragonbound-dialogue--maelith .dragonbound-dialogue-footer{
  position:absolute;
  left:38.4%;
  right:6.3%;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-head{
  top:10.2%;
  margin:0;
  color:#e5c98f;
  text-shadow:0 1px 1px rgba(0,0,0,.5);
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-progress{color:#b7cad0}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body{
  top:24.1%;
  bottom:24.8%;
  min-height:0;
  overflow:hidden;
  font:500 clamp(11px,.9vw,16px)/1.32 Georgia,serif;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body p{margin:0 0 6px}
.dragonbound-dialogue--maelith .dragonbound-dialogue-footer{
  bottom:9.4%;
  margin:0;
  padding-top:0;
  border-top:none;
  align-items:center;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-prompt{color:#9db3b9;max-width:66%;font-size:clamp(10px,.72vw,12px)}
.dragonbound-dialogue--maelith .dragonbound-dialogue-next{min-width:114px;padding:9px 14px!important}
@media(max-width:1400px){
  .dragonbound-dialogue--maelith{width:min(86%, 1260px)}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-head,
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body,
  .dragonbound-dialogue--maelith .dragonbound-dialogue-footer{left:39%;right:6%}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{font-size:clamp(10px,.88vw,14px);line-height:1.29}
}
@media(max-width:1100px){
  .dragonbound-dialogue--maelith{width:min(92%, 1040px)}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-head,
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body,
  .dragonbound-dialogue--maelith .dragonbound-dialogue-footer{left:40.4%;right:5.2%}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{top:23.6%;bottom:23.8%;font-size:11px;line-height:1.26}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-prompt{max-width:60%}
}
@media(max-width:900px){
  .dragonbound-dialogue--maelith{left:2%;width:min(95%, 920px);bottom:2%;}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{font-size:10px;line-height:1.22}
}
.dragonbound-dialogue-end-note{
  position:absolute;
  left:50%;
  bottom:4.6%;
  transform:translateX(-50%);
  z-index:57;
  padding:10px 14px;
  border:1px solid rgba(210,180,112,.42);
  background:rgba(5,14,18,.58);
  color:#f0e0b5;
  font:700 clamp(10px,.82vw,13px)/1 Georgia,serif;
  letter-spacing:.18em;
  text-transform:uppercase;
  opacity:0;
  transition:opacity .36s ease;
  pointer-events:none;
}
.dragonbound-dialogue-end-note.is-visible{opacity:.8}
.dragonbound-blackout{
  position:absolute;
  inset:0;
  z-index:72;
  background:#000;
  opacity:0;
  pointer-events:none;
  transition:opacity .72s ease;
}
.dragonbound-blackout.is-black{opacity:1}
.dragonbound-overlay.is-new-game .dragonbound-menu-actions,
.dragonbound-overlay.is-new-game .dragonbound-menu-feedback{pointer-events:none!important;opacity:0!important}
.dragonbound-overlay.is-new-game .dragonbound-scene{visibility:hidden}
@keyframes dragonboundNewGameBreath{
  0%,100%{transform:translate3d(0,0,0) scale(1.018)}
  35%{transform:translate3d(-3px,-2px,0) scale(1.024)}
  68%{transform:translate3d(3px,2px,0) scale(1.021)}
}
@media(max-width:1200px){
  .dragonbound-dialogue{max-width:68%;bottom:3.2%;padding:16px 18px 14px}
  .dragonbound-dialogue-body{min-height:118px;font-size:clamp(13px,1.06vw,18px)}
}
@media(max-width:900px){
  .dragonbound-menu-action{left:58.5%;width:20%}
  .dragonbound-menu-feedback{left:57.6%;width:21.5%;top:57.2%}
  .dragonbound-dialogue{left:3.2%;right:3.2%;bottom:2.4%;max-width:none;padding:14px 15px 13px}
  .dragonbound-dialogue-body{min-height:104px;line-height:1.52}
  .dragonbound-dialogue-footer{flex-direction:column;align-items:flex-start}
  .dragonbound-dialogue-next{min-width:116px}
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-new-game-image{animation:none!important;transform:scale(1.018)!important}
  .dragonbound-dialogue,.dragonbound-dialogue-end-note{transition:none!important}
}


/* V30.9 — Dragonbound modal isolation + prologue typewriter polish */
body.dragonbound-menu-open #repoDashboardV20{
  pointer-events:none!important;
}
body.dragonbound-menu-open #repoDashboardV20 .repo-passport-hover-target{
  pointer-events:none!important;
}
body.dragonbound-menu-open .repo-character-passport-hover,
body.dragonbound-menu-open #repoCharacterPassportHover{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.dragonbound-dialogue-body.is-typing::after{
  content:"";
  display:inline-block;
  width:7px;
  height:1em;
  margin-left:5px;
  vertical-align:-2px;
  background:rgba(238,210,150,.78);
  box-shadow:0 0 8px rgba(238,210,150,.22);
  animation:dragonboundDialogueCaret .72s steps(1,end) infinite;
}
@keyframes dragonboundDialogueCaret{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){
  .dragonbound-dialogue-body.is-typing::after{animation:none!important}
}

@keyframes dragonboundAdoptionBreeze{0%{transform:translateX(0) translateY(0) rotate(var(--rot));opacity:0}10%{opacity:var(--o)}85%{opacity:calc(var(--o) * .65)}100%{transform:translateX(120vw) translateY(-1.2vw) rotate(var(--rot));opacity:0}}
@keyframes dragonboundAdoptionLeaf{0%{transform:translate3d(0,0,0) rotate(-18deg)}40%{transform:translate3d(var(--drift1),32vh,0) rotate(120deg)}75%{transform:translate3d(var(--drift2),68vh,0) rotate(250deg)}100%{transform:translate3d(var(--drift3),104vh,0) rotate(var(--rotEnd))}}
@keyframes dragonboundAdoptionMote{0%,100%{transform:translate3d(0,0,0) scale(.88);opacity:.18}50%{transform:translate3d(1.4vw,-1.8vw,0) scale(1.16);opacity:.72}}
@keyframes dragonboundPulsePrompt{0%,100%{opacity:.68}50%{opacity:1}}


/* V31.4 — Dragonbound main-menu hover cleanup + Maelith dialogue bubble redesign */
.dragonbound-menu-action{
  all: unset;
  position:absolute;
  left:59.15%;
  width:18.3%;
  height:5.7%;
  display:block;
  padding:0!important;
  margin:0!important;
  border:none!important;
  outline:none!important;
  background:none!important;
  box-shadow:none!important;
  color:transparent!important;
  cursor:pointer;
  pointer-events:auto;
  z-index:61;
  -webkit-tap-highlight-color:transparent;
}
.dragonbound-menu-action::before,
.dragonbound-menu-action::after{
  content:none!important;
  display:none!important;
}
.dragonbound-menu-action:hover,
.dragonbound-menu-action:active,
.dragonbound-menu-action:focus,
.dragonbound-menu-action:focus-visible{
  border:none!important;
  outline:none!important;
  background:none!important;
}
.dragonbound-menu-action:hover,
.dragonbound-menu-action:focus-visible{
  box-shadow:0 0 0 1px rgba(246,226,176,.12), 0 0 14px rgba(246,213,135,.14)!important;
  border-radius:999px!important;
}

.dragonbound-dialogue--maelith{
  left:50%;
  right:auto;
  bottom:2.6%;
  width:min(74%, 980px);
  max-width:calc(100% - 48px);
  min-height:228px;
  padding:18px 22px 16px 205px;
  border:1px solid rgba(214,182,113,.74);
  border-radius:28px;
  background:linear-gradient(180deg, rgba(7,18,24,.94), rgba(6,17,22,.86));
  box-shadow:0 22px 48px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,232,182,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  overflow:visible;
  aspect-ratio:auto;
  transform:translateX(-50%) translateY(10px);
}
.dragonbound-dialogue--maelith.is-visible{transform:translateX(-50%) translateY(0)}
.dragonbound-dialogue--maelith::before{
  content:"";
  position:absolute;
  left:18px;
  bottom:18px;
  width:164px;
  height:164px;
  border-radius:50%;
  border:1px solid rgba(219,186,119,.72);
  background:
    radial-gradient(circle at 50% 24%, rgba(255,231,183,.16), transparent 42%),
    radial-gradient(circle at 50% 62%, rgba(6,20,26,.18), rgba(6,18,24,.94) 78%),
    url("assets/dragonbound/dragonbound-maelith-dialogue-frame.png") 8% 38% / 348% 154% no-repeat;
  box-shadow:0 10px 30px rgba(0,0,0,.38), inset 0 0 0 1px rgba(255,236,191,.08);
  pointer-events:none;
}
.dragonbound-dialogue--maelith::after{
  content:"";
  position:absolute;
  left:50%;
  top:-13px;
  width:26px;
  height:26px;
  transform:translateX(-50%) rotate(45deg);
  border-left:1px solid rgba(214,182,113,.74);
  border-top:1px solid rgba(214,182,113,.74);
  background:linear-gradient(135deg, rgba(7,18,24,.95), rgba(8,21,28,.78));
  box-shadow:-8px -8px 18px rgba(0,0,0,.08);
  pointer-events:none;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-head,
.dragonbound-dialogue--maelith .dragonbound-dialogue-body,
.dragonbound-dialogue--maelith .dragonbound-dialogue-footer{
  position:relative;
  left:auto;
  right:auto;
  top:auto;
  bottom:auto;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-head{
  margin:0 0 10px;
  color:#e5c98f;
  text-shadow:0 1px 1px rgba(0,0,0,.5);
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-title{max-width:72%}
.dragonbound-dialogue--maelith .dragonbound-dialogue-progress{color:#b7cad0}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body{
  min-height:116px;
  max-height:152px;
  overflow:hidden;
  font:500 clamp(13px,.96vw,16px)/1.42 Georgia,serif;
  color:#f0e4c6;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body p{margin:0 0 8px}
.dragonbound-dialogue--maelith .dragonbound-dialogue-footer{
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid rgba(215,186,122,.16);
  align-items:center;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-prompt{
  color:#9db3b9;
  max-width:68%;
  font-size:clamp(10px,.72vw,12px);
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-next{
  min-width:114px;
  padding:9px 14px!important;
}
@media(max-width:1400px){
  .dragonbound-dialogue--maelith{width:min(78%, 960px)}
}
@media(max-width:1100px){
  .dragonbound-dialogue--maelith{
    width:min(88%, 900px);
    padding:16px 18px 14px 176px;
    min-height:214px;
  }
  .dragonbound-dialogue--maelith::before{
    width:138px;
    height:138px;
    left:18px;
    bottom:20px;
  }
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{
    min-height:106px;
    max-height:146px;
    font-size:13px;
    line-height:1.36;
  }
}
@media(max-width:900px){
  .dragonbound-dialogue--maelith{
    width:min(94%, 760px);
    padding:14px 16px 14px 16px;
    min-height:0;
  }
  .dragonbound-dialogue--maelith::before,
  .dragonbound-dialogue--maelith::after{display:none}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{
    min-height:96px;
    max-height:132px;
    font-size:12px;
    line-height:1.34;
  }
  .dragonbound-dialogue--maelith .dragonbound-dialogue-prompt{max-width:58%}
}


/* V31.5 — Dragonbound main-menu text button fix + Maelith bubble text fit fix */
.dragonbound-menu-action{
  position:absolute;
  left:59.15%;
  width:18.3%;
  height:5.7%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0!important;
  margin:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  border:none!important;
  outline:none!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:rgba(73, 50, 35, .94)!important;
  font:700 clamp(22px, 2.05vw, 39px)/1.02 Georgia, serif!important;
  letter-spacing:.04em;
  text-transform:uppercase;
  text-shadow:0 1px 0 rgba(255,241,215,.18), 0 2px 10px rgba(0,0,0,.05);
  cursor:pointer;
  pointer-events:auto;
  overflow:visible;
  -webkit-tap-highlight-color:transparent;
}
.dragonbound-menu-action::before,
.dragonbound-menu-action::after{
  content:none!important;
  display:none!important;
}
.dragonbound-menu-action:hover,
.dragonbound-menu-action:focus,
.dragonbound-menu-action:focus-visible,
.dragonbound-menu-action:active{
  background:transparent!important;
  border:none!important;
  outline:none!important;
  color:rgba(67, 46, 32, 1)!important;
  text-shadow:0 0 12px rgba(255,226,154,.32), 0 0 22px rgba(255,215,122,.22), 0 1px 0 rgba(255,241,215,.32)!important;
  box-shadow:none!important;
}

.dragonbound-dialogue--maelith{
  min-height:286px;
  padding:18px 22px 18px 205px;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body{
  min-height:162px;
  max-height:188px;
  overflow:hidden;
  font:500 clamp(12.5px,.9vw,15px)/1.34 Georgia,serif;
}
.dragonbound-dialogue--maelith .dragonbound-dialogue-body p{margin:0 0 7px}
.dragonbound-dialogue--maelith .dragonbound-dialogue-footer{margin-top:10px;padding-top:10px}
@media(max-width:1400px){
  .dragonbound-dialogue--maelith{min-height:294px}
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{
    min-height:168px;
    max-height:194px;
    font-size:13px;
    line-height:1.32;
  }
}
@media(max-width:1100px){
  .dragonbound-dialogue--maelith{
    min-height:306px;
    padding:16px 18px 16px 176px;
  }
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{
    min-height:176px;
    max-height:202px;
    font-size:12.4px;
    line-height:1.3;
  }
}
@media(max-width:900px){
  .dragonbound-dialogue--maelith{
    min-height:0;
    padding:14px 16px;
  }
  .dragonbound-dialogue--maelith .dragonbound-dialogue-body{
    min-height:112px;
    max-height:168px;
    overflow:auto;
    font-size:12px;
    line-height:1.3;
  }
}


/* V31.6 — invisible menu hotspots + Adoption Centre exterior/interior sequence */
.dragonbound-menu-action{
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-shadow:none!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}
.dragonbound-menu-action:hover,
.dragonbound-menu-action:focus,
.dragonbound-menu-action:focus-visible,
.dragonbound-menu-action:active{
  color:transparent!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.dragonbound-menu-action::before{
  content:""!important;
  display:block!important;
  position:absolute;
  left:14%;right:14%;top:23%;bottom:23%;
  border:0!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at center, rgba(255,242,205,.18) 0%, rgba(255,223,160,.07) 44%, transparent 76%)!important;
  filter:blur(8px);
  opacity:0;
  transform:scale(.92);
  transition:opacity .18s ease, transform .18s ease;
  pointer-events:none;
}
.dragonbound-menu-action::after{content:none!important;display:none!important}
.dragonbound-menu-action:hover::before,
.dragonbound-menu-action:focus-visible::before{opacity:.72;transform:scale(1.02)}

.dragonbound-new-game-image--adoption-interior{
  background:#000 url("assets/dragonbound/dragonbound-adoption-interior.png") center/cover no-repeat;
}
.dragonbound-new-game-stage.is-adoption .dragonbound-new-game-image--adoption-interior,
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--adoption{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--forest,
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--cave,
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--valley{
  opacity:0;
  animation:none;
}
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--adoption-interior{
  opacity:1;
  animation:dragonboundNewGameBreath 20s ease-in-out infinite 1s;
}
.dragonbound-adoption-door-hotspot{
  position:absolute;
  z-index:64;
  left:31.2%;
  top:39.5%;
  width:12.5%;
  height:26%;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0;
  cursor:pointer;
  pointer-events:none;
}
.dragonbound-new-game-stage.is-adoption .dragonbound-adoption-door-hotspot{pointer-events:auto;opacity:1}
.dragonbound-new-game-stage.is-adoption .dragonbound-adoption-door-hotspot:hover,
.dragonbound-new-game-stage.is-adoption .dragonbound-adoption-door-hotspot:focus-visible{
  background:radial-gradient(ellipse at center, rgba(255,218,134,.10), rgba(255,197,92,.035) 48%, transparent 74%)!important;
  filter:drop-shadow(0 0 10px rgba(255,214,128,.2));
}
.dragonbound-adoption-interior-effects{
  position:absolute;
  inset:0;
  z-index:48;
  pointer-events:none;
  opacity:0;
  overflow:hidden;
  transition:opacity .5s ease;
}
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-adoption-interior-effects{opacity:1}
.dragonbound-adoption-interior-shine{
  position:absolute;
  inset:-8%;
  background:linear-gradient(112deg, transparent 22%, rgba(255,237,199,.02) 38%, rgba(255,234,185,.14) 47%, rgba(255,249,225,.22) 50%, rgba(255,232,177,.10) 54%, transparent 67%);
  transform:translateX(-58%);
  mix-blend-mode:screen;
  animation:dragonboundInteriorShine 9s ease-in-out infinite 1.8s;
}
.dragonbound-fire-embers{
  position:absolute;
  left:70.8%;
  top:31.5%;
  width:13.5%;
  height:29%;
  overflow:hidden;
  filter:drop-shadow(0 0 6px rgba(255,139,51,.24));
}
.dragonbound-fire-ember{
  position:absolute;
  left:var(--x);
  bottom:-8%;
  width:var(--size);
  height:var(--size);
  border-radius:999px;
  background:radial-gradient(circle, #fff4bd 0%, #ffc25a 34%, #ef6f24 62%, rgba(221,63,17,0) 78%);
  opacity:0;
  animation:dragonboundFireEmber var(--dur) ease-out infinite;
  animation-delay:var(--delay);
}
@keyframes dragonboundInteriorShine{
  0%,16%{transform:translateX(-58%);opacity:0}
  25%{opacity:.35}
  48%{transform:translateX(58%);opacity:.8}
  61%,100%{transform:translateX(58%);opacity:0}
}
@keyframes dragonboundFireEmber{
  0%{transform:translate3d(0,0,0) scale(.7);opacity:0}
  12%{opacity:.95}
  58%{transform:translate3d(var(--drift),-76px,0) scale(1);opacity:.72}
  100%{transform:translate3d(calc(var(--drift) * 1.4),-150px,0) scale(.35);opacity:0}
}
@media(max-width:900px){
  .dragonbound-adoption-door-hotspot{left:30.5%;top:39%;width:14%;height:27%}
}


/* V31.8 — hard fix: menu hotspots are DIVs, not buttons, so no global button skin can appear. */
.dragonbound-menu-actions .dragonbound-menu-action{
  position:absolute!important;
  left:59.15%!important;
  width:18.3%!important;
  height:5.7%!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:999px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-shadow:none!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-menu-actions .dragonbound-menu-action::before,
.dragonbound-menu-actions .dragonbound-menu-action::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  pointer-events:none!important;
}
.dragonbound-menu-actions .dragonbound-menu-action::before{
  inset:18% 10%!important;
  border:0!important;
  border-radius:999px!important;
  background:radial-gradient(ellipse at center, rgba(255,238,190,.18) 0%, rgba(255,222,155,.06) 46%, transparent 75%)!important;
  filter:blur(8px)!important;
  opacity:0!important;
  transform:scale(.94)!important;
  transition:opacity .16s ease, transform .16s ease!important;
}
.dragonbound-menu-actions .dragonbound-menu-action::after{
  left:24%!important;
  right:24%!important;
  bottom:11%!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(248,222,159,.42),transparent)!important;
  opacity:0!important;
  transform:scaleX(.72)!important;
  transition:opacity .16s ease, transform .16s ease!important;
}
.dragonbound-menu-actions .dragonbound-menu-action:hover,
.dragonbound-menu-actions .dragonbound-menu-action:focus,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible,
.dragonbound-menu-actions .dragonbound-menu-action:active{
  border:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
.dragonbound-menu-actions .dragonbound-menu-action:hover::before,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible::before{
  opacity:.74!important;
  transform:scale(1.02)!important;
}
.dragonbound-menu-actions .dragonbound-menu-action:hover::after,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible::after{
  opacity:.42!important;
  transform:scaleX(1)!important;
}


/* V32.0 — keep the Maelith cinematic unselectable without touching playback */
.dragonbound-new-game-video,
.dragonbound-new-game-video *,
.dragonbound-new-game-stage.is-video{
  -webkit-user-select:none!important;
  user-select:none!important;
  -webkit-user-drag:none!important;
}
.dragonbound-new-game-video{
  pointer-events:none!important;
  outline:none!important;
  border:none!important;
  box-shadow:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-new-game-video::selection,
.dragonbound-new-game-stage.is-video::selection{
  background:transparent!important;
}


/* V32.1 — Dragonbound adoption/interior polish + Bonnie menu */
.dragonbound-video-continue,
.dragonbound-dialogue-prompt{
  display:none!important;
}

/* Hard stop on visible menu pills/borders. Keep only a faint hover shimmer. */
.dragonbound-menu-actions .dragonbound-menu-action,
.dragonbound-menu-actions .dragonbound-menu-action:hover,
.dragonbound-menu-actions .dragonbound-menu-action:focus,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible,
.dragonbound-menu-actions .dragonbound-menu-action:active{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:transparent!important;
}
.dragonbound-menu-actions .dragonbound-menu-action::before{
  content:none!important;
  display:none!important;
}
.dragonbound-menu-actions .dragonbound-menu-action::after{
  left:30%!important;
  right:30%!important;
  bottom:17%!important;
  height:2px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg, transparent 0%, rgba(255,228,164,.08) 18%, rgba(255,235,195,.55) 50%, rgba(255,228,164,.08) 82%, transparent 100%)!important;
  box-shadow:0 0 10px rgba(255,227,163,.18)!important;
  opacity:0!important;
  transform:scaleX(.72)!important;
  filter:none!important;
}
.dragonbound-menu-actions .dragonbound-menu-action:hover::after,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible::after{
  opacity:.95!important;
  transform:scaleX(1)!important;
}

.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--adoption-interior{
  opacity:1;
  animation:dragonboundAdoptionInteriorAlive 18s ease-in-out infinite 0.6s!important;
  transform-origin:50% 50%;
}
@keyframes dragonboundAdoptionInteriorAlive{
  0%{transform:scale(1.014) translate3d(0,0,0)}
  23%{transform:scale(1.022) translate3d(.18%, -.22%, 0)}
  49%{transform:scale(1.018) translate3d(-.14%, .12%, 0)}
  71%{transform:scale(1.024) translate3d(.10%, -.12%, 0)}
  100%{transform:scale(1.014) translate3d(0,0,0)}
}
.dragonbound-adoption-interior-depth,
.dragonbound-adoption-interior-haze,
.dragonbound-adoption-interior-shine,
.dragonbound-adoption-dust{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.dragonbound-adoption-interior-depth{
  background:
    radial-gradient(78% 55% at 50% 52%, rgba(255,223,162,.09) 0%, rgba(255,210,138,.04) 32%, rgba(7,15,22,0) 62%),
    linear-gradient(90deg, rgba(10,16,23,.08) 0%, transparent 26%, transparent 74%, rgba(10,16,23,.08) 100%);
  mix-blend-mode:screen;
  animation:dragonboundInteriorDepthDrift 12s ease-in-out infinite;
}
.dragonbound-adoption-interior-haze{
  inset:-4%;
  background:
    radial-gradient(54% 38% at 52% 46%, rgba(255,225,162,.11) 0%, rgba(255,210,145,.07) 34%, rgba(255,204,128,0) 70%),
    radial-gradient(35% 28% at 73% 40%, rgba(255,168,88,.06) 0%, rgba(255,168,88,0) 76%);
  opacity:.48;
  mix-blend-mode:screen;
  animation:dragonboundInteriorHaze 8.8s ease-in-out infinite;
}
.dragonbound-adoption-interior-shine{
  position:absolute;
  inset:-8%;
  background:linear-gradient(112deg, transparent 23%, rgba(255,237,199,.02) 38%, rgba(255,234,185,.13) 47%, rgba(255,249,225,.19) 50%, rgba(255,232,177,.08) 54%, transparent 67%);
  transform:translateX(-58%);
  mix-blend-mode:screen;
  animation:dragonboundInteriorShine 9.5s ease-in-out infinite 1.8s;
}
.dragonbound-adoption-dust{overflow:hidden;opacity:.9}
.dragonbound-adoption-dust-mote{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  height:var(--size);
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,241,199,.98) 0%, rgba(255,210,128,.76) 38%, rgba(255,199,104,0) 72%);
  opacity:0;
  filter:blur(.2px);
  animation:dragonboundAdoptionDust var(--dur) ease-in-out infinite;
  animation-delay:var(--delay);
}
.dragonbound-fire-embers{
  position:absolute;
  left:71.5%;
  top:27.2%;
  width:10.8%;
  height:22.5%;
  overflow:hidden;
  filter:drop-shadow(0 0 7px rgba(255,139,51,.26));
}
.dragonbound-fire-ember{bottom:2%}
@keyframes dragonboundInteriorDepthDrift{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(.35%,-.28%,0)}
}
@keyframes dragonboundInteriorHaze{
  0%,100%{transform:translate3d(-1.2%,0,0) scale(1);opacity:.34}
  50%{transform:translate3d(1.2%,-1.1%,0) scale(1.03);opacity:.55}
}
@keyframes dragonboundAdoptionDust{
  0%{transform:translate3d(0,10px,0) scale(.8);opacity:0}
  15%{opacity:.55}
  65%{transform:translate3d(6px,-18px,0) scale(1);opacity:.35}
  100%{transform:translate3d(10px,-36px,0) scale(.75);opacity:0}
}
.dragonbound-bonnie-hotspot{
  position:absolute;
  z-index:66;
  left:33.5%;
  top:27.5%;
  width:29%;
  height:52%;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0;
  cursor:pointer;
  pointer-events:none;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-bonnie-hotspot{pointer-events:auto;opacity:1}
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-bonnie-hotspot:hover,
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-bonnie-hotspot:focus-visible{
  background:radial-gradient(ellipse at center, rgba(255,227,160,.08), rgba(255,212,128,.024) 50%, transparent 72%)!important;
  filter:drop-shadow(0 0 10px rgba(255,226,161,.14));
}
.dragonbound-bonnie-menu-overlay{
  position:absolute;
  inset:0;
  z-index:80;
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
}
.dragonbound-bonnie-menu-overlay.is-visible{opacity:1;pointer-events:auto}
.dragonbound-bonnie-menu-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at center, rgba(10,18,26,.06) 0%, rgba(5,9,14,.42) 58%, rgba(3,6,10,.78) 100%);
  backdrop-filter:blur(1.8px);
}
.dragonbound-bonnie-menu-shell{
  position:absolute;
  left:50%;
  top:52%;
  width:min(86%, 1040px);
  aspect-ratio:1856 / 945;
  transform:translate(-50%,-50%) scale(.965);
  opacity:0;
  filter:drop-shadow(0 26px 42px rgba(0,0,0,.48));
}
.dragonbound-bonnie-menu-overlay.is-visible .dragonbound-bonnie-menu-shell{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
  transition:transform .28s ease, opacity .28s ease;
  animation:dragonboundBonnieMenuFloat 8.5s ease-in-out infinite .32s;
}
.dragonbound-bonnie-menu-frame,
.dragonbound-bonnie-menu-shine,
.dragonbound-bonnie-menu-motes{position:absolute;inset:0;pointer-events:none}
.dragonbound-bonnie-menu-frame{background:center/contain no-repeat}
.dragonbound-bonnie-menu-shine{
  inset:-4%;
  background:linear-gradient(112deg, transparent 22%, rgba(255,249,229,0) 36%, rgba(255,245,215,.08) 46%, rgba(255,246,225,.18) 50%, rgba(255,241,208,.08) 55%, transparent 68%);
  mix-blend-mode:screen;
  transform:translateX(-60%);
  animation:dragonboundBonnieMenuShine 7s ease-in-out infinite 1s;
}
.dragonbound-bonnie-menu-motes{overflow:hidden}
.dragonbound-bonnie-menu-mote{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  height:var(--size);
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,236,181,.95) 0%, rgba(255,209,116,.55) 42%, rgba(255,209,116,0) 72%);
  opacity:0;
  animation:dragonboundBonnieMenuMote var(--dur) ease-in-out infinite;
  animation-delay:var(--delay);
}
.dragonbound-bonnie-menu-close{
  position:absolute;
  top:6.2%;
  right:6.6%;
  width:4.6%;
  aspect-ratio:1;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  color:transparent!important;
  box-shadow:none!important;
  z-index:2;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-bonnie-menu-close:hover,
.dragonbound-bonnie-menu-close:focus-visible{
  background:radial-gradient(circle, rgba(255,237,196,.15), rgba(255,214,132,.04) 50%, transparent 72%)!important;
  border-radius:999px;
}
@keyframes dragonboundBonnieMenuFloat{
  0%,100%{transform:translate(-50%,-50%) scale(1)}
  50%{transform:translate(-50%,-50.55%) scale(1.006)}
}
@keyframes dragonboundBonnieMenuShine{
  0%,18%{transform:translateX(-60%);opacity:0}
  28%{opacity:.32}
  50%{transform:translateX(56%);opacity:.78}
  62%,100%{transform:translateX(56%);opacity:0}
}
@keyframes dragonboundBonnieMenuMote{
  0%{transform:translate3d(0,10px,0) scale(.85);opacity:0}
  18%{opacity:.62}
  70%{transform:translate3d(2px,-18px,0) scale(1);opacity:.28}
  100%{transform:translate3d(6px,-32px,0) scale(.8);opacity:0}
}
@media(max-width:900px){
  .dragonbound-fire-embers{left:71.2%;top:27.6%;width:11.3%;height:22.2%}
  .dragonbound-bonnie-hotspot{left:31.5%;top:26%;width:33%;height:55%}
  .dragonbound-bonnie-menu-shell{width:min(94%, 980px)}
}


/* V32.2 — Bonnie click sound, menu button cleanup, adoption-centre polish */
.dragonbound-open-button .dragonbound-home-icon{
  width:28px!important;
  height:28px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
}
.dragonbound-open-button .dragonbound-home-icon::before{
  content:none!important;
  display:none!important;
}
.dragonbound-open-button .dragonbound-home-icon img{
  width:28px!important;
  height:28px!important;
  object-fit:contain!important;
  display:block!important;
  image-rendering:auto;
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));
}
.dragonbound-open-button .activity-button-copy>span{
  letter-spacing:.03em!important;
}
#openDragonbound .activity-button-copy>span,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{
  font-size:6px!important;
  line-height:1.02!important;
  white-space:nowrap!important;
}

/* Remove all visible menu hotspot fills/borders entirely. */
.dragonbound-menu-action,
.dragonbound-menu-action:hover,
.dragonbound-menu-action:focus,
.dragonbound-menu-action:focus-visible,
.dragonbound-menu-action:active,
.dragonbound-menu-actions .dragonbound-menu-action,
.dragonbound-menu-actions .dragonbound-menu-action:hover,
.dragonbound-menu-actions .dragonbound-menu-action:focus,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible,
.dragonbound-menu-actions .dragonbound-menu-action:active{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-image:none!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  color:transparent!important;
  -webkit-tap-highlight-color:transparent!important;
  user-select:none!important;
}
.dragonbound-menu-action::before,
.dragonbound-menu-action::after,
.dragonbound-menu-actions .dragonbound-menu-action::before,
.dragonbound-menu-actions .dragonbound-menu-action::after{
  content:none!important;
  display:none!important;
}

/* Bonnie menu close button should be an invisible hotspot exactly over the X graphic. */
.dragonbound-bonnie-menu-close,
.dragonbound-bonnie-menu-close:hover,
.dragonbound-bonnie-menu-close:focus,
.dragonbound-bonnie-menu-close:focus-visible,
.dragonbound-bonnie-menu-close:active{
  top:3.8%!important;
  right:3.8%!important;
  width:8.1%!important;
  aspect-ratio:1!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-bonnie-menu-close::before,
.dragonbound-bonnie-menu-close::after{
  content:none!important;
  display:none!important;
}

/* Kill the swipey shine in the adoption-centre interior; keep the room alive in subtler ways. */
.dragonbound-adoption-interior-shine{
  display:none!important;
  animation:none!important;
  opacity:0!important;
}

/* Slightly lift and tighten the ember zone so the particles stay inside the firebox. */
.dragonbound-fire-embers{
  left:71.9%!important;
  top:25.4%!important;
  width:9.7%!important;
  height:18.4%!important;
  overflow:hidden!important;
}
.dragonbound-fire-ember{
  bottom:8%!important;
}

/* Remove the continue helper text globally. */
.dragonbound-video-continue,
.dragonbound-dialogue-prompt,
.dragonbound-flight-prompt,
.dragonbound-anykey-prompt{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}

/* Keep the adoption interior feeling alive, but subtle. */
.dragonbound-new-game-stage.is-adoption-interior .dragonbound-new-game-image--adoption-interior{
  animation:dragonboundAdoptionInteriorAliveSoft 15s ease-in-out infinite .4s!important;
}
@keyframes dragonboundAdoptionInteriorAliveSoft{
  0%{transform:scale(1.012) translate3d(0,0,0)}
  30%{transform:scale(1.018) translate3d(.12%,-.16%,0)}
  62%{transform:scale(1.015) translate3d(-.10%,.10%,0)}
  100%{transform:scale(1.012) translate3d(0,0,0)}
}
.dragonbound-adoption-interior-haze{
  opacity:.24!important;
  animation:dragonboundInteriorHazeSoft 10s ease-in-out infinite!important;
}
.dragonbound-adoption-interior-depth{
  opacity:.58!important;
}
.dragonbound-adoption-dust{opacity:.68!important}
@keyframes dragonboundInteriorHazeSoft{
  0%,100%{transform:translate3d(-.8%,0,0) scale(1);opacity:.18}
  50%{transform:translate3d(.85%,-.6%,0) scale(1.018);opacity:.28}
}

/* Bonnie menu polish */
.dragonbound-bonnie-menu-shell{
  width:min(88%, 1080px)!important;
}
.dragonbound-bonnie-menu-backdrop{
  background:radial-gradient(circle at center, rgba(10,18,26,.04) 0%, rgba(5,9,14,.35) 58%, rgba(3,6,10,.72) 100%)!important;
}


/* V32.3 — Dragonbound menu cleanup, bigger icon, Bonnie close hotspot fix, prologue polish */
#openDragonbound,
button[data-repo-dash-label="DRAGONBOUND"]{
  min-width:78px!important;
}
.dragonbound-open-button .dragonbound-home-icon{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  flex:0 0 34px!important;
}
.dragonbound-open-button .dragonbound-home-icon img{
  width:34px!important;
  height:34px!important;
}
#openDragonbound .activity-button-copy,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy{
  min-height:16px!important;
  overflow:visible!important;
}
#openDragonbound .activity-button-copy>span,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{
  font-size:5.2px!important;
  line-height:1.0!important;
  letter-spacing:-.015em!important;
  white-space:nowrap!important;
  transform:none!important;
  text-shadow:none!important;
}

/* Absolute kill-switch for visible main-menu hovers. */
.dragonbound-menu-actions,
.dragonbound-menu-action{
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-menu-action,
.dragonbound-menu-action:hover,
.dragonbound-menu-action:focus,
.dragonbound-menu-action:focus-visible,
.dragonbound-menu-action:active,
.dragonbound-menu-action[data-dragonbound-action],
.dragonbound-menu-action[data-dragonbound-action]:hover,
.dragonbound-menu-action[data-dragonbound-action]:focus,
.dragonbound-menu-action[data-dragonbound-action]:focus-visible,
.dragonbound-menu-action[data-dragonbound-action]:active{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  filter:none!important;
}
.dragonbound-menu-action::before,
.dragonbound-menu-action::after,
.dragonbound-menu-action:hover::before,
.dragonbound-menu-action:hover::after,
.dragonbound-menu-action:focus-visible::before,
.dragonbound-menu-action:focus-visible::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Bonnie close hotspot must stay invisible. */
.dragonbound-bonnie-menu-close,
.dragonbound-bonnie-menu-close:hover,
.dragonbound-bonnie-menu-close:focus,
.dragonbound-bonnie-menu-close:focus-visible,
.dragonbound-bonnie-menu-close:active{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  color:transparent!important;
  text-shadow:none!important;
}
.dragonbound-bonnie-menu-close::before,
.dragonbound-bonnie-menu-close::after,
.dragonbound-bonnie-menu-close:hover::before,
.dragonbound-bonnie-menu-close:hover::after,
.dragonbound-bonnie-menu-close:focus-visible::before,
.dragonbound-bonnie-menu-close:focus-visible::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
}


/* V32.4 — Second Nest dialogue + Adopt Egg popup + final hover cleanup */
.dragonbound-dialogue-prompt{display:none!important;}
.dragonbound-dialogue .speaker{
  margin:.15rem 0 .08rem!important;
  font-size:.78em!important;
  letter-spacing:.14em!important;
  font-weight:800!important;
  color:#f1d490!important;
  text-transform:uppercase!important;
}
.dragonbound-dialogue--adoption,
.dragonbound-dialogue--bonnie{
  width:min(86%, 980px)!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  bottom:4.6%!important;
}
.dragonbound-dialogue--adoption .dragonbound-dialogue-body,
.dragonbound-dialogue--bonnie .dragonbound-dialogue-body{
  max-height:210px!important;
}
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:hover,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:focus,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:focus-visible,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:active{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
}
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action::before,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action::after,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:hover::before,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:hover::after,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:focus-visible::before,
.dragonbound-shell .dragonbound-menu-actions .dragonbound-menu-action:focus-visible::after{
  content:none!important;
  display:none!important;
  opacity:0!important;
  background:none!important;
}
.dragonbound-adoption-interior-shine{display:none!important;}
.dragonbound-adoption-interior-depth{animation:dragonboundInteriorFloat 16s ease-in-out infinite; opacity:.24;}
.dragonbound-adoption-interior-haze{opacity:.18!important; animation:dragonboundInteriorHaze 12s ease-in-out infinite;}
.dragonbound-adoption-dust{opacity:.62!important;}
.dragonbound-fire-embers{
  left:71.2%!important;
  top:28.7%!important;
  width:11.4%!important;
  height:21.5%!important;
}
@keyframes dragonboundInteriorFloat{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-0.6%,0) scale(1.008)}
}
@keyframes dragonboundInteriorHaze{
  0%,100%{transform:translate3d(0,0,0);opacity:.15}
  50%{transform:translate3d(0,-0.4%,0);opacity:.21}
}
.dragonbound-bonnie-menu-action,
.dragonbound-adopt-menu-action,
.dragonbound-adopt-menu-close,
.dragonbound-bonnie-menu-close{
  position:absolute;
  z-index:4;
  padding:0!important;
  margin:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:none!important;
  outline:none!important;
  box-shadow:none!important;
  color:transparent!important;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-bonnie-menu-action::before,
.dragonbound-adopt-menu-action::before,
.dragonbound-adopt-menu-close::before,
.dragonbound-bonnie-menu-close::before,
.dragonbound-bonnie-menu-action::after,
.dragonbound-adopt-menu-action::after,
.dragonbound-adopt-menu-close::after,
.dragonbound-bonnie-menu-close::after{content:none!important;display:none!important;}
.dragonbound-bonnie-menu-action:hover,
.dragonbound-bonnie-menu-action:focus-visible,
.dragonbound-adopt-menu-action:hover,
.dragonbound-adopt-menu-action:focus-visible,
.dragonbound-adopt-menu-close:hover,
.dragonbound-adopt-menu-close:focus-visible,
.dragonbound-bonnie-menu-close:hover,
.dragonbound-bonnie-menu-close:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}
.dragonbound-bonnie-menu-action:hover,
.dragonbound-bonnie-menu-action:focus-visible,
.dragonbound-adopt-menu-action:hover,
.dragonbound-adopt-menu-action:focus-visible{
  border-radius:24px!important;
  box-shadow:0 0 0 1px rgba(255,229,170,.18),0 0 18px rgba(255,221,154,.16) inset,0 0 20px rgba(255,220,150,.16)!important;
}
.dragonbound-bonnie-menu-action--adopt{left:4.4%;top:25%;width:28.8%;height:58%;}
.dragonbound-bonnie-menu-action--study{left:35.2%;top:25%;width:29.3%;height:58%;}
.dragonbound-bonnie-menu-action--shop{left:66.7%;top:25%;width:28.4%;height:58%;}
.dragonbound-bonnie-menu-close{right:1.6%!important;top:1.7%!important;width:5.8%!important;height:11%!important;border-radius:18px!important;}
.dragonbound-adopt-menu-overlay{
  position:absolute; inset:0; z-index:84; opacity:0; pointer-events:none; transition:opacity .28s ease;
}
.dragonbound-adopt-menu-overlay.is-visible{opacity:1;pointer-events:auto;}
.dragonbound-adopt-menu-backdrop{position:absolute;inset:0;background:radial-gradient(circle at center, rgba(12,22,32,.1), rgba(4,8,12,.65) 72%, rgba(2,5,8,.86));}
.dragonbound-adopt-menu-shell{position:absolute;left:50%;top:51%;width:min(94%, 1120px);aspect-ratio:1591/1000;transform:translate(-50%,-50%) scale(.96);transition:transform .28s ease;filter:drop-shadow(0 18px 44px rgba(0,0,0,.48));}
.dragonbound-adopt-menu-overlay.is-visible .dragonbound-adopt-menu-shell{transform:translate(-50%,-50%) scale(1);}
.dragonbound-adopt-menu-frame,.dragonbound-adopt-menu-glow,.dragonbound-adopt-menu-motes{position:absolute;inset:0;pointer-events:none;}
.dragonbound-adopt-menu-frame{background:center/contain no-repeat;}
.dragonbound-adopt-menu-glow{background:radial-gradient(circle at 50% 42%, rgba(255,232,184,.12), transparent 34%), radial-gradient(circle at 50% 58%, rgba(255,243,214,.08), transparent 52%); mix-blend-mode:screen;}
.dragonbound-adopt-menu-motes{overflow:hidden;}
.dragonbound-adopt-menu-mote{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:999px;background:radial-gradient(circle,#fff6d2 0%, rgba(255,214,121,.66) 44%, rgba(255,214,121,0) 76%);opacity:.28;animation:dragonboundBonnieMote var(--dur) ease-in-out infinite;animation-delay:var(--delay);}
.dragonbound-adopt-menu-close{right:1.4%;top:1.8%;width:5.3%;height:10.2%;border-radius:18px!important;}
.dragonbound-adopt-menu-action--confirm{left:11%;top:80%;width:47%;height:13%;}
.dragonbound-adopt-menu-action--back{left:61.5%;top:80%;width:24.5%;height:13%;}
#openDragonbound,
button[data-repo-dash-label="DRAGONBOUND"]{min-width:88px!important;}
.dragonbound-open-button .dragonbound-home-icon{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;flex:0 0 42px!important;}
.dragonbound-open-button .dragonbound-home-icon img{width:42px!important;height:42px!important;object-fit:contain!important;}
#openDragonbound .activity-button-copy,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy{min-height:20px!important;max-width:70px!important;overflow:hidden!important;}
#openDragonbound .activity-button-copy>span,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{font-size:4.8px!important;line-height:1!important;letter-spacing:-.02em!important;white-space:nowrap!important;display:block!important;width:100%!important;overflow:hidden!important;text-overflow:clip!important;}


/* V32.5 — Invisible hotspot cleanup + Bonnie chat panel */
.dragonbound-menu-actions .dragonbound-menu-action,
.dragonbound-menu-actions .dragonbound-menu-action:hover,
.dragonbound-menu-actions .dragonbound-menu-action:focus,
.dragonbound-menu-actions .dragonbound-menu-action:focus-visible,
.dragonbound-menu-actions .dragonbound-menu-action:active,
.dragonbound-bonnie-menu-action,
.dragonbound-bonnie-menu-action:hover,
.dragonbound-bonnie-menu-action:focus,
.dragonbound-bonnie-menu-action:focus-visible,
.dragonbound-bonnie-menu-action:active,
.dragonbound-adopt-menu-action,
.dragonbound-adopt-menu-action:hover,
.dragonbound-adopt-menu-action:focus,
.dragonbound-adopt-menu-action:focus-visible,
.dragonbound-adopt-menu-action:active,
.dragonbound-bonnie-menu-close,
.dragonbound-bonnie-menu-close:hover,
.dragonbound-bonnie-menu-close:focus,
.dragonbound-bonnie-menu-close:focus-visible,
.dragonbound-bonnie-menu-close:active,
.dragonbound-adopt-menu-close,
.dragonbound-adopt-menu-close:hover,
.dragonbound-adopt-menu-close:focus,
.dragonbound-adopt-menu-close:focus-visible,
.dragonbound-adopt-menu-close:active{
  opacity:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  filter:none !important;
}
.dragonbound-menu-actions .dragonbound-menu-action::before,
.dragonbound-menu-actions .dragonbound-menu-action::after,
.dragonbound-bonnie-menu-action::before,
.dragonbound-bonnie-menu-action::after,
.dragonbound-adopt-menu-action::before,
.dragonbound-adopt-menu-action::after,
.dragonbound-bonnie-menu-close::before,
.dragonbound-bonnie-menu-close::after,
.dragonbound-adopt-menu-close::before,
.dragonbound-adopt-menu-close::after{content:none !important;display:none !important;}

.dragonbound-dialogue--bonnie .dragonbound-dialogue-head{margin-bottom:.5rem;}
.dragonbound-dialogue--bonnie .dragonbound-dialogue-title:empty{display:none;}
.dragonbound-dialogue .speaker{display:block; clear:both; margin:.6rem 0 .1rem !important;}
.dragonbound-dialogue .speaker:first-child{margin-top:0 !important;}
.dragonbound-dialogue .speaker + .spoken{display:block; margin-bottom:.38rem;}
.dragonbound-dialogue .spoken + .speaker{margin-top:.7rem !important;}

.dragonbound-bonnie-menu-overlay .dragonbound-bonnie-menu-shell{
  top:42% !important;
}
.dragonbound-bonnie-chat-wrap{
  position:absolute;
  left:50%;
  top:74%;
  transform:translateX(-50%);
  width:min(84%, 980px);
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px;
}
.dragonbound-bonnie-chat-launch{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(230,203,140,.42);
  border-radius:999px;
  background:linear-gradient(180deg, rgba(10,30,42,.94), rgba(6,18,26,.96));
  color:#f4e4b2;
  font:700 clamp(14px,1.1vw,18px)/1.1 Georgia,serif;
  letter-spacing:.04em;
  padding:12px 22px;
  box-shadow:0 10px 28px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,239,198,.08);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dragonbound-bonnie-chat-launch:hover,
.dragonbound-bonnie-chat-launch:focus-visible,
.dragonbound-bonnie-chat-launch.is-active{
  transform:translateY(-1px);
  border-color:rgba(243,223,165,.68);
  box-shadow:0 12px 32px rgba(0,0,0,.38), 0 0 0 1px rgba(243,223,165,.16), 0 0 18px rgba(247,220,152,.14), inset 0 1px 0 rgba(255,239,198,.12);
  outline:none;
}
.dragonbound-bonnie-chat-options{
  width:min(92%, 1040px);
  display:none;
  grid-template-columns:1fr;
  gap:8px;
  padding:14px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(7,20,29,.92), rgba(5,13,20,.94));
  border:1px solid rgba(217,188,124,.26);
  box-shadow:0 18px 38px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,245,214,.06);
  backdrop-filter:blur(10px);
}
.dragonbound-bonnie-chat-options.is-visible{display:grid;}
.dragonbound-bonnie-chat-option{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  text-align:left;
  border:none;
  border-radius:14px;
  padding:12px 14px;
  background:linear-gradient(180deg, rgba(13,35,49,.95), rgba(8,22,31,.95));
  color:#efe1bb;
  font:600 clamp(13px,1vw,16px)/1.3 Georgia,serif;
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.dragonbound-bonnie-chat-option:hover,
.dragonbound-bonnie-chat-option:focus-visible{
  transform:translateY(-1px);
  outline:none;
  background:linear-gradient(180deg, rgba(17,43,59,.98), rgba(10,27,38,.98));
  box-shadow:0 0 0 1px rgba(255,230,176,.18), 0 0 16px rgba(255,218,134,.12);
}
@media (max-width: 960px){
  .dragonbound-bonnie-menu-overlay .dragonbound-bonnie-menu-shell{top:39% !important; width:min(95%, 980px) !important;}
  .dragonbound-bonnie-chat-wrap{top:73%; width:min(92%, 920px);}
}
@media (max-width: 700px){
  .dragonbound-bonnie-menu-overlay .dragonbound-bonnie-menu-shell{top:35% !important;}
  .dragonbound-bonnie-chat-wrap{top:68%;}
  .dragonbound-bonnie-chat-launch{font-size:13px; padding:10px 16px;}
  .dragonbound-bonnie-chat-options{padding:10px; gap:6px;}
  .dragonbound-bonnie-chat-option{padding:10px 12px; font-size:12px;}
}


/* V32.6 — Bonnie chat redesign: themed, compact, all options visible */
.dragonbound-bonnie-chat-wrap{
  position:absolute!important;
  left:50%!important;
  top:69%!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  width:min(78%, 920px)!important;
  max-height:none!important;
  z-index:6!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:9px!important;
  pointer-events:auto!important;
}

.dragonbound-bonnie-chat-launch{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-width:0!important;
  width:min(54%, 500px)!important;
  max-width:500px!important;
  border:1px solid rgba(204,175,108,.58)!important;
  border-radius:14px!important;
  background:
    linear-gradient(180deg, rgba(11,38,43,.98) 0%, rgba(7,27,32,.99) 100%)!important;
  color:#f1dfae!important;
  font:700 clamp(13px,1vw,16px)/1.1 Georgia,serif!important;
  letter-spacing:.055em!important;
  padding:11px 18px!important;
  box-shadow:
    0 0 0 1px rgba(5,14,17,.86) inset,
    0 8px 22px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,239,195,.07)!important;
  text-shadow:0 1px 1px rgba(0,0,0,.55)!important;
  cursor:pointer!important;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, filter .16s ease!important;
}
.dragonbound-bonnie-chat-launch:hover,
.dragonbound-bonnie-chat-launch:focus-visible,
.dragonbound-bonnie-chat-launch.is-active{
  transform:translateY(-1px)!important;
  border-color:rgba(231,203,139,.82)!important;
  filter:brightness(1.035)!important;
  outline:none!important;
  box-shadow:
    0 0 0 1px rgba(5,14,17,.86) inset,
    0 10px 26px rgba(0,0,0,.40),
    0 0 14px rgba(220,189,116,.12),
    inset 0 1px 0 rgba(255,239,195,.10)!important;
}

.dragonbound-bonnie-chat-options{
  width:100%!important;
  display:none!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  padding:12px!important;
  border-radius:16px!important;
  background:
    linear-gradient(180deg, rgba(7,24,30,.965) 0%, rgba(5,17,22,.975) 100%)!important;
  border:1px solid rgba(194,164,98,.34)!important;
  box-shadow:
    0 16px 38px rgba(0,0,0,.38),
    0 0 0 1px rgba(4,11,14,.72) inset,
    inset 0 1px 0 rgba(255,240,198,.05)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  max-height:none!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
}
.dragonbound-bonnie-chat-options.is-visible{display:grid!important;}

.dragonbound-bonnie-chat-option{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  min-height:48px!important;
  text-align:left!important;
  border:1px solid rgba(194,163,96,.26)!important;
  border-radius:11px!important;
  padding:10px 13px!important;
  background:
    linear-gradient(180deg, rgba(17,47,50,.97) 0%, rgba(10,33,37,.98) 100%)!important;
  color:#efe0b7!important;
  font:600 clamp(12px,.88vw,14px)/1.25 Georgia,serif!important;
  letter-spacing:.01em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.45)!important;
  box-shadow:
    0 0 0 1px rgba(5,15,17,.52) inset,
    inset 0 1px 0 rgba(255,243,209,.035)!important;
  cursor:pointer!important;
  transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease, filter .14s ease!important;
  white-space:normal!important;
}
.dragonbound-bonnie-chat-option:nth-child(5){grid-column:1 / -1!important;}
.dragonbound-bonnie-chat-option:hover,
.dragonbound-bonnie-chat-option:focus-visible{
  transform:translateY(-1px)!important;
  outline:none!important;
  filter:brightness(1.045)!important;
  border-color:rgba(226,196,126,.58)!important;
  background:
    linear-gradient(180deg, rgba(21,58,60,.99) 0%, rgba(13,39,43,.99) 100%)!important;
  box-shadow:
    0 0 0 1px rgba(5,15,17,.5) inset,
    0 5px 12px rgba(0,0,0,.20),
    0 0 12px rgba(224,194,126,.08)!important;
}

@media (max-width:1100px){
  .dragonbound-bonnie-chat-wrap{
    top:68%!important;
    width:min(84%, 900px)!important;
  }
  .dragonbound-bonnie-chat-launch{
    width:min(62%, 470px)!important;
  }
  .dragonbound-bonnie-chat-option{
    font-size:12px!important;
    min-height:46px!important;
  }
}

@media (max-width:800px){
  .dragonbound-bonnie-chat-wrap{
    top:65%!important;
    width:min(91%, 760px)!important;
  }
  .dragonbound-bonnie-chat-launch{
    width:min(78%, 440px)!important;
    padding:10px 14px!important;
  }
  .dragonbound-bonnie-chat-options{
    grid-template-columns:1fr!important;
    max-height:min(34vh,290px)!important;
    overflow-y:auto!important;
    padding:10px!important;
    gap:7px!important;
  }
  .dragonbound-bonnie-chat-option:nth-child(5){grid-column:auto!important;}
  .dragonbound-bonnie-chat-option{
    min-height:44px!important;
    font-size:12px!important;
    padding:9px 11px!important;
  }
}

@media (max-height:760px) and (min-width:801px){
  .dragonbound-bonnie-chat-wrap{
    top:65%!important;
    width:min(80%, 880px)!important;
  }
  .dragonbound-bonnie-chat-launch{
    width:min(50%, 450px)!important;
    padding:9px 14px!important;
  }
  .dragonbound-bonnie-chat-options{
    gap:6px!important;
    padding:9px!important;
  }
  .dragonbound-bonnie-chat-option{
    min-height:42px!important;
    padding:8px 10px!important;
    font-size:11.5px!important;
  }
}

/* V32.7 — Dragonbound first-egg adoption roll, confirmation + reveal */
.dragonbound-adopt-menu-shell{aspect-ratio:1577/997;}
.dragonbound-adopt-menu-frame{z-index:0;}
.dragonbound-adopt-menu-glow,.dragonbound-adopt-menu-motes{z-index:1;}
.dragonbound-adopt-menu-egg{
  position:absolute;
  left:50%;
  top:18.5%;
  width:32%;
  height:auto;
  z-index:2;
  opacity:0;
  pointer-events:none;
  user-select:none;
  transform:translateX(-50%) scale(.9) translateY(10px);
  transform-origin:50% 82%;
  filter:drop-shadow(0 17px 16px rgba(0,0,0,.42)) drop-shadow(0 0 13px rgba(244,219,153,.12));
  transition:opacity .24s ease, transform .3s cubic-bezier(.2,.8,.25,1);
}
.dragonbound-adopt-menu-egg.is-visible{
  opacity:1;
  transform:translateX(-50%) scale(1) translateY(0);
}
.dragonbound-adopt-menu-egg.is-arriving{animation:dragonboundEggSettle .78s cubic-bezier(.2,.78,.24,1) both;}
.dragonbound-adopt-menu-foreground{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:3;
  pointer-events:none;
  user-select:none;
}
@keyframes dragonboundEggSettle{
  0%{opacity:0;transform:translateX(-50%) scale(.72) translateY(18px);filter:drop-shadow(0 22px 19px rgba(0,0,0,.32)) drop-shadow(0 0 26px rgba(255,229,165,.38));}
  48%{opacity:1;transform:translateX(-50%) scale(1.045) translateY(-3px);filter:drop-shadow(0 17px 16px rgba(0,0,0,.42)) drop-shadow(0 0 25px rgba(255,229,165,.26));}
  100%{opacity:1;transform:translateX(-50%) scale(1) translateY(0);filter:drop-shadow(0 17px 16px rgba(0,0,0,.42)) drop-shadow(0 0 13px rgba(244,219,153,.12));}
}

.dragonbound-adopt-confirmation{
  position:absolute;
  inset:0;
  z-index:98;
  display:grid;
  place-items:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.dragonbound-adopt-confirmation.is-visible{opacity:1;pointer-events:auto;}
.dragonbound-adopt-confirmation-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 44%,rgba(17,38,42,.25),rgba(2,7,10,.82) 66%,rgba(1,4,6,.93));
  backdrop-filter:blur(5px);
}
.dragonbound-adopt-confirmation-panel{
  position:relative;
  width:min(88%,560px);
  padding:34px 34px 28px;
  border:1px solid rgba(221,191,123,.56);
  border-radius:22px;
  background:
    linear-gradient(180deg,rgba(19,48,45,.985),rgba(7,24,26,.99)),
    radial-gradient(circle at 50% 0,rgba(255,231,167,.1),transparent 55%);
  box-shadow:0 28px 70px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,242,204,.13),inset 0 0 0 4px rgba(10,22,22,.6);
  color:#f5e7c5;
  text-align:center;
  transform:translateY(9px) scale(.97);
  transition:transform .22s cubic-bezier(.2,.75,.25,1);
}
.dragonbound-adopt-confirmation.is-visible .dragonbound-adopt-confirmation-panel{transform:translateY(0) scale(1);}
.dragonbound-adopt-confirmation-panel::before{
  content:"";
  position:absolute;
  inset:9px;
  border:1px solid rgba(204,171,99,.2);
  border-radius:15px;
  pointer-events:none;
}
.dragonbound-adopt-confirmation-knot{
  position:absolute;
  left:50%;
  top:-16px;
  width:33px;
  height:33px;
  transform:translateX(-50%) rotate(45deg);
  border:1px solid rgba(238,203,126,.62);
  background:linear-gradient(135deg,#213d34,#0b1d1d 68%);
  box-shadow:0 7px 16px rgba(0,0,0,.35),inset 0 0 0 4px rgba(213,176,93,.08);
}
.dragonbound-adopt-confirmation-title{
  position:relative;
  margin:0 0 13px;
  color:#dfc786;
  font:700 clamp(14px,1.1vw,18px)/1 Georgia,serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.dragonbound-adopt-confirmation-copy{
  position:relative;
  margin:0 auto;
  max-width:430px;
  color:#f7ebcd;
  font:700 clamp(19px,1.65vw,27px)/1.28 Georgia,serif;
  text-shadow:0 2px 10px rgba(0,0,0,.32);
}
.dragonbound-adopt-confirmation-actions{
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  width:min(100%,370px);
  margin:25px auto 0;
}
.dragonbound-adopt-confirmation-button{
  appearance:none;
  -webkit-appearance:none;
  min-height:48px;
  border-radius:13px;
  border:1px solid rgba(220,190,120,.42);
  background:linear-gradient(180deg,rgba(23,61,56,.98),rgba(9,31,31,.98));
  color:#f4e3b9;
  font:700 16px/1 Georgia,serif;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,242,202,.08),0 8px 18px rgba(0,0,0,.24);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.dragonbound-adopt-confirmation-button:hover,
.dragonbound-adopt-confirmation-button:focus-visible{
  transform:translateY(-1px);
  outline:none;
  border-color:rgba(243,214,147,.75);
  background:linear-gradient(180deg,rgba(30,76,68,.99),rgba(12,39,37,.99));
  box-shadow:0 10px 22px rgba(0,0,0,.3),0 0 0 1px rgba(241,211,143,.12),inset 0 1px 0 rgba(255,246,218,.12);
}
.dragonbound-adopt-confirmation-button--yes{color:#fff0c7;}
.dragonbound-adopt-confirmation-button--no{opacity:.88;}

.dragonbound-adoption-roll{
  position:absolute;
  inset:0;
  z-index:116;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  background:radial-gradient(circle at 50% 46%,rgba(28,35,28,.7),rgba(2,5,7,.96) 74%);
  transition:opacity .24s ease;
}
.dragonbound-adoption-roll.is-visible{opacity:1;pointer-events:auto;}
.dragonbound-adoption-roll::before{
  content:"";
  position:absolute;
  inset:-12%;
  background:radial-gradient(circle at 50% 50%,rgba(255,221,142,.08),transparent 46%);
  pointer-events:none;
}
.dragonbound-adoption-roll-stage{position:absolute;inset:0;}
.dragonbound-adoption-roll-opening{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:.5vh .5vw;
  opacity:1;
  transform:scale(1);
  transition:opacity .42s ease,transform .5s ease;
}
.dragonbound-adoption-roll-frame{
  display:block;
  width:auto;
  height:auto;
  max-width:min(98vw,1080px);
  max-height:96vh;
  aspect-ratio:534/484;
  object-fit:contain;
  border-radius:3px;
  user-select:none;
  pointer-events:none;
  filter:drop-shadow(0 30px 52px rgba(0,0,0,.56));
  opacity:1;
  transition:opacity .12s ease,transform .12s ease;
}
.dragonbound-adoption-roll-frame.is-frame-changing{opacity:.82;transform:scale(.996);}
.dragonbound-adoption-roll-reveal{
  position:absolute;
  left:50%;
  top:50%;
  width:min(98%,1280px);
  aspect-ratio:1577/997;
  transform:translate(-50%,-50%) scale(.96);
  opacity:0;
  transition:opacity .5s ease .08s,transform .65s cubic-bezier(.18,.74,.22,1) .04s;
  filter:drop-shadow(0 24px 55px rgba(0,0,0,.54));
  pointer-events:none;
}
.dragonbound-adoption-roll-menu-art,
.dragonbound-adoption-roll-glow,
.dragonbound-adoption-roll-foreground{position:absolute;inset:0;}
.dragonbound-adoption-roll-menu-art{z-index:0;background:center/contain no-repeat;}
.dragonbound-adoption-roll-glow{
  z-index:1;
  left:34%;
  right:34%;
  top:25%;
  bottom:27%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,241,186,.44) 0%,rgba(248,212,126,.18) 32%,rgba(229,180,91,.05) 56%,transparent 74%);
  filter:blur(5px);
  opacity:0;
  transform:scale(.6);
  transition:opacity .45s ease .18s,transform 1.1s cubic-bezier(.15,.7,.2,1) .08s;
}
.dragonbound-adoption-roll-egg{
  position:absolute;
  left:50%;
  top:18.5%;
  width:32%;
  height:auto;
  z-index:2;
  opacity:0;
  transform:translateX(-50%) scale(.58) translateY(22px);
  transform-origin:50% 82%;
  filter:drop-shadow(0 19px 18px rgba(0,0,0,.45)) drop-shadow(0 0 30px rgba(255,231,172,.42));
  transition:opacity .48s ease .16s,transform 1.02s cubic-bezier(.16,.78,.21,1) .1s,filter .8s ease;
  pointer-events:none;
  user-select:none;
}
.dragonbound-adoption-roll-egg.is-visible{opacity:1;transform:translateX(-50%) scale(1) translateY(0);filter:drop-shadow(0 17px 16px rgba(0,0,0,.42)) drop-shadow(0 0 18px rgba(255,231,172,.2));}
.dragonbound-adoption-roll-foreground{
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:3;
  pointer-events:none;
  user-select:none;
}
.dragonbound-adoption-roll.is-revealing .dragonbound-adoption-roll-opening{opacity:0;transform:scale(1.018);}
.dragonbound-adoption-roll.is-revealing .dragonbound-adoption-roll-reveal{opacity:1;transform:translate(-50%,-50%) scale(1);}
.dragonbound-adoption-roll.is-revealing .dragonbound-adoption-roll-glow{opacity:1;transform:scale(1);}

@media (max-width:700px){
  .dragonbound-adopt-confirmation-panel{width:min(92%,500px);padding:29px 20px 22px;border-radius:18px;}
  .dragonbound-adopt-confirmation-copy{font-size:18px;}
  .dragonbound-adopt-confirmation-actions{gap:9px;margin-top:20px;}
  .dragonbound-adopt-confirmation-button{min-height:43px;font-size:14px;}
  .dragonbound-adoption-roll-frame{max-width:96vw;max-height:90vh;}
  .dragonbound-adoption-roll-reveal{width:97%;}
  .dragonbound-adopt-menu-egg,.dragonbound-adoption-roll-egg{width:34%;top:17.5%;}
}
@media (prefers-reduced-motion:reduce){
  .dragonbound-adoption-roll-frame,
  .dragonbound-adoption-roll-opening,
  .dragonbound-adoption-roll-reveal,
  .dragonbound-adoption-roll-glow,
  .dragonbound-adoption-roll-egg,
  .dragonbound-adopt-menu-egg,
  .dragonbound-adopt-confirmation,
  .dragonbound-adopt-confirmation-panel{transition-duration:.01ms!important;animation-duration:.01ms!important;}
}

/* V32.8 — Dragonbound living adopted egg + Study your Dragon field guide */
.dragonbound-adopt-menu-egg{
  top:16.2%;
}
.dragonbound-adopt-menu-egg.is-visible.is-alive:not(.is-arriving){
  animation:dragonboundEggAlive 3.8s ease-in-out infinite;
}
.dragonbound-adopt-menu-egg.is-arriving{
  animation:
    dragonboundEggSettle .78s cubic-bezier(.2,.78,.24,1) both,
    dragonboundEggAlive 3.8s ease-in-out .92s infinite;
}
@keyframes dragonboundEggAlive{
  0%,14%,100%{transform:translateX(-50%) scale(1) translateY(0) rotate(0deg)}
  20%{transform:translateX(-50%) scale(1.006) translateY(-3px) rotate(-1.05deg)}
  24%{transform:translateX(-50%) scale(1.008) translateY(-4px) rotate(1.15deg)}
  28%{transform:translateX(-50%) scale(1.005) translateY(-4px) rotate(-.85deg)}
  32%{transform:translateX(-50%) scale(1.004) translateY(-3px) rotate(.5deg)}
  38%{transform:translateX(-50%) scale(1.002) translateY(-2px) rotate(0deg)}
  58%{transform:translateX(-50%) scale(1.006) translateY(-8px) rotate(.15deg)}
  76%{transform:translateX(-50%) scale(1.002) translateY(-4px) rotate(-.12deg)}
}

.dragonbound-study-overlay{
  position:absolute;
  inset:0;
  z-index:90;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  transition:opacity .28s ease;
}
.dragonbound-study-overlay.is-visible{opacity:1;pointer-events:auto}
.dragonbound-study-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 44%,rgba(35,47,34,.18),rgba(2,7,8,.78) 78%,rgba(1,3,5,.92));
  backdrop-filter:blur(3px);
}
.dragonbound-study-shell{
  position:absolute;
  left:50%;
  top:50%;
  width:min(96vw,calc(93vh * 1.5),1380px);
  aspect-ratio:3/2;
  transform:translate(-50%,-50%) scale(.975);
  transform-origin:center;
  filter:drop-shadow(0 24px 56px rgba(0,0,0,.58));
  transition:transform .3s cubic-bezier(.2,.78,.24,1);
  user-select:none;
}
.dragonbound-study-overlay.is-visible .dragonbound-study-shell{transform:translate(-50%,-50%) scale(1)}
.dragonbound-study-frame,
.dragonbound-study-sheen{position:absolute;inset:0;pointer-events:none}
.dragonbound-study-frame{z-index:0;background:center/contain no-repeat}
.dragonbound-study-sheen{
  z-index:1;
  background:
    radial-gradient(circle at 39% 34%,rgba(255,228,158,.08),transparent 20%),
    linear-gradient(110deg,transparent 24%,rgba(255,240,193,.035) 44%,transparent 62%);
  mix-blend-mode:screen;
}
.dragonbound-study-list{
  position:absolute;
  z-index:4;
  left:3.25%;
  top:14.6%;
  width:22.55%;
  height:65.7%;
  padding:1.1% 1% 1.2%;
  box-sizing:border-box;
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:thin;
  scrollbar-color:#80632d rgba(8,20,17,.4);
}
.dragonbound-study-list::-webkit-scrollbar{width:7px}
.dragonbound-study-list::-webkit-scrollbar-track{background:rgba(7,20,17,.38);border-radius:99px}
.dragonbound-study-list::-webkit-scrollbar-thumb{background:linear-gradient(#b18a43,#654a20);border:1px solid rgba(20,13,5,.65);border-radius:99px}
.dragonbound-study-list-item{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-rows:auto auto;
  align-items:center;
  width:100%;
  min-height:42px;
  margin:0 0 7px;
  padding:7px 10px 6px 12px;
  border:1px solid rgba(170,132,62,.24);
  border-radius:8px;
  background:
    linear-gradient(180deg,rgba(31,49,35,.9),rgba(12,28,24,.92)),
    radial-gradient(circle at 30% 0,rgba(223,188,104,.08),transparent 60%);
  color:#d8bd7a;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 1px rgba(255,237,187,.04),0 2px 5px rgba(0,0,0,.18);
  transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease,color .14s ease;
}
.dragonbound-study-list-item span{
  grid-column:1;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font:700 clamp(10px,.88vw,14px)/1.05 Georgia,serif;
  letter-spacing:.02em;
  text-shadow:0 1px 2px rgba(0,0,0,.75);
}
.dragonbound-study-list-item small{
  grid-column:1;
  margin-top:3px;
  color:#847458;
  font:700 clamp(6px,.5vw,8px)/1 system-ui,sans-serif;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.dragonbound-study-list-item::after{
  content:"";
  grid-column:2;
  grid-row:1 / 3;
  width:8px;
  height:8px;
  margin-left:7px;
  border:1px solid rgba(204,166,83,.5);
  transform:rotate(45deg);
  background:#142d25;
  box-shadow:inset 0 0 0 2px rgba(6,16,14,.8);
}
.dragonbound-study-list-item:hover,
.dragonbound-study-list-item:focus-visible{
  outline:none;
  transform:translateX(2px);
  color:#f0d692;
  border-color:rgba(221,179,89,.58);
  background:linear-gradient(180deg,rgba(42,65,45,.96),rgba(17,38,31,.96));
  box-shadow:inset 0 1px rgba(255,239,191,.07),0 4px 9px rgba(0,0,0,.25);
}
.dragonbound-study-list-item.is-selected{
  color:#f6dda0;
  border-color:rgba(232,192,103,.78);
  background:
    linear-gradient(180deg,rgba(55,77,48,.98),rgba(20,43,34,.98)),
    radial-gradient(circle at 20% 0,rgba(241,203,112,.13),transparent 58%);
  box-shadow:inset 3px 0 0 #c89b43,inset 0 1px rgba(255,245,208,.09),0 4px 11px rgba(0,0,0,.27),0 0 12px rgba(196,151,62,.08);
}
.dragonbound-study-list-item.is-selected::after{background:#9b7836;box-shadow:0 0 9px rgba(223,182,91,.28),inset 0 0 0 2px rgba(64,43,14,.6)}
.dragonbound-study-list-item.is-yours::before{
  content:"YOURS";
  position:absolute;
  right:25px;
  top:7px;
  padding:2px 5px;
  border:1px solid rgba(221,184,96,.36);
  border-radius:99px;
  background:rgba(5,21,18,.72);
  color:#e8ca81;
  font:800 clamp(5px,.42vw,7px)/1 system-ui,sans-serif;
  letter-spacing:.11em;
}
.dragonbound-study-egg{
  position:absolute;
  z-index:3;
  left:39.25%;
  top:34.2%;
  width:18.5%;
  max-height:32%;
  object-fit:contain;
  transform:translate(-50%,-50%);
  transform-origin:50% 78%;
  filter:drop-shadow(0 14px 11px rgba(0,0,0,.42)) drop-shadow(0 0 12px rgba(218,185,108,.1));
  pointer-events:none;
  animation:dragonboundStudyEggIdle 5.4s ease-in-out infinite;
}
@keyframes dragonboundStudyEggIdle{
  0%,100%{transform:translate(-50%,-50%) translateY(0) rotate(0deg)}
  46%{transform:translate(-50%,-50%) translateY(-5px) rotate(-.18deg)}
  58%{transform:translate(-50%,-50%) translateY(-6px) rotate(.18deg)}
}
.dragonbound-study-name{
  position:absolute;
  z-index:4;
  left:50.6%;
  top:17.1%;
  width:41.8%;
  height:7.2%;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  color:#e0c47f;
  font:700 clamp(13px,1.35vw,21px)/1.1 Georgia,serif;
  letter-spacing:.065em;
  text-align:center;
  text-transform:uppercase;
  text-shadow:0 2px 3px rgba(0,0,0,.85),0 0 12px rgba(236,202,118,.08);
}
.dragonbound-study-profile,
.dragonbound-study-found,
.dragonbound-study-type,
.dragonbound-study-history,
.dragonbound-study-threats{
  position:absolute;
  z-index:4;
  box-sizing:border-box;
  color:#3b2b1b;
  font-family:Georgia,'Times New Roman',serif;
  text-shadow:0 1px rgba(255,244,216,.35);
  user-select:text;
}
.dragonbound-study-profile,
.dragonbound-study-found,
.dragonbound-study-type{
  left:51.15%;
  width:39.7%;
  display:flex;
  align-items:center;
  padding:0 .8%;
  overflow:hidden;
  font-size:clamp(8px,.78vw,12.5px);
  font-weight:700;
  line-height:1.22;
}
.dragonbound-study-profile{top:30%;height:4.6%}
.dragonbound-study-found{top:39.2%;height:4.5%}
.dragonbound-study-type{top:48%;height:4.5%;color:#49331c;font-weight:800;letter-spacing:.025em}
.dragonbound-study-history{
  left:30.5%;
  top:57.35%;
  width:60.5%;
  height:17%;
  padding:.5% 1.15% .8% .4%;
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:#8a692d transparent;
  font-size:clamp(8px,.78vw,12.5px);
  line-height:1.42;
}
.dragonbound-study-history p{margin:0 0 .62em}
.dragonbound-study-history p:last-child{margin-bottom:0}
.dragonbound-study-history::-webkit-scrollbar,
.dragonbound-study-threats::-webkit-scrollbar{width:5px}
.dragonbound-study-history::-webkit-scrollbar-thumb,
.dragonbound-study-threats::-webkit-scrollbar-thumb{background:#826126;border-radius:99px}
.dragonbound-study-threats{
  left:30.5%;
  top:80.1%;
  width:60.5%;
  height:10.4%;
  padding:.5% 1.15% .5% .4%;
  overflow-y:auto;
  font-size:clamp(8px,.79vw,12.6px);
  font-weight:700;
  line-height:1.42;
}
.dragonbound-study-back{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:absolute;
  z-index:7;
  left:5.6%;
  top:87.4%;
  width:19.3%;
  height:7.9%;
  border:0!important;
  border-radius:14px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0!important;
  cursor:pointer;
  outline:none!important;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-study-back::before,.dragonbound-study-back::after{content:none!important;display:none!important}
.dragonbound-study-back:hover,
.dragonbound-study-back:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
  outline:none!important;
}

@media (max-width:900px){
  .dragonbound-study-shell{width:min(98vw,calc(95vh * 1.5))}
  .dragonbound-study-list-item{min-height:34px;margin-bottom:4px;padding:5px 7px 4px 8px;border-radius:6px}
  .dragonbound-study-list-item.is-yours::before{display:none}
  .dragonbound-study-list::-webkit-scrollbar{width:5px}
  .dragonbound-adopt-menu-egg{top:15.7%}
}
@media (prefers-reduced-motion:reduce){
  .dragonbound-adopt-menu-egg.is-visible.is-alive,
  .dragonbound-adopt-menu-egg.is-arriving,
  .dragonbound-study-egg,
  .dragonbound-study-overlay,
  .dragonbound-study-shell{animation:none!important;transition-duration:.01ms!important}
}

/* V32.9 — Dragonbound estate-agent journey from Study your Dragon */
.dragonbound-new-game-image--estate-exterior{
  background:#000 url("assets/dragonbound/estate/dragonbound-estate-exterior.png") center/cover no-repeat;
}
.dragonbound-new-game-image--estate-interior{
  background:#000 url("assets/dragonbound/estate/dragonbound-estate-interior.png") center/cover no-repeat;
}
.dragonbound-estate-exterior-effects,
.dragonbound-estate-interior-effects,
.dragonbound-estate-prompt{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  transition:opacity .35s ease;
}
.dragonbound-estate-exterior-effects,
.dragonbound-estate-interior-effects{z-index:48;overflow:hidden}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-new-game-image--estate-exterior{
  opacity:1;
  animation:dragonboundNewGameBreath 19s ease-in-out infinite 1s;
}
.dragonbound-new-game-stage.is-estate-interior .dragonbound-new-game-image--estate-interior{
  opacity:1;
  animation:dragonboundAdoptionInteriorAliveSoft 16s ease-in-out infinite .35s;
}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-estate-exterior-effects{opacity:1;pointer-events:none}
.dragonbound-new-game-stage.is-estate-interior .dragonbound-estate-interior-effects{opacity:1;pointer-events:none}
.dragonbound-estate-exterior-winds,
.dragonbound-estate-exterior-leaves,
.dragonbound-estate-exterior-particles,
.dragonbound-estate-exterior-glow{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.dragonbound-estate-breeze{
  position:absolute;left:-18%;width:var(--w);height:var(--h);opacity:var(--o);
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,244,219,.45), rgba(255,255,255,0));
  filter:blur(1.1px);
  transform:rotate(var(--rot));
  animation:dragonboundAdoptionBreeze var(--dur) linear infinite;
  animation-delay:var(--delay);
}
.dragonbound-estate-leaf{
  position:absolute;left:var(--x);top:var(--top);width:var(--size);height:calc(var(--size) * .58);opacity:var(--alpha);
  background:radial-gradient(circle at 35% 35%, var(--leaf-a) 0 38%, transparent 40%), linear-gradient(135deg, var(--leaf-b), var(--leaf-c));
  border-radius:100% 4% 100% 4%/100% 8% 92% 0%;
  box-shadow:0 0 10px rgba(255,227,163,.06);
  transform:rotate(-18deg);
  animation:dragonboundAdoptionLeaf var(--dur) linear infinite;
  animation-delay:var(--delay);
}
.dragonbound-estate-particle{
  position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:999px;
  background:radial-gradient(circle, rgba(255,238,198,.88), rgba(255,212,121,.42) 52%, rgba(255,255,255,0) 72%);
  opacity:.36;filter:blur(.12px);
  animation:dragonboundAdoptionMote var(--dur) ease-in-out infinite;
  animation-delay:var(--delay);
}
.dragonbound-estate-exterior-glow{
  background:
    radial-gradient(circle at 15% 85%, rgba(255,205,111,.14), rgba(255,205,111,0) 28%),
    radial-gradient(circle at 50% 92%, rgba(255,202,95,.1), rgba(255,202,95,0) 22%),
    linear-gradient(180deg, rgba(255,227,174,.07), rgba(255,227,174,0) 18%);
  mix-blend-mode:screen;
  animation:dragonboundEstateGlowDrift 9s ease-in-out infinite;
}
@keyframes dragonboundEstateGlowDrift{
  0%,100%{transform:translate3d(0,0,0);opacity:.82}
  50%{transform:translate3d(.4%,-.45%,0);opacity:1}
}
.dragonbound-estate-door-hotspot{
  position:absolute;
  z-index:66;
  left:44.2%;
  top:51.2%;
  width:11.8%;
  height:31.5%;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0;
  cursor:pointer;
  pointer-events:none;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-estate-door-hotspot{pointer-events:auto;opacity:1}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-estate-door-hotspot:hover,
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-estate-door-hotspot:focus-visible{
  background:radial-gradient(ellipse at center, rgba(255,232,175,.11), rgba(255,215,130,.03) 52%, transparent 74%)!important;
  filter:drop-shadow(0 0 10px rgba(255,228,173,.18));
}
.dragonbound-estate-interior-sunshafts,
.dragonbound-estate-interior-fireglow,
.dragonbound-estate-fire-embers,
.dragonbound-estate-interior-dust{position:absolute;pointer-events:none}
.dragonbound-estate-interior-sunshafts{
  inset:0;
  background:
    linear-gradient(112deg, rgba(255,237,198,.16) 30%, rgba(255,237,198,0) 55%) 37% 7%/24% 52% no-repeat,
    linear-gradient(98deg, rgba(255,232,188,.12) 22%, rgba(255,232,188,0) 58%) 43% 4%/18% 50% no-repeat,
    radial-gradient(circle at 50% 22%, rgba(255,241,209,.16), rgba(255,241,209,0) 22%);
  mix-blend-mode:screen;
  opacity:.78;
  animation:dragonboundEstateSunshift 10s ease-in-out infinite;
}
@keyframes dragonboundEstateSunshift{
  0%,100%{transform:translate3d(0,0,0);opacity:.68}
  50%{transform:translate3d(.7%,-.3%,0);opacity:.9}
}
.dragonbound-estate-interior-fireglow{
  left:79.65%;top:62.1%;width:8.6%;height:12.8%;
  background:radial-gradient(circle at 50% 70%, rgba(255,188,79,.34), rgba(255,163,59,.16) 34%, rgba(255,163,59,0) 72%);
  filter:blur(8px);
  opacity:.85;
  animation:dragonboundEstateFireGlow 2.7s ease-in-out infinite;
}
@keyframes dragonboundEstateFireGlow{
  0%,100%{transform:scale(.96);opacity:.7}
  35%{transform:scale(1.03);opacity:.92}
  70%{transform:scale(1.08);opacity:.82}
}
.dragonbound-estate-fire-embers{
  left:80.45%;top:63.7%;width:7.2%;height:9.8%;overflow:hidden;
}
.dragonbound-estate-fire-ember{
  position:absolute;left:var(--x);bottom:4%;width:var(--size);height:calc(var(--size) * 1.25);
  border-radius:999px 999px 999px 999px/70% 70% 100% 100%;
  background:radial-gradient(circle at 50% 22%, rgba(255,249,229,.98), rgba(255,198,95,.92) 38%, rgba(255,101,24,.75) 72%, rgba(255,101,24,0) 100%);
  filter:blur(.14px);
  opacity:0;
  transform:translate3d(0,0,0) scale(.8) rotate(-8deg);
  animation:dragonboundEstateEmberRise var(--dur) ease-in infinite;
  animation-delay:var(--delay);
}
@keyframes dragonboundEstateEmberRise{
  0%{transform:translate3d(0,8px,0) scale(.74) rotate(-10deg);opacity:0}
  18%{opacity:.9}
  72%{transform:translate3d(5px,-24px,0) scale(1) rotate(8deg);opacity:.5}
  100%{transform:translate3d(9px,-45px,0) scale(.78) rotate(14deg);opacity:0}
}
.dragonbound-estate-interior-dust{inset:0;overflow:hidden}
.dragonbound-estate-dust-mote{
  position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:999px;
  background:radial-gradient(circle, rgba(255,241,212,.85), rgba(255,214,138,.26) 50%, rgba(255,255,255,0) 70%);
  opacity:.34;
  animation:dragonboundEstateDust var(--dur) ease-in-out infinite;
  animation-delay:var(--delay);
}
@keyframes dragonboundEstateDust{
  0%,100%{transform:translate3d(0,0,0) scale(.88);opacity:.16}
  50%{transform:translate3d(.8vw,-1.1vh,0) scale(1.04);opacity:.42}
}
.dragonbound-estate-prompt{z-index:92}
.dragonbound-estate-prompt.is-visible{opacity:1;pointer-events:auto}
.dragonbound-estate-prompt-backdrop{
  position:absolute;inset:0;
  background:radial-gradient(circle at center, rgba(9,19,26,.12) 0%, rgba(4,8,12,.46) 58%, rgba(3,5,9,.76) 100%);
  backdrop-filter:blur(2px);
}
.dragonbound-estate-prompt-panel{
  position:absolute;left:50%;top:52%;transform:translate(-50%,-50%) scale(.965);
  width:min(720px, 86vw);
  padding:24px 26px 22px;
  border:1px solid rgba(220,184,112,.78);
  background:linear-gradient(180deg, rgba(8,19,25,.94), rgba(8,14,19,.88));
  box-shadow:0 24px 54px rgba(0,0,0,.44), inset 0 0 0 1px rgba(255,231,180,.08);
  color:#efdfb6;
  opacity:0;
  transition:transform .26s ease, opacity .26s ease;
}
.dragonbound-estate-prompt.is-visible .dragonbound-estate-prompt-panel{transform:translate(-50%,-50%) scale(1);opacity:1}
.dragonbound-estate-prompt-speaker{
  margin:0 0 12px;
  color:#d8b97a;
  font:700 clamp(12px,1vw,16px)/1 Georgia,serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.dragonbound-estate-prompt-copy{
  color:#f2e6ca;
  font:500 clamp(14px,1.06vw,18px)/1.55 Georgia,serif;
}
.dragonbound-estate-prompt-copy p{margin:0 0 10px}
.dragonbound-estate-prompt-copy p:last-child{margin-bottom:0}
.dragonbound-estate-prompt-actions{
  display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;
  margin-top:16px;padding-top:14px;border-top:1px solid rgba(215,186,122,.18);
}
.dragonbound-estate-prompt-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid rgba(218,182,114,.48)!important;
  background:linear-gradient(180deg, rgba(7,22,26,.76), rgba(8,16,22,.56))!important;
  color:#f2dfb0!important;
  padding:10px 16px!important;
  min-width:170px;
  border-radius:999px!important;
  font:700 clamp(11px,.84vw,14px)/1 Georgia,serif!important;
  letter-spacing:.08em;
  cursor:pointer;
  box-shadow:0 0 0 1px rgba(255,227,165,.06), 0 0 18px rgba(51,110,122,.16);
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.dragonbound-estate-prompt-button:hover,
.dragonbound-estate-prompt-button:focus-visible{
  transform:translateY(-1px);
  border-color:rgba(235,208,147,.82)!important;
  background:linear-gradient(180deg, rgba(12,28,33,.88), rgba(8,18,24,.68))!important;
  box-shadow:0 0 0 1px rgba(255,230,178,.1), 0 0 24px rgba(132,205,221,.18), 0 0 14px rgba(255,223,150,.18);
}
.dragonbound-estate-prompt-button--go{
  border-color:rgba(227,197,125,.8)!important;
  box-shadow:0 0 0 1px rgba(255,230,178,.1), 0 0 20px rgba(255,214,142,.16), 0 0 14px rgba(132,205,221,.12);
}
@media(max-width:900px){
  .dragonbound-estate-door-hotspot{left:43.2%;top:50.6%;width:13.6%;height:33.6%}
  .dragonbound-estate-prompt-panel{width:min(92vw, 700px);padding:22px 20px 18px}
  .dragonbound-estate-prompt-actions{justify-content:stretch}
  .dragonbound-estate-prompt-button{min-width:0;flex:1 1 240px}
}
@media(max-width:680px){
  .dragonbound-estate-prompt-actions{flex-direction:column}
  .dragonbound-estate-prompt-button{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-estate-exterior-effects,
  .dragonbound-estate-interior-effects,
  .dragonbound-estate-prompt,
  .dragonbound-new-game-image--estate-exterior,
  .dragonbound-new-game-image--estate-interior{animation:none!important;transition-duration:.01ms!important}
}

/* V32.10 — Dragonbound launcher sizing fix */
#openDragonbound,
button[data-repo-dash-label="DRAGONBOUND"]{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:70px!important;
  min-height:70px!important;
  max-height:70px!important;
  padding:6px 5px!important;
}
#openDragonbound .dragonbound-home-icon,
button[data-repo-dash-label="DRAGONBOUND"] .dragonbound-home-icon{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
  flex:0 0 34px!important;
  margin:0 auto!important;
}
#openDragonbound .dragonbound-home-icon img,
button[data-repo-dash-label="DRAGONBOUND"] .dragonbound-home-icon img{
  width:34px!important;
  height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
  object-fit:contain!important;
  image-rendering:auto!important;
}
#openDragonbound .activity-button-copy,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:100%!important;
  min-height:22px!important;
  overflow:visible!important;
  gap:1px!important;
}
#openDragonbound .activity-button-copy>small,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>small{
  display:block!important;
  font:700 6px/1 Georgia,serif!important;
  letter-spacing:.12em!important;
  white-space:nowrap!important;
}
#openDragonbound .activity-button-copy>span,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font:900 8px/.98 Georgia,serif!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:initial!important;
}

/* V32.11 — Dragonbound launcher remove ENTER subtitle */
#openDragonbound .activity-button-copy>small,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>small{
  display:none!important;
}
#openDragonbound .activity-button-copy,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy{
  min-height:14px!important;
  gap:0!important;
}

/* V32.12 — Dragonbound launcher text fit */
#openDragonbound .activity-button-copy>span,
button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{
  font:900 6.15px/1.05 Georgia,serif!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  text-align:center!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* V32.13 — final Dragonbound dashboard label fit */
#repoDashboardV20 .repo-dash-skill-group button#openDragonbound .activity-button-copy,
#repoDashboardV20 .repo-dash-skill-group button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
  padding:0 1px!important;
  box-sizing:border-box!important;
}
#repoDashboardV20 .repo-dash-skill-group button#openDragonbound .activity-button-copy>span,
#repoDashboardV20 .repo-dash-skill-group button[data-repo-dash-label="DRAGONBOUND"] .activity-button-copy>span{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  color:#bfa86d!important;
  font:700 5.45px/1.05 Georgia,serif!important;
  letter-spacing:-.04px!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  transform:none!important;
}

/* V32.14 — Mira Hearthvale property board + starter homes */
.dragonbound-mira-hotspot{
  position:absolute;
  z-index:66;
  left:34.5%;
  top:22.5%;
  width:28.5%;
  height:55%;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0;
  cursor:pointer;
  pointer-events:none;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-new-game-stage.is-estate-interior .dragonbound-mira-hotspot{opacity:1;pointer-events:auto}
.dragonbound-new-game-stage.is-estate-interior .dragonbound-mira-hotspot:hover,
.dragonbound-new-game-stage.is-estate-interior .dragonbound-mira-hotspot:focus-visible{
  background:transparent!important;
  filter:none!important;
  box-shadow:none!important;
}
.dragonbound-property-overlay,
.dragonbound-property-confirm{
  position:absolute;
  inset:0;
  display:none;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .3s ease, visibility 0s linear .3s;
}
.dragonbound-property-overlay{z-index:90}
.dragonbound-property-confirm{z-index:96}
.dragonbound-property-overlay.is-visible,
.dragonbound-property-confirm.is-visible{display:block;opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.dragonbound-property-backdrop,
.dragonbound-property-confirm-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at center,rgba(8,18,24,.08),rgba(2,5,8,.58) 66%,rgba(1,3,5,.88) 100%);
  backdrop-filter:blur(2px);
}
.dragonbound-property-shell{
  position:absolute;
  left:50%;
  top:50%;
  width:min(94vw,calc(88vh * 1.78));
  max-width:1648px;
  aspect-ratio:1648/926;
  transform:translate(-50%,-50%) scale(.975);
  opacity:0;
  filter:drop-shadow(0 30px 64px rgba(0,0,0,.58));
  transition:transform .3s ease,opacity .3s ease;
}
.dragonbound-property-overlay.is-visible .dragonbound-property-shell{
  transform:translate(-50%,-50%) scale(1);
  opacity:1;
}
.dragonbound-property-frame,
.dragonbound-property-flag-hotspots{
  position:absolute;
  inset:0;
}
.dragonbound-property-frame{
  z-index:0;
  background:center/100% 100% no-repeat;
  pointer-events:none;
}
.dragonbound-property-flag-hotspots{z-index:3;pointer-events:none}
.dragonbound-property-flag-hotspot{
  position:absolute;
  pointer-events:auto;
  appearance:none!important;
  -webkit-appearance:none!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  border-radius:14px!important;
  box-shadow:none!important;
  cursor:pointer;
  transition:filter .18s ease,box-shadow .18s ease,transform .18s ease;
}
.dragonbound-property-flag-hotspot:hover,
.dragonbound-property-flag-hotspot:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
  filter:brightness(1.06);
  transform:scale(1.02);
}
.dragonbound-property-flag-hotspot.is-selected{
  box-shadow:0 0 0 2px rgba(255,211,102,.58),0 0 22px rgba(255,205,83,.38),inset 0 0 20px rgba(255,231,160,.13)!important;
  background:radial-gradient(circle,rgba(255,239,194,.12),rgba(255,208,91,.04) 60%,transparent 75%)!important;
  filter:brightness(1.11);
}
.dragonbound-property-list-panel{
  position:absolute;
  z-index:4;
  left:72.85%;
  top:21.3%;
  width:24.2%;
  height:68%;
  box-sizing:border-box;
  padding:8.2% 1.1% 1.4%;
  overflow:hidden;
  color:#ead6a1;
  font-family:Georgia,serif;
}
.dragonbound-property-country-title{
  position:absolute;
  left:5%;right:5%;top:1.2%;
  text-align:center;
  color:#f0cf7e;
  font:900 clamp(11px,.92vw,17px)/1 Georgia,serif;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-shadow:0 1px 2px #000,0 0 12px rgba(225,175,73,.25);
}
.dragonbound-property-card-list{
  height:100%;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:#8b672f rgba(3,13,16,.42);
}
.dragonbound-property-card-list::-webkit-scrollbar{width:6px}
.dragonbound-property-card-list::-webkit-scrollbar-track{background:rgba(3,13,16,.4);border-radius:99px}
.dragonbound-property-card-list::-webkit-scrollbar-thumb{background:linear-gradient(#bb8e43,#67461d);border-radius:99px}
.dragonbound-property-card{
  width:100%!important;
  min-height:18.2%!important;
  margin:0 0 2.2%!important;
  padding:5px!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:34% minmax(0,1fr) auto!important;
  gap:7px!important;
  align-items:center!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid rgba(171,129,55,.46)!important;
  border-radius:7px!important;
  background:linear-gradient(180deg,rgba(9,32,37,.92),rgba(4,19,24,.94))!important;
  box-shadow:inset 0 0 0 1px rgba(232,191,102,.045),0 4px 10px rgba(0,0,0,.22)!important;
  color:#ecd7a1!important;
  text-align:left!important;
  overflow:hidden!important;
  position:relative!important;
}
.dragonbound-property-card img{
  width:100%!important;
  aspect-ratio:1.6/1!important;
  object-fit:cover!important;
  border:1px solid rgba(196,151,74,.55)!important;
  border-radius:4px!important;
  filter:saturate(.96) brightness(.94);
  box-shadow:0 2px 7px rgba(0,0,0,.35)!important;
}
.dragonbound-property-card-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:2px;
}
.dragonbound-property-card-copy strong{
  display:block;
  color:#f4dfaa;
  font:800 clamp(8px,.61vw,12px)/1.05 Georgia,serif;
  white-space:normal;
  text-wrap:balance;
}
.dragonbound-property-card-copy small{
  color:#aeb5a3;
  font:700 clamp(6.5px,.5vw,9px)/1 Georgia,serif;
  letter-spacing:.04em;
}
.dragonbound-property-card-copy em{
  color:#9c875a;
  font:700 clamp(6.5px,.49vw,9px)/1 Georgia,serif;
  font-style:normal;
  letter-spacing:.025em;
}
.dragonbound-property-card-status{
  align-self:center;
  color:#856d42;
  font:900 clamp(7px,.5vw,9px)/1 Georgia,serif;
  letter-spacing:.05em;
  white-space:nowrap;
}
.dragonbound-property-card.is-starter{
  cursor:pointer!important;
  border-color:rgba(217,172,77,.72)!important;
  background:linear-gradient(180deg,rgba(12,44,44,.96),rgba(5,26,29,.96))!important;
  box-shadow:inset 0 0 18px rgba(188,146,63,.05),0 4px 11px rgba(0,0,0,.28)!important;
  transition:transform .16s ease,filter .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.dragonbound-property-card.is-starter .dragonbound-property-card-copy em,
.dragonbound-property-card.is-starter .dragonbound-property-card-status{color:#e8c66e}
.dragonbound-property-card.is-starter:hover,
.dragonbound-property-card.is-starter:focus-visible{
  transform:translateY(-1px)!important;
  filter:brightness(1.07)!important;
  border-color:rgba(242,201,109,.92)!important;
  box-shadow:0 0 0 1px rgba(255,230,165,.09),0 0 18px rgba(223,177,80,.15),0 5px 12px rgba(0,0,0,.32)!important;
}
.dragonbound-property-card.is-locked{
  opacity:.58!important;
  filter:grayscale(.22) saturate(.72)!important;
  cursor:not-allowed!important;
}
.dragonbound-property-card.is-locked img{filter:grayscale(.35) saturate(.65) brightness(.72)!important}
.dragonbound-property-empty{
  position:absolute;
  left:10%;right:10%;top:50%;
  transform:translateY(-45%);
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.dragonbound-property-empty strong{color:#e8c671;font:900 clamp(14px,1.1vw,19px)/1 Georgia,serif;letter-spacing:.09em;text-transform:uppercase}
.dragonbound-property-empty span{color:#e1d0a7;font:700 clamp(11px,.78vw,14px)/1.25 Georgia,serif}
.dragonbound-property-empty small{color:#8ca3a0;font:500 clamp(9px,.67vw,12px)/1.4 Georgia,serif}
.dragonbound-property-back{
  position:absolute;
  z-index:5;
  left:.9%;bottom:.6%;width:7.2%;height:9.2%;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:transparent!important;
  opacity:0!important;
  cursor:pointer;
  border-radius:14px!important;
  -webkit-tap-highlight-color:transparent!important;
}
.dragonbound-property-back::before,.dragonbound-property-back::after{content:none!important;display:none!important}
.dragonbound-property-back:hover,
.dragonbound-property-back:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
}
.dragonbound-property-confirm-panel{
  position:absolute;
  left:50%;top:50%;
  width:min(660px,86vw);
  transform:translate(-50%,-50%) scale(.965);
  opacity:0;
  padding:18px 20px 20px;
  border:1px solid rgba(213,169,86,.72);
  background:linear-gradient(180deg,rgba(7,24,29,.97),rgba(5,14,19,.97));
  box-shadow:0 24px 60px rgba(0,0,0,.55),inset 0 0 0 1px rgba(255,232,177,.055);
  color:#ead9b1;
  transition:transform .24s ease,opacity .24s ease;
}
.dragonbound-property-confirm.is-visible .dragonbound-property-confirm-panel{transform:translate(-50%,-50%) scale(1);opacity:1}
.dragonbound-property-confirm-kicker{
  margin:0 0 4px;
  text-align:center;
  color:#a1b9b5;
  font:700 10px/1 Georgia,serif;
  letter-spacing:.18em;
}
.dragonbound-property-confirm-title{
  margin:0 0 12px;
  text-align:center;
  color:#efcf82;
  font:900 clamp(20px,1.55vw,28px)/1 Georgia,serif;
}
.dragonbound-property-confirm-image{
  display:block;
  width:100%;
  aspect-ratio:16/8.5;
  object-fit:cover;
  border:1px solid rgba(206,160,74,.55);
  box-shadow:0 8px 22px rgba(0,0,0,.36);
}
.dragonbound-property-confirm-copy{
  margin-top:12px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:4px 12px;
  font-family:Georgia,serif;
}
.dragonbound-property-confirm-copy strong{color:#f0d8a1;font-size:17px}
.dragonbound-property-confirm-copy>span{grid-column:1;color:#9fb1ad;font-size:12px}
.dragonbound-property-confirm-copy>em{grid-column:2;grid-row:1/3;align-self:center;color:#c3a664;font-style:normal;font-size:12px}
.dragonbound-property-confirm-copy>em b{color:#f0cf70;font-size:15px}
.dragonbound-property-confirm-copy p{grid-column:1/-1;margin:7px 0 0;color:#d7c8a7;font-size:13px;line-height:1.4}
.dragonbound-property-confirm-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:15px;
  padding-top:13px;
  border-top:1px solid rgba(211,174,101,.16);
}
.dragonbound-property-confirm-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  border:1px solid rgba(211,174,101,.46)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(9,31,35,.95),rgba(5,18,23,.95))!important;
  color:#e8d5a8!important;
  padding:10px 15px!important;
  min-width:170px;
  font:800 12px/1 Georgia,serif!important;
  cursor:pointer;
  box-shadow:0 3px 10px rgba(0,0,0,.22)!important;
}
.dragonbound-property-confirm-button:hover,
.dragonbound-property-confirm-button:focus-visible{border-color:rgba(239,205,133,.86)!important;filter:brightness(1.08);transform:translateY(-1px)}
.dragonbound-property-confirm-button--yes{color:#f2d67f!important;border-color:rgba(229,190,100,.72)!important}
.dragonbound-home-scene{
  position:absolute;
  inset:0;
  z-index:47;
  opacity:0;
  pointer-events:none;
  overflow:hidden;
  background:#000;
  transition:opacity .55s ease;
}
.dragonbound-home-scene.is-visible{opacity:1}
.dragonbound-home-image,
.dragonbound-home-light,
.dragonbound-home-vignette{position:absolute;inset:0;pointer-events:none}
.dragonbound-home-image{
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  transform:scale(1.075);
  filter:saturate(1.02) contrast(1.015) brightness(.99);
  animation:dragonboundHomeBreath 18s ease-in-out infinite;
}
@keyframes dragonboundHomeBreath{
  0%,100%{transform:scale(1.075) translate3d(0,0,0)}
  50%{transform:scale(1.092) translate3d(0,-.25%,0)}
}
.dragonbound-home-light{
  background:radial-gradient(circle at 50% 40%,rgba(255,232,182,.08),rgba(255,232,182,0) 38%);
  mix-blend-mode:screen;
  animation:dragonboundHomeLight 7s ease-in-out infinite;
}
@keyframes dragonboundHomeLight{0%,100%{opacity:.6}50%{opacity:1}}
.dragonbound-home-vignette{
  background:radial-gradient(ellipse at center,transparent 52%,rgba(1,4,6,.2) 82%,rgba(0,0,0,.48) 100%);
}
.dragonbound-new-game-stage.is-home .dragonbound-new-game-image,
.dragonbound-new-game-stage.is-home .dragonbound-new-game-video,
.dragonbound-new-game-stage.is-home .dragonbound-adoption-effects,
.dragonbound-new-game-stage.is-home .dragonbound-adoption-interior-effects,
.dragonbound-new-game-stage.is-home .dragonbound-estate-exterior-effects,
.dragonbound-new-game-stage.is-home .dragonbound-estate-interior-effects,
.dragonbound-new-game-stage.is-home .dragonbound-bonnie-hotspot,
.dragonbound-new-game-stage.is-home .dragonbound-estate-door-hotspot,
.dragonbound-new-game-stage.is-home .dragonbound-mira-hotspot{opacity:0!important;pointer-events:none!important}
@media(max-width:1000px){
  .dragonbound-property-shell{width:min(96vw,calc(84vh * 1.78))}
  .dragonbound-property-list-panel{left:72.6%;width:24.5%;padding-left:.8%;padding-right:.7%}
  .dragonbound-property-card{grid-template-columns:31% minmax(0,1fr)!important;gap:5px!important}
  .dragonbound-property-card-status{display:none}
  .dragonbound-property-card-copy strong{font-size:8px}
  .dragonbound-property-card-copy small,.dragonbound-property-card-copy em{font-size:6.5px}
}
@media(max-width:720px){
  .dragonbound-property-confirm-panel{width:min(92vw,620px);padding:14px}
  .dragonbound-property-confirm-actions{flex-direction:column}
  .dragonbound-property-confirm-button{width:100%}
  .dragonbound-home-image{transform:scale(1.11)}
  @keyframes dragonboundHomeBreath{
    0%,100%{transform:scale(1.11) translate3d(0,0,0)}
    50%{transform:scale(1.13) translate3d(0,-.2%,0)}
  }
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-property-overlay,
  .dragonbound-property-confirm,
  .dragonbound-property-shell,
  .dragonbound-home-scene,
  .dragonbound-home-image,
  .dragonbound-home-light{animation:none!important;transition-duration:.01ms!important}
}


/* V32.15 — Hearth & Key door hotfix: prevent Bonnie hotspot/state leaking into estate scenes */
.dragonbound-new-game-stage:not(.is-adoption-interior) .dragonbound-bonnie-hotspot{
  opacity:0!important;
  pointer-events:none!important;
}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-estate-door-hotspot{
  z-index:125!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.dragonbound-new-game-stage:not(.is-estate-exterior) .dragonbound-estate-door-hotspot{
  pointer-events:none!important;
}
.dragonbound-new-game-stage.is-estate-exterior .dragonbound-dialogue,
.dragonbound-new-game-stage.is-estate-interior .dragonbound-dialogue{
  pointer-events:none!important;
}


/* V32.16 — Dragonbound study/property/home polish */
.dragonbound-dialogue--mira{
  max-width:68%;
  padding-left:106px;
}
.dragonbound-dialogue--mira::before{
  content:"";
  position:absolute;
  left:20px;
  top:18px;
  width:68px;
  height:68px;
  border-radius:50%;
  border:2px solid rgba(223,187,113,.72);
  box-shadow:0 10px 24px rgba(0,0,0,.3), inset 0 0 0 1px rgba(255,233,188,.18);
  background:
    linear-gradient(180deg, rgba(9,21,29,.15), rgba(9,21,29,.15)),
    url("assets/dragonbound/estate/dragonbound-estate-interior.png") 49% 34%/355% no-repeat,
    #102129;
}
.dragonbound-dialogue--mira .dragonbound-dialogue-head{
  min-height:68px;
  align-items:flex-start;
  padding-top:4px;
}
.dragonbound-dialogue--mira .dragonbound-dialogue-title{
  color:#efcf82;
}
.dragonbound-dialogue--mira .dragonbound-dialogue-body .speaker{
  color:#c7d8d8;
  font:700 11px/1 Georgia,serif;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.dragonbound-dialogue--mira .dragonbound-dialogue-body strong{color:#f3d58a}
@media(max-width:900px){
  .dragonbound-dialogue--mira{max-width:none;padding-left:90px}
  .dragonbound-dialogue--mira::before{left:16px;top:16px;width:58px;height:58px;background-position:49% 34%;background-size:355%}
  .dragonbound-dialogue--mira .dragonbound-dialogue-head{min-height:58px}
}


/* V32.17 — Dragonbound home delivery + invisible hotspot polish */
.dragonbound-dialogue--mira .dragonbound-dialogue-title:empty,
.dragonbound-dialogue--doppy .dragonbound-dialogue-title:empty{display:none}
.dragonbound-dialogue--doppy .dragonbound-dialogue-head{margin-bottom:.35rem}
.dragonbound-dialogue--doppy .dragonbound-dialogue-body .speaker,
.dragonbound-dialogue--mira .dragonbound-dialogue-body .speaker{color:#e8cf90}
.dragonbound-home-sidebar,
.dragonbound-home-delivery,
.dragonbound-home-basket-wrap{
  position:absolute;
  z-index:48;
  pointer-events:none;
  opacity:0;
  transition:opacity .35s ease, transform .55s ease;
}
.dragonbound-home-sidebar{
  left:4.2%;
  top:4.6%;
  width:min(15.95vw,204px);
  transform:translateX(-12px);
}
.dragonbound-home-sidebar.is-visible{opacity:1;transform:translateX(0)}
.dragonbound-home-sidebar-image{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 24px rgba(0,0,0,.35))}
.dragonbound-home-delivery{
  right:-28%;
  bottom:4.6%;
  width:min(29vw,405px);
  transform:translateX(0);
}
.dragonbound-home-delivery.is-visible{opacity:1}
.dragonbound-home-delivery.is-arriving{animation:dragonboundDoppyArrive 2.45s ease-out forwards;opacity:1}
.dragonbound-home-delivery.is-arrived{right:8.6%;opacity:1;transform:none}
.dragonbound-home-delivery.is-departing{animation:dragonboundDoppyDepart 2.35s ease-in forwards;opacity:1}
.dragonbound-home-doppy{display:block;width:100%;height:auto;transform:scaleX(-1);transform-origin:50% 50%;filter:drop-shadow(0 18px 26px rgba(0,0,0,.42))}
@keyframes dragonboundDoppyArrive{
  0%{right:-26%;transform:translateY(8px) scale(.96)}
  22%{right:-12%;transform:translateY(0) scale(1)}
  60%{right:2%;transform:translateY(-6px) scale(1.02)}
  100%{right:8.6%;transform:translateY(0) scale(1)}
}
@keyframes dragonboundDoppyDepart{
  0%{right:8.6%;transform:translateY(0) scale(1);opacity:1}
  40%{right:18%;transform:translateY(-10px) scale(1.02);opacity:1}
  100%{right:-26%;transform:translateY(-28px) scale(.92);opacity:0}
}
.dragonbound-home-basket-wrap{
  left:auto;
  right:20.4%;
  bottom:4.9%;
  width:min(15vw,190px);
  transform:translateY(10px) scale(.92);
}
.dragonbound-home-basket-wrap.is-visible{opacity:1}
.dragonbound-home-basket-wrap.is-dropping{animation:dragonboundBasketDrop .55s ease-out both}
.dragonbound-home-basket{display:block;width:100%;height:auto;filter:drop-shadow(0 10px 20px rgba(0,0,0,.34))}
@keyframes dragonboundBasketDrop{
  0%{transform:translateY(-26px) scale(.86)}
  55%{transform:translateY(4px) scale(1.02)}
  100%{transform:translateY(0) scale(1)}
}
@media(max-width:1000px){
  .dragonbound-home-sidebar{left:3.8%;top:4.2%;width:min(18.5vw,178px)}
  .dragonbound-home-delivery{width:min(37vw,315px);bottom:5.2%}
  .dragonbound-home-delivery.is-arrived{right:6.2%}
  .dragonbound-home-basket-wrap{left:auto;right:18.2%;bottom:5.4%;width:min(20vw,162px)}
}
@media(max-width:720px){
  .dragonbound-home-sidebar{left:3.5%;top:4%;width:min(22vw,140px)}
  .dragonbound-home-delivery{width:min(47vw,255px);bottom:6%}
  .dragonbound-home-basket-wrap{left:auto;right:17%;bottom:6%;width:min(24vw,142px)}
}


/* V32.19 — Dragonbound launcher: exact dashboard footprint + readable label */
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound{
  position:relative!important;
  width:100%!important;
  height:75px!important;
  min-height:75px!important;
  max-height:75px!important;
  margin:0!important;
  padding:5px 2px 4px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid transparent!important;
  border-radius:2px!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  transform:none!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .dragonbound-home-icon{
  display:block!important;
  flex:0 0 35px!important;
  width:35px!important;
  height:35px!important;
  min-width:35px!important;
  min-height:35px!important;
  max-width:35px!important;
  max-height:35px!important;
  margin:0 auto!important;
  padding:0!important;
  overflow:visible!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .dragonbound-home-icon img{
  display:block!important;
  width:35px!important;
  height:35px!important;
  min-width:35px!important;
  min-height:35px!important;
  max-width:35px!important;
  max-height:35px!important;
  object-fit:contain!important;
  margin:0!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .activity-button-copy{
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  text-align:center!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .activity-button-copy>small{
  display:none!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .activity-button-copy>span{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#bfa86d!important;
  font:700 6.15px/1.05 Georgia,serif!important;
  letter-spacing:0!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  word-break:normal!important;
  transform:none!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound:hover:not(:disabled),
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound:focus-visible{
  border-color:rgba(178,135,68,.42)!important;
  background:linear-gradient(180deg,rgba(23,40,49,.54),rgba(7,16,22,.34))!important;
  box-shadow:inset 0 0 0 1px rgba(236,197,112,.025)!important;
  filter:brightness(1.07)!important;
}


/* V32.20 — remove brown hover states in Hearth & Key and refine home layout */
.dragonbound-overlay .dragonbound-close,
.dragonbound-overlay .dragonbound-close:hover,
.dragonbound-overlay .dragonbound-close:focus-visible{
  background:rgba(8,17,18,.22)!important;
  background-image:none!important;
}
.dragonbound-property-card.is-starter:hover,
.dragonbound-property-card.is-starter:focus-visible{
  background:linear-gradient(180deg,rgba(12,44,44,.96),rgba(5,26,29,.96))!important;
  background-image:none!important;
}
.dragonbound-property-confirm-button:hover,
.dragonbound-property-confirm-button:focus-visible{
  background:linear-gradient(180deg,rgba(9,31,35,.95),rgba(5,18,23,.95))!important;
  background-image:none!important;
}
.dragonbound-property-back:hover,
.dragonbound-property-back:focus-visible,
.dragonbound-property-flag-hotspot:hover,
.dragonbound-property-flag-hotspot:focus-visible{
  background:transparent!important;
  background-image:none!important;
}


/* V32.21 — final Dragonbound property/home corrections */
.dragonbound-property-back,
.dragonbound-property-back:hover,
.dragonbound-property-back:focus-visible{
  width:1px!important;
  height:1px!important;
  left:-9999px!important;
  bottom:auto!important;
  top:auto!important;
  opacity:0!important;
  pointer-events:none!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
.dragonbound-property-shell .dragonbound-close,
.dragonbound-property-shell .dragonbound-close:hover,
.dragonbound-property-shell .dragonbound-close:focus-visible,
.dragonbound-property-shell .dragonbound-property-flag-hotspot,
.dragonbound-property-shell .dragonbound-property-flag-hotspot:hover,
.dragonbound-property-shell .dragonbound-property-flag-hotspot:focus-visible{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
.dragonbound-home-delivery{
  right:-30%!important;
  bottom:12.5%!important;
  width:min(24vw,340px)!important;
}
.dragonbound-home-delivery.is-arrived{
  right:11.5%!important;
}
.dragonbound-home-delivery.is-arriving .dragonbound-home-doppy,
.dragonbound-home-delivery.is-arrived .dragonbound-home-doppy{
  transform:scaleX(-1)!important;
}
.dragonbound-home-delivery.is-departing .dragonbound-home-doppy{
  transform:scaleX(1)!important;
}
@keyframes dragonboundDoppyArrive{
  0%{right:-30%;transform:translateY(8px) scale(.96)}
  22%{right:-14%;transform:translateY(0) scale(1)}
  60%{right:2%;transform:translateY(-6px) scale(1.02)}
  100%{right:11.5%;transform:translateY(0) scale(1)}
}
@keyframes dragonboundDoppyDepart{
  0%{right:11.5%;transform:translateY(0) scale(1);opacity:1}
  40%{right:20%;transform:translateY(-10px) scale(1.02);opacity:1}
  100%{right:-30%;transform:translateY(-28px) scale(.92);opacity:0}
}
.dragonbound-home-basket-wrap{
  left:47.2%!important;
  right:auto!important;
  bottom:17.2%!important;
  width:min(10.8vw,148px)!important;
  transform:translateY(10px) scale(.92)!important;
}
@media(max-width:1000px){
  .dragonbound-home-delivery{width:min(31vw,280px)!important;bottom:12.8%!important}
  .dragonbound-home-delivery.is-arrived{right:9.5%!important}
  .dragonbound-home-basket-wrap{left:46.2%!important;bottom:18.2%!important;width:min(13.5vw,128px)!important}
}
@media(max-width:720px){
  .dragonbound-home-delivery{width:min(38vw,225px)!important;bottom:14.2%!important}
  .dragonbound-home-delivery.is-arrived{right:7.2%!important}
  .dragonbound-home-basket-wrap{left:43.8%!important;bottom:19.5%!important;width:min(17vw,112px)!important}
}


/* V32.22 — Doppy walk polish + home sidebar move */
.dragonbound-home-sidebar{
  left:auto!important;
  right:2.2%!important;
  top:2.2%!important;
  width:min(16.75vw,214px)!important;
  transform:translateX(12px)!important;
}
.dragonbound-home-sidebar.is-visible{
  transform:translateX(0)!important;
}
@media(max-width:1000px){
  .dragonbound-home-sidebar{left:auto!important;right:2.4%!important;top:2.4%!important;width:min(19.4vw,187px)!important}
}
@media(max-width:720px){
  .dragonbound-home-sidebar{left:auto!important;right:2.6%!important;top:2.6%!important;width:min(23.1vw,147px)!important}
}


/* V32.23 — Doppy visibility + move home buttons to top-left */
.dragonbound-home-sidebar{
  left:1.1%!important;
  top:1.1%!important;
  right:auto!important;
  width:min(16.75vw,214px)!important;
  transform:translateX(-10px)!important;
}
.dragonbound-home-sidebar.is-visible{transform:translateX(0)!important}
@media(max-width:1000px){
  .dragonbound-home-sidebar{left:1.15%!important;top:1.15%!important;right:auto!important;width:min(19.4vw,187px)!important}
}
@media(max-width:720px){
  .dragonbound-home-sidebar{left:1.2%!important;top:1.2%!important;right:auto!important;width:min(23.1vw,147px)!important}
}
.dragonbound-home-delivery{
  right:-14%!important;
  bottom:12.5%!important;
  width:min(24vw,340px)!important;
}
.dragonbound-home-delivery.is-visible,
.dragonbound-home-delivery.is-arriving,
.dragonbound-home-delivery.is-arrived,
.dragonbound-home-delivery.is-departing{
  opacity:1!important;
  visibility:visible!important;
}
.dragonbound-home-delivery.is-arriving{animation:dragonboundDoppyArrive 2.45s linear forwards!important}
.dragonbound-home-delivery.is-arrived{right:11.5%!important;opacity:1!important;transform:none!important}
.dragonbound-home-delivery.is-departing{animation:dragonboundDoppyDepart 2.35s linear forwards!important}
.dragonbound-home-doppy{opacity:1!important;visibility:visible!important}
@keyframes dragonboundDoppyArrive{
  0%{right:-14%;transform:translateY(6px) scale(.98);opacity:1}
  22%{right:-8%;transform:translateY(3px) scale(1);opacity:1}
  55%{right:1%;transform:translateY(0) scale(1);opacity:1}
  100%{right:11.5%;transform:translateY(0) scale(1);opacity:1}
}
@keyframes dragonboundDoppyDepart{
  0%{right:11.5%;transform:translateY(0) scale(1);opacity:1}
  45%{right:3%;transform:translateY(0) scale(1);opacity:1}
  78%{right:-6%;transform:translateY(2px) scale(.99);opacity:1}
  100%{right:-14%;transform:translateY(4px) scale(.98);opacity:1}
}
@media(max-width:1000px){
  .dragonbound-home-delivery{width:min(31vw,280px)!important;bottom:12.8%!important;right:-16%!important}
  .dragonbound-home-delivery.is-arrived{right:9.5%!important}
}
@media(max-width:720px){
  .dragonbound-home-delivery{width:min(38vw,225px)!important;bottom:14.2%!important;right:-18%!important}
  .dragonbound-home-delivery.is-arrived{right:7.2%!important}
}

/* V32.24 — Dragon hatch reveal, Doppy movement lock, launcher label lock */
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound{
  overflow:visible!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .activity-button-copy{
  width:calc(100% + 14px)!important;
  max-width:none!important;
  min-width:0!important;
  margin-left:-7px!important;
  margin-right:-7px!important;
  overflow:visible!important;
}
#repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound .activity-button-copy>span{
  position:relative!important;
  left:50%!important;
  display:block!important;
  width:max-content!important;
  min-width:0!important;
  max-width:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
  font:700 5.8px/1.05 Georgia,serif!important;
  letter-spacing:-.04em!important;
  transform:translateX(-50%) scaleX(.9)!important;
  transform-origin:50% 50%!important;
}

.dragonbound-home-delivery{
  right:11.5%!important;
  bottom:12.5%!important;
  width:min(24vw,340px)!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:none;
  animation:none!important;
  transition:none!important;
  will-change:transform;
}
.dragonbound-home-delivery.is-visible,
.dragonbound-home-delivery.is-arrived{
  opacity:1!important;
  visibility:visible!important;
  animation:none!important;
}
.dragonbound-home-delivery.is-arriving,
.dragonbound-home-delivery.is-departing{
  animation:none!important;
}
.dragonbound-home-doppy{
  opacity:1!important;
  visibility:visible!important;
  will-change:transform;
}
@media(max-width:1000px){
  .dragonbound-home-delivery{right:9.5%!important;width:min(31vw,280px)!important;bottom:12.8%!important}
}
@media(max-width:720px){
  .dragonbound-home-delivery{right:7.2%!important;width:min(38vw,225px)!important;bottom:14.2%!important}
}

.dragonbound-home-basket-wrap.is-ready{
  pointer-events:auto!important;
  cursor:pointer;
  outline:none;
  filter:drop-shadow(0 11px 22px rgba(0,0,0,.34));
  transition:transform .18s ease,filter .18s ease!important;
}
.dragonbound-home-basket-wrap.is-ready:hover,
.dragonbound-home-basket-wrap.is-ready:focus-visible{
  transform:translateY(7px) scale(.96)!important;
  filter:drop-shadow(0 12px 22px rgba(0,0,0,.38)) drop-shadow(0 0 16px rgba(235,199,118,.26));
}
.dragonbound-home-basket-wrap.is-opening{pointer-events:none!important}

.dragonbound-home-basket-confirm,
.dragonbound-home-hatch-reveal{
  position:absolute;
  inset:0;
  z-index:118;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.dragonbound-home-basket-confirm{
  transition:opacity .22s ease,visibility 0s linear .22s;
}
.dragonbound-home-basket-confirm.is-visible,
.dragonbound-home-hatch-reveal.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition-delay:0s;
}
.dragonbound-home-basket-confirm-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 48%,rgba(11,29,33,.28),rgba(2,6,9,.84) 72%);
  backdrop-filter:blur(4px);
}
.dragonbound-home-basket-confirm-panel{
  position:absolute;
  left:50%;
  top:50%;
  width:min(560px,88vw);
  transform:translate(-50%,-50%) scale(.97);
  padding:26px 28px 24px;
  box-sizing:border-box;
  border:1px solid rgba(225,190,114,.7);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(8,28,32,.98),rgba(5,17,22,.98));
  box-shadow:0 28px 70px rgba(0,0,0,.58),inset 0 0 0 1px rgba(255,235,190,.06),0 0 34px rgba(107,172,164,.09);
  text-align:center;
  color:#eadbb6;
}
.dragonbound-home-basket-confirm-kicker{
  margin:0 0 8px;
  color:#9fc8bf;
  font:800 11px/1 Georgia,serif;
  letter-spacing:.2em;
}
.dragonbound-home-basket-confirm-title{
  margin:0;
  color:#f0d28b;
  font:900 clamp(22px,2vw,32px)/1.05 Georgia,serif;
}
.dragonbound-home-basket-confirm-copy{
  margin:13px 0 0;
  color:#e6d9bc;
  font:600 clamp(15px,1.1vw,18px)/1.45 Georgia,serif;
}
.dragonbound-home-basket-confirm-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-top:22px;
}
.dragonbound-home-basket-confirm-button{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-width:160px;
  border:1px solid rgba(218,184,111,.5)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(10,42,43,.98),rgba(5,24,29,.98))!important;
  background-image:none!important;
  color:#efd9a5!important;
  padding:11px 17px!important;
  font:800 12px/1 Georgia,serif!important;
  letter-spacing:.04em;
  cursor:pointer;
  box-shadow:0 4px 12px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,245,216,.06)!important;
  transition:transform .16s ease,filter .16s ease,border-color .16s ease!important;
}
.dragonbound-home-basket-confirm-button:hover,
.dragonbound-home-basket-confirm-button:focus-visible{
  background:linear-gradient(180deg,rgba(13,51,51,.98),rgba(6,30,35,.98))!important;
  background-image:none!important;
  border-color:rgba(239,207,139,.82)!important;
  transform:translateY(-1px);
  filter:brightness(1.06);
}
.dragonbound-home-basket-confirm-button--yes{color:#f5dfa1!important;border-color:rgba(231,195,107,.72)!important}

.dragonbound-home-hatch-reveal{
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 44%,rgba(77,132,124,.18),transparent 37%),
    linear-gradient(180deg,rgba(2,8,11,.96),rgba(2,5,8,.99));
}
.dragonbound-home-hatch-opening,
.dragonbound-home-hatch-result{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
.dragonbound-home-hatch-reveal.is-opening .dragonbound-home-hatch-opening,
.dragonbound-home-hatch-reveal.is-result .dragonbound-home-hatch-result{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.dragonbound-home-hatch-opening{
  background:radial-gradient(circle at 50% 47%,rgba(224,177,83,.16),transparent 45%);
  transition:opacity .35s ease;
}
.dragonbound-home-hatch-opening-image{
  position:relative;
  z-index:2;
  display:block;
  width:min(97vw,1410px);
  max-height:90vh;
  object-fit:contain;
  border:1px solid rgba(223,185,100,.55);
  box-shadow:0 28px 70px rgba(0,0,0,.58),0 0 44px rgba(233,187,92,.08);
  transform-origin:50% 54%;
  transition:opacity .11s ease,filter .11s ease;
}
.dragonbound-home-hatch-opening-image.is-playing{
  animation:dragonboundHomeBasketOpeningShot 5.094s cubic-bezier(.2,.72,.2,1) both;
}
.dragonbound-home-hatch-opening-image.is-frame-changing{opacity:.86;filter:brightness(1.035) saturate(1.03);}
@keyframes dragonboundHomeBasketOpeningShot{
  0%{transform:scale(.965);filter:brightness(.88) saturate(.94)}
  18%{transform:scale(.985);filter:brightness(.98) saturate(1)}
  48%{transform:scale(1.015) translateY(-.4%);filter:brightness(1.04) saturate(1.04)}
  72%{transform:scale(1.035) translateY(-.7%);filter:brightness(1.08) saturate(1.05)}
  100%{transform:scale(1.055) translateY(-.9%);filter:brightness(1.13) saturate(1.06)}
}
.dragonbound-home-hatch-opening-glow{
  position:absolute;
  z-index:1;
  width:64vw;
  height:64vw;
  max-width:820px;
  max-height:820px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,229,157,.22),rgba(109,191,181,.1) 34%,transparent 68%);
  filter:blur(18px);
  animation:dragonboundHomeOpeningGlow 2.6s ease-in-out infinite;
}
@keyframes dragonboundHomeOpeningGlow{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.08);opacity:.95}}
.dragonbound-home-hatch-opening-shimmer{
  position:absolute;
  z-index:3;
  inset:0;
  background:linear-gradient(112deg,transparent 38%,rgba(255,241,204,.1) 48%,rgba(255,241,204,.22) 50%,rgba(255,241,204,.08) 53%,transparent 63%);
  transform:translateX(-70%);
  animation:dragonboundHomeOpeningShimmer 5.094s ease-in-out both;
  pointer-events:none;
}
@keyframes dragonboundHomeOpeningShimmer{0%,22%{transform:translateX(-70%);opacity:0}40%{opacity:.8}84%,100%{transform:translateX(70%);opacity:0}}

.dragonbound-home-hatch-result{
  z-index:2;
  transition:opacity .52s ease;
}
.dragonbound-home-hatch-result::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 34% 46%,rgba(224,193,112,.16),transparent 23%),
    radial-gradient(circle at 50% 44%,rgba(91,170,159,.12),transparent 39%);
  animation:dragonboundHomeRevealAura 4.4s ease-in-out infinite;
}
@keyframes dragonboundHomeRevealAura{0%,100%{opacity:.65;transform:scale(.98)}50%{opacity:1;transform:scale(1.025)}}
.dragonbound-home-hatch-stars{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.dragonbound-home-hatch-star{
  position:absolute;
  left:var(--x);
  top:var(--y);
  width:var(--size);
  height:var(--size);
  border-radius:50%;
  background:radial-gradient(circle,#fff6d8 0 25%,#e8c77b 32%,rgba(232,199,123,0) 72%);
  box-shadow:0 0 8px rgba(255,226,156,.38);
  animation:dragonboundHomeHatchStar var(--dur) ease-in-out infinite;
  animation-delay:var(--delay);
}
@keyframes dragonboundHomeHatchStar{0%,100%{opacity:.12;transform:scale(.7)}50%{opacity:.95;transform:scale(1.25)}}
.dragonbound-home-hatch-result-card{
  position:relative;
  z-index:4;
  width:min(1000px,91vw);
  max-height:90vh;
  display:grid;
  grid-template-columns:minmax(280px,.86fr) minmax(310px,1fr);
  grid-template-rows:auto auto auto 1fr;
  column-gap:34px;
  align-items:center;
  padding:28px 32px;
  box-sizing:border-box;
  border:1px solid rgba(226,191,111,.64);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(8,27,30,.94),rgba(5,14,19,.96));
  box-shadow:0 32px 80px rgba(0,0,0,.62),inset 0 0 0 1px rgba(255,236,191,.055),0 0 48px rgba(114,191,179,.08);
  overflow:auto;
}
.dragonbound-home-hatch-kicker{
  grid-column:2;
  align-self:end;
  margin:0 0 8px;
  color:#9bcfc1;
  font:800 11px/1 Georgia,serif;
  letter-spacing:.22em;
  text-align:center;
}
.dragonbound-home-hatch-portrait-wrap{
  grid-column:1;
  grid-row:1/5;
  position:relative;
  justify-self:center;
  display:flex;
  align-items:center;
  justify-content:center;
  width:min(35vw,360px);
  height:min(72vh,650px);
  max-height:72vh;
}
.dragonbound-home-hatch-portrait-glow{
  position:absolute;
  width:94%;
  height:62%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,230,161,.3),rgba(106,190,176,.17) 37%,transparent 72%);
  filter:blur(18px);
  animation:dragonboundHomePortraitGlow 3s ease-in-out infinite;
}
@keyframes dragonboundHomePortraitGlow{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:1}}
.dragonbound-home-hatch-portrait{
  position:relative;
  z-index:2;
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  border-radius:18px;
  border:1px solid rgba(235,202,129,.62);
  box-shadow:0 22px 52px rgba(0,0,0,.5),0 0 30px rgba(233,198,119,.16);
  animation:dragonboundHomePortraitReveal .9s cubic-bezier(.14,.8,.2,1) both,dragonboundHomePortraitFloat 4s ease-in-out 1s infinite;
}
@keyframes dragonboundHomePortraitReveal{0%{opacity:0;transform:translateY(24px) scale(.82);filter:brightness(1.8) blur(5px)}65%{opacity:1;transform:translateY(-4px) scale(1.025);filter:brightness(1.12) blur(0)}100%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}
@keyframes dragonboundHomePortraitFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.dragonbound-home-hatch-type{
  grid-column:2;
  margin:0;
  color:#f1d28a;
  font:900 clamp(25px,2.2vw,37px)/1.04 Georgia,serif;
  text-align:center;
  text-shadow:0 2px 3px rgba(0,0,0,.55),0 0 18px rgba(227,190,105,.15);
}
.dragonbound-home-hatch-origin{
  grid-column:2;
  margin:8px 0 20px;
  color:#b7cbc3;
  font:600 13px/1.4 Georgia,serif;
  text-align:center;
}
.dragonbound-home-hatch-gender{
  grid-column:2;
  justify-self:center;
  margin:-8px 0 18px;
  padding:6px 13px;
  border:1px solid rgba(229,199,126,.34);
  border-radius:999px;
  background:rgba(6,29,31,.72);
  color:#f0d898;
  font:900 11px/1 Georgia,serif;
  letter-spacing:.12em;
  text-align:center;
  text-transform:uppercase;
  box-shadow:0 6px 18px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.025);
}
.dragonbound-home-hatch-gender.is-male,
.dragonbound-home-hatch-gender.is-female{color:#f3d998;border-color:rgba(231,199,122,.52)}
.dragonbound-home-hatch-gender.is-error{color:#dca99f;border-color:rgba(211,139,126,.42)}
.dragonbound-home-hatch-name-form{
  grid-column:2;
  align-self:start;
  padding-top:18px;
  border-top:1px solid rgba(222,187,110,.18);
  transition:opacity .2s ease;
}
.dragonbound-home-hatch-name-form.is-hidden{display:none}
.dragonbound-home-hatch-name-form label{
  display:block;
  margin-bottom:10px;
  color:#eadbb8;
  font:800 15px/1.2 Georgia,serif;
  text-align:center;
}
.dragonbound-home-hatch-name-row{display:flex;gap:9px;align-items:center}
.dragonbound-home-hatch-name-input{
  flex:1;
  min-width:0;
  height:44px;
  padding:0 14px;
  box-sizing:border-box;
  border:1px solid rgba(213,177,103,.46)!important;
  border-radius:11px!important;
  outline:none!important;
  background:rgba(3,17,21,.82)!important;
  color:#f0e0bb!important;
  font:700 15px/1 Georgia,serif!important;
  box-shadow:inset 0 0 14px rgba(0,0,0,.28)!important;
}
.dragonbound-home-hatch-name-input:focus{
  border-color:rgba(239,207,139,.8)!important;
  box-shadow:0 0 0 2px rgba(129,190,179,.12),inset 0 0 14px rgba(0,0,0,.28)!important;
}
.dragonbound-home-hatch-name-submit,
.dragonbound-home-hatch-continue{
  appearance:none!important;
  -webkit-appearance:none!important;
  min-height:44px;
  border:1px solid rgba(225,188,105,.68)!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,rgba(13,54,50,.98),rgba(6,29,31,.98))!important;
  background-image:none!important;
  color:#f1d89a!important;
  padding:0 17px!important;
  font:800 12px/1 Georgia,serif!important;
  cursor:pointer;
  box-shadow:0 5px 14px rgba(0,0,0,.26)!important;
  transition:transform .16s ease,filter .16s ease,border-color .16s ease!important;
}
.dragonbound-home-hatch-name-submit:hover,
.dragonbound-home-hatch-name-submit:focus-visible,
.dragonbound-home-hatch-continue:hover,
.dragonbound-home-hatch-continue:focus-visible{
  background:linear-gradient(180deg,rgba(16,66,60,.98),rgba(7,36,37,.98))!important;
  background-image:none!important;
  transform:translateY(-1px);
  filter:brightness(1.06);
  border-color:rgba(241,210,140,.86)!important;
}
.dragonbound-home-hatch-name-feedback{
  min-height:18px;
  margin:8px 2px 0;
  color:#dba89c;
  font:600 11px/1.4 Georgia,serif;
  text-align:center;
}
.dragonbound-home-hatch-named{
  grid-column:2;
  display:none;
  text-align:center;
  padding-top:18px;
  border-top:1px solid rgba(222,187,110,.18);
}
.dragonbound-home-hatch-named.is-visible{display:block}
.dragonbound-home-hatch-named-copy{
  margin:0 0 14px;
  color:#d8e4db;
  font:600 16px/1.5 Georgia,serif;
}
.dragonbound-home-hatch-named-copy strong{color:#f2d88f;font-size:21px}
.dragonbound-home-hatch-continue{min-width:180px}

@media(max-width:820px){
  .dragonbound-home-basket-confirm-actions{flex-direction:column}
  .dragonbound-home-basket-confirm-button{width:100%}
  .dragonbound-home-hatch-result-card{
    width:min(94vw,680px);
    max-height:92vh;
    display:flex;
    flex-direction:column;
    padding:20px;
    gap:0;
  }
  .dragonbound-home-hatch-portrait-wrap{width:min(54vw,270px);height:min(49vh,480px);margin:6px auto 16px}
  .dragonbound-home-hatch-kicker{order:-2}
  .dragonbound-home-hatch-portrait-wrap{order:-1}
  .dragonbound-home-hatch-type{font-size:26px}
  .dragonbound-home-hatch-name-form,.dragonbound-home-hatch-named{width:100%}
  .dragonbound-home-hatch-name-row{flex-direction:column}
  .dragonbound-home-hatch-name-input,.dragonbound-home-hatch-name-submit{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-home-hatch-opening-image.is-playing,
  .dragonbound-home-hatch-opening-glow,
  .dragonbound-home-hatch-opening-shimmer,
  .dragonbound-home-hatch-result::before,
  .dragonbound-home-hatch-star,
  .dragonbound-home-hatch-portrait-glow,
  .dragonbound-home-hatch-portrait{animation:none!important}
}


/* V32.25 — Dragonbound launcher hard lock. Do not override below this line. */
html body #repoDashboardV20 .repo-dash-skill-group>div>#openDragonbound{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:75px!important;
  min-height:75px!important;
  max-height:75px!important;
  padding:5px 2px!important;
  overflow:visible!important;
}
html body #repoDashboardV20 #openDragonbound .dragonbound-home-icon{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  min-height:36px!important;
  max-width:36px!important;
  max-height:36px!important;
  flex:0 0 36px!important;
  margin:0 auto 2px!important;
}
html body #repoDashboardV20 #openDragonbound .dragonbound-home-icon img{
  width:36px!important;
  height:36px!important;
  max-width:none!important;
  object-fit:contain!important;
}
html body #repoDashboardV20 #openDragonbound .activity-button-copy{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  min-height:12px!important;
  overflow:visible!important;
  display:block!important;
}
html body #repoDashboardV20 #openDragonbound .activity-button-copy>span{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  font:900 7px/1 Georgia,serif!important;
  letter-spacing:-.02em!important;
  transform:none!important;
}


/* V32.26 — six-frame delivered basket opening */


/* V32.27 — Delivered basket click routing hotfix */
.dragonbound-home-basket-wrap.is-visible{
  pointer-events:auto!important;
}
.dragonbound-home-basket-wrap.is-visible:not(.is-ready){
  cursor:default!important;
}
.dragonbound-home-basket-wrap.is-ready{
  pointer-events:auto!important;
  cursor:pointer!important;
}


/* V32.28 — hard isolation between Bonnie UI and delivered home basket */
.dragonbound-bonnie-menu-overlay:not(.is-visible),
.dragonbound-bonnie-menu-overlay:not(.is-visible) *,
.dragonbound-new-game-stage:not(.is-adoption-interior) .dragonbound-bonnie-menu-overlay,
.dragonbound-new-game-stage:not(.is-adoption-interior) .dragonbound-bonnie-menu-overlay *{
  pointer-events:none!important;
}
.dragonbound-bonnie-menu-overlay:not(.is-visible) .dragonbound-bonnie-chat-wrap,
.dragonbound-new-game-stage:not(.is-adoption-interior) .dragonbound-bonnie-chat-wrap{
  visibility:hidden!important;
}
.dragonbound-home-basket-wrap.is-visible{
  pointer-events:auto!important;
}


/* V32.29 — Dragonbound hatch reveal focus + rules book modal */
.dragonbound-rules-overlay{
  position:absolute;
  inset:0;
  z-index:135;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease,visibility 0s linear .24s;
}
.dragonbound-rules-overlay.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition-delay:0s;
}
.dragonbound-rules-backdrop{
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 42%,rgba(34,61,72,.22),rgba(2,7,10,.9) 72%);
  backdrop-filter:blur(6px);
}
.dragonbound-rules-panel{
  position:absolute;
  left:50%;
  top:50%;
  width:min(1440px,95vw);
  max-height:92vh;
  transform:translate(-50%,-50%) scale(.965);
  padding:18px;
  box-sizing:border-box;
  border:1px solid rgba(226,191,111,.72);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(8,28,32,.97),rgba(5,16,21,.98));
  box-shadow:0 28px 90px rgba(0,0,0,.64),inset 0 0 0 1px rgba(255,240,206,.05),0 0 44px rgba(104,176,166,.12);
  overflow:hidden;
  animation:dragonboundRulesPanelIn .34s cubic-bezier(.17,.84,.25,1) forwards;
}
@keyframes dragonboundRulesPanelIn{
  0%{transform:translate(-50%,-50%) scale(.955);opacity:0}
  100%{transform:translate(-50%,-50%) scale(1);opacity:1}
}
.dragonbound-rules-close{
  position:absolute;
  right:18px;
  top:18px;
  z-index:3;
  width:40px;
  height:40px;
  border:1px solid rgba(226,191,111,.6)!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,rgba(12,46,48,.97),rgba(6,24,29,.98))!important;
  color:#f2d99b!important;
  font:900 24px/1 Georgia,serif!important;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(0,0,0,.32)!important;
  transition:transform .16s ease,filter .16s ease,border-color .16s ease!important;
}
.dragonbound-rules-close:hover,
.dragonbound-rules-close:focus-visible{
  transform:translateY(-1px);
  filter:brightness(1.08);
  border-color:rgba(244,212,141,.92)!important;
}
.dragonbound-rules-shine{
  position:absolute;
  inset:-18% auto -18% -40%;
  width:42%;
  background:linear-gradient(105deg,transparent 24%,rgba(255,244,214,.06) 46%,rgba(255,244,214,.2) 50%,rgba(255,244,214,.05) 54%,transparent 76%);
  transform:skewX(-18deg);
  animation:dragonboundRulesShine 3.6s ease-in-out infinite;
  pointer-events:none;
}
@keyframes dragonboundRulesShine{
  0%,100%{left:-45%;opacity:0}
  18%{opacity:.55}
  52%{left:103%;opacity:.18}
  100%{left:103%;opacity:0}
}
.dragonbound-rules-image{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  height:auto;
  max-height:calc(92vh - 36px);
  object-fit:contain;
  border-radius:16px;
  box-shadow:0 18px 44px rgba(0,0,0,.4);
}

.dragonbound-home-hatch-result-card{
  width:min(1120px,92vw)!important;
  max-height:92vh!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:0!important;
  padding:22px 22px 18px!important;
}
.dragonbound-home-hatch-kicker{
  grid-column:auto!important;
  align-self:auto!important;
  margin:0 0 7px!important;
  font-size:10px!important;
  letter-spacing:.23em!important;
}
.dragonbound-home-hatch-type{
  grid-column:auto!important;
  margin:0!important;
  font-size:clamp(26px,2.6vw,44px)!important;
}
.dragonbound-home-hatch-origin{
  grid-column:auto!important;
  margin:6px 0 14px!important;
  font-size:13px!important;
}
.dragonbound-home-hatch-gender{
  grid-column:auto!important;
  margin:-7px 0 12px!important;
}
.dragonbound-home-hatch-portrait-wrap{
  grid-column:auto!important;
  grid-row:auto!important;
  width:min(74vw,760px)!important;
  height:min(72vh,800px)!important;
  max-height:72vh!important;
  margin:0 auto 0!important;
}
.dragonbound-home-hatch-portrait{
  max-width:100%!important;
  max-height:100%!important;
}
.dragonbound-home-hatch-name-form,
.dragonbound-home-hatch-named{
  grid-column:auto!important;
  width:min(460px,calc(100% - 34px))!important;
  margin:-80px auto 0!important;
  padding:14px 16px 12px!important;
  border:1px solid rgba(226,191,111,.34)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(5,18,23,.9),rgba(4,12,16,.94))!important;
  box-shadow:0 14px 30px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,245,220,.04)!important;
  backdrop-filter:blur(8px);
  position:relative;
  z-index:8;
}
.dragonbound-home-hatch-name-form{
  border-top:none!important;
}
.dragonbound-home-hatch-name-form label{
  margin-bottom:8px!important;
  font-size:14px!important;
}
.dragonbound-home-hatch-name-row{
  gap:8px!important;
}
.dragonbound-home-hatch-name-input{
  height:42px!important;
  font-size:14px!important;
}
.dragonbound-home-hatch-name-submit,
.dragonbound-home-hatch-continue{
  min-height:42px!important;
  font-size:11px!important;
  padding:0 15px!important;
}
.dragonbound-home-hatch-name-feedback{
  min-height:16px!important;
  margin:7px 2px 0!important;
  font-size:10px!important;
}
.dragonbound-home-hatch-named{
  text-align:center!important;
  border-top:none!important;
}
.dragonbound-home-hatch-named-copy{
  margin:0 0 12px!important;
  font-size:15px!important;
}
.dragonbound-home-hatch-named-copy strong{
  font-size:19px!important;
}

@media(max-width:820px){
  .dragonbound-rules-panel{
    width:min(96vw,980px)!important;
    padding:12px!important;
  }
  .dragonbound-rules-close{
    right:12px!important;
    top:12px!important;
  }
  .dragonbound-home-hatch-result-card{
    width:min(96vw,720px)!important;
    padding:18px 14px 16px!important;
  }
  .dragonbound-home-hatch-portrait-wrap{
    width:min(80vw,500px)!important;
    height:min(57vh,560px)!important;
  }
  .dragonbound-home-hatch-name-form,
  .dragonbound-home-hatch-named{
    width:min(92%,440px)!important;
    margin:-62px auto 0!important;
    padding:12px 12px 10px!important;
  }
  .dragonbound-home-hatch-name-row{
    flex-direction:column!important;
  }
  .dragonbound-home-hatch-name-input,
  .dragonbound-home-hatch-name-submit,
  .dragonbound-home-hatch-continue{
    width:100%!important;
  }
}


/* V32.30 — Rules image only, no surrounding modal box */
.dragonbound-rules-backdrop{
  background:rgba(2,7,10,.82)!important;
  backdrop-filter:blur(4px)!important;
}
.dragonbound-rules-panel{
  width:min(1460px,96vw)!important;
  max-height:94vh!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.dragonbound-rules-image{
  width:100%!important;
  max-height:94vh!important;
  border-radius:0!important;
  box-shadow:none!important;
  filter:drop-shadow(0 24px 40px rgba(0,0,0,.48));
}
.dragonbound-rules-close{
  right:1.5%!important;
  top:1.5%!important;
  width:auto!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#f2d99b!important;
  font:900 32px/1 Georgia,serif!important;
  text-shadow:0 2px 4px rgba(0,0,0,.75),0 0 10px rgba(242,217,155,.25);
}
.dragonbound-rules-close:hover,
.dragonbound-rules-close:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
  transform:scale(1.08)!important;
  filter:brightness(1.08)!important;
}
@media(max-width:820px){
  .dragonbound-rules-panel{width:min(98vw,980px)!important;padding:0!important}
  .dragonbound-rules-close{right:2%!important;top:2%!important;font-size:28px!important}
}

/* V32.31 — Autonomous baby dragons */
.dragonbound-home-world{
  position:absolute;
  inset:0;
  pointer-events:none;
  transform-origin:50% 50%;
  animation:dragonboundHomeWorldBreath 18s ease-in-out infinite;
}
@keyframes dragonboundHomeWorldBreath{
  0%,100%{transform:scale(1.075) translate3d(0,0,0)}
  50%{transform:scale(1.092) translate3d(0,-.25%,0)}
}
.dragonbound-home-world .dragonbound-home-image{
  transform:none!important;
  animation:none!important;
}
.dragonbound-baby-dragon-layer{
  position:absolute;
  inset:0;
  z-index:15;
  overflow:visible;
  pointer-events:none;
}
.dragonbound-baby-actor{
  position:absolute;
  width:0;
  height:0;
  pointer-events:none;
  will-change:left,top;
}
.dragonbound-baby-sprite{
  position:absolute;
  left:0;
  top:0;
  max-width:none!important;
  height:auto!important;
  image-rendering:pixelated;
  image-rendering:crisp-edges;
  transform-origin:50% 92%;
  filter:drop-shadow(0 7px 6px rgba(0,0,0,.3));
  will-change:transform,width;
  user-select:none;
  -webkit-user-drag:none;
}
.dragonbound-baby-actor[data-state="sleeping"] .dragonbound-baby-sprite,
.dragonbound-baby-actor[data-state="resting"] .dragonbound-baby-sprite{filter:drop-shadow(0 4px 5px rgba(0,0,0,.28))}
.dragonbound-baby-actor[data-state="flying"] .dragonbound-baby-sprite,
.dragonbound-baby-actor[data-state="takingOff"] .dragonbound-baby-sprite{filter:drop-shadow(0 12px 8px rgba(0,0,0,.24))}

.dragonbound-nav-debug{
  position:absolute;
  inset:0;
  z-index:180;
  pointer-events:none;
  font:11px/1.35 monospace;
  color:#fff;
}
.dragonbound-nav-debug canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
}
.dragonbound-nav-debug-head{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:2;
  min-width:220px;
  padding:8px 10px;
  border:1px solid rgba(255,215,100,.7);
  background:rgba(0,0,0,.82);
  pointer-events:auto;
}
.dragonbound-nav-debug-head button{
  float:right;
  margin-left:6px;
  border:1px solid rgba(255,215,100,.5)!important;
  background:#102225!important;
  color:#f6da8e!important;
  cursor:pointer;
}
.dragonbound-nav-debug pre{
  position:absolute;
  right:12px;
  bottom:52px;
  z-index:2;
  margin:0;
  padding:7px 9px;
  background:rgba(0,0,0,.78);
  border:1px solid rgba(255,255,255,.18);
  pointer-events:none;
}
@media(max-width:720px){
  @keyframes dragonboundHomeWorldBreath{
    0%,100%{transform:scale(1.11) translate3d(0,0,0)}
    50%{transform:scale(1.13) translate3d(0,-.2%,0)}
  }
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-home-world{animation:none!important;transform:scale(1.075)!important}
}


/* V32.37 — Dragonbound travel menu + return-home flow */
.dragonbound-home-sidebar.is-visible{pointer-events:auto!important}
.dragonbound-home-sidebar-image{pointer-events:none!important}
.dragonbound-home-sidebar-hotspot{position:absolute;z-index:4;display:block;border:0!important;outline:0;background:transparent!important;background-image:none!important;box-shadow:none!important;padding:0!important;margin:0!important;cursor:pointer;opacity:1}
.dragonbound-home-sidebar-hotspot--travel{left:17%;top:26.6%;width:68%;height:26.8%}
.dragonbound-home-sidebar-hotspot:hover,.dragonbound-home-sidebar-hotspot:focus-visible{background:transparent!important;background-image:none!important;box-shadow:0 0 0 2px rgba(227,198,112,.18)!important;border-radius:24px}
.dragonbound-travel-menu{position:absolute;inset:0;z-index:142;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s}
.dragonbound-travel-menu.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.dragonbound-travel-menu-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 44%,rgba(17,46,48,.30),rgba(1,7,10,.82) 72%);backdrop-filter:blur(7px)}
.dragonbound-travel-menu-panel{position:absolute;left:50%;top:50%;width:min(900px,92vw);transform:translate(-50%,-50%) scale(.975);padding:28px 30px 30px;box-sizing:border-box;border:1px solid rgba(220,188,108,.58);border-radius:22px;background:linear-gradient(145deg,rgba(13,38,40,.98),rgba(5,20,25,.985) 55%,rgba(4,15,20,.99));box-shadow:0 30px 90px rgba(0,0,0,.56),inset 0 0 0 1px rgba(255,244,214,.04);overflow:hidden;animation:dragonboundTravelPanelIn .28s cubic-bezier(.18,.82,.24,1) forwards}
@keyframes dragonboundTravelPanelIn{from{opacity:0;transform:translate(-50%,-48%) scale(.965)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.dragonbound-travel-menu-panel::before{content:"";position:absolute;left:7%;right:7%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(241,211,139,.82),transparent)}
.dragonbound-travel-menu-close{position:absolute;right:18px;top:15px;z-index:3;width:36px;height:36px;padding:0!important;border:1px solid rgba(220,188,108,.42)!important;border-radius:50%!important;background:rgba(7,25,28,.72)!important;background-image:none!important;box-shadow:none!important;color:#e7cb86!important;font:700 24px/32px Georgia,serif!important;cursor:pointer}
.dragonbound-travel-menu-close:hover,.dragonbound-travel-menu-close:focus-visible{background:rgba(10,38,40,.92)!important;border-color:rgba(235,207,139,.78)!important;transform:scale(1.04)}
.dragonbound-travel-menu-kicker{margin:0 0 6px;color:#88b8ad;font:800 10px/1.2 Georgia,serif;letter-spacing:.24em;text-align:center}
.dragonbound-travel-menu-title{margin:0;color:#efd18a;font:800 clamp(25px,2.3vw,38px)/1.08 Georgia,serif;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.32)}
.dragonbound-travel-menu-copy{margin:9px auto 22px;max-width:560px;color:#a9bfba;font:600 12px/1.45 Georgia,serif;text-align:center}
.dragonbound-travel-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.dragonbound-travel-destination{position:relative;display:grid;grid-template-rows:122px 1fr;min-height:244px;padding:0!important;overflow:hidden;border:1px solid rgba(190,158,83,.34)!important;border-radius:16px!important;background:linear-gradient(180deg,rgba(13,43,44,.92),rgba(6,27,31,.97))!important;background-image:none!important;box-shadow:0 10px 26px rgba(0,0,0,.22)!important;color:#e9d5a6!important;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,filter .16s ease}
.dragonbound-travel-destination:hover,.dragonbound-travel-destination:focus-visible{transform:translateY(-3px);border-color:rgba(235,207,139,.78)!important;filter:brightness(1.06);background:linear-gradient(180deg,rgba(15,50,49,.96),rgba(7,31,34,.98))!important;background-image:none!important;box-shadow:0 15px 34px rgba(0,0,0,.3)!important}
.dragonbound-travel-destination-preview{display:block;width:100%;height:122px;background-position:center;background-size:cover;border-bottom:1px solid rgba(224,193,113,.22);filter:saturate(.92) contrast(1.03) brightness(.88)}
.dragonbound-travel-destination--adoption .dragonbound-travel-destination-preview{background-image:linear-gradient(180deg,rgba(2,12,14,.04),rgba(2,12,14,.34)),url('assets/dragonbound/dragonbound-adoption-centre.png')}
.dragonbound-travel-destination--estate .dragonbound-travel-destination-preview{background-image:linear-gradient(180deg,rgba(2,12,14,.04),rgba(2,12,14,.34)),url('assets/dragonbound/estate/dragonbound-estate-exterior.png')}
.dragonbound-travel-destination-preview--home{background-image:radial-gradient(circle at 50% 40%,rgba(101,163,128,.22),rgba(3,16,20,.94))}
.dragonbound-travel-destination-text{display:block;padding:15px 17px 17px}
.dragonbound-travel-destination-text strong{display:block;margin-bottom:7px;color:#efd18a;font:800 15px/1.2 Georgia,serif}
.dragonbound-travel-destination-text small{display:block;color:#a7b9b4;font:600 10px/1.45 Georgia,serif}
.dragonbound-travel-destination-arrow{position:absolute;right:12px;bottom:9px;color:rgba(235,207,139,.72);font:700 22px/1 Georgia,serif}
.dragonbound-location-return-home{position:absolute;right:4.3%;top:3.2%;z-index:88;display:flex;align-items:center;gap:8px;min-height:38px;padding:0 14px!important;border:1px solid rgba(225,195,119,.5)!important;border-radius:999px!important;background:linear-gradient(180deg,rgba(8,37,39,.91),rgba(5,23,28,.94))!important;background-image:none!important;box-shadow:0 10px 25px rgba(0,0,0,.3)!important;color:#efd18a!important;font:800 11px/1 Georgia,serif!important;letter-spacing:.04em;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-7px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s,filter .15s ease}
.dragonbound-location-return-home-icon{font-size:17px;line-height:1;color:#9bc2b7}
.dragonbound-new-game-stage.has-owned-home.is-adoption .dragonbound-location-return-home,.dragonbound-new-game-stage.has-owned-home.is-adoption-interior .dragonbound-location-return-home,.dragonbound-new-game-stage.has-owned-home.is-estate-exterior .dragonbound-location-return-home,.dragonbound-new-game-stage.has-owned-home.is-estate-interior .dragonbound-location-return-home{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}
.dragonbound-location-return-home:hover,.dragonbound-location-return-home:focus-visible{background:linear-gradient(180deg,rgba(12,51,50,.96),rgba(6,30,33,.98))!important;background-image:none!important;border-color:rgba(238,207,133,.84)!important;filter:brightness(1.06);transform:translateY(-1px)!important}
@media(max-width:780px){.dragonbound-travel-menu-panel{width:min(94vw,620px);padding:24px 18px 20px;max-height:88vh;overflow:auto}.dragonbound-travel-menu-grid{grid-template-columns:1fr}.dragonbound-travel-destination{grid-template-columns:112px 1fr;grid-template-rows:auto;min-height:96px}.dragonbound-travel-destination-preview{height:100%;min-height:96px;border-bottom:0;border-right:1px solid rgba(224,193,113,.22)}.dragonbound-travel-menu-copy{margin-bottom:16px}.dragonbound-location-return-home{right:4%;top:3%;font-size:10px!important;min-height:34px;padding:0 11px!important}}
@media(prefers-reduced-motion:reduce){.dragonbound-travel-menu,.dragonbound-travel-menu-panel,.dragonbound-travel-destination,.dragonbound-location-return-home{animation:none!important;transition-duration:.01ms!important}}


/* V32.38 — travel hotspot hover lock + baby dragon hover identity */
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:hover:not(:disabled),
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:focus-visible,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:active:not(:disabled){
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
  transform:none!important;
}
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot::before,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot::after,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:hover::before,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:hover::after,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:focus-visible::before,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot:focus-visible::after{
  content:none!important;
  display:none!important;
  background:transparent!important;
  box-shadow:none!important;
}
.dragonbound-baby-sprite{pointer-events:auto!important;cursor:default}
.dragonbound-baby-hover-card{
  position:absolute;
  left:0;
  top:calc(-1 * var(--dragon-tooltip-lift,78px));
  z-index:260;
  display:grid;
  grid-template-columns:36px auto;
  align-items:center;
  gap:9px;
  min-width:154px;
  max-width:228px;
  padding:8px 11px 8px 8px;
  border:1px solid rgba(225,197,121,.58);
  border-radius:14px;
  background:linear-gradient(145deg,rgba(7,28,31,.96),rgba(4,17,22,.98));
  box-shadow:0 12px 28px rgba(0,0,0,.42),inset 0 0 0 1px rgba(255,245,219,.04);
  color:#ecd49a;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,7px) scale(.96);
  transform-origin:50% 100%;
  transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s;
  white-space:nowrap;
}
.dragonbound-baby-actor.is-hovered .dragonbound-baby-hover-card{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0) scale(1);
  transition-delay:0s;
}
.dragonbound-baby-hover-card::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-6px;
  width:10px;
  height:10px;
  transform:translateX(-50%) rotate(45deg);
  border-right:1px solid rgba(225,197,121,.5);
  border-bottom:1px solid rgba(225,197,121,.5);
  background:#071b1f;
}
.dragonbound-baby-hover-avatar{
  width:36px;
  height:36px;
  border-radius:50%;
  overflow:hidden;
  border:1px solid rgba(233,205,135,.58);
  background:radial-gradient(circle at 50% 38%,rgba(58,90,87,.7),rgba(5,18,22,.95));
  box-shadow:0 3px 9px rgba(0,0,0,.32);
  display:grid;
  place-items:center;
}
.dragonbound-baby-hover-avatar img{
  width:44px;
  height:44px;
  object-fit:contain;
  image-rendering:pixelated;
  image-rendering:crisp-edges;
}
.dragonbound-baby-hover-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
.dragonbound-baby-hover-name{
  display:block;
  overflow:visible;
  max-width:none;
  color:#f1d58f;
  font:800 12px/1.08 Georgia,serif;
  white-space:normal;
  word-break:break-word;
}
.dragonbound-baby-hover-age{
  color:#91b9b0;
  font:700 9px/1.1 Georgia,serif;
  letter-spacing:.03em;
}
.dragonbound-baby-hover-gender{
  color:#d8c58f;
  font:800 8px/1.1 Georgia,serif;
  letter-spacing:.055em;
}
@media(max-width:720px){
  .dragonbound-baby-hover-card{grid-template-columns:30px auto;min-width:132px;max-width:188px;padding:6px 8px 6px 7px;gap:7px}
  .dragonbound-baby-hover-avatar{width:30px;height:30px}
  .dragonbound-baby-hover-avatar img{width:38px;height:38px}
  .dragonbound-baby-hover-name{font-size:10px}
  .dragonbound-baby-hover-age{font-size:8px}
  .dragonbound-baby-hover-gender{font-size:7px}
}


/* V32.39 — reliable baby hover identity + starter-home music hook */
.dragonbound-baby-dragon-layer{overflow:visible!important}
.dragonbound-baby-actor{overflow:visible!important}
.dragonbound-baby-hover-card{z-index:999!important}
.dragonbound-baby-actor.is-hovered .dragonbound-baby-hover-card{
  display:grid!important;
  opacity:1!important;
  visibility:visible!important;
  transform:translate(-50%,0) scale(1)!important;
}


/* V32.40 — cleaned walk sprites + biome weather */
.dragonbound-baby-actor > .dragonbound-baby-sprite{
  display:block!important;
}
.dragonbound-baby-actor > .dragonbound-baby-sprite ~ .dragonbound-baby-sprite{
  display:none!important;
}
.dragonbound-home-weather-layer{
  position:absolute;
  inset:0;
  z-index:8;
  overflow:hidden;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transition:opacity .8s ease,visibility 0s linear .8s;
}
.dragonbound-home-weather-layer.is-active{
  opacity:1;
  visibility:visible;
  transition-delay:0s;
}
.dragonbound-weather-zone{
  position:absolute;
  overflow:hidden;
  pointer-events:none;
  contain:layout paint;
}
.dragonbound-weather-particle{
  position:absolute;
  left:var(--wx);
  top:var(--wy);
  display:block;
  pointer-events:none;
  will-change:transform,opacity;
  transform:scale(var(--wsize));
}

/* Vardesh / Norveth snow */
.dragonbound-home-weather-layer[data-weather="snow"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="light-snow"] .dragonbound-weather-particle{
  width:5px;height:5px;border-radius:50%;
  background:rgba(242,249,255,.88);
  box-shadow:0 0 5px rgba(222,241,255,.35);
  animation:dragonboundSnowFall var(--wd) linear var(--wdelay) infinite;
}
.dragonbound-home-weather-layer[data-weather="light-snow"] .dragonbound-weather-particle{width:3px;height:3px;opacity:.72}
@keyframes dragonboundSnowFall{0%{transform:translate3d(0,-18px,0) scale(var(--wsize));opacity:0}10%{opacity:.9}100%{transform:translate3d(var(--wdrift),130px,0) scale(var(--wsize));opacity:.15}}

/* Fjord / mountain mist */
.dragonbound-home-weather-layer[data-weather="fjord-mist"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="mountain-mist"] .dragonbound-weather-particle{
  width:130px;height:18px;border-radius:50%;
  background:radial-gradient(ellipse,rgba(221,235,239,.18),rgba(221,235,239,0) 72%);
  filter:blur(5px);
  animation:dragonboundMistDrift var(--wd) ease-in-out var(--wdelay) infinite alternate;
}
@keyframes dragonboundMistDrift{from{transform:translate3d(-35px,0,0) scale(var(--wsize));opacity:.15}to{transform:translate3d(65px,-5px,0) scale(var(--wsize));opacity:.5}}

/* Norveth breeze / Nambara warm motes */
.dragonbound-home-weather-layer[data-weather="wind-motes"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="warm-motes"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="sun-motes"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="forest-motes"] .dragonbound-weather-particle,
.dragonbound-home-weather-layer[data-weather="pollen"] .dragonbound-weather-particle{
  width:3px;height:3px;border-radius:50%;
  background:rgba(245,220,138,.74);
  box-shadow:0 0 6px rgba(244,206,102,.28);
  animation:dragonboundMoteFloat var(--wd) ease-in-out var(--wdelay) infinite;
}
.dragonbound-home-weather-layer[data-weather="forest-motes"] .dragonbound-weather-particle{background:rgba(216,239,186,.58)}
.dragonbound-home-weather-layer[data-weather="wind-motes"] .dragonbound-weather-particle{width:8px;height:1px;border-radius:3px;background:rgba(228,238,232,.34);box-shadow:none}
@keyframes dragonboundMoteFloat{0%{transform:translate3d(-8px,22px,0) scale(var(--wsize));opacity:0}20%{opacity:.8}55%{transform:translate3d(var(--wdrift),-8px,0) scale(var(--wsize))}100%{transform:translate3d(-18px,-38px,0) scale(var(--wsize));opacity:0}}

/* Nambara fireflies */
.dragonbound-home-weather-layer[data-weather="fireflies"] .dragonbound-weather-particle{
  width:4px;height:4px;border-radius:50%;background:#ffd56e;
  box-shadow:0 0 8px #ffc754,0 0 15px rgba(255,184,54,.4);
  animation:dragonboundFirefly var(--wd) ease-in-out var(--wdelay) infinite;
}
@keyframes dragonboundFirefly{0%,100%{transform:translate3d(0,8px,0) scale(.65);opacity:.08}35%{opacity:.95}60%{transform:translate3d(var(--wdrift),-18px,0) scale(var(--wsize));opacity:.35}}

/* Nambara night breeze */
.dragonbound-home-weather-layer[data-weather="night-breeze"] .dragonbound-weather-particle{
  width:16px;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,rgba(157,203,217,.34),transparent);
  animation:dragonboundNightBreeze var(--wd) linear var(--wdelay) infinite;
}
@keyframes dragonboundNightBreeze{from{transform:translate3d(-45px,0,0) rotate(-4deg);opacity:0}20%{opacity:.45}to{transform:translate3d(120px,-20px,0) rotate(-4deg);opacity:0}}

/* Lumerre / Elvane leaves */
.dragonbound-home-weather-layer[data-weather="leaf-drift"] .dragonbound-weather-particle{
  width:8px;height:4px;border-radius:80% 10% 80% 10%;
  background:linear-gradient(135deg,#9dba55,#587e38);
  box-shadow:0 1px 2px rgba(0,0,0,.18);
  animation:dragonboundLeafDrift var(--wd) ease-in-out var(--wdelay) infinite;
}
@keyframes dragonboundLeafDrift{0%{transform:translate3d(0,-12px,0) rotate(0deg) scale(var(--wsize));opacity:0}12%{opacity:.75}55%{transform:translate3d(var(--wdrift),55px,0) rotate(240deg) scale(var(--wsize))}100%{transform:translate3d(-18px,120px,0) rotate(520deg) scale(var(--wsize));opacity:0}}

/* Elvane occasional rain stays outside the cutaway rooms because particles only exist in exterior zones. */
.dragonbound-home-weather-layer[data-weather="soft-rain"] .dragonbound-weather-particle{
  width:1px;height:15px;border-radius:2px;
  background:linear-gradient(180deg,rgba(195,224,232,0),rgba(195,224,232,.58));
  animation:dragonboundSoftRain var(--wd) linear var(--wdelay) infinite;
}
@keyframes dragonboundSoftRain{from{transform:translate3d(0,-25px,0) rotate(8deg);opacity:0}12%{opacity:.6}to{transform:translate3d(22px,155px,0) rotate(8deg);opacity:0}}

@media(prefers-reduced-motion:reduce){
  .dragonbound-home-weather-layer{opacity:.35!important}
  .dragonbound-home-weather-layer .dragonbound-weather-particle{animation:none!important}
}

/* V32.41 — Dragonbound one-and-done adoption lock */
.dragonbound-adopt-lock-notice{
  position:absolute;
  left:50%;
  bottom:4.2%;
  z-index:18;
  max-width:70%;
  transform:translateX(-50%) translateY(5px);
  padding:8px 14px;
  border:1px solid rgba(218,184,105,.46);
  border-radius:999px;
  background:rgba(5,18,20,.88);
  color:#f2d99a;
  font:700 11px/1.2 Georgia,serif;
  letter-spacing:.08em;
  text-align:center;
  text-transform:uppercase;
  box-shadow:0 8px 22px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,245,216,.035);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;
}
.dragonbound-adopt-lock-notice.is-visible{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}
.dragonbound-adopt-lock-notice.is-admin{
  border-color:rgba(108,188,170,.62);
  color:#bce7d7;
  background:rgba(5,31,31,.9);
}
.dragonbound-adopt-menu-overlay.is-one-and-done-locked .dragonbound-adopt-menu-action--confirm,
.dragonbound-adopt-menu-overlay.is-one-and-done-locked .dragonbound-adopt-menu-action--confirm:hover,
.dragonbound-adopt-menu-overlay.is-one-and-done-locked .dragonbound-adopt-menu-action--confirm:focus-visible{
  cursor:not-allowed!important;
  opacity:.42!important;
  filter:grayscale(.45) brightness(.72)!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
.dragonbound-adopt-menu-overlay.is-admin-reroll .dragonbound-adopt-menu-action--confirm{
  filter:drop-shadow(0 0 8px rgba(103,188,168,.18));
}

/* V32.42 — Dragonbound adoption + save/load hotfix */
.dragonbound-adopt-confirmation-status{
  position:relative;
  min-height:0;
  margin:0 auto;
  max-width:390px;
  color:#d9c99e;
  font:600 13px/1.35 Georgia,serif;
  letter-spacing:.015em;
  opacity:0;
  transform:translateY(-3px);
  transition:opacity .16s ease,transform .16s ease,margin .16s ease;
}
.dragonbound-adopt-confirmation-status.is-visible{
  margin-top:13px;
  opacity:.92;
  transform:translateY(0);
}
.dragonbound-adopt-confirmation-status.is-error{color:#ffd3bd;}
.dragonbound-adopt-confirmation.is-pending .dragonbound-adopt-confirmation-button{cursor:wait;}
.dragonbound-adopt-confirmation-button:disabled{
  opacity:.58;
  transform:none!important;
  cursor:wait;
}
.dragonbound-menu-actions .dragonbound-menu-action.is-save-disabled{
  cursor:not-allowed!important;
}
.dragonbound-menu-actions .dragonbound-menu-action.is-save-disabled::before,
.dragonbound-menu-actions .dragonbound-menu-action.is-save-disabled::after{
  opacity:0!important;
  transform:none!important;
}
.dragonbound-menu-actions .dragonbound-menu-action.is-save-ready{
  cursor:pointer!important;
}

/* V32.51 — individual Dragonbound personality system */
.dragonbound-baby-hover-nature{
  display:none;
  max-width:142px;
  overflow:hidden;
  color:#a9c8bd;
  font:700 7px/1.15 Georgia,serif;
  letter-spacing:.035em;
  text-overflow:ellipsis;
}
.dragonbound-baby-hover-nature.is-visible{display:block}
@media(max-width:720px){.dragonbound-baby-hover-nature{max-width:112px;font-size:6.5px}}

.dragonbound-study-observed-nature{
  margin-top:.9em!important;
  padding:.72em .78em!important;
  border:1px solid rgba(92,116,76,.32);
  border-radius:7px;
  background:rgba(49,76,59,.065);
}
.dragonbound-study-dragon-dossier{
  margin-top:.9em!important;
  padding:.8em .82em!important;
  border:1px solid rgba(147,118,66,.34);
  border-radius:7px;
  background:rgba(84,63,34,.075);
}
.dragonbound-study-dragon-dossier span{display:block;margin-bottom:.45em;font-weight:800;letter-spacing:.08em;color:#8b6a3a}
.dragonbound-study-dragon-dossier em{display:block;margin:.3em 0 0;color:#5c4b31;font-style:normal}
.dragonbound-study-trait-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:.55em}
.dragonbound-study-trait-pills b{padding:.33em .62em;border-radius:999px;border:1px solid rgba(136,110,60,.24);background:rgba(255,248,233,.62);font-size:.78em;color:#6b5131}
.dragonbound-study-trait-pills b.is-hidden{opacity:.62;border-style:dashed}
.dragonbound-study-observed-nature>span{
  display:block;
  margin-bottom:.45em;
  color:#31573d;
  font-weight:900;
  letter-spacing:.11em;
}

.dragonbound-home-hatch-nature-hint{
  position:relative;
  z-index:8;
  max-width:480px;
  margin:-4px 0 5px!important;
  color:#9fbab3;
  font:600 10px/1.35 Georgia,serif;
  text-align:center;
  letter-spacing:.02em;
  opacity:.88;
}

.dragonbound-personality-debug{
  position:absolute;
  right:16px;
  top:16px;
  z-index:1400;
  width:min(330px,42vw);
  max-height:72vh;
  overflow:hidden;
  border:1px solid rgba(183,210,166,.42);
  border-radius:12px;
  background:linear-gradient(155deg,rgba(4,22,24,.96),rgba(6,14,18,.97));
  box-shadow:0 14px 36px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.025);
  color:#d8e2c4;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  pointer-events:auto;
}
.dragonbound-personality-debug-head{
  display:flex;
  align-items:center;
  gap:7px;
  padding:8px 9px;
  border-bottom:1px solid rgba(183,210,166,.16);
  background:rgba(39,76,66,.18);
}
.dragonbound-personality-debug-head strong{margin-right:auto;font-size:10px;letter-spacing:.12em;color:#e8d69a}
.dragonbound-personality-debug-head button{
  appearance:none;
  border:1px solid rgba(185,208,159,.26)!important;
  border-radius:7px!important;
  background:rgba(16,50,48,.56)!important;
  box-shadow:none!important;
  color:#d7e6ca!important;
  padding:4px 7px!important;
  font:800 9px/1 ui-monospace,SFMono-Regular,Consolas,monospace!important;
  cursor:pointer;
}
.dragonbound-personality-debug-head button:hover,
.dragonbound-personality-debug-head button:focus-visible{background:rgba(26,72,65,.72)!important;border-color:rgba(216,225,172,.48)!important}
.dragonbound-personality-debug pre{margin:0;padding:10px 11px;max-height:calc(72vh - 37px);overflow:auto;white-space:pre-wrap;font:700 9px/1.42 ui-monospace,SFMono-Regular,Consolas,monospace;color:#bcd0b7}
.dragonbound-personality-debug.is-collapsed pre{display:none}


/* V32.65 — Dragonbound hatch reveal visibility hotfix.
   The gender node already exists and is populated by the V32.49/V32.51 flow.
   Keep the portrait dominant, but stop the naming panel from covering the
   origin/gender/nature copy on desktop and mobile. */
.dragonbound-home-hatch-gender{
  position:relative!important;
  z-index:12!important;
  min-height:22px!important;
  margin:-5px 0 8px!important;
}
.dragonbound-home-hatch-nature-hint{
  position:relative!important;
  z-index:11!important;
  margin:0 0 9px!important;
}
.dragonbound-home-hatch-name-form,
.dragonbound-home-hatch-named{
  margin:0 auto!important;
}
@media(min-width:821px){
  .dragonbound-home-hatch-portrait-wrap{
    height:min(62vh,700px)!important;
    max-height:62vh!important;
  }
}
@media(max-width:820px){
  .dragonbound-home-hatch-portrait-wrap{
    height:min(52vh,500px)!important;
    max-height:52vh!important;
  }
  .dragonbound-home-hatch-name-form,
  .dragonbound-home-hatch-named{
    margin:0 auto!important;
  }
}


/* V32.78 — visit other Dragonbound keepers */
.dragonbound-travel-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.dragonbound-travel-destination--keepers .dragonbound-travel-destination-preview{background-image:linear-gradient(180deg,rgba(2,12,14,.03),rgba(2,12,14,.38)),url('assets/dragonbound/property/starters/lumerre-greenhollow-starter.png');background-position:center 67%}
.dragonbound-house-visits{position:absolute;inset:0;z-index:151;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s}
.dragonbound-house-visits.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.dragonbound-house-visits-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,rgba(17,49,48,.28),rgba(1,7,10,.88) 72%);backdrop-filter:blur(8px)}
.dragonbound-house-visits-browser{position:absolute;left:50%;top:50%;width:min(1040px,94vw);max-height:min(820px,91vh);transform:translate(-50%,-50%);box-sizing:border-box;padding:28px 30px 30px;border:1px solid rgba(225,195,119,.55);border-radius:22px;background:linear-gradient(145deg,rgba(10,37,36,.99),rgba(4,18,22,.995));box-shadow:0 32px 100px rgba(0,0,0,.65);overflow:auto}
.dragonbound-house-visits-browser[aria-hidden="true"]{display:none}
.dragonbound-house-visits-browser::before{content:"";position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(239,209,138,.85),transparent)}
.dragonbound-house-visits-close{position:absolute;right:18px;top:15px;z-index:3;width:36px;height:36px;padding:0!important;border:1px solid rgba(220,188,108,.42)!important;border-radius:50%!important;background:rgba(7,25,28,.72)!important;background-image:none!important;box-shadow:none!important;color:#e7cb86!important;font:700 24px/32px Georgia,serif!important;cursor:pointer}
.dragonbound-house-visits-kicker{margin:0 0 6px;color:#88b8ad;font:800 10px/1.2 Georgia,serif;letter-spacing:.24em;text-align:center}
.dragonbound-house-visits-browser h2{margin:0;color:#efd18a;font:800 clamp(25px,2.3vw,38px)/1.08 Georgia,serif;text-align:center}
.dragonbound-house-visits-copy{margin:9px auto 18px;max-width:690px;color:#a9bfba;font:600 12px/1.5 Georgia,serif;text-align:center}
.dragonbound-house-visits-search{display:flex;align-items:center;gap:9px;width:min(520px,100%);height:42px;margin:0 auto 10px;padding:0 13px;border:1px solid rgba(108,168,146,.3);border-radius:12px;background:#071a18;color:#91b9ae;box-sizing:border-box}
.dragonbound-house-visits-search input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;color:#dce8e2!important;font:700 12px Georgia,serif!important;outline:none!important}
.dragonbound-house-visits-status{min-height:20px;margin:0 0 8px;color:#8faea6;font:700 10px/20px Georgia,serif;text-align:center}
.dragonbound-house-visits-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.dragonbound-house-visit-card{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);min-height:116px;padding:0!important;overflow:hidden;border:1px solid rgba(185,155,83,.3)!important;border-radius:15px!important;background:linear-gradient(180deg,#0b2c28,#071d1e)!important;background-image:none!important;box-shadow:0 10px 24px rgba(0,0,0,.2)!important;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,filter .16s ease}
.dragonbound-house-visit-card:hover,.dragonbound-house-visit-card:focus-visible{transform:translateY(-2px);border-color:rgba(235,207,139,.75)!important;filter:brightness(1.07)}
.dragonbound-house-visit-card-image{display:block;background-position:center 66%;background-size:cover;border-right:1px solid rgba(225,193,113,.2)}
.dragonbound-house-visit-card-copy{display:flex;flex-direction:column;justify-content:center;padding:13px 42px 13px 15px;min-width:0}
.dragonbound-house-visit-card-copy strong{color:#efd18a;font:800 15px/1.2 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dragonbound-house-visit-card-copy b{margin-top:6px;color:#c6ddd5;font:700 12px/1.2 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dragonbound-house-visit-card-copy small{margin-top:5px;color:#87a89f;font:700 9px/1.35 Georgia,serif}
.dragonbound-house-visit-card-arrow{position:absolute;right:12px;bottom:10px;color:#d8bd79;font:700 10px Georgia,serif}
.dragonbound-house-visits-empty{grid-column:1/-1;padding:42px 20px;border:1px dashed rgba(127,171,155,.24);border-radius:15px;color:#8da79f;font:700 12px Georgia,serif;text-align:center}
.dragonbound-house-visit-preview{position:absolute;inset:0;display:none;overflow:hidden;background:#050a0b}
.dragonbound-house-visits.is-previewing .dragonbound-house-visit-preview{display:block}
.dragonbound-house-visit-preview[aria-hidden="true"]{display:none!important}
.dragonbound-house-visit-world{position:absolute;inset:0;transform-origin:50% 50%;animation:dragonboundHouseVisitBreath 18s ease-in-out infinite;pointer-events:none}
@keyframes dragonboundHouseVisitBreath{0%,100%{transform:scale(1.075) translate3d(0,0,0)}50%{transform:scale(1.092) translate3d(0,-.25%,0)}}
.dragonbound-house-visit-image,.dragonbound-house-visit-light,.dragonbound-house-visit-vignette{position:absolute;inset:0;pointer-events:none}
.dragonbound-house-visit-image{background-position:center center;background-size:cover;background-repeat:no-repeat;filter:saturate(1.02) contrast(1.015) brightness(.99)}
.dragonbound-house-visit-light{z-index:40;background:radial-gradient(circle at 50% 42%,rgba(248,215,149,.08),transparent 53%);mix-blend-mode:screen}
.dragonbound-house-visit-vignette{z-index:41;box-shadow:inset 0 0 110px rgba(0,0,0,.30)}
.dragonbound-house-visit-furniture,.dragonbound-house-visit-dragon-layer{position:absolute;inset:0;z-index:auto;overflow:visible;pointer-events:none}
.dragonbound-house-visit-furnishing,.dragonbound-house-visit-dragon{position:absolute;width:0;height:0;pointer-events:none;isolation:auto}
.dragonbound-house-visit-furnishing img{position:absolute;left:0;top:0;height:auto;max-width:none!important;transform-origin:50% 96%;filter:drop-shadow(0 5px 4px rgba(0,0,0,.28));image-rendering:auto}
.dragonbound-house-visit-dragon-sprite{position:absolute;left:0;top:0;height:auto!important;max-width:none!important;image-rendering:pixelated;image-rendering:crisp-edges;transform-origin:50% 98.5%;filter:drop-shadow(0 7px 6px rgba(0,0,0,.3))}
.dragonbound-house-visit-plaque{position:absolute;left:50%;top:3.2%;z-index:70;min-width:250px;max-width:56vw;transform:translateX(-50%);padding:9px 18px 10px;border:1px solid rgba(225,195,119,.48);border-radius:14px;background:linear-gradient(180deg,rgba(6,32,32,.91),rgba(4,21,25,.93));box-shadow:0 10px 30px rgba(0,0,0,.34);text-align:center;pointer-events:none}
.dragonbound-house-visit-plaque small{display:block;color:#86b4a8;font:800 8px Georgia,serif;letter-spacing:.22em}
.dragonbound-house-visit-plaque strong{display:block;margin-top:3px;color:#efd18a;font:800 16px/1.2 Georgia,serif}
.dragonbound-house-visit-plaque span{display:block;margin-top:3px;color:#aec7c0;font:700 9px Georgia,serif}
.dragonbound-house-visit-list-button,.dragonbound-house-visit-home-button{position:absolute;top:3.2%;z-index:72;min-height:38px;padding:0 14px!important;border:1px solid rgba(225,195,119,.5)!important;border-radius:999px!important;background:linear-gradient(180deg,rgba(8,37,39,.94),rgba(5,23,28,.96))!important;background-image:none!important;box-shadow:0 10px 25px rgba(0,0,0,.32)!important;color:#efd18a!important;font:800 11px/1 Georgia,serif!important;cursor:pointer}
.dragonbound-house-visit-list-button{left:3.3%}.dragonbound-house-visit-home-button{right:3.3%}
.dragonbound-house-visit-list-button:hover,.dragonbound-house-visit-home-button:hover{filter:brightness(1.09)}
.dragonbound-new-game-stage.is-visiting-house .dragonbound-home-sidebar{opacity:0!important;pointer-events:none!important}
@media(max-width:780px){.dragonbound-travel-menu-grid{grid-template-columns:1fr!important}.dragonbound-house-visits-browser{width:95vw;padding:24px 16px 18px}.dragonbound-house-visits-grid{grid-template-columns:1fr}.dragonbound-house-visit-card{grid-template-columns:112px minmax(0,1fr)}.dragonbound-house-visit-plaque{top:9%;max-width:76vw}.dragonbound-house-visit-list-button,.dragonbound-house-visit-home-button{top:2%;font-size:9px!important;min-height:34px;padding:0 10px!important}}
@media(prefers-reduced-motion:reduce){.dragonbound-house-visit-world{animation:none!important;transform:scale(1.075)!important}.dragonbound-house-visits,.dragonbound-house-visit-card{transition-duration:.01ms!important}}


/* V32.79 — pet your baby dragon */
.dragonbound-baby-sprite.is-pet-ready{cursor:pointer!important;}
.dragonbound-baby-hover-pet{
  display:block;margin-top:2px;padding-top:4px;border-top:1px solid rgba(225,197,121,.16);
  color:#8ca9a4;font:800 7px/1.15 Georgia,serif;letter-spacing:.045em;
}
.dragonbound-baby-hover-pet.is-ready{color:#f1b5bd;text-shadow:0 0 7px rgba(240,117,143,.18)}
.dragonbound-baby-pet-love{position:absolute;left:0;top:calc(-1 * var(--dragon-tooltip-lift,78px) + 28px);z-index:998;width:0;height:0;pointer-events:none;}
.dragonbound-baby-pet-love i{position:absolute;left:-7px;top:0;color:#ff8da5;font:900 17px/1 Georgia,serif;text-shadow:0 2px 3px rgba(0,0,0,.5);opacity:0;animation:dragonboundPetHeart 1.65s ease-out forwards;}
.dragonbound-baby-pet-love i:nth-child(2){left:8px;animation-delay:.14s;font-size:12px}.dragonbound-baby-pet-love i:nth-child(3){left:-22px;animation-delay:.27s;font-size:11px}.dragonbound-baby-pet-love i:nth-child(4){left:18px;animation-delay:.4s;font-size:9px}
.dragonbound-baby-pet-love b{position:absolute;left:0;top:18px;transform:translateX(-50%);padding:3px 7px;border-radius:999px;background:rgba(7,28,31,.88);border:1px solid rgba(244,162,177,.38);color:#ffd4dc;font:800 7px/1 Georgia,serif;white-space:nowrap;opacity:0;animation:dragonboundPetLabel 1.45s ease-out .1s forwards;}
.dragonbound-baby-actor.is-being-petted>.dragonbound-baby-sprite{animation:dragonboundPetWiggle .32s ease-in-out 4 alternate;}
@keyframes dragonboundPetHeart{0%{opacity:0;transform:translate(-50%,8px) scale(.6) rotate(-8deg)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-45px) scale(1.18) rotate(9deg)}}
@keyframes dragonboundPetLabel{0%{opacity:0;transform:translate(-50%,5px) scale(.9)}18%,68%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-5px) scale(.96)}}
@keyframes dragonboundPetWiggle{from{filter:brightness(1);margin-top:0}to{filter:brightness(1.08);margin-top:-3px}}
@media(max-width:720px){.dragonbound-baby-hover-pet{font-size:6.5px}}
@media(prefers-reduced-motion:reduce){.dragonbound-baby-pet-love i,.dragonbound-baby-pet-love b,.dragonbound-baby-actor.is-being-petted>.dragonbound-baby-sprite{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Dragonbound — Dragon Bites treats button + feeding animation */
.dragonbound-home-sidebar .dragonbound-home-treats-trigger,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:hover,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:focus,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:focus-visible,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:active,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:disabled{
  position:absolute!important;
  left:18%!important;
  top:calc(100% + 14px)!important;
  width:64%!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  -webkit-tap-highlight-color:transparent!important;
  cursor:pointer!important;
  opacity:1;
  pointer-events:auto;
  transform:none!important;
  overflow:visible!important;
  z-index:12!important;
}
.dragonbound-home-sidebar .dragonbound-home-treats-trigger::before,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger::after{content:none!important;display:none!important;background:none!important;box-shadow:none!important}
.dragonbound-home-sidebar .dragonbound-home-treats-trigger img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:drop-shadow(0 9px 13px rgba(0,0,0,.34));
  pointer-events:none!important;
}
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:hover img,
.dragonbound-home-sidebar .dragonbound-home-treats-trigger:focus-visible img{filter:drop-shadow(0 11px 17px rgba(0,0,0,.42)) brightness(1.03);transform:translateY(-2px) scale(1.015)}
.dragonbound-home-sidebar .dragonbound-home-treats-trigger.is-cooling-down img{opacity:.56;filter:grayscale(.12) brightness(.82) drop-shadow(0 7px 11px rgba(0,0,0,.30))}
.dragonbound-home-treats-cooldown{
  position:absolute;
  left:50%;
  bottom:-5px;
  transform:translate(-50%,100%);
  min-width:42px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid rgba(217,190,107,.42);
  background:rgba(7,20,22,.92);
  color:#f2df9f;
  font:800 10px/1 "Nunito",system-ui,sans-serif;
  letter-spacing:.4px;
  text-align:center;
  box-shadow:0 6px 14px rgba(0,0,0,.32);
  pointer-events:none;
}
.dragonbound-home-treats-cooldown:empty{display:none}
.dragonbound-new-game-stage.is-visiting-house .dragonbound-home-sidebar .dragonbound-home-treats-trigger,
.dragonbound-home-scene.is-build-editing .dragonbound-home-sidebar .dragonbound-home-treats-trigger,
.dragonbound-home-scene.is-build-placing .dragonbound-home-sidebar .dragonbound-home-treats-trigger{opacity:0!important;pointer-events:none!important}
@media(max-width:720px){
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger,
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger:hover,
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger:focus,
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger:focus-visible,
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger:active,
  .dragonbound-home-sidebar .dragonbound-home-treats-trigger:disabled{top:calc(100% + 10px)!important;left:19%!important;width:62%!important}
}

.dragonbound-home-treats-confirm{
  position:absolute;
  inset:0;
  z-index:48;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
}
.dragonbound-home-treats-confirm.is-visible{opacity:1;pointer-events:auto}
.dragonbound-home-treats-confirm-backdrop{position:absolute;inset:0;background:rgba(6,12,18,.72);backdrop-filter:blur(3px)}
.dragonbound-home-treats-confirm-panel{
  position:relative;
  width:min(92vw,520px);
  padding:28px 28px 24px;
  border-radius:28px;
  border:1px solid rgba(228,198,109,.52);
  background:linear-gradient(180deg,rgba(18,32,36,.98),rgba(9,18,22,.98));
  box-shadow:0 24px 56px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.05);
  color:#f4ead2;
  text-align:center;
}
.dragonbound-home-treats-confirm-kicker{margin:0 0 10px;font:800 12px/1.1 "Cinzel",serif;letter-spacing:2.1px;color:#d9b96f}
.dragonbound-home-treats-confirm-title{margin:0;font:700 clamp(28px,3vw,38px)/1.04 "Cinzel",serif;color:#fff5d7}
.dragonbound-home-treats-confirm-copy{margin:14px 0 0;font:500 15px/1.58 "Nunito",system-ui,sans-serif;color:rgba(243,238,227,.92)}
.dragonbound-home-treats-confirm-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:22px}
.dragonbound-home-treats-confirm-button{
  min-width:min(100%,230px);
  padding:13px 20px;
  border-radius:999px;
  border:1px solid rgba(229,194,102,.45);
  background:linear-gradient(180deg,#1d413a,#112622);
  color:#fff4d1;
  font:700 14px/1.15 "Nunito",system-ui,sans-serif;
  cursor:pointer;
  transition:transform .18s ease,filter .18s ease,background .18s ease;
}
.dragonbound-home-treats-confirm-button:hover,.dragonbound-home-treats-confirm-button:focus-visible{transform:translateY(-1px);filter:brightness(1.06);outline:0}
.dragonbound-home-treats-confirm-button--no{background:linear-gradient(180deg,#21313b,#14202a);border-color:rgba(173,194,214,.22);color:#dfe7f0}

.dragonbound-home-treat-stage{
  position:absolute;
  inset:0;
  z-index:22;
  opacity:0;
  pointer-events:none;
  transition:opacity .24s ease;
}
.dragonbound-home-treat-stage.is-visible{opacity:1}
.dragonbound-home-treat-bag-wrap{
  position:absolute;
  left:15.4%;
  top:46.8%;
  width:min(14.4vw,136px);
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 18px 24px rgba(0,0,0,.42));
}
.dragonbound-home-treat-stage.is-open .dragonbound-home-treat-bag-wrap{top:48.0%}
.dragonbound-home-treat-bag-wrap.is-shaking{animation:dragonboundTreatShake .82s ease-in-out both}
.dragonbound-home-treat-bag-wrap.is-opened{animation:dragonboundTreatBagSettle .36s ease both}
.dragonbound-home-treat-bag-image{display:block;width:100%;height:auto}
.dragonbound-home-treat-ground{position:absolute;inset:0;overflow:visible;z-index:999999;pointer-events:none}
.dragonbound-home-treat-status{
  position:absolute;
  left:50%;
  bottom:13.5%;
  transform:translateX(-50%);
  min-width:min(86vw,390px);
  max-width:min(86vw,500px);
  padding:12px 18px;
  border-radius:999px;
  background:rgba(7,17,22,.78);
  border:1px solid rgba(227,197,110,.36);
  color:#f4ebd5;
  text-align:center;
  font:700 14px/1.3 "Nunito",system-ui,sans-serif;
  box-shadow:0 12px 26px rgba(0,0,0,.32);
}
.dragonbound-home-treat-piece{
  position:absolute;
  width:28px;
  height:28px;
  object-fit:contain;
  transform:translate(0,0) rotate(0deg) scale(.92);
  opacity:0;
  transform-origin:center;
  animation:dragonboundTreatFling .88s cubic-bezier(.19,.84,.2,1) forwards;
  filter:drop-shadow(0 8px 9px rgba(0,0,0,.34));
}
.dragonbound-home-treat-piece.is-landed{animation:none;opacity:1;transform:translate(var(--dx),var(--dy)) rotate(var(--rot,0deg)) scale(1)}
.dragonbound-home-treat-piece.is-eaten{transition:transform .24s ease,opacity .24s ease;opacity:0;transform:translate(var(--dx),var(--dy)) scale(.55)}
.dragonbound-baby-actor.is-treat-excited{animation:dragonboundTreatExcited .65s ease-in-out 3}
.dragonbound-baby-actor.is-treat-chewing>.dragonbound-baby-sprite{animation:dragonboundTreatChew .18s ease-in-out 5 alternate;transform-origin:50% 90%}
@media (max-width:860px){
  .dragonbound-home-treats-trigger,
  .dragonbound-home-treats-trigger:hover,
  .dragonbound-home-treats-trigger:focus,
  .dragonbound-home-treats-trigger:focus-visible,
  .dragonbound-home-treats-trigger:active{top:calc(1.8% + min(13vw,68px) * 4 + 2vh);width:min(21vw,112px)}
  .dragonbound-home-treat-bag-wrap{left:17%;top:44.8%;width:min(24vw,128px)}
  .dragonbound-home-treat-status{bottom:11.5%;font-size:13px;min-width:min(90vw,340px)}
  .dragonbound-home-treat-piece{width:22px;height:22px}
}

@keyframes dragonboundTreatShake{
  0%,100%{transform:translate(-50%,-50%) rotate(0deg)}
  12%{transform:translate(-48.8%,-50%) rotate(-4deg)}
  24%{transform:translate(-51.8%,-49.6%) rotate(5deg)}
  36%{transform:translate(-48.6%,-50.4%) rotate(-5deg)}
  48%{transform:translate(-51.7%,-49.8%) rotate(4deg)}
  60%{transform:translate(-49.2%,-50.2%) rotate(-3deg)}
  76%{transform:translate(-50.8%,-49.8%) rotate(2deg)}
}
@keyframes dragonboundTreatBagSettle{
  0%{transform:translate(-50%,-50%) scale(.96)}
  100%{transform:translate(-50%,-50%) scale(1)}
}
@keyframes dragonboundTreatFling{
  0%{opacity:0;transform:translate(0,0) rotate(0deg) scale(.84)}
  12%{opacity:1}
  62%{opacity:1;transform:translate(var(--dx),calc(var(--dy) - 50px)) rotate(var(--rot)) scale(1.04)}
  100%{opacity:1;transform:translate(var(--dx),var(--dy)) rotate(var(--rot,0deg)) scale(1)}
}
@keyframes dragonboundTreatExcited{
  0%,100%{transform:translate3d(var(--dragon-x,0),var(--dragon-y,0),0)}
  25%{transform:translate3d(var(--dragon-x,0),calc(var(--dragon-y,0) - 3px),0)}
  50%{transform:translate3d(var(--dragon-x,0),var(--dragon-y,0),0) scale(1.03)}
  75%{transform:translate3d(var(--dragon-x,0),calc(var(--dragon-y,0) - 2px),0)}
}

@keyframes dragonboundTreatChew{from{filter:brightness(1);margin-top:0}to{filter:brightness(1.08);margin-top:-2px}}
.dragonbound-home-treat-crunch-burst{position:absolute;width:0;height:0;z-index:999999;pointer-events:none}
.dragonbound-home-treat-crunch-burst b{position:absolute;left:0;top:-25px;transform:translateX(-50%);color:#ffe9a0;font:900 10px/1 "Nunito",system-ui,sans-serif;text-shadow:0 2px 3px rgba(0,0,0,.65);animation:dragonboundTreatCrunchLabel .72s ease-out forwards;white-space:nowrap}
.dragonbound-home-treat-crunch-burst i{position:absolute;left:-2px;top:-4px;width:5px;height:5px;border-radius:50%;background:#e7a430;box-shadow:0 1px 2px rgba(0,0,0,.45);animation:dragonboundTreatCrumb .62s ease-out forwards}
.dragonbound-home-treat-crunch-burst i:nth-of-type(1){--cx:-18px;--cy:-14px}.dragonbound-home-treat-crunch-burst i:nth-of-type(2){--cx:16px;--cy:-17px}.dragonbound-home-treat-crunch-burst i:nth-of-type(3){--cx:-14px;--cy:8px}.dragonbound-home-treat-crunch-burst i:nth-of-type(4){--cx:19px;--cy:5px}.dragonbound-home-treat-crunch-burst i:nth-of-type(5){--cx:4px;--cy:-24px}
@keyframes dragonboundTreatCrumb{0%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--cx),var(--cy)) scale(.55)}}
@keyframes dragonboundTreatCrunchLabel{0%{opacity:0;transform:translate(-50%,6px) scale(.82)}20%,60%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-10px) scale(.92)}}

/* Dragonbound V32.86 — live needs / mood / bond HUD */
.dragonbound-needs-hud{
  position:absolute;
  right:1.6%;
  top:2.0%;
  bottom:auto;
  width:min(286px,25vw);
  z-index:19;
  padding:14px 15px 13px;
  border:1px solid rgba(213,181,105,.42);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(7,25,27,.93),rgba(5,17,20,.94));
  box-shadow:0 16px 34px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045);
  backdrop-filter:blur(6px);
  color:#f0e5cb;
  opacity:1;
  transform:translateY(0);
  transition:opacity .22s ease,transform .22s ease;
  pointer-events:none;
}
.dragonbound-needs-hud.is-hidden,
.dragonbound-new-game-stage.is-visiting-house .dragonbound-needs-hud,
.dragonbound-home-scene.is-build-editing .dragonbound-needs-hud,
.dragonbound-home-scene.is-build-placing .dragonbound-needs-hud{opacity:0;transform:translateY(8px);pointer-events:none}
.dragonbound-needs-hud-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(222,193,121,.16)}
.dragonbound-needs-hud-head span{display:flex;min-width:0;flex-direction:column;gap:2px}
.dragonbound-needs-hud-head small{font:800 8px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:1.8px;color:rgba(221,193,123,.72)}
.dragonbound-needs-hud-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 16px/1.15 Georgia,serif;color:#f5e8c7}
.dragonbound-needs-hud-head>b{flex:0 0 auto;max-width:112px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 8px;border-radius:999px;border:1px solid rgba(211,181,106,.24);background:rgba(218,190,117,.07);font:800 9px/1 "Nunito",system-ui,sans-serif;letter-spacing:.35px;color:#dec68b}
.dragonbound-needs-bars{display:grid;gap:7px}
.dragonbound-need-row{display:grid;grid-template-columns:57px 1fr 34px;align-items:center;gap:8px;min-width:0}
.dragonbound-need-row>span{font:800 9px/1 "Nunito",system-ui,sans-serif;letter-spacing:.4px;color:rgba(237,229,209,.82)}
.dragonbound-need-row>i{position:relative;height:6px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.09);box-shadow:inset 0 1px 2px rgba(0,0,0,.28)}
.dragonbound-need-row>i>em{position:absolute;inset:0 auto 0 0;width:var(--need-value,0%);border-radius:inherit;background:linear-gradient(90deg,#b7873d,#e1c979);box-shadow:0 0 9px rgba(225,201,121,.16);transition:width .55s ease,filter .35s ease}
.dragonbound-need-row[data-care-key="bond"]>i>em{background:linear-gradient(90deg,#a86976,#dfa1a8)}
.dragonbound-need-row[data-level="low"]>i>em{filter:saturate(.82) brightness(.88)}
.dragonbound-need-row[data-level="critical"]>i>em{filter:saturate(.7) brightness(.72)}
.dragonbound-need-row>b{text-align:right;font:800 9px/1 "Nunito",system-ui,sans-serif;color:rgba(237,225,196,.74)}
@media(max-width:900px){
  .dragonbound-needs-hud{right:1.8%;top:1.6%;bottom:auto;width:min(238px,34vw);padding:11px 12px 10px}
  .dragonbound-needs-hud-head strong{font-size:13px}.dragonbound-needs-hud-head>b{font-size:8px;max-width:92px}.dragonbound-need-row{grid-template-columns:48px 1fr 29px;gap:6px}.dragonbound-need-row>span,.dragonbound-need-row>b{font-size:8px}
}
@media(max-width:620px){
  .dragonbound-needs-hud{right:2%;top:1.3%;bottom:auto;width:min(220px,48vw)}
  .dragonbound-needs-hud-head small{display:none}.dragonbound-needs-bars{gap:5px}
}


/* Dragonbound V32.87 — forgiving needs decay + relationship progression */
.dragonbound-needs-bond-summary{
  display:flex;flex-direction:column;gap:2px;margin:-2px 0 9px;padding:0 1px 8px;border-bottom:1px solid rgba(222,193,121,.10)
}
.dragonbound-needs-bond-summary>strong{font:800 9px/1.15 "Nunito",system-ui,sans-serif;letter-spacing:.35px;color:#e1a6ad}
.dragonbound-needs-bond-summary>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 7.5px/1.2 "Nunito",system-ui,sans-serif;color:rgba(238,225,211,.58)}
.dragonbound-baby-hover-bond{display:block;color:#e9aab2!important;font-weight:800!important}
.dragonbound-care-personality,.dragonbound-care-routines{margin-top:9px;padding-top:9px;border-top:1px solid rgba(222,193,121,.10)}
.dragonbound-care-section-label{display:block;margin-bottom:6px;font:800 7px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:1.2px;color:rgba(221,193,123,.66)}
.dragonbound-care-trait-list{display:flex;flex-wrap:wrap;gap:5px}
.dragonbound-care-trait{display:inline-flex;align-items:center;max-width:100%;padding:4px 7px;border-radius:999px;border:1px solid rgba(222,193,121,.18);background:rgba(255,255,255,.04);color:#f2e7c7;font:800 7.5px/1 "Nunito",system-ui,sans-serif;letter-spacing:.2px;white-space:nowrap}
.dragonbound-care-trait.is-hidden{color:rgba(232,221,197,.52);border-style:dashed;background:rgba(255,255,255,.025)}
.dragonbound-care-routines p{margin:0 0 5px;color:rgba(238,225,211,.76);font:700 7.6px/1.32 "Nunito",system-ui,sans-serif;letter-spacing:.15px}
.dragonbound-care-routines p:last-child{margin-bottom:0}
@media (max-width:860px){.dragonbound-needs-bond-summary>span{font-size:7px}.dragonbound-needs-bond-summary>strong{font-size:8px}.dragonbound-care-trait{font-size:7px;padding:4px 6px}.dragonbound-care-routines p{font-size:7px}}

/* Dragonbound V32.91 — My Dragon life journal */
.dragonbound-home-sidebar-hotspot--book{left:17%;top:76.1%;width:68%;height:22.7%}
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book:hover:not(:disabled),
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book:focus-visible,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book:active:not(:disabled){background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;color:transparent!important;outline:0!important}
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book::before,
.dragonbound-home-sidebar button.dragonbound-home-sidebar-hotspot--book::after{display:none!important;content:none!important}

.dragonbound-my-dragon-overlay{position:absolute;inset:0;z-index:58;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s}
.dragonbound-my-dragon-overlay.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.dragonbound-my-dragon-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(21,46,48,.24),rgba(2,8,11,.88) 72%);backdrop-filter:blur(5px)}
.dragonbound-my-dragon-book{position:relative;width:min(1180px,93vw);height:min(760px,89vh);padding:26px 28px 28px;border:1px solid rgba(224,195,112,.48);border-radius:30px;background:linear-gradient(145deg,#102f31 0%,#092327 45%,#06191d 100%);box-shadow:0 32px 90px rgba(0,0,0,.62),inset 0 0 0 2px rgba(240,217,151,.04),inset 0 0 0 8px rgba(0,0,0,.12);overflow:hidden;color:#efe4c9;transform:translateY(12px) scale(.985);transition:transform .22s ease}
.dragonbound-my-dragon-overlay.is-visible .dragonbound-my-dragon-book{transform:translateY(0) scale(1)}
.dragonbound-my-dragon-book::before{content:"";position:absolute;left:50%;top:112px;bottom:30px;width:18px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(0,0,0,.16),rgba(255,255,255,.025),rgba(0,0,0,.16));border-radius:50%;filter:blur(.4px);pointer-events:none;z-index:3}
.dragonbound-my-dragon-close{position:absolute;right:21px;top:18px;z-index:8;width:37px;height:37px;border:1px solid rgba(226,199,122,.38)!important;border-radius:50%;background:rgba(4,18,21,.82)!important;color:#e8d8ae!important;font:700 24px/32px Georgia,serif;cursor:pointer;box-shadow:none!important}
.dragonbound-my-dragon-close:hover,.dragonbound-my-dragon-close:focus-visible{background:rgba(15,46,48,.98)!important;border-color:rgba(236,209,132,.7)!important;outline:none!important}
.dragonbound-my-dragon-header{position:relative;z-index:4;text-align:center;height:80px;padding:0 52px}
.dragonbound-my-dragon-header>span{display:block;margin-bottom:5px;font:900 10px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:3.1px;color:#c9a85f}
.dragonbound-my-dragon-header h2{margin:0;color:#f8e8b9;font:700 clamp(28px,3vw,42px)/1 Georgia,serif;text-shadow:0 2px 10px rgba(0,0,0,.32)}
.dragonbound-my-dragon-header p{margin:7px 0 0;color:rgba(230,221,199,.67);font:700 10px/1.2 "Nunito",system-ui,sans-serif;letter-spacing:.3px}
.dragonbound-my-dragon-spread{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:26px;height:calc(100% - 80px)}
.dragonbound-my-dragon-page{position:relative;min-width:0;min-height:0;padding:24px 26px;border:1px solid rgba(80,66,38,.22);border-radius:16px;background:linear-gradient(160deg,#f4edda 0%,#e9dec2 100%);box-shadow:inset 0 0 36px rgba(108,83,35,.08),0 10px 25px rgba(0,0,0,.14);color:#3e3323;overflow:hidden}
.dragonbound-my-dragon-page--left{display:grid;grid-template-columns:145px 1fr;grid-template-rows:auto auto auto 1fr;gap:15px 18px}
.dragonbound-my-dragon-page--right{display:grid;grid-template-rows:auto auto auto auto minmax(122px,1fr);gap:12px;overflow:auto;padding-right:22px}
.dragonbound-my-dragon-page--right::-webkit-scrollbar{width:5px}.dragonbound-my-dragon-page--right::-webkit-scrollbar-thumb{background:rgba(91,70,34,.32);border-radius:99px}
.dragonbound-my-dragon-portrait{position:relative;grid-row:1/3;width:138px;height:138px;display:grid;place-items:center;border:1px solid rgba(111,87,43,.42);border-radius:50%;background:radial-gradient(circle at 50% 38%,rgba(77,122,111,.36),rgba(11,38,39,.92));box-shadow:inset 0 0 0 6px rgba(239,226,193,.72),0 10px 25px rgba(48,38,22,.18);overflow:hidden}
.dragonbound-my-dragon-portrait-glow{position:absolute;inset:14%;border-radius:50%;background:radial-gradient(circle,rgba(234,200,102,.17),transparent 70%);filter:blur(6px)}
.dragonbound-my-dragon-portrait img{position:relative;width:118px;height:118px;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;filter:drop-shadow(0 8px 7px rgba(0,0,0,.26))}
.dragonbound-my-dragon-identity{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;align-content:start}
.dragonbound-my-dragon-identity>div{min-width:0;padding:7px 9px;border:1px solid rgba(104,83,44,.16);border-radius:8px;background:rgba(255,250,236,.44)}
.dragonbound-my-dragon-identity small,.dragonbound-my-dragon-favourite-grid small{display:block;margin-bottom:2px;color:#8a7046;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.75px;text-transform:uppercase}
.dragonbound-my-dragon-identity strong,.dragonbound-my-dragon-favourite-grid strong{display:block;overflow:hidden;color:#3e3324;font:800 10px/1.18 "Nunito",system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}
.dragonbound-my-dragon-mood{align-self:start;padding:9px 12px;border-left:3px solid #99723e;border-radius:8px;background:rgba(94,72,35,.07)}
.dragonbound-my-dragon-mood small{display:block;color:#85683d;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.2px}.dragonbound-my-dragon-mood strong{display:block;margin:4px 0 2px;color:#4a3524;font:700 18px/1 Georgia,serif}.dragonbound-my-dragon-mood span{display:block;color:#6e604c;font:700 8.5px/1.35 "Nunito",system-ui,sans-serif}
/* V34.03 — several-hour mood tinting. Kept intentionally subtle: the story stays part of the journal, not a status alarm. */
.dragonbound-my-dragon-mood{position:relative;transition:border-color .3s ease,background .3s ease,box-shadow .3s ease}
.dragonbound-my-dragon-mood::after{content:"SEVERAL-HOUR MOOD";position:absolute;right:10px;top:9px;color:rgba(111,86,48,.48);font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.65px}
.dragonbound-my-dragon-mood[data-mood="bouncy"],.dragonbound-my-dragon-mood[data-mood="playful"],.dragonbound-my-dragon-mood[data-mood="restless"]{border-left-color:#b77a39;background:linear-gradient(100deg,rgba(190,132,55,.11),rgba(255,250,236,.18))}
.dragonbound-my-dragon-mood[data-mood="sleepy"],.dragonbound-my-dragon-mood[data-mood="relaxed"]{border-left-color:#6c8295;background:linear-gradient(100deg,rgba(95,124,145,.10),rgba(255,250,236,.18))}
.dragonbound-my-dragon-mood[data-mood="cuddly"]{border-left-color:#a76c78;background:linear-gradient(100deg,rgba(174,105,121,.10),rgba(255,250,236,.18))}
.dragonbound-my-dragon-mood[data-mood="curious"],.dragonbound-my-dragon-mood[data-mood="focused"],.dragonbound-my-dragon-mood[data-mood="proud"]{border-left-color:#7b8960;background:linear-gradient(100deg,rgba(104,135,91,.10),rgba(255,250,236,.18))}
.dragonbound-my-dragon-mood[data-mood="grumpy"],.dragonbound-my-dragon-mood[data-mood="nervous"]{border-left-color:#806d7e;background:linear-gradient(100deg,rgba(115,92,119,.09),rgba(255,250,236,.18))}
.dragonbound-my-dragon-mood[data-mood="hungry"]{border-left-color:#a36f45;background:linear-gradient(100deg,rgba(158,102,55,.10),rgba(255,250,236,.18))}
.dragonbound-my-dragon-care{grid-column:1/3;min-width:0}.dragonbound-my-dragon-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px;padding-bottom:5px;border-bottom:1px solid rgba(91,70,33,.18)}
.dragonbound-my-dragon-section-title>span{color:#4d3927;font:700 16px/1 Georgia,serif}.dragonbound-my-dragon-section-title>small{color:#92774c;font:800 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.5px;text-align:right}
.dragonbound-my-dragon-care-bars{display:grid;gap:6px}.dragonbound-my-dragon-care-row{display:grid;grid-template-columns:58px 1fr 35px;align-items:center;gap:7px}.dragonbound-my-dragon-care-row>span{font:900 8px/1 "Nunito",system-ui,sans-serif;color:#66523a}.dragonbound-my-dragon-care-row>i{height:7px;border-radius:99px;background:rgba(73,56,32,.13);overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.09)}.dragonbound-my-dragon-care-row>i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6e8d69,#b0a35a);transition:width .45s ease}.dragonbound-my-dragon-care-row[data-level="low"]>i>em{filter:saturate(.78)}.dragonbound-my-dragon-care-row[data-level="critical"]>i>em{filter:saturate(.55) brightness(.85)}.dragonbound-my-dragon-care-row>b{font:900 8px/1 "Nunito",system-ui,sans-serif;color:#66523a;text-align:right}
.dragonbound-my-dragon-bond{grid-column:1/3;align-self:end;padding:10px 11px;border:1px solid rgba(120,75,82,.18);border-radius:10px;background:linear-gradient(90deg,rgba(157,105,113,.08),rgba(245,237,218,.25))}.dragonbound-my-dragon-bond>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.dragonbound-my-dragon-bond>div span{font:900 8px/1 "Nunito",system-ui,sans-serif;letter-spacing:1px;color:#7b5960;text-transform:uppercase}.dragonbound-my-dragon-bond>div strong{font:800 10px/1 "Nunito",system-ui,sans-serif;color:#784f57}.dragonbound-my-dragon-bond>i{display:block;height:7px;margin:7px 0 5px;border-radius:99px;background:rgba(103,67,75,.13);overflow:hidden}.dragonbound-my-dragon-bond>i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9e6a78,#d59aa1)}.dragonbound-my-dragon-bond>small{display:block;color:#806e65;font:700 8px/1.25 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-personality p{margin:0 0 8px;color:#645744;font:700 9px/1.42 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-traits{display:flex;flex-wrap:wrap;gap:5px}.dragonbound-my-dragon-traits span{padding:5px 8px;border:1px solid rgba(91,69,33,.2);border-radius:999px;background:rgba(255,250,236,.55);color:#604a2f;font:900 7.5px/1 "Nunito",system-ui,sans-serif;white-space:nowrap}.dragonbound-my-dragon-traits span.is-hidden{opacity:.52;border-style:dashed;letter-spacing:1px}
.dragonbound-my-dragon-favourite-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.dragonbound-my-dragon-favourite-grid>div{min-width:0;padding:7px 8px;border:1px solid rgba(103,81,42,.13);border-radius:8px;background:rgba(255,250,236,.42)}.dragonbound-my-dragon-favourite-grid>div.is-confirmed{border-color:rgba(151,111,39,.28);background:linear-gradient(145deg,rgba(255,251,235,.78),rgba(246,231,191,.42));box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}.dragonbound-my-dragon-favourite-grid>div.is-forming{opacity:.76}.dragonbound-my-dragon-favourite-grid>div>em{display:block;margin-top:4px;color:#9b8055;font:700 7px/1.2 "Nunito",system-ui,sans-serif;font-style:normal;letter-spacing:.2px}.dragonbound-my-dragon-favourite-grid>div.is-confirmed>strong::after{content:' ♥';color:#b47758;font-size:.86em}
.dragonbound-my-dragon-habits{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.dragonbound-my-dragon-habits span{padding:4px 7px;border-radius:6px;background:rgba(54,89,75,.09);border:1px solid rgba(54,89,75,.14);color:#50644f;font:800 7px/1 "Nunito",system-ui,sans-serif}
/* V34.06 — recognised learned rituals replace generic habit chips once enough real evidence exists. */
.dragonbound-my-dragon-habits .dragonbound-learned-routine{flex:1 1 190px;min-width:0;padding:8px 9px;border:1px solid rgba(57,79,63,.16);background:linear-gradient(180deg,rgba(255,253,239,.62),rgba(223,231,205,.34));box-shadow:inset 0 0 0 1px rgba(255,255,255,.28);display:grid;gap:3px}.dragonbound-my-dragon-habits .dragonbound-learned-routine.is-established{border-color:rgba(93,109,63,.28);background:linear-gradient(180deg,rgba(250,248,219,.78),rgba(215,224,190,.5))}.dragonbound-my-dragon-habits .dragonbound-learned-routine small{font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.12em;color:#78806b}.dragonbound-my-dragon-habits .dragonbound-learned-routine strong{font:900 10px/1.15 "Nunito",system-ui,sans-serif;color:#37463b}.dragonbound-my-dragon-habits .dragonbound-learned-routine span{padding:0!important;border:0!important;background:none!important;border-radius:0!important;font:700 9px/1.35 "Nunito",system-ui,sans-serif!important;color:#5d675c!important}

/* Dragonbound V32.92 — Growth & Skills journal */
.dragonbound-my-dragon-growth{padding:10px 11px;border:1px solid rgba(91,70,33,.14);border-radius:10px;background:linear-gradient(145deg,rgba(55,91,76,.055),rgba(255,250,236,.34))}
.dragonbound-my-dragon-growth .dragonbound-my-dragon-section-title{margin-bottom:9px}
.dragonbound-my-dragon-growth-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.dragonbound-my-dragon-growth-head>div{min-width:0}.dragonbound-my-dragon-growth-head small{display:block;color:#887047;font:900 6.5px/1 "Nunito",system-ui,sans-serif;letter-spacing:.85px}.dragonbound-my-dragon-growth-head strong{display:block;margin:3px 0 2px;color:#3f543f;font:700 15px/1 Georgia,serif}.dragonbound-my-dragon-growth-head span{display:block;color:#756854;font:700 7.2px/1.25 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-growth-head>b{flex:0 0 auto;color:#50654e;font:900 10px/1 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-growth-bar{display:block;height:6px;margin:7px 0 9px;border-radius:999px;overflow:hidden;background:rgba(61,78,57,.13);box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}.dragonbound-my-dragon-growth-bar>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#658061,#a6a75f);transition:width .45s ease}
.dragonbound-my-dragon-skills{display:grid;grid-template-columns:1fr 1fr;gap:6px}.dragonbound-my-dragon-skills article{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:7px;min-width:0;padding:7px 8px;border:1px solid rgba(91,70,33,.12);border-radius:8px;background:rgba(255,250,236,.48)}.dragonbound-my-dragon-skills article>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:rgba(64,92,74,.1);color:#4f6954;font:900 11px/1 Georgia,serif}.dragonbound-my-dragon-skills article>div{min-width:0}.dragonbound-my-dragon-skills article>div>div{display:flex;align-items:center;justify-content:space-between;gap:7px}.dragonbound-my-dragon-skills strong{color:#4d3927;font:900 7.8px/1 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-skills b{color:#486049;font:800 11px/1 Georgia,serif}.dragonbound-my-dragon-skills small{display:block;margin:2px 0 4px;overflow:hidden;color:#826f52;font:800 6.3px/1.05 "Nunito",system-ui,sans-serif;text-overflow:ellipsis;white-space:nowrap}.dragonbound-my-dragon-skills i{display:block;height:4px;border-radius:99px;background:rgba(64,77,53,.12);overflow:hidden}.dragonbound-my-dragon-skills i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#678365,#b2a55f)}
.dragonbound-my-dragon-aptitudes{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-top:7px}.dragonbound-my-dragon-aptitudes>small{margin-right:2px;color:#90764b;font:900 6.2px/1 "Nunito",system-ui,sans-serif;letter-spacing:.7px}.dragonbound-my-dragon-aptitudes>span{padding:3px 6px;border-radius:999px;border:1px solid rgba(80,104,79,.14);background:rgba(75,105,83,.07);color:#4f6650;font:800 6.6px/1 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-stat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.dragonbound-my-dragon-stat-grid>div{padding:7px 4px 6px;text-align:center;border-radius:8px;background:rgba(74,55,30,.055);border:1px solid rgba(91,70,33,.1)}.dragonbound-my-dragon-stat-grid strong{display:block;color:#4d3927;font:700 16px/1 Georgia,serif}.dragonbound-my-dragon-stat-grid small{display:block;margin-top:3px;color:#806e53;font:900 6.8px/1.05 "Nunito",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.35px}
.dragonbound-my-dragon-memories{min-height:0;display:flex;flex-direction:column}.dragonbound-my-dragon-memory-list{min-height:0;overflow:auto;padding-right:3px}.dragonbound-my-dragon-memory-list::-webkit-scrollbar{width:4px}.dragonbound-my-dragon-memory-list::-webkit-scrollbar-thumb{background:rgba(85,66,35,.26);border-radius:99px}.dragonbound-my-dragon-memory-list article{display:grid;grid-template-columns:72px 1fr;gap:9px;padding:7px 1px;border-bottom:1px dashed rgba(95,74,38,.16)}.dragonbound-my-dragon-memory-list article:last-child{border-bottom:0}.dragonbound-my-dragon-memory-list time{color:#967949;font:900 6.8px/1.2 "Nunito",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.4px}.dragonbound-my-dragon-memory-list article div{min-width:0}.dragonbound-my-dragon-memory-list strong{display:block;color:#4c3827;font:800 8.5px/1.15 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-memory-list span{display:block;margin-top:2px;color:#756550;font:700 7.4px/1.25 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-memory-empty{margin:0;padding:12px;text-align:center;color:#806e54;font:700 8px/1.4 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-empty{position:absolute;z-index:5;left:50%;top:55%;transform:translate(-50%,-50%);width:min(520px,72%);padding:30px;border:1px solid rgba(226,199,122,.28);border-radius:18px;background:rgba(6,25,28,.82);text-align:center}.dragonbound-my-dragon-empty strong{display:block;color:#f3dfaa;font:700 24px/1.1 Georgia,serif}.dragonbound-my-dragon-empty span{display:block;margin-top:8px;color:rgba(235,224,200,.72);font:700 10px/1.4 "Nunito",system-ui,sans-serif}.dragonbound-my-dragon-book.is-empty .dragonbound-my-dragon-spread{opacity:.08;filter:blur(1px)}

.dragonbound-study-list-item--my-dragon{margin-bottom:10px!important;border-color:rgba(79,116,100,.58)!important;background:linear-gradient(180deg,rgba(41,81,69,.94),rgba(20,53,48,.98))!important;box-shadow:0 5px 15px rgba(0,0,0,.18)!important}.dragonbound-study-list-item--my-dragon span{color:#f2e5b7!important}.dragonbound-study-list-item--my-dragon small{color:#b7d2c5!important}

@media(max-width:900px){
  .dragonbound-my-dragon-book{width:min(96vw,930px);height:min(91vh,720px);padding:20px 20px 22px;border-radius:22px}
  .dragonbound-my-dragon-header{height:70px}.dragonbound-my-dragon-header h2{font-size:29px}
  .dragonbound-my-dragon-spread{height:calc(100% - 70px);gap:17px}.dragonbound-my-dragon-page{padding:18px 17px}.dragonbound-my-dragon-page--left{grid-template-columns:105px 1fr;gap:11px 12px}.dragonbound-my-dragon-portrait{width:100px;height:100px}.dragonbound-my-dragon-portrait img{width:88px;height:88px}.dragonbound-my-dragon-favourite-grid{grid-template-columns:repeat(2,1fr)}.dragonbound-my-dragon-stat-grid{grid-template-columns:repeat(5,1fr)}
}
@media(max-width:680px){
  .dragonbound-my-dragon-book{width:96vw;height:92vh;padding:16px}.dragonbound-my-dragon-book::before{display:none}.dragonbound-my-dragon-header{height:68px;padding:0 35px}.dragonbound-my-dragon-header>span{font-size:8px;letter-spacing:2px}.dragonbound-my-dragon-header h2{font-size:24px}.dragonbound-my-dragon-header p{font-size:8px}
  .dragonbound-my-dragon-spread{display:block;height:calc(100% - 68px);overflow:auto}.dragonbound-my-dragon-page{margin-bottom:12px;overflow:visible}.dragonbound-my-dragon-page--left{display:grid}.dragonbound-my-dragon-page--right{display:grid;overflow:visible}.dragonbound-my-dragon-stat-grid{grid-template-columns:repeat(2,1fr)}.dragonbound-my-dragon-favourite-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){.dragonbound-my-dragon-skills{grid-template-columns:1fr}.dragonbound-my-dragon-growth{padding:9px}.dragonbound-my-dragon-growth-head strong{font-size:13px}.dragonbound-my-dragon-skills article{padding:6px 7px}}
@media(prefers-reduced-motion:reduce){.dragonbound-my-dragon-overlay,.dragonbound-my-dragon-book{transition-duration:.01ms!important}}

/* Dragonbound V32.93 — physical furniture interactions */
.dragonbound-baby-actor.is-physical-interaction>.dragonbound-baby-sprite{transition:filter .18s ease,margin-top .22s ease}
.dragonbound-baby-actor[data-physical-phase="settling"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalSettle .72s ease-in-out infinite alternate}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="sleep"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="rest"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalBreathe 2.1s ease-in-out infinite}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="play"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="puzzle"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalPlay .55s ease-in-out infinite alternate}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="exercise"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="climb"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalTrain .44s ease-in-out infinite alternate}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="eat"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="drink"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalNibble .48s ease-in-out infinite alternate}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="wash"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="sandbath"]>.dragonbound-baby-sprite{animation:dragonboundPhysicalSplash .62s ease-in-out infinite alternate}
.dragonbound-carried-object{position:absolute;z-index:42;left:18px;top:-34px;width:34px!important;height:34px!important;object-fit:contain!important;pointer-events:none!important;image-rendering:pixelated;filter:drop-shadow(0 3px 3px rgba(0,0,0,.35));transform-origin:50% 70%;animation:dragonboundCarryBob .55s ease-in-out infinite alternate}
.dragonbound-baby-actor[data-furniture-facing="left"] .dragonbound-carried-object{left:-50px;transform:scaleX(-1)}
.dragonbound-furniture-placement.is-runtime-carried>img{opacity:.12!important;filter:saturate(.55) brightness(.8)!important}
.dragonbound-furniture-placement.is-dragon-occupied{pointer-events:none!important}
.dragonbound-furniture-placement.is-runtime-open::after{content:"";position:absolute;left:50%;top:28%;width:34%;height:22%;transform:translateX(-50%) skewX(-8deg);border:1px solid rgba(23,18,11,.42);border-radius:3px;background:rgba(11,13,11,.43);box-shadow:inset 0 0 10px rgba(0,0,0,.45);pointer-events:none;animation:dragonboundDoorOpen .35s ease-out both}
.dragonbound-furniture-placement.is-runtime-rolling-active{animation:dragonboundFurnitureRoll 1.1s ease-in-out infinite alternate}
.dragonbound-physical-effects{position:absolute;z-index:45;left:0;top:-38px;width:2px;height:2px;pointer-events:none}
.dragonbound-physical-effects i{position:absolute;left:0;top:0;display:block;width:5px;height:5px;border-radius:50%;opacity:0}
.dragonbound-physical-effects--bath i{background:#bde8ef;border:1px solid rgba(255,255,255,.7);animation:dragonboundBathBubble 1.45s ease-out infinite}
.dragonbound-physical-effects--bath i:nth-child(2){animation-delay:.25s;left:13px}.dragonbound-physical-effects--bath i:nth-child(3){animation-delay:.52s;left:-14px}.dragonbound-physical-effects--bath i:nth-child(4){animation-delay:.78s;left:20px}.dragonbound-physical-effects--bath i:nth-child(5){animation-delay:1s;left:-21px}.dragonbound-physical-effects--bath i:nth-child(6){animation-delay:1.2s;left:6px}
.dragonbound-physical-effects--fire i{width:4px;height:8px;border-radius:50% 50% 42% 42%;background:#f1bd58;box-shadow:0 0 8px rgba(235,120,45,.55);animation:dragonboundFireSpark 1.05s ease-out infinite}.dragonbound-physical-effects--fire i:nth-child(2){animation-delay:.2s}.dragonbound-physical-effects--fire i:nth-child(3){animation-delay:.42s}.dragonbound-physical-effects--fire i:nth-child(4){animation-delay:.63s}.dragonbound-physical-effects--fire i:nth-child(5){animation-delay:.81s}.dragonbound-physical-effects--fire i:nth-child(6){animation-delay:.96s}
.dragonbound-physical-effects--feeding i{width:3px;height:3px;background:#d8bd79;animation:dragonboundFeedingCrumb 1.2s ease-out infinite}.dragonbound-physical-effects--feeding i:nth-child(2){animation-delay:.25s}.dragonbound-physical-effects--feeding i:nth-child(3){animation-delay:.5s}.dragonbound-physical-effects--feeding i:nth-child(4){animation-delay:.75s}.dragonbound-physical-effects--feeding i:nth-child(5){animation-delay:1s}
.dragonbound-physical-effects--puzzle i,.dragonbound-physical-effects--training i{width:5px;height:5px;border-radius:1px;background:#c6ad69;animation:dragonboundPuzzlePiece 1.35s ease-in-out infinite alternate}.dragonbound-physical-effects--puzzle i:nth-child(2),.dragonbound-physical-effects--training i:nth-child(2){left:12px;animation-delay:.2s}.dragonbound-physical-effects--puzzle i:nth-child(3),.dragonbound-physical-effects--training i:nth-child(3){left:-12px;animation-delay:.4s}.dragonbound-physical-effects--puzzle i:nth-child(4),.dragonbound-physical-effects--training i:nth-child(4){left:20px;animation-delay:.6s}
@keyframes dragonboundPhysicalSettle{from{margin-top:0;filter:brightness(1)}to{margin-top:-3px;filter:brightness(1.06)}}
@keyframes dragonboundPhysicalBreathe{0%,100%{margin-top:0}50%{margin-top:1px}}
@keyframes dragonboundPhysicalPlay{from{margin-top:0}to{margin-top:-4px}}
@keyframes dragonboundPhysicalTrain{from{margin-top:1px}to{margin-top:-4px}}
@keyframes dragonboundPhysicalNibble{from{margin-top:0}to{margin-top:2px}}
@keyframes dragonboundPhysicalSplash{from{margin-top:1px;filter:brightness(1)}to{margin-top:-3px;filter:brightness(1.08)}}
@keyframes dragonboundCarryBob{from{margin-top:0;rotate:-4deg}to{margin-top:-4px;rotate:5deg}}
@keyframes dragonboundDoorOpen{from{opacity:0;transform:translateX(-50%) scaleY(.25) skewX(-8deg)}to{opacity:1;transform:translateX(-50%) scaleY(1) skewX(-8deg)}}
@keyframes dragonboundFurnitureRoll{from{translate:0 0;rotate:0deg}to{translate:var(--dragon-roll-x,10px) 0;rotate:var(--dragon-roll-rot,8deg)}}
@keyframes dragonboundBathBubble{0%{opacity:0;transform:translate(0,12px) scale(.55)}20%{opacity:.9}100%{opacity:0;transform:translate(4px,-30px) scale(1.15)}}
@keyframes dragonboundFireSpark{0%{opacity:0;transform:translate(12px,10px) scale(.5)}25%{opacity:1}100%{opacity:0;transform:translate(34px,-12px) scale(.9)}}
@keyframes dragonboundFeedingCrumb{0%{opacity:0;transform:translate(8px,2px)}20%{opacity:.85}100%{opacity:0;transform:translate(23px,14px)}}
@keyframes dragonboundPuzzlePiece{from{opacity:.35;transform:translate(-5px,3px) rotate(-8deg)}to{opacity:.85;transform:translate(7px,-3px) rotate(9deg)}}

/* Dragonbound V32.93 — Keeper Journal readability overhaul.
   No meaningful desktop text in the journal should be microscopic. */
.dragonbound-my-dragon-book{width:min(1280px,95vw);height:min(820px,92vh)}
.dragonbound-my-dragon-header>span{font-size:clamp(11px,.72vw,13px);line-height:1.2}
.dragonbound-my-dragon-header p{font-size:clamp(11px,.72vw,13px);line-height:1.35}
.dragonbound-my-dragon-page{font-size:13px}
.dragonbound-my-dragon-section-title>span{font-size:clamp(17px,1.05vw,20px)!important;line-height:1.1!important}
.dragonbound-my-dragon-section-title>small{font-size:clamp(10.5px,.68vw,12px)!important;line-height:1.25!important}
.dragonbound-my-dragon-identity small,.dragonbound-my-dragon-favourite-grid small{font-size:clamp(10.5px,.68vw,12px)!important;line-height:1.15!important;letter-spacing:.55px!important;margin-bottom:4px!important}
.dragonbound-my-dragon-identity strong,.dragonbound-my-dragon-favourite-grid strong{font-size:clamp(12px,.78vw,14px)!important;line-height:1.28!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.dragonbound-my-dragon-favourite-grid>div>em{font-size:clamp(9.5px,.58vw,11px)!important;line-height:1.25!important}
.dragonbound-my-dragon-identity>div,.dragonbound-my-dragon-favourite-grid>div{padding:9px 10px!important;min-height:50px}
.dragonbound-my-dragon-mood small{font-size:11px!important;line-height:1.1!important}.dragonbound-my-dragon-mood strong{font-size:clamp(18px,1.25vw,22px)!important}.dragonbound-my-dragon-mood span{font-size:12px!important;line-height:1.35!important}
.dragonbound-my-dragon-care-row>span,.dragonbound-my-dragon-care-row>b{font-size:11.5px!important;line-height:1.15!important}.dragonbound-my-dragon-care-row{grid-template-columns:64px 1fr 42px!important;gap:9px!important;margin-bottom:7px!important}
.dragonbound-my-dragon-bond>div span{font-size:11px!important}.dragonbound-my-dragon-bond>div strong{font-size:12.5px!important}.dragonbound-my-dragon-bond>small{font-size:11.5px!important;line-height:1.35!important}
.dragonbound-my-dragon-personality p{font-size:12.5px!important;line-height:1.45!important}.dragonbound-my-dragon-traits span,.dragonbound-my-dragon-habits span{font-size:10.5px!important;line-height:1.05!important;padding:5px 8px!important}
.dragonbound-my-dragon-growth{padding:13px 14px!important}.dragonbound-my-dragon-growth-head small{font-size:10.5px!important;line-height:1.1!important}.dragonbound-my-dragon-growth-head strong{font-size:19px!important;line-height:1.05!important}.dragonbound-my-dragon-growth-head span{font-size:11.5px!important;line-height:1.35!important}.dragonbound-my-dragon-growth-head>b{font-size:13px!important}
.dragonbound-my-dragon-skills{gap:8px!important}.dragonbound-my-dragon-skills article{grid-template-columns:31px 1fr!important;gap:9px!important;padding:10px 11px!important;min-height:76px}.dragonbound-my-dragon-skills article>span{width:30px!important;height:30px!important;font-size:14px!important}.dragonbound-my-dragon-skills strong{font-size:11.5px!important;line-height:1.1!important}.dragonbound-my-dragon-skills b{font-size:14px!important}.dragonbound-my-dragon-skills small{font-size:10.5px!important;line-height:1.22!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin:4px 0 5px!important}.dragonbound-my-dragon-skills .dragonbound-skill-mark-next{margin:5px 0 0!important;color:#816428!important;font-weight:900!important}
.dragonbound-my-dragon-aptitudes>small,.dragonbound-my-dragon-aptitudes>span{font-size:10.5px!important;line-height:1.1!important}
.dragonbound-my-dragon-stat-grid>div{padding:10px 6px 8px!important;min-height:57px}.dragonbound-my-dragon-stat-grid strong{font-size:18px!important}.dragonbound-my-dragon-stat-grid small{font-size:10px!important;line-height:1.15!important;letter-spacing:.25px!important}
.dragonbound-my-dragon-memory-list article{grid-template-columns:92px 1fr!important;gap:12px!important;padding:10px 2px!important}.dragonbound-my-dragon-memory-list time{font-size:10.5px!important;line-height:1.2!important}.dragonbound-my-dragon-memory-list strong{font-size:12px!important;line-height:1.2!important}.dragonbound-my-dragon-memory-list span{font-size:11px!important;line-height:1.35!important;margin-top:3px!important}.dragonbound-my-dragon-memory-empty{font-size:11.5px!important}
@media(max-width:900px){.dragonbound-my-dragon-book{width:97vw;height:94vh}.dragonbound-my-dragon-page{padding:16px 15px}.dragonbound-my-dragon-skills article{min-height:72px}.dragonbound-my-dragon-stat-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(prefers-reduced-motion:reduce){.dragonbound-baby-actor.is-physical-interaction>.dragonbound-baby-sprite,.dragonbound-carried-object,.dragonbound-furniture-placement.is-runtime-rolling-active,.dragonbound-physical-effects i{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Dragonbound V32.94 — paced skill training cooldowns */
.dragonbound-my-dragon-skills .dragonbound-skill-cooldown{
  margin:5px 0 0!important;
  color:#9a6840!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
.dragonbound-my-dragon-skills .dragonbound-skill-cooldown.is-ready{
  color:#537454!important;
}
.dragonbound-my-dragon-skills article[data-training-ready="0"]{
  background:rgba(248,241,220,.56)!important;
}

/* Dragonbound V32.95 — Daily Life moments + clickable skill training guide */
.dragonbound-life-moment{
  position:absolute;left:50%;top:calc(-1 * var(--dragon-tooltip-lift,78px) + 48px);z-index:997;
  transform:translateX(-50%);max-width:190px;padding:5px 9px;border:1px solid rgba(225,197,121,.35);border-radius:999px;
  background:rgba(7,28,31,.9);box-shadow:0 5px 14px rgba(0,0,0,.28);color:#ead7a0;
  font:800 9px/1.2 "Nunito",system-ui,sans-serif;letter-spacing:.15px;text-align:center;white-space:normal;pointer-events:none;
  animation:dragonboundLifeMoment 3.6s ease both;
}
.dragonbound-life-moment.is-happy{color:#f4d4ad;border-color:rgba(238,179,127,.38)}
.dragonbound-life-moment.is-grumpy{color:#dfc0a0;border-color:rgba(189,132,84,.38)}
@keyframes dragonboundLifeMoment{0%{opacity:0;transform:translate(-50%,5px) scale(.96)}12%,75%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-5px) scale(.98)}}

/* Dragonbound V34.04 — temporary daily preferences / mini pet events */
.dragonbound-my-dragon-today{margin:12px 0;padding:13px 14px;border:1px solid rgba(91,70,33,.14);border-radius:10px;background:linear-gradient(145deg,rgba(116,92,61,.045),rgba(255,250,236,.4))}
.dragonbound-my-dragon-today-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.dragonbound-my-dragon-today-card{min-width:0;padding:9px 10px;border:1px solid rgba(91,70,33,.12);border-radius:8px;background:rgba(255,250,236,.52)}
.dragonbound-my-dragon-today-card:only-child{grid-column:1/-1}
.dragonbound-my-dragon-today-card>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;margin-bottom:4px}
.dragonbound-my-dragon-today-card small{grid-column:1;color:#8a7046;font:900 10px/1.15 "Nunito",system-ui,sans-serif;letter-spacing:.55px;text-transform:uppercase;white-space:nowrap}
.dragonbound-my-dragon-today-card strong{grid-column:1;display:block;color:#4e3b29;font:900 12.5px/1.25 "Nunito",system-ui,sans-serif;overflow-wrap:anywhere}
.dragonbound-my-dragon-today-card span{grid-column:2;grid-row:1/3;align-self:center;color:#8b7657;font:800 9.8px/1.2 "Nunito",system-ui,sans-serif;white-space:nowrap}
.dragonbound-my-dragon-today-card p{margin:5px 0 0;color:#665a48;font:700 11.3px/1.38 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-today-card.is-quiet{background:rgba(255,250,236,.34);border-style:dashed}
.dragonbound-my-dragon-today-card.is-quiet strong{color:#6e604d}
@media(max-width:900px){.dragonbound-my-dragon-today-list{grid-template-columns:1fr}.dragonbound-my-dragon-today-card:only-child{grid-column:auto}}

.dragonbound-my-dragon-daily-life{margin:12px 0;padding:13px 14px;border:1px solid rgba(91,70,33,.14);border-radius:10px;background:linear-gradient(145deg,rgba(93,119,89,.05),rgba(255,250,236,.36))}
.dragonbound-my-dragon-daily-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dragonbound-my-dragon-daily-grid>div{min-width:0;padding:9px 10px;border:1px solid rgba(91,70,33,.11);border-radius:8px;background:rgba(255,250,236,.48)}
.dragonbound-my-dragon-daily-grid small{display:block;margin-bottom:4px;color:#8a7046;font:900 clamp(10.5px,.68vw,12px)/1.15 "Nunito",system-ui,sans-serif;letter-spacing:.55px;text-transform:uppercase}
.dragonbound-my-dragon-daily-grid strong{display:block;color:#4e3b29;font:900 clamp(12px,.78vw,14px)/1.28 "Nunito",system-ui,sans-serif;overflow-wrap:anywhere}
.dragonbound-my-dragon-recent-moment{margin-top:9px;padding:9px 10px;border-left:3px solid rgba(91,111,74,.48);border-radius:6px;background:rgba(79,99,66,.06)}
.dragonbound-my-dragon-recent-moment small{display:block;margin-bottom:4px;color:#8a7046;font:900 10.5px/1.15 "Nunito",system-ui,sans-serif;letter-spacing:.6px}
.dragonbound-my-dragon-recent-moment strong{display:block;margin-bottom:3px;color:#4d3927;font:900 12.5px/1.2 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-recent-moment p{margin:0;color:#665a48;font:700 11.5px/1.38 "Nunito",system-ui,sans-serif}

.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card{
  appearance:none;-webkit-appearance:none;width:100%;margin:0;text-align:left;color:inherit;font:inherit;cursor:pointer;
  display:grid;grid-template-columns:31px 1fr;align-items:center;gap:9px;min-width:0;min-height:82px;padding:10px 11px;
  border:1px solid rgba(91,70,33,.14);border-radius:8px;background:rgba(255,250,236,.48);
  box-shadow:none;outline:none;transition:background .15s ease,border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card:hover{background:rgba(255,252,241,.72);border-color:rgba(91,104,67,.32);transform:translateY(-1px)}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card:focus-visible{outline:2px solid rgba(83,116,84,.62);outline-offset:2px}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card.is-selected{background:rgba(235,239,214,.72);border-color:rgba(75,105,74,.48);box-shadow:0 0 0 2px rgba(75,105,74,.08) inset}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card[data-training-ready="0"]{background:rgba(248,241,220,.56)}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(64,92,74,.1);color:#4f6954;font:900 14px/1 Georgia,serif}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card>div{min-width:0}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card>div>div{display:flex;align-items:center;justify-content:space-between;gap:7px}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card strong{font-size:11.5px!important;line-height:1.1!important}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card b{font-size:14px!important}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card small{font-size:10.5px!important;line-height:1.22!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin:4px 0 5px!important}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card i{display:block;height:4px;border-radius:99px;background:rgba(64,77,53,.12);overflow:hidden}
.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card i>em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#678365,#b2a55f)}
.dragonbound-skill-help-hint{margin-top:6px!important;color:#5d765d!important;font-weight:900!important;letter-spacing:.02em!important}

.dragonbound-skill-help-panel{position:relative;margin-top:11px;padding:13px 14px 12px;border:1px solid rgba(78,102,72,.28);border-radius:9px;background:linear-gradient(145deg,rgba(239,242,220,.92),rgba(255,250,236,.88));box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.dragonbound-skill-help-panel[hidden]{display:none!important}
.dragonbound-skill-help-panel>small{display:block;color:#7f6a42;font:900 10.5px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:1px}
.dragonbound-skill-help-panel h3{margin:4px 32px 5px 0;color:#405642;font:900 17px/1.1 Georgia,serif}
.dragonbound-skill-help-panel>p{margin:0 32px 10px 0;color:#5f5749;font:700 11.8px/1.42 "Nunito",system-ui,sans-serif}
.dragonbound-skill-help-close{appearance:none;-webkit-appearance:none;position:absolute;right:9px;top:8px;width:28px;height:28px;border:1px solid rgba(89,71,40,.2);border-radius:50%;background:rgba(255,250,236,.7);color:#5a4934;font:900 17px/1 "Nunito",system-ui,sans-serif;cursor:pointer;box-shadow:none}
.dragonbound-skill-help-close:hover{background:#fffaf0;border-color:rgba(72,100,73,.42)}
.dragonbound-skill-help-close:focus-visible{outline:2px solid rgba(83,116,84,.62);outline-offset:2px}
.dragonbound-skill-help-owned{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:7px}
.dragonbound-skill-help-owned>div{min-width:0;padding:8px 9px;border:1px solid rgba(91,70,33,.11);border-radius:7px;background:rgba(255,255,250,.57)}
.dragonbound-skill-help-owned strong{display:block;color:#4e3b29;font:900 11.5px/1.25 "Nunito",system-ui,sans-serif;overflow-wrap:anywhere}
.dragonbound-skill-help-owned span{display:block;margin-top:3px;color:#7a6d58;font:700 10.5px/1.3 "Nunito",system-ui,sans-serif}
.dragonbound-skill-help-owned .is-empty{grid-column:1/-1}
.dragonbound-skill-help-note{display:block;margin-top:9px;padding-top:8px;border-top:1px solid rgba(91,70,33,.1);color:#675f50;font:700 10.8px/1.4 "Nunito",system-ui,sans-serif}

@media(max-width:900px){
  .dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card{min-height:76px}
  .dragonbound-skill-help-owned{grid-template-columns:1fr}
}
@media(max-width:720px){
  .dragonbound-my-dragon-daily-grid{grid-template-columns:1fr}
  .dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card{padding:9px 10px}
}
@media(prefers-reduced-motion:reduce){.dragonbound-life-moment{animation-duration:.01ms!important}.dragonbound-my-dragon-skills .dragonbound-my-dragon-skill-card{transition:none!important}}

/* Dragonbound V32.96 — journal interaction polish + reliable scrolling */
.dragonbound-my-dragon-page--right{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:14px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:38px!important;
  scroll-padding-bottom:38px!important;
}
.dragonbound-my-dragon-page--right>div{flex:0 0 auto!important;min-height:auto!important}
.dragonbound-my-dragon-memories{display:block!important;min-height:190px!important;padding-bottom:16px!important;overflow:visible!important}
.dragonbound-my-dragon-memory-list{min-height:120px!important;max-height:none!important;overflow:visible!important;padding-bottom:18px!important}

/* Skill cards are journal panels, not dark generic buttons. The selector is deliberately
   more specific than the site's shared button skins so they cannot inherit the brown CTA theme. */
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card{
  appearance:none!important;-webkit-appearance:none!important;
  position:relative!important;
  min-height:88px!important;
  padding:11px 12px!important;
  border:1px solid rgba(94,112,79,.24)!important;
  border-radius:10px!important;
  background:linear-gradient(145deg,rgba(255,252,241,.92),rgba(238,233,210,.86))!important;
  background-image:linear-gradient(145deg,rgba(255,252,241,.92),rgba(238,233,210,.86))!important;
  color:#453927!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 3px 9px rgba(83,64,34,.06)!important;
  text-shadow:none!important;
  transform:none;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  box-shadow:inset 3px 0 0 rgba(90,116,82,.34);opacity:.72;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card:hover{
  border-color:rgba(77,113,82,.48)!important;
  background:linear-gradient(145deg,#fffdf5,#edf0dc)!important;
  background-image:linear-gradient(145deg,#fffdf5,#edf0dc)!important;
  box-shadow:inset 0 1px 0 #fff,0 6px 14px rgba(54,83,63,.12)!important;
  transform:translateY(-2px)!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card:focus-visible{
  outline:2px solid rgba(76,112,82,.68)!important;outline-offset:2px!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card.is-selected{
  border-color:rgba(62,104,78,.62)!important;
  background:linear-gradient(145deg,#eef3df,#dde8cf)!important;
  background-image:linear-gradient(145deg,#eef3df,#dde8cf)!important;
  box-shadow:inset 0 0 0 1px rgba(75,110,82,.12),0 7px 16px rgba(52,82,60,.13)!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skills button.dragonbound-my-dragon-skill-card[data-training-ready="0"]{
  background:linear-gradient(145deg,#f8f3e3,#ebe3cc)!important;
  background-image:linear-gradient(145deg,#f8f3e3,#ebe3cc)!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card>span{
  background:linear-gradient(145deg,#dce7d5,#cbd9c6)!important;
  border:1px solid rgba(76,105,77,.18)!important;
  color:#456249!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65)!important;
  text-shadow:none!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card strong{
  color:#493b29!important;text-shadow:none!important;font-weight:900!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card b{
  color:#3e6248!important;text-shadow:none!important;font-weight:900!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card small{
  color:#71644f!important;text-shadow:none!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card .dragonbound-skill-cooldown.is-ready{color:#47704f!important}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card .dragonbound-skill-cooldown:not(.is-ready){color:#9a6840!important}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card .dragonbound-skill-mark-next{color:#8a6b2d!important}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card .dragonbound-skill-help-hint{
  display:inline-flex!important;align-items:center!important;gap:4px!important;width:auto!important;
  margin:6px 0 0!important;padding:3px 7px!important;border:1px solid rgba(74,107,77,.14)!important;
  border-radius:999px!important;background:rgba(83,115,82,.07)!important;
  color:#4d6b50!important;font-size:10.5px!important;font-weight:900!important;
}
.dragonbound-my-dragon-overlay .dragonbound-my-dragon-skill-card .dragonbound-skill-help-hint::after{content:"›";font-size:13px;line-height:.8}

.dragonbound-skill-help-panel{
  border-color:rgba(80,107,75,.34)!important;
  background:linear-gradient(145deg,#f2f4df,#fffaf0)!important;
  box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(64,82,53,.08)!important;
}
.dragonbound-skill-help-close{background:#f4eddb!important;border-color:rgba(88,72,44,.22)!important;color:#604d35!important;box-shadow:none!important;text-shadow:none!important}

@media(max-width:900px){
  .dragonbound-my-dragon-page--right{padding-bottom:28px!important}
  .dragonbound-my-dragon-memories{min-height:160px!important}
}

/* =========================================================
   Dragonbound V33.80 — The Living Dragon keeper journal
   A field-guide / scrapbook treatment: clean parchment, ink and sage.
   No generic site button skin is allowed to leak into journal tabs.
   ========================================================= */
.dragonbound-my-dragon-page--right{
  padding:18px 20px 28px!important;
  gap:0!important;
  overflow:hidden!important;
  background:
    linear-gradient(90deg,rgba(109,86,45,.035) 0 1px,transparent 1px 100%),
    linear-gradient(160deg,#f6efdd 0%,#ebe1c7 100%)!important;
}
.dragonbound-journal-tabs{
  position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;
  margin:-2px 2px 12px;padding:0 4px 8px;border-bottom:1px solid rgba(79,68,44,.19);
  flex:0 0 auto!important;
}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button{
  appearance:none!important;-webkit-appearance:none!important;position:relative!important;display:block!important;width:100%!important;
  min-height:47px!important;margin:0!important;padding:8px 7px 7px!important;border:0!important;border-radius:8px 8px 3px 3px!important;
  background:transparent!important;background-image:none!important;box-shadow:none!important;text-shadow:none!important;
  color:#75664d!important;cursor:pointer!important;transform:none!important;outline:none!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button::before{
  content:"";position:absolute;left:12%;right:12%;bottom:-9px;height:2px;border-radius:99px;background:#69806a;opacity:0;transform:scaleX(.35);transition:opacity .16s ease,transform .16s ease;
}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button span{display:block;color:inherit!important;font:900 12px/1.05 Georgia,serif!important;letter-spacing:.2px!important;text-transform:none!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button small{display:block;margin-top:4px;color:inherit!important;font:800 8.8px/1 "Nunito",system-ui,sans-serif!important;letter-spacing:.35px!important;opacity:.68;text-transform:uppercase!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button:hover{background:rgba(93,112,82,.07)!important;color:#4d654f!important;transform:translateY(-1px)!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button.is-active{background:linear-gradient(180deg,rgba(92,117,87,.12),rgba(92,117,87,.035))!important;color:#405a45!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button.is-active::before{opacity:.9;transform:scaleX(1)}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button:focus-visible{outline:2px solid rgba(73,108,79,.54)!important;outline-offset:2px!important}

.dragonbound-journal-panel{position:relative;flex:1 1 auto!important;min-height:0!important;overflow-y:auto;overflow-x:hidden;padding:1px 7px 22px 3px;scrollbar-width:thin;scrollbar-color:rgba(92,73,40,.28) transparent}
.dragonbound-journal-panel[hidden]{display:none!important}
.dragonbound-journal-panel.is-active{display:block!important;animation:dragonboundJournalPageIn .18s ease both}
.dragonbound-journal-panel::-webkit-scrollbar{width:5px}.dragonbound-journal-panel::-webkit-scrollbar-thumb{background:rgba(92,73,40,.25);border-radius:99px}
@keyframes dragonboundJournalPageIn{from{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:none}}

.dragonbound-personality-titlecard{
  position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:1px 0 13px;padding:13px 15px 12px 17px;
  border:1px solid rgba(80,101,72,.2);border-radius:11px;background:linear-gradient(120deg,rgba(225,235,207,.72),rgba(249,243,222,.52));
  box-shadow:inset 3px 0 0 rgba(86,119,88,.42),inset 0 1px 0 rgba(255,255,255,.72);
}
.dragonbound-personality-titlecard::after{content:"✦";position:absolute;right:11px;top:8px;color:rgba(91,109,75,.16);font:700 18px/1 Georgia,serif}
.dragonbound-personality-titlecard small{display:block;margin-bottom:4px;color:#8a724a;font:900 9.5px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.15px}
.dragonbound-personality-titlecard strong{display:block;color:#405443;font:700 clamp(18px,1.35vw,24px)/1.05 Georgia,serif}
.dragonbound-personality-titlecard>span{max-width:145px;padding-right:13px;color:#796a52;font:800 10.5px/1.25 "Nunito",system-ui,sans-serif;text-align:right}

.dragonbound-my-dragon-personality{margin-bottom:13px!important;padding:13px 14px!important;border:1px solid rgba(91,70,33,.13)!important;border-radius:10px!important;background:rgba(255,251,240,.42)!important}
.dragonbound-my-dragon-traits{display:flex!important;flex-wrap:wrap!important;gap:6px!important;margin-top:10px!important}
.dragonbound-my-dragon-traits span{position:relative!important;padding:6px 10px!important;border-radius:999px!important}
.dragonbound-my-dragon-traits .is-revealed{border:1px solid rgba(72,104,75,.26)!important;background:rgba(104,131,95,.11)!important;color:#435e48!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important}
.dragonbound-my-dragon-traits .is-hidden{border:1px dashed rgba(112,92,56,.24)!important;background:rgba(125,102,62,.035)!important;color:#9d8c6d!important;letter-spacing:1px!important}
.dragonbound-personality-observation{margin-top:11px;padding:9px 11px 9px 13px;border-left:2px solid rgba(95,116,80,.46);background:linear-gradient(90deg,rgba(104,126,88,.07),transparent 80%);border-radius:4px}
.dragonbound-personality-observation small{display:block;margin-bottom:4px;color:#806b48;font:900 9.5px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:.85px}
.dragonbound-personality-observation p{margin:0!important;color:#625847!important;font:700 11.5px/1.42 "Nunito",system-ui,sans-serif!important}
.dragonbound-personality-observation strong{color:#49614d}

.dragonbound-personality-book-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 12px}
.dragonbound-personality-book-card{min-width:0;padding:12px 13px;border:1px solid rgba(91,70,33,.13);border-radius:10px;background:rgba(255,252,242,.44);box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}
.dragonbound-personality-book-card .dragonbound-my-dragon-section-title{margin-bottom:9px}
.dragonbound-personality-quirks{display:grid;gap:7px}
.dragonbound-personality-quirks article{display:grid;grid-template-columns:23px 1fr;gap:8px;align-items:start;padding:7px 0;border-bottom:1px dashed rgba(92,73,43,.13)}
.dragonbound-personality-quirks article:last-child{border-bottom:0}
.dragonbound-personality-quirks article>i{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:rgba(92,119,84,.1);color:#61785f;font:900 9px/1 Georgia,serif;font-style:normal}
.dragonbound-personality-quirks strong{display:block;color:#493c2c;font:900 11.5px/1.2 "Nunito",system-ui,sans-serif}
.dragonbound-personality-quirks span{display:block;margin-top:2px;color:#756955;font:700 10.6px/1.35 "Nunito",system-ui,sans-serif}
.dragonbound-personality-undiscovered{display:flex;align-items:center;gap:10px;padding:10px;border:1px dashed rgba(103,84,52,.2);border-radius:8px;color:#80745e}
.dragonbound-personality-undiscovered>b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:rgba(98,119,84,.08);color:#7e8c71;font:700 14px/1 Georgia,serif}
.dragonbound-personality-undiscovered>span{font:800 10.8px/1.25 "Nunito",system-ui,sans-serif}.dragonbound-personality-undiscovered small{display:block;margin-top:3px;font-size:9.7px;font-weight:700;opacity:.76}
.dragonbound-personality-relationship strong{display:inline-block;margin-bottom:5px;padding:4px 8px;border-radius:999px;background:rgba(92,120,86,.1);color:#49634d;font:900 11px/1 "Nunito",system-ui,sans-serif}
.dragonbound-personality-relationship p{margin:0;color:#5f5545;font:700 11.5px/1.42 "Nunito",system-ui,sans-serif}.dragonbound-personality-relationship small{display:block;margin-top:8px;padding-top:7px;border-top:1px dashed rgba(91,70,33,.14);color:#8a795d;font:800 9.8px/1.3 "Nunito",system-ui,sans-serif}

.dragonbound-personality-now{display:grid;grid-template-columns:minmax(150px,.8fr) 1.2fr;gap:12px;align-items:center;padding:11px 13px;border:1px solid rgba(101,81,45,.14);border-radius:9px;background:linear-gradient(110deg,rgba(227,213,170,.14),rgba(255,250,236,.4))}
.dragonbound-personality-now small{display:block;color:#8a7046;font:900 9.3px/1 "Nunito",system-ui,sans-serif;letter-spacing:.8px}.dragonbound-personality-now strong{display:block;margin-top:4px;color:#4c603f;font:800 12px/1.25 Georgia,serif}.dragonbound-personality-now p{margin:0;padding-left:12px;border-left:1px solid rgba(91,70,33,.14);color:#726652;font:700 10.8px/1.4 "Nunito",system-ui,sans-serif}

.dragonbound-personality-book-grid--preferences{margin:11px 0}
.dragonbound-personality-preference-list{display:grid;gap:6px}
.dragonbound-personality-preference-list span{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:7px;background:rgba(255,252,242,.52);color:#5f5648;font:800 10.8px/1.25 "Nunito",system-ui,sans-serif}
.dragonbound-personality-preference-list span i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;font:900 9px/1 "Nunito",system-ui,sans-serif;font-style:normal}
.dragonbound-personality-preference-list.is-comfort span i{background:rgba(98,130,94,.12);color:#557358}.dragonbound-personality-preference-list.is-dislike span i{background:rgba(146,105,77,.1);color:#91694f}
.dragonbound-personality-preference-list em{display:block;padding:9px;color:#8c806b;font:italic 10.8px/1.35 Georgia,serif}

.dragonbound-journal-panel[data-dragon-journal-panel="scrapbook"] .dragonbound-my-dragon-recent-moment{margin:2px 0 12px;padding:12px 14px;border-left:3px solid rgba(91,119,84,.52);background:rgba(95,119,83,.065)}
.dragonbound-journal-panel[data-dragon-journal-panel="scrapbook"] .dragonbound-my-dragon-memories{min-height:0!important;padding:13px 14px 18px!important;border:1px solid rgba(91,70,33,.13);border-radius:10px;background:rgba(255,252,242,.4)}
.dragonbound-journal-panel[data-dragon-journal-panel="scrapbook"] .dragonbound-my-dragon-memory-list article{position:relative;padding-left:9px!important}
.dragonbound-journal-panel[data-dragon-journal-panel="scrapbook"] .dragonbound-my-dragon-memory-list article::before{content:"";position:absolute;left:0;top:15px;width:4px;height:4px;border-radius:50%;background:rgba(78,111,78,.48)}

/* Tiny emotional tells belong to the dragon, not the HUD. They are sparse and self-removing. */
.dragonbound-baby-actor{overflow:visible!important}
.dragonbound-personality-expression{position:absolute;left:50%;top:calc(-1 * var(--dragon-tooltip-lift,78px) + 20px);z-index:999;display:flex;align-items:center;gap:5px;transform:translateX(-50%);pointer-events:none;white-space:nowrap;animation:dragonboundPersonalityTell 2.7s ease both}
.dragonbound-personality-expression>b{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:1px solid rgba(229,202,131,.38);border-radius:999px;background:rgba(10,31,31,.91);box-shadow:0 5px 14px rgba(0,0,0,.24);color:#f0dca4;font:900 12px/1 Georgia,serif;text-shadow:none}
.dragonbound-personality-expression>small{max-width:120px;padding:5px 7px;border:1px solid rgba(225,198,128,.27);border-radius:6px;background:rgba(10,31,31,.88);color:#eadab0;font:800 8.5px/1.15 "Nunito",system-ui,sans-serif;overflow:hidden;text-overflow:ellipsis}
.dragonbound-personality-expression.is-discovery>b{border-color:rgba(204,178,94,.55);color:#ffe49a;box-shadow:0 0 15px rgba(224,189,86,.12),0 5px 14px rgba(0,0,0,.24)}
@keyframes dragonboundPersonalityTell{0%{opacity:0;transform:translate(-50%,6px) scale(.92)}12%,72%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-8px) scale(.96)}}

@media(max-width:900px){
  .dragonbound-my-dragon-page--right{padding:14px 13px 23px!important}
  .dragonbound-journal-tabs{position:sticky;top:0;z-index:7;margin:0 0 10px;padding:4px 2px 8px;background:linear-gradient(180deg,#efe5cc 72%,rgba(239,229,204,.86) 88%,rgba(239,229,204,0))}
  .dragonbound-journal-panel{overflow:visible;padding-right:2px}
  .dragonbound-personality-book-grid{grid-template-columns:1fr}
  .dragonbound-personality-titlecard{align-items:flex-start}.dragonbound-personality-titlecard>span{max-width:110px}
}
@media(max-width:680px){
  .dragonbound-my-dragon-page--right{overflow:visible!important}
  .dragonbound-journal-tabs{grid-template-columns:repeat(4,1fr);gap:2px}
  .dragonbound-my-dragon-overlay .dragonbound-journal-tabs button{min-height:42px!important;padding:7px 3px!important}
  .dragonbound-my-dragon-overlay .dragonbound-journal-tabs button span{font-size:10.5px!important}.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button small{display:none}
  .dragonbound-personality-now{grid-template-columns:1fr}.dragonbound-personality-now p{padding:8px 0 0;border-left:0;border-top:1px solid rgba(91,70,33,.14)}
  .dragonbound-personality-titlecard strong{font-size:18px}.dragonbound-personality-titlecard>span{font-size:9.5px}
}
@media(prefers-reduced-motion:reduce){.dragonbound-journal-panel.is-active,.dragonbound-personality-expression{animation:none!important}.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button{transition:none!important}}

/* =====================================================================
   V33.81 — Household Bonds + Velmoran Calendar
   ===================================================================== */
.dragonbound-journal-tabs{grid-template-columns:repeat(6,minmax(0,1fr))!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button{min-width:0!important;padding:8px 4px!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button span{font-size:10.8px!important}
.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button small{font-size:7.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Bonds journal — ink and parchment, not dashboard cards. */
.dragonbound-social-journal,.dragonbound-calendar-journal{display:grid;gap:12px;color:#4d402f}
.dragonbound-social-lead{display:grid;grid-template-columns:1fr 70px;gap:16px;align-items:center;padding:14px 16px;border-top:1px solid rgba(88,71,43,.22);border-bottom:1px solid rgba(88,71,43,.22);background:linear-gradient(90deg,rgba(87,109,79,.075),rgba(255,255,255,.04) 48%,rgba(142,114,65,.05))}
.dragonbound-social-lead small,.dragonbound-social-section-head small,.dragonbound-social-routines-book>small{display:block;color:#92794d;font:900 7.7px/1.2 "Nunito",system-ui,sans-serif;letter-spacing:1.15px;text-transform:uppercase}
.dragonbound-social-lead strong{display:block;margin:3px 0 4px;color:#405b48;font:700 21px/1 Georgia,serif}
.dragonbound-social-lead p{margin:0;max-width:540px;color:#675b49;font:700 9px/1.45 "Nunito",system-ui,sans-serif}
.dragonbound-social-seal{width:60px;height:60px;display:grid;place-items:center;position:relative;border:2px solid rgba(72,99,74,.42);border-radius:50%;background:radial-gradient(circle,#f1e5c8 55%,#d7c39a);box-shadow:inset 0 0 0 4px rgba(255,255,255,.25),0 3px 9px rgba(68,47,22,.12);color:#496750;font:900 16px/1 Georgia,serif}
.dragonbound-social-seal i{position:absolute;inset:7px;border:1px dashed rgba(72,99,74,.35);border-radius:50%}
.dragonbound-social-section-head{display:flex;align-items:end;justify-content:space-between;gap:10px;padding:2px 2px 6px;border-bottom:1px solid rgba(91,73,44,.18)}
.dragonbound-social-section-head>span{color:#4f402c;font:700 15px/1.1 Georgia,serif}
.dragonbound-social-section-head small{text-align:right;letter-spacing:.4px;font-size:7px}
.dragonbound-social-list{display:grid;gap:7px}
.dragonbound-social-list article{position:relative;display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center;padding:9px 10px;border-bottom:1px dashed rgba(103,82,47,.22);background:linear-gradient(90deg,rgba(255,255,255,.16),rgba(120,102,68,.025));min-height:72px}
.dragonbound-social-list article:last-child{border-bottom:0}
.dragonbound-social-portrait{width:56px;height:56px;display:grid;place-items:center;position:relative;border:1px solid rgba(90,77,53,.25);border-radius:50%;background:radial-gradient(circle at 50% 42%,#f4ead1 0 57%,#d9c7a3 100%);box-shadow:inset 0 0 0 3px rgba(255,255,255,.28)}
.dragonbound-social-portrait::after{content:'';position:absolute;inset:4px;border:1px dashed rgba(74,100,76,.2);border-radius:50%}
.dragonbound-social-portrait img{width:84%;height:84%;object-fit:contain;image-rendering:pixelated;position:relative;z-index:1}
.dragonbound-social-copy{min-width:0}
.dragonbound-social-copy>small{display:block;color:#9c8051;font:900 6.7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.9px}
.dragonbound-social-copy>strong{display:inline-block;margin-top:2px;color:#493c2d;font:700 14px/1.05 Georgia,serif}
.dragonbound-social-copy>b{display:inline-block;margin-left:7px;color:#4d6a51;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.55px;text-transform:uppercase}
.dragonbound-social-copy>p{margin:4px 0 0;color:#746551;font:700 8.4px/1.35 "Nunito",system-ui,sans-serif}
.dragonbound-social-invite{align-self:center;padding:7px 9px;border-top:1px solid rgba(75,105,80,.34);border-bottom:1px solid rgba(75,105,80,.34);color:#48634d;background:rgba(79,107,83,.055);font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.75px;white-space:nowrap;cursor:pointer;transition:background .15s ease,color .15s ease}
.dragonbound-social-invite:hover,.dragonbound-social-invite:focus-visible{background:rgba(79,107,83,.12);color:#2f5038;outline:none}.dragonbound-social-controls{display:flex;flex-wrap:wrap;align-self:center;justify-content:flex-start;gap:6px}.dragonbound-social-toggle{align-self:center;padding:7px 9px;border-top:1px solid rgba(82,78,54,.28);border-bottom:1px solid rgba(82,78,54,.28);color:#5b4c39;background:rgba(123,109,82,.055);font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.75px;white-space:nowrap;cursor:pointer;transition:background .15s ease,color .15s ease}.dragonbound-social-toggle:hover,.dragonbound-social-toggle:focus-visible{background:rgba(123,109,82,.12);color:#40311e;outline:none}.dragonbound-social-toggle.is-off{color:#6e5d45;background:rgba(119,108,84,.09)}
.dragonbound-social-routines-book,.dragonbound-habits-social-note{padding:10px 12px 8px;border-left:2px solid rgba(87,111,88,.32);background:linear-gradient(90deg,rgba(87,111,88,.06),transparent)}
.dragonbound-social-routines-book p,.dragonbound-habits-social-note p{margin:4px 0;color:#685b49;font:700 8.4px/1.35 "Nunito",system-ui,sans-serif}
.dragonbound-habits-social-note{margin-top:10px}
.dragonbound-social-empty{padding:18px 15px;text-align:center;border:1px dashed rgba(100,81,48,.24);background:rgba(255,255,255,.12)}
.dragonbound-social-empty strong{display:block;color:#5b4b35;font:700 13px/1.2 Georgia,serif}.dragonbound-social-empty span{display:block;margin-top:5px;color:#806f58;font:700 8.2px/1.35 "Nunito",system-ui,sans-serif}.dragonbound-social-empty.is-small{padding:12px}

/* Calendar page inside the Keeper Journal. */
.dragonbound-calendar-today{display:grid;grid-template-columns:64px 1fr auto;gap:13px;align-items:center;padding:13px 14px;border-top:2px solid color-mix(in srgb,var(--event-accent,#71815d) 55%,transparent);border-bottom:1px solid rgba(95,76,44,.22);background:linear-gradient(100deg,color-mix(in srgb,var(--event-accent,#71815d) 10%,transparent),rgba(255,255,255,.08))}
.dragonbound-calendar-today>img{width:58px;height:58px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 3px 3px rgba(56,40,24,.15))}
.dragonbound-calendar-day-number{width:58px;height:58px;display:grid;place-items:center;border:1px solid rgba(95,76,44,.3);background:#efe3c5;color:#5a4931;font:700 28px/1 Georgia,serif;box-shadow:inset 0 0 0 4px rgba(255,255,255,.22)}
.dragonbound-calendar-today small{display:block;color:#94784a;font:900 7px/1.1 "Nunito",system-ui,sans-serif;letter-spacing:1px}
.dragonbound-calendar-today strong{display:block;margin:3px 0;color:#4a3c2d;font:700 19px/1 Georgia,serif}
.dragonbound-calendar-today p{margin:0;max-width:470px;color:#6e604e;font:700 8.5px/1.4 "Nunito",system-ui,sans-serif}
.dragonbound-calendar-open-full{padding:8px 10px;border-top:1px solid rgba(73,99,76,.38);border-bottom:1px solid rgba(73,99,76,.38);color:#45604b;background:rgba(76,104,80,.05);font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.75px;white-space:nowrap;cursor:pointer}
.dragonbound-calendar-open-full:hover,.dragonbound-calendar-open-full:focus-visible{background:rgba(76,104,80,.12);outline:none}
.dragonbound-calendar-journal-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:18px}
.dragonbound-calendar-journal-grid>section{min-width:0}
.dragonbound-calendar-upcoming-row{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;padding:7px 2px;border-bottom:1px dashed rgba(92,74,43,.18)}
.dragonbound-calendar-upcoming-row img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}.dragonbound-calendar-upcoming-row strong{display:block;color:#584632;font:700 10px/1.15 Georgia,serif}.dragonbound-calendar-upcoming-row span{display:block;margin-top:2px;color:#8a7455;font:800 7.3px/1.2 "Nunito",system-ui,sans-serif}
.dragonbound-calendar-memory{padding:7px 2px;border-bottom:1px dashed rgba(92,74,43,.18)}.dragonbound-calendar-memory time{display:block;color:#9b7e4d;font:900 6.5px/1 "Nunito",system-ui,sans-serif;letter-spacing:.6px;text-transform:uppercase}.dragonbound-calendar-memory strong{display:block;margin-top:2px;color:#5a4732;font:700 10px/1.15 Georgia,serif}.dragonbound-calendar-memory p{margin:2px 0 0;color:#756551;font:700 7.6px/1.3 "Nunito",system-ui,sans-serif}

/* Small home-calendar tab: deliberately not a <button> to avoid site-wide button skins. */
.velmora-calendar-launcher{position:absolute;z-index:5200;right:18px;bottom:18px;top:auto;width:126px;min-height:58px;display:grid;grid-template-columns:34px 1fr;align-items:center;gap:7px;padding:7px 9px 7px 7px;border:1px solid rgba(60,46,27,.62);border-radius:4px 4px 8px 4px;background:linear-gradient(180deg,#f3e4bd,#d9c08d);box-shadow:0 5px 13px rgba(15,11,7,.3),inset 0 0 0 2px rgba(255,255,255,.22);color:#4d3926;cursor:pointer;transform:rotate(.35deg);transition:transform .16s ease,filter .16s ease;isolation:isolate}
.velmora-calendar-launcher::before{content:'';position:absolute;inset:3px;border:1px dashed rgba(107,78,39,.26);pointer-events:none}.velmora-calendar-launcher:hover,.velmora-calendar-launcher:focus-visible{transform:rotate(0) translateY(-1px);filter:brightness(1.035);outline:2px solid rgba(224,190,111,.5);outline-offset:2px}.velmora-calendar-launcher>img{width:32px;height:32px;object-fit:contain;image-rendering:pixelated;z-index:1}.velmora-calendar-launcher>span:not(.velmora-calendar-pin){min-width:0;display:grid;grid-template-columns:auto 1fr;column-gap:5px;align-items:baseline;z-index:1}.velmora-calendar-launcher small{grid-column:1/-1;color:#81663e;font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.7px}.velmora-calendar-launcher strong{color:#4a3827;font:700 19px/1 Georgia,serif}.velmora-calendar-launcher em{overflow:hidden;color:#5d4b36;font:700 7px/1.15 "Nunito",system-ui,sans-serif;font-style:normal;white-space:nowrap;text-overflow:ellipsis}.velmora-calendar-pin{position:absolute!important;left:50%;top:-5px;width:9px;height:9px;border-radius:50%;background:#a37b3d;box-shadow:0 1px 0 #544020,0 2px 4px rgba(0,0,0,.25);transform:translateX(-50%)}

/* Full 31-day calendar. */
.velmora-calendar-overlay{position:fixed;z-index:21000;inset:0;display:grid;place-items:center;padding:24px;background:rgba(5,13,13,0);pointer-events:none;opacity:0;transition:opacity .18s ease}.velmora-calendar-overlay.is-visible{pointer-events:auto;opacity:1}.velmora-calendar-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,rgba(14,31,30,.62),rgba(3,10,11,.88));backdrop-filter:blur(3px)}
.velmora-calendar-book{position:relative;width:min(1080px,94vw);height:min(760px,92vh);overflow:hidden;padding:26px 28px 22px;border:2px solid #6b4e2c;border-radius:11px;background:linear-gradient(90deg,#e9d8af 0,#f5e8c9 4%,#efe0bc 49.5%,#d9c497 50%,#f0dfb9 51%,#f5e8cb 96%,#e3cf9f 100%);box-shadow:0 28px 70px rgba(0,0,0,.55),inset 0 0 0 3px rgba(255,255,255,.24),inset 0 0 42px rgba(118,84,37,.14);color:#493a28;transform:translateY(8px) scale(.99);transition:transform .2s ease}.velmora-calendar-overlay.is-visible .velmora-calendar-book{transform:none}.velmora-calendar-book::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(90deg,rgba(77,53,24,.16),rgba(255,255,255,.38),rgba(77,53,24,.12));box-shadow:0 0 13px rgba(65,42,19,.12)}.velmora-calendar-book::after{content:'';position:absolute;inset:10px;border:1px solid rgba(105,76,39,.18);border-radius:7px;pointer-events:none}
.velmora-calendar-ribbon{position:absolute;right:42px;top:0;padding:8px 15px 12px;background:#4c6a50;color:#f0dfaf;clip-path:polygon(0 0,100% 0,100% 100%,50% 82%,0 100%);font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.3px;z-index:2}.velmora-calendar-heading{height:76px;display:flex;align-items:start;justify-content:space-between;gap:20px;padding:0 12px 11px;border-bottom:1px solid rgba(92,68,35,.2);position:relative;z-index:1}.velmora-calendar-heading small{color:#927244;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.3px}.velmora-calendar-heading h2{margin:4px 0 2px;color:#483722;font:700 30px/1 Georgia,serif;text-shadow:0 1px rgba(255,255,255,.5)}.velmora-calendar-heading p{margin:0;color:#806b4b;font:700 8.2px/1.3 "Nunito",system-ui,sans-serif}.velmora-calendar-cycle{text-align:right;padding-right:94px}.velmora-calendar-cycle strong{display:block;color:#4f694f;font:700 25px/1 Georgia,serif}.velmora-calendar-cycle span{display:block;margin-top:3px;color:#886e48;font:800 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.4px}
.velmora-calendar-layout{height:calc(100% - 132px);display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:26px;padding:15px 12px 8px;position:relative;z-index:1}.velmora-calendar-grid-wrap{min-width:0}.velmora-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;height:calc(100% - 32px)}
.velmora-calendar-day{position:relative;min-width:0;min-height:74px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px 3px;border:1px solid rgba(99,72,38,.2);background:rgba(255,249,226,.33);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);cursor:pointer;transition:background .12s ease,transform .12s ease,border-color .12s ease}.velmora-calendar-day:hover,.velmora-calendar-day:focus-visible{background:rgba(255,250,230,.66);border-color:rgba(86,101,70,.42);transform:translateY(-1px);outline:none}.velmora-calendar-day b{position:absolute;left:5px;top:4px;color:#725b3d;font:700 9px/1 Georgia,serif}.velmora-calendar-day img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 2px rgba(65,45,25,.12))}.velmora-calendar-day small{width:100%;margin-top:2px;overflow:hidden;color:#65523a;font:800 6.1px/1.05 "Nunito",system-ui,sans-serif;text-align:center;text-overflow:ellipsis;white-space:nowrap}.velmora-calendar-day em{position:absolute;right:4px;top:4px;color:#4f6d52;font:900 5.7px/1 "Nunito",system-ui,sans-serif;font-style:normal;letter-spacing:.4px}.velmora-calendar-day-mark{color:rgba(100,78,46,.19);font:700 24px/1 Georgia,serif}.velmora-calendar-day.is-major{background:color-mix(in srgb,var(--event-accent) 10%,#f5e8c7)}.velmora-calendar-day.is-tradition{background:color-mix(in srgb,var(--event-accent) 7%,#f5e8c7)}.velmora-calendar-day.is-today{border:2px solid #5f7d5e;box-shadow:inset 0 0 0 3px rgba(99,126,92,.1),0 2px 8px rgba(65,83,61,.13)}.velmora-calendar-day.is-selected{outline:2px solid rgba(189,144,60,.54);outline-offset:-4px}
.velmora-calendar-legend{height:27px;display:flex;align-items:center;gap:18px;padding:7px 3px 0;color:#7e6949;font:800 6.3px/1 "Nunito",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.45px}.velmora-calendar-legend span{display:flex;align-items:center;gap:5px}.velmora-calendar-legend i{width:8px;height:8px;border-radius:2px;background:#869879}.velmora-calendar-legend i.is-major{background:#c59a4c}.velmora-calendar-legend i.is-tradition{background:#71818d}.velmora-calendar-legend i.is-minor{background:#78945e}
.velmora-calendar-detail{align-self:stretch;position:relative;padding:23px 20px 18px;border-left:1px solid rgba(95,69,34,.18);background:linear-gradient(90deg,rgba(255,255,255,.1),rgba(116,91,53,.035));text-align:center}.velmora-calendar-detail-icon{width:98px;height:98px;margin:2px auto 12px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--event-accent) 40%,#735c38);border-radius:50%;background:radial-gradient(circle,#f8edcf 52%,color-mix(in srgb,var(--event-accent) 13%,#e3cfa2));box-shadow:inset 0 0 0 5px rgba(255,255,255,.23)}.velmora-calendar-detail-icon img{width:72px;height:72px;object-fit:contain;image-rendering:pixelated}.velmora-calendar-detail>small{color:#9b7846;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1px}.velmora-calendar-detail h3{margin:5px 0 9px;color:#493a28;font:700 23px/1.05 Georgia,serif}.velmora-calendar-detail>p{margin:0 auto;max-width:300px;color:#71614b;font:700 9px/1.5 "Nunito",system-ui,sans-serif}.velmora-calendar-detail-note{margin-top:17px;padding:10px 5px;border-top:1px solid rgba(94,70,38,.16);border-bottom:1px solid rgba(94,70,38,.16)}.velmora-calendar-detail-note span,.velmora-calendar-detail-note em{display:block;color:#6c5a43;font:800 7px/1.3 "Nunito",system-ui,sans-serif}.velmora-calendar-detail-note em{margin-top:3px;color:#4e6d53;font-style:normal}.velmora-calendar-quiet-seal{width:86px;height:86px;margin:7px auto 16px;display:grid;place-items:center;border:1px solid rgba(83,105,77,.35);border-radius:50%;background:radial-gradient(circle,#eee1bf,#dbc79a);box-shadow:inset 0 0 0 5px rgba(255,255,255,.2)}.velmora-calendar-quiet-seal span{color:#60765b;font:700 30px/1 Georgia,serif}
.velmora-calendar-upcoming{height:52px;display:flex;align-items:center;gap:12px;padding:6px 12px 0;border-top:1px solid rgba(93,68,34,.18);position:relative;z-index:1}.velmora-calendar-upcoming>strong{color:#4f6047;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1px;white-space:nowrap}.velmora-calendar-upcoming>div{display:grid;grid-template-columns:28px 1fr;gap:5px;align-items:center;min-width:145px}.velmora-calendar-upcoming img{width:26px;height:26px;object-fit:contain;image-rendering:pixelated}.velmora-calendar-upcoming b{display:block;color:#5b4831;font:700 8.5px/1 Georgia,serif}.velmora-calendar-upcoming small{display:block;margin-top:2px;color:#8d7451;font:800 6px/1 "Nunito",system-ui,sans-serif}.velmora-calendar-close{position:absolute;right:18px;top:15px;z-index:4;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(84,62,32,.32);border-radius:50%;background:rgba(247,232,195,.8);color:#655039;font:700 18px/1 Georgia,serif;cursor:pointer}.velmora-calendar-close:hover,.velmora-calendar-close:focus-visible{background:#f8eccd;outline:2px solid rgba(80,105,79,.35)}

/* Festival entry notice. */
.velmora-festival-announcement{position:absolute;z-index:13200;left:50%;top:72px;width:min(510px,72vw);display:grid;grid-template-columns:74px 1fr;gap:13px;align-items:center;padding:13px 17px 13px 12px;border:1px solid rgba(88,65,33,.58);border-radius:6px;background:linear-gradient(180deg,rgba(246,231,194,.97),rgba(218,195,145,.98));box-shadow:0 14px 32px rgba(0,0,0,.36),inset 0 0 0 2px rgba(255,255,255,.22);pointer-events:none;opacity:0;transform:translate(-50%,-14px);transition:opacity .28s ease,transform .28s ease;color:#4b3b28}.velmora-festival-announcement.is-visible{opacity:1;transform:translate(-50%,0)}.velmora-festival-announcement img{width:68px;height:68px;object-fit:contain;image-rendering:pixelated}.velmora-festival-announcement small{display:block;color:#88683d;font:900 6.8px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.1px}.velmora-festival-announcement strong{display:block;margin:4px 0;color:#493724;font:700 22px/1 Georgia,serif}.velmora-festival-announcement p{margin:0;color:#6c5940;font:700 8.6px/1.35 "Nunito",system-ui,sans-serif}
.dragonbound-social-notice{position:absolute;z-index:13150;right:22px;bottom:92px;width:250px;padding:10px 12px;border-left:3px solid #64816a;background:linear-gradient(90deg,rgba(244,232,200,.96),rgba(224,207,166,.96));box-shadow:0 7px 20px rgba(0,0,0,.28);pointer-events:none;opacity:0;transform:translateX(8px);transition:opacity .2s ease,transform .2s ease}.dragonbound-social-notice.is-visible{opacity:1;transform:none}.dragonbound-social-notice small{display:block;color:#75876e;font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.9px}.dragonbound-social-notice strong{display:block;margin:3px 0;color:#4e4232;font:700 12px/1.15 Georgia,serif}.dragonbound-social-notice span{display:block;color:#74634d;font:700 7.5px/1.3 "Nunito",system-ui,sans-serif}

/* Lightweight household pet visitor. */
.dragonbound-social-pet-visitor{position:absolute;z-index:300;transform:translate(-50%,-88%);transform-origin:50% 100%;pointer-events:none;will-change:left,top;filter:drop-shadow(0 3px 2px rgba(34,25,17,.2))}.dragonbound-social-pet-visitor img{display:block;width:100%;height:auto;image-rendering:pixelated;transform-origin:50% 100%}.dragonbound-social-pet-visitor.is-flipped img{transform:scaleX(-1)}.dragonbound-social-pet-visitor span{position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);padding:2px 5px;border:1px solid rgba(42,32,22,.45);border-radius:8px;background:rgba(239,226,194,.86);color:#4c3d2c;font:800 5.5px/1 "Nunito",system-ui,sans-serif;white-space:nowrap;opacity:.72}.dragonbound-social-pet-visitor.is-sleeping span{opacity:.42}

/* Festival layers: pure CSS, small element counts. */
.velmora-festival-layer{position:absolute;z-index:170;inset:0;overflow:hidden;pointer-events:none;isolation:isolate}.velmora-festival-layer i{position:absolute}.velmora-event-warmth,.velmora-event-starhearth-warmth,.velmora-event-moonwash,.velmora-event-frost{position:absolute;inset:0}.velmora-event-warmth{background:radial-gradient(circle at 82% 35%,rgba(255,184,74,.13),transparent 30%),linear-gradient(180deg,transparent 55%,rgba(255,179,73,.055));mix-blend-mode:screen}.velmora-event-starhearth-warmth{background:radial-gradient(circle at 50% 62%,rgba(255,185,83,.11),transparent 45%);mix-blend-mode:screen}.velmora-event-moonwash{background:linear-gradient(145deg,rgba(95,118,164,.075),transparent 50%)}.velmora-event-frost{box-shadow:inset 0 0 34px rgba(169,219,236,.12)}
.velmora-event-leaf{left:var(--x);top:var(--y);width:9px;height:6px;border-radius:8px 0 8px 0;background:#779b4d;opacity:.3;animation:velmoraLeafFloat var(--d) ease-in-out infinite;animation-delay:var(--delay)}.velmora-event-mote,.velmora-event-star,.velmora-event-frostspark,.velmora-event-heartglint{left:var(--x);top:var(--y);width:3px;height:3px;border-radius:50%;background:#f3c96b;box-shadow:0 0 8px rgba(255,198,91,.5);opacity:.25;animation:velmoraEventMote var(--d) ease-in-out infinite;animation-delay:var(--delay)}.velmora-event-star{width:4px;height:4px;background:#f7d56f;clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%)}.velmora-event-frostspark{background:#d8f2ff;box-shadow:0 0 8px rgba(168,224,246,.45)}.velmora-event-heartglint{width:6px;height:6px;border-radius:50% 50% 45% 45%;background:#d9828e;box-shadow:none;opacity:.18}.velmora-event-lanterns i{top:8%;width:10px;height:15px;border:2px solid rgba(79,50,24,.5);border-radius:2px;background:rgba(241,171,64,.38);box-shadow:0 0 12px rgba(255,174,64,.22)}.velmora-event-lanterns i:nth-child(1){left:17%}.velmora-event-lanterns i:nth-child(2){left:52%;top:5%}.velmora-event-lanterns i:nth-child(3){right:15%;top:12%}.velmora-event-lanterns.is-starhearth i{background:rgba(243,181,65,.44)}
.velmora-event-bunting{position:absolute;left:25%;right:18%;top:7%;height:20px;border-top:2px solid rgba(61,71,43,.35);transform:rotate(-1deg)}.velmora-event-bunting i{position:relative;display:inline-block!important;width:8px;height:11px;margin-left:26px;clip-path:polygon(0 0,100% 0,50% 100%);background:#b95249;opacity:.55}.velmora-event-bunting i:nth-child(2n){background:#4e8b76}.velmora-event-bunting i:nth-child(3n){background:#d6aa45}
.velmora-event-star-garland,.velmora-event-feast-garland{position:absolute;left:10%;right:10%;top:4%;height:24px;border-top:3px solid rgba(60,86,48,.37);border-radius:50%}.velmora-event-star-garland::before,.velmora-event-star-garland::after{content:'✦';position:absolute;top:-8px;color:rgba(236,190,78,.72);font-size:13px;text-shadow:0 0 8px rgba(241,183,68,.32)}.velmora-event-star-garland::before{left:29%}.velmora-event-star-garland::after{right:25%}.velmora-event-star-garland.is-full{border-top-color:rgba(51,90,48,.5)}.velmora-event-feast-garland{border-top-color:rgba(97,107,55,.25)}
.velmora-event-footprints i{width:12px;height:8px;border-radius:50%;background:rgba(105,72,44,.13);transform:rotate(28deg)}.velmora-event-footprints i:nth-child(1){left:22%;bottom:16%}.velmora-event-footprints i:nth-child(2){left:28%;bottom:21%}.velmora-event-footprints i:nth-child(3){left:34%;bottom:25%}
@keyframes velmoraLeafFloat{0%,100%{transform:translate3d(-8px,-4px,0) rotate(-8deg);opacity:.1}50%{transform:translate3d(24px,12px,0) rotate(34deg);opacity:.42}}
@keyframes velmoraEventMote{0%,100%{transform:translate3d(0,5px,0) scale(.7);opacity:.08}50%{transform:translate3d(8px,-10px,0) scale(1);opacity:.48}}

@media(max-width:900px){
  .dragonbound-journal-tabs{grid-template-columns:repeat(3,1fr)!important;gap:2px!important}
  .dragonbound-my-dragon-overlay .dragonbound-journal-tabs button{min-height:37px!important;padding:5px 2px!important}.dragonbound-my-dragon-overlay .dragonbound-journal-tabs button small{display:none!important}
  .dragonbound-calendar-journal-grid{grid-template-columns:1fr}.dragonbound-calendar-today{grid-template-columns:50px 1fr}.dragonbound-calendar-today>img,.dragonbound-calendar-day-number{width:46px;height:46px}.dragonbound-calendar-open-full{grid-column:1/-1;justify-self:start}
  .velmora-calendar-book{width:96vw;height:92vh;padding:20px 16px}.velmora-calendar-layout{grid-template-columns:1fr;overflow:auto;height:calc(100% - 132px)}.velmora-calendar-detail{border-left:0;border-top:1px solid rgba(95,69,34,.18)}.velmora-calendar-grid{min-height:520px}.velmora-calendar-upcoming{overflow-x:auto}.velmora-calendar-ribbon{display:none}.velmora-calendar-cycle{padding-right:36px}
  .velmora-calendar-day small{display:none}.velmora-calendar-day{min-height:62px}.velmora-calendar-day img{width:29px;height:29px}
}
@media(max-width:680px){
  .velmora-calendar-launcher{right:10px;bottom:10px;top:auto;width:102px;min-height:48px;grid-template-columns:27px 1fr;padding:5px}.velmora-calendar-launcher>img{width:26px;height:26px}.velmora-calendar-launcher strong{font-size:15px}.velmora-calendar-launcher em{font-size:6px}
  .dragonbound-social-list article{grid-template-columns:48px 1fr}.dragonbound-social-portrait{width:46px;height:46px}.dragonbound-social-controls{grid-column:1/-1;justify-self:start}.dragonbound-social-invite,.dragonbound-social-toggle{justify-self:start}.dragonbound-social-lead{grid-template-columns:1fr 54px}.dragonbound-social-seal{width:50px;height:50px}
  .velmora-festival-announcement{top:54px;width:88vw;grid-template-columns:52px 1fr}.velmora-festival-announcement img{width:48px;height:48px}.velmora-festival-announcement strong{font-size:16px}
  .velmora-calendar-heading h2{font-size:23px}.velmora-calendar-heading p{display:none}.velmora-calendar-cycle strong{font-size:20px}.velmora-calendar-grid{grid-template-columns:repeat(5,minmax(0,1fr));min-height:560px}.velmora-calendar-day{min-height:56px}.velmora-calendar-book::before{display:none}
}
@media(prefers-reduced-motion:reduce){
  .velmora-calendar-overlay,.velmora-calendar-book,.velmora-festival-announcement,.dragonbound-social-notice,.velmora-calendar-launcher{transition:none!important}
  .velmora-event-leaf,.velmora-event-mote,.velmora-event-star,.velmora-event-frostspark,.velmora-event-heartglint{animation:none!important}
}
.velmora-calendar-mini-day{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(91,67,34,.34);background:rgba(255,250,225,.35);color:#53694e;font:700 15px/1 Georgia,serif;z-index:1}
.dragonbound-calendar-anniversary{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;padding:9px 12px;border-top:1px solid rgba(143,104,155,.24);border-bottom:1px solid rgba(143,104,155,.24);background:linear-gradient(90deg,rgba(137,104,158,.075),rgba(255,255,255,.04))}.dragonbound-calendar-anniversary img{width:44px;height:44px;object-fit:contain;image-rendering:pixelated}.dragonbound-calendar-anniversary small{display:block;color:#8a6c94;font:900 6.5px/1 "Nunito",system-ui,sans-serif;letter-spacing:.8px}.dragonbound-calendar-anniversary strong{display:block;margin:2px 0;color:#584560;font:700 11px/1.15 Georgia,serif}.dragonbound-calendar-anniversary span{display:block;color:#766675;font:700 7.4px/1.3 "Nunito",system-ui,sans-serif}
#dragonboundOverlay:has(.dragonbound-my-dragon-overlay.is-visible) .velmora-festival-layer *,#dragonboundOverlay:has(.dragonbound-travel-menu.is-visible) .velmora-festival-layer *,#dragonboundOverlay:has(.velmora-calendar-overlay.is-visible) .velmora-festival-layer *{animation-play-state:paused!important}
.dragonbound-social-seal>b{position:relative;z-index:1;color:#496750;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.9px}
.dragonbound-social-favourite{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:baseline;padding:8px 11px;border-left:2px solid rgba(180,143,68,.36);background:linear-gradient(90deg,rgba(193,155,78,.07),transparent)}.dragonbound-social-favourite small{color:#9a7a46;font:900 6.4px/1 "Nunito",system-ui,sans-serif;letter-spacing:.8px}.dragonbound-social-favourite strong{color:#59462f;font:700 11px/1.05 Georgia,serif}.dragonbound-social-favourite span{grid-column:1/-1;margin-top:3px;color:#786750;font:700 7.4px/1.3 "Nunito",system-ui,sans-serif}


/* =====================================================================
   Dragonbound V33.83 — pet visit polish + journal scroll reliability
   ===================================================================== */
.dragonbound-social-pet-visitor{z-index:3600!important}
.dragonbound-social-pet-visitor span{font-size:6.2px!important;padding:3px 6px!important;background:rgba(243,233,205,.94)!important;box-shadow:0 2px 6px rgba(27,18,9,.12)}

.dragonbound-my-dragon-page--right{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}
.dragonbound-journal-panel,
.dragonbound-journal-panel.is-active,
.dragonbound-journal-panel[data-dragon-journal-panel="life"]{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:8px!important;
  padding-bottom:30px!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}
.dragonbound-journal-panel[data-dragon-journal-panel="life"] .dragonbound-my-dragon-growth{margin-bottom:16px!important}
.dragonbound-journal-panel::-webkit-scrollbar{width:7px!important}
.dragonbound-journal-panel::-webkit-scrollbar-thumb{background:rgba(84,107,79,.34)!important;border-radius:999px!important}

/* =====================================================================
   Dragonbound V33.84 — Commands & Tricks complete visual redesign
   The live command overlay is mounted on document.body, not #dragonboundOverlay.
   These selectors intentionally outrank the legacy command stylesheet.
   ===================================================================== */
body .dragonbound-command-ui-v3384{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(164,201,177,.34)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(76,126,106,.17),transparent 32%),
    linear-gradient(180deg,#082b2d 0%,#061f23 54%,#05181d 100%)!important;
  background-image:
    radial-gradient(circle at 18% 0%,rgba(76,126,106,.17),transparent 32%),
    linear-gradient(180deg,#082b2d 0%,#061f23 54%,#05181d 100%)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.58),inset 0 0 0 1px rgba(242,224,174,.035)!important;
  color:#eee6d2!important;
}
body .dragonbound-command-ui-v3384::before{
  content:""!important;
  position:absolute!important;inset:0!important;pointer-events:none!important;
  background:linear-gradient(110deg,rgba(255,255,255,.018),transparent 34%,rgba(107,162,137,.025) 68%,transparent)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
body .dragonbound-command-ui-v3384-header{
  position:relative!important;
  margin:0!important;
  padding:20px 24px 18px!important;
  border:0!important;
  border-bottom:1px solid rgba(171,199,165,.24)!important;
  background:
    linear-gradient(90deg,rgba(21,77,70,.94),rgba(12,57,61,.90) 52%,rgba(9,42,49,.94))!important;
  background-image:
    linear-gradient(90deg,rgba(21,77,70,.94),rgba(12,57,61,.90) 52%,rgba(9,42,49,.94))!important;
  box-shadow:inset 0 -1px 0 rgba(218,195,128,.12)!important;
  color:#f2e7cc!important;
}
body .dragonbound-command-ui-v3384-header::after{
  content:""!important;position:absolute!important;left:24px!important;bottom:-1px!important;width:110px!important;height:2px!important;
  background:linear-gradient(90deg,#b8cda8,rgba(184,205,168,0))!important;
}
body .dragonbound-command-ui-v3384-header *{text-shadow:none!important}
body .dragonbound-command-ui-v3384-header small,
body .dragonbound-command-ui-v3384-header [class*="kicker"]{color:#9bc1a6!important;letter-spacing:.14em!important}
body .dragonbound-command-ui-v3384-header h1,
body .dragonbound-command-ui-v3384-header h2,
body .dragonbound-command-ui-v3384-header h3,
body .dragonbound-command-ui-v3384-header strong{color:#fff2d5!important;text-shadow:none!important}

body .dragonbound-command-ui-v3384-dragonbar{
  margin:14px 18px 16px!important;
  padding:12px 15px!important;
  border:1px solid rgba(121,164,144,.24)!important;
  border-radius:14px!important;
  background:linear-gradient(90deg,rgba(9,56,56,.86),rgba(7,43,47,.72))!important;
  background-image:linear-gradient(90deg,rgba(9,56,56,.86),rgba(7,43,47,.72))!important;
  box-shadow:inset 3px 0 0 rgba(121,167,134,.38)!important;
  color:#eee4c8!important;
}
body .dragonbound-command-ui-v3384-dragonbar *{text-shadow:none!important}
body .dragonbound-command-ui-v3384-dragonbar small{color:#83aa9b!important}
body .dragonbound-command-ui-v3384-dragonbar strong{color:#f4e9ca!important}

body .dragonbound-command-ui-v3384-cuehead{
  color:#a6bdb2!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
body .dragonbound-command-ui-v3384-cuehead *{text-shadow:none!important}

body .dragonbound-command-ui-v3384-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}

body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card,
body .dragonbound-command-ui-v3384 [role="button"].dragonbound-command-ui-v3384-card{
  appearance:none!important;-webkit-appearance:none!important;
  position:relative!important;
  min-height:92px!important;
  padding:12px 13px!important;
  border:1px solid rgba(116,153,133,.30)!important;
  border-radius:13px!important;
  background:
    linear-gradient(145deg,rgba(17,63,58,.98),rgba(10,45,47,.98))!important;
  background-image:
    linear-gradient(145deg,rgba(17,63,58,.98),rgba(10,45,47,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 5px 14px rgba(0,0,0,.16)!important;
  color:#efe8d5!important;
  text-shadow:none!important;
  outline:none!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  transition:transform .14s ease,border-color .14s ease,background .14s ease,box-shadow .14s ease!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card::before,
body .dragonbound-command-ui-v3384 [role="button"].dragonbound-command-ui-v3384-card::before{
  content:""!important;position:absolute!important;left:0!important;top:10px!important;bottom:10px!important;width:3px!important;
  border-radius:0 4px 4px 0!important;background:#6f9d7c!important;opacity:.65!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card:hover,
body .dragonbound-command-ui-v3384 [role="button"].dragonbound-command-ui-v3384-card:hover{
  transform:translateY(-2px)!important;
  border-color:rgba(151,194,161,.52)!important;
  background:linear-gradient(145deg,rgba(22,78,68,.99),rgba(12,54,55,.99))!important;
  background-image:linear-gradient(145deg,rgba(22,78,68,.99),rgba(12,54,55,.99))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 9px 20px rgba(0,0,0,.22)!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card:focus-visible{outline:2px solid rgba(164,205,173,.64)!important;outline-offset:2px!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card *{text-shadow:none!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card strong,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card b{color:#f6edd7!important;text-shadow:none!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card small,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card span{color:#a8bcb1!important;text-shadow:none!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card [class*="progress"],
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card i{
  border-color:rgba(122,158,137,.18)!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card [class*="progress"]>*,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card i>em,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card i>span{
  background:#7ea27f!important;background-image:none!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-ready-v3384{
  border-color:rgba(151,190,142,.42)!important;
  background:linear-gradient(145deg,rgba(26,79,62,.99),rgba(13,58,51,.99))!important;
  background-image:linear-gradient(145deg,rgba(26,79,62,.99),rgba(13,58,51,.99))!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-learning-v3384::before{background:#c2a565!important;opacity:.72!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384,
body .dragonbound-command-ui-v3384 [role="button"].dragonbound-command-ui-v3384-card.is-locked-v3384{
  border-color:rgba(103,117,109,.18)!important;
  background:linear-gradient(145deg,rgba(25,39,39,.92),rgba(18,31,32,.92))!important;
  background-image:linear-gradient(145deg,rgba(25,39,39,.92),rgba(18,31,32,.92))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.018)!important;
  color:#7f8e87!important;
  opacity:.72!important;
  filter:none!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384::before{background:#65736b!important;opacity:.26!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384 strong,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384 b{color:#8f9d96!important}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384 small,
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-card.is-locked-v3384 span{color:#657870!important}

body .dragonbound-command-ui-v3384-foot{
  margin-top:14px!important;
  padding:10px 13px!important;
  border:1px solid rgba(119,155,136,.20)!important;
  border-left:3px solid rgba(124,163,139,.62)!important;
  background:rgba(5,37,39,.76)!important;
  background-image:none!important;
  color:#9db7aa!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
body .dragonbound-command-ui-v3384-foot *{color:inherit!important;text-shadow:none!important}

body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-close,
body .dragonbound-command-ui-v3384 [role="button"].dragonbound-command-ui-v3384-close{
  appearance:none!important;-webkit-appearance:none!important;
  border:1px solid rgba(150,184,159,.34)!important;
  border-radius:11px!important;
  background:rgba(7,42,43,.88)!important;background-image:none!important;
  color:#e9dec3!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  text-shadow:none!important;
  filter:none!important;
}
body .dragonbound-command-ui-v3384 button.dragonbound-command-ui-v3384-close:hover{background:#124e49!important;border-color:rgba(178,210,184,.52)!important}

@media(max-width:980px){body .dragonbound-command-ui-v3384-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){body .dragonbound-command-ui-v3384-grid{grid-template-columns:1fr!important}}
/* V33.96 · permanent Dragon Personality signature traits */
.dragonbound-my-dragon-traits .is-signature{
  border:1px solid rgba(76,110,82,.38)!important;
  background:linear-gradient(180deg,rgba(235,244,226,.92),rgba(213,229,199,.72))!important;
  color:#35563e!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 3px rgba(66,83,54,.08)!important;
  font-weight:950!important;
}
.dragonbound-my-dragon-traits .is-signature::before{content:'◆';font-size:6px;margin-right:5px;color:#9b7f43;vertical-align:1px}
.dragonbound-my-dragon-traits .is-observed{
  border:1px solid rgba(112,92,56,.18)!important;
  background:rgba(255,250,236,.42)!important;
  color:#75664d!important;
  font-weight:850!important;
}


/* Dragonbound V34.00 — object-specific furniture use states.
   Long interactions should read as intentional activities, not a frozen sprite waiting
   for a timer. These are deliberately tiny motions so the original pixel art stays intact. */
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="perch"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="hide"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="warm"]>.dragonbound-baby-sprite{
  animation:dragonboundPhysicalBreathe 2.45s ease-in-out infinite;
}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="groom"]>.dragonbound-baby-sprite{
  animation:dragonboundPhysicalGroom .85s ease-in-out infinite alternate;
}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="scratch"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="dig"]>.dragonbound-baby-sprite{
  animation:dragonboundPhysicalScratch .48s ease-in-out infinite alternate;
}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="fire"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="roar"]>.dragonbound-baby-sprite{
  animation:dragonboundPhysicalPractice .66s ease-in-out infinite alternate;
}
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="watch"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="read"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="mirror"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="sniff"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="inspect"]>.dragonbound-baby-sprite,
.dragonbound-baby-actor.is-physical-engaged[data-physical-kind="toilet"]>.dragonbound-baby-sprite{
  animation:dragonboundPhysicalInspect 1.35s ease-in-out infinite alternate;
}
@keyframes dragonboundPhysicalGroom{from{margin-top:0;filter:brightness(1)}to{margin-top:2px;filter:brightness(1.025)}}
@keyframes dragonboundPhysicalScratch{from{margin-top:1px;filter:brightness(1)}to{margin-top:-3px;filter:brightness(1.035)}}
@keyframes dragonboundPhysicalPractice{from{margin-top:1px;filter:brightness(1)}to{margin-top:-3px;filter:brightness(1.06)}}
@keyframes dragonboundPhysicalInspect{from{margin-top:0;filter:brightness(1)}to{margin-top:-1.5px;filter:brightness(1.025)}}

/* V34.02 — subtle Dragonbound thought/activity text.
   One lightweight overlay follows the dragon; it is deliberately separate from world depth. */
.dragonbound-dragon-thought{
  position:absolute;
  left:50%;
  top:calc(-1 * var(--dragon-tooltip-lift,78px) + 8px);
  z-index:1004;
  max-width:178px;
  transform:translateX(calc(-50% + var(--dragon-thought-shift-x,0px)));
  pointer-events:none;
  white-space:normal;
  text-align:center;
  opacity:0;
  animation:dragonboundThoughtIn .2s ease-out forwards;
  filter:drop-shadow(0 4px 8px rgba(0,0,0,.28));
}
.dragonbound-dragon-thought-copy{
  position:relative;
  display:block;
  padding:6px 9px 7px;
  border:1px solid rgba(225,203,146,.34);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(10,31,31,.94),rgba(6,22,24,.93));
  color:#f3e6bd;
  font:800 9px/1.25 "Nunito",system-ui,sans-serif;
  letter-spacing:.01em;
  text-shadow:0 1px 0 rgba(0,0,0,.45);
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 3px 8px rgba(0,0,0,.22);
}
.dragonbound-dragon-thought-copy:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-5px;
  width:8px;
  height:8px;
  transform:translateX(-50%) rotate(45deg);
  border-right:1px solid rgba(225,203,146,.28);
  border-bottom:1px solid rgba(225,203,146,.28);
  background:rgba(6,22,24,.94);
}
.dragonbound-baby-actor.is-thought-below .dragonbound-dragon-thought{
  top:15px;
}
.dragonbound-baby-actor.is-thought-below .dragonbound-dragon-thought-copy:after{
  top:-5px;
  bottom:auto;
  border:0;
  border-left:1px solid rgba(225,203,146,.28);
  border-top:1px solid rgba(225,203,146,.28);
}
.dragonbound-dragon-thought.is-favourite .dragonbound-dragon-thought-copy,
.dragonbound-dragon-thought.is-favourite .dragonbound-dragon-thought-copy:after{
  border-color:rgba(239,192,111,.45);
}
.dragonbound-dragon-thought.is-favourite .dragonbound-dragon-thought-copy{color:#ffe1aa}
.dragonbound-dragon-thought.is-race .dragonbound-dragon-thought-copy{border-color:rgba(218,190,112,.52);color:#fff0b5}
.dragonbound-dragon-thought.is-new-furniture .dragonbound-dragon-thought-copy{border-color:rgba(153,205,188,.45);color:#dbf1df}
.dragonbound-dragon-thought.is-warm .dragonbound-dragon-thought-copy{color:#ffd9cf}
.dragonbound-dragon-thought.is-excited .dragonbound-dragon-thought-copy{color:#fff0a8}
.dragonbound-dragon-thought.is-sleepy .dragonbound-dragon-thought-copy{color:#d9e3cf}
.dragonbound-dragon-thought.is-curious .dragonbound-dragon-thought-copy{color:#d9f0df}
.dragonbound-dragon-thought.is-sulking .dragonbound-dragon-thought-copy{color:#ddd2bf}
.dragonbound-dragon-thought.is-leaving{animation:dragonboundThoughtOut .18s ease-in forwards}
@keyframes dragonboundThoughtIn{
  from{opacity:0;transform:translateX(calc(-50% + var(--dragon-thought-shift-x,0px))) translateY(4px)}
  to{opacity:1;transform:translateX(calc(-50% + var(--dragon-thought-shift-x,0px))) translateY(0)}
}
@keyframes dragonboundThoughtOut{
  from{opacity:1}
  to{opacity:0;transform:translateX(calc(-50% + var(--dragon-thought-shift-x,0px))) translateY(-3px)}
}
@media(prefers-reduced-motion:reduce){
  .dragonbound-dragon-thought,.dragonbound-dragon-thought.is-leaving{animation:none!important;opacity:1}
}


/* =====================================================================
   V34.05 — Bond Behaviours & Keeper Relationship
   Relationship feedback lives in the keeper journal; behaviour remains
   personality-led and uses the existing bond value rather than a new stat.
   ===================================================================== */
.dragonbound-keeper-relationship-journal{display:grid;gap:12px;margin-bottom:12px}
.dragonbound-keeper-relationship-card{padding:14px 15px;border:1px solid rgba(91,70,33,.16);border-radius:11px;background:linear-gradient(145deg,rgba(255,251,239,.78),rgba(238,226,199,.44));box-shadow:inset 0 1px 0 rgba(255,255,255,.65);color:#504331}
.dragonbound-keeper-relationship-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px dashed rgba(91,70,33,.16)}
.dragonbound-keeper-relationship-card>header div{display:grid;gap:3px}.dragonbound-keeper-relationship-card>header small,.dragonbound-keeper-relationship-card footer small,.dragonbound-keeper-relationship-grid small{color:#8a7046;font:900 9px/1.15 "Nunito",system-ui,sans-serif;letter-spacing:.65px;text-transform:uppercase}
.dragonbound-keeper-relationship-card>header strong{color:#4e3a2b;font:900 17px/1.1 Georgia,serif}.dragonbound-keeper-relationship-card>header b{padding:5px 8px;border:1px solid rgba(126,83,92,.17);border-radius:999px;background:rgba(155,102,113,.08);color:#7a5660;font:900 10px/1 "Nunito",system-ui,sans-serif;white-space:nowrap}
.dragonbound-keeper-relationship-card>p{margin:10px 0 12px;color:#625745;font:700 11.7px/1.46 "Nunito",system-ui,sans-serif}
.dragonbound-keeper-relationship-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dragonbound-keeper-relationship-grid article{min-width:0;padding:9px 10px;border:1px solid rgba(91,70,33,.11);border-radius:8px;background:rgba(255,250,236,.48)}.dragonbound-keeper-relationship-grid strong{display:block;margin-top:4px;color:#4f4434;font:850 11px/1.32 "Nunito",system-ui,sans-serif;overflow-wrap:anywhere}
.dragonbound-keeper-relationship-card>footer{display:grid;gap:4px;margin-top:10px;padding-top:9px;border-top:1px dashed rgba(91,70,33,.16)}.dragonbound-keeper-relationship-card>footer span{color:#6c5d49;font:750 10.7px/1.38 "Nunito",system-ui,sans-serif}
@media(max-width:760px){.dragonbound-keeper-relationship-grid{grid-template-columns:1fr}.dragonbound-keeper-relationship-card{padding:12px}}

/* V34.07 — Dragon Mischief & Unscripted House Events */
.dragonbound-event-dropped-object{position:absolute;z-index:40;left:24px;top:-4px;width:31px!important;height:31px!important;object-fit:contain!important;pointer-events:none!important;user-select:none!important;image-rendering:pixelated;filter:drop-shadow(0 3px 3px rgba(0,0,0,.3));transform:rotate(7deg);transform-origin:50% 80%;animation:dragonboundEventDrop .34s cubic-bezier(.2,.85,.3,1) both}
.dragonbound-baby-actor[data-furniture-facing="left"] .dragonbound-event-dropped-object{left:-38px;transform:scaleX(-1) rotate(7deg)}
.dragonbound-baby-actor.is-house-event-guarding>.dragonbound-baby-sprite{filter:drop-shadow(0 3px 3px rgba(0,0,0,.2))}
.dragonbound-baby-actor.is-house-event-chasing>.dragonbound-baby-sprite{filter:drop-shadow(0 4px 3px rgba(0,0,0,.2)) saturate(1.05)}
.dragonbound-baby-actor.is-house-event-build-supervisor>.dragonbound-baby-sprite{filter:drop-shadow(0 3px 3px rgba(0,0,0,.22))}
@keyframes dragonboundEventDrop{0%{opacity:0;transform:translateY(-8px) rotate(-5deg) scale(.86)}100%{opacity:1;transform:translateY(0) rotate(7deg) scale(1)}}
@media(prefers-reduced-motion:reduce){.dragonbound-event-dropped-object{animation-duration:.01ms!important;animation-iteration-count:1!important}}

.dragonbound-my-dragon-house-moments{margin:0 0 13px;padding:12px 14px 14px;border:1px solid rgba(91,70,33,.13);border-radius:10px;background:rgba(255,252,242,.38)}
.dragonbound-my-dragon-house-moment-list{display:grid;gap:0}
.dragonbound-my-dragon-house-moment-list>article{position:relative;padding:10px 2px 10px 12px;border-bottom:1px dashed rgba(91,70,33,.15)}
.dragonbound-my-dragon-house-moment-list>article:last-child{border-bottom:0;padding-bottom:2px}
.dragonbound-my-dragon-house-moment-list>article::before{content:"";position:absolute;left:0;top:15px;width:5px;height:5px;border-radius:50%;background:rgba(79,110,77,.5)}
.dragonbound-my-dragon-house-moment-list>article>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.dragonbound-my-dragon-house-moment-list small{flex:0 0 auto;color:#8d795b;font:900 9.4px/1.2 "Nunito",system-ui,sans-serif;letter-spacing:.45px;text-transform:uppercase}
.dragonbound-my-dragon-house-moment-list strong{min-width:0;flex:1;color:#4d3927;font:900 12px/1.25 "Nunito",system-ui,sans-serif;text-align:right}
.dragonbound-my-dragon-house-moment-list p{margin:4px 0 0;color:#675b49;font:700 11.2px/1.4 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-house-moment-list span{display:inline-block;margin-top:5px;color:#76816a;font:800 9.7px/1.2 "Nunito",system-ui,sans-serif}
.dragonbound-my-dragon-house-moment-list>em{display:block;padding:10px 2px 3px;color:#8c806b;font:italic 10.8px/1.35 Georgia,serif}
@media(max-width:680px){.dragonbound-my-dragon-house-moment-list>article>div{display:block}.dragonbound-my-dragon-house-moment-list strong{display:block;margin-top:3px;text-align:left}}

/* V34.08 — Dragon friendships, rivalries & playdates */
.dragonbound-house-visit-card{display:block!important;min-height:132px!important;padding:0!important;overflow:hidden!important;background:linear-gradient(180deg,#0b2c28,#071d1e)!important;cursor:default!important}
.dragonbound-house-visit-card:hover{transform:none!important;filter:none!important}
.dragonbound-house-visit-card-main{position:relative;display:grid!important;grid-template-columns:150px minmax(0,1fr)!important;width:100%!important;min-height:116px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;background-image:none!important;box-shadow:none!important;text-align:left!important;color:inherit!important;cursor:pointer!important}
.dragonbound-house-visit-card-main:hover,.dragonbound-house-visit-card-main:focus-visible{background:rgba(255,255,255,.025)!important;outline:none!important}
.dragonbound-house-visit-card-copy em{display:inline-flex;width:max-content;max-width:100%;margin-top:7px;padding:3px 7px;border:1px solid rgba(225,195,119,.32);border-radius:999px;background:rgba(225,195,119,.06);color:#e5cb89;font:800 8px/1 Georgia,serif;font-style:normal;letter-spacing:.08em;text-transform:uppercase}
.dragonbound-house-visit-invite{display:block!important;width:calc(100% - 18px)!important;min-height:30px!important;margin:0 9px 8px!important;padding:0 10px!important;border:1px solid rgba(104,166,147,.3)!important;border-radius:8px!important;background:rgba(4,22,24,.86)!important;background-image:none!important;box-shadow:none!important;color:#b9d4cc!important;font:800 9px/1 Georgia,serif!important;letter-spacing:.08em;text-transform:uppercase;cursor:pointer!important}
.dragonbound-house-visit-invite:hover,.dragonbound-house-visit-invite:focus-visible{border-color:rgba(227,201,133,.58)!important;color:#efd18a!important;filter:brightness(1.08)}
.dragonbound-house-visit-dragon.is-visiting-companion .dragonbound-house-visit-dragon-sprite{filter:drop-shadow(0 7px 6px rgba(0,0,0,.32)) drop-shadow(0 0 7px rgba(235,209,140,.12))}
.dragonbound-house-visit-dragon-badge{position:absolute;left:0;top:6px;transform:translate(-50%,-100%);padding:3px 7px;border:1px solid rgba(232,205,135,.34);border-radius:999px;background:rgba(3,20,22,.83);color:#e7cf91;font:800 7px/1 Georgia,serif;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none}

.dragonbound-playdate-guest{position:absolute;width:0;height:0;pointer-events:none;z-index:100500;isolation:auto}
.dragonbound-playdate-guest-sprite{position:absolute;left:0;top:0;height:auto!important;max-width:none!important;image-rendering:pixelated;image-rendering:crisp-edges;transform-origin:50% 98.5%;filter:drop-shadow(0 7px 6px rgba(0,0,0,.31)) drop-shadow(0 0 5px rgba(231,201,128,.12));pointer-events:none}
.dragonbound-social-thought{position:absolute;left:0;top:-18px;max-width:170px;transform:translate(-50%,-100%) translateY(4px);padding:5px 8px;border:1px solid rgba(229,202,134,.42);border-radius:8px;background:rgba(4,23,25,.9);box-shadow:0 7px 18px rgba(0,0,0,.27);color:#f0ddb0;font:800 8px/1.25 Georgia,serif;text-align:center;white-space:nowrap;opacity:0;transition:opacity .15s ease,transform .15s ease;pointer-events:none}
.dragonbound-social-thought.is-visible{opacity:1;transform:translate(-50%,-100%) translateY(0)}
.dragonbound-playdate-strip{position:absolute;left:50%;top:4.6%;z-index:136;display:flex;align-items:center;gap:16px;min-width:300px;max-width:min(620px,70vw);transform:translateX(-50%) translateY(-8px);padding:8px 9px 8px 13px;border:1px solid rgba(224,194,119,.45);border-radius:13px;background:linear-gradient(180deg,rgba(5,30,31,.94),rgba(3,20,24,.95));box-shadow:0 12px 30px rgba(0,0,0,.34);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.dragonbound-playdate-strip.is-visible{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:auto}
.dragonbound-playdate-strip>div{display:grid;min-width:0;gap:1px;flex:1}.dragonbound-playdate-strip small{color:#7fb3a6;font:800 7px/1 Georgia,serif;letter-spacing:.2em}.dragonbound-playdate-strip strong{color:#efd18a;font:800 12px/1.2 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dragonbound-playdate-strip span{color:#a9c1ba;font:700 8px/1.25 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dragonbound-playdate-strip button{min-height:30px!important;padding:0 10px!important;border:1px solid rgba(224,194,119,.34)!important;border-radius:8px!important;background:rgba(4,19,22,.88)!important;background-image:none!important;box-shadow:none!important;color:#dbc181!important;font:800 8px/1 Georgia,serif!important;cursor:pointer!important}
.dragonbound-playdate-strip button:hover{filter:brightness(1.1)}

.dragonbound-social-journal{display:grid;gap:12px!important}
.dragonbound-social-journal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:2px 2px 8px;border-bottom:1px solid rgba(86,67,45,.16)}
.dragonbound-social-journal-head div{display:grid;gap:2px}.dragonbound-social-journal-head small,.dragonbound-social-empty small{color:#8a6f49;font:800 8px/1 Georgia,serif;letter-spacing:.16em}.dragonbound-social-journal-head strong,.dragonbound-social-empty strong{color:#4d3d2a;font:800 16px/1.15 Georgia,serif}.dragonbound-social-journal-head>span{color:#8b765a;font:700 8px Georgia,serif}
.dragonbound-social-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dragonbound-social-card{display:grid;gap:7px;padding:10px;border:1px solid rgba(99,77,48,.17);background:rgba(115,86,46,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)}
.dragonbound-social-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.dragonbound-social-card-top>div{display:grid;gap:1px;min-width:0}.dragonbound-social-card-top small{color:#8c7657;font:700 7px Georgia,serif}.dragonbound-social-card-top strong{color:#493824;font:800 13px/1.15 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dragonbound-social-card-top b{max-width:48%;padding:3px 6px;border:1px solid rgba(111,82,47,.2);background:rgba(116,86,45,.055);color:#745839;font:800 7px/1 Georgia,serif;text-transform:uppercase;letter-spacing:.07em;text-align:center}
.dragonbound-social-card p{margin:0;color:#5e4c36;font:600 9px/1.45 Georgia,serif}.dragonbound-social-card-meta{display:flex;justify-content:space-between;gap:7px;color:#8a765b;font:700 7px/1.25 Georgia,serif}.dragonbound-social-card-meta span:last-child{text-align:right}.dragonbound-social-card button{justify-self:start;min-height:27px!important;padding:0 9px!important;border:1px solid rgba(91,70,43,.26)!important;border-radius:3px!important;background:rgba(95,69,38,.07)!important;background-image:none!important;box-shadow:none!important;color:#634a2f!important;font:800 7px/1 Georgia,serif!important;text-transform:uppercase;letter-spacing:.08em;cursor:pointer!important}
.dragonbound-social-card button:hover{background:rgba(95,69,38,.13)!important}
.dragonbound-social-empty{display:grid;gap:5px;padding:18px;border:1px dashed rgba(91,70,43,.2);text-align:center}.dragonbound-social-empty p{margin:0;color:#756149;font:600 9px/1.5 Georgia,serif}

@media(max-width:780px){.dragonbound-house-visit-card-main{grid-template-columns:112px minmax(0,1fr)!important}.dragonbound-playdate-strip{top:8%;min-width:0;width:84vw}.dragonbound-social-list{grid-template-columns:1fr}.dragonbound-social-card-meta{flex-direction:column}}

/* =====================================================================
   V34.09 — GO OUT + LANTERN NOOK PLAYABLE DESTINATION
   ===================================================================== */
.dragonbound-go-out-launcher{
  position:absolute;z-index:5200;right:154px;bottom:18px;top:auto;width:126px;min-height:58px;
  display:grid;grid-template-columns:34px 1fr;align-items:center;gap:7px;padding:7px 9px 7px 7px;
  border:1px solid rgba(55,54,34,.68);border-radius:4px 4px 8px 4px;
  background:linear-gradient(180deg,#dfe9cb,#b9cb98);box-shadow:0 5px 13px rgba(15,11,7,.3),inset 0 0 0 2px rgba(255,255,255,.2);
  color:#334028;cursor:pointer;transform:rotate(-.35deg);transition:transform .16s ease,filter .16s ease;isolation:isolate;font-family:inherit
}
.dragonbound-go-out-launcher::before{content:'';position:absolute;inset:3px;border:1px dashed rgba(70,89,47,.28);pointer-events:none}
.dragonbound-go-out-launcher:hover,.dragonbound-go-out-launcher:focus-visible{transform:rotate(0) translateY(-1px);filter:brightness(1.045);outline:2px solid rgba(188,220,127,.55);outline-offset:2px}
.dragonbound-go-out-icon{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(57,75,36,.42);border-radius:50%;background:radial-gradient(circle at 35% 28%,#f8f1bf,#89a868 62%,#4b6840 100%);color:#283927;font:900 18px/1 Georgia,serif;box-shadow:inset 0 0 0 2px rgba(255,255,255,.24),0 2px 3px rgba(0,0,0,.18)}
.dragonbound-go-out-launcher>span:last-child{min-width:0;display:grid;grid-template-columns:auto 1fr;column-gap:5px;align-items:baseline;z-index:1;text-align:left}
.dragonbound-go-out-launcher small{grid-column:1/-1;color:#60764a;font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.7px}
.dragonbound-go-out-launcher strong{color:#31412b;font:700 15px/1 Georgia,serif;white-space:nowrap}
.dragonbound-go-out-launcher em{grid-column:1/-1;overflow:hidden;color:#52634a;font:700 7px/1.15 "Nunito",system-ui,sans-serif;font-style:normal;white-space:nowrap;text-overflow:ellipsis;margin-top:2px}

.dragonbound-outings-overlay{position:fixed;z-index:21020;inset:0;display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .18s ease}
.dragonbound-outings-overlay.is-visible{opacity:1;pointer-events:auto}
.dragonbound-outings-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 38%,rgba(22,45,34,.62),rgba(3,11,10,.9));backdrop-filter:blur(4px)}
.dragonbound-outings-panel{position:relative;width:min(980px,94vw);max-height:min(760px,92vh);overflow:auto;padding:26px 28px 30px;border:2px solid #65533b;border-radius:12px;background:linear-gradient(180deg,#efe6cf,#ddcfaa);box-shadow:0 28px 70px rgba(0,0,0,.56),inset 0 0 0 3px rgba(255,255,255,.22);color:#40392d;transform:translateY(8px) scale(.99);transition:transform .2s ease}
.dragonbound-outings-overlay.is-visible .dragonbound-outings-panel{transform:none}
.dragonbound-outings-panel::before{content:'';position:absolute;inset:10px;border:1px solid rgba(86,70,45,.16);border-radius:8px;pointer-events:none}
.dragonbound-outings-panel header{position:relative;z-index:1;text-align:center;margin-bottom:20px}
.dragonbound-outings-panel header small{display:block;color:#6e7b56;font:900 8px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.6px}
.dragonbound-outings-panel header h2{margin:5px 0 3px;color:#3f4a33;font:700 34px/1.05 Georgia,serif}
.dragonbound-outings-panel header p{margin:0;color:#766b56;font:700 11px/1.4 "Nunito",system-ui,sans-serif}
.dragonbound-outings-close{position:absolute;z-index:4;right:15px;top:13px;width:34px;height:34px;border:1px solid rgba(79,61,39,.36);border-radius:50%;background:#eee1bf;color:#4e3c27;font:700 22px/1 Georgia,serif;cursor:pointer}
.dragonbound-outings-close:hover,.dragonbound-outings-close:focus-visible{filter:brightness(1.06);outline:2px solid rgba(87,113,63,.35);outline-offset:2px}
.dragonbound-outings-list{position:relative;z-index:1;display:grid;gap:16px}
.dragonbound-outing-card{display:grid;grid-template-columns:minmax(320px,1.18fr) minmax(280px,.82fr);min-height:310px;overflow:hidden;border:1px solid rgba(70,61,43,.38);border-radius:10px;background:rgba(250,245,226,.72);box-shadow:0 8px 22px rgba(49,38,24,.14),inset 0 0 0 2px rgba(255,255,255,.24)}
.dragonbound-outing-card-art{position:relative;overflow:hidden;background:#24352b;min-height:300px}
.dragonbound-outing-card-art::after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 35px rgba(8,20,14,.22);pointer-events:none}
.dragonbound-outing-card-art img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:auto}
.dragonbound-outing-card-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:28px}
.dragonbound-outing-card-copy>small{color:#718153;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.2px}
.dragonbound-outing-card-copy h3{margin:7px 0 5px;color:#3e4d36;font:700 27px/1.05 Georgia,serif}
.dragonbound-outing-card-copy>b{color:#826637;font:900 8px/1.3 "Nunito",system-ui,sans-serif;letter-spacing:.3px}
.dragonbound-outing-card-copy p{margin:11px 0 19px;color:#625a49;font:700 10px/1.5 "Nunito",system-ui,sans-serif}
.dragonbound-outing-card-copy button{min-width:130px;padding:10px 18px;border:1px solid #42543a;border-radius:5px;background:linear-gradient(180deg,#6f895b,#4e6845);box-shadow:0 3px 0 #34442e;color:#fff8df;font:900 10px/1 "Nunito",system-ui,sans-serif;letter-spacing:1px;cursor:pointer;text-shadow:0 1px 1px rgba(0,0,0,.25)}
.dragonbound-outing-card-copy button:hover,.dragonbound-outing-card-copy button:focus-visible{filter:brightness(1.08);transform:translateY(-1px);outline:2px solid rgba(126,160,95,.4);outline-offset:2px}

.dragonbound-outing-destination{position:fixed;z-index:21100;inset:0;display:none;background:#08100d;color:#f6ecd4;font-family:"Nunito",system-ui,sans-serif;overflow:hidden}
.dragonbound-outing-destination.is-visible{display:block}
.dragonbound-outing-shell{position:absolute;inset:0;display:grid;grid-template-rows:58px minmax(0,1fr) 38px;background:radial-gradient(circle at 50% 30%,#1a3026,#060c0a 78%)}
.dragonbound-outing-topbar{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 15px;border-bottom:1px solid rgba(238,216,167,.18);background:linear-gradient(180deg,rgba(27,42,34,.97),rgba(11,20,17,.97));box-shadow:0 5px 16px rgba(0,0,0,.24)}
.dragonbound-outing-topbar>div:first-child{display:grid;gap:2px;min-width:0}
.dragonbound-outing-topbar small{color:#b9c59e;font:900 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:1.1px}
.dragonbound-outing-topbar strong{color:#f5e8c8;font:700 18px/1.1 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dragonbound-outing-top-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.dragonbound-outing-top-actions>span{padding:6px 10px;border:1px solid rgba(166,191,129,.25);border-radius:999px;background:rgba(86,108,72,.18);color:#d9e6c6;font:900 8px/1 "Nunito",system-ui,sans-serif;letter-spacing:.5px}
.dragonbound-outing-top-actions button{height:32px;padding:0 12px;border:1px solid rgba(220,197,148,.28);border-radius:5px;background:linear-gradient(180deg,#695e45,#4f4736);color:#fff2ce;font:900 8px/1 "Nunito",system-ui,sans-serif;cursor:pointer}
.dragonbound-outing-top-actions [data-outing-debug]{width:32px;padding:0;font-size:14px;color:#b6b097;background:#353a31}
.dragonbound-outing-top-actions button:hover,.dragonbound-outing-top-actions button:focus-visible{filter:brightness(1.1);outline:2px solid rgba(204,191,151,.28);outline-offset:2px}
.dragonbound-outing-viewport{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;padding:10px 12px;background:radial-gradient(circle at 50% 45%,rgba(75,102,78,.16),transparent 64%)}
.dragonbound-outing-map{position:relative;width:min(calc((100vh - 116px) * 1.5),calc(100vw - 24px));max-width:1536px;aspect-ratio:3/2;overflow:hidden;background:#111;border:1px solid rgba(236,212,157,.25);box-shadow:0 10px 36px rgba(0,0,0,.55),0 0 0 2px rgba(0,0,0,.34);isolation:isolate}
.dragonbound-outing-background,.dragonbound-outing-mask{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;display:block;user-select:none;-webkit-user-drag:none}
.dragonbound-outing-background{z-index:0}
.dragonbound-outing-world-layer{position:absolute;inset:0;z-index:1;overflow:hidden}
.dragonbound-outing-keeper,.dragonbound-outing-dragon,.dragonbound-outing-guest{position:absolute;left:50%;top:80%;width:0;height:0;transform:translateZ(0);will-change:left,top;pointer-events:none}
.dragonbound-outing-keeper>img{position:absolute;left:0;top:0;width:66px;max-width:none;height:auto;transform:translate(-50%,-90%);transform-origin:50% 90%;image-rendering:pixelated;filter:drop-shadow(0 5px 4px rgba(0,0,0,.35));user-select:none;-webkit-user-drag:none}
.dragonbound-outing-keeper.is-flipped>img{transform:translate(-50%,-90%) scaleX(-1)}
.dragonbound-outing-dragon{border:0;background:none;padding:0;pointer-events:auto;cursor:pointer;overflow:visible}
.dragonbound-outing-dragon>img,.dragonbound-outing-guest>img{position:absolute;left:0;top:0;width:calc(150px * var(--outing-dragon-scale,.62));max-width:none;height:auto;transform:translate(-50%,-94%);transform-origin:50% 92%;image-rendering:pixelated;filter:drop-shadow(0 6px 5px rgba(0,0,0,.34));user-select:none;-webkit-user-drag:none;transition:filter .15s ease}
.dragonbound-outing-dragon.is-flipped>img,.dragonbound-outing-guest.is-flipped>img{transform:translate(-50%,-94%) scaleX(-1)}
.dragonbound-outing-dragon:hover>img,.dragonbound-outing-dragon:focus-visible>img{filter:drop-shadow(0 0 3px rgba(255,245,197,.95)) drop-shadow(0 6px 5px rgba(0,0,0,.34));outline:0}
.dragonbound-outing-dragon:focus-visible{outline:2px solid rgba(249,228,166,.58);outline-offset:16px;border-radius:50%}
.dragonbound-outing-dragon.is-roaming::after{content:'ROAMING';position:absolute;left:0;top:10px;transform:translate(-50%,0);padding:3px 6px;border-radius:999px;background:rgba(25,48,35,.86);border:1px solid rgba(170,202,133,.42);color:#dcecc9;font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.5px;white-space:nowrap;pointer-events:none}
.dragonbound-outing-guest{pointer-events:none}
.dragonbound-outing-guest>span{position:absolute;left:0;top:-74px;transform:translateX(-50%) translateY(5px);opacity:0;padding:5px 7px;border:1px solid rgba(244,222,173,.35);border-radius:6px;background:rgba(28,33,27,.9);color:#fff0ce;font:800 8px/1.2 "Nunito",system-ui,sans-serif;white-space:nowrap;transition:.18s ease}
.dragonbound-outing-guest>span.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
.dragonbound-outing-mask-layer{position:absolute;inset:0;z-index:auto;pointer-events:none}
.dragonbound-outing-mask{pointer-events:none}
.dragonbound-outing-thought{position:absolute;z-index:7200;transform:translate(-50%,-125%);max-width:190px;padding:6px 9px;border:1px solid rgba(80,66,43,.46);border-radius:6px;background:rgba(246,236,208,.95);box-shadow:0 4px 9px rgba(0,0,0,.25);color:#493e2c;font:800 9px/1.25 "Nunito",system-ui,sans-serif;text-align:center;opacity:0;transition:opacity .18s ease,transform .18s ease;pointer-events:none}
.dragonbound-outing-thought.is-visible{opacity:1;transform:translate(-50%,-138%)}
.dragonbound-outing-thought::after{content:'';position:absolute;left:50%;bottom:-5px;width:8px;height:8px;border-right:1px solid rgba(80,66,43,.46);border-bottom:1px solid rgba(80,66,43,.46);background:rgba(246,236,208,.95);transform:translateX(-50%) rotate(45deg)}
.dragonbound-outing-pet-effect{position:absolute;z-index:7300;width:0;height:0;pointer-events:none}
.dragonbound-outing-pet-effect b{position:absolute;left:0;top:0;transform:translate(-50%,-90px);color:#ffdb8f;font:900 14px/1 Georgia,serif;text-shadow:0 2px 3px #563b28;animation:dragonboundOutingPetPop 1.25s ease forwards;white-space:nowrap}
@keyframes dragonboundOutingPetPop{0%{opacity:0;transform:translate(-50%,-55px) scale(.7)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-115px) scale(1.15)}}
.dragonbound-outing-context{position:absolute;z-index:21400;right:18px;top:72px;width:220px;padding:10px;border:1px solid rgba(238,215,166,.33);border-radius:8px;background:linear-gradient(180deg,rgba(35,48,38,.98),rgba(16,27,22,.98));box-shadow:0 14px 34px rgba(0,0,0,.48);color:#f5e9cc}
.dragonbound-outing-context[hidden]{display:none!important}
.dragonbound-outing-context-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:2px 2px 8px;border-bottom:1px solid rgba(229,211,166,.14)}
.dragonbound-outing-context-head strong{font:700 15px/1 Georgia,serif}.dragonbound-outing-context-head small{color:#b5c49b;font:900 6px/1 "Nunito",system-ui,sans-serif;letter-spacing:.5px}
.dragonbound-outing-context-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}
.dragonbound-outing-context-actions button{min-height:31px;border:1px solid rgba(217,198,150,.23);border-radius:5px;background:#3d4c39;color:#fff2cf;font:900 7px/1.1 "Nunito",system-ui,sans-serif;cursor:pointer}
.dragonbound-outing-context-actions button:nth-child(3){background:#60784e}.dragonbound-outing-context-actions button:last-child{grid-column:1/-1;background:#574d3d}
.dragonbound-outing-context-actions button:hover,.dragonbound-outing-context-actions button:focus-visible{filter:brightness(1.12);outline:2px solid rgba(219,211,164,.24);outline-offset:1px}
.dragonbound-outing-context-confirm{padding:10px 2px 2px}.dragonbound-outing-context-confirm p{margin:0 0 9px;color:#dfd2b6;font:800 9px/1.35 "Nunito",system-ui,sans-serif}.dragonbound-outing-context-confirm p b{color:#fff1bd}.dragonbound-outing-context-confirm>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.dragonbound-outing-context-confirm button{min-height:32px;border:1px solid rgba(217,198,150,.23);border-radius:5px;background:#60784e;color:#fff2cf;font:900 7px/1.1 "Nunito",system-ui,sans-serif;cursor:pointer}.dragonbound-outing-context-confirm button:last-child{background:#574d3d}.dragonbound-outing-context-confirm button:hover,.dragonbound-outing-context-confirm button:focus-visible{filter:brightness(1.12);outline:2px solid rgba(219,211,164,.24);outline-offset:1px}.dragonbound-outing-context-confirm button:disabled{opacity:.58;cursor:wait}
.dragonbound-outing-toast{position:absolute;z-index:21420;left:50%;bottom:54px;transform:translate(-50%,12px);max-width:min(420px,80vw);padding:8px 12px;border:1px solid rgba(230,209,161,.26);border-radius:7px;background:rgba(22,31,26,.94);box-shadow:0 8px 18px rgba(0,0,0,.35);color:#f6e9cc;font:800 9px/1.3 "Nunito",system-ui,sans-serif;text-align:center;opacity:0;pointer-events:none;transition:.18s ease}
.dragonbound-outing-toast.is-visible{opacity:1;transform:translate(-50%,0)}
.dragonbound-outing-controls{position:relative;z-index:20;display:flex;align-items:center;justify-content:center;gap:18px;padding:0 12px;border-top:1px solid rgba(238,216,167,.15);background:rgba(10,18,15,.97);color:#c9c1aa;font:800 7px/1 "Nunito",system-ui,sans-serif;letter-spacing:.25px}
.dragonbound-outing-controls b{color:#eadaaa;font-weight:900}.dragonbound-outing-controls [data-outing-location]{margin-left:auto;color:#aab995}
.dragonbound-outing-fade{position:absolute;z-index:21500;inset:0;background:#060a08;opacity:0;pointer-events:none;transition:opacity .2s ease}.dragonbound-outing-fade.is-visible{opacity:1}
.dragonbound-outing-debug-layer{position:absolute;z-index:9000;inset:0;pointer-events:none}.dragonbound-outing-debug-layer i{position:absolute;display:block;border:1px solid rgba(255,72,72,.88);background:rgba(255,40,40,.13)}.dragonbound-outing-debug-layer i.is-transition{border-color:#54c9ff;background:rgba(37,174,255,.16)}.dragonbound-outing-debug-layer b.is-node{position:absolute;width:8px;height:8px;border:2px solid #ffe772;border-radius:50%;background:#594700;transform:translate(-50%,-50%)}

body.dragonbound-outing-active{overflow:hidden!important}
body.dragonbound-outing-active .dragonbound-my-dragon-overlay.is-visible{z-index:22050!important}
body.dragonbound-outing-active .dragonbound-home-scene .velmora-calendar-launcher,
body.dragonbound-outing-active .dragonbound-home-scene .dragonbound-go-out-launcher{pointer-events:none}

@media(max-width:760px){
  .dragonbound-go-out-launcher{right:120px;bottom:10px;width:102px;min-height:48px;grid-template-columns:27px 1fr;padding:5px}.dragonbound-go-out-icon{width:26px;height:26px;font-size:14px}.dragonbound-go-out-launcher strong{font-size:13px}.dragonbound-go-out-launcher em{font-size:6px}
  .dragonbound-outing-card{grid-template-columns:1fr}.dragonbound-outing-card-art{min-height:210px}.dragonbound-outing-card-copy{padding:20px}.dragonbound-outing-card-copy h3{font-size:23px}
  .dragonbound-outing-topbar{padding:7px 8px}.dragonbound-outing-topbar small{display:none}.dragonbound-outing-topbar strong{font-size:14px}.dragonbound-outing-top-actions>span{display:none}.dragonbound-outing-top-actions button{padding:0 8px}
  .dragonbound-outing-controls{gap:8px;font-size:6px}.dragonbound-outing-controls span:nth-child(2){display:none}.dragonbound-outing-controls [data-outing-location]{margin-left:0}
  .dragonbound-outing-context{right:8px;top:66px;width:205px}
}
@media(prefers-reduced-motion:reduce){.dragonbound-go-out-launcher,.dragonbound-outings-overlay,.dragonbound-outings-panel,.dragonbound-outing-thought,.dragonbound-outing-toast,.dragonbound-outing-fade,.dragonbound-outing-pet-effect b{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* =====================================================================
   V34.09.2 — GO OUT click reliability + launcher polish
   IMPORTANT: Calendar styling is intentionally untouched and therefore falls
   back to its original Velmoran Calendar artwork/style from V33.81.
   ===================================================================== */
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher{
  position:absolute!important;
  z-index:6200!important;
  right:154px!important;
  bottom:18px!important;
  top:auto!important;
  width:132px!important;
  min-height:56px!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  align-items:center!important;
  gap:9px!important;
  padding:8px 11px 8px 9px!important;
  border:1px solid rgba(153,205,183,.52)!important;
  border-radius:12px!important;
  background:linear-gradient(180deg,rgba(28,57,53,.985),rgba(8,27,28,.995))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.13),inset 0 0 0 1px rgba(89,141,124,.12)!important;
  color:#f4f8ef!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-tap-highlight-color:transparent!important;
  isolation:isolate!important;
  transform:none!important;
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease!important;
}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher::before{content:none!important;display:none!important}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher:hover,
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(196,239,220,.82)!important;
  background:linear-gradient(180deg,rgba(37,76,67,.995),rgba(12,39,38,.995))!important;
  box-shadow:0 14px 34px rgba(0,0,0,.4),0 0 0 3px rgba(117,188,159,.13),inset 0 1px 0 rgba(255,255,255,.17)!important;
  outline:none!important;
}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher:active{transform:translateY(0)!important}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-icon{
  position:relative!important;
  z-index:1!important;
  width:36px!important;
  height:36px!important;
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  padding:6px!important;
  border:1px solid rgba(176,223,201,.36)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(109,169,145,.3),rgba(68,116,104,.15))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14)!important;
  color:#d8f0df!important;
}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-icon svg{width:22px;height:22px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-icon svg circle:last-child{fill:currentColor;stroke:none}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-copy{min-width:0!important;display:grid!important;grid-template-columns:1fr!important;gap:2px!important;align-items:center!important;text-align:left!important;position:relative!important;z-index:1!important}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher small{grid-column:auto!important;color:#95bfae!important;font:900 6px/1 "Nunito",system-ui,sans-serif!important;letter-spacing:1.05px!important;text-transform:uppercase!important}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher strong{color:#f6f3e8!important;font:800 15px/1.05 "Nunito",system-ui,sans-serif!important;letter-spacing:.05px!important;white-space:nowrap!important}
#dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher em{display:block!important;grid-column:auto!important;min-width:0!important;margin:0!important;overflow:hidden!important;color:#b9cec4!important;font:700 7px/1.15 "Nunito",system-ui,sans-serif!important;font-style:normal!important;white-space:nowrap!important;text-overflow:ellipsis!important}

/* The body-mounted outing UI stays above Dragonbound, but does not alter Calendar. */
body>.dragonbound-outings-overlay{z-index:42000!important}
body>.dragonbound-outing-destination{z-index:42100!important}
body.dragonbound-outings-menu-open{overflow:hidden!important}

/* Clean outing UI actions — deliberately no brown generic buttons. */
.dragonbound-outings-panel{border:1px solid rgba(151,205,184,.34)!important;border-radius:16px!important;background:linear-gradient(180deg,rgba(23,42,39,.985),rgba(9,23,23,.99))!important;box-shadow:0 30px 80px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.08)!important;color:#edf5ef!important}
.dragonbound-outings-panel::before{border:1px solid rgba(125,185,160,.1)!important;border-radius:12px!important}
.dragonbound-outings-panel header small{color:#8eb6a6!important}.dragonbound-outings-panel header h2{color:#f4f5ec!important;font-family:"Nunito",system-ui,sans-serif!important;font-weight:850!important}.dragonbound-outings-panel header p{color:#b7cbc1!important}
.dragonbound-outings-close{appearance:none!important;-webkit-appearance:none!important;border:1px solid rgba(164,211,192,.3)!important;background:rgba(70,111,97,.18)!important;color:#eaf6ee!important;box-shadow:none!important}.dragonbound-outings-close:hover,.dragonbound-outings-close:focus-visible{background:rgba(91,147,125,.3)!important;outline:none!important;box-shadow:0 0 0 3px rgba(109,181,153,.13)!important}
.dragonbound-outing-card{border:1px solid rgba(139,192,170,.25)!important;background:rgba(236,246,239,.055)!important;box-shadow:0 12px 30px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.045)!important}.dragonbound-outing-card-copy>small{color:#8fbea8!important}.dragonbound-outing-card-copy h3{color:#f2f5ed!important;font-family:"Nunito",system-ui,sans-serif!important;font-weight:850!important}.dragonbound-outing-card-copy>b{color:#a9cfbd!important}.dragonbound-outing-card-copy p{color:#bdcec6!important}
.dragonbound-outing-card-copy button,.dragonbound-outing-top-actions button,.dragonbound-outing-context-actions button,.dragonbound-outing-context-confirm button{appearance:none!important;-webkit-appearance:none!important;border:1px solid rgba(154,216,187,.34)!important;border-radius:9px!important;background:linear-gradient(180deg,#3f806b,#2b6257)!important;box-shadow:0 5px 14px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.1)!important;color:#f4fff8!important;text-shadow:none!important}
.dragonbound-outing-context-actions button:last-child,.dragonbound-outing-context-confirm button:last-child,.dragonbound-outing-top-actions [data-outing-debug]{background:rgba(69,94,88,.72)!important;color:#d9e8e1!important}
.dragonbound-outing-card-copy button:hover,.dragonbound-outing-card-copy button:focus-visible,.dragonbound-outing-top-actions button:hover,.dragonbound-outing-top-actions button:focus-visible,.dragonbound-outing-context-actions button:hover,.dragonbound-outing-context-actions button:focus-visible,.dragonbound-outing-context-confirm button:hover,.dragonbound-outing-context-confirm button:focus-visible{transform:translateY(-1px)!important;filter:none!important;border-color:rgba(193,239,218,.65)!important;background:linear-gradient(180deg,#51957e,#347364)!important;outline:none!important;box-shadow:0 8px 20px rgba(0,0,0,.24),0 0 0 3px rgba(111,184,155,.12)!important}

@media(max-width:680px){
  #dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher{right:120px!important;bottom:10px!important;width:102px!important;min-height:48px!important;grid-template-columns:30px minmax(0,1fr)!important;gap:7px!important;padding:6px 8px!important;border-radius:10px!important}
  #dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-icon{width:30px!important;height:30px!important;padding:5px!important;border-radius:8px!important}
  #dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher strong{font-size:13px!important}
  #dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher em{font-size:6px!important}
}

/* While an outing itself is active the home launcher remains hidden/non-interactive. */
body.dragonbound-outing-active #dragonboundOverlay .dragonbound-home-scene .dragonbound-go-out-launcher{pointer-events:none!important}


/* =====================================================================
   V34.09.3 — Lantern Nook visual polish + collision/clipping cleanup
   No brown generic UI in Outings. Calendar is intentionally untouched.
   ===================================================================== */
body.dragonbound-outing-active .dragonbound-outing-destination{
  --outing-bg:#071012;
  --outing-panel:rgba(10,24,27,.96);
  --outing-panel-soft:rgba(18,39,41,.86);
  --outing-line:rgba(127,208,190,.24);
  --outing-line-strong:rgba(162,231,213,.48);
  --outing-text:#f3f8f5;
  --outing-muted:#9db8b1;
  --outing-accent:#65c8ab;
  --outing-accent-2:#3d8f7b;
}
.dragonbound-outing-destination{
  background:#061012!important;
  color:var(--outing-text,#f3f8f5)!important;
}
.dragonbound-outing-shell{
  grid-template-rows:54px minmax(0,1fr) 34px!important;
  background:radial-gradient(circle at 50% 28%,#173238 0%,#071114 60%,#04090b 100%)!important;
}
.dragonbound-outing-topbar{
  padding:7px 14px!important;
  border-bottom:1px solid rgba(114,202,183,.2)!important;
  background:linear-gradient(180deg,rgba(10,27,30,.98),rgba(5,16,19,.985))!important;
  box-shadow:0 8px 24px rgba(0,0,0,.25),inset 0 -1px 0 rgba(255,255,255,.025)!important;
}
.dragonbound-outing-topbar small{
  color:#7fb5a8!important;
  letter-spacing:1.3px!important;
}
.dragonbound-outing-topbar strong{
  color:#f5faf7!important;
  font-family:"Nunito",system-ui,sans-serif!important;
  font-weight:900!important;
  font-size:17px!important;
  letter-spacing:.02em!important;
}
.dragonbound-outing-top-actions>span{
  padding:6px 10px!important;
  border:1px solid rgba(110,200,178,.24)!important;
  background:rgba(67,139,121,.14)!important;
  color:#c8e5dc!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.dragonbound-outing-top-actions button{
  appearance:none!important;
  -webkit-appearance:none!important;
  height:32px!important;
  padding:0 12px!important;
  border:1px solid rgba(130,207,190,.3)!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,rgba(42,91,83,.88),rgba(23,62,59,.92))!important;
  color:#effaf6!important;
  font:850 8px/1 "Nunito",system-ui,sans-serif!important;
  box-shadow:0 5px 15px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.07)!important;
  text-shadow:none!important;
}
.dragonbound-outing-top-actions button:hover,
.dragonbound-outing-top-actions button:focus-visible{
  transform:translateY(-1px)!important;
  filter:none!important;
  border-color:rgba(176,232,218,.62)!important;
  background:linear-gradient(180deg,rgba(58,119,105,.96),rgba(28,76,70,.97))!important;
  outline:none!important;
  box-shadow:0 7px 18px rgba(0,0,0,.22),0 0 0 3px rgba(101,200,171,.1)!important;
}
.dragonbound-outing-viewport{
  padding:8px 10px!important;
  background:radial-gradient(circle at 50% 42%,rgba(49,109,96,.12),transparent 65%)!important;
}
.dragonbound-outing-map{
  width:min(calc((100vh - 104px) * 1.5),calc(100vw - 20px))!important;
  border:1px solid rgba(116,195,178,.24)!important;
  box-shadow:0 14px 44px rgba(0,0,0,.56),0 0 0 1px rgba(255,255,255,.025)!important;
  background:#0a1010!important;
}
.dragonbound-outing-keeper>img{
  width:58px!important;
  transform:translate(-50%,-94%)!important;
  transform-origin:50% 94%!important;
  image-rendering:pixelated!important;
  filter:drop-shadow(0 4px 3px rgba(0,0,0,.3))!important;
}
.dragonbound-outing-keeper.is-flipped>img{
  transform:translate(-50%,-94%) scaleX(-1)!important;
}
.dragonbound-outing-dragon>img,
.dragonbound-outing-guest>img{
  filter:drop-shadow(0 4px 4px rgba(0,0,0,.28))!important;
}
.dragonbound-outing-dragon:hover>img,
.dragonbound-outing-dragon:focus-visible>img{
  filter:drop-shadow(0 0 4px rgba(135,225,202,.85)) drop-shadow(0 4px 4px rgba(0,0,0,.28))!important;
}
.dragonbound-outing-dragon:focus-visible{
  outline:2px solid rgba(118,211,187,.55)!important;
  outline-offset:13px!important;
}
.dragonbound-outing-dragon.is-roaming::after{
  top:7px!important;
  padding:3px 6px!important;
  border:1px solid rgba(122,212,188,.34)!important;
  background:rgba(7,27,29,.9)!important;
  color:#c8eee3!important;
  font-size:6px!important;
}

/* No broad background-clone occlusion rectangles. */
.dragonbound-outing-mask-layer{display:none!important}

/* Clean, compact dragon interaction palette anchored near the dragon. */
.dragonbound-outing-context{
  right:auto!important;
  width:270px!important;
  padding:12px!important;
  border:1px solid rgba(125,211,191,.31)!important;
  border-radius:14px!important;
  background:
    linear-gradient(180deg,rgba(13,31,34,.985),rgba(6,18,21,.99))!important;
  box-shadow:0 18px 44px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.055)!important;
  color:#f1f8f5!important;
  backdrop-filter:blur(10px)!important;
}
.dragonbound-outing-context::before{
  content:''!important;
  position:absolute!important;
  inset:5px!important;
  pointer-events:none!important;
  border:1px solid rgba(113,193,175,.065)!important;
  border-radius:10px!important;
}
.dragonbound-outing-context-head{
  position:relative!important;
  z-index:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:1px 1px 10px!important;
  border-bottom:1px solid rgba(121,198,181,.13)!important;
}
.dragonbound-outing-context-head>div{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
.dragonbound-outing-context-head>div>small{
  color:#74a99d!important;
  font:900 6px/1 "Nunito",system-ui,sans-serif!important;
  letter-spacing:1.1px!important;
}
.dragonbound-outing-context-head strong{
  color:#f7fbf8!important;
  font:900 18px/1.05 "Nunito",system-ui,sans-serif!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.dragonbound-outing-context-head>span{
  flex:0 0 auto!important;
  padding:5px 7px!important;
  border:1px solid rgba(109,195,174,.23)!important;
  border-radius:999px!important;
  background:rgba(63,129,115,.13)!important;
  color:#a9dbce!important;
  font:900 5.5px/1 "Nunito",system-ui,sans-serif!important;
  letter-spacing:.6px!important;
}
.dragonbound-outing-context-actions{
  position:relative!important;
  z-index:1!important;
  grid-template-columns:1fr 1fr!important;
  gap:7px!important;
  margin-top:9px!important;
}
.dragonbound-outing-context-actions button{
  min-height:46px!important;
  display:grid!important;
  align-content:center!important;
  gap:3px!important;
  padding:8px 10px!important;
  border:1px solid rgba(117,187,173,.2)!important;
  border-radius:10px!important;
  background:linear-gradient(180deg,rgba(30,65,65,.88),rgba(19,47,49,.92))!important;
  color:#edf8f5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important;
  text-align:left!important;
  text-shadow:none!important;
  transform:none!important;
}
.dragonbound-outing-context-actions button b{
  color:#f6fbf8!important;
  font:900 9px/1.05 "Nunito",system-ui,sans-serif!important;
}
.dragonbound-outing-context-actions button small{
  color:#84a9a1!important;
  font:800 6px/1 "Nunito",system-ui,sans-serif!important;
}
.dragonbound-outing-context-actions button.is-primary{
  border-color:rgba(111,218,185,.42)!important;
  background:linear-gradient(180deg,rgba(57,137,111,.98),rgba(34,94,82,.98))!important;
}
.dragonbound-outing-context-actions button.is-primary small{color:#c5eadf!important}
.dragonbound-outing-context-actions button.is-wide{
  grid-column:1/-1!important;
  min-height:41px!important;
  background:rgba(31,54,57,.86)!important;
}
.dragonbound-outing-context-actions button:hover,
.dragonbound-outing-context-actions button:focus-visible{
  transform:translateY(-1px)!important;
  filter:none!important;
  border-color:rgba(167,229,213,.52)!important;
  background:linear-gradient(180deg,rgba(48,96,91,.97),rgba(28,69,67,.98))!important;
  outline:none!important;
  box-shadow:0 7px 16px rgba(0,0,0,.18),0 0 0 3px rgba(101,200,171,.09)!important;
}
.dragonbound-outing-context-actions button.is-primary:hover,
.dragonbound-outing-context-actions button.is-primary:focus-visible{
  background:linear-gradient(180deg,rgba(72,161,130,.99),rgba(40,110,94,.99))!important;
}
.dragonbound-outing-context-confirm{
  position:relative!important;
  z-index:1!important;
  padding:9px 1px 1px!important;
}
.dragonbound-outing-context-confirm p{
  color:#c7dad5!important;
  font-size:9px!important;
}
.dragonbound-outing-context-confirm p b{color:#ffffff!important}
.dragonbound-outing-context-confirm button{
  border:1px solid rgba(121,200,180,.28)!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,rgba(55,133,108,.98),rgba(33,89,77,.98))!important;
  color:#f4fbf8!important;
}
.dragonbound-outing-context-confirm button:last-child{
  background:rgba(32,54,57,.9)!important;
  color:#c9d9d5!important;
}

/* Thoughts / toasts are dark glass, not parchment/brown. */
.dragonbound-outing-thought{
  border:1px solid rgba(131,213,193,.28)!important;
  border-radius:10px!important;
  background:rgba(8,24,27,.94)!important;
  color:#eff8f5!important;
  box-shadow:0 8px 22px rgba(0,0,0,.28)!important;
}
.dragonbound-outing-thought::after{
  border-right:1px solid rgba(131,213,193,.28)!important;
  border-bottom:1px solid rgba(131,213,193,.28)!important;
  background:rgba(8,24,27,.94)!important;
}
.dragonbound-outing-toast{
  border:1px solid rgba(126,205,187,.25)!important;
  background:rgba(6,20,23,.95)!important;
  color:#edf8f4!important;
}
.dragonbound-outing-controls{
  gap:16px!important;
  border-top:1px solid rgba(113,190,174,.16)!important;
  background:rgba(5,15,18,.985)!important;
  color:#98afa9!important;
}
.dragonbound-outing-controls b{color:#dff1ec!important}
.dragonbound-outing-controls [data-outing-location]{color:#7eb5a8!important}

/* Outing picker: full dark-glass destination card, no beige/brown surfaces. */
.dragonbound-outings-panel{
  background:linear-gradient(180deg,rgba(8,23,27,.99),rgba(4,14,17,.995))!important;
}
.dragonbound-outing-card{
  overflow:hidden!important;
  border:1px solid rgba(114,196,177,.22)!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,rgba(17,41,43,.76),rgba(8,25,28,.88))!important;
  box-shadow:0 14px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.dragonbound-outing-card-copy{
  background:linear-gradient(180deg,rgba(10,29,32,.72),rgba(7,22,25,.92))!important;
}
.dragonbound-outing-card-copy>small{color:#79afa2!important}
.dragonbound-outing-card-copy h3{color:#f3f9f6!important}
.dragonbound-outing-card-copy>b{color:#9bcabb!important}
.dragonbound-outing-card-copy p{color:#a9c0ba!important}
.dragonbound-outing-card-copy button{
  border-color:rgba(122,210,188,.38)!important;
  background:linear-gradient(180deg,#3e9178,#28705f)!important;
  color:#f4fffb!important;
}

/* Reduce visual clutter from the old debug-oriented styling. */
.dragonbound-outing-debug-layer[hidden]{display:none!important}

@media(max-width:760px){
  .dragonbound-outing-context{
    position:absolute!important;
    left:50%!important;
    right:auto!important;
    top:auto!important;
    bottom:44px!important;
    width:min(270px,calc(100vw - 20px))!important;
    transform:translateX(-50%)!important;
  }
  .dragonbound-outing-keeper>img{width:52px!important}
}

/* =====================================================================
   V34.09.4 — Lantern Nook interaction polish
   Keeper seating, cleaner venue prompts, smoother pet occupancy states.
   ===================================================================== */
.dragonbound-outing-seat-layer{
  position:absolute;
  inset:0;
  z-index:900;
  pointer-events:none;
}
.dragonbound-outing-seat-hotspot{
  position:absolute!important;
  width:34px!important;
  height:26px!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  transform:translate(-50%,-50%)!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  opacity:0!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
.dragonbound-outing-seat-hotspot:hover,
.dragonbound-outing-seat-hotspot:focus-visible{
  opacity:1!important;
  border:1px solid rgba(145,224,205,.36)!important;
  background:radial-gradient(circle,rgba(91,183,158,.16),rgba(21,57,56,.04) 65%,transparent 68%)!important;
  box-shadow:0 0 0 3px rgba(101,200,171,.06)!important;
}
.dragonbound-outing-action-prompt{
  position:absolute;
  left:50%;
  bottom:11px;
  z-index:7200;
  display:flex;
  align-items:center;
  gap:7px;
  transform:translateX(-50%);
  padding:6px 9px 6px 6px;
  border:1px solid rgba(136,214,195,.28);
  border-radius:10px;
  background:linear-gradient(180deg,rgba(9,30,32,.94),rgba(5,20,23,.96));
  box-shadow:0 7px 20px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.04);
  color:#eaf7f3;
  font:850 7px/1 "Nunito",system-ui,sans-serif;
  letter-spacing:.15px;
  pointer-events:none;
  backdrop-filter:blur(7px);
}
.dragonbound-outing-action-prompt[hidden]{display:none!important}
.dragonbound-outing-action-prompt kbd{
  min-width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border:1px solid rgba(161,226,211,.32);
  border-radius:7px;
  background:linear-gradient(180deg,rgba(69,139,122,.8),rgba(37,88,80,.9));
  color:#fff;
  font:950 8px/1 "Nunito",system-ui,sans-serif;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
}
.dragonbound-outing-keeper.is-seated{will-change:auto!important}
.dragonbound-outing-keeper.is-seated>img{
  width:58px!important;
  transform:translate(-50%,-76%) scale(1.02,.78)!important;
  transform-origin:50% 82%!important;
  clip-path:inset(0 0 17% 0)!important;
  filter:drop-shadow(0 3px 3px rgba(0,0,0,.28))!important;
}
.dragonbound-outing-keeper.is-seated.is-flipped>img{transform:translate(-50%,-76%) scale(-1.02,.78)!important}
.dragonbound-outing-keeper.is-seated[data-seat-kind="cushion"]>img{transform:translate(-50%,-70%) scale(1.02,.74)!important;clip-path:inset(0 0 20% 0)!important}
.dragonbound-outing-keeper.is-seated[data-seat-kind="cushion"].is-flipped>img{transform:translate(-50%,-70%) scale(-1.02,.74)!important}
.dragonbound-outing-dragon,
.dragonbound-outing-guest{transition:opacity .14s ease!important}
.dragonbound-outing-dragon.is-hidden-interaction{opacity:.10!important;pointer-events:none!important}
.dragonbound-outing-debug-layer i.is-passage{border-color:#73f0b4!important;background:rgba(70,235,158,.13)!important}
.dragonbound-outing-debug-layer b.is-seat{position:absolute;width:9px;height:9px;border:2px solid #8ef1d0;border-radius:50%;background:#164d43;transform:translate(-50%,-50%)}

/* Venue controls remain clean glass UI; never inherit the site's old brown button skin. */
.dragonbound-outing-action-prompt,
.dragonbound-outing-seat-hotspot,
.dragonbound-outing-context,
.dragonbound-outing-topbar,
.dragonbound-outing-controls{color-scheme:dark}

@media(max-width:760px){
  .dragonbound-outing-action-prompt{bottom:8px;max-width:calc(100vw - 24px);white-space:nowrap}
  .dragonbound-outing-keeper.is-seated>img{width:52px!important}
}


/* ======================================================================
   REPO COMPANY V34.34.1 — GREENHOUSE COFFEE BACKDROP
   Swap the central homepage sanctuary art to the new Odds & Ebbles scene
   and recalibrate the guest presentation for the built-in sofa.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-backdrop{
  object-position:center center!important;
  transform:scale(1)!important;
  filter:saturate(1.01) contrast(1.02) brightness(.99)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:24.75%!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest img{
  filter:drop-shadow(0 4px 4px rgba(7,12,16,.42)) drop-shadow(0 0 2px rgba(255,214,133,.06))!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine{
  opacity:.58!important;
  filter:saturate(1)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::before{
  opacity:.55!important;
  filter:blur(5px)!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-sunshine::after{
  opacity:.52!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-breeze{
  opacity:.42!important;
}
#repoDashboardV20 #scene.sanctuary-scene .sanctuary-leaves{
  display:none!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-lobby-vignette{
  box-shadow:inset 0 0 26px rgba(6,11,14,.17), inset 0 -12px 18px rgba(4,8,10,.07)!important;
}


/* ======================================================================
   REPO COMPANY V34.34.2 — GREENHOUSE SEATING HOTFIX
   Characters were too small and reading as floor-level. Re-anchor them onto
   the sofa cushions and restore a stronger seated presence.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:29.75%!important;
}
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-walking,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-walking{
  width:19.75%!important;
}


/* ======================================================================
   REPO COMPANY V34.34.3 — GREENHOUSE SOFA ALIGNMENT
   Final micro-calibration: lift seated guests onto the cushion and add a
   small amount of scale without changing the backdrop or dashboard layout.
   ====================================================================== */
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-billboard-seated,
#repoDashboardV20 #scene.sanctuary-scene .tavern-guest.is-sanctuary-seated{
  width:31.0%!important;
}


/* ======================================================================
   REPO COMPANY V34.35 — RETIRED CONTENT CLEANUP
   World Cup 2026 live hub/buttons, Pet Wars, Pet Chat and standalone Cooking
   are no longer active production surfaces. Keep the Velmora Crown launcher
   as a normal header control with no dependency on World Cup positioning.
   ====================================================================== */
#repoDashboardV20 .velmora-crown-home-stack,
.velmora-crown-home-stack{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  position:relative!important;
}
.velmora-crown-home-stack .velmora-crown-newspaper-launcher{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  display:grid!important;
  transform:none!important;
  margin:0!important;
}
.velmora-crown-home-stack .velmora-crown-newspaper-launcher:hover{
  transform:translateY(-2px) rotate(1deg) scale(1.035)!important;
}


/* V34.35.1 — external fallback for header rebalance. Authoritative rules are
   also embedded at the end of <head> so old Crown inline CSS cannot win. */
#repoDashboardV20 .character-box{top:156px!important}
#repoDashboardV20 .signed-in-controls{grid-template-columns:214px 316px 105px 105px 105px 140px 64px 40px!important;gap:4px!important;justify-content:center!important}
#repoDashboardV20 .velmora-crown-home-stack{grid-column:6!important;height:60px!important;overflow:hidden!important}
#repoDashboardV20 #openTcgBinderQuick{grid-column:7!important}
#repoDashboardV20 #repoLogoutQuick{grid-column:8!important}



/* ======================================================================
   V34.45 — NATIVE IDENTICAL-STYLE COMMAND DECK
   Supplied PNG buttons are reference only. All visible frames are native CSS.
   ====================================================================== */
#repoDashboardV20>.game-strip.adventure-nav.repo-native-premium-deck{
  position:absolute!important;
  left:271px!important;
  top:662px!important;
  z-index:12!important;
  width:1228px!important;
  height:176px!important;
  max-width:none!important;
  margin:0!important;
  padding:6px 11px 8px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  border:1px solid rgba(142,102,51,.46)!important;
  border-radius:17px!important;
  background:
    radial-gradient(ellipse at 50% -20%,rgba(39,76,105,.15),transparent 54%),
    linear-gradient(180deg,rgba(7,18,27,.98),rgba(3,10,16,.98))!important;
  box-shadow:inset 0 0 0 2px rgba(2,6,9,.76),inset 0 0 0 3px rgba(183,135,62,.10),0 6px 14px rgba(0,0,0,.38)!important;
  overflow:hidden!important;
}
#repoDashboardV20>.game-strip.adventure-nav.repo-native-premium-deck::before{
  content:'';
  position:absolute;
  inset:3px;
  pointer-events:none;
  border:1px solid rgba(218,170,81,.12);
  border-radius:13px;
}
#repoDashboardV20 .repo-native-premium-top{
  height:107px!important;
  min-height:107px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr .90fr 1fr!important;
  gap:8px!important;
}
#repoDashboardV20 .repo-native-premium-wing{
  position:relative!important;
  min-width:0!important;
  height:107px!important;
  padding:5px 7px 6px!important;
  border-right:1px solid rgba(154,111,54,.34)!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-native-premium-wing:last-child{border-right:0!important}
#repoDashboardV20 .repo-native-premium-wing h3{
  height:16px!important;
  margin:0 0 5px!important;
  padding:0!important;
  color:#d6b66f!important;
  font:900 8.5px/16px Georgia,serif!important;
  letter-spacing:.13em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
#repoDashboardV20 .repo-native-premium-grid{
  display:grid!important;
  gap:5px!important;
  height:79px!important;
  align-items:stretch!important;
}
#repoDashboardV20 .repo-native-premium-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#repoDashboardV20 .repo-native-premium-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Recreated small button frame: cut corners, bronze lip, blue-black face. */
#repoDashboardV20 .repo-native-frame{
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:79px!important;
  min-width:0!important;
  min-height:79px!important;
  margin:0!important;
  padding:2px!important;
  display:block!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(145deg,#8b6533 0,#30281f 16%,#121c22 43%,#604525 82%,#9c7138 100%)!important;
  clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)!important;
  box-shadow:0 3px 5px rgba(0,0,0,.32)!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-native-frame::after{
  content:'';
  position:absolute;
  inset:1px;
  z-index:3;
  pointer-events:none;
  clip-path:inherit;
  box-shadow:inset 0 0 0 1px rgba(192,143,70,.18),inset 0 6px 11px rgba(255,255,255,.018),inset 0 -8px 12px rgba(0,0,0,.30);
}
#repoDashboardV20 .repo-native-face{
  position:relative!important;
  z-index:1!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  padding:7px 2px 5px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)!important;
  background:linear-gradient(180deg,#0d1b24 0%,#07131b 58%,#050d13 100%)!important;
  border:1px solid rgba(91,112,120,.30)!important;
}
#repoDashboardV20 .repo-native-face>img{
  display:block!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  max-width:38px!important;
  max-height:38px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.55))!important;
}
#repoDashboardV20 .repo-native-face>b{
  display:block!important;
  min-height:12px!important;
  max-width:100%!important;
  color:#d6b66f!important;
  font:900 6.4px/1.05 Georgia,serif!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  white-space:normal!important;
}
#repoDashboardV20 .repo-native-frame:hover:not(:disabled){filter:brightness(1.10)!important;transform:translateY(-1px)!important}
#repoDashboardV20 .repo-native-frame:active:not(:disabled){transform:translateY(0)!important;filter:brightness(.98)!important}
#repoDashboardV20 .repo-native-frame:disabled{cursor:default!important;opacity:.74!important;filter:saturate(.80)!important}
#repoDashboardV20 .repo-native-ge{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  border:1px solid #9c7137!important;
  border-radius:50%!important;
  background:radial-gradient(circle,#604923,#1d170d 72%)!important;
  color:#e1bf74!important;
  font:900 12px/1 Georgia,serif!important;
  box-shadow:inset 0 0 0 2px rgba(0,0,0,.28)!important;
}
#repoDashboardV20 #wiseTaskBadge{
  position:absolute!important;
  z-index:8!important;
  right:2px!important;
  top:2px!important;
  width:15px!important;
  height:15px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  border:1px solid #f7d979!important;
  border-radius:50%!important;
  background:#d2a93d!important;
  color:#241304!important;
  font:900 9px/1 Georgia,serif!important;
}

/* Main attraction row */
#repoDashboardV20 .repo-native-premium-bottom{
  height:48px!important;
  min-height:48px!important;
  display:grid!important;
  grid-template-columns:minmax(34px,1fr) 326px 290px 112px 90px 108px minmax(34px,1fr)!important;
  gap:8px!important;
  align-items:center!important;
}
#repoDashboardV20 .repo-native-ornament{
  position:relative!important;
  display:block!important;
  height:48px!important;
}
#repoDashboardV20 .repo-native-ornament::before{
  content:'';
  position:absolute;
  left:6px;right:6px;top:23px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(185,137,64,.58) 25%,rgba(185,137,64,.58) 75%,transparent);
}
#repoDashboardV20 .repo-native-ornament::after{
  content:'◇';
  position:absolute;left:50%;top:14px;transform:translateX(-50%);
  color:#b98b47;font:900 15px/1 Georgia,serif;
}
#repoDashboardV20 .repo-native-brand-button,
#repoDashboardV20 .repo-native-mini-button{
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:48px!important;
  min-width:0!important;
  min-height:48px!important;
  margin:0!important;
  padding:2px!important;
  border:0!important;
  border-radius:0!important;
  clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 7px,100% calc(100% - 7px),calc(100% - 7px) 100%,7px 100%,0 calc(100% - 7px),0 7px)!important;
  background:linear-gradient(145deg,#8b6533 0,#30281f 15%,#101b22 43%,#5b4224 82%,#9b7138 100%)!important;
  box-shadow:0 3px 5px rgba(0,0,0,.32)!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
#repoDashboardV20 a.repo-native-brand-button{
  display:block!important;
  color:inherit!important;
  text-decoration:none!important;
}
#repoDashboardV20 .repo-native-brand-face,
#repoDashboardV20 .repo-native-mini-face{
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)!important;
  background:linear-gradient(180deg,#0c1a23,#07131a 62%,#050d13)!important;
  border:1px solid rgba(91,112,120,.30)!important;
}
#repoDashboardV20 .repo-native-brand-face{gap:12px!important;padding:4px 16px!important}
#repoDashboardV20 .repo-brand-divider{width:1px!important;height:30px!important;background:linear-gradient(transparent,#335364 20%,#335364 80%,transparent)!important;flex:0 0 1px!important}
#repoDashboardV20 .repo-brand-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important}
#repoDashboardV20 .repo-brand-copy>strong{color:#2255a4!important;font:1000 19px/.92 Arial,sans-serif!important;letter-spacing:.025em!important;text-shadow:0 1px 1px #000!important;white-space:nowrap!important}
#repoDashboardV20 .repo-brand-copy>small{margin-top:4px!important;color:#2f6db8!important;font:900 6.8px/1 Arial,sans-serif!important;letter-spacing:.38em!important;white-space:nowrap!important}
#repoDashboardV20 .repo-dragonbound-mark{width:62px!important;height:38px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.45))!important}
#repoDashboardV20 .repo-vm-glyph{position:relative!important;width:78px!important;height:32px!important;flex:0 0 78px!important}
#repoDashboardV20 .repo-vm-glyph i{position:absolute!important;display:block!important;height:28px!important;transform:skewX(-28deg)!important;background:linear-gradient(180deg,#2c74ff,#0d3f9a)!important;box-shadow:0 1px 1px rgba(0,0,0,.4)!important}
#repoDashboardV20 .repo-vm-glyph .v1{left:2px!important;top:1px!important;width:15px!important}
#repoDashboardV20 .repo-vm-glyph .v2{left:21px!important;top:1px!important;width:15px!important;transform:skewX(28deg)!important}
#repoDashboardV20 .repo-vm-glyph .v3{left:42px!important;top:1px!important;width:17px!important}
#repoDashboardV20 .repo-vm-glyph .slash{left:62px!important;top:0!important;width:10px!important;height:30px!important;background:linear-gradient(180deg,#ff3434,#c80d18)!important}
#repoDashboardV20 .repo-native-brand-button:hover,
#repoDashboardV20 .repo-native-mini-button:hover{filter:brightness(1.08)!important;transform:translateY(-1px)!important}
#repoDashboardV20 .repo-native-mini-face{flex-direction:column!important;gap:2px!important;padding:3px!important}
#repoDashboardV20 .repo-native-mini-face>img{width:31px!important;height:26px!important;object-fit:contain!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.55))!important}
#repoDashboardV20 .repo-native-mini-face>b{color:#d6b66f!important;font:900 5.8px/1 Georgia,serif!important;white-space:nowrap!important}

/* Keep ticker underneath without colliding. */
#repoDashboardV20>footer{
  left:285px!important;
  top:842px!important;
  width:1151px!important;
  height:25px!important;
  min-height:25px!important;
}
#repoDashboardV20 .repo-dash-today,#repoDashboardV20 .repo-dash-ticker-item{height:25px!important;min-height:25px!important}

/* Never show Quidditch watch-party/account cards on the homepage. */
body.repo-dashboard-v20-active #qmWatcherAccounts,
body.repo-dashboard-v20-active .qm-watcher-namecard,
body.repo-dashboard-v20-active .qm-watcher-watchcard{display:none!important}



/* ======================================================================
   V34.45.1 — FLAGSHIP POLISH
   Keep V34.45 structure; correct the VM mark, enlarge Dragonbound,
   soften the button treatment, and explicitly restore Raids framing.
   ====================================================================== */

/* Softer deck/frame treatment so the command bar belongs to the dashboard. */
#repoDashboardV20>.game-strip.adventure-nav.repo-native-premium-deck{
  border-color:rgba(126,94,51,.30)!important;
  background:
    radial-gradient(ellipse at 50% -18%,rgba(37,70,94,.09),transparent 55%),
    linear-gradient(180deg,rgba(7,17,25,.965),rgba(4,11,17,.965))!important;
  box-shadow:inset 0 0 0 1px rgba(217,171,91,.045),0 5px 12px rgba(0,0,0,.28)!important;
}
#repoDashboardV20>.game-strip.adventure-nav.repo-native-premium-deck::before{
  border-color:rgba(195,145,70,.075)!important;
}
#repoDashboardV20 .repo-native-premium-wing{
  border-right-color:rgba(128,92,48,.22)!important;
}
#repoDashboardV20 .repo-native-premium-wing h3{
  color:#cbb176!important;
  font-size:8px!important;
  letter-spacing:.11em!important;
}

/* Smaller buttons: reduce the loud bronze perimeter and heavy cut corners. */
#repoDashboardV20 .repo-native-frame{
  padding:1px!important;
  background:#263039!important;
  clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px)!important;
  box-shadow:0 2px 3px rgba(0,0,0,.24)!important;
}
#repoDashboardV20 .repo-native-frame::after{
  inset:0!important;
  box-shadow:inset 0 0 0 1px rgba(174,129,64,.38),inset 0 5px 9px rgba(255,255,255,.012),inset 0 -6px 9px rgba(0,0,0,.20)!important;
}
#repoDashboardV20 .repo-native-face{
  clip-path:polygon(3px 0,calc(100% - 3px) 0,100% 3px,100% calc(100% - 3px),calc(100% - 3px) 100%,3px 100%,0 calc(100% - 3px),0 3px)!important;
  background:linear-gradient(180deg,#0c1821 0%,#08131a 62%,#060e14 100%)!important;
  border-color:rgba(75,93,102,.20)!important;
}
#repoDashboardV20 .repo-native-face>b,
#repoDashboardV20 .repo-native-mini-face>b{
  color:#c5aa6c!important;
  font-weight:700!important;
  text-shadow:none!important;
}
#repoDashboardV20 .repo-native-frame:hover:not(:disabled){
  filter:brightness(1.055)!important;
}

/* Same quieter language for the flagship and secondary buttons. */
#repoDashboardV20 .repo-native-brand-button,
#repoDashboardV20 .repo-native-mini-button{
  padding:1px!important;
  background:#263039!important;
  clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)!important;
  box-shadow:0 2px 3px rgba(0,0,0,.24)!important;
}
#repoDashboardV20 .repo-native-brand-face,
#repoDashboardV20 .repo-native-mini-face{
  clip-path:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px)!important;
  background:linear-gradient(180deg,#0b1720,#071219 65%,#050d13)!important;
  border-color:rgba(76,94,103,.22)!important;
  box-shadow:inset 0 0 0 1px rgba(174,129,64,.34)!important;
}
#repoDashboardV20 .repo-native-brand-button:hover,
#repoDashboardV20 .repo-native-mini-button:hover{
  filter:brightness(1.055)!important;
}

/* Correct VM: explicit V + M, with the red slash from the supplied identity. */
#repoDashboardV20 .repo-vm-glyph{
  position:relative!important;
  width:82px!important;
  height:35px!important;
  flex:0 0 82px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:0!important;
  transform:skewX(-8deg)!important;
}
#repoDashboardV20 .repo-vm-glyph .repo-vm-letter{
  position:relative!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:transparent!important;
  background:linear-gradient(180deg,#367cff 0%,#1557cd 55%,#0a378d 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  font:1000 34px/.86 Impact,'Arial Black',Arial,sans-serif!important;
  letter-spacing:-.10em!important;
  text-shadow:none!important;
  filter:drop-shadow(0 2px 1px rgba(0,0,0,.42))!important;
}
#repoDashboardV20 .repo-vm-glyph .repo-vm-v{z-index:2!important}
#repoDashboardV20 .repo-vm-glyph .repo-vm-m{z-index:1!important;margin-left:-1px!important}
#repoDashboardV20 .repo-vm-glyph .repo-vm-slash{
  position:absolute!important;
  right:1px!important;
  top:2px!important;
  width:9px!important;
  height:30px!important;
  display:block!important;
  transform:skewX(-18deg)!important;
  background:linear-gradient(180deg,#ff3b3b,#d4141c)!important;
  box-shadow:0 1px 1px rgba(0,0,0,.42)!important;
}

/* Give Dragonbound's crest the same visual authority as the VM mark. */
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-native-brand-face{
  gap:10px!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
#repoDashboardV20 .repo-dragonbound-mark{
  width:82px!important;
  height:43px!important;
  min-width:82px!important;
  max-width:82px!important;
  object-fit:contain!important;
  transform:scale(1.12)!important;
  transform-origin:center!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.42))!important;
}

/* Make the two names a little less shouty to match the rest of the site. */
#repoDashboardV20 .repo-brand-copy>strong{
  color:#2b5da8!important;
  font:900 18px/.94 Arial,sans-serif!important;
  letter-spacing:.015em!important;
}
#repoDashboardV20 .repo-brand-copy>small{
  margin-top:3px!important;
  color:#3972b6!important;
  font-weight:800!important;
  letter-spacing:.31em!important;
}

/* Raids was being visually stripped by old global #openRaids rules.
   Force it to be the same complete framed button as the other mini games. */
html body #repoDashboardV20 .repo-native-premium-bottom>#openRepoSports.repo-native-mini-button,
html body #repoDashboardV20 .repo-native-premium-bottom>#openRaids.repo-native-mini-button,
html body #repoDashboardV20 .repo-native-premium-bottom>#openAchievements.repo-native-mini-button{
  position:relative!important;
  display:block!important;
  box-sizing:border-box!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:1px!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  border:0!important;
  border-radius:0!important;
  background:#263039!important;
  clip-path:polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)!important;
  box-shadow:0 2px 3px rgba(0,0,0,.24)!important;
  overflow:hidden!important;
  filter:none!important;
  transform:none!important;
}
html body #repoDashboardV20 .repo-native-premium-bottom>#openRaids .repo-native-mini-face{
  display:flex!important;
  width:100%!important;
  height:100%!important;
  opacity:1!important;
  visibility:visible!important;
}
html body #repoDashboardV20 .repo-native-premium-bottom>#openRaids .repo-native-mini-face>img{
  display:block!important;
  width:31px!important;
  height:26px!important;
  max-width:31px!important;
  max-height:26px!important;
  object-fit:contain!important;
  opacity:1!important;
}


/* ======================================================================
   V34.45.2 — FLAGSHIP LOGO SPACING FIX
   Only tightens VM / Dragonbound identity composition.
   ====================================================================== */

/* Manager: compact VM mark, V blue, M red, no slash. */
#repoDashboardV20 .repo-native-brand-button.manager .repo-native-brand-face{
  gap:5px!important;
  padding-left:10px!important;
  padding-right:12px!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph{
  width:62px!important;
  min-width:62px!important;
  max-width:62px!important;
  flex:0 0 62px!important;
  height:36px!important;
  gap:0!important;
  justify-content:center!important;
  transform:skewX(-7deg)!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-letter{
  font:1000 36px/.86 Impact,'Arial Black',Arial,sans-serif!important;
  letter-spacing:-.13em!important;
  filter:drop-shadow(0 2px 1px rgba(0,0,0,.38))!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-v{
  margin:0!important;
  background:linear-gradient(180deg,#3c82ff 0%,#155dD5 55%,#0b3d96 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-m{
  margin-left:-1px!important;
  background:linear-gradient(180deg,#ff5151 0%,#e4232d 55%,#a80d18 100%)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-slash{
  display:none!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-brand-divider{
  margin-left:1px!important;
  margin-right:1px!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-brand-copy{
  margin-left:0!important;
}

/* Dragonbound: much larger crest and a tighter logo-to-wordmark relationship. */
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-native-brand-face{
  gap:4px!important;
  justify-content:center!important;
  padding-left:8px!important;
  padding-right:10px!important;
  overflow:visible!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-dragonbound-mark{
  width:104px!important;
  height:48px!important;
  min-width:104px!important;
  max-width:104px!important;
  flex:0 0 104px!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(1.22)!important;
  transform-origin:center!important;
  margin-right:-8px!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.40))!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-brand-divider{
  margin-left:-2px!important;
  margin-right:1px!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-brand-copy{
  margin-left:0!important;
}

/* ======================================================================
   V34.45.3 — TIGHT FLAGSHIP LOGO LOCKUPS
   Fix the actual reserved flex footprint, not just the gap value.
   ====================================================================== */

/* Manager: VM footprint ends immediately after the M. */
#repoDashboardV20 .repo-native-brand-button.manager .repo-native-brand-face{
  justify-content:center!important;
  gap:7px!important;
  padding:4px 10px!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph{
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  flex:0 0 48px!important;
  height:36px!important;
  overflow:visible!important;
  justify-content:flex-start!important;
  transform:skewX(-7deg)!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-letter{
  font-size:36px!important;
  line-height:.86!important;
  letter-spacing:-.16em!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-v{
  margin-left:0!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-vm-glyph .repo-vm-m{
  margin-left:-4px!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-brand-divider{
  margin:0!important;
  flex:0 0 1px!important;
}
#repoDashboardV20 .repo-native-brand-button.manager .repo-brand-copy{
  margin:0!important;
  flex:0 0 auto!important;
}

/* Dragonbound: PNG contains transparent breathing room. Give the flex item a
   narrow footprint and let the enlarged crest visually spill inside it. */
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-native-brand-face{
  justify-content:center!important;
  gap:7px!important;
  padding:4px 10px!important;
  overflow:hidden!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-dragonbound-mark{
  width:88px!important;
  height:50px!important;
  min-width:88px!important;
  max-width:88px!important;
  flex:0 0 48px!important;
  margin-left:-20px!important;
  margin-right:-20px!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:scale(1.34)!important;
  transform-origin:center!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-brand-divider{
  margin:0!important;
  flex:0 0 1px!important;
}
#repoDashboardV20 .repo-native-brand-button.dragonbound .repo-brand-copy{
  margin:0!important;
  flex:0 0 auto!important;
}


/* ======================================================================
   V34.46.0 — dashboard frame compatibility hook
   The active dashboard frame can now be swapped by an isolated theme file
   without touching the shell-building JavaScript.
   ====================================================================== */
.repo-dashboard-shell-v20{background-color:#071019!important}
