/* ROYALS888 Phase 3: visual-only additions; no financial or eligibility logic. */
:root{--p3-gold:#eac17a;--p3-red:#bb1831;--p3-dark:#120d12}
body:has(.m54-page),body:has(.vip-page){background:#100b10!important;color:#f6e9e5!important}
.m54-page,.vip-page{background:linear-gradient(165deg,#170b13,#100c12 55%,#1b1015)!important;min-height:100dvh;color:#f6e9e5!important}
.m54-top,.vip-top{background:linear-gradient(90deg,#241016,#130d12)!important;border-bottom:1px solid #a56d4655!important;color:#fff!important}
.m54-top h1,.vip-title{color:#f7e8d8!important}
.m54-hero,.vip-card{background:radial-gradient(circle at 90% 0%,#6a2333,#32141e 50%,#160e15)!important;border:1px solid #d2a36577!important;border-radius:22px!important;box-shadow:0 14px 35px #0008!important}
.m54-tabs,.m54-content,.vip-grid{background:transparent!important}
.m54-tab,.m54-campaign,.m54-task-card,.m54-rules-card,.vip-level,.vip-claim,.vip-history,.m54-empty{background:linear-gradient(150deg,#2a161d,#180f16)!important;color:#f6e8e3!important;border:1px solid #b88a5a55!important;border-radius:17px!important;box-shadow:0 8px 20px #0005!important}
.m54-tab.active,.vip-level.active{border-color:#e9bb72!important;box-shadow:0 0 0 1px #e9bb7266,0 8px 22px #0007!important}
.m54-task-title,.m54-campaign-info h2,.m54-section-title,.vip-level b,.vip-claim h2{color:#f6d59b!important}
.m54-task-desc,.m54-campaign-info p,.vip-level small,.vip-claim p{color:#d8c1c0!important}
.m54-task-action:not(:disabled),.vip-btn:not(:disabled){background:linear-gradient(110deg,#ad132c,#ed2945)!important;color:white!important;border-radius:12px!important;transition:filter .2s,transform .2s}
.m54-task-action:not(:disabled):active,.vip-btn:not(:disabled):active{filter:brightness(1.2);transform:scale(.98)}
.vip-progress,.m54-progress{background:#4c3037!important;overflow:hidden;border-radius:50px!important}
.vip-bar,.m54-progress span{background:linear-gradient(90deg,#bf7b35,#ffe2a2)!important}
@media(max-width:430px){.m54-page,.vip-page{width:100%!important;max-width:100%!important;overflow-x:hidden}.m54-campaign,.m54-rules-card,.vip-card,.vip-claim,.vip-history{margin-inline:10px!important}.vip-grid{gap:8px!important;padding-inline:10px!important}}
@media(prefers-reduced-motion:reduce){.m54-page *, .vip-page *{animation-duration:.01ms!important;transition-duration:.01ms!important}}
