/* ديرتي — in-game loading overlay (pairs with splash.js). All selectors are prefixed .ds- to stay out of the game's way. */
.ds-splash{position:fixed;inset:0;z-index:2147483000;display:flex;flex-direction:column;align-items:center;justify-content:space-between;
 direction:rtl;overflow:hidden;color:#f3e6cf;font-family:Changa,'Segoe UI',Tahoma,sans-serif;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;
 padding:calc(env(safe-area-inset-top,0px) + 28px) calc(env(safe-area-inset-right,0px) + 22px) calc(env(safe-area-inset-bottom,0px) + 22px) calc(env(safe-area-inset-left,0px) + 22px);
 background:#3a1a1e linear-gradient(180deg,#43183a 0%,#8e3436 26%,#d9733a 52%,#f5b65e 70%,#f9d891 80%,#d89a52 80.2%,#b97a3e 100%);
 opacity:1;transition:opacity .45s ease,visibility 0s linear 0s}
.ds-splash.ds-out{opacity:0;visibility:hidden;transition:opacity .4s ease .1s,visibility 0s linear .5s;pointer-events:none}
.ds-splash *{box-sizing:border-box}
/* sun + glow */
.ds-sun{position:absolute;left:50%;top:63%;width:min(64vw,52vh);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;
 background:radial-gradient(circle,#fffbe8 0 50%,#ffe39a 50.5%,rgba(255,214,130,.55) 51%,rgba(255,190,100,.18) 68%,rgba(255,170,80,0) 72%);pointer-events:none}
.ds-dunes{position:absolute;left:0;right:0;bottom:0;height:34%;pointer-events:none}
.ds-dunes svg{width:100%;height:100%;display:block}
/* top block */
.ds-top{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:4vh;width:100%}
.ds-logo{width:min(68vw,340px);filter:drop-shadow(0 8px 10px rgba(40,10,0,.45));animation:ds-float 3.2s ease-in-out infinite}
.ds-logo svg{display:block;width:100%;height:auto}
.ds-tag{font:600 clamp(14px,3.8vw,18px)/1.3 Changa,'Segoe UI',Tahoma,sans-serif;color:#fff1cf;text-shadow:0 2px 0 rgba(60,20,5,.6)}
/* tower silhouette */
.ds-tower{position:absolute;left:50%;bottom:22%;width:min(36vw,26vh);transform:translateX(-50%);pointer-events:none}
.ds-tower svg{display:block;width:100%;height:auto}
.ds-falcon{position:absolute;left:18%;top:36%;width:min(22vw,15vh);pointer-events:none;animation:ds-glide 6s ease-in-out infinite}
.ds-falcon svg{display:block;width:100%;height:auto}
/* bottom block */
.ds-bottom{position:relative;width:min(100%,460px);display:flex;flex-direction:column;align-items:center;gap:12px}
.ds-tip{min-height:3.1em;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 16px;border-radius:14px;
 background:rgba(42,18,6,.72);border:2px solid rgba(224,184,74,.65);font:600 clamp(14px,3.9vw,17px)/1.45 Changa,'Segoe UI',Tahoma,sans-serif;color:#f3e6cf;
 transition:opacity .35s ease,transform .35s ease;width:100%}
.ds-tip b{color:#ffd75a;font-weight:700}
.ds-tip.ds-swap{opacity:0;transform:translateY(6px)}
.ds-barwrap{position:relative;width:100%;height:22px;border-radius:12px;background:#2a1206;border:3px solid #e0b84a;box-shadow:0 0 0 3px #2a1206,0 6px 0 rgba(0,0,0,.25);overflow:hidden}
.ds-bar{position:absolute;inset:0 auto 0 0;right:0;left:auto;width:0%;border-radius:8px;transition:width .3s ease;
 background:linear-gradient(180deg,#fff2a8 0%,#ffd75a 40%,#e0a42c 70%,#b8780e 100%)}
.ds-bar::after{content:"";position:absolute;inset:0;border-radius:8px;opacity:.35;
 background:repeating-linear-gradient(-60deg,rgba(158,27,27,.9) 0 7px,transparent 7px 14px,rgba(28,20,16,.8) 14px 18px,transparent 18px 26px);
 animation:ds-weave 1.2s linear infinite}
.ds-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font:700 12px/1 Changa,'Segoe UI',Tahoma,sans-serif;color:#2a1206;text-shadow:0 1px 0 rgba(255,240,200,.7)}
.ds-sadu{width:100%;height:14px;border-radius:3px;
 background:#9e1b1b url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14'%3E%3Crect width='28' height='2' fill='%231c1410'/%3E%3Crect y='12' width='28' height='2' fill='%231c1410'/%3E%3Cpath d='M0 11L7 3L14 11Z' fill='%23f3e6cf'/%3E%3Cpath d='M14 11L21 3L28 11Z' fill='%23e0b84a'/%3E%3C/svg%3E") repeat-x;background-size:auto 100%}
.ds-credit{display:flex;align-items:center;gap:8px;font:800 15px/1 Changa,'Segoe UI',Tahoma,sans-serif;color:#2a1206;opacity:.9}
.ds-credit svg{width:20px;height:21px}.ds-credit small{font:600 11px/1 "Readex Pro",Changa,Arial,sans-serif;letter-spacing:4px;opacity:.75;direction:ltr}
@keyframes ds-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes ds-glide{0%,100%{transform:translate(0,0) rotate(-4deg)}50%{transform:translate(12px,-10px) rotate(2deg)}}
@keyframes ds-weave{to{background-position:52px 0}}
@media (prefers-reduced-motion:reduce){.ds-logo,.ds-falcon,.ds-bar::after{animation:none}.ds-splash,.ds-splash.ds-out,.ds-tip,.ds-bar{transition:none}}
@media (min-aspect-ratio:4/5){.ds-tower{bottom:16%;width:min(13vw,21vh)}.ds-sun{top:66%;width:min(40vw,44vh)}.ds-falcon{left:24%;top:42%}}
/* ---------- calendar events (.ds-ev, set from window.DIRATI_EVENT) ---------- */
.ds-splash.ds-ev{background:var(--ev-a) linear-gradient(180deg,var(--ev-c) 0%,var(--ev-a) 38%,var(--ev-a) 52%,var(--ev-b) 79.9%,#d89a52 80.2%,#b97a3e 100%)}
.ds-ev-lanterns,.ds-ev-eid{background:var(--ev-a) linear-gradient(180deg,#0c1226 0%,var(--ev-a) 40%,var(--ev-c) 66%,#e9a95c 79.9%,#c98a46 80.2%,#a8743f 100%)!important}
.ds-ev-heritage,.ds-ev-friday{background:var(--ev-a) linear-gradient(180deg,var(--ev-a) 0%,#a8643a 34%,#e7a65c 60%,var(--ev-b) 79.9%,#d89a52 80.2%,#b97a3e 100%)!important}
.ds-ev .ds-sun{opacity:.55}
.ds-ev-lanterns .ds-sun,.ds-ev-eid .ds-sun{opacity:.18}
.ds-decor{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.ds-decor svg{display:block}
.ds-bunt,.ds-lights,.ds-canopy{position:absolute;left:0;top:env(safe-area-inset-top,0px);width:100%;height:min(11vh,90px)}
.ds-canopy{top:0;height:calc(env(safe-area-inset-top,0px) + min(7vh,56px))}
.ds-lant{position:absolute;left:0;top:env(safe-area-inset-top,0px);width:100%;height:min(26vh,220px)}
.ds-moon{position:absolute;right:10%;top:calc(env(safe-area-inset-top,0px) + 14vh);width:min(18vw,90px);filter:drop-shadow(0 0 14px rgba(255,231,160,.7))}
.ds-ev-eid .ds-moon{top:calc(env(safe-area-inset-top,0px) + 10vh);width:min(13vw,64px)}
.ds-fw{position:absolute;width:min(26vw,140px);opacity:0;animation:ds-burst 2.4s ease-out infinite}
.ds-fw svg{width:100%;height:auto}
.ds-sw{transform-box:fill-box;transform-origin:50% 0;animation:ds-sway 3s ease-in-out infinite}
.ds-tw{animation:ds-twinkle 1.5s ease-in-out infinite}
.ds-haze{position:absolute;bottom:26%;width:34vw;max-width:220px;aspect-ratio:1/1.6;border-radius:50%;opacity:0;
 background:radial-gradient(ellipse at 50% 60%,rgba(255,250,240,.8),rgba(255,244,225,.25) 45%,rgba(255,250,240,0) 68%);animation:ds-rise 5s ease-in infinite;animation-delay:-1.5s}
.ds-evn{display:block;font:400 clamp(22px,6vw,28px)/1.15 Lalezar,Changa,'Segoe UI',Tahoma,sans-serif;color:#ffd75a}
.ds-evg{display:block;margin-top:2px}
@keyframes ds-burst{0%{opacity:0;transform:scale(.25)}15%{opacity:1}70%{opacity:.9;transform:scale(1)}100%{opacity:0;transform:scale(1.08)}}
@keyframes ds-sway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes ds-twinkle{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes ds-rise{0%{opacity:0;transform:translateY(0) scale(.6)}30%{opacity:.8}100%{opacity:0;transform:translateY(-40vh) scale(1.4)}}
@media (prefers-reduced-motion:reduce){.ds-fw{animation:none;opacity:.9}.ds-sw,.ds-tw{animation:none}.ds-haze{animation:none;opacity:.5}}
.ds-ev .ds-tip{flex-direction:column;gap:2px}
/* short landscape screens (phones held sideways): smaller logo, tower behind the tip, credit kept on screen */
@media (orientation:landscape) and (max-height:500px){
  .ds-splash{padding-top:max(6px,env(safe-area-inset-top,0px));padding-bottom:max(6px,env(safe-area-inset-bottom,0px))}
  .ds-top{margin-top:1vh;gap:2px}.ds-logo{width:min(34vw,40vh)}.ds-tag{font-size:14px}
  .ds-tower{bottom:30%;width:min(9vw,18vh);opacity:.55}.ds-sun{top:58%;width:min(30vw,52vh)}.ds-falcon{top:30%;width:min(9vw,14vh)}
  .ds-bottom{gap:6px;width:min(100%,520px)}.ds-tip{min-height:0;padding:6px 14px;font-size:14px}.ds-barwrap{height:18px}.ds-sadu{height:9px}.ds-credit{font-size:12px}
}
