/* ROYALS888 Phase 4: CSS-only visual refresh. No payment, account or reward logic changed. */
:root{--royal-bg:#100b10;--royal-panel:#211119;--royal-panel-2:#30151e;--royal-gold:#eac486;--royal-muted:#cbb6b7}
body:has(.page),body:has(.m54-page),body:has(.vip-page){background:radial-gradient(ellipse at top right,#421522 0%,#150b12 40%,#0d0a0f 100%)!important;color:#f8e9e6!important}
body:has(.page) .page{background:linear-gradient(165deg,#1d0c14,#100c11 70%)!important;color:#f8e9e6!important;box-shadow:0 10px 55px #0006}
body:has(.page) .top{background:linear-gradient(100deg,#110a0f,#431321,#170b11)!important;border-bottom:1px solid #d2a46955!important}
body:has(.page) .hero,body:has(.page) .card,body:has(.page) .panel,body:has(.page) .box,body:has(.page) .empty{background:linear-gradient(135deg,#30151f,#1b1119)!important;border-color:#d1a26b66!important;color:#f9ebe8!important;box-shadow:0 8px 25px #0004}
body:has(.page) .hero h1,body:has(.page) .card b{color:#f3d39c!important}
body:has(.page) .hero p,body:has(.page) .card small,body:has(.page) .empty{color:#d4c0bd!important}
body:has(.page) input,body:has(.page) select,body:has(.page) textarea{background:#1c121a!important;border-color:#92664f!important;color:#fff!important;border-radius:11px}
body:has(.page) input::placeholder,body:has(.page) textarea::placeholder{color:#ad9698!important}
body:has(.page) .add,body:has(.page) button[type=submit]{background:linear-gradient(110deg,#9c172d,#db2844)!important;color:#fff!important;box-shadow:0 5px 15px #9b152844!important}
body:has(.page) a,body:has(.page) button{transition:filter .2s ease,transform .2s ease,background-color .2s ease}
body:has(.page) a:active,body:has(.page) button:active{filter:brightness(1.16);transform:scale(.985)}
body:has(.page) .ico{background:linear-gradient(135deg,#47202b,#25131b)!important;border:1px solid #b9885d77}
@media(max-width:480px){body:has(.page) .page{width:100%;max-width:100%;min-height:100dvh}body:has(.page) .main{padding-inline:clamp(12px,4vw,18px)}body:has(.page) .card{min-width:0}}
@media(min-width:800px){body:has(.page) .page{border-inline:1px solid #9b694955}}
@media(prefers-reduced-motion:reduce){body:has(.page) *,body:has(.m54-page) *,body:has(.vip-page) *{animation:none!important;transition:none!important}}
